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; Tremont (906c0); 2021 Intel Celeron N5105; 4 x 2000MHz; jasper3, supercop-20241022

[Page version: 20241215 22:59:18]

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.


Test results

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, rainbowbinary16242020

Cycles to generate a key pair
25%50%75%system
560056435751picnic3l1
563656745766picnicl1full
725372867376picnic3l3
790379678095picnicl3full
105101053410811picnic3l5
104881057510778picnicl5full
113161146911650
T:
picnic2l1fs
131681334513450picnicl1fs
143231438814489picnicl1ur
243972457324829
T:
picnic2l3fs
245062467324897picnicl3fs
251622533025465picnicl3ur
276682791828225
T:
picnic2l5fs
294372974629998picnicl5ur
296672985330297picnicl5fs
768097712977348ed25519
125216125374125703aimer128s
125390125573125877aimer128f
139443140595143422
T:
ecdonaldp256
165625166182168171
T:
donald512
283759284113285319aimer192s
283407285180288543
T:
ecdonaldp224
285771286672287127aimer192f
303949304195304725
T:
ed448goldilocks
292116305255328777
T:
hector
353241354583356169
T:
pass769
355661356149356660T!!!dilithium2
374256376883379852nccsign1
428443429654431504
T:
pass863
466234467512471312
T:
donald1024
488278491132493897nccsign3
556755560529564052nccsign1aes
643308643549644184
T:
sphincsf128harakasimple
665587666764668069T!!!dilithium3
703746705811710584
T:
edons128k08n72nu8l4mu3
716039719761723169nccsign3aes
722832724374739946aimer256s
725798726755743128aimer256f
764621765319765947
T:
sphincsf128harakarobust
770949778796783377T!!!dilithium2aes
775647779054783517nccsign5
801988808144817491
T:
ecdonaldp160
915293918394922573
T:
ecdonaldk163
935648936375937700
T:
sphincsf192harakasimple
947525951802959316
T:
ecdonaldb163
960371964129968594
T:
ecdonaldp521
966916970423975089
T:
ecdonaldp192
109230010927761093399T!!!dilithium5
110732711161741123931nccsign5aes
120659212077411210266
T:
sphincsf192harakarobust
122302112240411227272
T:
mqdss48
125554512675961281166
T:
ecdonaldk233
128538112911421298713
T:
ecdonaldb233
141439214283001605650T!!!dilithium3aes
838470?1587357?2512014?haetae2
160353816056171608345
T:
donald2048
965104?1692221?3399608?haetae5
1114262?2030075?2945197?haetae3
209874221042432117503
T:
ecdonaldk283
213822921470982159855
T:
edons128ref
219805322012012211067
T:
ecdonaldb283
1532141?2272434?3637111?
T:
qtesla1
236227623782622394709T!!!dilithium5aes
283596228392622842849
T:
mqdss64
345263334595253468405
T:
ecdonaldk409
364419336643313723659
T:
ecdonaldb409
371829837324343748712
T:
ecdonaldp384
4172030?6133999?8104406?
T:
qtesla3f
764860576634427678883
T:
ecdonaldk571
814261681600078189513
T:
ecdonaldb571
7348104?9575858?10719345?
T:
qtesla1p
979990698059559809370
T:
sphincsf128shake256simple
6734768?11045070?15315150?
T:
qtesla3s
119001481195895712005780
T:
rainbow1aclassic363232
119246031196299011995343
T:
sphincs256
130443861307821513107084
T:
rainbow1acyclicc363232
130534821310960113133595
T:
rainbow1acompres363232
132290261326795713868773
T:
rainbowbinary256181212
145314821453383214537179
T:
sphincsf192shake256simple
188263791884106118844737
T:
sphincsf128shake256robust
202551282026444620265403
T:
sphincss128harakasimple
17218026?23447710?31761412?
T:
rwb0fuz1024
243081402431177624504447
T:
sphincss128harakarobust
249877872706638831024850
T:
falcon512dyn
250940152725973929556693
T:
falcon512tree
279054352790739127986527
T:
sphincsf192shake256robust
16699502?29024802?52533861?
T:
ronald512
300262253002891830493905
T:
sphincss192harakasimple
347711113480776334834040
T:
luov4849242
382525473826306938298890
T:
sphincsf256shake256simple
384456543855120738922744
T:
sphincss192harakarobust
436685384368165043694154
T:
sphincsf256harakasimple
476456734770877447788715
T:
luov863256
40953832?52180769?67333593?
T:
qtesla3p
35021893?56014714?80778399?
T:
ronald768
682096706873933168948337
T:
rainbow3cclassic683248
717431777175628671761549
T:
sphincsf256shake256robust
46416007?72364941?116366513?
T:
ronald1024
738619967398255574236826
T:
rainbow3ccompres683248
755434537573505875926132
T:
rainbow3ccyclicc683248
761569397622745876689151
T:
gemss128
779884807841371378468113
T:
bluegemss128
807064328073980380770282
T:
redgemss128
809162378093391980961338
T:
sphincsf256harakarobust
765721928142580190371958
T:
falcon1024dyn
805998998664338893841176
T:
falcon1024tree
109312630110173738111913256
T:
luov6468330
118588502118684046118836056
T:
gemss128v2
122286111122357571122467373
T:
bluegemss128v2
127012956127069705127228400
T:
redgemss128v2
164941558165290850170175999
T:
luov890351
192675078198636172198848288
T:
luov8086399
208556691208678222208747178
T:
sflashv2
234462205234719497234839390mqsignlr2567246
235300028236447661237330591
T:
rainbow5cclassic963664
252481257252756873253226634
T:
rainbow5ccompres963664
255717015256528651257459127
T:
rainbow5ccyclicc963664
285864525285940695286043739mqsignrr2567246
187357312?288382702?423953239?
T:
ronald1536
293627003294486564296101621
T:
luov8117404
313508883313639812313725357
T:
sphincss128shake256simple
365035805365938205366337911
T:
gemss192v2
365741155367190215368492049
T:
redgemss192
369008519370306465374163038
T:
bluegemss192v2
373998975374386008374905245
T:
redgemss192v2
383483787384719804385000351
T:
gemss192
387307695388774100389685957
T:
bluegemss192
463531661463773647464087288
T:
sphincss192shake256simple
363667297?520190703?784848281?
T:
ronald2048
602073671602152828603928942
T:
sphincss128shake256robust
608739123608944815609376629
T:
sphincss256shake256simple
687663369699515519709934723
T:
gui184
702072191705899698706056090
T:
sphincss256harakasimple
890134901890701943891112619
T:
sphincss192shake256robust
114717692811481812381148613425
T:
sphincss256shake256robust
120426361212052732811205361261
T:
gravitysphincss
120979823212106413071211571573
T:
gemss256
121959802312290443171233964303
T:
redgemss256v2
122372338812301505941275675019
T:
bluegemss256
121980873412559232481259256742
T:
redgemss256
129356429912939207201294723988
T:
sphincss256harakarobust
153156732215320412151555420662mqsignlr25611272
160741389016076517931607957343
T:
rainbow1a
169972641417000812391701030323mqsignrr25611272
1147745660?2024273171?3745873549?
T:
ronald3072
219441764021964237542213439161
T:
gemss256v2
221989208122522139692297051259
T:
bluegemss256v2
459525026645965659724597405067mqsignlr25614896
480197918448269638534864701280
T:
gui312
495276869649540285384955179708mqsignrr25614896
546442545254654431565466617295
T:
rainbow1b
570821147757083876185708542105
T:
rainbow1c
571669464058355128355944599705
T:
pqrsa15
4559980433?5898430492?7736501246?
T:
ronald4096
139483489501395003300814083054200
T:
rainbow4a
154652147201546660399915468957069
T:
rainbow3b
188405024971884111500718845300133
T:
gravitysphincsl
222264632722232248800622403970976
T:
gui448
385436833403854569219438594151923
T:
gravitysphincsm
576322251115763951290457685902418
T:
rainbow6a
593607325125937331615959381597119
T:
rainbow3c
Cycles to sign 59 bytes
25%50%75%system
185391889819671
T:
rainbowbinary256181212
822708240882710ed25519
102297103568104107
T:
sflashv2
127993128589129610
T:
rainbow1aclassic363232
143629144353145038
T:
rainbow1acyclicc363232
192660193114193707
T:
ecdonaldp256
283824286109288728
T:
donald512
313872314651314782
T:
ed448goldilocks
307042319022336473
T:
hector
357267357800359560
T:
ecdonaldp224
444363448638454273
T:
ronald512
422957?462865?880321?
T:
pass769
513312?556533?1531546?
T:
pass863
584515587817592305
T:
donald1024
684527687238690858
T:
rainbow3cclassic683248
697687699062702266
T:
rainbow3ccyclicc683248
734739742033748432
T:
falcon512tree
776605777845780121
T:
rainbow1a
822850837064842981
T:
ronald768
841380844995852267
T:
ecdonaldp160
343009?873004?1981590?
T:
qtesla1
903433?907603?1388732?nccsign1
953086956067961723
T:
ecdonaldk163
9876389927511020868
T:
ecdonaldb163
101289910172851031539
T:
ecdonaldp192
647052?1127050?1718363?T!!!dilithium2
119730812085421216085
T:
ronald1024
123009812367811244680
T:
falcon512dyn
127609812882401295012
T:
rwb0fuz1024
131757113210041328240
T:
ecdonaldk233
135223513560171358961
T:
ecdonaldb233
142118514245691432814
T:
ecdonaldp521
147717914823821488655
T:
edons128k08n72nu8l4mu3
970721?1482421?2351177?
T:
qtesla3f
147257114860671492483
T:
falcon1024tree
1125133?1571295?1665571?nccsign1aes
161394416168451632507
T:
rainbow5cclassic963664
161235016191951625492
T:
rainbow5ccyclicc963664
1070423?1625524?2088597?nccsign3
1338939?1690372?2605539?T!!!dilithium2aes
172146817273811731528
T:
donald2048
987236?1788458?3330674?T!!!dilithium3
1409315?1968280?2518967?nccsign3aes
208445420861582088080mqsignlr2567246
210748821091812115380
T:
rainbow1c
222069622286522241028
T:
ecdonaldk283
2304015?2328749?4496334?nccsign5aes
231056323304252334782
T:
ecdonaldb283
238959424026482420624
T:
rainbow4a
250012225005902502929
T:
rainbow1b
250270025177412523675
T:
falcon1024dyn
1672750?2612182?4140488?
T:
qtesla1p
1838575?2616374?3399583?nccsign5
2180937?2833774?3905567?T!!!dilithium5
293577729375072939266
T:
rainbow3b
322829332389353242943mqsignrr2567246
333618533477523359663
T:
ronald1536
2192480?3424269?4657065?T!!!dilithium3aes
361143236161253625997
T:
edons128ref
369277037016493715942
T:
ecdonaldk409
385879338658523876881
T:
ecdonaldb409
390514839207183951826
T:
ecdonaldp384
2913229?4141179?5427780?T!!!dilithium5aes
4024270?4929856?5621935?
T:
redgemss128
517139151940085208141
T:
rainbow6a
2942534?5513720?7185533?
T:
qtesla3s
588215158864415895881aimer128f
597019759829746003692
T:
ronald2048
2302225?6087507?9896628?haetae3
5473581?6146402?7570670?
T:
redgemss128v2
4011832?6534984?11558228?haetae2
769616677386637747213
T:
rainbow1acompres363232
785918178656297884456
T:
rainbow3c
811015281307258178527
T:
ecdonaldk571
865382286730848724983
T:
ecdonaldb571
9958406999750510032330mqsignlr25611272
105126081053183110562499
T:
gravitysphincss
115730161159608211625825picnicl1full
7182977?12071774?19162850?
T:
qtesla3p
116216801241855414401829
T:
redgemss192
144102271441881514432088aimer192f
144479941446826814499590picnicl1fs
152769901532832215360134mqsignrr25611272
10907056?16407861?24559960?
T:
gui184
164589371653865916629065
T:
ronald3072
13982945?17627660?20207928?
T:
redgemss192v2
15410857?18200323?23494906?
T:
redgemss256
185209801854130618570285
T:
gravitysphincsm
7613795?19378783?26471291?haetae5
215877672160697721621054picnicl1ur
217767512180120321832445
T:
gravitysphincsl
228347012288752522937867mqsignlr25614896
229564002297245622986305
T:
sphincsf128harakasimple
261911392619707326200080
T:
luov863256
261112152630869126399668picnicl3full
275131302753676327578783
T:
sphincsf192harakasimple
284546012847755328499465
T:
sphincsf128harakarobust
25564239?28703805?34779702?
T:
redgemss256v2
300758533009708730125408aimer256f
345977033461606934644183
T:
mqdss48
352603343532066135397288
T:
ronald4096
353098573533022135384252mqsignrr25614896
368451893687501537176347
T:
sphincsf192harakarobust
386883093899968039094564picnicl3fs
466105364663907346692466aimer128s
468028064692062547043347
T:
rainbow3ccompres683248
504901855061955353275828picnicl5full
530296375313836553340060picnic3l1
581464405868566758856665picnicl3ur
587009505896708659833445
T:
luov4849242
599640876017322360284705picnicl5fs
859179938595290786084631picnicl5ur
908379369095267291037955
T:
luov890351
103148765103988890104214607
T:
mqdss64
112815070112877768113145980aimer192s
117181152117395559117735839picnic3l3
131396518131684545132689054
T:
rainbow5ccompres963664
157404935157424182157433617
T:
luov8117404
114703828?171095532?205618956?
T:
bluegemss128v2
177645966177893914177993543
T:
luov6468330
141460466?198606906?227410584?
T:
bluegemss128
200883869201268244201863507picnic3l5
224503188224640315225237189
T:
sphincs256
231282410231444056231714145aimer256s
232508536232633023232966364
T:
pqrsa15
309914485310032675310256912
T:
sphincsf128shake256simple
335359585335533408364556690
T:
picnic2l1fs
345256839345972149346636834
T:
luov8086399
381326651381629566382226684
T:
sphincss128harakasimple
396666000396914223397486037
T:
sphincsf192shake256simple
382862899?459809282?536097703?
T:
bluegemss192
476647077476856332477742922
T:
sphincss128harakarobust
403754104?483134867?642861668?
T:
bluegemss192v2
565828635566095057566360759
T:
sphincsf128shake256robust
744302851744632976745047623
T:
sphincsf192shake256robust
625734690?750663899?879644396?
T:
bluegemss256
340795792?766022813?1276872038?
T:
gui312
643560467?770569185?896859100?
T:
bluegemss256v2
858397016859105425861206377
T:
sphincss192harakasimple
875318513875667469875925755
T:
sphincsf256shake256simple
880895943?1058186588?1408301063?
T:
gemss128
109717427011460886801152121052
T:
picnic2l3fs
119028718311913794121191688438
T:
sphincss192harakarobust
119249872311966930641196984307
T:
sphincsf256harakasimple
901914942?1220784826?1399078287?
T:
gemss128v2
158807801215885411711589176326
T:
sphincsf256shake256robust
196957121219710522132023215528
T:
picnic2l5fs
212690573021285631972129176696
T:
sphincsf256harakarobust
2677946738?2694678410?3757338164?
T:
gemss192v2
2079596314?3102382432?3634544434?
T:
gemss192
467937471046796220564680016452
T:
sphincss128shake256simple
4592515032?5511639728?6431303266?
T:
gemss256
4608214914?5549133192?6471953150?
T:
gemss256v2
727194706772744912857282032060
T:
sphincss256shake256simple
836732934783688446918384314465
T:
sphincss128shake256robust
980245368498038091209805059027
T:
sphincss192shake256simple
106635976831066472185010673619266
T:
sphincss256harakasimple
4518295782?12427694246?19201551493?
T:
gui448
130717403321307513466713076373434
T:
sphincss256shake256robust
171689655131717097653017173799181
T:
sphincss192shake256robust
186895038171869092081218715175895
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
107631117311324
T:
rwb0fuz1024
159221622416665
T:
rainbowbinary256181212
277782817928398
T:
ronald512
315953197032401
T:
ronald768
376813790838177
T:
ronald1024
534715385254612
T:
ronald1536
580165889860128
T:
rainbow1aclassic363232
745827511476034
T:
ronald2048
749417652679523
T:
gravitysphincss
107692108663110487
T:
falcon512tree
133646134392135437
T:
ronald3072
134100135868136332
T:
falcon512dyn
138552139139140051
T:
sflashv2
188660189480190966
T:
donald512
214221214989216223
T:
ronald4096
219814220190220634
T:
qtesla1
220714222284222850
T:
falcon1024tree
246800251700257113
T:
gui184
259158259596260108haetae2
275465276766277547
T:
falcon1024dyn
282499285194286862ed25519
288538299363342163
T:
rainbow3cclassic683248
320290326854335378
T:
gravitysphincsm
333856346198354219
T:
gemss128
353929360091367167
T:
bluegemss128
360301368573376200
T:
gemss128v2
366989375621384284
T:
bluegemss128v2
392348399449410262
T:
redgemss128
402456402768403027T!!!dilithium2
428289429126430359
T:
qtesla3f
419647434432445805
T:
redgemss128v2
436512442369446816
T:
gravitysphincsl
460296460875461752haetae3
456331466491472363
T:
sphincss128harakasimple
473279476452478361
T:
donald1024
491098492201492758
T:
ecdonaldp256
490015492704495169
T:
edons128k08n72nu8l4mu3
498382499362502231
T:
rainbow1a
521942522764523921
T:
qtesla3s
542467544224545945
T:
pass769
567567569758572091nccsign1
642457643089643866haetae5
648385650580652223
T:
pass863
654248654866655216T!!!dilithium3
691556694673697244nccsign3
690039703762710505
T:
sphincss192harakasimple
731234734769737271nccsign1aes
725212745594761832
T:
sphincss128harakarobust
744745747231749884T!!!dilithium2aes
743142771122779106
T:
rainbow5cclassic963664
770561774665776783
T:
qtesla1p
758221788131807685
T:
gemss192
788320803917818909
T:
gemss192v2
819797820732821633
T:
ecdonaldp224
802811821165842243
T:
bluegemss192
804367824088849695
T:
bluegemss192v2
824633829720835392
T:
ecdonaldp160
816988833626849435
T:
redgemss192
820123843303854468
T:
redgemss192v2
925117930611932950nccsign3aes
958949964976971539
T:
ecdonaldp192
979190983862986276
T:
edons128ref
106122210641221068438
T:
ed448goldilocks
107689710893371100417
T:
sphincsf128harakasimple
115443111552431157106T!!!dilithium5
116891911740841177810nccsign5
117632611855561191260
T:
rainbow1b
117641012004681212421
T:
sphincss192harakarobust
120210612208581233956
T:
gui312
123558412501901258656
T:
hector
129807313019781304513T!!!dilithium3aes
148185714950451502298nccsign5aes
154575515605901575604
T:
donald2048
171138517230391743707
T:
sphincsf192harakasimple
174558817596051780259
T:
sphincsf128harakarobust
172506317639101815847
T:
gemss256
178471318266211860495
T:
gemss256v2
173671018295392133578
T:
bluegemss256
183374718367991839446
T:
ecdonaldk163
179498618462271876142
T:
bluegemss256v2
182649818510371896191
T:
redgemss256
185572218796351912113
T:
redgemss256v2
187970618802181881970
T:
rainbow1c
190464119104791965559
T:
ecdonaldb163
191221119152501916708
T:
rainbow4a
228190722856012293906T!!!dilithium5aes
253413425427492558979
T:
ecdonaldk233
261121126223432634086
T:
ecdonaldb233
264488926574452667254
T:
rainbow3b
277389027869692793683
T:
ecdonaldp521
279957728402632879574
T:
sphincs256
291831029433812965995
T:
sphincsf192harakarobust
314682531559383158892mqsignlr2567246
314438431563303160669mqsignrr2567246
317227831831833196719
T:
ecdonaldp384
345842835132453564596
T:
gui448
374107237709463845756
T:
rainbow1acyclicc363232
376036837898843801700
T:
rainbow1acompres363232
383064938396983847920
T:
qtesla3p
429053643078184323345
T:
ecdonaldk283
449204645036754528909
T:
ecdonaldb283
464830246984524719098
T:
rainbow6a
472746747441724758943mqsignrr25611272
474510547597514775020mqsignlr25611272
511091552454755345929
T:
sphincss128shake256simple
549004654941435498325aimer128f
699276270091617034696
T:
rainbow3c
715553571708537185449
T:
ecdonaldk409
750141675099067546088
T:
ecdonaldb409
766210877586807859727
T:
sphincss192shake256simple
866169587112998877681picnicl1full
879772688141878838757mqsignlr25614896
882169088388378861537mqsignrr25614896
99082481003981210209852
T:
sphincss256shake256simple
100870301021642510602900
T:
sphincss128shake256robust
118954751191693812015925picnicl1fs
124198041261377012782647
T:
sphincsf128shake256simple
134414851344448613447972aimer192f
145802701468573614860710
T:
sphincss256harakasimple
149992231514966015481420
T:
sphincss192shake256robust
157947841581873115878123
T:
ecdonaldk571
168397491686608416921586
T:
ecdonaldb571
178493251787611118192438picnicl1ur
191879171953832919850197
T:
sphincss256shake256robust
198668482006808920242837picnicl3full
202621822042459420591552
T:
sphincsf192shake256simple
203246912049189420749231
T:
sphincsf256shake256simple
223804212249993422617889
T:
rainbow3ccompres683248
226985692280861022938643
T:
rainbow3ccyclicc683248
246499332465101824652682
T:
luov863256
245070372479460124996047
T:
mqdss48
247292132511730325610050
T:
sphincsf128shake256robust
267414742693578427245869
T:
sphincsf256harakasimple
271250342737613527849953
T:
sphincss256harakarobust
280690542808230228184412aimer256f
313381313155893331666785picnicl3fs
378148333825763339095929picnicl5full
389465453958524239712001
T:
sphincsf256shake256robust
396776264002134740357208
T:
sphincsf192shake256robust
446584084473061744801842
T:
luov4849242
450945524516370445314436picnic3l1
463740714646646946506458aimer128s
484865274909712249378860picnicl3ur
497538245003813350145494picnicl5fs
503165795050863851809978
T:
rainbow5ccompres963664
503808235079333851131214
T:
sphincsf256harakarobust
520593125220126152252229
T:
pqrsa15
520072995376014454989367
T:
rainbow5ccyclicc963664
744889187484091675290245picnicl5ur
746977927516559576243174
T:
mqdss64
865047298650783987074558
T:
luov890351
9979861699936298100093397picnic3l3
112171034112204391112240613aimer192s
123161785123221630123302145
T:
luov6468330
150653797150660182150673610
T:
luov8117404
164205141164353360164627599picnic3l5
196153782196381871219816389
T:
picnic2l1fs
223819294224107584224334144
T:
luov8086399
229193073229343162229920586aimer256s
581495678582644581623368496
T:
picnic2l3fs
884080733923276732934945524
T:
picnic2l5fs