diff --git a/README.md b/README.md index f78911c..6af690f 100644 --- a/README.md +++ b/README.md @@ -39,10 +39,13 @@ A new `CheckNumber` request is sent to the message queue. This message is waitin Next, the phat contract sends the winners (or an empty list if there is no winner) and the smart contract save them on the blockchain. A new lottery can start. Each lottery is identified by an identifier: `raffle_id`. +More information to build the ink! smart contract and run integration tests [here](./ink/README.md). ## Phat contract The phat contract is an offchain rollup in charge to proceed the messages sent by the ink! smart contract: - when a `DrawNumbers` request is sent by the smart contract, the phat contract uses the `pink_extension::vrf` to randomly provide the winning numbers. - when a `CheckWinners` request is sent by the smart contract, the phat contract reads the SubQuery indexer to check the winners and send them to ink! smart contract. -You can find more information about the communication between ink! smart contract and phat contract [here](https://github.com/Phala-Network/phat-offchain-rollup/). \ No newline at end of file +You can find more information about the communication between ink! smart contract and phat contract [here](https://github.com/Phala-Network/phat-offchain-rollup/). + +More information to build the phat contract and run unit tests [here](./phat/contracts/lotto_draw/README.md). diff --git a/ink/Cargo.lock b/ink/Cargo.lock index 1b56b8f..b3a666c 100644 --- a/ink/Cargo.lock +++ b/ink/Cargo.lock @@ -1308,7 +1308,7 @@ checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] name = "e2e_tests" -version = "0.1.0" +version = "0.1.1" dependencies = [ "hex-literal", "ink", @@ -2714,7 +2714,7 @@ dependencies = [ [[package]] name = "lotto_contract" -version = "0.1.0" +version = "0.1.1" dependencies = [ "ink", "lotto", diff --git a/ink/artifacts/lotto_contract.contract b/ink/artifacts/lotto_contract.contract index 3b344dc..42d11af 100644 --- a/ink/artifacts/lotto_contract.contract +++ b/ink/artifacts/lotto_contract.contract @@ -1 +1 @@ -{"source":{"hash":"0x402e7e405a9f83996882537282f128d2eccdb0a6cfadd50c85b417439914b4aa","language":"ink! 4.3.0","compiler":"rustc 1.76.0","wasm":"0x0061736d01000000014e0d60027f7f0060037f7f7f0060027f7f017f60017f0060037f7f7f017f60047f7f7f7f017f60017f017f60047f7f7f7f0060000060037e7e7f0060037f7e7e017f6000017f60067f7f7f7f7f7f0002cf0211057365616c310b6765745f73746f726167650005057365616c301176616c75655f7472616e736665727265640000057365616c3005696e7075740000057365616c300663616c6c65720000057365616c3007616464726573730000057365616c300762616c616e63650000057365616c300d65636473615f7265636f7665720004057365616c300d7365745f636f64655f686173680006057365616c300f686173685f626c616b65325f3235360001057365616c30087472616e736665720005057365616c300d6465706f7369745f6576656e740007057365616c320b7365745f73746f726167650005057365616c310d636c6561725f73746f726167650002057365616c3110636f6e7461696e735f73746f726167650002057365616c31097465726d696e6174650003057365616c300b7365616c5f72657475726e000103656e76066d656d6f72790201021003646304040000040003000003000000000000010100000001000000000100000906000300000100000100010301050004010101010202000000000003030a0b020202020602000007020107000002020101010300080000030003000001020100080800010c0608017f01418080040b0711020463616c6c006e066465706c6f79006f0aa6fb01632b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba70201037f230041206b22022400200241106a2001101341012103024020022d00104101710d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210140d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410140d01200228021c220341027621012003418080044921030c010b200241086a2001101520022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b8e0101017f20002d00042103200041003a0004027f0240200304402001200041056a2d00003a00004101200028020022002802042203200241016b2202490d021a200141016a20002802002201200210101a0c010b41012000280200220028020422032002490d011a200120002802002201200210101a0b2000200320026b3602042000200120026a36020041000b0b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b880201057f230041306b22012400200142808001370208200141e485043602044193f2c4fb06200141046a1017024020012802082204200128020c2202490d00200128020421032001200420026b220436020420032002200220036a2202200141046a10002103200420012802042205490d00024002400240024020030e0400040401040b2001200536022c20012002360228200141046a200141286a101820012d000422024102470d010b410021020c010b200020012900063700022000410a6a2001410e6a290000370000200041126a200141166a290000370000200041196a2001411d6a290000370000200020012d00053a00010b200020023a0000200141306a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041025200241106a24000bae0101037f230041106b22022400200241086a2001101341022103024020022d00084101710d000240024020022d00090e020001020b410021030c010b200128020422044120490d002001200441206b36020420012001280200220141206a36020020002001290000370001200041096a200141086a290000370000200041116a200141106a290000370000200041196a200141186a290000370000410121030b200020033a0000200241106a24000b910101047f230041106b22012400200142808001370208200141e485043602044193f2c4fb06200141046a1017024020012802082204200128020c2202490d00200128020421032001410036020c2001200420026b3602082001200220036a3602042000200141046a101a200128020c220020012802084b0d002003200220012802042000100b1a200141106a24000f0b000b210020002d00004504402001410010450f0b200141011045200041016a200110220bdd0101047f230041206b22022400200242808001370218200241e4850436021441bcf2cbe901200241146a22031017200120031017024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2201200241146a10002103200420022802142205490d002000027e0240024020030e0400030301030b200220053602102002200136020c200241146a2002410c6a101c20022802142201418080808078460d0220022902180c010b418080808078210142000b37020420002001360200200241206a24000f0b000bc20101077f230041106b22022400200241086a20011012024020022802084504400240200228020c22044100480d002004410174220320012802044b0d002002200441011057200128020422062003490d00200228020021052002280204200128020022072003101021082001200620036b3602042001200320076a3602002005418080808078460d002000200436020820002008360204200020053602000c020b20004180808080783602000c010b20004180808080783602000b200241106a24000bdd0101047f230041206b22022400200242808001370218200241e4850436021441a3cab6ec03200241146a22031017200120031017024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2201200241146a10002103200420022802142205490d002000027e0240024020030e0400030301030b200220053602102002200136020c200241146a2002410c6a101e20022802142201418080808078460d0220022902180c010b418080808078210142000b37020420002001360200200241206a24000f0b000b8504010b7f230041406a22032400200341086a2001101202402003280208450440200341146a20012802044105762202200328020c220520022005491b10540240200504400340200128020422024120490d022001200241206b36020420012001280200220241206a360200200341286a2209200241086a290000370300200341306a220a200241106a290000370300200341386a220b200241186a29000037030020032002290000370320200328021c22042003280214460440200341146a2106230041206b220224000240200441016a220404404104200628020022074101742208200420042008491b2204200441044d1b220441808080204921082004410574210c02402007450440200241003602180c010b200241013602182002200741057436021c200220062802043602140b200241086a2008200c200241146a10582002280208450d01200228020c1a0b000b200228020c21072006200436020020062007360204200241206a2400200328021c21040b200328021820044105746a22022003290320370000200241086a2009290300370000200241106a200a290300370000200241186a200b2903003700002003200441016a36021c200541016b22050d000b0b20002003290214370200200041086a2003411c6a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200341406b24000bb90101057f230041306b2202240002402000280204220320002802082204490d00200028020021052002410036020c2002200320046b22033602082002200420056a220536020420012802002001280204200241046a22061020200128020828020020061017200228020c220120022802084b0d00200241046a22062002280204200110212002410036022c20022003360228200220053602242006200241246a10222000200228022c20046a360208200241306a24000f0b000b100020012002102420022000200110250bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1008200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b20032001200210101a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010250b5f01047f230041106b220224002000280204220420002802082203490440000b200028020021052002410036020c2002200420036b3602082002200320056a3602042001200241046a10242000200228020c20036a360208200241106a24000b50002000413f4d04402001200041027410450f0b200041ffff004d044020004102744101722001102c0f0b200041ffffffff034d04402000410274410272200110170f0b2001410310452000200110170b3a01027f02402000280208220320026a220420034f0440200420002802044d0d010b000b200028020020036a2001200210101a200020043602080bd00102047f037e230041106b22022400200242808001370208200241e4850436020441c8ff9bb278200241046a22031017200120031022024020022802082204200228020c2201490d00200228020421032002200420016b220436020420032001200120036a2201200241046a10002103200420022802042205490d00027e0240024020030e0400030301030b20054110490d022001290000210642012107200141086a2900000c010b42000b21082000200637030820002007370300200041106a2008370300200241106a24000f0b000b6901027f230041306b2202240020022001101502402002280200450440200228020421032002410f6a2001101820022d000f4102470440200041046a2002410f6a412110101a200020033602000c020b200041023a00040c010b200041023a00040b200241306a24000be808020d7f017e230041a0016b220224002002413c6a20011029024002400240200228023c418080808078470440200241c8006a200110292002280248418080808078460d02200241186a20011012024020022802180d000240200128020441246e2203200228021c220620032006491b2203450440410421040c010b200341e3f1b81c4b0d03200341246c22044100480d03200241106a41042004102a20022802102204450d030b2002410036025c2002200436025820022003360254200604400340200241086a2001101320022d00084101710d020240024002400240024020022d0009220a0e0400010203070b20024194016a2001102b2002280294012207418080808078460d06200229029801210f0c030b20022001101520022802000d05200228020421070c020b200128020422034120490d042001200341206b36020420012001280200220341206a360200200241f6006a200341026a2d00003a0000200241e8006a200341176a290000370300200241f0006a2003411f6a2d00003a0000200220032f00003b01742002200329000f3703602003290007210f200328000321070c010b200128020422034120490d032001200341206b36020420012001280200220341206a360200200241f6006a200341026a2d00003a0000200241e8006a200341176a290000370300200241f0006a2003411f6a2d00003a0000200220032f00003b01742002200329000f3703602003290007210f200328000321070b20024192016a220b200241f6006a2d00003a000020024180016a220c200241e8006a29030037030020024188016a220d200241f0006a280200360200200220022f01743b0190012002200229036037037820022802542005460440200241d4006a2104230041206b220324000240200541016a220504404104200428020022084101742209200520052009491b2205200541044d1b220541246c2109200541e4f1b81c49410274210e02402008450440200341003602180c010b200341043602182003200841246c36021c200320042802043602140b200341086a200e2009200341146a10582003280208450d01200328020c1a0b000b200328020c21082004200536020020042008360204200341206a2400200228025c2105200228025821040b2004200541246c6a2203200a3a00002003200f37020820032007360204200341036a200b2d00003a0000200320022f0190013b000120032002290378370210200341186a200c290300370200200341206a200d2802003602002002200228025c41016a220536025c200641016b22060d000b20022802542203418080808078460d010b2002290258210f200241286a2201200241c4006a280200360200200241346a200241d0006a2802003602002000200229023c3702002000200f37021c200020033602182002200229024837022c200041086a2001290300370200200041106a200241306a2903003702000c040b20004180808080783602000c030b20004180808080783602000c020b000b20004180808080783602000b200241a0016a24000bc704020a7f027e230041406a22022400200241106a2001101202400240024020022802104504400240200128020441186e22032002280214220620032006491b2205450440410421030c010b200541d5aad52a4b0d02200541186c22034100480d02200241086a41042003102a20022802082203450d020b20024100360224200220033602202002200536021c200604400340200241286a2001102b2002280228220a418080808078460d04200229022c210c20022001101320022d00004101710d0441808080807821090240024020022d00010e020100060b200241346a2001102b20022802342209418080808078460d052002290238210d0b200228021c200446047f2002411c6a2105230041206b220324000240200441016a220404404104200528020022074101742208200420042008491b2204200441044d1b220441186c2108200441d6aad52a49410274210b02402007450440200341003602180c010b200341043602182003200741186c36021c200320052802043602140b200341086a200b2008200341146a10582003280208450d01200328020c1a0b000b200328020c21072005200436020020052007360204200341206a24002002280220210320022802240520040b41186c20036a2204200d3702102004200936020c2004200c3702042004200a3602002002200228022441016a2204360224200641016b22060d000b0b2000200229021c370200200041086a200241246a2802003602000c030b20004180808080783602000c020b000b20004180808080783602000b200241406b24000b3901017f230041106b22032400200341086a2001200241001055200328020c21012000200328020836020020002001360204200341106a24000bb60101067f230041106b22022400200241086a20011012024020022802084504400240200228020c220320012802044b0d002002200341011033200128020422052003490d00200228020021042002280204200128020022062003101021072001200520036b3602042001200320066a3602002004418080808078460d002000200336020820002007360204200020043602000c020b20004180808080783602000c010b20004180808080783602000b200241106a24000b2601017f230041106b22022400200220003b010e20012002410e6a41021025200241106a24000b2a01017f230041106b2203240020032001370308200320003703002002200341101025200341106a24000baa0101047f230041106b22012400200142808001370208200141e4850436020441ace9b3f901200141046a22021017200020021017024020012802082203200128020c2200490d00200128020421022001200320006b220336020420022000200020026a2200200141046a10002102200320012802042204490d00027f0240024020020e0400030301030b20044104490d0220002800000c010b41000b2100200141106a240020000f0b000b950401067f230041f0006b22022400200241386a1030024002400240024020022d00384504402002412c6a200228023c220510312002410236023c200241a1800436023820022002290230370240200241146a200241386a22071032200241086a410a417f20012802082203410174220641096a22042004200641056a491b20012802002204418080808078461b410010332002410036024020022002290308370238200128020c200710342004418080808078460440200241386a220441001035200220033a002c20042002412c6a4101103620012f01042004103720012f0106200410370c040b200241386a41011035200128020421012003413f4d0440200241386a200341027410350c030b200341ffff004d04402003410274410172200241386a10370c030b200341ffffffff034b0d012003410274410272200241386a10340c020b20022d00392101200041013a0000200020013a00010c030b200241386a2204410310352003200410340b200241386a2001200610360b200241286a2201200241406b280200360200200220022902383703202002280218200228021c200241206a10382002412c6a41c080041032200241386a2203200541016a10312002280230200228023420031038200241c4006a2001280200360200200241c8006a20053602002002200229032037023c2002410736023820031039200041003a0000200020053602040b200241f0006a24000b7101027f230041206b22012400200141086a41c080041032200141146a200128020c2001280210103a024002402001280214418080808078470440200128021c4104490d01200128021828000021020b200041003a0000200020023602040c010b200041810a3b01000b200141206a24000b5501027f230041206b22022400200241086a4104410010332002411c6a22034100360200200220022903083702142001200241146a1034200041086a200328020036020020002002290214370200200241206a24000b7e01037f230041206b22022400200241086a2001410c6a28020020012802046a410010332002410036021c200220022903083702140340200241146a200120036a2204280200200441046a2802001036200341086a22034110470d000b20002002290214370200200041086a2002411c6a280200360200200241206a24000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001102a20032802080c010b2003200420014101105520032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041036200241106a24000b2601017f230041106b22022400200220013a000f20002002410f6a41011036200241106a24000be00101067f230041206b220324000240200220002802002204200028020822066b4d0440200220066a2107200028020421040c010b2006200220066a22074d04404108200441017422052007200520074b1b2205200541084d1b2205417f73411f76210802402004450440200341003602180c010b2003200436021c20034101360218200320002802043602140b200341086a20082005200341146a10582003280208450440200328020c210420002005360200200020043602040c020b200328020c1a0b000b200420066a2001200210101a20002007360208200341206a24000b2601017f230041106b22022400200220003b010e20012002410e6a41021036200241106a24000bf60101027f230041106b22032400024002402002450440200342808001370208200341e4850436020441d8b5f4e97d200341046a220210172000200120021020200328020c220020032802084b0d0220032802042000100c1a0c010b200342808001370208200341e4850436020441d8b5f4e97d200341046a22041017200020012004102020032802082204200328020c2200490d01200328020421012003410036020c2003200420006b3602082003200020016a360204200241046a280200200241086a280200200341046a1020200328020c220220032802084b0d012001200020032802042002100b1a0b200341106a24000f0b000bc91301087f23004190016b220224002002200041381010220042808001370240200041e4850436023c0240027f0240024002400240024002400240024002400240200028020041016b0e080102030405060708000b2000413c6a410310232000280240220120002802442202490d0a200028023c2104200041003602682000200120026b22053602642000200220046a2207360260418080044100200041e0006a102020002802682203415e4b0d0a200341216a220820002802644b0d0a2003200028026022036a41d08004412110101a200041e0006a22062003200810212000410036028c0120002005360288012000200736028401200620004184016a22051022200041dc006a2203200028028c0120026a36020020002001360258200020043602542000200041106a36028c012000412c36028801200041f1800436028401200041d4006a22012005101f200041d0006a2003280200360200200020002902543703482000200041146a3602682000412e3602642000419d81043602602001200041c8006a2006105d0c080b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e48104105e2000200041047236026820004122360264200041f0810436026020012002101f2000280288012201200028028c012202490d09200120026b21012000280284010c080b2000413c6a410210232000280240220120002802442202490d08200028023c2104200041003602682000200120026b22053602642000200220046a2207360260418080044100200041e0006a102020002802682203416a4b0d08200341156a220820002802644b0d082000280260220620036a2203419282042900003700002003410d6a419f8204290000370000200341086a419a8204290000370000200041e0006a22032006200810212000410036028c0120002005360288012000200736028401200320004184016a102220002001360258200020043602542000200028028c0120026a36025c2000200041047236026820004120360264200041a78204360260200041d4006a2003101f20002802582201200028025c2202490d08200120026b210120002802540c070b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e08204105f2000200041106a36026820004123360264200041ec820436026020012002101f2000280288012201200028028c012202490d07200120026b21012000280284010c060b2000413c6a410210232000280240220420002802442202490d06200028023c2103200041003602682000200420026b22053602642000200220036a2207360260418080044100200041e0006a10202000280268220141664b0d06200141196a220820002802644b0d062000280260220620016a2201418f8304290000370000200141186a41a783042d00003a0000200141106a419f8304290000370000200141086a41978304290000370000200041e0006a22012006200810212000410036028c0120002005360288012000200736028401200120004184016a102220002004360258200020033602542000200028028c0120026a36025c2000200041106a36026820004124360264200041a88304360260200041d4006a2001101f20002802582201200028025c2202490d06200120026b210120002802540c050b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e48304105e2000200041086a36026820004120360264200041f08304360260200041d4006a20012002105d0c030b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241a88404105f2000200041086a36026820004121360264200041b48404360260200041d4006a20012002105d0c020b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241ec8404105e2000200041106a3602682000411b360264200041f8840436026020012002101f2000280288012201200028028c012202490d03200120026b21012000280284010c020b2000413c6a410210232000280240220420002802442202490d02200028023c2103200041003602682000200420026b22053602642000200220036a2207360260418080044100200041e0006a10202000280268220141634b0d022001411c6a220820002802644b0d022000280260220620016a220141938504290000370000200141186a41ab8504280000360000200141106a41a38504290000370000200141086a419b8504290000370000200041e0006a22012006200810212000410036028c0120002005360288012000200736028401200120004184016a102220002004360258200020033602542000200028028c0120026a36025c2000200041047236026820004120360264200041af8504360260200041d4006a2001101f20002802582201200028025c2202490d02200120026b210120002802540c010b20002802582201200028025c2202490d01200120026b210120002802540b2103200020013602642000200220036a22043602600240024002400240024002400240024002400240200028020041016b0e080102030405060708000b2001450d09200441003a000020004101360268200041106a280200200041e0006a22011017200041146a20011022200041086a2802002000410c6a2802002001103f0c080b2001450d08200441013a0000200041013602682000280204200041e0006a10170c070b2001450d07200441023a0000200041013602682000280204200041e0006a10170c060b2001450d06200441033a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a2802002001103f0c050b2001450d05200441043a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a280200200110410c040b2001450d04200441053a000020004101360268200041086a200041e0006a22011022200041286a290300200041306a2903002001102d0c030b2001450d03200441063a000020004101360268200041086a200041e0006a22011022200041286a290300200041306a2903002001102d0c020b2001450d02200441073a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a280200200110200c010b2001450d01200441083a0000200041013602682000280204200041e0006a10170b2000280268220120002802644b0d002003200220002802602001100a20004190016a24000f0b000bdf0101037f230041206b22032400200342808001370218200341e4850436021441d8b5f4e97d200341146a220410172001200220041020024020032802182204200328021c2201490d00200328021421022003200420016b220436021420022001200120026a2201200341146a10002102200420032802142205490d002000027e0240024020020e0400030301030b200320053602102003200136020c200341146a2003410c6a102b20032802142202418080808078460d0220032902180c010b418080808078210242000b37020420002002360200200341206a24000f0b000b8a1a02157f0b7e230041a0016b220424000240024020012802082206450d0020012802042201200641186c6a210803402001280200418080808078460d012001280214210620012802102109200128020c2105200441e0006a20012802042001280208103a0240024020042802604180808080784704402005418080808078460d0220042802682006470d022004280264200920061011450d010c020b2005418080808078470d010b200141186a22012008470d010c020b0b410421080c010b024020022802082206450d0020022802042201200641186c6a2106200441ec006a2105200441e4006a220241106a2108200241086a2109034020012802002207418080808078460d012008200141146a28020036020020092001410c6a29020037020020022001290204370200200420073602602004280264200428026820054100200428026c418080808078471b1038200141186a22012006470d000b0b024002400240024020032802082201450d0020032802042203200141246c6a2112200441f0006a2109200441e0006a4104722113200441e8006a210e200441e1006a210f200041186a211420044190016a2115200441eb006a21160340200322012d000022054104460d01200141106a2106200141246a21032001290008211920012800042102200141016a210102400240024002400240200541016b0e03010203000b200420193702302019422088a722014104490d082004200141046b22023602342002450d082019a7220228000021062004200141056b3602342004200241056a360230027f0240024020022d00040e0200010b0b200441286a200441306a103c20042d00284101710d0a200428023422014102490d0a20042d0029210220042004280230220841026a3602302004200141026b220536023420054102490d0a20082f000021072004200141046b22013602342004200841046a360230418080808078210520082f00020c010b200441e0006a200441306a101c20042802602205418080808078460d0920042f006920162d000041107472211720042d0068210220042f016421072004280234210120042f01660b210a2001450d082004200141016b36023420042004280230220141016a36023002400240024020012d00000e0200010b0b200441e0006a200441306a101c2004280260220c418080808078460d0a410621082005418080808078470d0b20002f0100450d0b20002d0006200241ff0171470d0b20002f01022007470d0b20002f0104200a470d0b20002004280264220120042802682202103d41ff01714112470d0b200441d4006a20012002103e20002802082006470d0b20002d000c4102470d0b200441306a2006101b2004280230418080808078470d0b200442808001370264200441e4850436026041bcf2cbe901200441e0006a220510172006200510172004280264220b20042802682205490d0820042802602107200441003602682004200b20056b3602642004200520076a3602602004280258200428025c200441e0006a103f2004280268220b20042802644b0d08200720052004280260200b100b1a200041033a000c200441306a220520012002103e201341086a200441386a280200360200201320042903303702002004200636027020044103360260200441e0006a220710392004200636026c20042002360268200420013602642004200c36026020052007102f20042d0030450d010c0b0b200441e0006a200441306a101e20042802602218418080808078460d09410621082005418080808078460d0a2004280268210c2004280264210b200441e0006a2006101b2004280260418080808078460d0a20042802682017410874220d200241ff0171220272470d0a200a4110742007722101200428026421052002200d6a41016a21020340200241016b2202044020052f0100210720012f0100210a200541026a2105200141026a21012007200a460d010c0c0b0b200441d4006a200b200c104020002802082006470d0a20002d000c4103470d0a200441306a2006101d2004280230418080808078470d0a200442808001370264200441e4850436026041a3cab6ec03200441e0006a220110172006200110172004280264220520042802682201490d0720042802602102200441003602682004200520016b3602642004200120026a3602602004280258200428025c200441e0006a10412004280268220520042802644b0d072002200120042802602005100b1a200041043a000c200c0440200441d4006a200b200c10402014290300211e20002903102120200442003703682004420037036020044110360230200441e0006a200441306a10052004290360221920205422052004290368221a201e54201a201e511b0d0b200428025c220a450d0b200441186a210d201920207d211b200aad211c420021194200211f4200211d42002122230041206b22012400230041206b22022400024002400240201a201e7d2005ad7d221a50450440201a201c5a0440201a201c510d02201a201c802122201a201c82422086201b422088842219201c80221a422086201b42ffffffff0f832019201c82422086842219201c8084211f201a42208820228421222019201c82211b420021190c040b230041106b220524000240413f201c221979a72207201a79a722106b41406b20072010461b220741c000714504402007450d0142002007413f71ad2221862019410020076b413f71ad8884211d201920218621190c010b20192007413f71ad86211d420021190b200520193703002005201d370308200529030021192002200541086a29030037030820022019370300200541106a240042012007413f71ad862119200241086a29030021212002290300212303400240201a20217d201b202354ad7d221d4200590440201b20237d211b2019201f84211f201d500d01201d211a0b2021423f86202342018884212320194201882119202142018821210c010b0b201b201c80201f84211f420021190c020b201b201c80211f0c010b201b201a80211f42012122201b201a82211b0c010b201b201c82211b0b2001201b3703102001201f370300200141186a420037030020012022370308200241206a240020012903002119200d200141086a290300370308200d2019370300200141206a2400200a4105742105200441206a2903002119200428025821012004290318211c0340200441c8006a220a200141186a290000370300200441406b220d200141106a290000370300200441386a2210200141086a290000370300200420012900003703302004200441306a1026201c211d2019211a2004290300a741014604402004290308221a201c7c221d201a5422022002ad200441106a290300221b20197c7c221a201b54201a201b511b0d0d0b200442808001370264200441e4850436026041c8ff9bb278200441e0006a22021017200441306a200210222004280264221120042802682202490d0920042802602107200441003602682004201120026b3602642004200220076a360260201d201a200441e0006a102d2004280268221120042802644b0d092007200220042802602011100b1a200e41186a200a290300370000200e41106a200d290300370000200e41086a2010290300370000200e20042903303700002004201c370388012015201937030020044105360260200441e0006a10392020201c20207c22205622022002ad2019201e7c7c221a201e54201a201e511b0d0c200141206a2101201a211e200541206b22050d000b200020203703102014201e3703000b200420063602702004200c36026c2004200b3602682004201836026420044104360260200441e0006a10390b20032012470d040c050b200441e0006a103020042d00600d064103210820042802642002490d08200441306a41a880041032200441e0006a20042802342004280238103a02402004280260418080808078460440410021010c010b20042802684104490d082004280264280000220120024b0d090b20012002460d020340200441306a2001103120044102360264200441a1800436026020042004290234370268200441d4006a200441e0006a10322004280258200428025c410010382002200141016a2201470d000b200441306a41a880041032200441e0006a22012002103120042802342004280238200110382004410836026020042002360264200110390c020b200f20012f00003b0000200f41026a200141026a2d00003a000020092006290000370000200941086a200641086a290000370000200941106a200641106a2d00003a0000200441013a006020042019370068200420023600644185b99ed07a200441e0006a1042220841ff01714103460d010c070b200f20012f00003b0000200f41026a200141026a2d00003a000020092006290000370000200941086a200641086a290000370000200941106a200641106a2d00003a0000200441013a006020042019370068200420023600644185b99ed07a200441e0006a1043220841ff01714103470d060b20032012470d000b0b410721080c030b000b20042d006121080c010b410521080b200441a0016a240020080b3801017f230041106b22022400200241086a2001101320022d00092101200020022d00084101713a0000200020013a0001200241106a24000b6f01037f20002f010045044041060f0b410821030240200041066a2d00002002470d0020024101742102200041046a2f0100210420002f010221000340200245044041120f0b4109210320012f0100220520044b0d01200241026b2102200141026a2101200020054d0d000b0b20030b4b01027f230041106b22032400200341086a20024100105720032802082104200328020c2001200241017410102101200020023602082000200136020420002004360200200341106a24000b130020012002102420022000200141017410250b4001017f230041106b22032400200341046a2002105420032802082001200241057410101a200041086a200236020020002003290204370200200341106a24000b2d0020012002102420010440200141057421010340200020021022200041206a2100200141206b22010d000b0b0b5e01027f230041306b220224002000102e2103200241106a104a200241013a000f024020032002410f6a106b220341ff01714103470d00410221032000200110520d002000200110702002410f6a104a410321030b200241306a240020030b5c01027f230041306b220324002000102e2102200341106a104a200341013a000f024020022003410f6a106b220241ff01714103470d0020002001106b220241ff01714103470d0020002001106d410321020b200341306a240020020b5201027f024002400240024002404104200041036b41ff01712203200341044f1b41016b0e0400010203040b410121020c030b410221020c020b410321020c010b200141041045200021020b2001200210450b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000bc20102047f027e230041106b22022400200242808001370208200241e48504360204419ade91f679200241046a22031017200120031022024020022802082204200228020c2201490d00200228020421032002200420016b220436020420032001200120036a2201200241046a10002103200420022802042205490d00027e0240024020030e0400030301030b20054110490d0220012900002106200141086a2900000c010b42000b21072000200637030020002007370308200241106a24000f0b000b3900200020011022200041206a200110222000290340200041c8006a2903002001102d200041d4006a280200200041d8006a280200200110200b6301017f0240024002400240024002404105200041076b41ff01712202200241054f1b41016b0e050102030405000b2001410010450f0b2001410110450f0b2001410210450f0b2001410310450f0b2001410410450f0b2001410510452000200110440b6d01017f230041106b2201240020014180800136020c41e485042001410c6a1004200041e58504290000370001200041096a41ed8504290000370000200041116a41f58504290000370000200041186a41fc8504290000370000200041e485042d00003a0000200141106a24000b6d01017f230041106b2201240020014180800136020c41e485042001410c6a1003200041e58504290000370001200041096a41ed8504290000370000200041116a41f58504290000370000200041186a41fc8504290000370000200041e485042d00003a0000200141106a24000bde0101037f230041306b22032400200341186a200041186a290000370300200341106a200041106a290000370300200341086a200041086a29000037030020032000290000370300200342808001370228200341e485043602242003200341246a1022024020032802282204200328022c2200490d00200328022421052003410036022c2003200420006b3602282003200020056a36022420012002200341246a102d200328022c220420032802284b0d00410c2005200020032802242004100922002000410c4f1b41cf85046a2d00002100200341306a240020000f0b000b4d02017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a10012000290308210120002903002102200041206a2400410541042001200284501b0b0b0020002001104e4101730b0b002000200141201011450b0b002000200110504101730b2f01037f20012d0000220220002d000022037245210420034520024572047f200405200041016a200141016a104e0b0b5c01027f230041106b22012400200142808001370208200141e4850436020441c8ff9bb278200141046a22021017200020021022200128020c220020012802084b0440000b20012802042000105c2100200141106a240020004100470b6201027f230041106b22022400200242808001370208200241e4850436020441d8eac38a78200241046a2203101720002003101720012003101a200228020c220020022802084b0440000b20022802042000105c2100200241106a240020004100470b4601017f20012802042202410249047f4101052001200241026b36020420012001280200220141026a36020020012f0000210241000b2101200020023b0102200020013b01000b6c01027f230041106b2203240002402001450440410121020c010b0240200141ffffff1f4b0d00200141057422024100480d00200341086a20014180808020492002102a200328020822020d010b000b200041003602082000200236020420002001360200200341106a24000b2b0020020440200345044041e485052d00001a0b20012002105621010b20002002360204200020013602000b8e0101027f0240027f410041dc85042802002202200020016a41016b410020006b7122036a22002002490d001a41e085042802002000490440200341ffff036a22014110764000220041ffff034b0d022000411074220220014180807c716a22002002490d0241e0850420003602004100200220036a22002002490d011a0b41dc8504200036020020020b0f0b41000b7a01027f230041106b2203240002402001450440410221020c010b0240200141ffffffff034b0d00200141017422044100480d00027f2002450440200341086a41022004102a20032802080c010b2003410220044101105520032802000b22020d010b000b2000200236020420002001360200200341106a24000bea0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100105520042802082103200428020c0c020b2003280200210602402001200210562203450440410021030c010b20032006200510101a0b20020c010b200420012002102a2004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000bc70101027f410121020240024002400240024002400240024002400240024002400240024002400240200041036b41ff0171220341016a41002003410f491b41016b0e0f0f0102030405060708090a0b0c0d0e000b200141001045200021020c0e0b410221020c0d0b410321020c0c0b410421020c0b0b410521020c0a0b410621020c090b410721020c080b410821020c070b410921020c060b410a21020c050b410b21020c040b410c21020c030b410d21020c020b410e21020c010b410f21020b2001200210450b890101047f230041206b22022400200241186a2001103c41012103024020022d00184101710d0020022d00192104200241106a2001105320022f01100d0020022f01122105200241086a2001105320022f01080d0020022f010a2101200020053b0102200041066a20043a0000200041046a20013b0100410021030b200020033b0100200241206a24000bb30202027f047e230041d0006b220224002002200110260240027f411120022802004101470d001a410d200120022903082205200241106a2903002204104b41ff0171410d470d001a200241c8006a2004370300200241406b2005370300200241386a200141186a290000370300200241306a200141106a290000370300200241286a200141086a2900003703002002410636021820022001290000370320200241186a2203103920024280800137021c200241e4850436021841c8ff9bb2782003101720012003102220022802202201200228021c4b0d0120022802182001100c1a410f200029031022072005542201200041186a290300220620045420042006511b0d001a2000200720057d370310200041186a200620047d2001ad7d37030041120b2100200241d0006a240020000f0b000b0b0020002001100d417f470bd20101057f230041306b2203240002402001280204220420012802082205490d00200128020021062003410036020c2003200420056b22043602082003200520066a220636020420022802002002280204200341046a22071020200228020820071022200328020c220220032802084b0d00200341046a22072003280204200210212003410036022c20032004360228200320063602242007200341246a1022200141086a2202200328022c20056a360200200041086a200228020036020020002001290200370200200341306a24000f0b000b1000200020012002410f4117416810720b100020002001200241104118416710720b1b0041e5850420003a000041e4850441003a0000410041021069000b930101027f230041106b22022400200241808001360208200241e48504360204024041e58504027f20012d000045044041e4850441003a0000410020012d000122034104460d011a41e5850441013a00002002410236020c2003200141026a2d0000200241046a106a200228020c220141818001490d02000b41e4850441013a000041010b3a0000410221010b200020011069000b130041e485044181023b0100410141021069000b0a0020002001410310710b0a0020002001410210710b4a01017f230041106b22012400200141e4850436020441e4850441003a000020014280808180103702082000200141046a1017200128020c2200418180014f0440000b410020001069000b7501017f230041106b22022400200241808001360208200241e4850436020441e4850441003a00000240200141ff0171411246044041e5850441003a0000410221010c010b41e5850441013a00002002410236020c2001200241046a1059200228020c220141818001490d00000b200020011069000bd80101047f230041106b22012400200142808001370208200141e485043602044100200141046a1017024020012802082202200128020c2203490d00200128020421042001410036020c2001200220036b3602082001200320046a3602042000200141046a22021068200028020820021017200128020c220220012802084f0d00200128020420026a2000410c6a2d00003a00002001200241016a36020c2000290310200041186a290300200141046a102d200128020c220020012802084b0d002004200320012802042000100b1a200141106a24000f0b000b5b01017f230041106b22022400024020002f01004504402001410010450c010b2001410110452002200041066a2d00003a000f20012002410f6a4101102520002f01022001102c200041046a2f01002001102c0b200241106a24000b0d00200041e485042001100f000b4a000240024002400240200041ff017141016b0e03010203000b2002410010452002200110450f0b2002410110452001200210590f0b2002410210452001200210440f0b2002410310450b0d00410341012000200110521b0b950101027f230041406a22032400027f4101200120022802042002280208103d220441ff01714112470d001a4104210441012001410c6a2d00004101470d001a2003411c6a104a200341146a200241086a280200360200200341186a2001280208360200200341003602082003200229020037020c200341086a103941040b2101200020043a0001200020013a0000200341406b24000b5b01017f230041206b22022400200242808001370204200241e4850436020041d8eac38a782002101720002002101720012002101a2002280208220020022802044b0440000b20022802002000100c1a2002104a200241206a24000be268020c7f0b7e230041a0066b220024002000418080013602a00241e48504200041a0026a10020240024002400240024002400240024020002802a0022205418180014f0d0002400240024020054104490d00200041e88504360280022000200541046b22063602840241e785042d0000210141e685042d0000210341e585042d00002102024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024041e485042d00002204418b016b0e0b050125111525172525250f000b02402004413e6b0e0710252507252504000b0240200441de006b0e031b0913000b0240200441176b0e021812000b0240200441ea006b0e05082525250d000b0240200441f6006b0e021602000b024020044180016b0e040c25251f000b0240200441db016b0e05142525250e000b0240200441ea016b0e021c03000b20044111460d1920044131460d05200441ca00460d1c200441cf00460d18200441a701460d09200441b901460d0a200441c101460d1d200441d10147200241ff017141e4014772200341ff017141d60047200141ff017141da004772720d24200041a0036a20004180026a101c20002802a0032203418080808078460d2420003500a503200041ab036a310000423086200041a9036a3300004220868484210c200341107621022003410876210120002d00a403210441918080807821050c260b200241ff017141c40047200341ff017141da004772200141ff017141930147720d23200041a0036a20004180026a105a20002f01a0030d2320002801a2032203411076210220034108762101200041a7036a310000210c200041a6036a2d0000210441808080807821050c250b200241ff017141c10147200341ff017141104772200141ff017141bf0147720d2241818080807821050c240b200241ff017141f30047200341ff0171412a4772200141ff017141970147720d2141828080807821050c230b200241ff017141cd0047200341ff01714199014772200141ff017141c10047720d2041838080807821050c220b200241ff017141e90047200341ff017141f5004772200141ff0171413f47200641044972720d1f200041ec85043602800241e88504280200220341107621022003410876210141848080807821050c210b200241ff0171419b0147200341ff017141054772200141ff0171418b0147200641044972720d1e200041ec85043602800241e88504280200220341107621022003410876210141858080807821050c200b200241ff01712202410f460d18200241c50147200341ff01714193014772200141ff017141ae01472006411f4d72720d1d200041c8056a41808604290200370300200041f885042902003703c00541f5850433000041f7850431000042108684210d41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341868080807821050c1f0b200241ff017141f80147200341ff017141ea014772200141ff017141e200472006411f4d72720d1c200041c8056a41808604290200370300200041f885042902003703c00541f5850433000041f7850431000042108684210d41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341878080807821050c1e0b200241ff0171418b0147200341ff017141fc004772200141ff017141a20147720d1b41888080807821050c1d0b200241ff0171411147200341ff0171418a014772200141ff017141da0147200641204972720d1a200041c8056a4180860429020037030020004188860436028002200041f885042902003703c00541f5850433000041f7850431000042108684210d41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341898080807821050c1c0b200241ff017141a30147200341ff017141ea004772200141ff017141d10147720d19418a8080807821050c1b0b200241ff017141d90047200341ff0171418e014772200141ff017141d80147720d18418b8080807821050c1a0b200241ff0171220541cf00460d13200541ff0047200341ff017141c8004772200141ff017141dc0047720d17418c8080807821050c190b200241ff017141ec0147200341ff017141f3004772200141ff017141ed0047720d16200041a0036a20004180026a102b20002802a0032203418080808078460d1620003500a503200041ab036a310000423086200041a9036a3300004220868484210c200341107621022003410876210120002d00a4032104418d8080807821050c180b200241ff0171412347200341ff0171413d4772200141ff017141f40047720d15200041a0036a20004180026a102820002802a0032203418080808078460d15200041c8056a200041b8036a290200370300200020002902b0033703c0052003411076210220034108762101200041ad036a330000200041af036a31000042108684210d20002900a503210c20002d00a403210420002802c0032106418e8080807821050c170b200241ff017141cc0147200341ff017141264772200141ff017141fe0047200641204972720d14200041a8036a220741808604290200370300200041888604360280022000200541246b36028402200041f885042902003703a00341f78504310000210d41f58504330000210f41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d00002103200041b0046a20004180026a102b20002802b0042206418080808078460d14200f200d42108684210d200041c8056a2007290300370300200020002903a0033703c00520002902b404210e418f8080807821050c160b200241ff017141b70147200341ff017141f0004772200141ff0171412447200641204972720d1320004188066a41808604290200370300200041f8850429020037038006200541c4006b2206415f4b0d1341f78504310000210d41f58504330000211041ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d00002103200041a8036a419c8604290200370300200041b0036a41a486042802003602002000419486042902003703a00320064110490d13418c8604290200210e418886042802002106200041b88604360280022000200541d4006b3602840241b08604290200211141a88604290200210f200041a0056a20004180026a102b20002802a0052205418080808078460d13200041e8056a220720004188066a290300370300200041b8046a2208200041a8036a290300370300200041c0046a2209200041b0036a28020036020020002000290380063703e005200020002903a0033703b004200028028402220a41c100490d132010200d42108684210d20002902a40521102000200a41c1006b360284022000200028028002220a41c1006a36028002200041a0026a200a41c10010101a200041c8056a200729030037030020004188046a200829030037030020004190046a2009280200360200200020002903e0053703c005200020002903b004370380040c150b200241ff017141c00047200341ff017141e2004772200141ff017141c70147720d12200041d0006a20004180026a101220002802500d1241042104200028028402410c6e22012000280254220220012002491b22030440200341aad5aad5004b0d162003410c6c22014100480d16200041c8006a41042001102a20002802482204450d160b41002101200041003602b804200020043602b404200020033602b0042002450d110340200041a0036a20004180026a101c20002802a0032207418080808078460d1320002902a403210c20002802b004200146047f200041b0046a2104230041206b220324000240200141016a220104404104200428020022054101742208200120012008491b2201200141044d1b2201410c6c2108200141abd5aad50049410274210902402005450440200341003602180c010b2003410436021820032005410c6c36021c200320042802043602140b200341086a20092008200341146a10582003280208450d01200328020c1a0b000b200328020c21052004200136020020042005360204200341206a240020002802b404210420002802b8040520010b410c6c20046a2201200c37020420012007360200200020002802b80441016a22013602b804200241016b22020d000b20002802b0042203418080808078460d1220003500b504200041bb046a310000423086200041b9046a3300004220868484210c20002d00b40421040c130b200241ff017141fb0147200341ff017141e5004772200141ff017141f30047720d1141938080807821050c130b200241ff017141a70147200341ff0171418f014772200141ff017141830147720d1041948080807821050c120b200241ff0171413a47200341ff01714195014772200141ff017141f40147200641204972720d0f200041c8056a41808604290200370300200041888604360280022000200541246b36028402200041f885042902003703c00541f5850433000041f7850431000042108684210d41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341958080807821050c110b200241ff0171410a47200341ff017141264772200141ff0171412547720d0e41968080807821050c100b200141ff0171200241ff017141aa0147200341ff017141354772720d0d41978080807821050c0f0b200241ff01712202450d09200241fe0147200341ff017141b3014772200141ff017141f00047720d0c41988080807821050c0e0b200241ff017141a40147200341ff0171413c4772200141ff0171418c0147720d0b419a8080807821050c0d0b200241ff017141f40147200341ff0171413e4772200141ff017141fd0147720d0a200041a0036a20004180026a101820002d00a00322034102460d0a200041c8056a200041b8036a290000370300200020002900b0033703c005200041ad036a330000200041af036a31000042108684210d20002900a503210c20002d00a403210420002f00a203210220002d00a103210120002d00c0032106419b8080807821050c0c0b200241ff0171412247200341ff01714187014772200141ff017141d30047720d09419c8080807821050c0b0b200241ff017141f10147200341ff017141244772200141ff0171418a0147720d08200041a0036a20004180026a102720002d00a40322044102460d08200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210d20002900a503210c20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210e419e8080807821050c0a0b200241ff017141c00147200341ff017141e2004772200141ff017141fd0147720d07200041a0036a20004180026a102720002d00a40322044102460d07200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210d20002900a503210c20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210e419f8080807821050c090b200241ff017141d90147200341ff017141ac0147720d06200141ff01714118460d040c060b200241ff017141da0147200341ff0171413b4772200141ff017141b20147200641044972720d05200041ec8504360280022000200541086b3602840241e88504280200220341107621022003410876210141a18080807821050c070b200341ff017141cc0147200141ff0171419d0147722006411049720d04200041f885043602800241f08504290200220f42188641e88504290200220e42288884210c200f422888210d200e422088a72104200e421088a72102200e420888a72101200ea7210341998080807821050c060b200341ff0171410947200141ff017141910147720d03200041a0036a20004180026a102720002d00a40322044102460d03200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210d20002900a503210c20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210e419d8080807821050c050b200341ff017141ae0147200141ff017141800147722006412049720d02200041c8056a41808604290200370300200041888604360280022000200541246b36028402200041f885042902003703c00541f5850433000041f7850431000042108684210d41ed8504290000210c41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341a28080807821050c040b200041a0036a20004180026a102720002d00a40322044102460d01200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210d20002900a503210c20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210e41a08080807821050c030b20003500b504200041bb046a310000423086200041b9046a3300004220868484210c0c010b1062000b200c42ffffffffffffffff0083210c200341107621022003410876210141928080807821050b200041a0016a2011370300200041f0006a200041c8056a2903003703002000418c016a20004188046a29030037020020004194016a20004190046a2802003602002000200f37039801200020002903c005370368200020002903800437028401200020103702ac01200041b8016a200041a0026a220741c10010101a200041fc016a20004193056a28000036000020002000280090053600f9012000200c4218882211200d42288684220f370360200020053602a8012000200e37027c2000200636027820002004ad42ff0183422086200c422886842210200341ff0171200141ff01714108747222092002411074722203ad8422123703582000428080013702a402200041e485043602a00241002007101720002802a402220720002802a8022201490d0020002802a00221042000200720016b22073602a00220042001200120046a2204200041a0026a1000200720002802a00222014972200145720d002000200141016b22013602a4032000200441016a3602a0034200210d0240024020042d00000e020100020b200041a0026a200041a0036a105a20002f01a0020d01200041a6026a33010042308620003501a20242108684420184210d20002802a40321010b20014104462001410449720d0020002802a00322082d0004220741044b200141156b416f4b720d00200da7220a41ffff037122014102462001410346720d0020104220882213a72101200828000021042008290005211020004198026a220b2008410d6a29000022143703002000201037039002200020073a008c0220002004360288022000200a3b0180022000200d42308822153d0186022000200d42108822163e0182020240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024041102005418080808078732208200841234f1b41016b0e22000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021220b104c41ff01714105470d2220002000290380023703a002230041106b22022400200241808001360208200241e48504360204410221010240200041a0026a22002f0100410246044041e485044181023b01000c010b2002410136020c41e4850441003a00002000200241046a1068200228020c220141818001490d00000b410020011069000b104c41ff01714105470d2120071060000b104c41ff01714105470d2020041065000b104c41ff01714105470d1f200041a0026a22012003101d230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a1041200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c260b104c41ff01714105470d1e200041a0026a22012003101b230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a103f200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c250b104c41ff01714105470d1d230041306b22012400200141186a200041d8006a220241086a290000370200200141206a200241106a290000370200200141286a200241186a290000370200200120004180026a36020c20012002290000370210200141106a10512102200141306a2400200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106720021060000b104c41ff01714105470d1c230041406a22012400200141286a200041d8006a220241086a290000370200200141306a200241106a290000370200200141386a200241186a290000370200200120004180026a36021c200120022900003702202001200141206a1026200141106a290300210c2001290308210d200020012903003703002000200d370308200041106a2202200c370300200141406b24002002290300210c2000290308210d2000290300210e200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1067230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200e50044041e5850441003a0000410221020c010b41e5850441013a00002000410236020c200d200c200041046a102d200028020c220241818001490d00000b0c230b104c41ff01714105470d1b200041a0026a2201104a20004180026a2001105b220241ff01714112460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10670b0c1e0b104c41ff01714105470d1a200041ac026a200041e0006a290300370200200041b4026a200041e8006a290300370200200041bc026a200041f0006a290300370200200020002903583702a402200020004180026a22013602a0022001200041a4026a105b220241ff01714112460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10670b0c1d0b104c41ff01714105470d19200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1067230041106b22002400200041e4850436020441e4850441003a0000200042808081801037020820102014200041046a102d200028020c2202418180014f0440000b0c200b104c41ff01714105470d18230041206b220024002000104a200010512101200041206a240020011060000b200041b8026a200b290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1067410041121066000b104c41ff01714105470d1620002013200f422086843702a403200020033602a003200041a0026a2201200041a0036a22002802042000280208103a230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a1020200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c1d0b104c41ff01714105470d15200041b4036a200041ec006a280200360200200041c0036a200041f8006a280200360200200041a8036a200041e0006a280200360200200020002902643702ac03200020002903703703b803200020002903583703a00341012102200041a1026a104a200041013a00a00202404185b99ed07a200041a0026a106b220141ff01714103470d00200041a0026a200041a0036a2201412410101a20004180026a2001200041ac026a200041b8026a2203103b220141ff01714107470d00200320004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106741002102410721010b230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200141ff0171410746044041e5850441003a0000410221010c010b41e5850441013a00002000410236020c2001200041046a1044200028020c220141818001490d00000b200220011069000b104c41ff01714105470d14200041d8046a200e370200200041d4046a22012006360200200041bc046a200041e0006a2202290300370200200041c4046a200041e8006a2203290300370200200041cc046a200041f0006a2204290300370200200020002903583702b404200020004180026a3602b004200041186a200041b4046a1046200041206a290300210c2000290318210d200041c0036a1049200041e8036a200c370300200041b8036a2004290300370300200041b0036a2003290300370300200041a8036a2002290300370300200041f8036a200041dc046a2802003602002000200d3703e003200020002903583703a003200020012902003703f00320004198066a2202420037030020004190066a2203420037030020004188066a2204420037030020004200370380062000428080013702a402200041e485043602a002200041a0036a200041a0026a104720002802a802220120002802a4024b0d1420002802a002200120004180066a1008200041a0026a2201200041a0036a41d00010101a20004188046a200041fc036a28020036020020004194046a20042903003702002000419c046a2003290300370200200041a4046a2002290300370200200020002902f40337038004200020002903800637028c0420002802f0032102200041f4026a20004180046a412c10101a200020023602f0022002418080808078462103230041106b22002400200041808001360208200041e4850436020402402001280250220241818080807847044041e4850441003a0000024020024180808080784704402000410236020c41e5850441003a00002001200041046a22021047200141e0006a200210220c010b41e5850441013a00002000410236020c20012d0000200041046a10480b200028020c220241818001490d01000b41e485044181023b0100410221020b200320021069000b104c41ff01714105470d13200041a0036a200041ac016a220141d40010101a200041a0026a200041d8006a41d00010101a200041fc026a200141086a280200360200200020053602f002200020012902003702f402200041b0046a200041ac036a41c10010101a200041a0056a2202104941072101027f0240200041c0026a2002104d0d00200041286a200041a0026a1046410821012000290328220c20002903e00285200041306a290300220d200041e8026a29030085844200520d00200041d8056a4200370300200041d0056a4200370300200041c8056a4200370300200042003703c00520004280800137028404200041e4850436028004200041a0026a20004180046a104720002802880422012000280284044b0d152000280280042001200041c0056a2203100820004180046a210241002101037f2001412146047f200205200120026a41003a0000200141016a21010c010b0b1a41092101410c200041b0046a20032002100622022002410c4f1b0d0020004198066a2201420037030020004190066a2202420037030020004188066a22034200370300200042003703800620004180046a412120004180066a1008200041f8056a2001290300370300200041f0056a2002290300370300200041e8056a200329030037030020002000290380063703e005410a2101200041a0026a200041e0056a104d0d0020004280800137028404200041e4850436028004419ade91f67920004180046a22011017200041a0026a2001102220002802840422032000280288042201490d15200028028004210220004100360288042000200320016b360284042000200120026a36028004200c42017c220c200d200c50ad7c20004180046a102d20002802880422032000280284044b0d15200220012000280280042003100b1a20004199046a200041f0006a29030037000020004191046a200041e8006a29030037000020004189046a200041e0006a290300370000200020002903583700810441012101200041013a0080044185b99ed07a20004180046a1052450d00200020002902f4023702e00520004180046a200041e0056a102820002802800422014180808080784704402000418f066a220220004194046a28000036000020004188066a2000418d046a29000037030020004198056a200041a0046a2802003602002000200029008504220c37038006200041fc046a200028008306360000200020002902980437039005200020002d0084043a00f804200020013602f4042000200c3e00f90420004188056a200228000036020020002000290087063703800520004180026a200041f4046a20004180056a20004190056a103b220141ff01714107470d01200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1067410c210141000c020b410521010b41010b2103230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200141ff0171410c46044041e5850441003a0000410221020c010b41e5850441013a00002000410236020c2001200041046a1048200028020c220241818001490d00000b200320021069000b104c41ff01714105470d12200041ac026a200041e0006a280200360200200020002903583702a402200020004180026a22013602a002200041386a2001200041a4026a106c20002d0039210220002d003822034104472201450440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10670b200041003a00a002200020023a00a202200020033a00a1020c160b104c41ff01714105470d112011a7410c6c2102027f024003402002450d0120012802002203418080808078460d01200020033602a002200020012902043702a4022002410c6b21022001410c6a2101200041406b20004180026a200041a0026a106c20002d004022034104460d000b20002d0041210141010c010b200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10674104210341000b2102200020013a00a202200020033a00a1020c160b104c41ff01714105470d1041012102200041a1026a104a200041013a00a0024200210e4201210f024041a5c1a6ab7e200041a0026a106b220141ff0171410346044041042101428002210c024020070e050002020200020b20004188026a2202200441016a2201360200200041013a008c02200041013602a002200020013602a402200041a0026a22031039200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a200229030037030020002000290380023703a0022001ad422086210e200310674200210f410021020b4200210c0b20002001ad42ff0183421086200e84200c84200f843703a002230041106b22012400200141808001360208200141e48504360204410221030240200041a0026a22002d00002204410247044041e4850441003a0000024020044504402001410236020c41e5850441003a00002000280204200141046a10170c010b41e5850441013a00002001410236020c20002d0001200041026a2d0000200141046a106a0b200128020c220341818001490d01000b41e485044181023b01000b200220031069000b104c41ff01714105470d0f41012101200041a1026a104a200041013a00a002027f410041a5c1a6ab7e200041a0026a106b220341ff01714103470d001a200741014704404104210341010c010b200041023a008c02200041023602a002200020043602a402200041a0026a1039200a41ffff03714504404106210341010c010b200020153c00a8022000200d4220883d01a602200020163d01a40220004180808080783602a002200020043602ac02200041a0036a200041a0026a102f20002d00a003044020002d00a103210341020c010b200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10674100210141040b2102200020033a00a202200020023a00a102200041003a00a0020c130b104c41ff01714105470d0e200041a1026a104a200041013a00a002027f41014100200041a0026a106b220241ff01714103470d001a200041b9026a200041f0006a290300370000200041b1026a200041e8006a290300370000200041a9026a200041e0006a290300370000200020002903583700a102200041013a00a00241014185b99ed07a200041a0026a1042220241ff01714103470d001a200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10674103210241000b20021063000b104c41ff01714105470d0d4185b99ed07a1065000b104c41ff01714105470d0c41a5c1a6ab7e1065000b104c41ff01714105470d0b200041a1026a104a200041013a00a0024100200041a0026a106b220141ff01714103460d0c200020013a00a202200041003b01a0024101200041a0026a1061000b104c41ff01714105470d0a41012102200041a1026a104a200041013a00a0024103210102404100200041a0026a106b220341ff01714103470440410021010c010b200041a0026a2204104a20042012200f104b41ff0171410d470d00200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106741042101410021020b200020033a00a202200020013a00a1020c0f0b104c41ff01714105470d09200041a0026a22014101721016200041003a00a002230041106b22002400200041808001360208200041e48504360204024020012d0000044041e485044181023b0100410221020c010b41e4850441003a00002000410136020c200141016a200041046a101a200028020c220241818001490d00000b0c100b104c41ff01714105470d08200020004180026a3602a002200041a4026a200041d8006a412110102102200041b0046a2203101641012101200041a1036a104a200041013a00a003027f41002003200041a0036a104f0d001a200041a0036a1016410120024180800410500d001a20021019200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10674100210141020b2100200120001064000b104c41ff01714105470d07200041a0036a22021016200041a1026a104a200041013a00a002410021012002200041a0026a104f2202450440200041a0026a22011016418080041019200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a00220011067410221010b200220011064000b104c41ff01714105470d06200020004180026a3602a002200041a4026a200041d8006a412810101a20002802a402200041a8026a22011043220241ff01714103460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200120004188026a29030037030020002000290380023703a002200041a0026a10670b0c0c0b104c41ff01714105470d0541012102200041a1026a104a200041013a00a002410021010240200041d8006a4104722204200041a0026a104f0d0020032004106b220141ff01714103470d0020032004106d200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106741002102410321010b200220011063000b104c41ff01714105470d042003200041d8006a4104721042220241ff01714103460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10670b0c0a0b104c41ff01714105470d03200041d8006a2200280200200041046a10521060000b104c41ff01714105470d022003102e1065000b104c41ff01714105470d01200041ac026a200041e0006a290300370200200041b4026a200041e8006a290300370200200041bc026a200041f0006a290300370200200020002903583702a402200020004180026a3602a002200041b0046a2201101641012102200041a1036a104a200041013a00a003027f4181808080782001200041a0036a104f0d001a418080808078410c200041a4026a100722012001410c4f1b0d001a200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1067410021024183808080780b2101200041003a00a402200020013602a002230041106b22012400200141808001360208200141e48504360204024002400240200041a0026a2200280200220341848080807847044041e4850441003a0000200341838080807846044041e5850441003a0000410221010c040b41e5850441013a000002400240200341ffffffff076b41002003418380808078481b41016b0e03040001030b41e6850441023a000041e7850420002d00043a0000410421010c040b41e6850441033a000041e7850420002d00043a0000410421010c030b41e485044181023b0100410221010c020b2001410336020c41e6850441003a000020002802042000280208200141046a1020200128020c220141818001490d01000b41e6850441013a0000410321010b200220011069000b104c41ff01714105460d020b000b200041a0026a2201104a230041106b22002400200042808001370208200041e485043602042001200041046a10222000280208200028020c490440000b2000280204100e000b41012104200041a1026a104a200041013a00a002024041a5c1a6ab7e200041a0026a106b220341ff01714103470d0041052103200141ff017145200241ffff037120094d720d002000200c3c008702200020013a008602200020023b018402200020093b018202200041013b018002200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106741122103410021040b200420031066000b200241ff017141124720021066000b2001200041a0026a1061000b200041003a00a0022002200041a0026a1061000b200241ff017141034720021063000b410020021069000b9f0301087f230041d0006b220024000240104c41ff01714105470d0020004180800136022841e48504200041286a100220002802282201418180014f0d00024020014104490d0041e485042d0000419b014741e585042d000041ae01477241e685042d0000419d01477241e785042d000041de0047720d00200041086a104a200041c1006a2201200041206a2202290000370000200041396a2203200041186a2204290000370000200041316a2205200041106a220629000037000020002000290008370029200041013a0028200041286a2207101920012002290000370000200320042900003700002005200629000037000020002000290008370029200041013a00284100200710524504404100200041286a10700b20012002290000370000200320042900003700002005200629000037000020002000290008370029200041013a002841a5c1a6ab7e200041286a104241ff01714103470d01200041406b420037030020004200370338200041003a00342000410036023020004200370328200041286a106741e4850441003b0100410041021069000b1062000b000b6501027f230041106b22022400200242808001370208200241e4850436020441d8eac38a78200241046a2203101720002003101720012003101a200228020c220020022802084b0440000b200228020422012000200020016a4100100b1a200241106a24000b3d01017f41e4850441003a00004102210341e58504200141ff0171200247047f41e6850420013a00004103210341010541000b3a0000200020031069000b890201077f230041306b2206240002402001280204220720012802082208490d00200128020021092006410036020c2006200720086b220a3602082006200820096a220936020420022802002002280204200641046a1020200628020c220720054b0d00200720046a220b20062802084b0d002006280204220c20076a220720022802082202290000370000200720036a200220036a290000370000200741086a200241086a290000370000200641046a2202200c200b10212006410036022c2006200a360228200620093602242002200641246a1022200141086a2202200628022c20086a360200200041086a200228020036020020002001290200370200200641306a24000f0b000b0bc405010041a180040bbb05712f5f68656164210001000200000023000100050000005f7461696c00000021000100020000003800010005000000436f6e74726163743a3a50617274696369706174696f6e52656769737465726564436f6e74726163743a3a50617274696369706174696f6e526567697374657265643a3a726166666c655f6964436f6e74726163743a3a50617274696369706174696f6e526567697374657265643a3a7061727469636970616e74436f6e74726163743a3a526166666c655374617274656400000000010000000000cb000100436f6e74726163743a3a526166666c65537461727465643a3a726166666c655f6964436f6e74726163743a3a526166666c65456e646564436f6e74726163743a3a526166666c65456e6465643a3a726166666c655f6964436f6e74726163743a3a526573756c74526563656976656400000001000000000047010100436f6e74726163743a3a526573756c7452656365697665643a3a726166666c655f6964436f6e74726163743a3a57696e6e65727352657665616c6564436f6e74726163743a3a57696e6e65727352657665616c65643a3a726166666c655f6964436f6e74726163743a3a50656e64696e67526577617264000000010000000000cc010100436f6e74726163743a3a50656e64696e675265776172643a3a6163636f756e74436f6e74726163743a3a52657761726473436c61696d6564000001000000000010020100436f6e74726163743a3a52657761726473436c61696d65643a3a6163636f756e74436f6e74726163743a3a4d657373616765517565756564000001000000000055020100436f6e74726163743a3a4d6573736167655175657565643a3a6964436f6e74726163743a3a4d65737361676550726f636573736564546f436f6e74726163743a3a4d65737361676550726f636573736564546f3a3a69640d01020304050607080a0b0c09","build_info":{"build_mode":"Release","cargo_contract_version":"3.2.0","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"lotto_contract","version":"0.1.0","authors":["guigou"]},"spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":10},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":6},"blockNumber":{"displayName":["BlockNumber"],"type":3},"chainExtension":{"displayName":["ChainExtension"],"type":67},"hash":{"displayName":["Hash"],"type":56},"maxEventTopics":4,"timestamp":{"displayName":["Timestamp"],"type":66}},"events":[{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":true,"label":"participant","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"docs":["Event emitted when the participant is registered"],"label":"ParticipationRegistered"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}}],"docs":["Event emitted when the raffle is started"],"label":"RaffleStarted"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}}],"docs":["Event emitted when the raffle is ended"],"label":"RaffleEnded"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":false,"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"docs":["Event emitted when the raffle result is received"],"label":"ResultReceived"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":false,"label":"winners","type":{"displayName":["Vec"],"type":9}}],"docs":["Event emitted when the winners are revealed"],"label":"WinnersRevealed"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":6}}],"docs":["Event emitted when a reward is pending"],"label":"PendingReward"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":6}}],"docs":["Event emitted when a user claim rewards"],"label":"RewardsClaimed"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":3}},{"docs":[],"indexed":false,"label":"data","type":{"displayName":["Vec"],"type":5}}],"docs":["Event emitted when a message is pushed in the queue"],"label":"MessageQueued"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":3}}],"docs":["Event emitted when a message is processed"],"label":"MessageProcessedTo"}],"lang_error":{"displayName":["ink","LangError"],"type":11},"messages":[{"args":[{"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"default":false,"docs":[],"label":"participate","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0xd1e4565a"},{"args":[{"label":"numbers","type":{"displayName":["Vec"],"type":18}}],"default":false,"docs":[],"label":"participate_batch","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x184062c7"},{"args":[],"default":false,"docs":[],"label":"start_raffle","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":19},"selector":"0x60fb6573"},{"args":[],"default":false,"docs":[],"label":"complete_raffle","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0xdba78f83"},{"args":[{"label":"account_id","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"register_attestor","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0x8f3a95f4"},{"args":[],"default":false,"docs":[],"label":"get_attestor_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":23},"selector":"0x760a2625"},{"args":[],"default":false,"docs":[],"label":"get_manager_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":23},"selector":"0x91aa3500"},{"args":[],"default":false,"docs":[],"label":"terminate_me","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x17feb370"},{"args":[{"label":"value","type":{"displayName":["Balance"],"type":6}}],"default":false,"docs":[],"label":"withdraw","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x410fcc9d"},{"args":[{"label":"config","type":{"displayName":["raffleconfig_external","SetConfigInput1"],"type":24}}],"default":false,"docs":[],"label":"RaffleConfig::set_config","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":25},"selector":"0x8c445a93"},{"args":[],"default":false,"docs":[],"label":"RaffleConfig::get_config","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x77c110bf"},{"args":[],"default":false,"docs":[],"label":"Raffle::get_current_status","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0xeb732a97"},{"args":[],"default":false,"docs":[],"label":"Raffle::get_current_raffle_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":23},"selector":"0x444d9941"},{"args":[{"label":"raffle_id","type":{"displayName":["raffle_external","GetWinnersInput1"],"type":3}}],"default":false,"docs":[],"label":"Raffle::get_winners","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":31},"selector":"0x8b69753f"},{"args":[{"label":"raffle_id","type":{"displayName":["raffle_external","GetResultsInput1"],"type":3}}],"default":false,"docs":[],"label":"Raffle::get_results","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":33},"selector":"0x319b058b"},{"args":[],"default":false,"docs":[],"label":"RewardManager::fund","mutates":true,"payable":true,"returnType":{"displayName":["ink","MessageResult"],"type":25},"selector":"0x6e7f485c"},{"args":[],"default":false,"docs":[" claim all pending rewards for the current account"," After claiming, there is not anymore pending rewards for this account"],"label":"RewardManager::claim","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":25},"selector":"0x5f8b7ca2"},{"args":[],"default":false,"docs":[" return true if the current account has pending rewards"],"label":"RewardManager::has_pending_rewards","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x80598ed8"},{"args":[],"default":false,"docs":[" return the total pending reward"],"label":"RewardManager::get_total_pending_rewards","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":37},"selector":"0xb9a36ad1"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","HasPendingRewardsFromInput1"],"type":0}}],"default":false,"docs":[" return true if the given account has pending rewards"],"label":"RewardManager::has_pending_rewards_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x41c593ae"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","GetPendingRewardsFromInput1"],"type":0}}],"default":false,"docs":[" return the pending rewards for a given account."],"label":"RewardManager::get_pending_rewards_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0x6af8ea62"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","ClaimFromInput1"],"type":0}}],"default":false,"docs":[" claim all pending rewards for the given account"," After claiming, there is not anymore pending rewards for this account"],"label":"RewardManager::claim_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":25},"selector":"0xa7118ada"},{"args":[{"label":"key","type":{"displayName":["rollupanchor_external","GetValueInput1"],"type":5}}],"default":false,"docs":[],"label":"RollupAnchor::get_value","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":40},"selector":"0xdfec736d"},{"args":[{"label":"conditions","type":{"displayName":["rollupanchor_external","RollupCondEqInput1"],"type":42}},{"label":"updates","type":{"displayName":["rollupanchor_external","RollupCondEqInput2"],"type":42}},{"label":"actions","type":{"displayName":["rollupanchor_external","RollupCondEqInput3"],"type":44}}],"default":false,"docs":[],"label":"RollupAnchor::rollup_cond_eq","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":46},"selector":"0x95233d74"},{"args":[{"label":"request","type":{"displayName":["metatransaction_external","MetaTxRollupCondEqInput1"],"type":48}},{"label":"signature","type":{"displayName":["metatransaction_external","MetaTxRollupCondEqInput2"],"type":49}}],"default":false,"docs":[],"label":"MetaTransaction::meta_tx_rollup_cond_eq","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0x8eb77024"},{"args":[{"label":"from","type":{"displayName":["metatransaction_external","PrepareInput1"],"type":0}},{"label":"data","type":{"displayName":["metatransaction_external","PrepareInput2"],"type":5}}],"default":false,"docs":[],"label":"MetaTransaction::prepare","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0x3ecc267e"},{"args":[],"default":false,"docs":[],"label":"Ownable::renounce_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":57},"selector":"0x5e228753"},{"args":[],"default":false,"docs":[],"label":"Ownable::owner","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0x4fa43c8c"},{"args":[{"label":"new_owner","type":{"displayName":["ownable_external","TransferOwnershipInput1"],"type":61}}],"default":false,"docs":[],"label":"Ownable::transfer_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":57},"selector":"0x11f43efd"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","GrantRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","GrantRoleInput2"],"type":61}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","GetRoleAdminInput1"],"type":3}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":23},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","RevokeRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","RevokeRoleInput2"],"type":61}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","RenounceRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","RenounceRoleInput2"],"type":61}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","HasRoleInput1"],"type":3}},{"label":"address","type":{"displayName":["accesscontrol_external","HasRoleInput2"],"type":61}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0xc1d9ac18"},{"args":[{"label":"new_code_hash","type":{"displayName":["upgradeable_external","SetCodeHashInput1"],"type":56}}],"default":false,"docs":[],"label":"Upgradeable::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":62},"selector":"0x1700ae80"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x6f713913","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x6f713913","ty":0}},"name":"0"}],"name":"Some"}}}},"root_key":"0x6f713913"}},"name":"owner"}],"name":"Data"}},"name":"ownable"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x1f2cf4ac","ty":3}},"root_key":"0x1f2cf4ac"}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x8150f558","ty":4}},"root_key":"0x8150f558"}},"name":"members"}],"name":"Data"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xdd3d1ad8","ty":5}},"root_key":"0xdd3d1ad8"}},"name":"kv_store"}],"name":"Data"}},"name":"rollup_anchor"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x9ec46f1a","ty":6}},"root_key":"0x9ec46f1a"}},"name":"nonces"}],"name":"Data"}},"name":"meta_transaction"},{"layout":{"struct":{"fields":[{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":2}},"name":"nb_numbers"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"min_number"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"max_number"}],"name":"Config"}},"name":"0"}],"name":"Some"}}}},"name":"config"}],"name":"Data"}},"name":"config"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":3}},"name":"current_raffle_id"},{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Status","variants":{"0":{"fields":[],"name":"NotStarted"},"1":{"fields":[],"name":"Ongoing"},"2":{"fields":[],"name":"WaitingResults"},"3":{"fields":[],"name":"WaitingWinners"},"4":{"fields":[],"name":"Closed"}}}},"name":"status"},{"layout":{"root":{"layout":{"leaf":{"key":"0x1d32f93c","ty":8}},"root_key":"0x1d32f93c"}},"name":"results"},{"layout":{"root":{"layout":{"leaf":{"key":"0x3d8da523","ty":9}},"root_key":"0x3d8da523"}},"name":"winners"}],"name":"Data"}},"name":"lotto"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x8646ffc8","ty":6}},"root_key":"0x8646ffc8"}},"name":"pending_rewards"},{"layout":{"leaf":{"key":"0x00000000","ty":6}},"name":"total_pending_rewards"}],"name":"Data"}},"name":"reward"}],"name":"Contract"}},"root_key":"0x00000000"}},"types":[{"id":0,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":1,"type":{"def":{"array":{"len":32,"type":2}}}},{"id":2,"type":{"def":{"primitive":"u8"}}},{"id":3,"type":{"def":{"primitive":"u32"}}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"sequence":{"type":2}}}},{"id":6,"type":{"def":{"primitive":"u128"}}},{"id":7,"type":{"def":{"primitive":"u16"}}},{"id":8,"type":{"def":{"sequence":{"type":7}}}},{"id":9,"type":{"def":{"sequence":{"type":0}}}},{"id":10,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":11}],"path":["Result"]}},{"id":11,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":12,"type":{"def":{"variant":{"variants":[{"fields":[{"type":13}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":13},{"name":"E","type":11}],"path":["Result"]}},{"id":13,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":14}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":14}],"path":["Result"]}},{"id":14,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":0,"name":"AccessControlError"},{"fields":[{"type":16,"typeName":"RaffleError"}],"index":1,"name":"RaffleError"},{"fields":[{"type":17,"typeName":"RollupAnchorError"}],"index":2,"name":"RollupAnchorError"},{"index":3,"name":"TransferError"}]}},"path":["lotto_contract","lotto_contract","ContractError"]}},{"id":15,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["openbrush_contracts","traits","errors","access_control","AccessControlError"]}},{"id":16,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":0,"name":"AccessControlError"},{"index":1,"name":"IncorrectRaffle"},{"index":2,"name":"IncorrectStatus"},{"index":3,"name":"IncorrectConfig"},{"index":4,"name":"ConfigNotSet"},{"index":5,"name":"DifferentConfig"},{"index":6,"name":"IncorrectNbNumbers"},{"index":7,"name":"IncorrectNumbers"},{"index":8,"name":"DifferentResults"},{"index":9,"name":"ExistingResults"},{"index":10,"name":"ExistingWinners"},{"index":11,"name":"TransferError"},{"index":12,"name":"AddOverFlow"},{"index":13,"name":"SubOverFlow"},{"index":14,"name":"DivByZero"},{"index":15,"name":"NoReward"}]}},"path":["lotto","traits","error","RaffleError"]}},{"id":17,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidPopTarget"},{"index":1,"name":"ConditionNotMet"},{"index":2,"name":"FailedToDecode"},{"index":3,"name":"UnsupportedAction"},{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":4,"name":"AccessControlError"}]}},"path":["phat_rollup_anchor_ink","traits","rollup_anchor","RollupAnchorError"]}},{"id":18,"type":{"def":{"sequence":{"type":8}}}},{"id":19,"type":{"def":{"variant":{"variants":[{"fields":[{"type":20}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":20},{"name":"E","type":11}],"path":["Result"]}},{"id":20,"type":{"def":{"variant":{"variants":[{"fields":[{"type":3}],"index":0,"name":"Ok"},{"fields":[{"type":14}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":3},{"name":"E","type":14}],"path":["Result"]}},{"id":21,"type":{"def":{"variant":{"variants":[{"fields":[{"type":22}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":22},{"name":"E","type":11}],"path":["Result"]}},{"id":22,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":15}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":15}],"path":["Result"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"fields":[{"type":3}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":3},{"name":"E","type":11}],"path":["Result"]}},{"id":24,"type":{"def":{"composite":{"fields":[{"name":"nb_numbers","type":2,"typeName":"u8"},{"name":"min_number","type":7,"typeName":"Number"},{"name":"max_number","type":7,"typeName":"Number"}]}},"path":["lotto","traits","config","Config"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":26}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":26},{"name":"E","type":11}],"path":["Result"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":16}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":16}],"path":["Result"]}},{"id":27,"type":{"def":{"variant":{"variants":[{"fields":[{"type":28}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":28},{"name":"E","type":11}],"path":["Result"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":24}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":24}],"path":["Option"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":30}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":30},{"name":"E","type":11}],"path":["Result"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"index":0,"name":"NotStarted"},{"index":1,"name":"Ongoing"},{"index":2,"name":"WaitingResults"},{"index":3,"name":"WaitingWinners"},{"index":4,"name":"Closed"}]}},"path":["lotto","traits","raffle","Status"]}},{"id":31,"type":{"def":{"variant":{"variants":[{"fields":[{"type":32}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":32},{"name":"E","type":11}],"path":["Result"]}},{"id":32,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":33,"type":{"def":{"variant":{"variants":[{"fields":[{"type":34}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":34},{"name":"E","type":11}],"path":["Result"]}},{"id":34,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":8}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":8}],"path":["Option"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"fields":[{"type":36}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":36},{"name":"E","type":11}],"path":["Result"]}},{"id":36,"type":{"def":{"primitive":"bool"}}},{"id":37,"type":{"def":{"variant":{"variants":[{"fields":[{"type":6}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":6},{"name":"E","type":11}],"path":["Result"]}},{"id":38,"type":{"def":{"variant":{"variants":[{"fields":[{"type":39}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":39},{"name":"E","type":11}],"path":["Result"]}},{"id":39,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":6}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":6}],"path":["Option"]}},{"id":40,"type":{"def":{"variant":{"variants":[{"fields":[{"type":41}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":41},{"name":"E","type":11}],"path":["Result"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":5}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":5}],"path":["Option"]}},{"id":42,"type":{"def":{"sequence":{"type":43}}}},{"id":43,"type":{"def":{"tuple":[5,41]}}},{"id":44,"type":{"def":{"sequence":{"type":45}}}},{"id":45,"type":{"def":{"variant":{"variants":[{"fields":[{"type":5,"typeName":"Vec"}],"index":0,"name":"Reply"},{"fields":[{"type":3,"typeName":"QueueIndex"}],"index":1,"name":"SetQueueHead"},{"fields":[{"type":0,"typeName":"AccountId"}],"index":2,"name":"GrantAttestor"},{"fields":[{"type":0,"typeName":"AccountId"}],"index":3,"name":"RevokeAttestor"}]}},"path":["phat_rollup_anchor_ink","traits","rollup_anchor","HandleActionInput"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"fields":[{"type":47}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":47},{"name":"E","type":11}],"path":["Result"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":17}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":17}],"path":["Result"]}},{"id":48,"type":{"def":{"composite":{"fields":[{"name":"from","type":0,"typeName":"AccountId"},{"name":"to","type":0,"typeName":"AccountId"},{"name":"nonce","type":6,"typeName":"Nonce"},{"name":"data","type":5,"typeName":"Vec"}]}},"path":["phat_rollup_anchor_ink","traits","meta_transaction","ForwardRequest"]}},{"id":49,"type":{"def":{"array":{"len":65,"type":2}}}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":51}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":51},{"name":"E","type":11}],"path":["Result"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":52}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":52}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidDestination"},{"index":1,"name":"NonceTooLow"},{"index":2,"name":"IncorrectSignature"},{"index":3,"name":"PublicKeyNotMatch"},{"index":4,"name":"PublicKeyIncorrect"},{"fields":[{"type":17,"typeName":"RollupAnchorError"}],"index":5,"name":"RollupAnchorError"}]}},"path":["phat_rollup_anchor_ink","traits","meta_transaction","MetaTransactionError"]}},{"id":53,"type":{"def":{"variant":{"variants":[{"fields":[{"type":54}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":54},{"name":"E","type":11}],"path":["Result"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"fields":[{"type":55}],"index":0,"name":"Ok"},{"fields":[{"type":52}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":55},{"name":"E","type":52}],"path":["Result"]}},{"id":55,"type":{"def":{"tuple":[48,56]}}},{"id":56,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":57,"type":{"def":{"variant":{"variants":[{"fields":[{"type":58}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":58},{"name":"E","type":11}],"path":["Result"]}},{"id":58,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":59}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":59}],"path":["Result"]}},{"id":59,"type":{"def":{"variant":{"variants":[{"index":0,"name":"CallerIsNotOwner"},{"index":1,"name":"NewOwnerIsNotSet"}]}},"path":["openbrush_contracts","traits","errors","ownable","OwnableError"]}},{"id":60,"type":{"def":{"variant":{"variants":[{"fields":[{"type":61}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":61},{"name":"E","type":11}],"path":["Result"]}},{"id":61,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":62,"type":{"def":{"variant":{"variants":[{"fields":[{"type":63}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":63},{"name":"E","type":11}],"path":["Result"]}},{"id":63,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":64}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":64}],"path":["Result"]}},{"id":64,"type":{"def":{"variant":{"variants":[{"fields":[{"type":65,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":59,"typeName":"OwnableError"}],"index":2,"name":"OwnableError"},{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":3,"name":"AccessControlError"}]}},"path":["openbrush_contracts","traits","errors","upgradeable","UpgradeableError"]}},{"id":65,"type":{"def":{"primitive":"str"}}},{"id":66,"type":{"def":{"primitive":"u64"}}},{"id":67,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":"4"} \ No newline at end of file +{"source":{"hash":"0x6c99447555ef59ba8e192d052da9c14b61a2caa20447e09b31c6487ecb763b78","language":"ink! 4.3.0","compiler":"rustc 1.76.0","wasm":"0x0061736d01000000014e0d60027f7f0060037f7f7f0060027f7f017f60017f0060037f7f7f017f60047f7f7f7f017f60017f017f60047f7f7f7f0060000060037e7e7f0060037f7e7e017f6000017f60067f7f7f7f7f7f0002cf0211057365616c310b6765745f73746f726167650005057365616c301176616c75655f7472616e736665727265640000057365616c3005696e7075740000057365616c300663616c6c65720000057365616c3007616464726573730000057365616c300762616c616e63650000057365616c300d65636473615f7265636f7665720004057365616c300d7365745f636f64655f686173680006057365616c300f686173685f626c616b65325f3235360001057365616c30087472616e736665720005057365616c300d6465706f7369745f6576656e740007057365616c320b7365745f73746f726167650005057365616c310d636c6561725f73746f726167650002057365616c3110636f6e7461696e735f73746f726167650002057365616c31097465726d696e6174650003057365616c300b7365616c5f72657475726e000103656e76066d656d6f7279020102100365640404000004000300000300000000000001010000000100000000010009000600030000010000010001030105000401010101020200000000000003030a0b020202020602000007020107000002020101010003000800000303000001020100080800010c0608017f01418080040b0711020463616c6c006f066465706c6f7900700a8cfc01642b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba70201037f230041206b22022400200241106a2001101341012103024020022d00104101710d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210140d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410140d01200228021c220341027621012003418080044921030c010b200241086a2001101520022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b8e0101017f20002d00042103200041003a0004027f0240200304402001200041056a2d00003a00004101200028020022002802042203200241016b2202490d021a200141016a20002802002201200210101a0c010b41012000280200220028020422032002490d011a200120002802002201200210101a0b2000200320026b3602042000200120026a36020041000b0b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b880201057f230041306b22012400200142808001370208200141e485043602044193f2c4fb06200141046a1017024020012802082204200128020c2202490d00200128020421032001200420026b220436020420032002200220036a2202200141046a10002103200420012802042205490d00024002400240024020030e0400040401040b2001200536022c20012002360228200141046a200141286a101820012d000422024102470d010b410021020c010b200020012900063700022000410a6a2001410e6a290000370000200041126a200141166a290000370000200041196a2001411d6a290000370000200020012d00053a00010b200020023a0000200141306a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041025200241106a24000bae0101037f230041106b22022400200241086a2001101341022103024020022d00084101710d000240024020022d00090e020001020b410021030c010b200128020422044120490d002001200441206b36020420012001280200220141206a36020020002001290000370001200041096a200141086a290000370000200041116a200141106a290000370000200041196a200141186a290000370000410121030b200020033a0000200241106a24000b910101047f230041106b22012400200142808001370208200141e485043602044193f2c4fb06200141046a1017024020012802082204200128020c2202490d00200128020421032001410036020c2001200420026b3602082001200220036a3602042000200141046a101a200128020c220020012802084b0d002003200220012802042000100b1a200141106a24000f0b000b210020002d00004504402001410010460f0b200141011046200041016a200110220bdd0101047f230041206b22022400200242808001370218200241e4850436021441bcf2cbe901200241146a22031017200120031017024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2201200241146a10002103200420022802142205490d002000027e0240024020030e0400030301030b200220053602102002200136020c200241146a2002410c6a101c20022802142201418080808078460d0220022902180c010b418080808078210142000b37020420002001360200200241206a24000f0b000bc20101077f230041106b22022400200241086a20011012024020022802084504400240200228020c22044100480d002004410174220320012802044b0d002002200441011058200128020422062003490d00200228020021052002280204200128020022072003101021082001200620036b3602042001200320076a3602002005418080808078460d002000200436020820002008360204200020053602000c020b20004180808080783602000c010b20004180808080783602000b200241106a24000bdd0101047f230041206b22022400200242808001370218200241e4850436021441a3cab6ec03200241146a22031017200120031017024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2201200241146a10002103200420022802142205490d002000027e0240024020030e0400030301030b200220053602102002200136020c200241146a2002410c6a101e20022802142201418080808078460d0220022902180c010b418080808078210142000b37020420002001360200200241206a24000f0b000b8504010b7f230041406a22032400200341086a2001101202402003280208450440200341146a20012802044105762202200328020c220520022005491b10550240200504400340200128020422024120490d022001200241206b36020420012001280200220241206a360200200341286a2209200241086a290000370300200341306a220a200241106a290000370300200341386a220b200241186a29000037030020032002290000370320200328021c22042003280214460440200341146a2106230041206b220224000240200441016a220404404104200628020022074101742208200420042008491b2204200441044d1b220441808080204921082004410574210c02402007450440200241003602180c010b200241013602182002200741057436021c200220062802043602140b200241086a2008200c200241146a10592002280208450d01200228020c1a0b000b200228020c21072006200436020020062007360204200241206a2400200328021c21040b200328021820044105746a22022003290320370000200241086a2009290300370000200241106a200a290300370000200241186a200b2903003700002003200441016a36021c200541016b22050d000b0b20002003290214370200200041086a2003411c6a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200341406b24000bb90101057f230041306b2202240002402000280204220320002802082204490d00200028020021052002410036020c2002200320046b22033602082002200420056a220536020420012802002001280204200241046a22061020200128020828020020061017200228020c220120022802084b0d00200241046a22062002280204200110212002410036022c20022003360228200220053602242006200241246a10222000200228022c20046a360208200241306a24000f0b000b100020012002102420022000200110250bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1008200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b20032001200210101a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010250b5f01047f230041106b220224002000280204220420002802082203490440000b200028020021052002410036020c2002200420036b3602082002200320056a3602042001200241046a10242000200228020c20036a360208200241106a24000b50002000413f4d04402001200041027410460f0b200041ffff004d044020004102744101722001102d0f0b200041ffffffff034d04402000410274410272200110170f0b2001410310462000200110170b3a01027f02402000280208220320026a220420034f0440200420002802044d0d010b000b200028020020036a2001200210101a200020043602080bd00102047f037e230041106b22022400200242808001370208200241e4850436020441c8ff9bb278200241046a22031017200120031022024020022802082204200228020c2201490d00200228020421032002200420016b220436020420032001200120036a2201200241046a10002103200420022802042205490d00027e0240024020030e0400030301030b20054110490d022001290000210642012107200141086a2900000c010b42000b21082000200637030820002007370300200041106a2008370300200241106a24000f0b000b6901027f230041306b2202240020022001101502402002280200450440200228020421032002410f6a2001101820022d000f4102470440200041046a2002410f6a412110101a200020033602000c020b200041023a00040c010b200041023a00040b200241306a24000be808020d7f017e230041a0016b220224002002413c6a20011029024002400240200228023c418080808078470440200241c8006a200110292002280248418080808078460d02200241186a20011012024020022802180d000240200128020441246e2203200228021c220620032006491b2203450440410421040c010b200341e3f1b81c4b0d03200341246c22044100480d03200241106a41042004102a20022802102204450d030b2002410036025c2002200436025820022003360254200604400340200241086a2001101320022d00084101710d020240024002400240024020022d0009220a0e0400010203070b20024194016a2001102b2002280294012207418080808078460d06200229029801210f0c030b20022001101520022802000d05200228020421070c020b200128020422034120490d042001200341206b36020420012001280200220341206a360200200241f6006a200341026a2d00003a0000200241e8006a200341176a290000370300200241f0006a2003411f6a2d00003a0000200220032f00003b01742002200329000f3703602003290007210f200328000321070c010b200128020422034120490d032001200341206b36020420012001280200220341206a360200200241f6006a200341026a2d00003a0000200241e8006a200341176a290000370300200241f0006a2003411f6a2d00003a0000200220032f00003b01742002200329000f3703602003290007210f200328000321070b20024192016a220b200241f6006a2d00003a000020024180016a220c200241e8006a29030037030020024188016a220d200241f0006a280200360200200220022f01743b0190012002200229036037037820022802542005460440200241d4006a2104230041206b220324000240200541016a220504404104200428020022084101742209200520052009491b2205200541044d1b220541246c2109200541e4f1b81c49410274210e02402008450440200341003602180c010b200341043602182003200841246c36021c200320042802043602140b200341086a200e2009200341146a10592003280208450d01200328020c1a0b000b200328020c21082004200536020020042008360204200341206a2400200228025c2105200228025821040b2004200541246c6a2203200a3a00002003200f37020820032007360204200341036a200b2d00003a0000200320022f0190013b000120032002290378370210200341186a200c290300370200200341206a200d2802003602002002200228025c41016a220536025c200641016b22060d000b20022802542203418080808078460d010b2002290258210f200241286a2201200241c4006a280200360200200241346a200241d0006a2802003602002000200229023c3702002000200f37021c200020033602182002200229024837022c200041086a2001290300370200200041106a200241306a2903003702000c040b20004180808080783602000c030b20004180808080783602000c020b000b20004180808080783602000b200241a0016a24000bc704020a7f027e230041406a22022400200241106a2001101202400240024020022802104504400240200128020441186e22032002280214220620032006491b2205450440410421030c010b200541d5aad52a4b0d02200541186c22034100480d02200241086a41042003102a20022802082203450d020b20024100360224200220033602202002200536021c200604400340200241286a2001102b2002280228220a418080808078460d04200229022c210c20022001101320022d00004101710d0441808080807821090240024020022d00010e020100060b200241346a2001102b20022802342209418080808078460d052002290238210d0b200228021c200446047f2002411c6a2105230041206b220324000240200441016a220404404104200528020022074101742208200420042008491b2204200441044d1b220441186c2108200441d6aad52a49410274210b02402007450440200341003602180c010b200341043602182003200741186c36021c200320052802043602140b200341086a200b2008200341146a10592003280208450d01200328020c1a0b000b200328020c21072005200436020020052007360204200341206a24002002280220210320022802240520040b41186c20036a2204200d3702102004200936020c2004200c3702042004200a3602002002200228022441016a2204360224200641016b22060d000b0b2000200229021c370200200041086a200241246a2802003602000c030b20004180808080783602000c020b000b20004180808080783602000b200241406b24000b3901017f230041106b22032400200341086a2001200241001056200328020c21012000200328020836020020002001360204200341106a24000bb60101067f230041106b22022400200241086a20011012024020022802084504400240200228020c220320012802044b0d002002200341011033200128020422052003490d00200228020021042002280204200128020022062003101021072001200520036b3602042001200320066a3602002004418080808078460d002000200336020820002007360204200020043602000c020b20004180808080783602000c010b20004180808080783602000b200241106a24000b2a01017f230041106b2203240020032001370308200320003703002002200341101025200341106a24000b2601017f230041106b22022400200220003b010e20012002410e6a41021025200241106a24000baa0101047f230041106b22012400200142808001370208200141e4850436020441ace9b3f901200141046a22021017200020021017024020012802082203200128020c2200490d00200128020421022001200320006b220336020420022000200020026a2200200141046a10002102200320012802042204490d00027f0240024020020e0400030301030b20044104490d0220002800000c010b41000b2100200141106a240020000f0b000b950401067f230041f0006b22022400200241386a1030024002400240024020022d00384504402002412c6a200228023c220510312002410236023c200241a1800436023820022002290230370240200241146a200241386a22071032200241086a410a417f20012802082203410174220641096a22042004200641056a491b20012802002204418080808078461b410010332002410036024020022002290308370238200128020c200710342004418080808078460440200241386a220441001035200220033a002c20042002412c6a4101103620012f01042004103720012f0106200410370c040b200241386a41011035200128020421012003413f4d0440200241386a200341027410350c030b200341ffff004d04402003410274410172200241386a10370c030b200341ffffffff034b0d012003410274410272200241386a10340c020b20022d00392101200041013a0000200020013a00010c030b200241386a2204410310352003200410340b200241386a2001200610360b200241286a2201200241406b280200360200200220022902383703202002280218200228021c200241206a10382002412c6a41c080041032200241386a2203200541016a10312002280230200228023420031038200241c4006a2001280200360200200241c8006a20053602002002200229032037023c2002410736023820031039200041003a0000200020053602040b200241f0006a24000b7101027f230041206b22012400200141086a41c080041032200141146a200128020c2001280210103a024002402001280214418080808078470440200128021c4104490d01200128021828000021020b200041003a0000200020023602040c010b200041810a3b01000b200141206a24000b5501027f230041206b22022400200241086a4104410010332002411c6a22034100360200200220022903083702142001200241146a1034200041086a200328020036020020002002290214370200200241206a24000b7e01037f230041206b22022400200241086a2001410c6a28020020012802046a410010332002410036021c200220022903083702140340200241146a200120036a2204280200200441046a2802001036200341086a22034110470d000b20002002290214370200200041086a2002411c6a280200360200200241206a24000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001102a20032802080c010b2003200420014101105620032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041036200241106a24000b2601017f230041106b22022400200220013a000f20002002410f6a41011036200241106a24000be00101067f230041206b220324000240200220002802002204200028020822066b4d0440200220066a2107200028020421040c010b2006200220066a22074d04404108200441017422052007200520074b1b2205200541084d1b2205417f73411f76210802402004450440200341003602180c010b2003200436021c20034101360218200320002802043602140b200341086a20082005200341146a10592003280208450440200328020c210420002005360200200020043602040c020b200328020c1a0b000b200420066a2001200210101a20002007360208200341206a24000b2601017f230041106b22022400200220003b010e20012002410e6a41021036200241106a24000bf60101027f230041106b22032400024002402002450440200342808001370208200341e4850436020441d8b5f4e97d200341046a220210172000200120021020200328020c220020032802084b0d0220032802042000100c1a0c010b200342808001370208200341e4850436020441d8b5f4e97d200341046a22041017200020012004102020032802082204200328020c2200490d01200328020421012003410036020c2003200420006b3602082003200020016a360204200241046a280200200241086a280200200341046a1020200328020c220220032802084b0d012001200020032802042002100b1a0b200341106a24000f0b000bc91301087f23004190016b220224002002200041381010220042808001370240200041e4850436023c0240027f0240024002400240024002400240024002400240200028020041016b0e080102030405060708000b2000413c6a410310232000280240220120002802442202490d0a200028023c2104200041003602682000200120026b22053602642000200220046a2207360260418080044100200041e0006a102020002802682203415e4b0d0a200341216a220820002802644b0d0a2003200028026022036a41d08004412110101a200041e0006a22062003200810212000410036028c0120002005360288012000200736028401200620004184016a22051022200041dc006a2203200028028c0120026a36020020002001360258200020043602542000200041106a36028c012000412c36028801200041f1800436028401200041d4006a22012005101f200041d0006a2003280200360200200020002902543703482000200041146a3602682000412e3602642000419d81043602602001200041c8006a2006105e0c080b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e48104105f2000200041047236026820004122360264200041f0810436026020012002101f2000280288012201200028028c012202490d09200120026b21012000280284010c080b2000413c6a410210232000280240220120002802442202490d08200028023c2104200041003602682000200120026b22053602642000200220046a2207360260418080044100200041e0006a102020002802682203416a4b0d08200341156a220820002802644b0d082000280260220620036a2203419282042900003700002003410d6a419f8204290000370000200341086a419a8204290000370000200041e0006a22032006200810212000410036028c0120002005360288012000200736028401200320004184016a102220002001360258200020043602542000200028028c0120026a36025c2000200041047236026820004120360264200041a78204360260200041d4006a2003101f20002802582201200028025c2202490d08200120026b210120002802540c070b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e0820410602000200041106a36026820004123360264200041ec820436026020012002101f2000280288012201200028028c012202490d07200120026b21012000280284010c060b2000413c6a410210232000280240220420002802442202490d06200028023c2103200041003602682000200420026b22053602642000200220036a2207360260418080044100200041e0006a10202000280268220141664b0d06200141196a220820002802644b0d062000280260220620016a2201418f8304290000370000200141186a41a783042d00003a0000200141106a419f8304290000370000200141086a41978304290000370000200041e0006a22012006200810212000410036028c0120002005360288012000200736028401200120004184016a102220002004360258200020033602542000200028028c0120026a36025c2000200041106a36026820004124360264200041a88304360260200041d4006a2001101f20002802582201200028025c2202490d06200120026b210120002802540c050b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241e48304105f2000200041086a36026820004120360264200041f08304360260200041d4006a20012002105e0c030b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241a8840410602000200041086a36026820004121360264200041b48404360260200041d4006a20012002105e0c020b2000413c6a41021023200041e8006a200041c4006a2802003602002000200029023c37036020004184016a2201200041e0006a220241ec8404105f2000200041106a3602682000411b360264200041f8840436026020012002101f2000280288012201200028028c012202490d03200120026b21012000280284010c020b2000413c6a410210232000280240220420002802442202490d02200028023c2103200041003602682000200420026b22053602642000200220036a2207360260418080044100200041e0006a10202000280268220141634b0d022001411c6a220820002802644b0d022000280260220620016a220141938504290000370000200141186a41ab8504280000360000200141106a41a38504290000370000200141086a419b8504290000370000200041e0006a22012006200810212000410036028c0120002005360288012000200736028401200120004184016a102220002004360258200020033602542000200028028c0120026a36025c2000200041047236026820004120360264200041af8504360260200041d4006a2001101f20002802582201200028025c2202490d02200120026b210120002802540c010b20002802582201200028025c2202490d01200120026b210120002802540b2103200020013602642000200220036a22043602600240024002400240024002400240024002400240200028020041016b0e080102030405060708000b2001450d09200441003a000020004101360268200041106a280200200041e0006a22011017200041146a20011022200041086a2802002000410c6a2802002001103f0c080b2001450d08200441013a0000200041013602682000280204200041e0006a10170c070b2001450d07200441023a0000200041013602682000280204200041e0006a10170c060b2001450d06200441033a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a2802002001103f0c050b2001450d05200441043a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a280200200110410c040b2001450d04200441053a000020004101360268200041086a200041e0006a22011022200041286a290300200041306a2903002001102c0c030b2001450d03200441063a000020004101360268200041086a200041e0006a22011022200041286a290300200041306a2903002001102c0c020b2001450d02200441073a000020004101360268200041106a280200200041e0006a22011017200041086a2802002000410c6a280200200110200c010b2001450d01200441083a0000200041013602682000280204200041e0006a10170b2000280268220120002802644b0d002003200220002802602001100a20004190016a24000f0b000bdf0101037f230041206b22032400200342808001370218200341e4850436021441d8b5f4e97d200341146a220410172001200220041020024020032802182204200328021c2201490d00200328021421022003200420016b220436021420022001200120026a2201200341146a10002102200420032802142205490d002000027e0240024020020e0400030301030b200320053602102003200136020c200341146a2003410c6a102b20032802142202418080808078460d0220032902180c010b418080808078210242000b37020420002002360200200341206a24000f0b000b8e1a02127f0b7e230041a0016b220424000240024020012802082205450d0020012802042201200541186c6a210703402001280200418080808078460d012001280214210520012802102106200128020c2108200441e0006a20012802042001280208103a0240024020042802604180808080784704402008418080808078460d0220042802682005470d022004280264200620051011450d010c020b2008418080808078470d010b200141186a22012007470d010c020b0b410421080c010b024020022802082205450d0020022802042201200541186c6a2105200441ec006a2108200441e4006a220241106a2107200241086a210603402001280200220c418080808078460d012007200141146a28020036020020062001410c6a290200370200200220012902043702002004200c3602602004280264200428026820084100200428026c418080808078471b1038200141186a22012005470d000b0b024002400240024020032802082201450d0020032802042203200141246c6a2111200441f0006a210c200441e0006a410472210d200441e8006a210e200441e1006a210f200041186a211220044190016a2113200441eb006a21140340200322012d000022084104460d01200141106a2105200141246a21032001290008211620012800042102200141016a21010240024002400240024002400240200841016b0e03010203000b200420163702302016422088a722014104490d0a2004200141046b22023602342002450d0a2016a7220228000021052004200141056b3602342004200241056a360230027f0240024020022d00040e0200010d0b200441286a200441306a103c20042d00284101710d0c200428023422014102490d0c20042d0029210220042004280230220841026a3602302004200141026b220736023420074102490d0c20082f000021092004200141046b22013602342004200841046a360230418080808078210620082f00020c010b200441e0006a200441306a101c20042802602206418080808078460d0b20042f006920142d000041107472211520042d0068210220042f016421092004280234210120042f01660b210a2001450d0a2004200141016b36023420042004280230220141016a3602300240024020012d00000e0200010c0b200441e0006a200441306a101c2004280260220b418080808078460d0b410621082006418080808078470d0c20002f0100450d0c20002d0006200241ff0171470d0c20002f01022009470d0c20002f0104200a470d0c20002004280264220120042802682202103d41ff01714112470d0c200441d4006a20012002103e20002802082005470d0c20002d000c4102470d0c200441306a2005101b2004280230418080808078470d0c200442808001370264200441e4850436026041bcf2cbe901200441e0006a220710172005200710172004280264220920042802682207490d0920042802602106200441003602682004200920076b3602642004200620076a3602602004280258200428025c200441e0006a103f2004280268220920042802644b0d092006200720042802602009100b1a200041033a000c200441306a220720012002103e200d41086a200441386a280200360200200d20042903303702002004200536027020044103360260200441e0006a220610392004200536026c20042002360268200420013602642004200b36026020072006102f20042d0030450d060c0c0b200441e0006a200441306a101e2004280260418080808078460d0a410621082006418080808078460d0b2004280268210b20042802642107200441e0006a2005101b2004280260418080808078460d0b200428026820154108742210200241ff0171220272470d0b200a411074200972210120042802642106200220106a41016a21020340200241016b2202044020062f0100210920012f0100210a200641026a2106200141026a21012009200a460d010c0d0b0b200441d4006a2007200b104020002802082005470d0b20002d000c4103470d0b200441306a2005101d2004280230418080808078470d0b200442808001370264200441e4850436026041a3cab6ec03200441e0006a220110172005200110172004280264220620042802682201490d0820042802602102200441003602682004200620016b3602642004200120026a3602602004280258200428025c200441e0006a10412004280268220620042802644b0d082002200120042802602006100b1a200041043a000c200441306a2007200b1040200d41086a200441386a2209280200360200200d20042903303702002004200536027020044104360260200441e0006a1039200b450d042012290300211b2000290310211d200442003703682004420037036020044110360230200441e0006a200441306a100520042903602216201d54220520042903682217201b542017201b511b0d0b200441186a210a2016201d7d2118200bad2119420021164200211c4200211a4200211f230041206b22012400230041206b220224000240024002402017201b7d2005ad7d221750450440201720195a044020172019510d022017201980211f201720198242208620184220888422162019802217422086201842ffffffff0f83201620198242208684221620198084211c2017422088201f84211f20162019822118420021160c040b230041106b220524000240413f2019221679a72206201779a722106b41406b20062010461b220641c000714504402006450d0142002006413f71ad221e862016410020066b413f71ad8884211a2016201e8621160c010b20162006413f71ad86211a420021160b200520163703002005201a370308200529030021162002200541086a29030037030820022016370300200541106a240042012006413f71ad862116200241086a290300211e20022903002120034002402017201e7d2018202054ad7d221a4200590440201820207d21182016201c84211c201a500d01201a21170b201e423f86202042018884212020164201882116201e420188211e0c010b0b2018201980201c84211c420021160c020b2018201980211c0c010b2018201780211c4201211f201820178221180c010b201820198221180b200120183703102001201c370300200141186a42003703002001201f370308200241206a240020012903002116200a200141086a290300370308200a2016370300200141206a2400200b4105742102200441206a2903002116200429031821190340200441c8006a2206200741186a290000370300200441406b220b200741106a2900003703002009200741086a290000370300200420072900003703302004200441306a10262019211a201621172004290300a741014604402004290308221720197c221a20175422012001ad200441106a290300221820167c7c221720185420172018511b0d0d0b200442808001370264200441e4850436026041c8ff9bb278200441e0006a22011017200441306a200110222004280264220a20042802682201490d0920042802602105200441003602682004200a20016b3602642004200120056a360260201a2017200441e0006a102c2004280268220a20042802644b0d09200520012004280260200a100b1a200e41186a2006290300370000200e41106a200b290300370000200e41086a2009290300370000200e200429033037000020042019370388012013201637030020044105360260200441e0006a1039201d2019201d7c221d5622012001ad2016201b7c7c2217201b542017201b511b0d0c200741206a21072017211b200241206b22020d000b2000201d3703102012201b3703000c050b200441e0006a103020042d00600d084103210820042802642002490d0a200441306a41a880041032200441e0006a20042802342004280238103a02402004280260418080808078460440410021010c010b20042802684104490d0a2004280264280000220120024b0d0b0b20012002460d020340200441306a2001103120044102360264200441a1800436026020042004290234370268200441d4006a200441e0006a10322004280258200428025c410010382002200141016a2201470d000b200441306a41a880041032200441e0006a22012002103120042802342004280238200110382004410836026020042002360264200110390c020b200f20012f00003b0000200f41026a200141026a2d00003a0000200c2005290000370000200c41086a200541086a290000370000200c41106a200541106a2d00003a0000200441013a006020042016370068200420023600644185b99ed07a200441e0006a1042220841ff01714103460d010c090b200f20012f00003b0000200f41026a200141026a2d00003a0000200c2005290000370000200c41086a200541086a290000370000200c41106a200541106a2d00003a0000200441013a006020042016370068200420023600644185b99ed07a200441e0006a1043220841ff01714103470d080b20032011470d020c030b200441e0006a2000104420042d00600d060b20032011470d000b0b410721080c030b000b20042d006121080c010b410521080b200441a0016a240020080b3801017f230041106b22022400200241086a2001101320022d00092101200020022d00084101713a0000200020013a0001200241106a24000b6f01037f20002f010045044041060f0b410821030240200041066a2d00002002470d0020024101742102200041046a2f0100210420002f010221000340200245044041120f0b4109210320012f0100220520044b0d01200241026b2102200141026a2101200020054d0d000b0b20030b4b01027f230041106b22032400200341086a20024100105820032802082104200328020c2001200241017410102101200020023602082000200136020420002004360200200341106a24000b130020012002102420022000200141017410250b4001017f230041106b22032400200341046a2002105520032802082001200241057410101a200041086a200236020020002003290204370200200341106a24000b2d0020012002102420010440200141057421010340200020021022200041206a2100200141206b22010d000b0b0b5e01027f230041306b220224002000102e2103200241106a104b200241013a000f024020032002410f6a106c220341ff01714103470d00410221032000200110530d002000200110712002410f6a104b410321030b200241306a240020030b5c01027f230041306b220324002000102e2102200341106a104b200341013a000f024020022003410f6a106c220241ff01714103470d0020002001106c220241ff01714103470d0020002001106e410321020b200341306a240020020b7201017f230041406a220224002000027f024002402001410c6a2d00000e050001010100010b200141013a000c2001200128020841016a2201360208200241013602082002200136020c200241086a10392000200136020441000c010b20004181083b000141010b3a0000200241406b24000b5201027f024002400240024002404104200041036b41ff01712203200341044f1b41016b0e0400010203040b410121020c030b410221020c020b410321020c010b200141041046200021020b2001200210460b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000bc20102047f027e230041106b22022400200242808001370208200241e48504360204419ade91f679200241046a22031017200120031022024020022802082204200228020c2201490d00200228020421032002200420016b220436020420032001200120036a2201200241046a10002103200420022802042205490d00027e0240024020030e0400030301030b20054110490d0220012900002106200141086a2900000c010b42000b21072000200637030020002007370308200241106a24000f0b000b3900200020011022200041206a200110222000290340200041c8006a2903002001102c200041d4006a280200200041d8006a280200200110200b6301017f0240024002400240024002404105200041076b41ff01712202200241054f1b41016b0e050102030405000b2001410010460f0b2001410110460f0b2001410210460f0b2001410310460f0b2001410410460f0b2001410510462000200110450b6d01017f230041106b2201240020014180800136020c41e485042001410c6a1004200041e58504290000370001200041096a41ed8504290000370000200041116a41f58504290000370000200041186a41fc8504290000370000200041e485042d00003a0000200141106a24000b6d01017f230041106b2201240020014180800136020c41e485042001410c6a1003200041e58504290000370001200041096a41ed8504290000370000200041116a41f58504290000370000200041186a41fc8504290000370000200041e485042d00003a0000200141106a24000bde0101037f230041306b22032400200341186a200041186a290000370300200341106a200041106a290000370300200341086a200041086a29000037030020032000290000370300200342808001370228200341e485043602242003200341246a1022024020032802282204200328022c2200490d00200328022421052003410036022c2003200420006b3602282003200020056a36022420012002200341246a102c200328022c220420032802284b0d00410c2005200020032802242004100922002000410c4f1b41cf85046a2d00002100200341306a240020000f0b000b4d02017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a10012000290308210120002903002102200041206a2400410541042001200284501b0b0b0020002001104f4101730b2f01037f20012d0000220220002d000022037245210420034520024572047f200405200041016a200141016a10510b0b0b002000200110514101730b0b002000200141201011450b5c01027f230041106b22012400200142808001370208200141e4850436020441c8ff9bb278200141046a22021017200020021022200128020c220020012802084b0440000b20012802042000105d2100200141106a240020004100470b6201027f230041106b22022400200242808001370208200241e4850436020441d8eac38a78200241046a2203101720002003101720012003101a200228020c220020022802084b0440000b20022802042000105d2100200241106a240020004100470b4601017f20012802042202410249047f4101052001200241026b36020420012001280200220141026a36020020012f0000210241000b2101200020023b0102200020013b01000b6c01027f230041106b2203240002402001450440410121020c010b0240200141ffffff1f4b0d00200141057422024100480d00200341086a20014180808020492002102a200328020822020d010b000b200041003602082000200236020420002001360200200341106a24000b2b0020020440200345044041e485052d00001a0b20012002105721010b20002002360204200020013602000b8e0101027f0240027f410041dc85042802002202200020016a41016b410020006b7122036a22002002490d001a41e085042802002000490440200341ffff036a22014110764000220041ffff034b0d022000411074220220014180807c716a22002002490d0241e0850420003602004100200220036a22002002490d011a0b41dc8504200036020020020b0f0b41000b7a01027f230041106b2203240002402001450440410221020c010b0240200141ffffffff034b0d00200141017422044100480d00027f2002450440200341086a41022004102a20032802080c010b2003410220044101105620032802000b22020d010b000b2000200236020420002001360200200341106a24000bea0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100105620042802082103200428020c0c020b2003280200210602402001200210572203450440410021030c010b20032006200510101a0b20020c010b200420012002102a2004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000bc70101027f410121020240024002400240024002400240024002400240024002400240024002400240200041036b41ff0171220341016a41002003410f491b41016b0e0f0f0102030405060708090a0b0c0d0e000b200141001046200021020c0e0b410221020c0d0b410321020c0c0b410421020c0b0b410521020c0a0b410621020c090b410721020c080b410821020c070b410921020c060b410a21020c050b410b21020c040b410c21020c030b410d21020c020b410e21020c010b410f21020b2001200210460b890101047f230041206b22022400200241186a2001103c41012103024020022d00184101710d0020022d00192104200241106a2001105420022f01100d0020022f01122105200241086a2001105420022f01080d0020022f010a2101200020053b0102200041066a20043a0000200041046a20013b0100410021030b200020033b0100200241206a24000bb30202027f047e230041d0006b220224002002200110260240027f411120022802004101470d001a410d200120022903082205200241106a2903002204104c41ff0171410d470d001a200241c8006a2004370300200241406b2005370300200241386a200141186a290000370300200241306a200141106a290000370300200241286a200141086a2900003703002002410636021820022001290000370320200241186a2203103920024280800137021c200241e4850436021841c8ff9bb2782003101720012003102220022802202201200228021c4b0d0120022802182001100c1a410f200029031022072005542201200041186a290300220620045420042006511b0d001a2000200720057d370310200041186a200620047d2001ad7d37030041120b2100200241d0006a240020000f0b000b0b0020002001100d417f470bd20101057f230041306b2203240002402001280204220420012802082205490d00200128020021062003410036020c2003200420056b22043602082003200520066a220636020420022802002002280204200341046a22071020200228020820071022200328020c220220032802084b0d00200341046a22072003280204200210212003410036022c20032004360228200320063602242007200341246a1022200141086a2202200328022c20056a360200200041086a200228020036020020002001290200370200200341306a24000f0b000b1000200020012002410f4117416810730b100020002001200241104118416710730b0a0020002001410310720b1b0041e5850420003a000041e4850441003a000041004102106a000b7501017f230041106b22022400200241808001360208200241e4850436020441e4850441003a00000240200141ff0171411246044041e5850441003a0000410221010c010b41e5850441013a00002002410236020c2001200241046a105a200228020c220141818001490d00000b20002001106a000b130041e485044181023b010041014102106a000b930101027f230041106b22022400200241808001360208200241e48504360204024041e58504027f20012d000045044041e4850441003a0000410020012d000122034104460d011a41e5850441013a00002002410236020c2003200141026a2d0000200241046a106b200228020c220141818001490d02000b41e4850441013a000041010b3a0000410221010b20002001106a000b0a0020002001410210720b4a01017f230041106b22012400200141e4850436020441e4850441003a000020014280808180103702082000200141046a1017200128020c2200418180014f0440000b41002000106a000bd80101047f230041106b22012400200142808001370208200141e485043602044100200141046a1017024020012802082202200128020c2203490d00200128020421042001410036020c2001200220036b3602082001200320046a3602042000200141046a22021069200028020820021017200128020c220220012802084f0d00200128020420026a2000410c6a2d00003a00002001200241016a36020c2000290310200041186a290300200141046a102c200128020c220020012802084b0d002004200320012802042000100b1a200141106a24000f0b000b5b01017f230041106b22022400024020002f01004504402001410010460c010b2001410110462002200041066a2d00003a000f20012002410f6a4101102520002f01022001102d200041046a2f01002001102d0b200241106a24000b0d00200041e485042001100f000b4a000240024002400240200041ff017141016b0e03010203000b2002410010462002200110460f0b20024101104620012002105a0f0b2002410210462001200210450f0b2002410310460b0d00410341012000200110531b0b950101027f230041406a22032400027f4101200120022802042002280208103d220441ff01714112470d001a4104210441012001410c6a2d00004101470d001a2003411c6a104b200341146a200241086a280200360200200341186a2001280208360200200341003602082003200229020037020c200341086a103941040b2101200020043a0001200020013a0000200341406b24000b5b01017f230041206b22022400200242808001370204200241e4850436020041d8eac38a782002101720002002101720012002101a2002280208220020022802044b0440000b20022802002000100c1a2002104b200241206a24000bd168020b7f0b7e230041a0066b220024002000418080013602a00241e48504200041a0026a100202400240024002400240024002400240024020002802a0022205418180014f0d0020054104490d03200041e88504360280022000200541046b22063602840241e785042d0000210141e685042d0000210441e585042d000021020240027e02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024041e485042d00002203418b016b0e0b0129290f1529172929290d000b02402003413e6b0e070e292908292903000b0240200341de006b0e031a0a13000b0240200341176b0e021811000b0240200341ea006b0e050929292906000b02400240200341f6006b0e021701000b024020034180016b0e040c2a2a1f000b0240200341cf016b0e03132a11000b0240200341db016b0e05152a2a2a0d000b0240200341ea016b0e021d05000b20034111460d1920034131460d02200341ca00460d1d200341cf00460d1b200341a701460d05200341b901460d07200341c10147200241ff017141d9014772200441ff017141ac0147720d29200141ff01714118460d220c290b200241ff017141c10147200441ff017141104772200141ff017141bf0147720d2841808080807821050c240b200241ff017141e90047200441ff017141f5004772200141ff0171413f47200641044972720d27200041ec85043602800241e88504280200220341107621022003410876210141818080807821050c230b200241ff0171419b0147200441ff017141054772200141ff0171418b0147200641044972720d26200041ec85043602800241e88504280200220341107621022003410876210141828080807821050c220b200241ff017141cd0047200441ff01714199014772200141ff017141c10047720d2541838080807821050c210b200241ff017141f30047200441ff0171412a4772200141ff017141970147720d2441848080807821050c200b200241ff0171411147200441ff0171418a014772200141ff017141da01472006411f4d72720d23200041c8056a41808604290200370300200041f885042902003703c00541f5850433000041f7850431000042108684210c41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341858080807821050c1f0b200241ff0171220541cf00460d18200541ff0047200441ff017141c8004772200141ff017141dc0047720d2241868080807821050c1e0b200241ff017141a30147200441ff017141ea004772200141ff017141d10147720d2141878080807821050c1d0b200241ff01712202410f460d17200241c50147200441ff01714193014772200141ff017141ae01472006411f4d72720d20200041c8056a41808604290200370300200041f885042902003703c00541f5850433000041f7850431000042108684210c41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341888080807821050c1c0b200241ff017141f80147200441ff017141ea014772200141ff017141e20047200641204972720d1f200041c8056a4180860429020037030020004188860436028002200041f885042902003703c00541f5850433000041f7850431000042108684210c41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341898080807821050c1b0b200241ff0171418b0147200441ff017141fc004772200141ff017141a20147720d1e418a8080807821050c1a0b200241ff017141d90047200441ff0171418e014772200141ff017141d80147720d1d418b8080807821050c190b200241ff017141ec0147200441ff017141f3004772200141ff017141ed0047720d1c200041a0036a20004180026a102b20002802a0032203418080808078460d1c20003500a503200041ab036a310000423086200041a9036a3300004220868484210b200341107621022003410876210120002d00a4032104418c8080807821050c180b200241ff0171412347200441ff0171413d4772200141ff017141f40047720d1b200041a0036a20004180026a102820002802a0032203418080808078460d1b200041c8056a200041b8036a290200370300200020002902b0033703c0052003411076210220034108762101200041ad036a330000200041af036a31000042108684210c20002900a503210b20002d00a403210420002802c0032106418d8080807821050c170b200241ff017141cc0147200441ff017141264772200141ff017141fe0047200641204972720d1a200041a8036a220741808604290200370300200041888604360280022000200541246b36028402200041f885042902003703a00341f78504310000210c41f58504330000210e41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d00002103200041b0046a20004180026a102b20002802b0042206418080808078460d1a200e200c42108684210c200041c8056a2007290300370300200020002903a0033703c00520002902b404210d418e8080807821050c160b200241ff017141b70147200441ff017141f0004772200141ff0171412447200641204972720d1920004188066a41808604290200370300200041f8850429020037038006200541c4006b2206415f4b0d1941f78504310000210c41f58504330000210f41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d00002103200041a8036a419c8604290200370300200041b0036a41a486042802003602002000419486042902003703a00320064110490d19418c8604290200210d418886042802002106200041b88604360280022000200541d4006b3602840241b08604290200211041a88604290200210e200041a0056a20004180026a102b20002802a0052205418080808078460d19200041e8056a220720004188066a290300370300200041b8046a2208200041a8036a290300370300200041c0046a2209200041b0036a28020036020020002000290380063703e005200020002903a0033703b004200028028402220a41c100490d19200f200c42108684210c20002902a405210f2000200a41c1006b360284022000200028028002220a41c1006a36028002200041a0026a200a41c10010101a200041c8056a200729030037030020004188046a200829030037030020004190046a2009280200360200200020002903e0053703c005200020002903b004370380040c150b200241ff017141e40147200441ff017141d6004772200141ff017141da0047720d18200041a0036a20004180026a101c20002802a0032203418080808078460d1820003500a503200041ab036a310000423086200041a9036a3300004220868484210b200341107621022003410876210120002d00a403210441908080807821050c140b200241ff017141c00047200441ff017141e2004772200141ff017141c70147720d17200041d0006a20004180026a101220002802500d1741042104200028028402410c6e22012000280254220220012002491b22030440200341aad5aad5004b0d152003410c6c22014100480d15200041c8006a41042001102a20002802482204450d150b41002101200041003602b804200020043602b404200020033602b0042002450d110340200041a0036a20004180026a101c20002802a0032207418080808078460d1820002902a403210b20002802b004200146047f200041b0046a2104230041206b220324000240200141016a220104404104200428020022054101742208200120012008491b2201200141044d1b2201410c6c2108200141abd5aad50049410274210902402005450440200341003602180c010b2003410436021820032005410c6c36021c200320042802043602140b200341086a20092008200341146a10592003280208450d01200328020c1a0b000b200328020c21052004200136020020042005360204200341206a240020002802b404210420002802b8040520010b410c6c20046a2201200b37020420012007360200200020002802b80441016a22013602b804200241016b22020d000b20002802b0042203418080808078460d1720002d00b404210420003500b504200041bb046a310000423086200041b9046a33000042208684840c120b200241ff017141df0147200441ff017141dc004772200141ff017141fb0047720d16200041a0036a20004180026a105b20002f01a0030d1620002801a2032203411076210220034108762101200041a7036a310000210b200041a6036a2d0000210441928080807821050c120b200241ff017141fb0147200441ff017141e5004772200141ff017141f30047720d1541938080807821050c110b200241ff017141a70147200441ff0171418f014772200141ff017141830147720d1441948080807821050c100b200241ff0171413a47200441ff01714195014772200141ff017141f40147200641204972720d13200041c8056a41808604290200370300200041888604360280022000200541246b36028402200041f885042902003703c00541f5850433000041f7850431000042108684210c41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341958080807821050c0f0b200241ff0171410a47200441ff017141264772200141ff0171412547720d1241968080807821050c0e0b200141ff0171200241ff017141aa0147200441ff017141354772720d1141978080807821050c0d0b200241ff01712202450d08200241fe0147200441ff017141b3014772200141ff017141f00047720d1041988080807821050c0c0b200241ff017141f40147200441ff0171413e4772200141ff017141fd0147720d0f200041a0036a20004180026a101820002d00a00322034102460d0f200041c8056a200041b8036a290000370300200020002900b0033703c005200041ad036a330000200041af036a31000042108684210c20002900a503210b20002d00a403210420002f00a203210220002d00a103210120002d00c0032106419a8080807821050c0b0b200241ff0171412247200441ff01714187014772200141ff017141d30047720d0e419b8080807821050c0a0b200241ff017141a40147200441ff0171413c4772200141ff0171418c0147720d0d419c8080807821050c090b200241ff017141f10147200441ff017141244772200141ff0171418a0147720d0c200041a0036a20004180026a102720002d00a40322044102460d0c200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210c20002900a503210b20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210d419e8080807821050c080b200241ff017141c00147200441ff017141e2004772200141ff017141fd0147720d0b200041a0036a20004180026a102720002d00a40322044102460d0b200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210c20002900a503210b20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210d419f8080807821050c070b200241ff017141da0147200441ff0171413b4772200141ff017141b20147200641044972720d0a200041ec8504360280022000200541086b3602840241e88504280200220341107621022003410876210141a18080807821050c060b200441ff0171410947200141ff017141910147720d09200041a0036a20004180026a102720002d00a40322044102460d09200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210c20002900a503210b20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210d419d8080807821050c050b200441ff017141cc0147200141ff0171419d0147722006411049720d08200041f885043602800241f08504290200220e42188641e88504290200220d42288884210b200e422888210c200d422088a72104200d421088a72102200d420888a72101200da7210341998080807821050c040b200441ff017141ae0147200141ff017141800147722006412049720d07200041c8056a41808604290200370300200041888604360280022000200541246b36028402200041f885042902003703c00541f5850433000041f7850431000042108684210c41ed8504290000210b41ec85042d0000210441ea85042f0100210241e985042d0000210141e885042d0000210341a28080807821050c030b200041a0036a20004180026a102720002d00a40322044102460d06200041c8056a200041b8036a290200370300200020002902b0033703c005200041ad036a330000200041af036a31000042108684210c20002900a503210b20002f01a203210220002d00a103210120002d00a003210320002802c003210620003502c403210d41a08080807821050c020b20003500b504200041bb046a310000423086200041b9046a33000042208684840b42ffffffffffffffff0083210b200341107621022003410876210141918080807821050b200041a0016a2010370300200041f0006a200041c8056a2903003703002000418c016a20004188046a29030037020020004194016a20004190046a2802003602002000200e37039801200020002903c0053703682000200029038004370284012000200f3702ac01200041b8016a200041a0026a220741c10010101a200041fc016a20004193056a28000036000020002000280090053600f9012000200b4218882210200c42288684220e370360200020053602a8012000200d37027c2000200636027820002004ad42ff0183422086200b42288684220f200341ff0171200141ff0171410874200241107472722204ad8422113703582000428080013702a402200041e485043602a00241002007101720002802a402220720002802a8022201490d0020002802a00221032000200720016b22073602a00220032001200120036a2203200041a0026a1000200720002802a00222014972200145720d002000200141016b22013602a4032000200341016a3602a0034200210c0240024020032d00000e020100020b200041a0026a200041a0036a105b20002f01a0020d01200041a6026a33010042308620003501a20242108684420184210c20002802a40321010b20014104462001410449720d0020002802a00322032d0004220741044b200141156b416f4b720d00200ca7220941ffff037122014102462001410346720d00200f4220882212a72101200328000021082003290005210f20004198026a220a2003410d6a29000022133703002000200f37039002200020073a008c022000200836028802200020093b0180022000200c42308822143d0186022000200c42108822153e01820202400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240410f2005418080808078732203200341234f1b41016b0e22220102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021000b104d41ff01714105470d2220002000290380023703a002230041106b22022400200241808001360208200241e48504360204410221010240200041a0026a22002f0100410246044041e485044181023b01000c010b2002410136020c41e4850441003a00002000200241046a1069200228020c220141818001490d00000b41002001106a000b104d41ff01714105470d21200041a0026a22012004101b230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a103f200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c290b104d41ff01714105470d2020081067000b104d41ff01714105470d1f20071062000b104d41ff01714105470d1e200041ac026a200041e0006a290300370200200041b4026a200041e8006a290300370200200041bc026a200041f0006a290300370200200020002903583702a402200020004180026a22013602a0022001200041a4026a105c220241ff01714112460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10680b0c220b200041b8026a200a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1068410041121063000b104d41ff01714105470d1c200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1068230041106b22002400200041e4850436020441e4850441003a00002000428080818010370208200f2013200041046a102c200028020c2202418180014f0440000b0c240b104d41ff01714105470d1b230041306b22012400200141186a200041d8006a220241086a290000370200200141206a200241106a290000370200200141286a200241186a290000370200200120004180026a36020c20012002290000370210200141106a10522102200141306a2400200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106820021062000b104d41ff01714105470d1a230041406a22012400200141286a200041d8006a220241086a290000370200200141306a200241106a290000370200200141386a200241186a290000370200200120004180026a36021c200120022900003702202001200141206a1026200141106a290300210b2001290308210c200020012903003703002000200c370308200041106a2202200b370300200141406b24002002290300210b2000290308210c2000290300210d200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1068230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200d50044041e5850441003a0000410221020c010b41e5850441013a00002000410236020c200c200b200041046a102c200028020c220241818001490d00000b0c220b104d41ff01714105470d19200041a0026a2201104b20004180026a2001105c220241ff01714112460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10680b0c1d0b104d41ff01714105470d18230041206b220024002000104b200010522101200041206a240020011062000b104d41ff01714105470d1720002012200e422086843702a403200020043602a003200041a0026a2201200041a0036a22002802042000280208103a230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a1020200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c1f0b104d41ff01714105470d16200041b4036a200041ec006a280200360200200041c0036a200041f8006a280200360200200041a8036a200041e0006a280200360200200020002902643702ac03200020002903703703b803200020002903583703a00341012102200041a1026a104b200041013a00a00202404185b99ed07a200041a0026a106c220141ff01714103470d00200041a0026a200041a0036a2201412410101a20004180026a2001200041ac026a200041b8026a2203103b220141ff01714107470d00200320004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106841002102410721010b230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200141ff0171410746044041e5850441003a0000410221010c010b41e5850441013a00002000410236020c2001200041046a1045200028020c220141818001490d00000b20022001106a000b104d41ff01714105470d15200041d8046a200d370200200041d4046a22012006360200200041bc046a200041e0006a2202290300370200200041c4046a200041e8006a2203290300370200200041cc046a200041f0006a2204290300370200200020002903583702b404200020004180026a3602b004200041186a200041b4046a1047200041206a290300210b2000290318210c200041c0036a104a200041e8036a200b370300200041b8036a2004290300370300200041b0036a2003290300370300200041a8036a2002290300370300200041f8036a200041dc046a2802003602002000200c3703e003200020002903583703a003200020012902003703f00320004198066a2202420037030020004190066a2203420037030020004188066a2204420037030020004200370380062000428080013702a402200041e485043602a002200041a0036a200041a0026a104820002802a802220120002802a4024b0d1520002802a002200120004180066a1008200041a0026a2201200041a0036a41d00010101a20004188046a200041fc036a28020036020020004194046a20042903003702002000419c046a2003290300370200200041a4046a2002290300370200200020002902f40337038004200020002903800637028c0420002802f0032102200041f4026a20004180046a412c10101a200020023602f0022002418080808078462103230041106b22002400200041808001360208200041e4850436020402402001280250220241818080807847044041e4850441003a0000024020024180808080784704402000410236020c41e5850441003a00002001200041046a22021048200141e0006a200210220c010b41e5850441013a00002000410236020c20012d0000200041046a10490b200028020c220241818001490d01000b41e485044181023b0100410221020b20032002106a000b104d41ff01714105470d14200041a0036a200041ac016a220141d40010101a200041a0026a200041d8006a41d00010101a200041fc026a200141086a280200360200200020053602f002200020012902003702f402200041b0046a200041ac036a41c10010101a200041a0056a2202104a41072101027f0240200041c0026a200210500d00200041286a200041a0026a1047410821012000290328220b20002903e00285200041306a290300220c200041e8026a29030085844200520d00200041d8056a4200370300200041d0056a4200370300200041c8056a4200370300200042003703c00520004280800137028404200041e4850436028004200041a0026a20004180046a104820002802880422012000280284044b0d162000280280042001200041c0056a2203100820004180046a210241002101037f2001412146047f200205200120026a41003a0000200141016a21010c010b0b1a41092101410c200041b0046a20032002100622022002410c4f1b0d0020004198066a2201420037030020004190066a2202420037030020004188066a22034200370300200042003703800620004180046a412120004180066a1008200041f8056a2001290300370300200041f0056a2002290300370300200041e8056a200329030037030020002000290380063703e005410a2101200041a0026a200041e0056a10500d0020004280800137028404200041e4850436028004419ade91f67920004180046a22011017200041a0026a2001102220002802840422032000280288042201490d16200028028004210220004100360288042000200320016b360284042000200120026a36028004200b42017c220b200c200b50ad7c20004180046a102c20002802880422032000280284044b0d16200220012000280280042003100b1a20004199046a200041f0006a29030037000020004191046a200041e8006a29030037000020004189046a200041e0006a290300370000200020002903583700810441012101200041013a0080044185b99ed07a20004180046a1053450d00200020002902f4023702e00520004180046a200041e0056a102820002802800422014180808080784704402000418f066a220220004194046a28000036000020004188066a2000418d046a29000037030020004198056a200041a0046a2802003602002000200029008504220b37038006200041fc046a200028008306360000200020002902980437039005200020002d0084043a00f804200020013602f4042000200b3e00f90420004188056a200228000036020020002000290087063703800520004180026a200041f4046a20004180056a20004190056a103b220141ff01714107470d01200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1068410c210141000c020b410521010b41010b2103230041106b22002400200041808001360208200041e4850436020441e4850441003a00000240200141ff0171410c46044041e5850441003a0000410221020c010b41e5850441013a00002000410236020c2001200041046a1049200028020c220241818001490d00000b20032002106a000b104d41ff01714105470d13200041ac026a200041e0006a280200360200200020002903583702a402200020004180026a22013602a002200041386a2001200041a4026a106d20002d0039210220002d003822034104472201450440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10680b200041003a00a002200020023a00a202200020033a00a1020c180b104d41ff01714105470d122010a7410c6c2102027f024003402002450d0120012802002203418080808078460d01200020033602a002200020012902043702a4022002410c6b21022001410c6a2101200041406b20004180026a200041a0026a106d20002d004022034104460d000b20002d0041210141010c010b200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10684104210341000b2102200020013a00a202200020033a00a1020c180b104d41ff01714105470d1141012106200041a1026a104b200041013a00a002024041a5c1a6ab7e200041a0026a106c220341ff01714103470d004104210320070d0041052103200141ff017145200241ffff0371200441ffff03714d720d002000200b3c008702200020013a008602200020023b018402200020043b018202200041013b018002200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106841122103410021060b200620031063000b104d41ff01714105470d1041012102200041a1026a104b200041013a00a0024201210b4200210d024041a5c1a6ab7e200041a0026a106c220141ff01714103470d00200041a0026a20004180026a104420002d00a002044020003100a102420886210d20002d00a20221010c010b20003502a402210b200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200b422086210b200041a0026a1068410021020b2000200b200d7c2001ad42ff01834210867c3703a002230041106b22012400200141808001360208200141e48504360204410221030240200041a0026a22002d00002204410247044041e4850441003a0000024020044504402001410236020c41e5850441003a00002000280204200141046a10170c010b41e5850441013a00002001410236020c20002d0001200041026a2d0000200141046a106b0b200128020c220341818001490d01000b41e485044181023b01000b20022003106a000b104d41ff01714105470d0f41012101200041a1026a104b200041013a00a002027f410041a5c1a6ab7e200041a0026a106c220341ff01714103470d001a200741014704404104210341010c010b200041023a008c02200041023602a002200020083602a402200041a0026a1039200941ffff03714504404106210341010c010b200020143c00a8022000200c4220883d01a602200020153d01a40220004180808080783602a002200020083602ac02200041a0036a200041a0026a102f20002d00a003044020002d00a103210341020c010b200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10684100210141040b2102200020033a00a202200020023a00a102200041003a00a0020c140b104d41ff01714105470d0e200041a1026a104b200041013a00a002027f41014100200041a0026a106c220241ff01714103470d001a200041b9026a200041f0006a290300370000200041b1026a200041e8006a290300370000200041a9026a200041e0006a290300370000200020002903583700a102200041013a00a00241014185b99ed07a200041a0026a1042220241ff01714103470d001a200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10684103210241000b20021061000b104d41ff01714105470d0d4185b99ed07a1067000b104d41ff01714105470d0c41a5c1a6ab7e1067000b104d41ff01714105470d0b200041a1026a104b200041013a00a0024100200041a0026a106c220141ff01714103460d0c200020013a00a202200041003b01a0024101200041a0026a1065000b104d41ff01714105470d0a41012102200041a1026a104b200041013a00a0024103210102404100200041a0026a106c220341ff01714103470440410021010c010b200041a0026a2204104b20042011200e104c41ff0171410d470d00200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106841042101410021020b200020033a00a202200020013a00a1020c100b104d41ff01714105470d09200020004180026a3602a002200041a4026a200041d8006a412110102102200041b0046a2203101641012101200041a1036a104b200041013a00a003027f41002003200041a0036a104e0d001a200041a0036a10164101200241808004104f0d001a20021019200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10684100210141020b2100200120001066000b104d41ff01714105470d08200041a0036a22021016200041a1026a104b200041013a00a002410021012002200041a0026a104e2202450440200041a0026a22011016418080041019200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a00220011068410221010b200220011066000b104d41ff01714105470d07200041a0026a22014101721016200041003a00a002230041106b22002400200041808001360208200041e48504360204024020012d0000044041e485044181023b0100410221020c010b41e4850441003a00002000410136020c200141016a200041046a101a200028020c220241818001490d00000b0c0f0b104d41ff01714105470d06200020004180026a3602a002200041a4026a200041d8006a412810101a20002802a402200041a8026a22011043220241ff01714103460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200120004188026a29030037030020002000290380023703a002200041a0026a10680b0c0d0b104d41ff01714105470d0541012102200041a1026a104b200041013a00a002410021010240200041d8006a4104722203200041a0026a104e0d0020042003106c220141ff01714103470d0020042003106e200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a106841002102410321010b200220011061000b104d41ff01714105470d042004200041d8006a4104721042220241ff01714103460440200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a10680b0c0b0b104d41ff01714105470d03200041d8006a2200280200200041046a10531062000b104d41ff01714105470d022004102e1067000b104d41ff01714105470d01200041ac026a200041e0006a290300370200200041b4026a200041e8006a290300370200200041bc026a200041f0006a290300370200200020002903583702a402200020004180026a3602a002200041b0046a2201101641012102200041a1036a104b200041013a00a003027f4181808080782001200041a0036a104e0d001a418080808078410c200041a4026a100722012001410c4f1b0d001a200041b8026a20004198026a290300370300200041b0026a20004190026a290300370300200041a8026a20004188026a29030037030020002000290380023703a002200041a0026a1068410021024183808080780b2101200041003a00a402200020013602a002230041106b22012400200141808001360208200141e48504360204024002400240200041a0026a2200280200220341848080807847044041e4850441003a0000200341838080807846044041e5850441003a0000410221010c040b41e5850441013a000002400240200341ffffffff076b41002003418380808078481b41016b0e03040001030b41e6850441023a000041e7850420002d00043a0000410421010c040b41e6850441033a000041e7850420002d00043a0000410421010c030b41e485044181023b0100410221010c020b2001410336020c41e6850441003a000020002802042000280208200141046a1020200128020c220141818001490d01000b41e6850441013a0000410321010b20022001106a000b104d41ff01714105460d020b000b200041a0026a2201104b230041106b22002400200042808001370208200041e485043602042001200041046a10222000280208200028020c490440000b2000280204100e000b200041a0026a22012004101d230041106b22002400200041808001360208200041e48504360204024041e58504027f2001280200220241818080807847044041e4850441003a000041002002418080808078460d011a41e5850441013a00002000410236020c20012802042001280208200041046a1041200028020c220241818001490d02000b41e4850441013a000041010b3a0000410221020b0c050b1064000b200241ff017141124720021063000b2001200041a0026a1065000b200041003a00a0022002200041a0026a1065000b200241ff017141034720021061000b41002002106a000b9f0301087f230041d0006b220024000240104d41ff01714105470d0020004180800136022841e48504200041286a100220002802282201418180014f0d00024020014104490d0041e485042d0000419b014741e585042d000041ae01477241e685042d0000419d01477241e785042d000041de0047720d00200041086a104b200041c1006a2201200041206a2202290000370000200041396a2203200041186a2204290000370000200041316a2205200041106a220629000037000020002000290008370029200041013a0028200041286a2207101920012002290000370000200320042900003700002005200629000037000020002000290008370029200041013a00284100200710534504404100200041286a10710b20012002290000370000200320042900003700002005200629000037000020002000290008370029200041013a002841a5c1a6ab7e200041286a104241ff01714103470d01200041406b420037030020004200370338200041003a00342000410036023020004200370328200041286a106841e4850441003b010041004102106a000b1064000b000b6501027f230041106b22022400200242808001370208200241e4850436020441d8eac38a78200241046a2203101720002003101720012003101a200228020c220020022802084b0440000b200228020422012000200020016a4100100b1a200241106a24000b3d01017f41e4850441003a00004102210341e58504200141ff0171200247047f41e6850420013a00004103210341010541000b3a000020002003106a000b890201077f230041306b2206240002402001280204220720012802082208490d00200128020021092006410036020c2006200720086b220a3602082006200820096a220936020420022802002002280204200641046a1020200628020c220720054b0d00200720046a220b20062802084b0d002006280204220c20076a220720022802082202290000370000200720036a200220036a290000370000200741086a200241086a290000370000200641046a2202200c200b10212006410036022c2006200a360228200620093602242002200641246a1022200141086a2202200628022c20086a360200200041086a200228020036020020002001290200370200200641306a24000f0b000b0bc405010041a180040bbb05712f5f68656164210001000200000023000100050000005f7461696c00000021000100020000003800010005000000436f6e74726163743a3a50617274696369706174696f6e52656769737465726564436f6e74726163743a3a50617274696369706174696f6e526567697374657265643a3a726166666c655f6964436f6e74726163743a3a50617274696369706174696f6e526567697374657265643a3a7061727469636970616e74436f6e74726163743a3a526166666c655374617274656400000000010000000000cb000100436f6e74726163743a3a526166666c65537461727465643a3a726166666c655f6964436f6e74726163743a3a526166666c65456e646564436f6e74726163743a3a526166666c65456e6465643a3a726166666c655f6964436f6e74726163743a3a526573756c74526563656976656400000001000000000047010100436f6e74726163743a3a526573756c7452656365697665643a3a726166666c655f6964436f6e74726163743a3a57696e6e65727352657665616c6564436f6e74726163743a3a57696e6e65727352657665616c65643a3a726166666c655f6964436f6e74726163743a3a50656e64696e67526577617264000000010000000000cc010100436f6e74726163743a3a50656e64696e675265776172643a3a6163636f756e74436f6e74726163743a3a52657761726473436c61696d6564000001000000000010020100436f6e74726163743a3a52657761726473436c61696d65643a3a6163636f756e74436f6e74726163743a3a4d657373616765517565756564000001000000000055020100436f6e74726163743a3a4d6573736167655175657565643a3a6964436f6e74726163743a3a4d65737361676550726f636573736564546f436f6e74726163743a3a4d65737361676550726f636573736564546f3a3a69640d01020304050607080a0b0c09","build_info":{"build_mode":"Release","cargo_contract_version":"3.2.0","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"lotto_contract","version":"0.1.1","authors":["guigou"]},"spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":10},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":6},"blockNumber":{"displayName":["BlockNumber"],"type":3},"chainExtension":{"displayName":["ChainExtension"],"type":67},"hash":{"displayName":["Hash"],"type":56},"maxEventTopics":4,"timestamp":{"displayName":["Timestamp"],"type":66}},"events":[{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":true,"label":"participant","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"docs":["Event emitted when the participant is registered"],"label":"ParticipationRegistered"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}}],"docs":["Event emitted when the raffle is started"],"label":"RaffleStarted"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}}],"docs":["Event emitted when the raffle is ended"],"label":"RaffleEnded"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":false,"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"docs":["Event emitted when the raffle result is received"],"label":"ResultReceived"},{"args":[{"docs":[],"indexed":true,"label":"raffle_id","type":{"displayName":["RaffleId"],"type":3}},{"docs":[],"indexed":false,"label":"winners","type":{"displayName":["Vec"],"type":9}}],"docs":["Event emitted when the winners are revealed"],"label":"WinnersRevealed"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":6}}],"docs":["Event emitted when a reward is pending"],"label":"PendingReward"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":6}}],"docs":["Event emitted when a user claim rewards"],"label":"RewardsClaimed"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":3}},{"docs":[],"indexed":false,"label":"data","type":{"displayName":["Vec"],"type":5}}],"docs":["Event emitted when a message is pushed in the queue"],"label":"MessageQueued"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":3}}],"docs":["Event emitted when a message is processed"],"label":"MessageProcessedTo"}],"lang_error":{"displayName":["ink","LangError"],"type":11},"messages":[{"args":[{"label":"numbers","type":{"displayName":["Vec"],"type":8}}],"default":false,"docs":[],"label":"participate","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0xd1e4565a"},{"args":[{"label":"numbers","type":{"displayName":["Vec"],"type":18}}],"default":false,"docs":[],"label":"participate_batch","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x184062c7"},{"args":[{"label":"config","type":{"displayName":["Config"],"type":19}}],"default":false,"docs":[],"label":"set_config","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0xcfdf5c7b"},{"args":[],"default":false,"docs":[],"label":"start_raffle","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0x60fb6573"},{"args":[],"default":false,"docs":[],"label":"complete_raffle","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0xdba78f83"},{"args":[{"label":"account_id","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"register_attestor","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0x8f3a95f4"},{"args":[],"default":false,"docs":[],"label":"get_attestor_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x760a2625"},{"args":[],"default":false,"docs":[],"label":"get_manager_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x91aa3500"},{"args":[],"default":false,"docs":[],"label":"terminate_me","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x17feb370"},{"args":[{"label":"value","type":{"displayName":["Balance"],"type":6}}],"default":false,"docs":[],"label":"withdraw","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":12},"selector":"0x410fcc9d"},{"args":[],"default":false,"docs":[],"label":"RaffleConfig::get_config","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x77c110bf"},{"args":[],"default":false,"docs":[],"label":"Raffle::get_current_raffle_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x444d9941"},{"args":[],"default":false,"docs":[],"label":"Raffle::get_current_status","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0xeb732a97"},{"args":[{"label":"raffle_id","type":{"displayName":["raffle_external","GetWinnersInput1"],"type":3}}],"default":false,"docs":[],"label":"Raffle::get_winners","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":31},"selector":"0x8b69753f"},{"args":[{"label":"raffle_id","type":{"displayName":["raffle_external","GetResultsInput1"],"type":3}}],"default":false,"docs":[],"label":"Raffle::get_results","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":33},"selector":"0x319b058b"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","GetPendingRewardsFromInput1"],"type":0}}],"default":false,"docs":[" return the pending rewards for a given account."],"label":"RewardManager::get_pending_rewards_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x6af8ea62"},{"args":[],"default":false,"docs":[" return the total pending reward"],"label":"RewardManager::get_total_pending_rewards","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":37},"selector":"0xb9a36ad1"},{"args":[],"default":false,"docs":[],"label":"RewardManager::fund","mutates":true,"payable":true,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0x6e7f485c"},{"args":[],"default":false,"docs":[" claim all pending rewards for the current account"," After claiming, there is not anymore pending rewards for this account"],"label":"RewardManager::claim","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0x5f8b7ca2"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","ClaimFromInput1"],"type":0}}],"default":false,"docs":[" claim all pending rewards for the given account"," After claiming, there is not anymore pending rewards for this account"],"label":"RewardManager::claim_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0xa7118ada"},{"args":[],"default":false,"docs":[" return true if the current account has pending rewards"],"label":"RewardManager::has_pending_rewards","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0x80598ed8"},{"args":[{"label":"from","type":{"displayName":["rewardmanager_external","HasPendingRewardsFromInput1"],"type":0}}],"default":false,"docs":[" return true if the given account has pending rewards"],"label":"RewardManager::has_pending_rewards_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0x41c593ae"},{"args":[{"label":"conditions","type":{"displayName":["rollupanchor_external","RollupCondEqInput1"],"type":40}},{"label":"updates","type":{"displayName":["rollupanchor_external","RollupCondEqInput2"],"type":40}},{"label":"actions","type":{"displayName":["rollupanchor_external","RollupCondEqInput3"],"type":43}}],"default":false,"docs":[],"label":"RollupAnchor::rollup_cond_eq","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0x95233d74"},{"args":[{"label":"key","type":{"displayName":["rollupanchor_external","GetValueInput1"],"type":5}}],"default":false,"docs":[],"label":"RollupAnchor::get_value","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0xdfec736d"},{"args":[{"label":"request","type":{"displayName":["metatransaction_external","MetaTxRollupCondEqInput1"],"type":48}},{"label":"signature","type":{"displayName":["metatransaction_external","MetaTxRollupCondEqInput2"],"type":49}}],"default":false,"docs":[],"label":"MetaTransaction::meta_tx_rollup_cond_eq","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0x8eb77024"},{"args":[{"label":"from","type":{"displayName":["metatransaction_external","PrepareInput1"],"type":0}},{"label":"data","type":{"displayName":["metatransaction_external","PrepareInput2"],"type":5}}],"default":false,"docs":[],"label":"MetaTransaction::prepare","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0x3ecc267e"},{"args":[],"default":false,"docs":[],"label":"Ownable::owner","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":57},"selector":"0x4fa43c8c"},{"args":[],"default":false,"docs":[],"label":"Ownable::renounce_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0x5e228753"},{"args":[{"label":"new_owner","type":{"displayName":["ownable_external","TransferOwnershipInput1"],"type":58}}],"default":false,"docs":[],"label":"Ownable::transfer_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0x11f43efd"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","GetRoleAdminInput1"],"type":3}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","RevokeRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","RevokeRoleInput2"],"type":58}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","RenounceRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","RenounceRoleInput2"],"type":58}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","HasRoleInput1"],"type":3}},{"label":"address","type":{"displayName":["accesscontrol_external","HasRoleInput2"],"type":58}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["accesscontrol_external","GrantRoleInput1"],"type":3}},{"label":"account","type":{"displayName":["accesscontrol_external","GrantRoleInput2"],"type":58}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0x4ac062fd"},{"args":[{"label":"new_code_hash","type":{"displayName":["upgradeable_external","SetCodeHashInput1"],"type":56}}],"default":false,"docs":[],"label":"Upgradeable::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":62},"selector":"0x1700ae80"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x6f713913","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x6f713913","ty":0}},"name":"0"}],"name":"Some"}}}},"root_key":"0x6f713913"}},"name":"owner"}],"name":"Data"}},"name":"ownable"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x1f2cf4ac","ty":3}},"root_key":"0x1f2cf4ac"}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x8150f558","ty":4}},"root_key":"0x8150f558"}},"name":"members"}],"name":"Data"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xdd3d1ad8","ty":5}},"root_key":"0xdd3d1ad8"}},"name":"kv_store"}],"name":"Data"}},"name":"rollup_anchor"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x9ec46f1a","ty":6}},"root_key":"0x9ec46f1a"}},"name":"nonces"}],"name":"Data"}},"name":"meta_transaction"},{"layout":{"struct":{"fields":[{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":2}},"name":"nb_numbers"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"min_number"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"max_number"}],"name":"Config"}},"name":"0"}],"name":"Some"}}}},"name":"config"}],"name":"Data"}},"name":"config"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":3}},"name":"current_raffle_id"},{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Status","variants":{"0":{"fields":[],"name":"NotStarted"},"1":{"fields":[],"name":"Ongoing"},"2":{"fields":[],"name":"WaitingResults"},"3":{"fields":[],"name":"WaitingWinners"},"4":{"fields":[],"name":"Closed"}}}},"name":"status"},{"layout":{"root":{"layout":{"leaf":{"key":"0x1d32f93c","ty":8}},"root_key":"0x1d32f93c"}},"name":"results"},{"layout":{"root":{"layout":{"leaf":{"key":"0x3d8da523","ty":9}},"root_key":"0x3d8da523"}},"name":"winners"}],"name":"Data"}},"name":"lotto"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x8646ffc8","ty":6}},"root_key":"0x8646ffc8"}},"name":"pending_rewards"},{"layout":{"leaf":{"key":"0x00000000","ty":6}},"name":"total_pending_rewards"}],"name":"Data"}},"name":"reward"}],"name":"Contract"}},"root_key":"0x00000000"}},"types":[{"id":0,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":1,"type":{"def":{"array":{"len":32,"type":2}}}},{"id":2,"type":{"def":{"primitive":"u8"}}},{"id":3,"type":{"def":{"primitive":"u32"}}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"sequence":{"type":2}}}},{"id":6,"type":{"def":{"primitive":"u128"}}},{"id":7,"type":{"def":{"primitive":"u16"}}},{"id":8,"type":{"def":{"sequence":{"type":7}}}},{"id":9,"type":{"def":{"sequence":{"type":0}}}},{"id":10,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":11}],"path":["Result"]}},{"id":11,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":12,"type":{"def":{"variant":{"variants":[{"fields":[{"type":13}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":13},{"name":"E","type":11}],"path":["Result"]}},{"id":13,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":14}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":14}],"path":["Result"]}},{"id":14,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":0,"name":"AccessControlError"},{"fields":[{"type":16,"typeName":"RaffleError"}],"index":1,"name":"RaffleError"},{"fields":[{"type":17,"typeName":"RollupAnchorError"}],"index":2,"name":"RollupAnchorError"},{"index":3,"name":"TransferError"}]}},"path":["lotto_contract","lotto_contract","ContractError"]}},{"id":15,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["openbrush_contracts","traits","errors","access_control","AccessControlError"]}},{"id":16,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":0,"name":"AccessControlError"},{"index":1,"name":"IncorrectRaffle"},{"index":2,"name":"IncorrectStatus"},{"index":3,"name":"IncorrectConfig"},{"index":4,"name":"ConfigNotSet"},{"index":5,"name":"DifferentConfig"},{"index":6,"name":"IncorrectNbNumbers"},{"index":7,"name":"IncorrectNumbers"},{"index":8,"name":"DifferentResults"},{"index":9,"name":"ExistingResults"},{"index":10,"name":"ExistingWinners"},{"index":11,"name":"TransferError"},{"index":12,"name":"AddOverFlow"},{"index":13,"name":"SubOverFlow"},{"index":14,"name":"DivByZero"},{"index":15,"name":"NoReward"}]}},"path":["lotto","traits","error","RaffleError"]}},{"id":17,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidPopTarget"},{"index":1,"name":"ConditionNotMet"},{"index":2,"name":"FailedToDecode"},{"index":3,"name":"UnsupportedAction"},{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":4,"name":"AccessControlError"}]}},"path":["phat_rollup_anchor_ink","traits","rollup_anchor","RollupAnchorError"]}},{"id":18,"type":{"def":{"sequence":{"type":8}}}},{"id":19,"type":{"def":{"composite":{"fields":[{"name":"nb_numbers","type":2,"typeName":"u8"},{"name":"min_number","type":7,"typeName":"Number"},{"name":"max_number","type":7,"typeName":"Number"}]}},"path":["lotto","traits","config","Config"]}},{"id":20,"type":{"def":{"variant":{"variants":[{"fields":[{"type":21}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":21},{"name":"E","type":11}],"path":["Result"]}},{"id":21,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":16}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":16}],"path":["Result"]}},{"id":22,"type":{"def":{"variant":{"variants":[{"fields":[{"type":23}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":23},{"name":"E","type":11}],"path":["Result"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"fields":[{"type":3}],"index":0,"name":"Ok"},{"fields":[{"type":14}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":3},{"name":"E","type":14}],"path":["Result"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":25}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":25},{"name":"E","type":11}],"path":["Result"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":15}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":15}],"path":["Result"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"fields":[{"type":3}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":3},{"name":"E","type":11}],"path":["Result"]}},{"id":27,"type":{"def":{"variant":{"variants":[{"fields":[{"type":28}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":28},{"name":"E","type":11}],"path":["Result"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":19}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":19}],"path":["Option"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":30}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":30},{"name":"E","type":11}],"path":["Result"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"index":0,"name":"NotStarted"},{"index":1,"name":"Ongoing"},{"index":2,"name":"WaitingResults"},{"index":3,"name":"WaitingWinners"},{"index":4,"name":"Closed"}]}},"path":["lotto","traits","raffle","Status"]}},{"id":31,"type":{"def":{"variant":{"variants":[{"fields":[{"type":32}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":32},{"name":"E","type":11}],"path":["Result"]}},{"id":32,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":33,"type":{"def":{"variant":{"variants":[{"fields":[{"type":34}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":34},{"name":"E","type":11}],"path":["Result"]}},{"id":34,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":8}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":8}],"path":["Option"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"fields":[{"type":36}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":36},{"name":"E","type":11}],"path":["Result"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":6}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":6}],"path":["Option"]}},{"id":37,"type":{"def":{"variant":{"variants":[{"fields":[{"type":6}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":6},{"name":"E","type":11}],"path":["Result"]}},{"id":38,"type":{"def":{"variant":{"variants":[{"fields":[{"type":39}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":39},{"name":"E","type":11}],"path":["Result"]}},{"id":39,"type":{"def":{"primitive":"bool"}}},{"id":40,"type":{"def":{"sequence":{"type":41}}}},{"id":41,"type":{"def":{"tuple":[5,42]}}},{"id":42,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":5}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":5}],"path":["Option"]}},{"id":43,"type":{"def":{"sequence":{"type":44}}}},{"id":44,"type":{"def":{"variant":{"variants":[{"fields":[{"type":5,"typeName":"Vec"}],"index":0,"name":"Reply"},{"fields":[{"type":3,"typeName":"QueueIndex"}],"index":1,"name":"SetQueueHead"},{"fields":[{"type":0,"typeName":"AccountId"}],"index":2,"name":"GrantAttestor"},{"fields":[{"type":0,"typeName":"AccountId"}],"index":3,"name":"RevokeAttestor"}]}},"path":["phat_rollup_anchor_ink","traits","rollup_anchor","HandleActionInput"]}},{"id":45,"type":{"def":{"variant":{"variants":[{"fields":[{"type":46}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":46},{"name":"E","type":11}],"path":["Result"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":17}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":17}],"path":["Result"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"fields":[{"type":42}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":42},{"name":"E","type":11}],"path":["Result"]}},{"id":48,"type":{"def":{"composite":{"fields":[{"name":"from","type":0,"typeName":"AccountId"},{"name":"to","type":0,"typeName":"AccountId"},{"name":"nonce","type":6,"typeName":"Nonce"},{"name":"data","type":5,"typeName":"Vec"}]}},"path":["phat_rollup_anchor_ink","traits","meta_transaction","ForwardRequest"]}},{"id":49,"type":{"def":{"array":{"len":65,"type":2}}}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":51}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":51},{"name":"E","type":11}],"path":["Result"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":52}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":52}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidDestination"},{"index":1,"name":"NonceTooLow"},{"index":2,"name":"IncorrectSignature"},{"index":3,"name":"PublicKeyNotMatch"},{"index":4,"name":"PublicKeyIncorrect"},{"fields":[{"type":17,"typeName":"RollupAnchorError"}],"index":5,"name":"RollupAnchorError"}]}},"path":["phat_rollup_anchor_ink","traits","meta_transaction","MetaTransactionError"]}},{"id":53,"type":{"def":{"variant":{"variants":[{"fields":[{"type":54}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":54},{"name":"E","type":11}],"path":["Result"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"fields":[{"type":55}],"index":0,"name":"Ok"},{"fields":[{"type":52}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":55},{"name":"E","type":52}],"path":["Result"]}},{"id":55,"type":{"def":{"tuple":[48,56]}}},{"id":56,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":57,"type":{"def":{"variant":{"variants":[{"fields":[{"type":58}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":58},{"name":"E","type":11}],"path":["Result"]}},{"id":58,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":59,"type":{"def":{"variant":{"variants":[{"fields":[{"type":60}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":60},{"name":"E","type":11}],"path":["Result"]}},{"id":60,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":61}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":61}],"path":["Result"]}},{"id":61,"type":{"def":{"variant":{"variants":[{"index":0,"name":"CallerIsNotOwner"},{"index":1,"name":"NewOwnerIsNotSet"}]}},"path":["openbrush_contracts","traits","errors","ownable","OwnableError"]}},{"id":62,"type":{"def":{"variant":{"variants":[{"fields":[{"type":63}],"index":0,"name":"Ok"},{"fields":[{"type":11}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":63},{"name":"E","type":11}],"path":["Result"]}},{"id":63,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":64}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":64}],"path":["Result"]}},{"id":64,"type":{"def":{"variant":{"variants":[{"fields":[{"type":65,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":61,"typeName":"OwnableError"}],"index":2,"name":"OwnableError"},{"fields":[{"type":15,"typeName":"AccessControlError"}],"index":3,"name":"AccessControlError"}]}},"path":["openbrush_contracts","traits","errors","upgradeable","UpgradeableError"]}},{"id":65,"type":{"def":{"primitive":"str"}}},{"id":66,"type":{"def":{"primitive":"u64"}}},{"id":67,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":"4"} \ No newline at end of file diff --git a/ink/artifacts/lotto_contract.json b/ink/artifacts/lotto_contract.json index 5629c00..0068dc1 100644 --- a/ink/artifacts/lotto_contract.json +++ b/ink/artifacts/lotto_contract.json @@ -1,6 +1,6 @@ { "source": { - "hash": "0x402e7e405a9f83996882537282f128d2eccdb0a6cfadd50c85b417439914b4aa", + "hash": "0x6c99447555ef59ba8e192d052da9c14b61a2caa20447e09b31c6487ecb763b78", "language": "ink! 4.3.0", "compiler": "rustc 1.76.0", "build_info": { @@ -15,7 +15,7 @@ }, "contract": { "name": "lotto_contract", - "version": "0.1.0", + "version": "0.1.1", "authors": [ "guigou" ] @@ -388,6 +388,32 @@ }, "selector": "0x184062c7" }, + { + "args": [ + { + "label": "config", + "type": { + "displayName": [ + "Config" + ], + "type": 19 + } + } + ], + "default": false, + "docs": [], + "label": "set_config", + "mutates": true, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 20 + }, + "selector": "0xcfdf5c7b" + }, { "args": [], "default": false, @@ -400,7 +426,7 @@ "ink", "MessageResult" ], - "type": 19 + "type": 22 }, "selector": "0x60fb6573" }, @@ -442,7 +468,7 @@ "ink", "MessageResult" ], - "type": 21 + "type": 24 }, "selector": "0x8f3a95f4" }, @@ -458,7 +484,7 @@ "ink", "MessageResult" ], - "type": 23 + "type": 26 }, "selector": "0x760a2625" }, @@ -474,7 +500,7 @@ "ink", "MessageResult" ], - "type": 23 + "type": 26 }, "selector": "0x91aa3500" }, @@ -520,33 +546,6 @@ }, "selector": "0x410fcc9d" }, - { - "args": [ - { - "label": "config", - "type": { - "displayName": [ - "raffleconfig_external", - "SetConfigInput1" - ], - "type": 24 - } - } - ], - "default": false, - "docs": [], - "label": "RaffleConfig::set_config", - "mutates": true, - "payable": false, - "returnType": { - "displayName": [ - "ink", - "MessageResult" - ], - "type": 25 - }, - "selector": "0x8c445a93" - }, { "args": [], "default": false, @@ -567,7 +566,7 @@ "args": [], "default": false, "docs": [], - "label": "Raffle::get_current_status", + "label": "Raffle::get_current_raffle_id", "mutates": false, "payable": false, "returnType": { @@ -575,15 +574,15 @@ "ink", "MessageResult" ], - "type": 29 + "type": 26 }, - "selector": "0xeb732a97" + "selector": "0x444d9941" }, { "args": [], "default": false, "docs": [], - "label": "Raffle::get_current_raffle_id", + "label": "Raffle::get_current_status", "mutates": false, "payable": false, "returnType": { @@ -591,9 +590,9 @@ "ink", "MessageResult" ], - "type": 23 + "type": 29 }, - "selector": "0x444d9941" + "selector": "0xeb732a97" }, { "args": [ @@ -650,29 +649,41 @@ "selector": "0x319b058b" }, { - "args": [], + "args": [ + { + "label": "from", + "type": { + "displayName": [ + "rewardmanager_external", + "GetPendingRewardsFromInput1" + ], + "type": 0 + } + } + ], "default": false, - "docs": [], - "label": "RewardManager::fund", + "docs": [ + " return the pending rewards for a given account." + ], + "label": "RewardManager::get_pending_rewards_from", "mutates": true, - "payable": true, + "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 25 + "type": 35 }, - "selector": "0x6e7f485c" + "selector": "0x6af8ea62" }, { "args": [], "default": false, "docs": [ - " claim all pending rewards for the current account", - " After claiming, there is not anymore pending rewards for this account" + " return the total pending reward" ], - "label": "RewardManager::claim", + "label": "RewardManager::get_total_pending_rewards", "mutates": true, "payable": false, "returnType": { @@ -680,35 +691,34 @@ "ink", "MessageResult" ], - "type": 25 + "type": 37 }, - "selector": "0x5f8b7ca2" + "selector": "0xb9a36ad1" }, { "args": [], "default": false, - "docs": [ - " return true if the current account has pending rewards" - ], - "label": "RewardManager::has_pending_rewards", - "mutates": false, - "payable": false, + "docs": [], + "label": "RewardManager::fund", + "mutates": true, + "payable": true, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 35 + "type": 20 }, - "selector": "0x80598ed8" + "selector": "0x6e7f485c" }, { "args": [], "default": false, "docs": [ - " return the total pending reward" + " claim all pending rewards for the current account", + " After claiming, there is not anymore pending rewards for this account" ], - "label": "RewardManager::get_total_pending_rewards", + "label": "RewardManager::claim", "mutates": true, "payable": false, "returnType": { @@ -716,9 +726,9 @@ "ink", "MessageResult" ], - "type": 37 + "type": 20 }, - "selector": "0xb9a36ad1" + "selector": "0x5f8b7ca2" }, { "args": [ @@ -727,7 +737,7 @@ "type": { "displayName": [ "rewardmanager_external", - "HasPendingRewardsFromInput1" + "ClaimFromInput1" ], "type": 0 } @@ -735,9 +745,10 @@ ], "default": false, "docs": [ - " return true if the given account has pending rewards" + " claim all pending rewards for the given account", + " After claiming, there is not anymore pending rewards for this account" ], - "label": "RewardManager::has_pending_rewards_from", + "label": "RewardManager::claim_from", "mutates": true, "payable": false, "returnType": { @@ -745,29 +756,18 @@ "ink", "MessageResult" ], - "type": 35 + "type": 20 }, - "selector": "0x41c593ae" + "selector": "0xa7118ada" }, { - "args": [ - { - "label": "from", - "type": { - "displayName": [ - "rewardmanager_external", - "GetPendingRewardsFromInput1" - ], - "type": 0 - } - } - ], + "args": [], "default": false, "docs": [ - " return the pending rewards for a given account." + " return true if the current account has pending rewards" ], - "label": "RewardManager::get_pending_rewards_from", - "mutates": true, + "label": "RewardManager::has_pending_rewards", + "mutates": false, "payable": false, "returnType": { "displayName": [ @@ -776,7 +776,7 @@ ], "type": 38 }, - "selector": "0x6af8ea62" + "selector": "0x80598ed8" }, { "args": [ @@ -785,7 +785,7 @@ "type": { "displayName": [ "rewardmanager_external", - "ClaimFromInput1" + "HasPendingRewardsFromInput1" ], "type": 0 } @@ -793,10 +793,9 @@ ], "default": false, "docs": [ - " claim all pending rewards for the given account", - " After claiming, there is not anymore pending rewards for this account" + " return true if the given account has pending rewards" ], - "label": "RewardManager::claim_from", + "label": "RewardManager::has_pending_rewards_from", "mutates": true, "payable": false, "returnType": { @@ -804,36 +803,9 @@ "ink", "MessageResult" ], - "type": 25 - }, - "selector": "0xa7118ada" - }, - { - "args": [ - { - "label": "key", - "type": { - "displayName": [ - "rollupanchor_external", - "GetValueInput1" - ], - "type": 5 - } - } - ], - "default": false, - "docs": [], - "label": "RollupAnchor::get_value", - "mutates": false, - "payable": false, - "returnType": { - "displayName": [ - "ink", - "MessageResult" - ], - "type": 40 + "type": 38 }, - "selector": "0xdfec736d" + "selector": "0x41c593ae" }, { "args": [ @@ -844,7 +816,7 @@ "rollupanchor_external", "RollupCondEqInput1" ], - "type": 42 + "type": 40 } }, { @@ -854,7 +826,7 @@ "rollupanchor_external", "RollupCondEqInput2" ], - "type": 42 + "type": 40 } }, { @@ -864,7 +836,7 @@ "rollupanchor_external", "RollupCondEqInput3" ], - "type": 44 + "type": 43 } } ], @@ -878,10 +850,37 @@ "ink", "MessageResult" ], - "type": 46 + "type": 45 }, "selector": "0x95233d74" }, + { + "args": [ + { + "label": "key", + "type": { + "displayName": [ + "rollupanchor_external", + "GetValueInput1" + ], + "type": 5 + } + } + ], + "default": false, + "docs": [], + "label": "RollupAnchor::get_value", + "mutates": false, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 47 + }, + "selector": "0xdfec736d" + }, { "args": [ { @@ -960,8 +959,8 @@ "args": [], "default": false, "docs": [], - "label": "Ownable::renounce_ownership", - "mutates": true, + "label": "Ownable::owner", + "mutates": false, "payable": false, "returnType": { "displayName": [ @@ -970,23 +969,23 @@ ], "type": 57 }, - "selector": "0x5e228753" + "selector": "0x4fa43c8c" }, { "args": [], "default": false, "docs": [], - "label": "Ownable::owner", - "mutates": false, + "label": "Ownable::renounce_ownership", + "mutates": true, "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 60 + "type": 59 }, - "selector": "0x4fa43c8c" + "selector": "0x5e228753" }, { "args": [ @@ -997,7 +996,7 @@ "ownable_external", "TransferOwnershipInput1" ], - "type": 61 + "type": 58 } } ], @@ -1011,7 +1010,7 @@ "ink", "MessageResult" ], - "type": 57 + "type": 59 }, "selector": "0x11f43efd" }, @@ -1022,35 +1021,25 @@ "type": { "displayName": [ "accesscontrol_external", - "GrantRoleInput1" + "GetRoleAdminInput1" ], "type": 3 } - }, - { - "label": "account", - "type": { - "displayName": [ - "accesscontrol_external", - "GrantRoleInput2" - ], - "type": 61 - } } ], "default": false, "docs": [], - "label": "AccessControl::grant_role", - "mutates": true, + "label": "AccessControl::get_role_admin", + "mutates": false, "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 21 + "type": 26 }, - "selector": "0x4ac062fd" + "selector": "0x83da3bb2" }, { "args": [ @@ -1059,25 +1048,35 @@ "type": { "displayName": [ "accesscontrol_external", - "GetRoleAdminInput1" + "RevokeRoleInput1" ], "type": 3 } + }, + { + "label": "account", + "type": { + "displayName": [ + "accesscontrol_external", + "RevokeRoleInput2" + ], + "type": 58 + } } ], "default": false, "docs": [], - "label": "AccessControl::get_role_admin", - "mutates": false, + "label": "AccessControl::revoke_role", + "mutates": true, "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 23 + "type": 24 }, - "selector": "0x83da3bb2" + "selector": "0x6e4f0991" }, { "args": [ @@ -1086,7 +1085,7 @@ "type": { "displayName": [ "accesscontrol_external", - "RevokeRoleInput1" + "RenounceRoleInput1" ], "type": 3 } @@ -1096,15 +1095,15 @@ "type": { "displayName": [ "accesscontrol_external", - "RevokeRoleInput2" + "RenounceRoleInput2" ], - "type": 61 + "type": 58 } } ], "default": false, "docs": [], - "label": "AccessControl::revoke_role", + "label": "AccessControl::renounce_role", "mutates": true, "payable": false, "returnType": { @@ -1112,9 +1111,9 @@ "ink", "MessageResult" ], - "type": 21 + "type": 24 }, - "selector": "0x6e4f0991" + "selector": "0xeaf1248a" }, { "args": [ @@ -1123,35 +1122,35 @@ "type": { "displayName": [ "accesscontrol_external", - "RenounceRoleInput1" + "HasRoleInput1" ], "type": 3 } }, { - "label": "account", + "label": "address", "type": { "displayName": [ "accesscontrol_external", - "RenounceRoleInput2" + "HasRoleInput2" ], - "type": 61 + "type": 58 } } ], "default": false, "docs": [], - "label": "AccessControl::renounce_role", - "mutates": true, + "label": "AccessControl::has_role", + "mutates": false, "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 21 + "type": 38 }, - "selector": "0xeaf1248a" + "selector": "0xc1d9ac18" }, { "args": [ @@ -1160,35 +1159,35 @@ "type": { "displayName": [ "accesscontrol_external", - "HasRoleInput1" + "GrantRoleInput1" ], "type": 3 } }, { - "label": "address", + "label": "account", "type": { "displayName": [ "accesscontrol_external", - "HasRoleInput2" + "GrantRoleInput2" ], - "type": 61 + "type": 58 } } ], "default": false, "docs": [], - "label": "AccessControl::has_role", - "mutates": false, + "label": "AccessControl::grant_role", + "mutates": true, "payable": false, "returnType": { "displayName": [ "ink", "MessageResult" ], - "type": 35 + "type": 24 }, - "selector": "0xc1d9ac18" + "selector": "0x4ac062fd" }, { "args": [ @@ -2008,6 +2007,38 @@ }, { "id": 19, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "nb_numbers", + "type": 2, + "typeName": "u8" + }, + { + "name": "min_number", + "type": 7, + "typeName": "Number" + }, + { + "name": "max_number", + "type": 7, + "typeName": "Number" + } + ] + } + }, + "path": [ + "lotto", + "traits", + "config", + "Config" + ] + } + }, + { + "id": 20, "type": { "def": { "variant": { @@ -2015,7 +2046,7 @@ { "fields": [ { - "type": 20 + "type": 21 } ], "index": 0, @@ -2036,7 +2067,7 @@ "params": [ { "name": "T", - "type": 20 + "type": 21 }, { "name": "E", @@ -2049,7 +2080,7 @@ } }, { - "id": 20, + "id": 21, "type": { "def": { "variant": { @@ -2057,7 +2088,7 @@ { "fields": [ { - "type": 3 + "type": 4 } ], "index": 0, @@ -2066,7 +2097,7 @@ { "fields": [ { - "type": 14 + "type": 16 } ], "index": 1, @@ -2078,11 +2109,11 @@ "params": [ { "name": "T", - "type": 3 + "type": 4 }, { "name": "E", - "type": 14 + "type": 16 } ], "path": [ @@ -2091,7 +2122,7 @@ } }, { - "id": 21, + "id": 22, "type": { "def": { "variant": { @@ -2099,7 +2130,7 @@ { "fields": [ { - "type": 22 + "type": 23 } ], "index": 0, @@ -2120,7 +2151,7 @@ "params": [ { "name": "T", - "type": 22 + "type": 23 }, { "name": "E", @@ -2133,7 +2164,7 @@ } }, { - "id": 22, + "id": 23, "type": { "def": { "variant": { @@ -2141,7 +2172,7 @@ { "fields": [ { - "type": 4 + "type": 3 } ], "index": 0, @@ -2150,7 +2181,7 @@ { "fields": [ { - "type": 15 + "type": 14 } ], "index": 1, @@ -2162,11 +2193,11 @@ "params": [ { "name": "T", - "type": 4 + "type": 3 }, { "name": "E", - "type": 15 + "type": 14 } ], "path": [ @@ -2175,7 +2206,7 @@ } }, { - "id": 23, + "id": 24, "type": { "def": { "variant": { @@ -2183,7 +2214,7 @@ { "fields": [ { - "type": 3 + "type": 25 } ], "index": 0, @@ -2204,47 +2235,15 @@ "params": [ { "name": "T", - "type": 3 + "type": 25 }, { "name": "E", "type": 11 } - ], - "path": [ - "Result" - ] - } - }, - { - "id": 24, - "type": { - "def": { - "composite": { - "fields": [ - { - "name": "nb_numbers", - "type": 2, - "typeName": "u8" - }, - { - "name": "min_number", - "type": 7, - "typeName": "Number" - }, - { - "name": "max_number", - "type": 7, - "typeName": "Number" - } - ] - } - }, + ], "path": [ - "lotto", - "traits", - "config", - "Config" + "Result" ] } }, @@ -2257,7 +2256,7 @@ { "fields": [ { - "type": 26 + "type": 4 } ], "index": 0, @@ -2266,7 +2265,7 @@ { "fields": [ { - "type": 11 + "type": 15 } ], "index": 1, @@ -2278,11 +2277,11 @@ "params": [ { "name": "T", - "type": 26 + "type": 4 }, { "name": "E", - "type": 11 + "type": 15 } ], "path": [ @@ -2299,7 +2298,7 @@ { "fields": [ { - "type": 4 + "type": 3 } ], "index": 0, @@ -2308,7 +2307,7 @@ { "fields": [ { - "type": 16 + "type": 11 } ], "index": 1, @@ -2320,11 +2319,11 @@ "params": [ { "name": "T", - "type": 4 + "type": 3 }, { "name": "E", - "type": 16 + "type": 11 } ], "path": [ @@ -2387,7 +2386,7 @@ { "fields": [ { - "type": 24 + "type": 19 } ], "index": 1, @@ -2399,7 +2398,7 @@ "params": [ { "name": "T", - "type": 24 + "type": 19 } ], "path": [ @@ -2680,35 +2679,22 @@ }, { "id": 36, - "type": { - "def": { - "primitive": "bool" - } - } - }, - { - "id": 37, "type": { "def": { "variant": { "variants": [ { - "fields": [ - { - "type": 6 - } - ], "index": 0, - "name": "Ok" + "name": "None" }, { "fields": [ { - "type": 11 + "type": 6 } ], "index": 1, - "name": "Err" + "name": "Some" } ] } @@ -2717,19 +2703,15 @@ { "name": "T", "type": 6 - }, - { - "name": "E", - "type": 11 } ], "path": [ - "Result" + "Option" ] } }, { - "id": 38, + "id": 37, "type": { "def": { "variant": { @@ -2737,7 +2719,7 @@ { "fields": [ { - "type": 39 + "type": 6 } ], "index": 0, @@ -2758,7 +2740,7 @@ "params": [ { "name": "T", - "type": 39 + "type": 6 }, { "name": "E", @@ -2771,40 +2753,7 @@ } }, { - "id": 39, - "type": { - "def": { - "variant": { - "variants": [ - { - "index": 0, - "name": "None" - }, - { - "fields": [ - { - "type": 6 - } - ], - "index": 1, - "name": "Some" - } - ] - } - }, - "params": [ - { - "name": "T", - "type": 6 - } - ], - "path": [ - "Option" - ] - } - }, - { - "id": 40, + "id": 38, "type": { "def": { "variant": { @@ -2812,7 +2761,7 @@ { "fields": [ { - "type": 41 + "type": 39 } ], "index": 0, @@ -2833,7 +2782,7 @@ "params": [ { "name": "T", - "type": 41 + "type": 39 }, { "name": "E", @@ -2845,8 +2794,37 @@ ] } }, + { + "id": 39, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 40, + "type": { + "def": { + "sequence": { + "type": 41 + } + } + } + }, { "id": 41, + "type": { + "def": { + "tuple": [ + 5, + 42 + ] + } + } + }, + { + "id": 42, "type": { "def": { "variant": { @@ -2878,39 +2856,18 @@ ] } }, - { - "id": 42, - "type": { - "def": { - "sequence": { - "type": 43 - } - } - } - }, { "id": 43, - "type": { - "def": { - "tuple": [ - 5, - 41 - ] - } - } - }, - { - "id": 44, "type": { "def": { "sequence": { - "type": 45 + "type": 44 } } } }, { - "id": 45, + "id": 44, "type": { "def": { "variant": { @@ -2967,7 +2924,7 @@ } }, { - "id": 46, + "id": 45, "type": { "def": { "variant": { @@ -2975,7 +2932,7 @@ { "fields": [ { - "type": 47 + "type": 46 } ], "index": 0, @@ -2996,7 +2953,7 @@ "params": [ { "name": "T", - "type": 47 + "type": 46 }, { "name": "E", @@ -3009,7 +2966,7 @@ } }, { - "id": 47, + "id": 46, "type": { "def": { "variant": { @@ -3050,6 +3007,48 @@ ] } }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 42 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 11 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 42 + }, + { + "name": "E", + "type": 11 + } + ], + "path": [ + "Result" + ] + } + }, { "id": 48, "type": { @@ -3393,22 +3392,17 @@ "variant": { "variants": [ { - "fields": [ - { - "type": 4 - } - ], "index": 0, - "name": "Ok" + "name": "None" }, { "fields": [ { - "type": 59 + "type": 0 } ], "index": 1, - "name": "Err" + "name": "Some" } ] } @@ -3416,15 +3410,11 @@ "params": [ { "name": "T", - "type": 4 - }, - { - "name": "E", - "type": 59 + "type": 0 } ], "path": [ - "Result" + "Option" ] } }, @@ -3435,22 +3425,38 @@ "variant": { "variants": [ { + "fields": [ + { + "type": 60 + } + ], "index": 0, - "name": "CallerIsNotOwner" + "name": "Ok" }, { + "fields": [ + { + "type": 11 + } + ], "index": 1, - "name": "NewOwnerIsNotSet" + "name": "Err" } ] } }, + "params": [ + { + "name": "T", + "type": 60 + }, + { + "name": "E", + "type": 11 + } + ], "path": [ - "openbrush_contracts", - "traits", - "errors", - "ownable", - "OwnableError" + "Result" ] } }, @@ -3463,7 +3469,7 @@ { "fields": [ { - "type": 61 + "type": 4 } ], "index": 0, @@ -3472,7 +3478,7 @@ { "fields": [ { - "type": 11 + "type": 61 } ], "index": 1, @@ -3484,11 +3490,11 @@ "params": [ { "name": "T", - "type": 61 + "type": 4 }, { "name": "E", - "type": 11 + "type": 61 } ], "path": [ @@ -3504,28 +3510,21 @@ "variants": [ { "index": 0, - "name": "None" + "name": "CallerIsNotOwner" }, { - "fields": [ - { - "type": 0 - } - ], "index": 1, - "name": "Some" + "name": "NewOwnerIsNotSet" } ] } }, - "params": [ - { - "name": "T", - "type": 0 - } - ], "path": [ - "Option" + "openbrush_contracts", + "traits", + "errors", + "ownable", + "OwnableError" ] } }, @@ -3636,7 +3635,7 @@ { "fields": [ { - "type": 59, + "type": 61, "typeName": "OwnableError" } ], diff --git a/ink/artifacts/lotto_contract.wasm b/ink/artifacts/lotto_contract.wasm index c9b728d..ae5b498 100644 Binary files a/ink/artifacts/lotto_contract.wasm and b/ink/artifacts/lotto_contract.wasm differ diff --git a/ink/contracts/lotto/Cargo.toml b/ink/contracts/lotto/Cargo.toml index 4d6dc01..8df8907 100644 --- a/ink/contracts/lotto/Cargo.toml +++ b/ink/contracts/lotto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lotto_contract" -version = "0.1.0" +version = "0.1.1" authors = ["guigou"] edition = "2021" diff --git a/ink/contracts/lotto/lib.rs b/ink/contracts/lotto/lib.rs index 206e621..d67ef47 100644 --- a/ink/contracts/lotto/lib.rs +++ b/ink/contracts/lotto/lib.rs @@ -243,9 +243,29 @@ pub mod lotto_contract { Ok(()) } + #[ink(message)] + #[openbrush::modifiers(access_control::only_role(LOTTO_MANAGER_ROLE))] + pub fn set_config(&mut self, config: Config) -> Result<(), RaffleError> { + // check the status, we can set the config only when the raffle is not started yet + let status = Raffle::get_current_status(self); + if status != Status::NotStarted { + return Err(RaffleError::IncorrectStatus); + } + + // update the config + RaffleConfig::set_config(self, config)?; + + Ok(()) + } + #[ink(message)] #[openbrush::modifiers(access_control::only_role(LOTTO_MANAGER_ROLE))] pub fn start_raffle(&mut self) -> Result { + let raffle_id = self.inner_start_raffle()?; + Ok(raffle_id) + } + + fn inner_start_raffle(&mut self) -> Result { // start new raffle let raffle_id = Raffle::start_new_raffle(self)?; @@ -323,14 +343,20 @@ pub mod lotto_contract { // set the winners in the raffle Raffle::set_winners(self, raffle_id, winners.clone())?; + // emmit the event + self.env().emit_event(WinnersRevealed { + raffle_id, + winners: winners.clone(), + }); + // set the winners in the reward manager if !winners.is_empty() { - RewardManager::add_winners(self, winners.clone())?; + RewardManager::add_winners(self, winners)?; + } else { + // start automatically the new raffle if there is no winner + self.inner_start_raffle()?; } - // emmit the event - self.env() - .emit_event(WinnersRevealed { raffle_id, winners }); Ok(()) } diff --git a/ink/integration_tests/Cargo.toml b/ink/integration_tests/Cargo.toml index 59b60dd..5e2d85c 100644 --- a/ink/integration_tests/Cargo.toml +++ b/ink/integration_tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "e2e_tests" -version = "0.1.0" +version = "0.1.1" authors = ["guigou"] edition = "2021" diff --git a/ink/integration_tests/lib.rs b/ink/integration_tests/lib.rs index 3937e30..3fe89dc 100644 --- a/ink/integration_tests/lib.rs +++ b/ink/integration_tests/lib.rs @@ -522,16 +522,22 @@ mod e2e_tests { get_current_status(&mut client, &contract_id).await ); - // send the winners => no winners + // send the winners => no winners => new raffle starts again automatically bob_sends_winners(&mut client, &contract_id, raffle_id, results, vec![]).await; assert_eq!( - Status::Closed, + Status::Ongoing, get_current_status(&mut client, &contract_id).await ); - // fund again the contract before starting the raffle - fund(&mut client, &contract_id, 100).await; + raffle_id = raffle_id + 1; + assert_eq!( + raffle_id, + get_current_raffle_id(&mut client, &contract_id).await + ); + // fund more the contract + fund(&mut client, &contract_id, 100).await; + /* // start the raffle 3 raffle_id = alice_starts_raffle(&mut client, &contract_id).await; assert_eq!(3, raffle_id); @@ -539,6 +545,7 @@ mod e2e_tests { Status::Ongoing, get_current_status(&mut client, &contract_id).await ); + */ // dave and charly participates participates( diff --git a/ink/logics/traits/config.rs b/ink/logics/traits/config.rs index f82926c..bdbe8fe 100644 --- a/ink/logics/traits/config.rs +++ b/ink/logics/traits/config.rs @@ -1,7 +1,6 @@ use crate::traits::error::RaffleError; use crate::traits::error::RaffleError::*; -use crate::traits::{Number, LOTTO_MANAGER_ROLE}; -use openbrush::contracts::access_control::access_control; +use crate::traits::Number; use openbrush::traits::Storage; #[derive(Default, Debug)] @@ -22,9 +21,7 @@ pub struct Config { } #[openbrush::trait_definition] -pub trait RaffleConfig: Storage + access_control::Internal { - #[ink(message)] - #[openbrush::modifiers(access_control::only_role(LOTTO_MANAGER_ROLE))] +pub trait RaffleConfig: Storage { fn set_config(&mut self, config: Config) -> Result<(), RaffleError> { // check the config if config.nb_numbers == 0 {