Commit 7e7f58d0 authored by Stephane Glondu's avatar Stephane Glondu

load_election_and_verify_it_all

parent 24446476
{"num_tallied": 2, "tally": [[{"alpha": "6140145258556358661397492590955128913066385478756625008821418765986348367416109713440679922490386641555094007531536755286457454043337459062250953027955586899216206497663112184643059323699179808924908573326425375460164133010778684602102518656731897332287999463208730350918969950869068379490551326292127220592492055778054848882392507841201406457902077332941143418651463052897378710596285370000349226260580171661846182665707964437059409661998424121482884191763290338045303612721375028981371111759622499042228499581664373581328657686672944718657827179940285202905648432276017828729647405121756504875357166179318194063540", "beta": "11152039015378680335374164368722711910234220626398792914675632431484071946915762974719904361626552766864644873233905337251796923349700962676710949559759349014041754251510308738532344724894851261657934697049826359020534432610254771328964054082545109608538683389373531090567786761115603508848981765307657702444453022949315869926051765697264413764775899717169226548166837755169433439152505597639251325160282449397596948335076838462607631386989480912106957090632699417079612597661093130925299897124218200601435563402879670199511540448241661378286440310612509469291796109294318564205539239547298523235163835846445057530661"}, {"alpha": "9833817723491828772512918220169665172302710674018239981452598568308081832541776383648438445799643312195675731702939657743025544536882461171799934135766807925751840711330829780038128928884383845342130584859019214951283111790321162398479988074268957383567336282665625062285790791403984081026606465754724165646028962035817436904066341531400918879204560326826508564419491179601871192688223629851384425737785066501917825592218032079754414319219040322247188851242911635996311129123067658479051649609200070481849389611968112614169046214557378773381903310807293465147023406901015973449456393971662883143458040649269573975034", "beta": "4996299618104043547385649616963508204464297435901910775541744807844643987237306128698054633679765391278936435822571949589042879484139826491245269348371572748405631448389435367719580410865778278966485311738659214115998861663201848985213628130494420928622515553422794109832707308235259102691453450545090010337557971273813016647102853723503594783550475359083391616213477673387949181737133260633245943953128165905959262578823492087197294219896613989917994052296169408240744351807211417567401070517935252428436310267281637874851493751622616232768435061680829080073336933358651408569096241421469093617039828477431391398782"}, {"alpha": "13864082943735491413234258161363087887054585629092144112685045775971705909876813042366420674399791076366957185460383633381423655501464091467015739494215284320550350835830493523689555782636539870269606454225905619745835677541202773190553374630275030300814629851321203875624549272646609442144701699105929348324163423941669557739662679366043795227625464926650984387276629559238648981510925876403959580792094157983668939576520376724825735929853637082352755662732950594630543926951958240995157274496629786946103576399335193678004294245169183050549875676636122522333233235633915924094713273616229168293551215525510267149794", "beta": "11908944031071116237214816986793958685665329347715453752036319249926164137569628695456149891545696168394964987681627674587438872950918529495211222149664677788944972601633280104985742659602662636536777608000884696581561179915703795597890245498871496366877952073350276776706442894372345102375251690120490916067042194249344530925940505449041184432632644337609050915486146215689080860066255515630733972798017024769982518044885333028109456716797968592250327798866056503424507495672948371890457574112594164473569142307040019246141863446232938983689714531181668747207755829850611075937339719124292812324437595021080421288706"}, {"alpha": "7747649359162937428657473999014977986828318086776081862786597746183161949141327966054605025699278054102778387706589210339235025828070507473056554149213549402089023932615233323918618597032315467307487112459911341598374721259176573853527304134248968649503245589233252720146548815914336397095718344869311150797963927888564025309875661478359335823921679280480917534464880784291074772214071582888847034162475235605050852719164981745887607787209933157934650983775868038621348947320943294938925740838976337263207178611762607965886857464883906291847946838244760412161263223925744960654900938785387666615781682120030783341414", "beta": "12981646949055218272687690847406983669373058365755404137393187770798495202019417154486352340302298521152980001711714976901593062239091284486538901849433645402417067945612467365522350099764578387851492679834560420143983329281151512772338636151349348266889517642550114129098203998142881409250144071677062987426064840748430433656235255627088502398172257156457140502432585790520244547575969577227987493199999813343908708656545305549360431647551145655322285508529901198566823717948238428062836254031325982869863001223899744761969049824231274688553861690430289259212934060886396220009710153863934727520851486975134710673827"}]]}
\ No newline at end of file
{"decryption_factors": [["2456206064889148267733873384674102957864188191916919989673760852748506494039652400693498164117348676106114222278560829091010708313224238336901443383927877294752218104619146310674582617675357738704010976661495170180694672629300150164344545411895446859254815618443096985090909927599284330538476926968661233723347348234276364802034764545659918112716554577006922216581287495803063985112963482075489023049181208787181100765975344012417375263373825028726672453139890470829189886199934377547677469537404343583465028803749722626168552235972546818171436917002174512503493562521213040827115960164264726694478787118623546350774", "4996299618104043547385649616963508204464297435901910775541744807844643987237306128698054633679765391278936435822571949589042879484139826491245269348371572748405631448389435367719580410865778278966485311738659214115998861663201848985213628130494420928622515553422794109832707308235259102691453450545090010337557971273813016647102853723503594783550475359083391616213477673387949181737133260633245943953128165905959262578823492087197294219896613989917994052296169408240744351807211417567401070517935252428436310267281637874851493751622616232768435061680829080073336933358651408569096241421469093617039828477431391398782", "11908944031071116237214816986793958685665329347715453752036319249926164137569628695456149891545696168394964987681627674587438872950918529495211222149664677788944972601633280104985742659602662636536777608000884696581561179915703795597890245498871496366877952073350276776706442894372345102375251690120490916067042194249344530925940505449041184432632644337609050915486146215689080860066255515630733972798017024769982518044885333028109456716797968592250327798866056503424507495672948371890457574112594164473569142307040019246141863446232938983689714531181668747207755829850611075937339719124292812324437595021080421288706", "12981646949055218272687690847406983669373058365755404137393187770798495202019417154486352340302298521152980001711714976901593062239091284486538901849433645402417067945612467365522350099764578387851492679834560420143983329281151512772338636151349348266889517642550114129098203998142881409250144071677062987426064840748430433656235255627088502398172257156457140502432585790520244547575969577227987493199999813343908708656545305549360431647551145655322285508529901198566823717948238428062836254031325982869863001223899744761969049824231274688553861690430289259212934060886396220009710153863934727520851486975134710673827"]], "decryption_proofs": [[{"challenge": "678086184040171943096099169802629299422307686247", "commitment": {"A": "13825747775616499365187124191392992377334694351294323748244171687660062898468696111316448831384120185577196397917007198558817169610565296738055373236055245346755464323251542687666480166259184586322989363799041433186338876446306097105408307007622820894385902531849007085501101109333569247408334118662269720962964668514885609034875666240424040043678897057042727090628362080499201984200472174435756902830245346207905509700305453989961750393376228747621874321138928477010135894585800855407160963767114913093998057884495290127104719648171902013107583561695124849981318523339299531311611564829904734295968796117759695975688", "B": "2457059796239429136050893831528866674029001288512085730168645624504209763282987349883708363854774360284359410087873729574047910889124598179216591397525449407150343531511668513556384628012147474407675561074154830756859507345128306207107220280062383892022971070029526592016766857575218435368438328139834702454522217982793204307571573956835233993891595772102251371533164822987944913844538619316259172041238507803304044138032223567168690787961104373335644900015901676910777871077094149249194344609337037838692728339172052430704362901532427610223059707369606747150306157808565204736273657930241799427984593708654801633904"}, "response": "35811314873829021681541502329592415910046259687906578373182348113354062667915"}, {"challenge": "570281701840454923284027789846112979267489519725", "commitment": {"A": "9009605155635164991255172763330527132956599635605679706799280350219449102655777726276779948555407916789053719435870774544942810615609746761591053842976791400078535439903175773812241374926735877415714242182072409514727941731061721176008380004617931029773581373005474062906424042283088813169439061985522486098993918022714146234049075132984434337168392159997779146904626515821449663507885157758571432339366919837224124233703510327240757076604978282962895468679458590555964646327912503730563425263251154307134306464496769856817573560019997691758667242701012938554668054561932365140451722447769060201235164353508496018396", "B": "7095152566470941797210233741364523285244242879274571062121536455126250147180011673998224835812566212181198141870777685118545243241411272839390613278788178437354217584679405378867562172034416311132334367545658969203477217216275439296476258244025470421166376832217289652596060614951355939534612065731937483590122089126929635427557020351601186295400798533639939803300366822632554251023139327129163209179864474999689145398690706541568542833764798672852328617854487572277101815505215586447780482700753571948678823235035779346202046111463143156984703388114634355359973372838756480028440739156838861237438337985901218835435"}, "response": "45300289979028305574348174344057698461327945273923831256513000288382251526757"}, {"challenge": "551088702665035847668902747883580511343061020504", "commitment": {"A": "10778736316897590180541172474445359044019885062490352464971033605997975875784289971977144645999917189632298526068180185813568831338178345714154995341782912732716425942910344958795291331177554698208302840777652462737668968281522366295717940950554049383559908122685609504495516521123980227729564091398377808073212102701522374269000531223102623914217551720024907670795974386695325568746529614740678508133221691502573143462611940521370164173630763155043331206439823308423854292001980626704566124212303821849371191527928408057672224010101370602334328006486596876205889500039522808028806550164445878819796883043073534891215", "B": "15242288353753305495679821690238123601579697279980388222741066749831796865558214484621883934906261177171379734158780861193802557183665496441228293979704803042494636082948166771376647887345381354300080298444969063102937129031830879895076002068297621198006456753714439282666307684465519551512622247026418248104253216682572523499865572010036665137943356750542363284219735694110245490137929901167012599838242720210177809980011078237998139327334112674566350544212881461973525199214117088299189290117933216971482344402470372419684612444965293340531389951153249408328495964015764750772612119375449163427433087648140094541012"}, "response": "42167731011751868639490671056051361672311216908513555777417071302435770215499"}, {"challenge": "1251576275849831109511918160200878210397028110487", "commitment": {"A": "13874750434619143650030341724267269076679613616545665657669633629205783211626877086978592440586502033399984637631380924422289144754809623223494693537696374791983279788172963893382700321523712851148616111870861147192475524292037962720703602697060212390290027549521815861554037810634338971447454920157384316693718613953783577198846768143723913276743953828938884329574877818938428019115597288933143910922435527717101579774992770071697866947528216911670114262202798817155110932527330898240339503898551556179099462562961563238800041661447365761292688771416278892026945393500118070439602417241951884585974499560753445928494", "B": "169355357549814133082110402968746543446121220332350479783679375515241428274697669069900277336734473111079401776325819361525579597645941494823378210151954278111533232764693487016900406744659136186062936789383070032107261425817943552071679906769688121472338678974380972549334643239849691345856235726324649553532000473883577116590982002047000225156279778901561228603719330861935923662151954575556399274842722078533851259001773354370469226456706666050981384797947970710098795540280970634522707171073986983444910522413288014927081452379575272597307526870018406512173391896173078158589593204776419104414087673924223008330"}, "response": "7076413782510726331122881849131639413726363163828763490947313704514185325881"}]]}
\ No newline at end of file
{"trustee_private_keys": [{"public_key": {"g": "14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533", "p": "16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071", "q": "61329566248342901292543872769978950870633559608669337131139375508370458778917", "y": "13413536485360596162117509074825082492146422492336993983220767543096612667335041152907231513824044913738906152541149857849737067859185342543622448311556712416080079971431641185273833852441264325481867696726488289145101401983297121479711309538219588042218732878057915656901430381090815194156076478057863101546026469415161926364987580263384129731992815360337654952915225618017615855899362635782363403142334181880226311848845722133441630063825175283518292350982441101548617569316612942610433088353640302787748937007618067190197809928467303825082570918742798139091993351332364996141428976368902435802194163628302762629032"}, "x": "45298523167338358817538343074024028933886309805828157085973885299032584889325"}]}
\ No newline at end of file
{"trustee_public_keys": [{"pok": {"challenge": "1269799557842253837797565878970695136921780853765", "commitment": "6262557888228969774774105688609114060918909614275626686586335457847573786400747768036526171167101489823347104074280871100921259532398195056570273190892264651528234448390963378245380395419272284582740525289074670273888264168250963643953453682369732003620414683190541116972018020646749325413456858071671357590900448623415044095801154541494764663055852884958354978070881404644285376015835373875228524584106688638847711514091446083928236492823000470600276392847367617105585573278776948748855125221944145107583698553994679319007286323978299866371261050678788209668489351085023347378700912536737539380963786431729936177579", "response": "4858904720300716925304227178612738017119587177822453389202332633404192506142"}, "public_key": {"g": "14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533", "p": "16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071", "q": "61329566248342901292543872769978950870633559608669337131139375508370458778917", "y": "13413536485360596162117509074825082492146422492336993983220767543096612667335041152907231513824044913738906152541149857849737067859185342543622448311556712416080079971431641185273833852441264325481867696726488289145101401983297121479711309538219588042218732878057915656901430381090815194156076478057863101546026469415161926364987580263384129731992815360337654952915225618017615855899362635782363403142334181880226311848845722133441630063825175283518292350982441101548617569316612942610433088353640302787748937007618067190197809928467303825082570918742798139091993351332364996141428976368902435802194163628302762629032"}}], "votes": [{"answers":[{"choices":[{"alpha":"7740601542222897488604912571701767900417538479512101835243627858641964634475417036445246040305457504529052878637412687903705450988547873417615527068474141271509821905721081848194249380318189267912835253639952563308376911915432943489161009655280354747308939772701260942402985965156908357017973754061436346219124579718853979218905781291656861799170704615061867654669244912397441864553389832089355214497789164219976042707984940968724690363931106697274219624008777583031782464993123050504631246855525040890182357744611587417729720789428995333993351932066532754572521443139050652161379208444628388965944078748631848630018","beta":"15907233130711302732229222350109113565682475085870220673497819395294422760763847084755312603328684698820769524825832059117824297332380630712411308024913581463881300261011707216803838024183272866494528512353968790619186874080483086005968953232199074876522608055951128368352801460674723421322109337929711857603267671997699834598820695082102382798169757887187015302830441522754406111830082828348041118888770483623004688881183955126185861574214254701400570483829550956451169412234684315793587963075522261475864368289670706661048334936697164493672184981532989860120403901176449970754852892230086186300707893050676600428847"},{"alpha":"11476092246906624652463131283859003979838524307787039748729744065247990946930632024595501421933724746448655151698873657066259096339126060398092808989264009385183726847559915231734083856798642158571687698601962036672301913720840395534961456552445715947542436141284942449610973646477897154846132977972755538030849552053027036122457005007893052954241568778172807390381206893927729782206688614981930947543737166484361150561699915680863700182880965739705539183178573605130242164142865663192133422871722132605413447855660196851326965523383697014202632796330868809377238600634128382484168231989474208954068369675730343694386","beta":"8307782764947693722024147860354074783338247987802100283846378958042834656800106976336629040239260734949000142580431051502248176755256546234771176525690541072840836799815103409793676661018101283486148120147670525833323118945118701695724186203017959445622257900329681978747792268152578624809638554081314622403848785385931210234675497803086031082446820841281070886008474497313425677848925844371884085388766973570038329306237139629965884373600982837801521461315540925301277060608299633846000918933227409858309415490795580332308414356154734362679281275747885316164239633197309224553014758136004562393669456705829325567005"},{"alpha":"6922461009252605979738064019937373963041134219080822184476420288225438506026916228499048136063610404696454921320436676122770777387751968131012939017892634522130669970080072038773872407629413420040754517533438719178705624688343887898970071490702037092432360768536095548852240172708961327171647832581699390803212656914888717300104664582688838409947703542233161925238737555751513148468353634042646262590325245352866374549383567661558198655876119285575279960443065390262841597713195982289384639963049597058237585930868210227013930802186138723973407947489852422071480124750653909069667879670292146336725751026988912071896","beta":"2604408750590231774806246178990061181653825287632727395591639520297191971554753480364378363125648785506909251799456603136736511049546790011532697156287880520365532562138718836067549039189752765700015671758716637793883246638954242892750956662590593790170986224975600842176500631030750910433179446513234887453107366709201303566214621101622152746556883563531434641189114592154272875047528767785966867265638810093692920641271154125312493136498411352547859254409004497870527046157301674173031982620339082198906965267052462314520178175022462772867369214609231659826275725774941465416962403329611342757232462900734985401854"},{"alpha":"5526838464883607832821464618304636087469673864925765333758138526954910158637243293821430889030371082992036705152253790682381402694202843574814305459418170267760004268641263908628533703483024073436977745936770289081645056468709228642911023545704638024916167513903616368485988474328960953259132752479715643979262973253479321571796932989698698671039046239473288162495993977588144487222116465274051943367130587185872229910195533241218972209784628921305156929228738958943543906451244671105006152396234781009950444894799870689030094132098951869735503658372394328951098506125276230048657932568183919804976158940416651879682","beta":"15415044744910175063261253741881346730007760101338225825790117464309064362916294691945302211732005156406672896842194448422638855122796361707247760040110849837919893206722969746816345010776392450021739733853708377699378922251034832410347852326930030050161378266477818240719983921463138380005244107856054716541258200306267895774365076414363347222733323090468835507725751796105793719914680884401697668725871481670063670531272869993830467554156939170654114781527867145027878290114569687852555483368811192514519020480437932747496392326597906454576414726158357991003704190895899339164690254673753321690789656214231541581609"}],"individual_proofs":[[{"challenge":"16577467017225037308239055743534002882537001651199082480226266193111711622694","commitment":{"A":"316722727789036819706341165039151295298447747450481299415721005922178873496781704876745496805438704762635843059456089141576953780936445712746302081857188510764101828611861827777299416616258112851801561534956114726498861087101511528195787060289475182513270585369301566763315370566995878931068064868185039587801807930762624523276878769184126612430324746352085409092291215524379084409312314705697564141258155757696609466254426268830331392389848161249964299887253795757360217646163799492343003960333338951635060891537267213954212400270593296258350167959523217663674663100464101328523279496875091121082304944306185376106","B":"9901429333893340200746368359546231680843864893423742182479037666225678100785875339380456367190991629063329208675104482019144461440614819318712491984191980695822561723207930821672609046895748366265465811568180096392694362945718905160394031648128864993864076342941655272852105883487583667677052903080740251349403630644212403538941880245832446514867987262388544652016464945760927418763586492712476269730697311503951590560018475953882274742417449880035533391133465878588295248365397311131226075353935806702977854486472324393816479285973081287567124433638478135581963365183777496211205062143614939649108104958334290833456"},"response":"57697808696280120032906741669427927202198997007761949251766045415585539979323"},{"challenge":"44752099231117863984304817027132864021135715507266445640909847563905350887786","commitment":{"A":"9625769857385555845242593605157948074106251882310749451242497730627085276163126896677958622704588774097532639381547196543382684559251747051468407622315122004626817869049933501046451761756239594325751989041704095449326947347677302519346517318517403804659775752205847692795748363044435370203888870414389354029844190454272172914367484876887892115309874043866205461549238071394439821414974060267865001394404305939952414411874250639063544429438219981821659224302455801904923756727302719130951175361446505684210820020737075597711822734580214007341116447283829147634862271043266277177418126065977537403997057174484403686070","B":"10765800546896482618070196495714444110521887290397254193145662607095478415604845502563399495109826344955665058399641566568221692281467091837300869124896399436438784699200196958097253985005819047948883680229340232013762722931475770528796704409527550045328210125854328053859727300072960377183940607536307138435455127499367750050670422635217017673227206013880288138092122104895092138501573551817626390522174041195319551995835353397745527102946137343716957220703348379043951867971498391196125571828405707114085886888574421820820785202079756984494730711661281822343826421082640484066583140305761673577627045284386085026108"},"response":"12826589229708111504601722367982448815652599946186143233610188493048910928730"}],[{"challenge":"32951461338869747487414295006472403855927694061055800096436481627960427650084","commitment":{"A":"187507337528433063761298087525669481237836472941183724245360904190121178085170069514459887009970059695827808293904510645845362882064088272873598389365321623976713924548518355658374195275445906539883271379569757468303222061228769337088950970010143037886503183396938852258261539004119786546625984887690477172225306083305930772763082910953910185366390947690771871026898674477866154889206824206744442421319115371619482148530016689143858114918058043270542513277138279469424768817347768009160453468807812920382004265503733829290583969939808798517344367524036127403018940552325774400390692500190854837332416669237734404978","B":"6834769497180288402606970435321761238763680972401147363267609825227332350008970150773175497341442496622059517686293766441504896269164153356969823161794640368955148315826424381366562526305268659046909157697436168606381990578987735689505925642323989034254500387608243854814510429911306104588152501354745742170125274780607451947054956081612229820741495641853299608353771311183412352361903589418510770993981664750946519677950078799556013484046054472878726036361109697396871756076675124607918439127278777781354409303538507013108246764403426508281210458369612446042914351260469184538027207360235050016121630417825509455967"},"response":"18258702362600518786662580252349761487580947622993031531894957661340024197244"},{"challenge":"28378104909473153805129577763850509700007536135108955851963849694905716365396","commitment":{"A":"5196507586182703335128160912016010888875690452349683083263656402875856356170426592892388978159179585883997460585947964084397383484509100264643651185088533167179885186962768063162441972104419312825046793656045928938839045176044907721797021698200037699207897592555265515891534573252182500818521601301920566112658477929767746722066573921082205421716724883988471421751624416099896418496158660357566762536780068003937172736498439603010319305462732046031743686938300410482713761814124909055713014970153641169564416108267325960572424883416608522428446275281703484935897347626345389491162440538882812604770233152140806686407","B":"12952346057681500568520537458162601648314422401158020662961136657139288443086291511160320749370382044910317931085622821223131547004559494190883239750827214371919935842970231470880165013910994605183030862658171378476841373461849202057016013695441044463770424100560856325701446746142139141863217784359143203882616048675097787054259373138015777244022106973207891182207423128011896270478856836419252814646603690006745860176212304231214957276732887120129762021710315474583000218253358292298925377681515726764886758079239957377214785504991579909822762746790634758075744876790992070657636367720892106360559287928190667913292"},"response":"6937524529540296866052900630628696640250648745484073530110229594146663168724"}],[{"challenge":"48856832778045422321779107343029567351204321608989897952806635828412686358379","commitment":{"A":"14561301781882441942701940229750004260959040766056750545305226319937988588642459524639245372437535119439048631872012452159421674111576550146390307823989301215806467712375647093952106239807548171660823595351566100220726957294129129265797925804410681248204195876712351359787977435304980980379808439134919603660995621589967471867706960330638642941140546821706165989492189920801029942643414089747026228380638324167131990794929023277211324105862663881694925532683855800758233554475948342054129454668456753029539396889783988263720608967589811035866656305841604812416898072664131016292111722152522561264669526282270706221975","B":"8887414887211756033799474014415277842740574432523116428798579619038183738611802982311702985024930736338656053987559664610013193287204331533410030681869691525283441933935607153375473139917916779649327623624986675100689600590938137729095659343412065741321761367576200389458430864706975687483721815068311068843785446284406375756964780279875420265493468422906623745136975610807498993583916345713959645054373072804243216019261580080420762975078331099040620205727864938984941219818183671982188713718001260467849245162385161193493265360960415831672505060056189108092256675076245083805557315259097027233518367506642559478424"},"response":"22357686327157385276059268739361607949536948322244310254234050714956682654082"},{"challenge":"12472733470297478970764765427403968307216144941688897671241454533136386453918","commitment":{"A":"14807412293049745831446854044074241485350441916355164996699929076639614925909176110506477982324205708329073707204420044183672040741639963339414234898025858970747911218603606957980804921759857996617821404271767588767801967823016488505889226633824525303788206635396172210649355436577253920939538882347967486754308705311474380071319582212693961834201771565412057874208978274368526017474588974797107396248380608206164697822870039711822298510589694679851214931513409333190295039454406282439550633018916852379368975885555016268993334463190389911242810756850652296416970724045076157153782251509382527995955759795027748461616","B":"2105175897256781614066251701630960146684719812344657676621687240151842103933745514879094529350897134191375878979653680050781754258153600795658445525251893516521828415259802009076757814149293448069463037722752595416811217563919173945942540778211172391370658319734806819281931994923691045271509842717975085719236160280232319343147692179305535081647281003980413525554736495468273376998324314413898808591894354178428765162692326119888154732812350668076264223106513782590531014152107032903089922005066536973613808038548076891353791853726200390461737144531106895373309492224767690486295187311553824357564625798391251945460"},"response":"38788576774103906686031841414493277720434193711561228470705497308047778025068"}],[{"challenge":"31102349529926164952929267399642677347855004488995470021262543898017011821637","commitment":{"A":"13510481484513604472620336807383520398815754365858933389159604376190121641527129497317378493098585875444310912804405904091085036349214273561397791689010129731387854343172817722480160038047494191577040727296660761068612215109009651284448370857451007871949731864334297921868705150588323987820535621713261700564517570193220388302010854215675414020918743588470968130160889136720484314950586428469122629352027786759250573763911853350340085555116488359580020839235177119737921013116596845584689997108447734122253131518872229617977484884866737124169711182557582426396704711409056993441724189685077328696034413568175353055381","B":"2588640492672264349873466893124446058376651626862836129141501732440065837221135419067818028904857186568195767661421232367397699093771401801792923780778177686932210754557870002868799625636288100652451605939098892981087902441571589019297743068486525309318294122962046586310353715384736466853261520215549292291059222138186421193856351712968775401023064251985660616110451034872301018851728553885805645312003702854218783073220412803737969844865505706445626829420870817633002658184090128488195501294302390326147227638722364968214895521253074241321388953769564869325282818238408139098524208037683217450296114726594791162558"},"response":"6093342948171830389539734162928830447348120889891952539900732782354544870490"},{"challenge":"30227216718416736339614605370929716326823869627909872883030306499351800666306","commitment":{"A":"13808900225253101883177521376719026636661386604109499268930087411858869467928962036169136671629320642214725482635670750788642359467180199784662682369771889005522238407504924917829267698379470143651046981201226421641081971007687090533486267103006742428939437763811858645969102154851992605781123065043294793274251901374446380882778020305665033871248543668185233681708167052488700591959610370034023972116758873959913960156058633981816216130964049254888389370883730015909444254993984856612915283269830732364795250318657099330570288698657156842343798677595178620067835215719898341948253001678264434674368885971542755936931","B":"10076918604823066854935124277860990542717717175051228558116758611599966891262190837965711304017072780972400367203918064765629604032053641859502550207438957616033473446174080506719269529926420780418936971158540862039855945576126835604647760535034951908914949684935717059845997182567535945606865927642601415828318054105132200383299595738555042239935741814575546445749437094134825219477110428823427941910516609816917162984497379212891147847012195433912505417029657002989792619684668790945588819830345714549333241008567391591994780835463054446878534008251301843182085247440162707698220137059393671034272484903762698927665"},"response":"9989017245719403562816109258186125596530931592461377590809851647576914000649"}]],"overall_proof":[{"challenge":"47357978991053860643211116114681287103485285373999510686926890895675306052366","commitment":{"A":"6444343942147635701847981296637131889592908398037693750168543772059472002959682151602846530251555420542574150893969182404135571976061104064799028907694124385140580503778276380110877515395897455758273292599735543682893737549767835390821434742925223516567659606378745229705574224739714290297665952138713676041027055742139133727180133658687966061960968062438835561187824664242363968695769094161464747550364331975757139070911660416792502319591764184746580781176620935095737424063313272342894660672980095788108015799612728748503753714149001450248207884340519782647566347795260403644869308532773742749330218058467756295215","B":"2977005909149796678095696065321596921092693296421730956415533648215466257159031695934806105488164747305857807983149621764896032808742166241142723001307456198722854911250195949602532024572940287207862381802614435947429726922634913594490167182993272436290116112589654780330442007087844096203699673918630475578364629512109528094684803383982064003911434237407200067685990751438648819754494706715324072149961069293751550063430308600079310501607162989781533556654257510659132812091610540643548349472437413503106906396751616369192839985128117070724387496479192357668060136542654330664265332971906870920484624812425152685500"},"response":"49283944817890117397680337311284589766992245088650249450532220439492437337223"},{"challenge":"13971587257289040649332756656249130152569472578229773359444396526851272415028","commitment":{"A":"7778468675831394875632865718417995223212707995156460632018859462797064943163308464050845903554320839952580323838390694786556759403694996099951047641287961031128485284234944990666243805627060238639947050000997261770825833468144103032709059059198197189078732647725720432612871880334611900711120349593036418465049134682008551356831534432618314530415110649253542182826449031841649439347450026783827433762522449884693704290386739757958571573411039674355708594770948152927954861251302252428820486631932688639982594638554731613683529316822278265733092854110853324831413900035434822084516367266021660165032027234532762918485","B":"1867939871472610140842177593833818206846228866560022073755747368073543878396748421594312457302493744158092057922446332771435306673206611306376860819894320303317486579072495490076296809834808304791154595557710726609985206490525624667780502803804284514113663671544989722083694499811121586822513862391201052144958098865821139100554454098274522139864279775398300122716538641915996882998001838570425100999703628684955412463906787732358049220333812599808606880164055545847420723434517389794134902068416144688541954242667816082683609308097878598173810660770897157496024380004181377720993989613136507835509559311020914314633"},"response":"60709455844288245534175225821546785807832607172978274439049979440333150964208"}]}],"election_hash":"0uq09D6ho9s PMm hh43GJ2lo9tR7K2GR9Frdb0ezSE","election_uuid":"94c1a03e-1c48-11e2-8866-3cd92b7981b8"},{"answers":[{"choices":[{"alpha":"6113659647999951792784246440823503230597230156572455201778368750954827006629209128108443771100055577669745310088229080813408540133253778506744352709533797912575088546260078646142352246924937098259312418128778465135836524158913304054168268442556876404254343791588364651552734801983484979693534887071595338479942629616282742523832205119650964064031711722299047913725022816478655691337464183409659792422475715518463902355732416458355093736195829533872797960386397916060127066791552387622102132416111256902737920446225633461207427102038820130171393404191934016675629096706796591491674252221587504230877868777721196971072","beta":"14579782076620382637722376215278427757636512952101266872987946776299886960168538540346792495387904923394186345434298098341669575527569462522243174176701598331810299616087157797661215638119915811401458591780080179316191556720090092091232775065549658225617490878061602953780516743644905943156605777205219516274970808905829245904639363475282977945436168845016186384362446437975907978695110272679463805413682370594612064865722173020733508538295075148035738674525460928122782271894668385903982897277346538662698743185328228042488019418602205258761041536721165246320967201233116774620913816610632673465787868665294052325695"},{"alpha":"1312329133022893486618687262936642526968166012181732331570130334164094059379731834957382946754681917028467042036888193426814375499593212786362707693221905438461556775283914921401244511176723245379965596075413821947943009330043494208115913691453024711008022658679780054032351259810388439735375719630645289277746167136219727901826004450922179668928684263066681982312918777669782225780122919914454844479284937080464179090082769444312186719605983269860433132794783135902956034658756624715012678730528005168985168804986260072766112681291503182767286633835815424132386342419454663031738027841264270529750473629733198486715","beta":"11004250559400594279875888834715801629682659265112163083635490019334738325595663518370188048872890447195236662892200908970327685434519660050977767216370324723327437233642806107150367114045128554333044130815802780892212970488757448773413179014174609133940931934412780952056753370623859055178092827923057645049728404790310138413028764326092477453707183576545009056742525704499520684339089355984630272789862623510827190827346489211222426626207880363685151526059181935814099023339956172603748090252413892224648812690425697123694826447556775753354367768496789632956985149109031119919191217959558863293120459118336658098956"},{"alpha":"11767937965479567782765112096439169250411186276853136396350454398924660682031733362957299624650725554513225010653837748123026788620931063453406140646903368271340871858299502968058634235832953030923117971970537160584226738248535019124741686477933654783979089286412657738813922027184045437371188561823714107564791969328296699243680883288835130445948775079120540585154850024665006805841093868123711765850420554403852696519229839343051089832029840588766727038517596853681512226754524170220998086728451691019635294322734697378052640851469148435862418003511549387790522795379157936253912082870166279762857003740808321756392","beta":"6368629846068264493383750020859417622296989932938858911491463201748618149637658945613629454463207184186988617945027498880633432173906625693200785219474767066213967725037286324103829602997316303283666517035653061921511754392418046330834179473300299343446915800222930918918129439680573076498645952796964389086441822089660423097909997799989484256124182309165967479353695950863421054093520765092577661805640653849145122643574743872878715275508149863706612082685613006471423539552305667897687558666179343131740813136256479100294926137661024243901059592957804280777731143541019156689236398978057576324266932463429209933405"},{"alpha":"7067121754997745329515259219511469526042044286626177617048511375179399972513098100132924784028994110849780998095640780278882507044877650821533174053905616161771892662979544690042105958080674297028237642287465022838290588529375220807508979692909968767778103553617923472308863395880660096769529225169791143751591203371644988014351126394972953487713021431489693957726009926888162410472416591792573690286799765784213944019742852413725911668719259988594625260830570656446987333685602172022218910970803749255851568159494190520229813275238288798254883874216660187066945371783679078066925212712261303481498777968263538117046","beta":"8761101667833270025385678644009841855404876518995640037401884482590211537938203563430205751970588234428759625087511375186153319117122438712372378353312207890560047365032268654062870330262033774407664940552920345733593422467870794009913477788339895500220299336226769789112044077907819354173686720428932013479128042599268896134641581063945432190383548817936430912628925525260933282108349199528448168384847420884424387865163886785845945769126719652083032130654202976392131078002101078896028661279652890408375208137546539086168559249510096009163266621303886919197580998310718984781299066646904287815492838379078470849495"}],"individual_proofs":[[{"challenge":"44050242552743789116565977368744080698053778306756825125635331830704581223685","commitment":{"A":"11110112931915482901588691464442841076216967363459527273578813997447084443681798852138576369195221903637596056757075233056940897864904780602559436568616389313100675595538642995057822390742667726723252674176187504389723408529144344771558307464066886508033236105020300217300221223603006237648710617056859845110836314456097265020547831270860721314938351444802299966852028047734570456005250579458860551406730953261877150539316971817882187804958745977675879449676278412810928119870612153595878181242447943707010043131406784038833279091619301574937442158517463836215887193535035600099983456101127879248417815573680056820475","B":"3055133317182713966944532225121163842319423303790302630962383363735582203784834494718097307863429103573555200048852713132599397694849938441968271216075138950802535973493114592835925159029482219580997272573783347228214954151847809602202407612621282546281973301974643351512745059844536280353615416568870333952708512547790333020967987283411663124798813493979951186700762468512113338002212122212681919976867459187011122687725415074600759289341635579729576667881388681497167701041737362473622906329648107300448449927986319440243406631945828185058330832075809605849175259653891750123290462866428053525510306448852130641565"},"response":"17711769155029968022251116611042065276199439439857842638543890379411377229480"},{"challenge":"17279323695599112175977895402331105145213969703140244238638202491737396537919","commitment":{"A":"15199210204321312201524230236436378601469742510700956212790410901339749678922220349563076713820818627294779298831253748318141152690233255718841479780337425502969565168275177927547513265644091194708202780318019548889435785270472944988882180755293731710873056598310467302390092902053270247600138942816972346305257022998389734006647748453431913117814552593209421313615551303521399448435161305855962919575202355800604394775008537134168866526645675517481180009775504015460137163782867337460329184336911172641109434562884460574555507063924258451799995807337152107455447418184637567683608771181099281344229437035933391889516","B":"6245903490253003880650844496666940456904226135137039497861827934234694494422785675080497265683159753632695273732927553827046818733693104782809278502172582116800547720485280075915023018867895717521412565601045746375498422909422508103720463538317352730673628189645777014119423640548944844720536210417993862866217235583704743312351602449459071993591656911809834686393546097365331913892777974844662546201305761085258545419730053337180479790692521420181622422021760161341808651714648923450920653234788353369055376186799273008854261806182577988100190033972398400511285010881970517275359233159708135865728406184089300141167"},"response":"33314284580560465595516485747137114269308990346547461716779921946618173201254"}],[{"challenge":"7535687468925618879901394989908279349569496802053977285646898510838383368005","commitment":{"A":"14660880845834277186448198128708170671267561599645012334384781004200946455859777683013559150275631947377220182271345244275272242643889381132141840194275864083291234514130218507163620486448791388831016710113451998525772400594644545118411679200297794546103642190702511402557957798606428631197671685565058736938874751495895561824669160938243000720490724999649880891034298834972919983111368378158254778470047798776453298698916685741315339462444065089350743833629028075266119643721568077230237042617121214627103496736365089736575676519488745240434211225077146362656536944861383777503007209446402934870832190347168733276234","B":"11027939201624167314846968151080672846695027048812045417772687707418332747946244811155697840548608205778359439818719242728136302238568276041156800259358092177310431726382059779086384834483528705988694918816112174930290497456478075077172544217216686235390109448161144283406319358018292136406648757283840135811762142821165373980615617578933850347263484280099390529588556122907891391014548531297571275361665327223386248873142732411147990471798999948228430640052416156975111770488592004893789192059641066539034094991968251068280299345514815406075085084992668025818065910968255077239745703768629178148177830855219514696665"},"response":"11625169218760055446492864602151051571568114179420059170082106642190915241377"},{"challenge":"53793878779417282412642477781090562189290592767581742541704721675094745055024","commitment":{"A":"7573286062979393654916498032893977140956774085273892331982158770228930251315814666373928155462030607668892019953027380807032410230411599162686078592207309331665387836822383231286554116312430795918608263678807500229800940530555565180492528654524195723875166341373294748562554952343738390229604251979963411947829137516821129941134597350933450147496186791272441812050487046210747554843394075746867587735301590917171105649169748064136848543047806370213875901279027876208507850515067806313523735092836653789114004942881266258904146358570383718722087950976595678421415830171026904502503286128250348600948102451581190852634","B":"666218296876564141498036296347961505946888913123591796778471200623257751775294302833377277888298235419046296366000441339771397934491804817062321998974839105410160875607990616522205181492101363654583365146862231991499210044651700417295563330404638453806736579646867316984814136286365770896428665276856718095381314420317200449692589454274048797816348442114665946752542187032513963061759325822909354916030322198705525391006189538371691165149625459240703703756402151394821874941128985448581957841925086158099517868728098218840980835139488127536024412427638201579392938511008327381017913795877309973346008356751518595307"},"response":"1164825397954562529530024000932721338419691513871426072078482708008737550524"}],[{"challenge":"58758925810281138911045367518895876119876231522707940966958605180043243408640","commitment":{"A":"7566187321285088208285353840609131726203201219062555312642459998106418056011594088291469162772151029638342569491688432966277099802030219271908144892039922242475235021972422744872878234824564843904462625256300866358713932887449906788188289575334981768552187727137742593481930309119281378081178024454550553577934989117713583788758378238519278485569496956838041479250092483857728649700858023804769118752854042322117555038156675124506396563199781873143221597895733717014325897101248721345140903935460479093101809134403857620206274455996509023793095647876915621422854427077735238066574216917491013311797487023068842006158","B":"6374956037952848784530883875040978298048847336560263167189972829670692056994944626077314807029651054868210168564822691356110253530688138548695146478477528886435993180112154131933326208356914435424399403552355954818819489173846477050978478230438144591507088435887779772940877380221209443547503234114382451200904912616352963335204717099463319794389361920984572826610524986616517412570987986971958311949408438479858837770376626931651827003179889226751116096074813138209468465542856038181723246595552430696863179530170126404819538912279573791059282822100483917312936913843099992690673615728374384156123346833642432217357"},"response":"15031551151577920979354895544502404417583227834317485653164906604895490219110"},{"challenge":"2570640438061762381498505251932335884576950913132360769819867968754088893089","commitment":{"A":"4326130808015274571458188788309708582913537806559858865367141392673929179824760005450332399482127321272490370143526291043919899196578171714387916742383043333632004091155365768901961191192974838605583014560921160377733146634603467837643370222855133102854693662879362363327010986158062548962616246531417943942784813537144681942842504039405735199047408285389040480955278826967811678254954007769696066538095802238303860106911596920437474729409052604365344451423680593650797432237233961833223856671523463165454681304699562483289711597196224335809946665162533823745714057348057583604090835839909243710001085671836499439520","B":"10140534094147727486296857191775702211260276050300762902407760682219358488656516922075854600206246984451960559375622271491961781629134517241920579187158953129610140574789881725089881130425500040041173972524639967352990857905019658569257781206284685263329757494304415801613591883596265107032935385726516195816732946428042272469905370245961667647161110893834611663979012246014842992581765827418375637768237142275153827931676695440025076840065967699707822497331468081415564576734142965261470225105461151823599467944629326496065635141640079450378128717386036731820263717428381029064299841196247268034446682295896433170657"},"response":"18358614804683451386454810545084792529792238978630830720420208364678741175593"}],[{"challenge":"33794422413235037442348763346792100293838050136588564968956125973149246082334","commitment":{"A":"1276544419871013617254753228286347748102142128013817667297774275902175551775373389892807531673589535560253539399899675550891257923116817691573572746813399501501257117226749443905173994431713457429880550187975941644379546172253640970298186406080402207858814897358316343154948352712433064059688635130428754899265974107684755348887964996441965356319927285196505061063373824414187164184623760956090718807564518009528021840026620338208343624517330292222919495846632983323523964074555365212122787374093887569133576659164401238261749965981203466564469895054287891146493968734990452367536212049835349696983533946554184721376","B":"10887926877379469156362261042259100953208327980525766287591429678916943091501214068610561877227648499734677427532828468754121277509044026367401600608243879917170204945729361132470133006671506381329790838075243817768504914825708752926577574305179587553903294126584820627172367622449409180500772199186762210106641364998394938841887590443232771512844983001715888945793693511830206022330015896689649720852501172180488077258189867191390577234658552357770279315536009404559278342540723094794250115395798260112851855601445779026020905716075098584478348974923624174355977465290980514256614829150097760424503216193461723222976"},"response":"37565719225431407525956996081493473842762729766242920667401741127409896721450"},{"challenge":"27535143835107863850195109423235066497785079010867943985084571525524033231460","commitment":{"A":"7742028463801341907294602613171921444544311449963993690524008279160223230764732949429395524466037179000230303470206575735929143884008272865206560839221184696028266015663505745488411671039852227382251044464146466938583747403979879423778483142598368657871504165959763982574032009634039760795614209372749608544448902551084611936050518330631816546850120956509640003207503944510752821934327149934488965323826725710876603968132652392299613041627737440044518147575683354550106951111667870761127449913942156534299823763198334095260817569780932450637711011693703324320034073178747628703677380846930320170402564032918792627015","B":"11595396367069218592328380099107607857312683581388109667672515112187614379102317234847045579666959198661703054239398823901417513976209125561968178825134064784206247854186178546496870623629965808231073573788239758778055999507325135672478186829703752516387468756916095420069035727217110264099413838621565616845729505715117822090942458890894777201756545098344470208807338808761536829779314982424224866271083797005041314628647957056922331201391395786149215438975560012546746708796045758721711212708215683318946748732892198127884142722441088616009829768121794298527831799855664591490774796287972498864103040621322417676415"},"response":"6468463131726622700357334212350186574985283767185418386348033605635918964761"}]],"overall_proof":[{"challenge":"12306603799743944907761638326603377007569168240949618300104688261336581067353","commitment":{"A":"8252511827735576693161424561370253851555865274463181778636410574011817499398058605959141999777654174241494080296397473685905433407977761504444408970014821496601707742714534465170599113833747560721439152758038178519172943350728872527848098362222361456495710904642873666400255079450013597973060779918774779852154700123985703559312301244721800571821876267263493404223433843348086008518771330298874655787728375901678594401150216149931706309178931148448659538152533185660880015987972918404893196249269656235457212893789154477372091319918718486837345635238727852191192578597344538374782976836504202917144487101674325611665","B":"5866246790146028300218310252080009986890031086377523159122884072056015955651146871938433153301060444122303037501367307632313360548486707125105838978882525310562068162279095146079698010407852527514371867724480728231244453491792160805144306746737493078330918864221669819450479789621176688098801292854931445607548839096576693300348047251297872625391768313264097414298656910686739578846556377153759390336262161712126619694864997310426361301682483747679902365687420297299615751297634056386263241282372437667063124129587877871905948744900523954819061281130821797893236217620753656110909920596191464974009049498878116070093"},"response":"35861692746567601812425778327855650885154331676831534891981977249310733069111"},{"challenge":"49022962448598956384782234443740078092645886942134737406206116825138333094787","commitment":{"A":"3274934343222824773821319619602679084317789015197958485055582676077089638026873170045344977761697046104680033976141341969626440849808006346858110853390397640536710693316232870351908238165753146571145448642975756243474671311056653409696896063270619451709681359289718403258719610577363515009049300402229255810986688217538859591595302062743336948580403492990589583764002465094982042015858469329105219699267251412328455828625524882376596247837470492141900544577032225744876970989049261526842897527467071371018050726051913645991204149127664542975933934654954613767266661363199401584007108756896137648080557652938321977459","B":"13466201149688688833854617031878917913050326159930637645916767402935936972596190765057839037121317769587860608001265529583236518840352314219562297016329077893949828754718091914869217147913320715471584648591175943521300277570242663047406707844695559971409326273708290485590852300574501927989400204837614306243487719410466844018734245768907870280377981978922484153271460465459114485376815204542356977626123146492512379580556688215314264302247546952231298874857389072242101359439963202475882763567777840372549658969838476442890321260745858633771218420021180633395572484147171742973795403098247752762394770926874415077395"},"response":"5291667513773054835595382465166946571056368891585753452170739744352722621293"}]}],"election_hash":"0uq09D6ho9s PMm hh43GJ2lo9tR7K2GR9Frdb0ezSE","election_uuid":"94c1a03e-1c48-11e2-8866-3cd92b7981b8"}], "encrypted_tally": {"num_tallied": 2, "tally": [[{"alpha": "6140145258556358661397492590955128913066385478756625008821418765986348367416109713440679922490386641555094007531536755286457454043337459062250953027955586899216206497663112184643059323699179808924908573326425375460164133010778684602102518656731897332287999463208730350918969950869068379490551326292127220592492055778054848882392507841201406457902077332941143418651463052897378710596285370000349226260580171661846182665707964437059409661998424121482884191763290338045303612721375028981371111759622499042228499581664373581328657686672944718657827179940285202905648432276017828729647405121756504875357166179318194063540", "beta": "11152039015378680335374164368722711910234220626398792914675632431484071946915762974719904361626552766864644873233905337251796923349700962676710949559759349014041754251510308738532344724894851261657934697049826359020534432610254771328964054082545109608538683389373531090567786761115603508848981765307657702444453022949315869926051765697264413764775899717169226548166837755169433439152505597639251325160282449397596948335076838462607631386989480912106957090632699417079612597661093130925299897124218200601435563402879670199511540448241661378286440310612509469291796109294318564205539239547298523235163835846445057530661"}, {"alpha": "9833817723491828772512918220169665172302710674018239981452598568308081832541776383648438445799643312195675731702939657743025544536882461171799934135766807925751840711330829780038128928884383845342130584859019214951283111790321162398479988074268957383567336282665625062285790791403984081026606465754724165646028962035817436904066341531400918879204560326826508564419491179601871192688223629851384425737785066501917825592218032079754414319219040322247188851242911635996311129123067658479051649609200070481849389611968112614169046214557378773381903310807293465147023406901015973449456393971662883143458040649269573975034", "beta": "4996299618104043547385649616963508204464297435901910775541744807844643987237306128698054633679765391278936435822571949589042879484139826491245269348371572748405631448389435367719580410865778278966485311738659214115998861663201848985213628130494420928622515553422794109832707308235259102691453450545090010337557971273813016647102853723503594783550475359083391616213477673387949181737133260633245943953128165905959262578823492087197294219896613989917994052296169408240744351807211417567401070517935252428436310267281637874851493751622616232768435061680829080073336933358651408569096241421469093617039828477431391398782"}, {"alpha": "13864082943735491413234258161363087887054585629092144112685045775971705909876813042366420674399791076366957185460383633381423655501464091467015739494215284320550350835830493523689555782636539870269606454225905619745835677541202773190553374630275030300814629851321203875624549272646609442144701699105929348324163423941669557739662679366043795227625464926650984387276629559238648981510925876403959580792094157983668939576520376724825735929853637082352755662732950594630543926951958240995157274496629786946103576399335193678004294245169183050549875676636122522333233235633915924094713273616229168293551215525510267149794", "beta": "11908944031071116237214816986793958685665329347715453752036319249926164137569628695456149891545696168394964987681627674587438872950918529495211222149664677788944972601633280104985742659602662636536777608000884696581561179915703795597890245498871496366877952073350276776706442894372345102375251690120490916067042194249344530925940505449041184432632644337609050915486146215689080860066255515630733972798017024769982518044885333028109456716797968592250327798866056503424507495672948371890457574112594164473569142307040019246141863446232938983689714531181668747207755829850611075937339719124292812324437595021080421288706"}, {"alpha": "7747649359162937428657473999014977986828318086776081862786597746183161949141327966054605025699278054102778387706589210339235025828070507473056554149213549402089023932615233323918618597032315467307487112459911341598374721259176573853527304134248968649503245589233252720146548815914336397095718344869311150797963927888564025309875661478359335823921679280480917534464880784291074772214071582888847034162475235605050852719164981745887607787209933157934650983775868038621348947320943294938925740838976337263207178611762607965886857464883906291847946838244760412161263223925744960654900938785387666615781682120030783341414", "beta": "12981646949055218272687690847406983669373058365755404137393187770798495202019417154486352340302298521152980001711714976901593062239091284486538901849433645402417067945612467365522350099764578387851492679834560420143983329281151512772338636151349348266889517642550114129098203998142881409250144071677062987426064840748430433656235255627088502398172257156457140502432585790520244547575969577227987493199999813343908708656545305549360431647551145655322285508529901198566823717948238428062836254031325982869863001223899744761969049824231274688553861690430289259212934060886396220009710153863934727520851486975134710673827"}]]}, "partial_decryptions": [{"decryption_factors": [["2456206064889148267733873384674102957864188191916919989673760852748506494039652400693498164117348676106114222278560829091010708313224238336901443383927877294752218104619146310674582617675357738704010976661495170180694672629300150164344545411895446859254815618443096985090909927599284330538476926968661233723347348234276364802034764545659918112716554577006922216581287495803063985112963482075489023049181208787181100765975344012417375263373825028726672453139890470829189886199934377547677469537404343583465028803749722626168552235972546818171436917002174512503493562521213040827115960164264726694478787118623546350774", "4996299618104043547385649616963508204464297435901910775541744807844643987237306128698054633679765391278936435822571949589042879484139826491245269348371572748405631448389435367719580410865778278966485311738659214115998861663201848985213628130494420928622515553422794109832707308235259102691453450545090010337557971273813016647102853723503594783550475359083391616213477673387949181737133260633245943953128165905959262578823492087197294219896613989917994052296169408240744351807211417567401070517935252428436310267281637874851493751622616232768435061680829080073336933358651408569096241421469093617039828477431391398782", "11908944031071116237214816986793958685665329347715453752036319249926164137569628695456149891545696168394964987681627674587438872950918529495211222149664677788944972601633280104985742659602662636536777608000884696581561179915703795597890245498871496366877952073350276776706442894372345102375251690120490916067042194249344530925940505449041184432632644337609050915486146215689080860066255515630733972798017024769982518044885333028109456716797968592250327798866056503424507495672948371890457574112594164473569142307040019246141863446232938983689714531181668747207755829850611075937339719124292812324437595021080421288706", "12981646949055218272687690847406983669373058365755404137393187770798495202019417154486352340302298521152980001711714976901593062239091284486538901849433645402417067945612467365522350099764578387851492679834560420143983329281151512772338636151349348266889517642550114129098203998142881409250144071677062987426064840748430433656235255627088502398172257156457140502432585790520244547575969577227987493199999813343908708656545305549360431647551145655322285508529901198566823717948238428062836254031325982869863001223899744761969049824231274688553861690430289259212934060886396220009710153863934727520851486975134710673827"]], "decryption_proofs": [[{"challenge": "678086184040171943096099169802629299422307686247", "commitment": {"A": "13825747775616499365187124191392992377334694351294323748244171687660062898468696111316448831384120185577196397917007198558817169610565296738055373236055245346755464323251542687666480166259184586322989363799041433186338876446306097105408307007622820894385902531849007085501101109333569247408334118662269720962964668514885609034875666240424040043678897057042727090628362080499201984200472174435756902830245346207905509700305453989961750393376228747621874321138928477010135894585800855407160963767114913093998057884495290127104719648171902013107583561695124849981318523339299531311611564829904734295968796117759695975688", "B": "2457059796239429136050893831528866674029001288512085730168645624504209763282987349883708363854774360284359410087873729574047910889124598179216591397525449407150343531511668513556384628012147474407675561074154830756859507345128306207107220280062383892022971070029526592016766857575218435368438328139834702454522217982793204307571573956835233993891595772102251371533164822987944913844538619316259172041238507803304044138032223567168690787961104373335644900015901676910777871077094149249194344609337037838692728339172052430704362901532427610223059707369606747150306157808565204736273657930241799427984593708654801633904"}, "response": "35811314873829021681541502329592415910046259687906578373182348113354062667915"}, {"challenge": "570281701840454923284027789846112979267489519725", "commitment": {"A": "9009605155635164991255172763330527132956599635605679706799280350219449102655777726276779948555407916789053719435870774544942810615609746761591053842976791400078535439903175773812241374926735877415714242182072409514727941731061721176008380004617931029773581373005474062906424042283088813169439061985522486098993918022714146234049075132984434337168392159997779146904626515821449663507885157758571432339366919837224124233703510327240757076604978282962895468679458590555964646327912503730563425263251154307134306464496769856817573560019997691758667242701012938554668054561932365140451722447769060201235164353508496018396", "B": "7095152566470941797210233741364523285244242879274571062121536455126250147180011673998224835812566212181198141870777685118545243241411272839390613278788178437354217584679405378867562172034416311132334367545658969203477217216275439296476258244025470421166376832217289652596060614951355939534612065731937483590122089126929635427557020351601186295400798533639939803300366822632554251023139327129163209179864474999689145398690706541568542833764798672852328617854487572277101815505215586447780482700753571948678823235035779346202046111463143156984703388114634355359973372838756480028440739156838861237438337985901218835435"}, "response": "45300289979028305574348174344057698461327945273923831256513000288382251526757"}, {"challenge": "551088702665035847668902747883580511343061020504", "commitment": {"A": "10778736316897590180541172474445359044019885062490352464971033605997975875784289971977144645999917189632298526068180185813568831338178345714154995341782912732716425942910344958795291331177554698208302840777652462737668968281522366295717940950554049383559908122685609504495516521123980227729564091398377808073212102701522374269000531223102623914217551720024907670795974386695325568746529614740678508133221691502573143462611940521370164173630763155043331206439823308423854292001980626704566124212303821849371191527928408057672224010101370602334328006486596876205889500039522808028806550164445878819796883043073534891215", "B": "15242288353753305495679821690238123601579697279980388222741066749831796865558214484621883934906261177171379734158780861193802557183665496441228293979704803042494636082948166771376647887345381354300080298444969063102937129031830879895076002068297621198006456753714439282666307684465519551512622247026418248104253216682572523499865572010036665137943356750542363284219735694110245490137929901167012599838242720210177809980011078237998139327334112674566350544212881461973525199214117088299189290117933216971482344402470372419684612444965293340531389951153249408328495964015764750772612119375449163427433087648140094541012"}, "response": "42167731011751868639490671056051361672311216908513555777417071302435770215499"}, {"challenge": "1251576275849831109511918160200878210397028110487", "commitment": {"A": "13874750434619143650030341724267269076679613616545665657669633629205783211626877086978592440586502033399984637631380924422289144754809623223494693537696374791983279788172963893382700321523712851148616111870861147192475524292037962720703602697060212390290027549521815861554037810634338971447454920157384316693718613953783577198846768143723913276743953828938884329574877818938428019115597288933143910922435527717101579774992770071697866947528216911670114262202798817155110932527330898240339503898551556179099462562961563238800041661447365761292688771416278892026945393500118070439602417241951884585974499560753445928494", "B": "169355357549814133082110402968746543446121220332350479783679375515241428274697669069900277336734473111079401776325819361525579597645941494823378210151954278111533232764693487016900406744659136186062936789383070032107261425817943552071679906769688121472338678974380972549334643239849691345856235726324649553532000473883577116590982002047000225156279778901561228603719330861935923662151954575556399274842722078533851259001773354370469226456706666050981384797947970710098795540280970634522707171073986983444910522413288014927081452379575272597307526870018406512173391896173078158589593204776419104414087673924223008330"}, "response": "7076413782510726331122881849131639413726363163828763490947313704514185325881"}]]}]}
\ No newline at end of file
{"public_key": {"g": "14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533", "p": "16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071", "q": "61329566248342901292543872769978950870633559608669337131139375508370458778917", "y": "13413536485360596162117509074825082492146422492336993983220767543096612667335041152907231513824044913738906152541149857849737067859185342543622448311556712416080079971431641185273833852441264325481867696726488289145101401983297121479711309538219588042218732878057915656901430381090815194156076478057863101546026469415161926364987580263384129731992815360337654952915225618017615855899362635782363403142334181880226311848845722133441630063825175283518292350982441101548617569316612942610433088353640302787748937007618067190197809928467303825082570918742798139091993351332364996141428976368902435802194163628302762629032"}, "x": "45298523167338358817538343074024028933886309805828157085973885299032584889325"}
\ No newline at end of file
{"pok": {"challenge": "1269799557842253837797565878970695136921780853765", "commitment": "6262557888228969774774105688609114060918909614275626686586335457847573786400747768036526171167101489823347104074280871100921259532398195056570273190892264651528234448390963378245380395419272284582740525289074670273888264168250963643953453682369732003620414683190541116972018020646749325413456858071671357590900448623415044095801154541494764663055852884958354978070881404644285376015835373875228524584106688638847711514091446083928236492823000470600276392847367617105585573278776948748855125221944145107583698553994679319007286323978299866371261050678788209668489351085023347378700912536737539380963786431729936177579", "response": "4858904720300716925304227178612738017119587177822453389202332633404192506142"}, "public_key": {"g": "14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533", "p": "16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071", "q": "61329566248342901292543872769978950870633559608669337131139375508370458778917", "y": "13413536485360596162117509074825082492146422492336993983220767543096612667335041152907231513824044913738906152541149857849737067859185342543622448311556712416080079971431641185273833852441264325481867696726488289145101401983297121479711309538219588042218732878057915656901430381090815194156076478057863101546026469415161926364987580263384129731992815360337654952915225618017615855899362635782363403142334181880226311848845722133441630063825175283518292350982441101548617569316612942610433088353640302787748937007618067190197809928467303825082570918742798139091993351332364996141428976368902435802194163628302762629032"}}
\ No newline at end of file
{"answers":[{"choices":[{"alpha":"7740601542222897488604912571701767900417538479512101835243627858641964634475417036445246040305457504529052878637412687903705450988547873417615527068474141271509821905721081848194249380318189267912835253639952563308376911915432943489161009655280354747308939772701260942402985965156908357017973754061436346219124579718853979218905781291656861799170704615061867654669244912397441864553389832089355214497789164219976042707984940968724690363931106697274219624008777583031782464993123050504631246855525040890182357744611587417729720789428995333993351932066532754572521443139050652161379208444628388965944078748631848630018","beta":"15907233130711302732229222350109113565682475085870220673497819395294422760763847084755312603328684698820769524825832059117824297332380630712411308024913581463881300261011707216803838024183272866494528512353968790619186874080483086005968953232199074876522608055951128368352801460674723421322109337929711857603267671997699834598820695082102382798169757887187015302830441522754406111830082828348041118888770483623004688881183955126185861574214254701400570483829550956451169412234684315793587963075522261475864368289670706661048334936697164493672184981532989860120403901176449970754852892230086186300707893050676600428847"},{"alpha":"11476092246906624652463131283859003979838524307787039748729744065247990946930632024595501421933724746448655151698873657066259096339126060398092808989264009385183726847559915231734083856798642158571687698601962036672301913720840395534961456552445715947542436141284942449610973646477897154846132977972755538030849552053027036122457005007893052954241568778172807390381206893927729782206688614981930947543737166484361150561699915680863700182880965739705539183178573605130242164142865663192133422871722132605413447855660196851326965523383697014202632796330868809377238600634128382484168231989474208954068369675730343694386","beta":"8307782764947693722024147860354074783338247987802100283846378958042834656800106976336629040239260734949000142580431051502248176755256546234771176525690541072840836799815103409793676661018101283486148120147670525833323118945118701695724186203017959445622257900329681978747792268152578624809638554081314622403848785385931210234675497803086031082446820841281070886008474497313425677848925844371884085388766973570038329306237139629965884373600982837801521461315540925301277060608299633846000918933227409858309415490795580332308414356154734362679281275747885316164239633197309224553014758136004562393669456705829325567005"},{"alpha":"6922461009252605979738064019937373963041134219080822184476420288225438506026916228499048136063610404696454921320436676122770777387751968131012939017892634522130669970080072038773872407629413420040754517533438719178705624688343887898970071490702037092432360768536095548852240172708961327171647832581699390803212656914888717300104664582688838409947703542233161925238737555751513148468353634042646262590325245352866374549383567661558198655876119285575279960443065390262841597713195982289384639963049597058237585930868210227013930802186138723973407947489852422071480124750653909069667879670292146336725751026988912071896","beta":"2604408750590231774806246178990061181653825287632727395591639520297191971554753480364378363125648785506909251799456603136736511049546790011532697156287880520365532562138718836067549039189752765700015671758716637793883246638954242892750956662590593790170986224975600842176500631030750910433179446513234887453107366709201303566214621101622152746556883563531434641189114592154272875047528767785966867265638810093692920641271154125312493136498411352547859254409004497870527046157301674173031982620339082198906965267052462314520178175022462772867369214609231659826275725774941465416962403329611342757232462900734985401854"},{"alpha":"5526838464883607832821464618304636087469673864925765333758138526954910158637243293821430889030371082992036705152253790682381402694202843574814305459418170267760004268641263908628533703483024073436977745936770289081645056468709228642911023545704638024916167513903616368485988474328960953259132752479715643979262973253479321571796932989698698671039046239473288162495993977588144487222116465274051943367130587185872229910195533241218972209784628921305156929228738958943543906451244671105006152396234781009950444894799870689030094132098951869735503658372394328951098506125276230048657932568183919804976158940416651879682","beta":"15415044744910175063261253741881346730007760101338225825790117464309064362916294691945302211732005156406672896842194448422638855122796361707247760040110849837919893206722969746816345010776392450021739733853708377699378922251034832410347852326930030050161378266477818240719983921463138380005244107856054716541258200306267895774365076414363347222733323090468835507725751796105793719914680884401697668725871481670063670531272869993830467554156939170654114781527867145027878290114569687852555483368811192514519020480437932747496392326597906454576414726158357991003704190895899339164690254673753321690789656214231541581609"}],"individual_proofs":[[{"challenge":"16577467017225037308239055743534002882537001651199082480226266193111711622694","commitment":{"A":"316722727789036819706341165039151295298447747450481299415721005922178873496781704876745496805438704762635843059456089141576953780936445712746302081857188510764101828611861827777299416616258112851801561534956114726498861087101511528195787060289475182513270585369301566763315370566995878931068064868185039587801807930762624523276878769184126612430324746352085409092291215524379084409312314705697564141258155757696609466254426268830331392389848161249964299887253795757360217646163799492343003960333338951635060891537267213954212400270593296258350167959523217663674663100464101328523279496875091121082304944306185376106","B":"9901429333893340200746368359546231680843864893423742182479037666225678100785875339380456367190991629063329208675104482019144461440614819318712491984191980695822561723207930821672609046895748366265465811568180096392694362945718905160394031648128864993864076342941655272852105883487583667677052903080740251349403630644212403538941880245832446514867987262388544652016464945760927418763586492712476269730697311503951590560018475953882274742417449880035533391133465878588295248365397311131226075353935806702977854486472324393816479285973081287567124433638478135581963365183777496211205062143614939649108104958334290833456"},"response":"57697808696280120032906741669427927202198997007761949251766045415585539979323"},{"challenge":"44752099231117863984304817027132864021135715507266445640909847563905350887786","commitment":{"A":"9625769857385555845242593605157948074106251882310749451242497730627085276163126896677958622704588774097532639381547196543382684559251747051468407622315122004626817869049933501046451761756239594325751989041704095449326947347677302519346517318517403804659775752205847692795748363044435370203888870414389354029844190454272172914367484876887892115309874043866205461549238071394439821414974060267865001394404305939952414411874250639063544429438219981821659224302455801904923756727302719130951175361446505684210820020737075597711822734580214007341116447283829147634862271043266277177418126065977537403997057174484403686070","B":"10765800546896482618070196495714444110521887290397254193145662607095478415604845502563399495109826344955665058399641566568221692281467091837300869124896399436438784699200196958097253985005819047948883680229340232013762722931475770528796704409527550045328210125854328053859727300072960377183940607536307138435455127499367750050670422635217017673227206013880288138092122104895092138501573551817626390522174041195319551995835353397745527102946137343716957220703348379043951867971498391196125571828405707114085886888574421820820785202079756984494730711661281822343826421082640484066583140305761673577627045284386085026108"},"response":"12826589229708111504601722367982448815652599946186143233610188493048910928730"}],[{"challenge":"32951461338869747487414295006472403855927694061055800096436481627960427650084","commitment":{"A":"187507337528433063761298087525669481237836472941183724245360904190121178085170069514459887009970059695827808293904510645845362882064088272873598389365321623976713924548518355658374195275445906539883271379569757468303222061228769337088950970010143037886503183396938852258261539004119786546625984887690477172225306083305930772763082910953910185366390947690771871026898674477866154889206824206744442421319115371619482148530016689143858114918058043270542513277138279469424768817347768009160453468807812920382004265503733829290583969939808798517344367524036127403018940552325774400390692500190854837332416669237734404978","B":"6834769497180288402606970435321761238763680972401147363267609825227332350008970150773175497341442496622059517686293766441504896269164153356969823161794640368955148315826424381366562526305268659046909157697436168606381990578987735689505925642323989034254500387608243854814510429911306104588152501354745742170125274780607451947054956081612229820741495641853299608353771311183412352361903589418510770993981664750946519677950078799556013484046054472878726036361109697396871756076675124607918439127278777781354409303538507013108246764403426508281210458369612446042914351260469184538027207360235050016121630417825509455967"},"response":"18258702362600518786662580252349761487580947622993031531894957661340024197244"},{"challenge":"28378104909473153805129577763850509700007536135108955851963849694905716365396","commitment":{"A":"5196507586182703335128160912016010888875690452349683083263656402875856356170426592892388978159179585883997460585947964084397383484509100264643651185088533167179885186962768063162441972104419312825046793656045928938839045176044907721797021698200037699207897592555265515891534573252182500818521601301920566112658477929767746722066573921082205421716724883988471421751624416099896418496158660357566762536780068003937172736498439603010319305462732046031743686938300410482713761814124909055713014970153641169564416108267325960572424883416608522428446275281703484935897347626345389491162440538882812604770233152140806686407","B":"12952346057681500568520537458162601648314422401158020662961136657139288443086291511160320749370382044910317931085622821223131547004559494190883239750827214371919935842970231470880165013910994605183030862658171378476841373461849202057016013695441044463770424100560856325701446746142139141863217784359143203882616048675097787054259373138015777244022106973207891182207423128011896270478856836419252814646603690006745860176212304231214957276732887120129762021710315474583000218253358292298925377681515726764886758079239957377214785504991579909822762746790634758075744876790992070657636367720892106360559287928190667913292"},"response":"6937524529540296866052900630628696640250648745484073530110229594146663168724"}],[{"challenge":"48856832778045422321779107343029567351204321608989897952806635828412686358379","commitment":{"A":"14561301781882441942701940229750004260959040766056750545305226319937988588642459524639245372437535119439048631872012452159421674111576550146390307823989301215806467712375647093952106239807548171660823595351566100220726957294129129265797925804410681248204195876712351359787977435304980980379808439134919603660995621589967471867706960330638642941140546821706165989492189920801029942643414089747026228380638324167131990794929023277211324105862663881694925532683855800758233554475948342054129454668456753029539396889783988263720608967589811035866656305841604812416898072664131016292111722152522561264669526282270706221975","B":"8887414887211756033799474014415277842740574432523116428798579619038183738611802982311702985024930736338656053987559664610013193287204331533410030681869691525283441933935607153375473139917916779649327623624986675100689600590938137729095659343412065741321761367576200389458430864706975687483721815068311068843785446284406375756964780279875420265493468422906623745136975610807498993583916345713959645054373072804243216019261580080420762975078331099040620205727864938984941219818183671982188713718001260467849245162385161193493265360960415831672505060056189108092256675076245083805557315259097027233518367506642559478424"},"response":"22357686327157385276059268739361607949536948322244310254234050714956682654082"},{"challenge":"12472733470297478970764765427403968307216144941688897671241454533136386453918","commitment":{"A":"14807412293049745831446854044074241485350441916355164996699929076639614925909176110506477982324205708329073707204420044183672040741639963339414234898025858970747911218603606957980804921759857996617821404271767588767801967823016488505889226633824525303788206635396172210649355436577253920939538882347967486754308705311474380071319582212693961834201771565412057874208978274368526017474588974797107396248380608206164697822870039711822298510589694679851214931513409333190295039454406282439550633018916852379368975885555016268993334463190389911242810756850652296416970724045076157153782251509382527995955759795027748461616","B":"2105175897256781614066251701630960146684719812344657676621687240151842103933745514879094529350897134191375878979653680050781754258153600795658445525251893516521828415259802009076757814149293448069463037722752595416811217563919173945942540778211172391370658319734806819281931994923691045271509842717975085719236160280232319343147692179305535081647281003980413525554736495468273376998324314413898808591894354178428765162692326119888154732812350668076264223106513782590531014152107032903089922005066536973613808038548076891353791853726200390461737144531106895373309492224767690486295187311553824357564625798391251945460"},"response":"38788576774103906686031841414493277720434193711561228470705497308047778025068"}],[{"challenge":"31102349529926164952929267399642677347855004488995470021262543898017011821637","commitment":{"A":"13510481484513604472620336807383520398815754365858933389159604376190121641527129497317378493098585875444310912804405904091085036349214273561397791689010129731387854343172817722480160038047494191577040727296660761068612215109009651284448370857451007871949731864334297921868705150588323987820535621713261700564517570193220388302010854215675414020918743588470968130160889136720484314950586428469122629352027786759250573763911853350340085555116488359580020839235177119737921013116596845584689997108447734122253131518872229617977484884866737124169711182557582426396704711409056993441724189685077328696034413568175353055381","B":"2588640492672264349873466893124446058376651626862836129141501732440065837221135419067818028904857186568195767661421232367397699093771401801792923780778177686932210754557870002868799625636288100652451605939098892981087902441571589019297743068486525309318294122962046586310353715384736466853261520215549292291059222138186421193856351712968775401023064251985660616110451034872301018851728553885805645312003702854218783073220412803737969844865505706445626829420870817633002658184090128488195501294302390326147227638722364968214895521253074241321388953769564869325282818238408139098524208037683217450296114726594791162558"},"response":"6093342948171830389539734162928830447348120889891952539900732782354544870490"},{"challenge":"30227216718416736339614605370929716326823869627909872883030306499351800666306","commitment":{"A":"13808900225253101883177521376719026636661386604109499268930087411858869467928962036169136671629320642214725482635670750788642359467180199784662682369771889005522238407504924917829267698379470143651046981201226421641081971007687090533486267103006742428939437763811858645969102154851992605781123065043294793274251901374446380882778020305665033871248543668185233681708167052488700591959610370034023972116758873959913960156058633981816216130964049254888389370883730015909444254993984856612915283269830732364795250318657099330570288698657156842343798677595178620067835215719898341948253001678264434674368885971542755936931","B":"10076918604823066854935124277860990542717717175051228558116758611599966891262190837965711304017072780972400367203918064765629604032053641859502550207438957616033473446174080506719269529926420780418936971158540862039855945576126835604647760535034951908914949684935717059845997182567535945606865927642601415828318054105132200383299595738555042239935741814575546445749437094134825219477110428823427941910516609816917162984497379212891147847012195433912505417029657002989792619684668790945588819830345714549333241008567391591994780835463054446878534008251301843182085247440162707698220137059393671034272484903762698927665"},"response":"9989017245719403562816109258186125596530931592461377590809851647576914000649"}]],"overall_proof":[{"challenge":"47357978991053860643211116114681287103485285373999510686926890895675306052366","commitment":{"A":"6444343942147635701847981296637131889592908398037693750168543772059472002959682151602846530251555420542574150893969182404135571976061104064799028907694124385140580503778276380110877515395897455758273292599735543682893737549767835390821434742925223516567659606378745229705574224739714290297665952138713676041027055742139133727180133658687966061960968062438835561187824664242363968695769094161464747550364331975757139070911660416792502319591764184746580781176620935095737424063313272342894660672980095788108015799612728748503753714149001450248207884340519782647566347795260403644869308532773742749330218058467756295215","B":"2977005909149796678095696065321596921092693296421730956415533648215466257159031695934806105488164747305857807983149621764896032808742166241142723001307456198722854911250195949602532024572940287207862381802614435947429726922634913594490167182993272436290116112589654780330442007087844096203699673918630475578364629512109528094684803383982064003911434237407200067685990751438648819754494706715324072149961069293751550063430308600079310501607162989781533556654257510659132812091610540643548349472437413503106906396751616369192839985128117070724387496479192357668060136542654330664265332971906870920484624812425152685500"},"response":"49283944817890117397680337311284589766992245088650249450532220439492437337223"},{"challenge":"13971587257289040649332756656249130152569472578229773359444396526851272415028","commitment":{"A":"7778468675831394875632865718417995223212707995156460632018859462797064943163308464050845903554320839952580323838390694786556759403694996099951047641287961031128485284234944990666243805627060238639947050000997261770825833468144103032709059059198197189078732647725720432612871880334611900711120349593036418465049134682008551356831534432618314530415110649253542182826449031841649439347450026783827433762522449884693704290386739757958571573411039674355708594770948152927954861251302252428820486631932688639982594638554731613683529316822278265733092854110853324831413900035434822084516367266021660165032027234532762918485","B":"1867939871472610140842177593833818206846228866560022073755747368073543878396748421594312457302493744158092057922446332771435306673206611306376860819894320303317486579072495490076296809834808304791154595557710726609985206490525624667780502803804284514113663671544989722083694499811121586822513862391201052144958098865821139100554454098274522139864279775398300122716538641915996882998001838570425100999703628684955412463906787732358049220333812599808606880164055545847420723434517389794134902068416144688541954242667816082683609308097878598173810660770897157496024380004181377720993989613136507835509559311020914314633"},"response":"60709455844288245534175225821546785807832607172978274439049979440333150964208"}]}],"election_hash":"0uq09D6ho9s PMm hh43GJ2lo9tR7K2GR9Frdb0ezSE","election_uuid":"94c1a03e-1c48-11e2-8866-3cd92b7981b8"}
\ No newline at end of file
{"answers":[{"choices":[{"alpha":"6113659647999951792784246440823503230597230156572455201778368750954827006629209128108443771100055577669745310088229080813408540133253778506744352709533797912575088546260078646142352246924937098259312418128778465135836524158913304054168268442556876404254343791588364651552734801983484979693534887071595338479942629616282742523832205119650964064031711722299047913725022816478655691337464183409659792422475715518463902355732416458355093736195829533872797960386397916060127066791552387622102132416111256902737920446225633461207427102038820130171393404191934016675629096706796591491674252221587504230877868777721196971072","beta":"14579782076620382637722376215278427757636512952101266872987946776299886960168538540346792495387904923394186345434298098341669575527569462522243174176701598331810299616087157797661215638119915811401458591780080179316191556720090092091232775065549658225617490878061602953780516743644905943156605777205219516274970808905829245904639363475282977945436168845016186384362446437975907978695110272679463805413682370594612064865722173020733508538295075148035738674525460928122782271894668385903982897277346538662698743185328228042488019418602205258761041536721165246320967201233116774620913816610632673465787868665294052325695"},{"alpha":"1312329133022893486618687262936642526968166012181732331570130334164094059379731834957382946754681917028467042036888193426814375499593212786362707693221905438461556775283914921401244511176723245379965596075413821947943009330043494208115913691453024711008022658679780054032351259810388439735375719630645289277746167136219727901826004450922179668928684263066681982312918777669782225780122919914454844479284937080464179090082769444312186719605983269860433132794783135902956034658756624715012678730528005168985168804986260072766112681291503182767286633835815424132386342419454663031738027841264270529750473629733198486715","beta":"11004250559400594279875888834715801629682659265112163083635490019334738325595663518370188048872890447195236662892200908970327685434519660050977767216370324723327437233642806107150367114045128554333044130815802780892212970488757448773413179014174609133940931934412780952056753370623859055178092827923057645049728404790310138413028764326092477453707183576545009056742525704499520684339089355984630272789862623510827190827346489211222426626207880363685151526059181935814099023339956172603748090252413892224648812690425697123694826447556775753354367768496789632956985149109031119919191217959558863293120459118336658098956"},{"alpha":"11767937965479567782765112096439169250411186276853136396350454398924660682031733362957299624650725554513225010653837748123026788620931063453406140646903368271340871858299502968058634235832953030923117971970537160584226738248535019124741686477933654783979089286412657738813922027184045437371188561823714107564791969328296699243680883288835130445948775079120540585154850024665006805841093868123711765850420554403852696519229839343051089832029840588766727038517596853681512226754524170220998086728451691019635294322734697378052640851469148435862418003511549387790522795379157936253912082870166279762857003740808321756392","beta":"6368629846068264493383750020859417622296989932938858911491463201748618149637658945613629454463207184186988617945027498880633432173906625693200785219474767066213967725037286324103829602997316303283666517035653061921511754392418046330834179473300299343446915800222930918918129439680573076498645952796964389086441822089660423097909997799989484256124182309165967479353695950863421054093520765092577661805640653849145122643574743872878715275508149863706612082685613006471423539552305667897687558666179343131740813136256479100294926137661024243901059592957804280777731143541019156689236398978057576324266932463429209933405"},{"alpha":"7067121754997745329515259219511469526042044286626177617048511375179399972513098100132924784028994110849780998095640780278882507044877650821533174053905616161771892662979544690042105958080674297028237642287465022838290588529375220807508979692909968767778103553617923472308863395880660096769529225169791143751591203371644988014351126394972953487713021431489693957726009926888162410472416591792573690286799765784213944019742852413725911668719259988594625260830570656446987333685602172022218910970803749255851568159494190520229813275238288798254883874216660187066945371783679078066925212712261303481498777968263538117046","beta":"8761101667833270025385678644009841855404876518995640037401884482590211537938203563430205751970588234428759625087511375186153319117122438712372378353312207890560047365032268654062870330262033774407664940552920345733593422467870794009913477788339895500220299336226769789112044077907819354173686720428932013479128042599268896134641581063945432190383548817936430912628925525260933282108349199528448168384847420884424387865163886785845945769126719652083032130654202976392131078002101078896028661279652890408375208137546539086168559249510096009163266621303886919197580998310718984781299066646904287815492838379078470849495"}],"individual_proofs":[[{"challenge":"44050242552743789116565977368744080698053778306756825125635331830704581223685","commitment":{"A":"11110112931915482901588691464442841076216967363459527273578813997447084443681798852138576369195221903637596056757075233056940897864904780602559436568616389313100675595538642995057822390742667726723252674176187504389723408529144344771558307464066886508033236105020300217300221223603006237648710617056859845110836314456097265020547831270860721314938351444802299966852028047734570456005250579458860551406730953261877150539316971817882187804958745977675879449676278412810928119870612153595878181242447943707010043131406784038833279091619301574937442158517463836215887193535035600099983456101127879248417815573680056820475","B":"3055133317182713966944532225121163842319423303790302630962383363735582203784834494718097307863429103573555200048852713132599397694849938441968271216075138950802535973493114592835925159029482219580997272573783347228214954151847809602202407612621282546281973301974643351512745059844536280353615416568870333952708512547790333020967987283411663124798813493979951186700762468512113338002212122212681919976867459187011122687725415074600759289341635579729576667881388681497167701041737362473622906329648107300448449927986319440243406631945828185058330832075809605849175259653891750123290462866428053525510306448852130641565"},"response":"17711769155029968022251116611042065276199439439857842638543890379411377229480"},{"challenge":"17279323695599112175977895402331105145213969703140244238638202491737396537919","commitment":{"A":"15199210204321312201524230236436378601469742510700956212790410901339749678922220349563076713820818627294779298831253748318141152690233255718841479780337425502969565168275177927547513265644091194708202780318019548889435785270472944988882180755293731710873056598310467302390092902053270247600138942816972346305257022998389734006647748453431913117814552593209421313615551303521399448435161305855962919575202355800604394775008537134168866526645675517481180009775504015460137163782867337460329184336911172641109434562884460574555507063924258451799995807337152107455447418184637567683608771181099281344229437035933391889516","B":"6245903490253003880650844496666940456904226135137039497861827934234694494422785675080497265683159753632695273732927553827046818733693104782809278502172582116800547720485280075915023018867895717521412565601045746375498422909422508103720463538317352730673628189645777014119423640548944844720536210417993862866217235583704743312351602449459071993591656911809834686393546097365331913892777974844662546201305761085258545419730053337180479790692521420181622422021760161341808651714648923450920653234788353369055376186799273008854261806182577988100190033972398400511285010881970517275359233159708135865728406184089300141167"},"response":"33314284580560465595516485747137114269308990346547461716779921946618173201254"}],[{"challenge":"7535687468925618879901394989908279349569496802053977285646898510838383368005","commitment":{"A":"14660880845834277186448198128708170671267561599645012334384781004200946455859777683013559150275631947377220182271345244275272242643889381132141840194275864083291234514130218507163620486448791388831016710113451998525772400594644545118411679200297794546103642190702511402557957798606428631197671685565058736938874751495895561824669160938243000720490724999649880891034298834972919983111368378158254778470047798776453298698916685741315339462444065089350743833629028075266119643721568077230237042617121214627103496736365089736575676519488745240434211225077146362656536944861383777503007209446402934870832190347168733276234","B":"11027939201624167314846968151080672846695027048812045417772687707418332747946244811155697840548608205778359439818719242728136302238568276041156800259358092177310431726382059779086384834483528705988694918816112174930290497456478075077172544217216686235390109448161144283406319358018292136406648757283840135811762142821165373980615617578933850347263484280099390529588556122907891391014548531297571275361665327223386248873142732411147990471798999948228430640052416156975111770488592004893789192059641066539034094991968251068280299345514815406075085084992668025818065910968255077239745703768629178148177830855219514696665"},"response":"11625169218760055446492864602151051571568114179420059170082106642190915241377"},{"challenge":"53793878779417282412642477781090562189290592767581742541704721675094745055024","commitment":{"A":"7573286062979393654916498032893977140956774085273892331982158770228930251315814666373928155462030607668892019953027380807032410230411599162686078592207309331665387836822383231286554116312430795918608263678807500229800940530555565180492528654524195723875166341373294748562554952343738390229604251979963411947829137516821129941134597350933450147496186791272441812050487046210747554843394075746867587735301590917171105649169748064136848543047806370213875901279027876208507850515067806313523735092836653789114004942881266258904146358570383718722087950976595678421415830171026904502503286128250348600948102451581190852634","B":"666218296876564141498036296347961505946888913123591796778471200623257751775294302833377277888298235419046296366000441339771397934491804817062321998974839105410160875607990616522205181492101363654583365146862231991499210044651700417295563330404638453806736579646867316984814136286365770896428665276856718095381314420317200449692589454274048797816348442114665946752542187032513963061759325822909354916030322198705525391006189538371691165149625459240703703756402151394821874941128985448581957841925086158099517868728098218840980835139488127536024412427638201579392938511008327381017913795877309973346008356751518595307"},"response":"1164825397954562529530024000932721338419691513871426072078482708008737550524"}],[{"challenge":"58758925810281138911045367518895876119876231522707940966958605180043243408640","commitment":{"A":"7566187321285088208285353840609131726203201219062555312642459998106418056011594088291469162772151029638342569491688432966277099802030219271908144892039922242475235021972422744872878234824564843904462625256300866358713932887449906788188289575334981768552187727137742593481930309119281378081178024454550553577934989117713583788758378238519278485569496956838041479250092483857728649700858023804769118752854042322117555038156675124506396563199781873143221597895733717014325897101248721345140903935460479093101809134403857620206274455996509023793095647876915621422854427077735238066574216917491013311797487023068842006158","B":"6374956037952848784530883875040978298048847336560263167189972829670692056994944626077314807029651054868210168564822691356110253530688138548695146478477528886435993180112154131933326208356914435424399403552355954818819489173846477050978478230438144591507088435887779772940877380221209443547503234114382451200904912616352963335204717099463319794389361920984572826610524986616517412570987986971958311949408438479858837770376626931651827003179889226751116096074813138209468465542856038181723246595552430696863179530170126404819538912279573791059282822100483917312936913843099992690673615728374384156123346833642432217357"},"response":"15031551151577920979354895544502404417583227834317485653164906604895490219110"},{"challenge":"2570640438061762381498505251932335884576950913132360769819867968754088893089","commitment":{"A":"4326130808015274571458188788309708582913537806559858865367141392673929179824760005450332399482127321272490370143526291043919899196578171714387916742383043333632004091155365768901961191192974838605583014560921160377733146634603467837643370222855133102854693662879362363327010986158062548962616246531417943942784813537144681942842504039405735199047408285389040480955278826967811678254954007769696066538095802238303860106911596920437474729409052604365344451423680593650797432237233961833223856671523463165454681304699562483289711597196224335809946665162533823745714057348057583604090835839909243710001085671836499439520","B":"10140534094147727486296857191775702211260276050300762902407760682219358488656516922075854600206246984451960559375622271491961781629134517241920579187158953129610140574789881725089881130425500040041173972524639967352990857905019658569257781206284685263329757494304415801613591883596265107032935385726516195816732946428042272469905370245961667647161110893834611663979012246014842992581765827418375637768237142275153827931676695440025076840065967699707822497331468081415564576734142965261470225105461151823599467944629326496065635141640079450378128717386036731820263717428381029064299841196247268034446682295896433170657"},"response":"18358614804683451386454810545084792529792238978630830720420208364678741175593"}],[{"challenge":"33794422413235037442348763346792100293838050136588564968956125973149246082334","commitment":{"A":"1276544419871013617254753228286347748102142128013817667297774275902175551775373389892807531673589535560253539399899675550891257923116817691573572746813399501501257117226749443905173994431713457429880550187975941644379546172253640970298186406080402207858814897358316343154948352712433064059688635130428754899265974107684755348887964996441965356319927285196505061063373824414187164184623760956090718807564518009528021840026620338208343624517330292222919495846632983323523964074555365212122787374093887569133576659164401238261749965981203466564469895054287891146493968734990452367536212049835349696983533946554184721376","B":"10887926877379469156362261042259100953208327980525766287591429678916943091501214068610561877227648499734677427532828468754121277509044026367401600608243879917170204945729361132470133006671506381329790838075243817768504914825708752926577574305179587553903294126584820627172367622449409180500772199186762210106641364998394938841887590443232771512844983001715888945793693511830206022330015896689649720852501172180488077258189867191390577234658552357770279315536009404559278342540723094794250115395798260112851855601445779026020905716075098584478348974923624174355977465290980514256614829150097760424503216193461723222976"},"response":"37565719225431407525956996081493473842762729766242920667401741127409896721450"},{"challenge":"27535143835107863850195109423235066497785079010867943985084571525524033231460","commitment":{"A":"7742028463801341907294602613171921444544311449963993690524008279160223230764732949429395524466037179000230303470206575735929143884008272865206560839221184696028266015663505745488411671039852227382251044464146466938583747403979879423778483142598368657871504165959763982574032009634039760795614209372749608544448902551084611936050518330631816546850120956509640003207503944510752821934327149934488965323826725710876603968132652392299613041627737440044518147575683354550106951111667870761127449913942156534299823763198334095260817569780932450637711011693703324320034073178747628703677380846930320170402564032918792627015","B":"11595396367069218592328380099107607857312683581388109667672515112187614379102317234847045579666959198661703054239398823901417513976209125561968178825134064784206247854186178546496870623629965808231073573788239758778055999507325135672478186829703752516387468756916095420069035727217110264099413838621565616845729505715117822090942458890894777201756545098344470208807338808761536829779314982424224866271083797005041314628647957056922331201391395786149215438975560012546746708796045758721711212708215683318946748732892198127884142722441088616009829768121794298527831799855664591490774796287972498864103040621322417676415"},"response":"6468463131726622700357334212350186574985283767185418386348033605635918964761"}]],"overall_proof":[{"challenge":"12306603799743944907761638326603377007569168240949618300104688261336581067353","commitment":{"A":"8252511827735576693161424561370253851555865274463181778636410574011817499398058605959141999777654174241494080296397473685905433407977761504444408970014821496601707742714534465170599113833747560721439152758038178519172943350728872527848098362222361456495710904642873666400255079450013597973060779918774779852154700123985703559312301244721800571821876267263493404223433843348086008518771330298874655787728375901678594401150216149931706309178931148448659538152533185660880015987972918404893196249269656235457212893789154477372091319918718486837345635238727852191192578597344538374782976836504202917144487101674325611665","B":"5866246790146028300218310252080009986890031086377523159122884072056015955651146871938433153301060444122303037501367307632313360548486707125105838978882525310562068162279095146079698010407852527514371867724480728231244453491792160805144306746737493078330918864221669819450479789621176688098801292854931445607548839096576693300348047251297872625391768313264097414298656910686739578846556377153759390336262161712126619694864997310426361301682483747679902365687420297299615751297634056386263241282372437667063124129587877871905948744900523954819061281130821797893236217620753656110909920596191464974009049498878116070093"},"response":"35861692746567601812425778327855650885154331676831534891981977249310733069111"},{"challenge":"49022962448598956384782234443740078092645886942134737406206116825138333094787","commitment":{"A":"3274934343222824773821319619602679084317789015197958485055582676077089638026873170045344977761697046104680033976141341969626440849808006346858110853390397640536710693316232870351908238165753146571145448642975756243474671311056653409696896063270619451709681359289718403258719610577363515009049300402229255810986688217538859591595302062743336948580403492990589583764002465094982042015858469329105219699267251412328455828625524882376596247837470492141900544577032225744876970989049261526842897527467071371018050726051913645991204149127664542975933934654954613767266661363199401584007108756896137648080557652938321977459","B":"13466201149688688833854617031878917913050326159930637645916767402935936972596190765057839037121317769587860608001265529583236518840352314219562297016329077893949828754718091914869217147913320715471584648591175943521300277570242663047406707844695559971409326273708290485590852300574501927989400204837614306243487719410466844018734245768907870280377981978922484153271460465459114485376815204542356977626123146492512379580556688215314264302247546952231298874857389072242101359439963202475882763567777840372549658969838476442890321260745858633771218420021180633395572484147171742973795403098247752762394770926874415077395"},"response":"5291667513773054835595382465166946571056368891585753452170739744352722621293"}]}],"election_hash":"0uq09D6ho9s PMm hh43GJ2lo9tR7K2GR9Frdb0ezSE","election_uuid":"94c1a03e-1c48-11e2-8866-3cd92b7981b8"}
\ No newline at end of file
......@@ -10,6 +10,8 @@ module type TYPES = sig
val vote : vote t
val encrypted_tally : encrypted_tally t
val partial_decryption : partial_decryption t
val election_public_data : election_public_data t
val election_private_data : election_private_data t
end
module Types : TYPES = struct
......@@ -23,6 +25,8 @@ module Types : TYPES = struct
let vote = (read_vote, write_vote)
let encrypted_tally = (read_encrypted_tally, write_encrypted_tally)
let partial_decryption = (read_partial_decryption, write_partial_decryption)
let election_public_data = (read_election_public_data, write_election_public_data)
let election_private_data = (read_election_private_data, write_election_private_data)
end
let load typ fname =
......@@ -40,7 +44,8 @@ let save typ fname x =
Bi_outbuf.flush_channel_writer buf;
close_out o
let load_and_check typ fname =
let load_and_check ?(verbose=false) typ fname =
if verbose then Printf.eprintf "Loading and checking %s...\n%!" fname;
let thing = load typ fname in
let tempfname = Filename.temp_file "belenios" ".json" in
save typ tempfname thing;
......@@ -49,14 +54,26 @@ let load_and_check typ fname =
Sys.remove tempfname;
thing
let data x = Filename.concat "tests/data/favorite-editor" x
let one_election = load_and_check Types.election (data "election.json")
let one_trustee_private_key = load_and_check Types.private_key (data "trustee-private-key.json")
let one_trustee_public_key = load_and_check Types.trustee_public_key (data "trustee-public-key.json")
let vote_1 = load_and_check Types.vote (data "vote-emacs-1.json")
let vote_2 = load_and_check Types.vote (data "vote-emacs-2.json")
let encrypted_tally = load_and_check Types.encrypted_tally (data "encrypted-tally.json")
let one_partial_decryption = load_and_check Types.partial_decryption (data "partial-decryption.json")
type election_test_data = {
raw_json : string;
election : election;
public_data : election_public_data;
private_data : election_private_data;
}
let first_line filename =
let i = open_in filename in
let r = input_line i in
close_in i;
r
let load_election_test_data ?(verbose=false) dirname =
let data x = Filename.concat dirname x in
let raw_json = first_line (data "election.json") in
let election = load_and_check ~verbose Types.election (data "election.json") in
let public_data = load_and_check ~verbose Types.election_public_data (data "public_data.json") in
let private_data = load_and_check ~verbose Types.election_private_data (data "private_data.json") in
{ raw_json; election; public_data; private_data }
let ( |> ) x f = f x
let ( =~ ) = Z.equal
......@@ -72,8 +89,6 @@ let verify_public_key {g; p; q; y} =
check_subgroup p q g &&
check_subgroup p q y
let () = assert (verify_public_key one_trustee_public_key.trustee_public_key)
let hashZ x = Cryptokit.(x |>
hash_string (Hash.sha1 ()) |>
transform_string (Hexa.encode ()) |>
......@@ -171,6 +186,19 @@ let compute_encrypted_tally e vs =
) e.e_questions in
{ num_tallied; tally }
let () = assert (verify_vote one_election vote_1)
let () = assert (verify_vote one_election vote_2)
let () = assert (compute_encrypted_tally one_election [| vote_1; vote_2 |] = encrypted_tally)
let verbose_assert msg it =
Printf.eprintf "Verifying %s...%!" msg;
let r = Lazy.force it in
Printf.eprintf " %s\n%!" (if r then "OK" else "failed!")
let load_election_and_verify_it_all dirname =
let e = load_election_test_data ~verbose:true dirname in
verbose_assert "election public key"
(lazy (verify_public_key e.election.e_public_key));
Array.iter (fun x -> verbose_assert "vote"
(lazy (verify_vote e.election x))) e.public_data.votes;
verbose_assert "encrypted tally"
(lazy (e.public_data.encrypted_tally =
compute_encrypted_tally e.election e.public_data.votes));;
let () = load_election_and_verify_it_all "tests/data/favorite-editor"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment