VAMPIRE

eBACS: ECRYPT Benchmarking of Cryptographic Systems


ECRYPT II
General information:IntroductioneBASHeBASCeBAEADeBATSSUPERCOPXBXComputersArch
How to submit new software:Tipshashstreamaeaddhkemencryptsign
List of primitives measured:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
Measurements:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
List of subroutines:verifydecodeencodesortcorehashblocksxofscalarmult

Measurements of public-key signature systems on one machine: amd64; Broadwell+AES (306d4); 2015 Intel Core i3-5005U; 2 x 1900MHz; shoe, supercop-20240625

[Page version: 20240726 23:45:48]

eBATS (ECRYPT Benchmarking of Asymmetric Systems) is a project to measure the performance of public-key systems. This page presents benchmark results collected in eBATS for public-key signature systems:

For signature systems that support "message recovery", the space for a signature on a long message is shorter than the space for a signature on a short message.

Each table row lists the first quartile of many speed measurements, the median of many speed measurements, the third quartile of many speed measurements, and the name of the primitive. Measurements with large variance are indicated in red with question marks. The symbol T: (starting with supercop-20200816) means that the SUPERCOP database at the time of benchmarking did not list constant time as a goal for this implementation. The symbol T!!! means that constant time was listed as a goal for this implementation, but that the implementation failed TIMECOP. (TIMECOP failures are not necessarily security issues; they can sometimes be resolved by, e.g., declaring that a rejection-sampling condition is safe to declassify.)

There is a separate page with more information about each signature system and each implementation. Designers and implementors interested in submitting new signature systems and new implementations of existing signature systems should read the call for submissions.


Implementation notes

Graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

NISTPQC graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

Measurement failures: ntrumls401x, ntrumls439x, ntrumls593x, ntrumls743x, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
325534903631picnicl1full
354335813812picnic3l1
457446204650picnicl3full
512051875229picnicl1fs
473652175397picnic3l3
528553265837picnicl1ur
598760936165
T:
picnic2l1fs
600265867069picnic3l5
645271427458picnicl5full
103631048012389picnicl3fs
104771159512217picnicl3ur
116301190012890
T:
picnic2l3fs
154731593117006
T:
picnic2l5fs
155661596217252picnicl5ur
160811646917990picnicl5fs
463484657447129ed25519
587225907159811T!!!dilithium2aes
888738962292998T!!!dilithium2
934059386494334dilithium3aes
107861108729111308
T:
ecdonaldp256
111171111442115444
T:
donald512
146952147622148295dilithium5aes
156146156648157591
T:
ed448goldilocks
160826161733164599T!!!dilithium3
169807170332171892
T:
ecdonaldp224
240641247802253312
T:
pass769
250538250886251510T!!!dilithium5
258178258907261633
T:
donald1024
285185293152297075
T:
pass863
728846732128736192
T:
edons128k08n72nu8l4mu3
746055752842760865
T:
ecdonaldp160
781569784970794785
T:
donald2048
798610800142801579
T:
mqdss48
806075808015814230
T:
ecdonaldp521
425883?828129?1698014?haetae2
839771842102845495
T:
ecdonaldk163
865629869609877073
T:
ecdonaldb163
901590912147912403
T:
sphincsf128harakasimple
911298914084919518
T:
ecdonaldp192
110038411008481101576
T:
sphincsf128harakarobust
113110311382931146290
T:
ecdonaldk233
116074611643171171088
T:
ecdonaldb233
123751112385581239300
T:
sphincsf192harakasimple
1127119?1532312?3235254?haetae5
1184229?1563449?1967043?
T:
qtesla1
182227818231391824363
T:
sphincsf192harakarobust
186500518665281868992
T:
mqdss64
188956618921901899694
T:
ecdonaldk283
198812519918172002619
T:
ecdonaldb283
222176922270922233447
T:
edons128ref
1235524?2655491?4919421?haetae3
2715776?2745635?4014492?
T:
qtesla3f
280613628080782813415
T:
sphincs256
317910231947253222819
T:
ecdonaldk409
321133332203343226557
T:
ecdonaldp384
329472233112533327367
T:
ecdonaldb409
354251735477023551895
T:
sphincsf256harakasimple
408975240941604102501
T:
sphincsf256harakarobust
418378343621614449124
T:
sphincsf128shake256simple
511667651207745176804
T:
luov863256
4053578?5338075?7910811?
T:
qtesla3s
4789667?5541749?7018902?
T:
qtesla1p
621353362310536234796
T:
sphincsf192shake256simple
694771769603996993557
T:
ecdonaldk571
734512073487677358880
T:
ecdonaldb571
754171675473157649498
T:
sphincsf128shake256robust
792704679402858157415
T:
mqsignlr2567246
917915792023529308536
T:
rainbow1aclassic363232
964232696455819668654
T:
luov863256pc
100494081005686710071993
T:
rainbow1acyclicc363232
103849571039002610396976
T:
rainbow1acompres363232
114008471141810711421009
T:
sphincsf192shake256robust
117839161181536311848372
T:
rainbowbinary256181212
130992051310833813233844
T:
mqsignrr2567246
11511737?16615964?19950649?
T:
rwb0fuz1024
169167841693040116947199
T:
sphincsf256shake256simple
191062951914705619221214
T:
luov4849242
185682571991817423205843
T:
falcon512dyn
189163182005465120964760
T:
falcon512tree
222520942229231822335330
T:
luov890351
268138972682880626838891
T:
sphincss128harakasimple
18899219?29277663?48734283?
T:
ronald512
298216622982408829830698
T:
sphincsf256shake256robust
26567889?33891086?38905619?
T:
qtesla3p
351924093523376735242500
T:
sphincss128harakarobust
364648103655805936627883
T:
mqsignlr25611272
381588643825722338315362
T:
luov8117404
382829413831712938369822
T:
luov890351pc
397392173976596739807115
T:
sphincss192harakasimple
548784255493245056295201
T:
sphincss192harakarobust
550159645526640955390390
T:
rainbow3cclassic683248
549311085552529456398727
T:
rainbowbinary16242020
560110345605046356168225
T:
mqsignrr25611272
30680998?56204271?97323454?
T:
ronald768
566176255671145456754754
T:
sphincss256harakasimple
583962735843261059372353
T:
rainbow3ccompres683248
570782435854214661649384
T:
falcon1024dyn
577010925931339163623510
T:
falcon1024tree
644985656460275165077794
T:
rainbow3ccyclicc683248
647439806485048564917489
T:
luov6468330
664542256646881666483094
T:
gemss128
667505016681945666894083
T:
luov8117404pc
685292426856142068610656
T:
gemss128v2
689949216900528469102369
T:
bluegemss128
690966946911187569217220
T:
sphincss256harakarobust
691106376933315369417954
T:
redgemss128
746449027478525274911267
T:
redgemss128v2
752068087536068375766257
T:
bluegemss128v2
872676478839923088603220
T:
mqsignlr25614896
60009744?107188080?153765648?
T:
ronald1024
116069068116155453116191536mqsignlr2567246
120235877120425069120551074
T:
luov8086399
133341402133647598133854371
T:
mqsignrr25614896
134673531134968998135492808
T:
sphincss128shake256simple
139227441143176514145671222
T:
rainbow1b
159751041159842612160347761mqsignrr2567246
189925226190263530191915262
T:
rainbow1c
197070926197158487197253254
T:
sphincss192shake256simple
211692839211852760212026631
T:
rainbow5cclassic963664
218282702218344966218374420
T:
sflashv2
226226823226294878227689502
T:
rainbow5ccyclicc963664
226128629226451787226702450
T:
rainbow5ccompres963664
242195328242468267245635280
T:
sphincss128shake256robust
265946349265984869269759444
T:
sphincss256shake256simple
145477950?297028419?432141169?
T:
ronald1536
340739196342782100342989918
T:
gemss192
347318000348390979349601211
T:
redgemss192
348180054349035553349318985
T:
bluegemss192
362779304362966112365952467
T:
sphincss192shake256robust
410725072411136432411521991mqsignlr25611272
455711755455905046460996307
T:
gemss192v2
466796887467491358467681584
T:
bluegemss192v2
466385393469259470469624492
T:
redgemss192v2
482838136482917372492133799
T:
sphincss256shake256robust
229241455?523104295?841627620?
T:
ronald2048
578550034579568613579964097mqsignrr25611272
708959937723254656737032237
T:
gui184
900281118900677190902680922mqsignlr25614896
102343713810289994651042814201
T:
rainbow3b
107681483610772385581077472663
T:
rainbow1a
108684544910958407161097004525
T:
gemss256
110223883211039821061111381974
T:
redgemss256
110028729911068385071112390243
T:
bluegemss256
128479928812879354071289082282
T:
gemss256v2
129594226212965316951297650161mqsignrr25614896
130019782613049029661305555653
T:
bluegemss256v2
131092701413129837101322017886
T:
redgemss256v2
830717233?1463831213?1942126502?
T:
ronald3072
168541394216857114911690774391
T:
rainbow3c
178990184517903625211791721492
T:
gravitysphincss
2088139101?3475404675?4908523143?
T:
ronald4096
391462823640183322244147943394
T:
pqrsa15
444860847544501428164453579856
T:
rainbow6b
522789803852433495885250422012
T:
rainbow5c
538299893354282939305492796754
T:
gui312
758691152275884795257591193887
T:
rainbow6a
813674481881393140658140001830
T:
rainbow4a
213741741712155285172821716568680
T:
gui448
286326437642863697790928684954287
T:
gravitysphincsl
572418479715724895910857251385409
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
172511750518013
T:
rainbowbinary256181212
382963871539650
T:
rainbowbinary16242020
489804901449116ed25519
663386752369013
T:
rainbow1a
703087086672853
T:
rainbow1acyclicc363232
710467228873286
T:
rainbow1aclassic363232
982299842998966
T:
sflashv2
102508104046104566
T:
mqsignlr2567246
123602123970124438
T:
rainbow1c
147771148061148375
T:
ecdonaldp256
154237155165156274
T:
mqsignrr2567246
164094164242164430
T:
ed448goldilocks
98002?165229?229050?T!!!dilithium2aes
171527?218411?391503?T!!!dilithium2
183992?222731?337283?dilithium3aes
231802238195249042
T:
donald512
238328240529249608
T:
ecdonaldp224
246728247362248150
T:
rainbow1b
279810283452285766
T:
mqsignlr25611272
260479?289276?442393?dilithium5aes
286107?294124?820969?
T:
pass769
261394?327261?466090?T!!!dilithium3
369830370922372147
T:
rainbow3c
376792380109386058
T:
falcon512tree
379511380716381689
T:
rainbow3cclassic683248
395110399606406299
T:
donald1024
426536428002430271
T:
mqsignrr25611272
422841430783440515
T:
ronald512
235701?436996?789255?
T:
qtesla1
439986442268444958
T:
luov863256pc
330796?460913?633894?T!!!dilithium5
506108508760511612
T:
rainbow3ccyclicc683248
556840563048565391
T:
mqsignlr25614896
605273606255607598mqsignlr2567246
637798641731648072
T:
rainbow6a
347998?665739?1040126?
T:
pass863
736590744055752110
T:
ronald768
766415771854780536
T:
falcon1024tree
773738776430779242
T:
rainbow5c
772401777794789111
T:
falcon512dyn
779225781320813052
T:
ecdonaldp160
784546785722788417
T:
rainbow3b
781726794833799448
T:
mqsignrr25614896
540760?818851?1190753?
T:
qtesla3f
862295868586877355
T:
rwb0fuz1024
871313876478880368
T:
rainbow4a
878698880284927944
T:
ecdonaldk163
887693905730954293
T:
ronald1024
907259909767914375
T:
ecdonaldb163
910905935462970775
T:
donald2048
940570947186951916
T:
rainbow5ccyclicc963664
942047947308950426
T:
rainbow5cclassic963664
979417986378993466
T:
ecdonaldp192
113358811348651135241mqsignrr2567246
118715811914571196206
T:
ecdonaldk233
650004?1193062?2032709?
T:
qtesla1p
119183311934691196298
T:
ecdonaldp521
121523912219831224487
T:
ecdonaldb233
125348712568261266286
T:
edons128k08n72nu8l4mu3
132932313320941338550mqsignlr25611272
134397613485201355006
T:
luov890351pc
977718?1380500?2981926?haetae3
635194?1393869?2690409?
T:
qtesla3s
157349115797611587690
T:
falcon1024dyn
990706?1588699?2447012?haetae2
186841518720291875798
T:
rainbow6b
197538219822001989116
T:
luov8117404pc
198789220089282135515
T:
ecdonaldk283
1131472?2048480?3564244?haetae5
209201322231172234008
T:
ecdonaldb283
231972723312292334622mqsignrr25611272
253462125568212578142
T:
ronald1536
293067329334862936932mqsignlr25614896
301771830238303036204
T:
edons128ref
338465734070893427791
T:
ecdonaldk409
347926634857863524804
T:
ecdonaldb409
338905435257633555514
T:
ecdonaldp384
369771236995713701237picnicl1full
368500137317043787826
T:
ronald2048
373815437398703798384
T:
luov863256
400624140127924020372mqsignrr25614896
3400756?4184171?5044535?
T:
redgemss128
2847671?4425620?6721943?
T:
qtesla3p
3956579?4591171?5339067?
T:
redgemss128v2
469014146990984702522picnicl1fs
540737254379835445987
T:
mqdss48
604407860462806165478picnicl1ur
651972765310906550774
T:
rainbow1acompres363232
733867773399017342245picnicl3full
733862673450447368007
T:
ecdonaldk571
777019077792027826756
T:
ecdonaldb571
885075690666009108434
T:
ronald3072
7902080?9696749?12966486?
T:
redgemss192
9224736?10661280?13251914?
T:
redgemss192v2
118290921184063411846884picnicl3fs
122024831220799412215534picnicl5full
125428591254807612557209
T:
luov890351
134692471348022214742563
T:
mqdss64
150136771502014215024396
T:
gravitysphincss
152973071530825115350086picnicl3ur
13094024?16324341?19549502?
T:
redgemss256
15125446?17530260?21622824?
T:
redgemss256v2
177278331774422717760488picnic3l1
180054461865180519387720
T:
ronald4096
10683315?18658558?34783561?
T:
gui184
213474442139415421557365picnicl5fs
220176912206365622094691
T:
luov8117404
265644312659545426944908picnicl5ur
266203232662763826639635
T:
gravitysphincsm
315598593156680631575180
T:
gravitysphincsl
322665853229165132311608
T:
sphincsf128harakasimple
363477473638341236409050
T:
sphincsf192harakasimple
382233623825671138290368picnic3l3
395024644002366240588790
T:
rainbow3ccompres683248
405467254057922240613535
T:
sphincsf128harakarobust
422849854231823542368039
T:
luov4849242
499055554994192250343014
T:
sphincs256
545331035459862354667093
T:
sphincsf192harakarobust
656013236564575165697978picnic3l5
901220879023881990378045
T:
sphincsf256harakasimple
109058447109089931109100278
T:
rainbow5ccompres963664
110637799110677607110772773
T:
sphincsf256harakarobust
126770042126821151126863108
T:
pqrsa15
134467389134537743134601028
T:
luov6468330
137424044137905459138207037
T:
sphincsf128shake256simple
127368877?152717028?178094152?
T:
bluegemss128v2
162819726162892881163052990
T:
picnic2l1fs
176369009176539835176713104
T:
sphincsf192shake256simple
128859438?180112704?207648521?
T:
bluegemss128
236350317236685450238918872
T:
sphincsf128shake256robust
269237673269615624270047561
T:
luov8086399
317737703318155801318553599
T:
sphincsf192shake256robust
300643801?360451461?477370585?
T:
bluegemss192v2
244696438?365200074?425978617?
T:
bluegemss192
397193451397548640398438896
T:
sphincsf256shake256simple
492094182492196306492329010
T:
picnic2l3fs
288950528?505653488?797187350?
T:
gui312
506008076506125188506207762
T:
sphincss128harakasimple
462866771?553168753?644064355?
T:
bluegemss256v2
484954354?582448515?773253696?
T:
bluegemss256
679138936679516285680132479
T:
sphincsf256shake256robust
680299415680701618680985380
T:
sphincss128harakarobust
791609765793255762793694290
T:
sphincss256harakasimple
805732752?807277162?1128274341?
T:
gemss128v2
101963956210200681141020712349
T:
sphincss256harakarobust
103195676210330792021033301718
T:
picnic2l5fs
112590099511263002701130026127
T:
sphincss192harakasimple
823899990?1153159998?1318677153?
T:
gemss128
167805755616841556641686682050
T:
sphincss192harakarobust
217951287621834661752187530186
T:
sphincss128shake256simple
2030071295?2435336413?3236426264?
T:
gemss192
2004201676?2779396427?3183342351?
T:
gemss192v2
325308307432597396633261104442
T:
sphincss256shake256simple
363410168736424449133688315440
T:
sphincss128shake256robust
2598322656?3881125488?4533062231?
T:
gemss256v2
3478415625?4173887305?4870753725?
T:
gemss256
449165631644955634144507690709
T:
sphincss192shake256simple
3119940698?5459898398?11594993585?
T:
gui448
562724763256519638915664715665
T:
sphincss256shake256robust
759158999875989076607608624391
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
724273387456
T:
rwb0fuz1024
154001546815542
T:
rainbowbinary256181212
274272759327937
T:
ronald512
289762943929835
T:
ronald768
316363212632545
T:
rainbowbinary16242020
333113359438197
T:
ronald1024
338073491335395
T:
rainbow1aclassic363232
486704921050559
T:
ronald1536
509225202053087
T:
rainbow1a
603576131762490
T:
ronald2048
738817438774760T!!!dilithium2aes
817828320483852
T:
falcon512tree
838398459885656
T:
rainbow1c
954729806499180
T:
ronald3072
984279877099548
T:
qtesla1
9829099223101064
T:
mqsignrr2567246
101389101793102523T!!!dilithium2
101199102099102899
T:
falcon512dyn
101058102810103736
T:
mqsignlr2567246
107864108102108493dilithium3aes
108174111974114087
T:
gravitysphincss
122845124070124436
T:
sflashv2
129809130135130746haetae2
141706144634146170
T:
luov863256pc
145213146522157995
T:
donald512
150682151579152461
T:
ronald4096
163001163191163727dilithium5aes
164678165324166218ed25519
165122166223167376
T:
falcon1024tree
164977166704169665T!!!dilithium3
189902192545194528
T:
rainbow3cclassic683248
199717200560201067
T:
qtesla3f
201645202296203393
T:
qtesla3s
202902203528204468haetae3
203478204402205136
T:
falcon1024dyn
199029205904211402
T:
gui184
226437231976241173
T:
bluegemss128v2
229888235753245920
T:
redgemss128v2
241764242190243175
T:
rainbow1b
245937246443247106haetae5
254605258270266738
T:
gemss128
263013264841275267T!!!dilithium5
253603267547274668
T:
bluegemss128
265840274710279216
T:
gemss128v2
281801288773296148
T:
redgemss128
300703301028301504
T:
ecdonaldp256
290737302630306254
T:
donald1024
330835333317337598
T:
mqsignrr25611272
333424334574338401
T:
mqsignlr25611272
354486358817363142
T:
pass769
362734365417372111
T:
luov890351pc
389928393258397952
T:
rainbow4a
409481412016416113
T:
edons128k08n72nu8l4mu3
426360429875433341
T:
pass863
461187462398472618
T:
ecdonaldp224
461863468045473509
T:
gravitysphincsm
463201468710473090
T:
rainbow5cclassic963664
488381489655491976
T:
qtesla1p
504724506148508106
T:
rainbow3c
514800515691518132
T:
ed448goldilocks
509615519584525886
T:
luov8117404pc
562874578970594092
T:
gemss192
576526594428620482
T:
bluegemss192
593421605124610462
T:
mqsignrr25614896
603046609623613937
T:
mqsignlr25614896
598033618767631586
T:
redgemss192
627170630870643099
T:
gravitysphincsl
622974639929647477
T:
sphincss128harakasimple
674824684804702134
T:
bluegemss192v2
670566687692703492
T:
gemss192v2
697944711875726536
T:
redgemss192v2
780533783717787566
T:
edons128ref
792837803673813922
T:
donald2048
796818805182819117
T:
ecdonaldp160
810256813814817701
T:
rainbow3b
942605956947964726
T:
sphincss192harakasimple
969779977635984026
T:
ecdonaldp192
101520510164401017182mqsignrr2567246
100652310166821032667
T:
gui312
100064410170791021826
T:
rainbow6a
102904010296781031748mqsignlr2567246
102535810495291065953
T:
sphincss128harakarobust
106089610623081066710
T:
rainbow5c
115887411884141222766
T:
gemss256v2
115924911915641222479
T:
redgemss256v2
120436212259831259792
T:
bluegemss256v2
124069412780981310165
T:
gemss256
127084712989521321153
T:
bluegemss256
129767413289081373292
T:
redgemss256
132304513354041346171
T:
sphincss256harakasimple
146081514810221506268
T:
sphincsf128harakasimple
157762916117181634827
T:
sphincss192harakarobust
164735516587971668543
T:
sphincs256
169312516985981784583
T:
ecdonaldk163
174998417543481761157
T:
ecdonaldb163
193454319452491953728mqsignrr25611272
195399819587341967652mqsignlr25611272
212451621318362144282
T:
rainbow6b
224026522732332301960
T:
sphincss256harakarobust
227014022805482289326
T:
qtesla3p
229650723000352309749
T:
ecdonaldk233
232240923242902325524
T:
ecdonaldp521
233277123510952375820
T:
sphincsf192harakasimple
235440723607842371528
T:
ecdonaldb233
236224124074472427535
T:
sphincsf128harakarobust
252604525478562574945
T:
sphincsf256harakasimple
292662329542402997176
T:
gui448
294617329609632969771picnicl1full
297802129804033039898
T:
luov863256
285617030015963017567
T:
ecdonaldp384
325600132662303280493mqsignrr25614896
328360832913993300503mqsignlr25614896
344146234442883451656
T:
rainbow1acompres363232
350694835099823512685
T:
rainbow1acyclicc363232
348364735152663542978
T:
mqdss48
345089635344453563794
T:
sphincss128shake256simple
377862337888033809606picnicl1fs
387598238843954140667
T:
ecdonaldk283
390880839458633988274
T:
sphincsf192harakarobust
427217543101304339848
T:
sphincsf256harakarobust
407499943227514332359
T:
ecdonaldb283
490271449127644938103picnicl1ur
527315154100545498353
T:
sphincss192shake256simple
598267959879935993042picnicl3full
657620166123706663853
T:
ecdonaldk409
678309468002226832962
T:
ecdonaldb409
680268769110607041913
T:
sphincss128shake256robust
703247070671077149363
T:
sphincss256shake256simple
847776386279958737493
T:
sphincsf128shake256simple
9195563932008610184143
T:
mqdss64
996003899720099985381picnicl5full
102753481028338310289844picnicl3fs
102158311034686110435940
T:
sphincss192shake256robust
106709001067788510683817
T:
luov890351
132005381320982813219915picnicl3ur
130906551329813013518136
T:
sphincss256shake256robust
133656861346348013615127
T:
sphincsf192shake256simple
137589221388154414045975
T:
sphincsf256shake256simple
140298721404266314054262picnic3l1
143176191433095414349017
T:
ecdonaldk571
151426571516196315198663
T:
ecdonaldb571
162814721644651716717563
T:
sphincsf128shake256robust
173368391734687517472036
T:
pqrsa15
180138411805085218228027picnicl5fs
185250001860819418639585
T:
luov8117404
206563042066318820675797
T:
rainbow3ccompres683248
209195922094437621408373
T:
rainbow3ccyclicc683248
223746652247733622510313picnicl5ur
263983822673230027018796
T:
sphincsf192shake256robust
272259022738876427929868
T:
sphincsf256shake256robust
291823962919421829212775
T:
luov4849242
296883182972097329773976picnic3l3
467948354681433046878790
T:
rainbow5ccyclicc963664
467949404740372849979300
T:
rainbow5ccompres963664
477557204778360247815795picnic3l5
691775836925352769309934
T:
picnic2l1fs
778188417783519477857574
T:
luov6468330
148163252148226378148692273
T:
luov8086399
157638513157756861157982734
T:
picnic2l3fs
275778880276269840281166761
T:
picnic2l5fs