diff --git a/.eslintignore b/.eslintignore index 55061dc..76b2c45 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,2 @@ -typechain \ No newline at end of file +typechain +artifacts \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 86ee997..c1f363a 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -6,14 +6,13 @@ "./src/contracts/abax_governor/Cargo.toml", "./src/contracts/abax_token/Cargo.toml", "./src/contracts/abax_treasury/Cargo.toml", + "./src/contracts/abax_vester/Cargo.toml", "./src/contracts/test_purpose/abax_token_v2/Cargo.toml", "./src/contracts/test_purpose/flipper/Cargo.toml", "./src/contracts/test_purpose/psp22_emitable/Cargo.toml", - "./src/contracts/test_purpose/vester/Cargo.toml", "./src/contracts/test_purpose/wazero/Cargo.toml", - "./src/contracts/test_purpose/register_asset_proposal/Cargo.toml", - "./src/contracts/test_purpose/add_market_rule_proposal/Cargo.toml", - "./src/contracts/test_purpose/deploy_lp_proposal/Cargo.toml" + "./src/contracts/proposals/configure_initial_market_proposal/Cargo.toml", + "./src/contracts/proposals/initial_pool_config_proposal/Cargo.toml" ], "rust-analyzer.showUnlinkedFileNotification": true, "rust-analyzer.cargo.features": "all" diff --git a/artifacts/a_token.contract b/artifacts/a_token.contract new file mode 100644 index 0000000..4cf2f8b --- /dev/null +++ b/artifacts/a_token.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x5adc19dea0f4a33458d689bdec40124691060f14d72623fbfe2914955009bc92","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000017a1260037f7f7f017f60027f7f0060027f7f017f60037f7f7f0060017f0060047f7f7f7f017f60047f7f7f7f0060000060057f7f7f7f7f017f60017f017f60087f7f7e7f7f7f7f7f017f60037f7e7e0060037e7e7f006000017f60027e7e0060067f7f7f7f7e7e0060057f7f7f7e7e0060077f7f7f7f7f7f7f017f02d4010b057365616c310b6765745f73746f726167650005057365616c3005696e7075740001057365616c310463616c6c000a057365616c300d6465706f7369745f6576656e740006057365616c320b7365745f73746f726167650005057365616c300b7365616c5f72657475726e0003057365616c300d6f776e5f636f64655f686173680001057365616c300663616c6c65720001057365616c301176616c75655f7472616e736665727265640001057365616c300f686173685f626c616b65325f323536000303656e76066d656d6f727902010210035d5c000000000b01010c090104010301010401010101010104030104040d020101010301090704010e04010301070102010f1001070102020102020201110202020802020208020603030006030004000203020305030800060202000105040501700115150616037f01418080040b7f0041b09e050b7f0041a49e050b0711020463616c6c0035066465706c6f79003c091a010041010b143e4e41424a4b47464c48435a5657583f565f61620adfce015c2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bb20101047f230041d0006b22032400200341808004360200200341046a200041c000100a2100200342808001370248200341a49e0436024441d087b7ab78200341c4006a2205100f200020051010024020032802482204200328024c2200490d00200328024421062003410036024c2003200420006b3602482003200020066a3602442001200220051011200328024c220420032802484b0d00200620002003280244200410041a200341d0006a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041050200241106a24000b1100200020011017200041206a200110170b2a01017f230041106b2203240020032001370308200320003703002002200341101050200341106a24000b3a01027f230041106b22012400200141086a2000101320012d0009210020012d00082102200141106a2400410341032000200041034f1b20021b0b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000ba90101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a22043602044100200141046a22051015200128020c220620012802084b0d0020052001280204200610162001410036022c20012003360228200120043602242005200141246a101720022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b2601017f230041106b22022400200220003a000f20012002410f6a41011050200241106a24000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1009200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100a1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010500ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061017200228020c220120022802084b0d0020062002280204200110162002410036022c20022004360228200220053602242006200241246a10172003200228022c6a22012003490d0020002001360208200241306a24000f0b000b7201047f230041106b220124002001410336020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a101a20022002200128020c6a22024b0d0020002002360208200141106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410400c010b200041ffff004d0440200220004102744101723b010e20012002410e6a410210500c010b200041ffffffff034d044020004102744102722001100f0c010b20014103104020002001100f0b200241106a24000bc30102047f027e23004180016b220224002002413e6a22032001101c0240024020022d003e41024704402002411d6a220420034121100a1a20032001101c20022d003e4102460d01200241df006a220520034121100a1a20022001101d2002290300a7450440200241106a290300210620022903082107200041106a20044121100a1a2000200637030820002007370300200041316a20054121100a1a0c030b200041023a00100c020b200041023a00100c010b200041023a00100b20024180016a24000bab0101037f230041106b22022400200241086a2001101341022103024020022d00080d000240024020022d00090e020001020b410021030c010b200128020422044120490d002001200441206b36020420012001280200220141206a36020020002001290000370001200041096a200141086a290000370000200041116a200141106a290000370000200041196a200141186a290000370000410121030b200020033a0000200241106a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000b1100200041206a200110172000200110170bb90102027f017e230041206b22032400420121040240200128020422024120490d002001200241206b36020420012001280200220241206a360200200341086a2001101d2003290308a70d00200341186a2903002104200041286a200329031037030020002002290000370008200041306a2004370300200041206a200241186a290000370000200041186a200241106a290000370000200041106a200241086a290000370000420021040b20002004370300200341206a24000bb00201057f230041306b2201240020014280800137020c200141a49e04360208200141086a1019200141286a200141106a28020036020020012001290208370320200141146a2202200141206a41b480041021200041316a2104024020002d001004402002200041116a10180c010b200141146a10140b200141286a2001411c6a28020036020020012001290214370320024020042d00000440200141206a200041326a10180c010b200141206a10140b02402001280224220320012802282202490d0020012802202105200141003602282001200320026b3602242001200220056a360220200041106a200141206a220310222004200310222000290300200041086a290300200310112001280228220020012802244b0d0020052002200128022020001003200141306a24000f0b000bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071017200328020c220220032802084b0d0220072003280204200210162003410036022c20032005360228200320063602242007200341246a10172004200328022c6a22022004490d02200120023602080c010b200110140b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b210020002d00004504402001410010400f0b200141011040200041016a200110170b8e0201067f23004180016b22012400200141086a2204200041d000100a1a20014280800137025c200141a49e04360258200141d8006a1019200141f8006a2200200141e0006a28020036020020012001290258370370200141e4006a2202200141f0006a22034193800410212002200410182000200141ec006a280200360200200120012902643703702003200141286a2202101802402001280274220620002802002200490d0020012802702105200141003602782001200620006b3602742001200020056a3602702004200310172002200310172001290348200141d0006a290300200310112001280278220220012802744b0d002005200020012802702002100320014180016a24000f0b000b850101027f230041106b2201240020014180800136020c41a49e042001410c6a1007200128020c2202418180014f2002411f4d72450440200041a59e04290000370001200041096a41ad9e04290000370000200041116a41b59e04290000370000200041186a41bc9e04290000370000200041a49e042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1008200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b0d00200020014120100d4100470b0a0020012000410410500baa0102027f027e230041206b22022400200241186a200110130240027f0240024020022d00180d000240024020022d00190e020100020b2001102c450d0141010c030b20022001101d2002290300a7450d010b200041023602000c020b200241106a29030021042002290308210541000b210320012802040440200041023602000c010b200020053703082000410136020420002003360200200041106a20043703000b200241206a24000ba30202047f017e230041206b22022400200242808001370218200241a49e043602142001200241146a2204100f024020022802182205200228021c2201490d00200228021421032002200520016b220536021420032001200120036a2201200410002104200520022802142203490d00024002400240024020040e0400040401040b2003450d012002200341016b22033602102002200141016a36020c02400240024020012d00000e020100040b200241146a2002410c6a103d20022802142201418080808078460d0320022802100d03200229021821060c010b20030d0241808080807821010b20002006370204200020013602000c020b20004181808080783602000c010b2000418280808078360200200041103a00040b200241206a24000f0b000be30202047f027e23004190016b22032400200341186a200141186a290000370300200341106a200141106a290000370300200341086a200141086a290000370300200341286a200241086a290000370300200341306a200241106a290000370300200341386a200241186a2900003703002003200129000037030020032002290000370320200341808004360240200341c4006a200341c000100a210120034280800137028801200341a49e043602840141d087b7ab7820034184016a2205100f20012005101002402003280288012204200328028c012201490d0020032802840121022003200420016b22063602840120022001200120026a220120051000210220062003280284012204492002410f4f720d00200241d480046a2d00002202410347044020024110472004411049722004411047720d01200141086a2900002108200129000021070b200020083703082000200737030020034190016a24000f0b000b3801017f230041106b22022400200241086a2001101320022d00092101200020022d00084101713a0000200020013a0001200241106a24000b3601027f230041106b22012400200141086a2000101320012d0009210020012d00082102200141106a24002002417f732000410146710b130041a49e044181023b0100410141021032000b6c01017f230041106b22012400200141808001360208200141a49e04360204024020002d0000044041a49e044181023b0100410221000c010b41a49e0441003a00002001410136020c200041016a200141046a1017200128020c220041818001490d00000b410020001032000b9b0201037f230041106b22022400200241808001360208200241a49e043602040240024002400240024020012802002204410947044041a49e0441003a00002004410846044041a59e0441003a0000410221010c060b41a59e0441013a000002400240024002400240200441016b0e0708000102060304070b41a69e0441023a00000c080b4103210141a69e0441033a00000c080b41a69e0441043a00000c060b41a69e0441063a00000c050b41a69e0441073a00000c040b41a49e044181023b0100410221010c040b410521030b41a69e0420033a00002002410336020c200141086a2802002001410c6a280200200241046a1033200228020c220141818001490d02000b41a69e0441013a00000b410321010b200020011032000b4c01017f230041106b22022400200241a49e0436020441a49e0441003a0000200242808081801037020820002001200241046a1011200228020c2202418180014f0440000b410020021032000b950101057f230041106b22012400200142808001370208200141a49e043602044100200141046a2203100f024020012802082205200128020c2202490d00200128020421042001410036020c2001200520026b3602082001200220046a360204200020031017200041206a20031017200128020c220020012802084b0d00200420022001280204200010041a200141106a24000f0b000b0d00200041a49e0420011005000b2c01017f230041106b220324002003200136020c2003410c6a2002101a2002200020011050200341106a24000b2c0020002802004180808080784604402001410010400f0b20014101104020002802042000280208200110330bd84202107f087e230041c0056b220024000240024002400240027f024002400240027f0240024002400240102541ff01714105470d002000418080013602980341a49e0420004198036a10012000280298032202418180014f0d000240024020024104490d00200041a89e04360288032000200241046b220636028c0341a79e042d0000210541a69e042d0000210341a59e042d0000210102400240024002400240024002400240024002400240024002400240024002400240024041a49e042d00002204413d6b0e050c12121201000b20044116460d032004411b460d0220044134460d0c200441cd00460d05200441d400460d07200441e500460d04200441f200460d0d200441fe01460d0a2004419601460d09200441b201460d08200441ce01460d01200441db01460d06200441fb0047200141ff017141fe014772200341ff017141de0147200541ff0171413f4772720d1120004180016a20004188036a10362000280280010d1141082103200028028c0341d8006e2201200028028401220420012004491b2201044020014197bad10b4b0d14200141d8006c22024100480d1441a09e042d00001a4108200210372203450d140b41002102200041003602a805200020033602a405200020013602a0052004450d0f200041a9036a2105200041a0036a2106034020004198036a20004188036a101b20002d00a803220a4102460d1220062903002110200029039803211120004188016a200541c700100a1a20002802a005200246047f200041a0056a2103230041206b220124000240200241016a22020440410420032802002209410174220b20022002200b491b2202200241044d1b220241d8006c210b20024198bad10b49410374210d02402009450440200141003602180c010b200141083602182001200941d8006c36021c200120032802043602140b200141086a200d200b200141146a104f2001280208450d01200128020c1a0b000b200128020c21092003200236020020032009360204200141206a240020002802a405210320002802a8050520020b41d8006c20036a22012010370308200120113703002001200a3a0010200141116a20004188016a41c700100a1a200020002802a80541016a22023602a805200441016b22040d000b200020002800a5053602c0022000200041a8056a2800003600c30220002802a0052201418080808078460d1120002d00a40521030c100b200141ff0171410647200341ff017141ef014772200541ff017141d30047720d1020004198036a20004188036a101b20002d00a80322044102460d10200028028c0322014120492001416071412046720d10200028028803220741086a290000211020072900002111200728001c210520072900142115200728001021022000200141406a220136028c0320014110490d10200041b4026a200041ae036a2f01003b0100200041d0026a200041b9036a290000370300200041d8026a200041c1036a290000370300200041df026a200041c8036a2900003700002000200028009d033602b802200020002801aa033602b002200020002900b1033703c8022000200741d0006a360288032000200041a0036a2800003600bb02200741c8006a29000021162007290040211720002d009803210120002d009c03210320002802a403210e20002d00a903210820002d00b003210620002f009903210920002d009b03210c200041d0046a200741206a220741086a290000370300200041d8046a200741106a290000370300200041e0046a200741186a290000370300200020072900003703c8042009200c411074722109200041d8036a290300211220002903d003211320002802ec03210c20002902e403211420002802e00321070c110b200141ff017141c60147200341ff017141d1014772200541ff017141fe0047720d0f410421040c100b200141ff017141d10147200341ff017141174772200541ff0171419e0147720d0e410521040c0f0b200141ff0171412d47200341ff017141f8014772200541ff017141c20147720d0d410621040c0e0b200141ff017141e80047200341ff017141384772200541ff0171412f47200641204972720d0c200041b4026a41ad9e042f00003b0100200041d0026a41b89e04290200370300200041d8026a41c09e04290200370300200041c89e0436028803200041a99e042800003602b002200041b09e042902003703c80241af9e042d0000210641a89e042d00002108410721040c0d0b200141ff017141c70047200341ff017141d9014772200541ff017141214720064120497272200241246b412049720d0b41af9e042d0000210641a89e042d00002108200041b3036a41cb9e04280000360000200041a8036a220141c09e04290200370300200041b4026a41ad9e042f00003b010041082104200041a0036a220341b89e04290200370300200041c89e042802003602b003200041e89e04360288032000200241c4006b36028c03200041a99e042800003602b002200041b09e042902003703980341d79e04290000211241cf9e04290000211341df9e04280000210741e39e04350000211041e79e043100002111200041df026a200041af036a290000370000200041d8026a2001290300370300200041d0026a200329030037030020002000290398033703c802201020114220868421140c0c0b200141ff0171412047200341ff017141f9014772200541ff017141f50147200641204972720d0a200041a0036a220441b19e04290000370300200041a8036a220a41b99e04290000370300200041af036a220b41c09e04290000370000200041a99e0429000037039803200241346b2202416f4b0d0a41a89e042d00002106200041d89e04360288032000200236028c0341d09e04290200211241c89e04290200211320004188016a20004188036a10382000280288012207418080808078460d0a200041d0026a2004290300370300200041d8026a200a290300370300200041df026a200b29000037000020002000290398033703c802200029028c012114410921040c0b0b200141ff017141b30147200341ff017141c7014772200541ff017141ee0047200641204972720d09200041a0036a220441b19e04290000370300200041a8036a220a41b99e04290000370300200041af036a220b41c09e04290000370000200041a99e0429000037039803200241246b4120490d09200241d4006b2202416f4b0d0941a89e042d0000210641d09e04290200211241c89e04290200211341e49e04280200210c41dc9e04290200211441d89e042802002107200041f89e04360288032000200236028c0341f09e04290200211041e89e04290200211120004188016a20004188036a10382000280288012202418080808078460d09200041d0026a2004290300370300200041d8026a200a290300370300200041df026a200b29000037000020002000290398033703c802200029028c012115410a21040c0a0b200141ff0171410f47200341ff0171411b4772200541ff017141bd0147720d0820004198036a20004188036a101f2000290398034200520d08200041d0026a200041a9036a290000370300200041d8026a200041b1036a290000370300200041df026a200041b8036a2900003700002000200041a1036a2900003703c802200041c8036a2903002112200041c0036a290300211320002d00a0032106410b21040c090b200141ff017141d60147200341ff017141b5014772200541ff017141fa0047720d0720004198036a20004188036a101f2000290398034200520d07200041d0026a200041a9036a290000370300200041d8026a200041b1036a290000370300200041df026a200041b8036a2900003700002000200041a1036a2900003703c802200041c8036a2903002112200041c0036a290300211320002d00a0032106410c21040c080b200141ff017141cb0147200341ff017141d70047720d06200541ff017141d501460d030c060b200141ff0171412647200341ff0171411b4772200541ff017141d40147720d05410e21040c060b200141ff0171412047200341ff017141db004772200541ff017141e50147720d04410f21040c050b200141ff017141f10047200341ff017141b7014772200541ff017141820147720d03411021040c040b20004198036a20004188036a101f2000290398034200520d02200041d0026a200041a9036a290000370300200041d8026a200041b1036a290000370300200041df026a200041b8036a2900003700002000200041a1036a2900003703c802200041c8036a2903002112200041c0036a290300211320002d00a0032106410d21040c030b200020002800a5053602c0022000200041a8056a2800003600c3020b200020002800c3023600bb02200020002802c0023602b80220014108762109410221040c010b102d000b20004190016a20002800bb023600002000419e016a200041b4026a2f01003b0100200041a9016a200041d0026a290300370000200041b1016a200041d8026a290300370000200041b8016a200041df026a29000037000020004198026a200041e0046a29030037030020004190026a200041d8046a29030037030020004188026a200041d0046a290300370300200020002802b80236008d01200020002802b00236019a01200020002903c8023700a101200020002903c80437038002200041a8026a2016370300200041e8016a2010370300200041c8016a20123703002000200141ff0171200941087472360288012000200e36029401200020073602d001200020143702d4012000200c3602dc01200020023602f001200020153702f401200020053602fc01200020173703a002200020113703e001200020133703c001200020063a00a001200020083a009901200020043a009801200020033a008c0120004280800137029c03200041a49e0436029803410020004198036a2203100f200028029c03220520002802a0032201490d0020002802980321022000200520016b22063602980320022001200120026a220120031000210520062000280298032202492005410f4f720d00200541d480046a2d000022054103462005411047722002416071412046200241204972720d0020012d00002105200041cf036a200141386a290000370000200041c7036a200141306a290000370000200041bf036a200141286a290000370000200041a0036a200141096a290000370300200041a8036a200141116a290000370300200041af036a200141186a290000370000200020012900203700b7032000200129000137039803200041c8046a22062003413f100a1a200241c000470d00200041a0016a210120004199016a2103200041c9026a2006413f100a1a200020053a00c80202400240024002400240024002400240027f0240024002400240027f024002400240024002400240024002404101200441026b2202200241ff0171410f4f1b41ff017141016b0e0e01090a0b020304050f0612131415000b2000280290012101200028028c012102200041e0046a200041e0026a290000370300200041d8046a200041d8026a290000370300200041d0046a200041d0026a290000370300200020002900c8023703c80420004198036a22041024200041c8046a200410260d0620010440200041c9036a2105200041a8036a2103200141d8006c2104034020022903002210200241086a290300221184504504402003200241106a4121100a1a2005200241316a4121100a1a200020113703a003200020103703980320004198036a10200b200241d8006a2102200441d8006b22040d000b0b20004198036a2201200041c8026a41c000100a1a200110314100210441080c070b2000200041c8026a36029803200041a0036a20004188016a41a801100a1a200041c0046a2903002110200041b8046a2903002111200041a8036a290300211220002903a0032113200041b8056a200041e0026a290000370300200041b0056a200041d8026a290000370300200041a8056a200041d0026a290000370300200020002900c8023703a005200041c8046a22041024200041a0056a200410260d1520004198046a2102200041f8036a21052012201384500d19200041d8046a200041b0036a4121100a1a200041f9046a200041d1036a4121100a1a200020123703d004200020133703c804200410200c190b200041386a210423004180026b2201240020014190016a2205200341186a29000037030020014188016a2206200341106a29000037030020014180016a2207200341086a29000037030020012003290000370378200141a0016a2208200041c8026a220241286a290000370300200141a8016a2209200241306a290000370300200141b0016a220c200241386a2900003703002001200229002037039801200141306a200241186a290000370300200141286a200241106a290000370300200141206a200241086a29000037030020012002290000370318200141c8006a2202200141086a22034130100a1a2003200141f8006a220a41c000100a1a2005200141f0006a2903003703002006200141e8006a2903003703002007200141e0006a2903003703002008420037030020094200370300200c4100360200200120012903583703782001420037039801200141b4016a200341c000100a2107200141f4016a220841f3b9ae9d0536020020014280800137024c200141a49e04360248200a2002101702400240200128024c220620012802502203490d0020012802482105200141003602502001200620036b36024c2001200320056a3602484200420020021011200128024c220920012802502203490d0020012802482106200141003602502001200920036b36024c2001200320066a36024820082002102720072002101e200128024c220820012802502203490d00200128024821072001200820036b2208360248410020054200200620072003200320076a2205200210022103200820012802482206492003410f4f720d00200341d480046a2d000022034110472003410247710d00200120063602fc01200120053602f8012002200141f8016a1028200128024822024102462002720d00200129035021102004200141d8006a2903003703082004201037030020014180026a24000c010b000b2000290338200041406b2903001030000b230041e0006b220124002001200041c8026a36021c200141086a200141206a200341c000100a200141406b102a20012903082110200041c8006a2202200141106a29030037030820022010370300200141e0006a24002000290348200041d0006a2903001030000b200041a0036a200141c000100a21012000200041c8026a220236029803200041c8036a2903002110200041c0036a2903002111200041c8046a22031024200041a0056a20022003200120112010103920002802a00522014108460d0720004190036a200041ac056a280200360200200020002902a4053703880341010c080b200041a0036a200141e000100a21012000200041c8026a220436029803200041e0036a2903002111200041e8036a2903002110200041c8046a22031024200041d8006a20012003102a410221022000290358201154200041e0006a290300221220105420102012511b0d13200041a0056a22052001200320112010103a20002802a00522024108470d12200520042001200041c0036a20112010103920002802a00522024108460d0820004190036a200041ac056a280200360200200020002902a405370388030c130b2000200041c8026a3602c80441082102200041d0046a20014130100a2103200041f0046a2903002112200041f8046a2903002113200041a0056a22041024200041f0006a20042003102a200041f8006a290300211020002903702111200041e8006a4108103b20002802682103200028026c220542cfec9593e78cdbb7f70037000041012104201120127c221220115422062006ad201020137c7c221120105420102011511b4101470d092003ad2005ad42208684211042082111410021020c0a0b200041086a410e103b20002802082103200028020c220241848004290000370000200241066a418a80042900003700004101210441000b21012000410e3602a403200020023602a0032000200336029c030c160b200041b1036a200041e0026a290000370000200041a9036a200041d8026a290000370000200041a1036a200041d0026a290000370000200020002900c80237009903200041003a00980320004198036a102e000b230041106b220224002002412036020c41a49e042002410c6a1006200041c8046a2203410172220141a59e04290000370001200141096a41ad9e04290000370000200141116a41b59e04290000370000200141186a41bc9e04290000370000200141a49e042d00003a0000200241106a240020004198036a2201200041c8026a41c000100a1a20011031200041003a00c8042003102e000b200041286a2104230041c0016b2201240020014184016a200041c8026a220241386a290000370200200141fc006a200241306a290000370200200141f4006a200241286a2900003702002001200229002037026c200141b8016a200241186a290000370300200141b0016a200241106a290000370300200141a8016a200241086a290000370300200120022900003703a001200120014190016a4130100a2201418c016a220741d8a2b4aa7c360200200141386a200141186a290300370300200141406b200141206a290300370300200141c8006a200141286a290300370300200141d8006a4200370300200141e0006a4200370300200141e8006a4100360200200120012903103703302001420037035020014280800137029401200141a49e0436029001200141306a20014190016a220210170240024020012802940122062001280298012203490d00200128029001210520014100360298012001200620036b360294012001200320056a36029001420042002002101120012802940122082001280298012203490d00200128029001210620014100360298012001200820036b360294012001200320066a36029001200720021027200141ec006a2002101720012802940122082001280298012203490d0020012802900121072001200820036b220836029001410020054200200620072003200320076a220520021002210320082001280290012206492003410f4f720d00200341d480046a2d000022034110472003410247710d00200120063602042001200536020020022001102820012802900122024102462002720d0020012903980121102004200141a0016a29030037030820042010370300200141c0016a24000c010b000b2000290328200041306a2903001030000b20004198036a2202200041c8026a41c000100a1a2002103141000b2104200041a4036a20004190036a280200360200200020002903880337029c030c110b20004198036a2201200041c8026a41c000100a1a200110314108210241000c0b0b200041c8046a2203102420004280800137029c03200041a49e043602980341d087b7ab7820004198036a2202100f200320021017200120021017200028029c03220520002802a0032203490d062000280298032104200041003602a0032000200520036b36029c032000200320046a36029803201320122002101120002802a0032205200028029c034b0d0620042003200028029803200510041a200041e0036a2012370300200041b0036a200041e0046a290000370300200041a8036a200041d8046a290000370300200041a0036a200041d0046a290000370300200041c0036a200141086a290300370300200041c8036a200141106a290300370300200041d0036a200141186a290300370300200020133703d803200020002900c80437039803200020012903003703b803200210232002200041c8026a41c000100a1a20021031200041083602980341002002102f000b200041b0036a2204200041b8056a2205290000370300200041a8036a2206200041b0056a2207290000370300200041a0036a2208200041a8056a2209290000370300200041c0036a220c200141086a220a290000370300200041c8036a220b200141106a220d290000370300200041d0036a220e200141186a220f290000370300200020002900a00537039803200020012900003703b80320004198036a220320122011100e200041e0036a2011370300200420052900003703002006200729000037030020082009290000370300200c200a290300370300200b200d290300370300200e200f290300370300200020123703d803200020002900a00537039803200020012903003703b803200310232003200041c8026a41c000100a1a20031031410021040b200041a4036a20113e02002000201037029c030c0e0b200041a0036a20014130100a21012000200041c8026a220236029803200041c8036a2903002110200041c0036a2903002111200041c8046a22031024200041a0056a2003200120112010103a20002802a005410846047f20004198036a2201200241c000100a1a2001103141000541010b200041a0056a102f000b20004198036a2101230041106b22002400200041046a41d1e7abf27a10290c0e0b20004198036a2101230041106b22002400200041046a419191bb900510290c0d0b027f230041106b22012400200142808001370208200141a49e0436020441d5f595ef7c200141046a2203100f024020012802082204200128020c2200490d00200128020421022001200420006b220436020420022000200020026a2200200310002102200420012802042203490d00027f0240024020020e0400030301030b20012003360208200120003602042001200141046a102b20012d00000d0020012802080d0020012d00010c010b41000b2100200141106a240020000c010b000b2100230041106b22012400200141a49e0436020441a49e0441003a000020014280808180103702082000200141046a1015200128020c2201418180014f0440000b410020011032000b000b410e2101200041106a410e103b41002104200028021021032000280214220241848004290000370000200241066a418a80042900003700000c040b20004190036a200041ac056a280200360200200020002902a405370388030b41010b2104200041a4036a20004190036a280200360200200020002903880337029c030c050b200041186a20052002102a2000290318201154200041206a290300221220105420102012511b0440410221040c010b200041c8046a2005200220112010103a20002802c80422044108460d0120002802d404210120002802d004210220002802cc0421030b41010c010b20004198036a2204200041c8026a41c000100a1a200410314108210441000b2105200020013602a403200020023602a0032000200336029c032000200436029803200520004198036a102f000b20002001360298030c010b20002002360298030b200420004198036a102f000b0240200028020441ffffffff076a41014d044020014180808080783602000c010b20012000290204370200200141086a2000410c6a2802003602000b200041106a2400230041106b22002400200041808001360208200041a49e043602040240200128020041818080807846044041a49e044181023b0100410221010c010b2000410136020c41a49e0441003a00002001200041046a1034200028020c220141818001490d00000b410020011032000bbc0201047f230041106b2202240020022001101341012104024020022d00000d000240024002400240024020022d0001220341037141016b0e03020301000b200341fc01714102762103410021040c040b200341ff01714104490d020c030b200241096a20033a0000200241013a000820022001360204200241003b010c200241046a2002410c6a410210630d0220022f010c220141ff014d0d0220014102762103410021040c020b200241096a20033a0000200241013a0008200220013602042002410036020c200241046a2002410c6a410410630d01200228020c220141027621032001418080044921040c010b200128020422054104490d002001280200220428000021032001200541046b3602042001200441046a36020020034180808080044921040b2000200336020420002004360200200241106a24000bc50101017f027f41949e042d0000044041989e042802000c010b3f00210241989e0441b09e0536020041949e0441013a0000419c9e04200241107436020041b09e050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a419c9e042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d02419c9e0420023602004100200020016a22022000490d011a0b41989e04200236020020000b0f0b41000ba20101067f230041106b22022400200241086a200110364180808080782103024020022802080d0020012802042206200228020c2204490d002002200441011059200228020021052002280204200128020022032004100a21072001200620046b3602042001200320046a36020041808080807821032005418080808078460d0020002007ad2004ad42208684370204200521030b20002003360200200241106a24000b8314020a7f047e230041e0026b220624000240200245200345720d00200641e8006a200341186a290000370300200641e0006a200341106a290000370300200641d8006a200341086a29000037030020062003290000370350200641c8016a2207200141186a290000370300200641c0016a200141106a290000370300200641b8016a2209200141086a290000370300200620012900003703b001200641f0006a200641a0016a220f4130100a1a200641d8016a2208200141206a220141186a290000370300200641d0016a220a200141106a2900003703002007200141086a290000370300200641a8016a220b200241086a290000370300200641b0016a220c200241106a2900003703002009200241186a290000370300200620012900003703c001200620022900003703a001200641106a220d200f41c000100a1a2008200d41e000100a210e200b20064188016a290300370300200c20064190016a290300370300200920064198016a290300370300200641c0026a2005370300200641b8026a200437030020074200370300200a4200370300200641c8026a220941c880ecec7836020020062006290380013703a001200642003703c001200641003602d002200642808001370214200641a49e04360210200f200d10172006280214220720062802182201490d0020062802102108200641003602182006200720016b3602142006200120086a36021042004200200d10112006280214220a20062802182201490d0020062802102107200641003602182006200a20016b3602142006200120076a3602102009200d1027200e200d101e20064198026a200d101720042005200d10112006280214220920062802182201490d002006280210210a2006200920016b22093602104100200842002007200a20012001200a6a2201200d1002210a20092006280210220849200a410f4f720d00200a41d480046a2d0000220a411047200a410247710d0020062008360274200620013602702008450d002006200841016b220a3602742006200141016a360270027f024002400240024020012d00000e020001050b200a450d042006200841026b220a3602742006200141026a3602700240024020012d00010e020001060b200841226b2208415f4b0d052001410a6a2900002212421886200129000222114228888421102001411a6a29000021132011422088a7210a2012422088a72109200129001221124101210e2011a70c040b200a450d042006200841036b220b3602742006200141036a360270410f21074100210e4100210c0240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024020012d00020e1c00010203040506071f08090a0b0c0d0e0f101112131415161718191a210b200b450d202006200841046b3602742006200141046a3602700240024002400240024002400240024020012d000322070e080007010203040506280b200641106a200641f0006a103d20062802102209418080808078460d2720063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a410021070c060b410221070c050b410321070c040b410421070c030b200641106a200641f0006a103d20062802102209418080808078460d2320063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a410521070c020b410621070c010b410721070b200941807e71210c0c1e0b200b450d1f2006200841046b3602742006200141046a36027020012d0003220941024b0d1f410821070c1a0b200641f0006a1012220941ff01714103460d1e410921070c190b200b450d1d2006200841046b3602742006200141046a36027020012d00030d1d410a21070c1a0b200b450d1c2006200841046b3602742006200141046a36027020012d0003220941024b0d1c410b21070c170b200b450d1b2006200841046b3602742006200141046a36027020012d0003220941034b0d1b410c21070c160b200b450d1a2006200841046b3602742006200141046a360270410d210720012d0003220c2109200c0e0218141a0b200b450d192006200841046b3602742006200141046a36027002400240024020012d00030e0200011c0b200641f0006a1012220a41ff01714103460d1b41808080807821090c010b200641106a200641f0006a103d20062802102209418080808078460d1a20063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a0b200941807e71210c410e21070c170b411021070c150b411121070c140b411221070c130b411321070c120b411421070c110b411521070c100b411621070c0f0b411721070c0e0b411821070c0d0b411921070c0c0b411a21070c0b0b411b21070c0a0b411c21070c090b411d21070c080b411e21070c070b411f21070c060b412021070c050b200641086a200641f0006a102b20062d00080d0720062d00092109412121070c020b412221070c030b410121090b4100210c0c020b200641f0006a102c450d0320062802741a0c030b0b20062802742108200c200941ff0171720b210120080d002009ad422086201042808080f8ffffffff00834218888421112001ad2010422886200aad42ff018342208684842110024002400240200e0440201020118450450d010c020b2007410946044041012108200141ff0171450d030b2006411c6a20113e02002006201037021420062007360210200641ac016a4201370200200641013602a4012006419483043602a001200641013602dc022006200641d8026a3602a8012006200641106a3602d8024100210820064100103b2006410036027820062006290300370270200641f0006a200641a0016a103f0d03200020062902703702042000410c6a200641f8006a2802003602000c020b200641d2016a2002290000370100200641ea016a200241186a290000370100200641e2016a200241106a290000370100200641da016a200241086a290000370100200620103703a001200641013a00d101200641003a00b001200620113703a801200641a0016a10200b201220138450450440200641d2016a2003290000370100200641ea016a200341186a290000370100200641e2016a200341106a290000370100200641da016a200341086a290000370100200620123703a001200641013a00d101200641003a00b001200620133703a801200641a0016a10200b200641b1016a2002290000370000200641d2016a2003290000370100200641c9016a200241186a290000370000200641c1016a200241106a29000037000041082108200641b9016a200241086a290000370000200641da016a200341086a290000370100200641e2016a200341106a290000370100200641ea016a200341186a290000370100200641013a00d101200641013a00b001200620053703a801200620043703a001200641a0016a10200b20002008360200200641e0026a24000f0b000bf60202107f027e230041e0006b22052400200520012002102a410821060240200529030022162003542207200541086a290300221520045420042015511b450440200541286a2208200141186a2209290000370300200541206a220a200141106a220b290000370300200541186a220c200141086a220d290000370300200541386a220e200241086a220f290000370300200541406b2210200241106a2211290000370300200541c8006a2212200241186a22132900003703002005200129000037031020052002290000370330200541106a2214201620037d2203201520047d2007ad7d2204100e200541d8006a200437030020082009290000370300200a200b290000370300200c200d290000370300200e200f2900003703002010201129000037030020122013290000370300200520033703502005200129000037031020052002290000370330201410230c010b200042003702042000410c6a42003e0200410221060b20002006360200200541e0006a24000b3701017f230041106b22022400200241086a200141001059200228020c21012000200228020836020020002001360204200241106a24000bf20402087f097e230041f0006b2200240002400240102541ff01714105470d0020004180800136023041a49e04200041306a100120002802302201418180014f0d00024020014104490d00200041a89e043602102000200141046b36021441a49e042d0000419b01470d0041a59e042d000041ae01470d0041a69e042d0000419d01470d0041a79e042d000041de00470d00200041186a200041106a2201103d20002802182202418080808078460d0020002d001c2103200041246a2001103d20002802242204418080808078460d0020002902282108200041086a2001102b20002d00080d00200028021422014120490d0020014160714120470d020b102d000b000b20002d000921052000280210220129000021092001290008210a2001290010210b2001290018210c2001290020210d2001290028210e2001290030210f20012900382110200041386a200041206a2800003600002000200028001d360035200020033a00342000200236023041d1e7abf27a200041306a220310642000200837023420002004360230419191bb900520031064230041106b22012400200142808001370208200141a49e0436020441d5f595ef7c200141046a2206100f0240024020012802082207200128020c2202490d00200128020421042001410036020c2001200720026b3602082001200220046a360204200520061015200128020c220520012802084b0d00200420022001280204200510041a200141106a24000c010b000b200020103703682000200f3703602000200e3703582000200d3703502000200c3703482000200b3703402000200a370338200020093703302003103141a49e0441003b0100410041021032000b9c0502097f017e230041106b22062400200641046a2001103802400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541db89046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000ba30701027f230041106b22022400027f02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002402000280200220341076b4100200341086b411b491b41016b0e1b0102030405060708090a0b0c0d0e0f101112131415161718191a1b000b2002200036020c200141a58304410a2002410c6a4102104d0c1b0b2002200041046a36020c200141af830441122002410c6a4103104d0c1a0b2002200041046a36020c200141c1830441092002410c6a4104104d0c190b2002200036020c200141ca8304410f2002410c6a4105104d0c180b2002200041046a36020c200141d9830441102002410c6a4106104d0c170b2002200041046a36020c200141e9830441182002410c6a4107104d0c160b2002200041046a36020c200141818404410e2002410c6a4108104d0c150b2002200041046a36020c2001418f840441162002410c6a4109104d0c140b200128021441a584044118200141186a28020028020c1100000c130b200128021441bd84044111200141186a28020028020c1100000c120b200128021441ce84044112200141186a28020028020c1100000c110b200128021441e084044119200141186a28020028020c1100000c100b200128021441f98404411c200141186a28020028020c1100000c0f0b2001280214419585044111200141186a28020028020c1100000c0e0b200128021441a685044115200141186a28020028020c1100000c0d0b200128021441bb85044116200141186a28020028020c1100000c0c0b200128021441d185044110200141186a28020028020c1100000c0b0b200128021441e18504410c200141186a28020028020c1100000c0a0b200128021441ed85044113200141186a28020028020c1100000c090b200128021441808604410f200141186a28020028020c1100000c080b2001280214418f8604410e200141186a28020028020c1100000c070b2001280214419d86044117200141186a28020028020c1100000c060b200128021441b486044114200141186a28020028020c1100000c050b200128021441c88604411a200141186a28020028020c1100000c040b200128021441e286044113200141186a28020028020c1100000c030b200128021441f586044111200141186a28020028020c1100000c020b2002200041046a36020c20014186870441132002410c6a410a104d0c010b2001280214419987044114200141186a28020028020c1100000b2101200241106a240020010b0c00200041c48704200110550b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b10002000200141b89d0441c49d0410650b10002000200141d09d0441dc9d0410650bb70b02117f017e230041206b220224002000280200220028020821082000280204210b4101210e02402001280214220d4122200141186a280200221028021022111102000d00024002402008450d002008200b6a2112200b2107024003400240027f2007220a2c0000220041004e0440200041ff01712103200a41016a0c010b200a2d0001413f7121072000411f7121012000415f4d044020014106742007722103200a41026a0c010b200a2d0002413f7120074106747221072000417049044020072001410c74722103200a41036a0c010b2001411274418080f00071200a2d0003413f71200741067472722203418080c400460d01200a41046a0b2107024002400240024002400240024002400240200341096b0e050604010105000b2003450d0620034122460d01200341dc00460d020b2003410b74210641002101412121054121210c03400240200541017620016a220041027441dc96046a280200410b742205200646220f0440200021010c010b2000200c200520064b1b220c200041016a200120052006491b22016b21052001200c490d010b0b2001200f6a220641204b0d092006410274220541dc96046a280200411576210141d7052100027f024020064120460d00200541e096046a280200411576210020060d0041000c010b200541d896046a28020041ffffff00710b2105200041016b220f2106024020002001417f736a450d00200320056b210c41d7052001200141d7054f1b41d7056b21004100210503402000450d0b200c2005200141e097046a2d00006a2205490440200121060c020b200041016a2100200f200141016a2201470d000b0b0240024002400240200641017145044020034120490d04200341ff00490d03200341808004490d02200341808008490d01200341f083386b4190fc0b49200341b0c70c6b41d0ba2b4972200341cba60c6b4105492003419ef40b6b41e20b497272200341e1d70b6b419f1849200341a29d0b6b410e4972200341feffff0071419ef00a46200341e0ffff007141e0cd0a467272720d04200341baee0a6b4106490d040c030b200241046a200310440c0a0b200341db8b04412c41b38c0441c40141f78d0441c20310450d010c020b200341b99104412841899204419f0241a8940441af021045450d010b2002200336020820024180013a00040c070b200241046a200310440c060b20024180043b010e20024200370106200241dcc4003b01040c050b20024180043b010e20024200370106200241dcb8013b01040c040b20024180043b010e20024200370106200241dcdc013b01040c030b20024180043b010e20024200370106200241dce4013b01040c020b20024180043b010e20024200370106200241dce8013b01040c010b20024180043b010e20024200370106200241dce0003b01040b024020022d0004418001460d0020022d000f20022d000e6b41ff01714101460d00200420094b0d0302402004450d00200420084f044020042008470d050c010b2004200b6a2c00004140480d040b02402009450d00200820094d044020082009470d050c010b2009200b6a2c000041bf7f4c0d040b200d2004200b6a200920046b201028020c110000450440200241186a22062002410c6a2802003602002002200229020422133703102013a7210003400240200041ff017141800147044020022d001a220120022d001b4904402002200141016a3a001a2001410a4f0d08200241106a20016a2d000021010c020b027f41012003418001490d001a41022003418010490d001a41034104200341808004491b0b20096a21040c040b410021002006410036020020022802142101200242003703100b200d20012011110200450d000b0b0c060b2009200a6b20076a210920072012470d010b0b2004450d01200420084f044020042008460d030c010b2004200b6a2c000041bf7f4a0d020b000b410021040b200d2004200b6a200820046b201028020c1100000d00200d41222011110200210e0b200241206a2400200e0bf60101037f230041106b220241086a41003a0000200241003b010620022001410876410f7141dd87046a2d00003a000c20022001410c76410f7141dd87046a2d00003a000b20022001411076410f7141dd87046a2d00003a000a20022001411476410f7141dd87046a2d00003a000920014101726741027641026b2204200241066a6a220341d796042f00003b000020022001410476410f7141dd87046a2d00003a000d200341026a41d996042d00003a00002002410e6a22032001410f7141dd87046a2d00003a000020002002290106370000200241fd003a000f200041086a20032f01003b00002000410a3a000b200020043a000a0bb20201077f410121080240024002402002450d00200120024101746a210a20004180fe0371410876210b200041ff0171210d0340200141026a210c200720012d000122026a2109200b20012d000022014704402001200b4b0d0220092107200c2201200a460d020c010b2004200949200720094b720d03200320076a2101024003402002450d01200241016b210220012d00002107200141016a21012007200d470d000b410021080c030b20092107200c2201200a470d000b0b2006450d00200520066a2104200041ffff037121010340200541016a210020052d00002202411874411875220341004e047f20000520002004460d0320052d0001200341ff0071410874722102200541026a0b2105200120026b22014100480d012008410173210820042005470d000b0b20084101710f0b000b2800200128021441b8870441ad870420002802002d00001b410b200141186a28020028020c1100000b10002000200141e89d0441f89d0410650ba00301037f23004180016b2203240020002802002100027f0240024002400240200128021c22024110714504402002412071450d0120002d00002102410021000340200020036a41ff006a413041372002410f712204410a491b20046a3a0000200041016b2100200222044104762102200441104f0d000b20004180016a4181014f0d032001419188044102200020036a4180016a410020006b10490c050b20002d00002102410021000340200020036a41ff006a413041d7002002410f712204410a491b20046a3a0000200041016b2100200222044104762102200441104f0d000b0c010b02400240024020002d0000220241e4004f044020032002200241e4006e2202419c7f6c6a41ff0171410174419388046a2f00003b0025412421000c010b412621002002410a4f0d010b200020036a20024130723a00000c010b20032002410174419388046a2f00003b0025412521000b200141dc87044100200020036a412720006b10490c030b20004180016a418101490d010b000b2001419188044102200020036a4180016a410020006b10490b210020034180016a240020000bdc0301097f230041106b22082400200028021c2209410171220b20046a210502402009410471450440410021010c010b20020440200121062002210a0340200720062c000041bf7f4a6a2107200641016a2106200a41016b220a0d000b0b200520076a21050b412b418080c400200b1b210a02402000280200450440410121062000280214220520002802182200200a20012002105e0d01200520032004200028020c11000021060c010b2005200028020422074f0440410121062000280214220520002802182200200a20012002105e0d01200520032004200028020c11000021060c010b200941087104402000280210210c2000413036021020002d0020210d41012106200041013a0020200028021422092000280218220b200a20012002105e0d01200841086a2000200720056b105b20082802082201418080c400460d01200828020c2102200920032004200b28020c1100000d01200120022009200b105c0d012000200d3a00202000200c360210410021060c010b20082000200720056b105b4101210620082802002207418080c400460d00200828020421092000280214220520002802182200200a20012002105e0d00200520032004200028020c1100000d002007200920052000105c21060b200841106a240020060b1b00200128021441c582044110200141186a28020028020c1100000b3200200128021420002802002d0000220041027441889e046a280200410a20004101746b200141186a28020028020c1100000b6401017f230041106b22022400027f200028020022002802004180808080784604402002200041046a3602082001419c83044109200241086a4104104d0c010b2002200036020c200141b8810441062002410c6a410b104d0b2100200241106a240020000ba20201047f230041406a220524004101210702402000280214220620012002200041186a280200220228020c22011100000d000240200028021c22084104714504402006418e8804410120011100000d022003200020041102000d0220002802142106200028021828020c21010c010b2006418f8804410220011100000d01200541013a001b200541346a41f08704360200200520023602102005200636020c20052008360238200520002d00203a003c2005200028021036022c200520002902083702242005200029020037021c20052005411b6a36021420052005410c6a36023020032005411c6a20041102000d012005280230418c88044102200528023428020c1100000d010b200641dc87044101200111000021070b200541406b240020070ba40201017f230041106b22022400027f024002400240024002400240024002402000280200220028020041016b0e0701020304050607000b2002200041046a360208200141b881044106200241086a410b104d0c070b200128021441be81044113200141186a28020028020c1100000c060b200128021441d181044115200141186a28020028020c1100000c050b200128021441e681044114200141186a28020028020c1100000c040b200128021441fa81044111200141186a28020028020c1100000c030b2002200041046a36020c2001418b820441172002410c6a410b104d0c020b200128021441a282044116200141186a28020028020c1100000c010b200128021441b88204410d200141186a28020028020c1100000b2101200241106a240020010bea0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100105320042802082103200428020c0c020b2003280200210602402001200210372203450440410021030c010b200320062005100a1a0b20020c010b20042001200210542004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100a1a200020043602080f0b000b000b4d01017f024020022000280200200028020822036b4b04402000200320021052418180808078470d01200028020821030b200028020420036a20012002100a1a2000200220036a3602080f0b000bb70101027f230041206b22032400027f41002001200120026a22014b0d001a4108200028020022024101742204200120012004491b2201200141084d1b2201417f73411f76210402402002450440200341003602180c010b2003200236021c20034101360218200320002802043602140b200341086a20042001200341146a104f2003280208450440200328020c210220002001360200200020023602044181808080780c010b200328020c0b2104200341206a240020040b2b0020020440200345044041a09e042d00001a0b20012002103721010b20002002360204200020013602000b3901017f230041106b22032400200341086a2001200241001053200328020c21012000200328020836020020002001360204200341106a24000ba70401087f230041406a22032400200341346a2001360200200341033a003c2003412036022c2003410036023820032000360230200341003602242003410036021c027f02400240200228021022014504402002410c6a28020022004103742106200041ffffffff017121072002280204210a20022802002109200228020821024100210141002100034020012006460d02200120096a220441046a28020022050440200328023020042802002005200328023428020c1100000d040b200041016a2100200141086a21012002280200210420022802042105200241086a210220042003411c6a2005110200450d000b0c020b200241146a28020022074105742100200741ffffff3f7121072002410c6a2802002105200228020821062002280204210a20022802002209210203402000450d01200241046a28020022080440200328023020022802002008200328023428020c1100000d030b2003200128021036022c200320012d001c3a003c20032001280218360238200341106a2006200141086a105d2003200329031037021c200341086a20062001105d20032003290308370224200441016a2104200241086a2102200041206b210020012802142108200141206a2101200620084103746a22082802002003411c6a2008280204110200450d000b0c010b2007200a4904402003280230200920074103746a22002802002000280204200328023428020c1100000d010b41000c010b41010b2101200341406b240020010b0300010b0c00200020012002105141000ba30201027f230041106b22022400024020002002410c6a027f0240024020014180014f04402002410036020c2001418010490d012001418080044f0d0220022001413f71418001723a000e20022001410c7641e001723a000c20022001410676413f71418001723a000d41030c030b2000280208220320002802004604402000200341011052418180808078470440000b200028020821030b2000200341016a360208200028020420036a20013a00000c030b20022001413f71418001723a000d2002200141067641c001723a000c41020c010b20022001413f71418001723a000f20022001410676413f71418001723a000e20022001410c76413f71418001723a000d2002200141127641077141f001723a000c41040b10510b200241106a240041000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001105420032802080c010b2003200420014101105320032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b0e0020002802001a03400c000b000b8b0101037f02400240024020012d0020220341016b0e03000100020b20022103410021020c010b20024101762103200241016a41017621020b200341016a2103200141186a2802002105200128021021042001280214210102400340200341016b2203450d01200120042005280210110200450d000b418080c40021040b20002002360204200020043602000b3201017f027f0340200120012004460d011a200441016a2104200220002003280210110200450d000b200441016b0b2001490b5501027f0240027f02400240200228020041016b0e020103000b200241046a0c010b200120022802044103746a2201280204410c470d0120012802000b2802002104410121030b20002004360204200020033602000b39000240027f2002418080c40047044041012000200220012802101102000d011a0b20030d0141000b0f0b200020032004200128020c1100000bcc0501107f230041406a22032400200341003b013c200320023602382003410036023420034281808080a00137022c2003200236022820034100360224200320023602202003200136021c2003410a3602182000280204210f2000280200210a2000280208210b200341306a210c027f0340024002400240024020032d003d0d00200328021c2108027f024020032802282205200328022022104b0d002003280224220120054b0d00200328022c2204200c6a41016b211102400340200120086a210020112d00002106027f0240200520016b220741084f0440024002402000200041036a417c712202460440200741086b210d410021020c010b200341106a20062000200220006b2202106020032802104101460d012002200741086b220d4b0d030b200641818284086c210e0340200020026a220941046a280200200e732212417f73201241818284086b712009280200200e732209417f73200941818284086b7172418081828478710d03200241086a2202200d4d0d000b0c020b2003280214210241010c020b200320062000200710602003280204210220032802000c010b200341086a2006200020026a200720026b1060200328020c20026a210220032802084101460b4101470d012003200120026a41016a220136022402402001200449200120104b724504402008200120046b6a21002000200c2004100d450d010b200120054d0d010c030b0b2003280234210020032001360234200120006b0c020b200320053602240b200341013a003d024020032d003c044020032802382102200328023421000c010b2003280238220220032802342200460d020b200220006b0b2101200f28020c2102200b2d00000d010c020b41000c040b200a41888804410420021100000d010b200020086a2100200b2001047f200020016a41016b2d0000410a460541000b3a0000200a200020012002110000450d010b0b41010b2100200341406b240020000b5701027f024002402003450440410021030c010b200141ff017121054101210103402005200220046a2d0000460440200421030c030b2003200441016a2204470d000b0b410021010b20002003360204200020013602000b4e01027f20002802042102200028020021030240200028020822002d0000450d002003418888044104200228020c110000450d0041010f0b20002001410a463a00002003200120022802101102000b0c00200041f08704200110550b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100a1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100a1a0b2000200320026b3602042000200120026a36020041000b0b8c0101047f230041106b22022400200242808001370208200241a49e043602042000200241046a2204100f024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a360204200120041034200228020c220120022802084b0d00200320002002280204200110041a200241106a24000f0b000b3000200128021420002802002d0000410274220020036a280200200020026a280200200141186a28020028020c1100000b0bdd1d0300418080040bdb0ad0c36d854e6f744c656e64696e67506f6f6c011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb100102030405060708090a0b0c0d0e4d617844656274526561636865644d61784465706f736974526561636865644d696e696d616c446562744d696e696d616c436f6c6c61746572616c556e646572666c6f774f766572666c6f7744697642795a65726f437573746f6d496e73756666696369656e7442616c616e6365496e73756666696369656e74416c6c6f77616e63655a65726f526563697069656e74416464726573735a65726f53656e64657241646472657373536166655472616e73666572436865636b4661696c65645065726d6974496e76616c69645369676e61747572655065726d697445787069726564496e76616c6964417373657452756c65416c7265616479536574496e61637469766546726f7a656e496e76616c696443616c6c65724d697373696e67526f6c65526f6c65526564756e64616e740000dc030100000000004d61746845726f727250535032324572726f72416363657373436f6e74726f6c4572726f724d6174684572726f72417373657452756c65734572726f7252657365727665446174614572726f72526573657276655265737472696374696f6e734572726f725072696365466565644572726f72466c6173684c6f616e52656365697665724572726f72416d6f756e744e6f74477265617465725468616e5a65726f416c72656164795265676973746572656441737365744e6f74526567697374657265644173736574497350726f746f636f6c537461626c65636f696e417373657449734e6f7450726f746f636f6c537461626c65636f696e52756c65426f72726f7744697361626c6552756c65436f6c6c61746572616c44697361626c65496e73756666696369656e74436f6c6c61746572616c496e73756666696369656e7444656274436f6c6c61746572697a6564496e73756666696369656e744465706f7369744d696e696d756d52656369657665644e6f7468696e67546f52657061794e6f7468696e67546f436f6d70656e736174655769746854616b696e674e6f7441436f6c6c61746572616c566563746f7273496e636f6e73697374656e744c656e677468734d61726b657452756c65496e76616c696449644465706f736974466565546f6f486967685477456e747279496e76616c6964496e646578546f6f4561726c79546f41646a757374526174654e6f5375636841737365744e6f507269636546656564000d0000000c000000040000000e0000000f000000100000002930313233343536373839616263646566000000110000000c00000004000000120000001300000014000000202020202c0a28280a30783030303130323033303430353036303730383039313031313132313331343135313631373138313932303231323232333234323532363237323832393330333133323333333433353336333733383339343034313432343334343435343634373438343935303531353235333534353535363537353835393630363136323633363436353636363736383639373037313732373337343735373637373738373938303831383238333834383538363837383838393930393139323933393439353936393739383939010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100419d8b040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041dc8b040bb7120601010301040205070702080809020a050b020e041001110212051311140115021702190d1c051d081f0124016a046b02af03b102bc02cf02d102d40cd509d602d702da01e005e102e704e802ee20f004f802fa03fb010c273b3e4e4f8f9e9e9f7b8b9396a2b2ba86b1060709363d3e56f3d0d1041418363756577faaaeafbd35e01287898e9e040d0e11122931343a4546494a4e4f64655cb6b71b1c07080a0b141736393aa8a9d8d909379091a8070a3b3e66698f92116f5fbfeeef5a62f4fcff53549a9b2e2f2728559da0a1a3a4a7a8adbabcc4060b0c151d3a3f4551a6a7cccda007191a22253e3fe7ecefffc5c604202325262833383a484a4c50535556585a5c5e606365666b73787d7f8aa4aaafb0c0d0aeaf6e6fbe935e227b0503042d036603012f2e80821d03310f1c0424091e052b0544040e2a80aa06240424042808340b4e43813709160a08183b45390363080930160521031b05014038044b052f040a070907402027040c0936033a051a07040c07504937330d33072e080a8126524b2b082a161a261c1417094e042409440d19070a0648082709750b423e2a063b050a0651060105100305808b621e48080a80a65e22450b0a060d133a060a362c041780b93c64530c48090a46451b4808530d49070a80f6460a1d03474937030e080a0639070a813619073b031c56010f320d839b66750b80c48a4c630d843010168faa8247a1b98239072a045c06260a460a28051382b05b654b0439071140050b020e97f80884d62a09a2e781330f011d060e0408818c89046b050d0309071092604709743c80f60a73087015467a140c140c570919808781470385420f1584501f060680d52b053e2101702d031a040281401f113a050181d02a82e680f7294c040a04028311444c3d80c23c06010455051b3402810e2c04640c560a80ae381d0d2c040907020e06809a83d80411030d0377045f060c04010f0c0438080a062808224e81540c1d03090736080e040907090780cb250a840600010305050606020706080709110a1c0b190c1a0d100e0c0f0410031212130916011704180119031a071b011c021f1620032b032d0b2e01300331023201a702a902aa04ab08fa02fb05fd02fe03ff09ad78798b8da23057588b8c901cdd0e0f4b4cfbfc2e2f3f5c5d5fe2848d8e9192a9b1babbc5c6c9cadee4e5ff00041112293134373a3b3d494a5d848e92a9b1b4babbc6cacecfe4e500040d0e11122931343a3b4546494a5e646584919b9dc9cecf0d11293a3b4549575b5c5e5f64658d91a9b4babbc5c9dfe4e5f00d11454964658084b2bcbebfd5d7f0f183858ba4a6bebfc5c7cfdadb4898bdcdc6cecf494e4f57595e5f898e8fb1b6b7bfc1c6c7d71116175b5cf6f7feff806d71dedf0e1f6e6f1c1d5f7d7eaeaf7fbbbc16171e1f46474e4f585a5c5e7e7fb5c5d4d5dcf0f1f572738f747596262e2fa7afb7bfc7cfd7df9a409798308f1fd2d4ceff4e4f5a5b07080f10272feeef6e6f373d3f42459091536775c8c9d0d1d8d9e7feff00205f2282df048244081b04061181ac0e80ab051f09811b03190801042f043404070301070607110a500f1207550703041c0a090308030703020303030c0405030b06010e15054e071b0757070206170c500443032d03010411060f0c3a041d255f206d046a2580c80582b0031a0682fd03590716091809140c140c6a060a061a0659072b05460a2c040c040103310b2c041a060b0380ac060a062f314d0380a4083c030f033c0738082b0582ff1118082f112d03210f210f808c048297190b158894052f053b07020e180980be22740c80d61a0c0580ff0580df0cf29d033709815c1480b80880cb050a183b030a06380846080c06740b1e035a0459098083181c0a16094c04808a06aba40c170431a10481da26070c050580a61081f50701202a064c04808d0480be031b030f0d5c757b00000003000083042000910560005d13a0001217201f0c20601fef2ca02b2a30202c6fa6e02c02a8602d1efb602e00fe20369eff6036fd01e136010a2137240de137ab0e61392f18a139301c6148f31ea14c40346150f06aa1514f6f21529dbca15200cf615365d1a15300da215400e0e155aee26157ece42159d0e8a1592000ee59f0017f5a00700007002d0101010201020101480b30151001650702060202010423011e1b5b0b3a09090118040109010301052b033c082a180120370101010408040103070a021d013a0101010204080109010a021a010202390104020402020303011e0203010b0239010405010204011402160601013a0101020104080107030a021e013b0101010c01090128010301370101030503010407020b021d013a01020102010301050207020b021c02390201010204080109010a021d0148010401020301010801510102070c08620102090b0749021b0101010101370e01050102050b0124090166040106010202021902040310040d01020206010f01000300031d021e021e02400201070801020b09012d030101750222017603040209010603db0202013a010107010101010208060a0201301f310430070101050128090c0220040202010338010102030101033a0802029803010d0107040106010302c6400001c32100038d016020000669020004010a200250020001030104011902050197021a120d012608190b2e0330010204020227014306020202020c0108012f01330101030202050201012a020801ee010201040100010010101000020001e201950500030102050428030401a502000400025003460b31047b01360f290102020a033104020207013d03240501083e010c0234090a0402015f0302010102060102019d010308150239020101010116010e070305c308020301011701510102060101020101020102eb010204060201021b025508020101026a0101010206010165030204010500090102f5010a0201010401900402020401200a280602040801090602032e0d010200070106010152160207010201027a06030101020107010148020301010100020b023405050101010001060f00053b0700013f0451010002002e0217000101030405080802071e0494030037043208010e011605010f000701110207010201056401a00700013d04000400076d07006080f000000d0000000b0000000d0000006d0101007a010100850101000900000008000000090000009e000100a7000100af0001000e000000110000000b000000110000006300010071000100820001008d000100550101005f010100670101","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"a_token","version":"1.0.0","authors":["Konrad Wierzbik "],"description":"Abax Protocol AToken contract","license":"BUSL-1.1"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":22}},{"label":"symbol","type":{"displayName":["String"],"type":22}},{"label":"decimal","type":{"displayName":["u8"],"type":9}},{"label":"lending_pool","type":{"displayName":["AccountId"],"type":7}},{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":40},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":7},"balance":{"displayName":["Balance"],"type":0},"blockNumber":{"displayName":["BlockNumber"],"type":55},"chainExtension":{"displayName":["ChainExtension"],"type":62},"hash":{"displayName":["Hash"],"type":43},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":58}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":55}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":56}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":0}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":0}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":0}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":9}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":22}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":22}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":8}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":8}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":0}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":56}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":56}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":57}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":59}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":61}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":55}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":60}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":60}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":60}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":58}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":55}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":55}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":55}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":55}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":46}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":46}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":55}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":46}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":46}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":46}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":46}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":41},"messages":[{"args":[],"default":false,"docs":[],"label":"own_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":42},"selector":"0x1bd1179e"},{"args":[{"label":"transfer_event_data","type":{"displayName":["Vec"],"type":44}}],"default":false,"docs":[],"label":"AbacusToken::emit_transfer_events","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0x7bfede3f"},{"args":[{"label":"transfer_event_data","type":{"displayName":["TransferEventData"],"type":45}},{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"decrease_allowance_by","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"AbacusToken::emit_transfer_event_and_decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0x4106ef53"},{"args":[],"default":false,"docs":[],"label":"AbacusToken::get_lending_pool","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0xcec6d17e"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"label":"spender","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":52}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":52}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":47},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":54},"selector":"0x7271b782"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":0}},"root_key":"0xc629684f","ty":1}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":0}},"root_key":"0xffbbddfc","ty":6}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":0}},"root_key":"0x7c996051","ty":13}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"lending_pool"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"underlying_asset"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd0c36d85","ty":0}},"root_key":"0xd0c36d85","ty":18}},"name":"allowances"}],"name":"AbacusTokenStorage"}},"name":"abacus_token"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":22}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":23}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":22}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":28}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":9}},"root_key":"0xd57ae5cd","ty":32}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"}],"name":"AToken"}},"root_key":"0x00000000","ty":36}},"types":[{"id":0,"type":{"def":{"primitive":"u128"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","Lazy"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":0},{"name":"KeyType","type":10}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":8,"type":{"def":{"array":{"len":32,"type":9}}}},{"id":9,"type":{"def":{"primitive":"u8"}}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"L","type":11},{"name":"R","type":12}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":15}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":14,"type":{"def":{"tuple":[7,7]}}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"L","type":16},{"name":"R","type":17}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":19}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"L","type":20},{"name":"R","type":21}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"primitive":"str"}}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"V","type":24},{"name":"KeyType","type":25}],"path":["ink_storage","lazy","Lazy"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":22}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":22}],"path":["Option"]}},{"id":25,"type":{"def":{"composite":{}},"params":[{"name":"L","type":26},{"name":"R","type":27}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"V","type":24},{"name":"KeyType","type":29}],"path":["ink_storage","lazy","Lazy"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"L","type":30},{"name":"R","type":31}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":33}],"path":["ink_storage","lazy","Lazy"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"L","type":34},{"name":"R","type":35}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":36,"type":{"def":{"composite":{"fields":[{"name":"psp22","type":37,"typeName":",>>::Type"},{"name":"abacus_token","type":38,"typeName":",>>::Type"},{"name":"metadata","type":39,"typeName":",>>::Type"}]}},"path":["a_token","a_token","AToken"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":1,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":6,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":13,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":38,"type":{"def":{"composite":{"fields":[{"name":"lending_pool","type":7,"typeName":",>>::Type"},{"name":"underlying_asset","type":7,"typeName":",>>::Type"},{"name":"allowances","type":18,"typeName":"> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1070055618u32, ()>,>>::Type"}]}},"path":["abax_contracts","abacus_token","implementation","storage","AbacusTokenStorage"]}},{"id":39,"type":{"def":{"composite":{"fields":[{"name":"name","type":23,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":28,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":32,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":40,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":41}],"path":["Result"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":42,"type":{"def":{"variant":{"variants":[{"fields":[{"type":43}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":43},{"name":"E","type":41}],"path":["Result"]}},{"id":43,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":44,"type":{"def":{"sequence":{"type":45}}}},{"id":45,"type":{"def":{"composite":{"fields":[{"name":"from","type":46,"typeName":"Option"},{"name":"to","type":46,"typeName":"Option"},{"name":"amount","type":0,"typeName":"Balance"}]}},"path":["abax_contracts","abacus_token","structs","TransferEventData"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":7}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":7}],"path":["Option"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"fields":[{"type":48}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":48},{"name":"E","type":41}],"path":["Result"]}},{"id":48,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":49}],"path":["Result"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"fields":[{"type":22,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":22,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":41}],"path":["Result"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":41}],"path":["Result"]}},{"id":52,"type":{"def":{"sequence":{"type":9}}}},{"id":53,"type":{"def":{"variant":{"variants":[{"fields":[{"type":24}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":24},{"name":"E","type":41}],"path":["Result"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":41}],"path":["Result"]}},{"id":55,"type":{"def":{"primitive":"u32"}}},{"id":56,"type":{"def":{"primitive":"bool"}}},{"id":57,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":55,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":58,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":58,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":58,"type":{"def":{"primitive":"u64"}}},{"id":59,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":60,"typeName":"Option"},{"name":"maximal_total_debt","type":60,"typeName":"Option"},{"name":"minimal_collateral","type":0,"typeName":"Balance"},{"name":"minimal_debt","type":0,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":60,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":61,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":55,"typeName":"u32"},{"name":"deposit_fee_e6","type":55,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":62,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/a_token.json b/artifacts/a_token.json new file mode 100644 index 0000000..c88072a --- /dev/null +++ b/artifacts/a_token.json @@ -0,0 +1,3003 @@ +{ + "source": { + "hash": "0x5adc19dea0f4a33458d689bdec40124691060f14d72623fbfe2914955009bc92", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "a_token", + "version": "1.0.0", + "authors": ["Konrad Wierzbik "], + "description": "Abax Protocol AToken contract", + "license": "BUSL-1.1" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 9 + } + }, + { + "label": "lending_pool", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 40 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 7 + }, + "balance": { + "displayName": ["Balance"], + "type": 0 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 55 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 62 + }, + "hash": { + "displayName": ["Hash"], + "type": 43 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 58 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 55 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 56 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 0 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 56 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 56 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 57 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 59 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 61 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 55 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 60 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 60 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 60 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 58 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 55 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 55 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 55 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 55 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 46 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 46 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 55 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 46 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 46 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 46 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 46 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 41 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "own_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 42 + }, + "selector": "0x1bd1179e" + }, + { + "args": [ + { + "label": "transfer_event_data", + "type": { + "displayName": ["Vec"], + "type": 44 + } + } + ], + "default": false, + "docs": [], + "label": "AbacusToken::emit_transfer_events", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0x7bfede3f" + }, + { + "args": [ + { + "label": "transfer_event_data", + "type": { + "displayName": ["TransferEventData"], + "type": 45 + } + }, + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "decrease_allowance_by", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbacusToken::emit_transfer_event_and_decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0x4106ef53" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbacusToken::get_lending_pool", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 50 + }, + "selector": "0xcec6d17e" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 52 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 52 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 47 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 53 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 53 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 54 + }, + "selector": "0x7271b782" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 0 + } + }, + "root_key": "0xc629684f", + "ty": 1 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 0 + } + }, + "root_key": "0xffbbddfc", + "ty": 6 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 0 + } + }, + "root_key": "0x7c996051", + "ty": 13 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 7 + } + }, + "name": "lending_pool" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 7 + } + }, + "name": "underlying_asset" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd0c36d85", + "ty": 0 + } + }, + "root_key": "0xd0c36d85", + "ty": 18 + } + }, + "name": "allowances" + } + ], + "name": "AbacusTokenStorage" + } + }, + "name": "abacus_token" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 22 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 23 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 22 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 28 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 9 + } + }, + "root_key": "0xd57ae5cd", + "ty": 32 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + } + ], + "name": "AToken" + } + }, + "root_key": "0x00000000", + "ty": 36 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 10 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 8, + "type": { + "def": { + "array": { + "len": 32, + "type": 9 + } + } + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 11 + }, + { + "name": "R", + "type": 12 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 15 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 14, + "type": { + "def": { + "tuple": [7, 7] + } + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 16 + }, + { + "name": "R", + "type": 17 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 19 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 20 + }, + { + "name": "R", + "type": 21 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 24 + }, + { + "name": "KeyType", + "type": 25 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 22 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 22 + } + ], + "path": ["Option"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 26 + }, + { + "name": "R", + "type": 27 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 24 + }, + { + "name": "KeyType", + "type": 29 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 30 + }, + { + "name": "R", + "type": 31 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 33 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 34 + }, + { + "name": "R", + "type": 35 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "psp22", + "type": 37, + "typeName": ",>>::Type" + }, + { + "name": "abacus_token", + "type": 38, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 39, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["a_token", "a_token", "AToken"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 1, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 6, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 13, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "lending_pool", + "type": 7, + "typeName": ",>>::Type" + }, + { + "name": "underlying_asset", + "type": 7, + "typeName": ",>>::Type" + }, + { + "name": "allowances", + "type": 18, + "typeName": "> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1070055618u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_contracts", "abacus_token", "implementation", "storage", "AbacusTokenStorage"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 23, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 28, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 32, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 40, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 41, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 42, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 43 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 43 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 44, + "type": { + "def": { + "sequence": { + "type": 45 + } + } + } + }, + { + "id": 45, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "from", + "type": 46, + "typeName": "Option" + }, + { + "name": "to", + "type": 46, + "typeName": "Option" + }, + { + "name": "amount", + "type": 0, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_contracts", "abacus_token", "structs", "TransferEventData"] + } + }, + { + "id": 46, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 7 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + } + ], + "path": ["Option"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 48 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 48 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 22, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 22, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 50, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 52, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 53, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 24 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 24 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 54, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 55, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 56, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 57, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 55, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 58, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 58, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 59, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 60, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 60, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 0, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 0, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 60, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 61, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 55, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 55, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 62, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/a_token.wasm b/artifacts/a_token.wasm new file mode 100644 index 0000000..c081316 Binary files /dev/null and b/artifacts/a_token.wasm differ diff --git a/artifacts/abax_governor.contract b/artifacts/abax_governor.contract new file mode 100644 index 0000000..93e5847 --- /dev/null +++ b/artifacts/abax_governor.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x931b0e6d44c79a7e7ae4d2fccb4d45952af28ab2eea79dad4e7f5348d4765be1","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001a1011660027f7f0060027f7f017f60037f7f7f017f60037f7f7f0060017f0060047f7f7f7f0060017f017f60057f7e7e7e7e006000017f60000060057f7f7f7f7f017f60047f7f7f7f017f60047f7e7e7f006000017e60017e0060057f7f7f7f7f0060087f7f7e7f7f7f7f7f017f60067f7f7f7e7e7e0060077f7f7f7f7f7f7f0060087f7e7e7e7e7e7e7f0060087f7f7f7f7f7f7f7f017f60077f7f7f7f7f7f7f017f02b50210057365616c310b6765745f73746f72616765000b057365616c3005696e7075740000057365616c310463616c6c0010057365616c300d6465706f7369745f6576656e740005057365616c320b7365745f73746f72616765000b057365616c310d636c6561725f73746f726167650001057365616c3110636f6e7461696e735f73746f726167650001057365616c300b7365616c5f72657475726e0003057365616c300d7365745f636f64655f686173680006057365616c300663616c6c65720000057365616c3007616464726573730000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300d686173685f736861325f3235360003057365616c300f686173685f626c616b65325f323536000303656e76066d656d6f72790201021003db01d901020202020c070c07070400000600000000000000000101000000000000000000040404080100040400041100030d08040303080800040404040000010000010001010e04040004000000000000090000000007000000000e000005050101001200030f03030309090000050000000004040004000006030000000000000005000300000000000000000000000300030101010101040600000501000000040303000d0003000100030304061301050703000f03000005000303000100030505030002030103000101010205010a010203140a0200051506050a04050170011b1b0616037f01418080040b7f004180bb050b7f0041f8ba050b0711020463616c6c0075066465706c6f790076092d010041010b1a4d504a479f01479e0147a101464f47a20147a301a8014747d001d201c901d60147d801da01dc010af6ad05d9012b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b830102017f017e230041106b220424000240200341c000714504402003450d0120022003413f71ad2205862001410020036b413f71ad88842102200120058621010c010b20012003413f71ad862102420021010b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000b9b0102017f067e230041106b220524002005200342ffffffff0f832206200142ffffffff0f8322077e22082007200342208822097e220720062001422088220a7e7c22064220867c220b37030020052008200b56ad2009200a7e2006200754ad4220862006422088847c7c200120047e200220037e7c7c370308200529030021012000200541086a29030037030820002001370300200541106a24000b830102017f017e230041106b220424000240200341c000714504402003450d012002410020036b413f71ad8620012003413f71ad220588842101200220058821020c010b20022003413f71ad882101420021020b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000bd10502057e037f230041206b220a24000240024002402004504504402002502001200354200220045420022004511b720d01200a41106a20032004200479a7200279a76b220b41ff007110134201200b413f71ad862109200a41186a2903002107200a29031021080340200220077d2001200854ad7d2205420059044020062009842106200120087d2201200354200420055620042005511b0d04200521020b2007423f86200842018884210820094201882109200742018821070c000b000b02400240200250450440200220035a044020022003510d0220022003822105200220038021092003428080808010540440200542208620014220888422022003802204422086200142ffffffff0f8320022003824220868422012003808421062004422088200984210920012003822101420021050c070b2001200354200420055620042005511b0d032004423f8620034201888421072003423f862108428080808080808080807f210203400240200520077d2001200854ad7d22044200590440200120087d2101200220068421062004500d01200421050b2007423f86200842018884210820024201882102200742018821070c010b0b2001200380200684210642002105200120038221010c060b200a20032004413f200379a7220b200279a7220c6b41406b200b200c461b220b10134201200b413f71ad862105200a41086a2903002107200a29030021084200210403400240200220077d2001200854ad7d22064200590440200120087d2101200420058421042006500d01200621020b2007423f86200842018884210820054201882105200742018821070c010b0b2001200380200484210642002105200120038221010c040b20012003802106200120038221010c030b2001200280210642012109200120028221010c030b0c020b200221050b420021090b2000200137031020002006370300200041186a200537030020002009370308200a41206a24000b3b01017f230041206b22052400200520012002200320041016200529030021012000200541086a29030037030820002001370300200541206a24000b930101057f230041206b22012400200142808001370218200141e9ba0436021441988004200141146a2204107c024020012802182205200128021c2202490d00200128021421032001410036021c2001200520026b3602182001200220036a360214200020041019200128021c220020012802184b0d00200141086a200320022001280214200010c001200141206a24000f0b000b2f00200041186a2001107b2000411a6a2001107b20002001109501200041086a2001109501200041106a20011095010be40101047f230041206b2202240020022001360204200241a0800436020020024280800137020c200241e9ba043602082002200241086a22051097010240200228020c220420022802102201490d00200228020821032002200420016b220436020820032001200120036a2201200510002105200420022802082203490d002005101b41ff01712204410346047f41000520044110470d012002200336021c20022001360218200241086a200241186a1092012002280208418180808078470d01200228020c210341010b21012000200336020420002001360200200241206a24000f0b000b1d01017f410f21012000410e4d047f200041ee98046a2d000005410f0b0b990101047f230041206b22022400200242808001370218200241e9ba0436021441c08004200241146a2203107c20002003107c024020022802182205200228021c2200490d00200228021421042002410036021c2002200520006b3602182002200020046a36021420012003101d200228021c220120022802184b0d00200241086a200420002002280214200110c001200241206a24000f0b000b700020004199016a2001101f20004198016a2001102e200041206a2001108601200041406b2001109501200041c8006a2001109c01200041d8006a2001109c0120002001105d200041e8006a2001109c01200041f8006a2001109c0120004188016a2001109c01200041106a2001105d0b9a0101047f230041206b22022400200242808001370218200241e9ba0436021441b08004200241146a2203107c20002003107c024020022802182205200228021c2200490d00200228021421042002410036021c2002200520006b3602182002200020046a36021420012003109c01200228021c220120022802184b0d00200241086a200420002002280214200110c001200241206a24000f0b000b0c00200120002d000010bf010bac0101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206109801200228020c220120022802084b0d002006200228020420011085012002410036022c20022004360228200220053602242006200241246a1086012003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0f0020002001411941b4810410e6010bfc0302027f017e230041206b22022400200241106a200110782000027f02400240024002400240024002400240024002400240027f200228021041818080807846044020022d00140c010b2002200241106a41a78204413a108d0120022802002203418180808078470d0120022d00040b0e080102030405060708090b20002002290005370009200041106a2002410c6a280000360000200041086a20022d00043a0000200020033602040c090b200241106a200110a9012002280210418180808078460440200241086a2002411c6a280200220336020020022002290214220437030020004100360204200041086a2004370200200041106a200336020041000c0a0b200041046a200241106a41e182044127108d010c080b2000410136020441000c080b2000410236020441000c070b2000410336020441000c060b2000410436020441000c050b200241106a200110a9012002280210418180808078460440200241086a2002411c6a280200220136020020022002290214220437030020004105360204200041086a2004370200200041106a200136020041000c050b200041046a200241106a418883044138108d010c030b2000410636020441000c030b2000410736020441000c020b2000418080808078360204200041086a41c083043602002000410c6a42343702000b41010b360200200241206a24000b7a00024002400240024002400240024002400240200028020041016b0e0701020304050607000b2001410010bf010c070b2001410110bf010f0b2001410210bf010f0b2001410310bf010f0b2001410410bf010f0b2001410510bf010c020b2001410610bf010f0b2001410710bf010f0b200041046a200110480bef0201077f230041106b22052400230041206b220224002002200136021c200241b49904360218200241086a2101230041206b2200240020004280800137020c200041e9ba04360208200241186a200041086a220610960102400240200028020c220720002802102203490d00200028020821042000200720036b220736020820042003200320046a2203200610002104200720002802082208490d00200410a40141ff01712204410347044020044110470d012000200836021c200020033602182006200041186a10920120002802082203418180808078460440200141086a200028020c36020020014283808080183702000c030b200028020c21062001200029021037020820012006360204200120033602000c020b20014283808080083702000c010b000b200041206a24002002280208418380808078470440000b200541086a200229020c370300200241206a240020052802082100200528020c2101200541106a24002001410020001b0b2100027f2000200110b4014504404101200041b6840410b401450d011a0b41030b0b900102027f017e230041106b220224002002200110a60102402002280200220341818080807846044020012802040440200041e087043602042000418080808078360200200042303703080c020b200229030821042000418180808078360200200020043703080c010b200228020421012000200229030837030820002001360204200020033602000b200241106a24000bd60101017f230041406a220224002002410c6a2001108e01024020022d000c450440200241306a2001107a20022802304181808080784604402000200229000d37000420004100360200200041246a20022802343602002000410c6a200241156a290000370000200041146a2002411d6a2900003700002000411c6a200241256a2900003700000c020b20002002290230370204200041013602002000410c6a200241386a2902003702000c010b20002002290210370204200041013602002000410c6a200241186a2902003702000b200241406b24000be10101017f230041406a22022400200241046a2001108e01024020022d0004450440200241286a200110910120022802284504402000200229000537000820004100360200200041286a2002290330370300200041306a200241386a290300370300200041106a2002410d6a290000370000200041186a200241156a290000370000200041206a2002411d6a2900003700000c020b2000200229022c370204200041013602002000410c6a200241346a2902003702000c010b20002002290208370204200041013602002000410c6a200241106a2902003702000b200241406b24000be80102017f027e230041406a220224002002200110910102402002280200450440200241106a2903002103200229030821042002411c6a2001108e0120022d001c4504402000200437030820004100360200200041106a2003370300200041186a200229001d370000200041306a200241356a290000370000200041286a2002412d6a290000370000200041206a200241256a2900003700000c020b20002002290220370204200041013602002000410c6a200241286a2902003702000c010b20002002290204370204200041013602002000410c6a2002410c6a2902003702000b200241406b24000b9b0202047f027e230041406a22022400200241086a2001109101024002402002280208450440200241186a290300210620022903102107200241306a200110780240027f0240027f200228023041818080807846044020022d00340c010b200241206a200241306a41c480044138108d0120022802202201418180808078470d0120022d00240b220141ff01714102490d02418080808078210141fc8004210441320c010b200228022c21032002280224210420022802280b21052000200336020c2000200536020820002004360204200020013602000c020b20002007370300200020013a0010200020063703080c020b2000200229020c370200200041086a200241146a2902003702000b200041023a00100b200241406b24000ba60101037f230041406a220224002002410c6a2001107a0240200228020c418180808078460440200228021021032002411c6a22042001102c20022d001c450440200041046a20044101724121100f1a200020033602000c020b20002002290220370208200041023a0004200041106a200241286a2902003702000c010b2000200229020c370208200041023a0004200041106a200241146a2902003702000b200241406b24000bc20302027f047e230041f0006b22022400200241cc006a2001107802400240024002400240027f200228024c41818080807846044020022d00500c010b200241286a200241cc006a419d8a04412a108d0120022802282203418180808078470d0120022d002c0b0e020203010b2000200229002d370009200041106a200241346a280000360000200041086a20022d002c3a000020002003360204200041013a00000c030b2000418080808078360204200041013a0000200041086a41f889043602002000410c6a42253702000c020b200041003b01000c010b200241cc006a2001108e0120022d004c450440200241c1006a200241e5006a2900002204370000200241106a200241d5006a2900002205370300200241186a200241dd006a2900002206370300200241206a20043703002002200229004d22073703082000411a6a2004370000200041126a20063700002000410a6a2005370000200041026a200737000020004180023b01000c010b2002412c6a200241d0006a41c78a044122108d01200241136a200241346a29020022043700002002200229022c220537000b2000410c6a200437000020002005370004200041013a00000b200241f0006a24000be40202017f027e230041e0006b2202240020022001109101024002402002280200450440200241106a290300210320022903082104200241186a2001108e0120022d00180d012002413c6a2001108e0120022d003c45044020002002290019370008200041306a2003370300200041286a2004370300200041386a200229003d370000200041d0006a200241d5006a290000370000200041c8006a200241cd006a290000370000200041406b200241c5006a290000370000200041106a200241216a290000370000200041186a200241296a290000370000200041206a200241316a290000370000200041003602000c030b20002002290240370204200041013602002000410c6a200241c8006a2902003702000c020b20002002290204370204200041013602002000410c6a2002410c6a2902003702000c010b2000200229021c370204200041013602002000410c6a200241246a2902003702000b200241e0006a24000b2a01017f230041106b22022400200220002d00003a000f20012002410f6a410110be01200241106a24000bc20101057f230041406a22012400200141808001360210200141e9ba0436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a100a2004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141146a200141386a108e0120012d00140440000b20002001290015370000200041186a2001412d6a290000370000200041106a200141256a290000370000200041086a2001411d6a290000370000200141406b24000bc80202067f017e23004190016b22012400200141086a2205200041d000100f1a200142808001370270200141e9ba0436026c200120053602782001200141286a220436027c200141ec006a4103108a01200141e0006a2200200141f4006a2802003602002001200129026c370358200141d8006a220241f5830410870120014188016a22032000280200360200200120012903583703800120014180016a2206200141f8006a10202000200328020036020020012001290380013703582002200141fc006a10202003200028020036020020012001290358370380012002200610af01200141e8006a2802002100200128026421032001290258210720014100360260200120073702582005200210860120042002108601200141c8006a2002109c0120012802602204200128025c4b0440000b2003200020012802582004100320014190016a24000bc20101057f230041406a22012400200141808001360210200141e9ba0436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a10092004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141146a200141386a108e0120012d00140440000b20002001290015370000200041186a2001412d6a290000370000200041106a200141256a290000370000200041086a2001411d6a290000370000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a100b2003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b0c002000200110bb014101730bbb0402077f017e230041d0006b220224002002410036021c2002428080808010370214200241086a417f417f200141c4006a2802002207200141386a2802002204410674220541247222036a41046a2206200320064b1b22034101410920012903002209501b6a2206200320064b1b410010cb012002410036024c20022002290308370244200141346a2802002103200241206a200241c4006a200410c601200228022041818080807846044020040440200320056a210603402003200241c4006a220510c3012005200341306a2204200441046a10d301200341386a2802002003413c6a280200200510c701230041106b220424002004200341206a22082903003703002004200841086a29030037030820052004200441106a220410d30120042400200341406b22032006470d000b0b200141106a200241c4006a220310c301200141406b2802002007200310c701024020095004402003410010c5010c010b200241c4006a2204410110c501230041106b220324002003200141086a2903003703082004200341086a200341106a220110d301200124000b20022802482103200241146a200228024c220110d40120022802182204200228021c22056a20032001100f1a200241386a22034200370300200241306a22074200370300200241286a22064200370300200242003703202004200120056a200241206a100d200041186a2003290300370000200041106a2007290300370000200041086a200629030037000020002002290320370000200241d0006a24000f0b000b9a0401067f230041f0006b2201240020014280800137024c200141e9ba0436024841988004200141c8006a2206107c0240200128024c220420012802502202490d00200128024821032001200420026b220436024820032002200220036a2202200610002103200420012802482205490d00024002402003101b41ff01712203410347044020034110470d032001200536022c200120023602282006200141286a1062027f2001280248450440200141386a2202200141e4006a290200370300200141406b2203200141ec006a2802003602002001200129025c370330200128022c450d0341e08704210341302104410021054180808080780c010b200141d8006a2802002105200141d4006a2802002104200141d0006a2802002103200128024c0b2102200141146a2005360200200141106a20043602002001410c6a20033602002001200236020820014202370300200141086a10450b20004200370300200041186a4100360200200041106a4200370300200041086a42003703000c010b200141d8006a28020021042001280254210520012802502106200141246a20032802003602002001411c6a2002290300370200200141106a22022004360200200120012903303702142001200536020c20012006360208200041186a200141206a290300370300200041106a200141186a290300370300200041086a2002290300370300200020012903083703000b200141f0006a24000f0b000bab0502077f017e230041d0016b220124002001428080013702b001200141e9ba043602ac0141948004200141ac016a2205107c0240024020012802b001220420012802b4012202490d0020012802ac0121032001200420026b22043602ac0120032002200220036a2202200510002103200420012802ac012206490d002003101b41ff01714110470d002001200636024c200120023602482005200141c8006a108e01027f20012d00ac01450440200141ed006a200141b5016a290000370000200141f5006a200141bd016a290000370000200141fd006a2202200141c5016a290000370000200120012900ad012208370065200141e2006a220320012d00673a0000200120083d0160200141e8006a2802002104200141ec006a2802002106200141f0006a2802002105200141f4006a2802002107200120022900003700552001200141f8006a290200370350200128024c450d0341e08704210241302103410021044180808080780c010b2001418c016a2200200141b0016a41e1860441c000108d01200141e8006a200041a18704413f108d01200141ec006a2802002102200141f0006a2802002103200141f4006a280200210420012802680b21002001411c6a2004360200200141186a2003360200200141146a200236020020012000360210200141013a000c200141106a10450b000b200141106a20032d000022023a00002001200129005537003520012001290350370330200141216a2001290330370000200141266a22032001290035370000200120023a0047200120012f01603b010e200141156a2006360000200141116a20043600002001411d6a2007360000200141196a2005360000200041106a2001411e6a290100370000200041086a200141166a2901003700002000200129010e370000200041186a2003290100370000200141d0016a24000bb90b02057f0d7e230041b0036b2202240020024280800137029c01200241e9ba043602980141c0800420024198016a2205107c20012005107c0240200228029c01220420022802a0012201490d0020022802980121032002200420016b22043602980120032001200120036a220620051000210120042002280298012203490d0002402001101b41ff01712201410347044020014110470d022002200336020c20022006360208200241d8026a200241086a10780240027f0240027f0240027f20022802d80241818080807846044020022d00dc020c010b200241a0036a200241d8026a41b99304413e108d0120022802a0032201418180808078470d0120022d00a4030b220141ff017141054f04404100210341382104418080808078210141f793040c020b200241d8026a200241086a107820022802d8022203418180808078470d0220022d00dc0222044102490d0441002101411e21044180808080782103419888040c030b20022802ac03210320022802a803210420022802a4030b2100200220033602c402200220043602c002200220003602bc02200220013602b802200241a0016a200241b8026a419193044128108d010c050b20022802e402210120022802e002210420022802dc020b2100200220013602d402200220043602d002200220003602cc02200220033602c802200241a0016a200241c8026a41d992044138108d010c030b200241d8026a200241086a108e0120022d00d8020440200241a0016a200241dc026a41af9204412a108d010c030b20024198036a200241f1026a29000037030020024190036a200241e9026a29000037030020024188036a200241e1026a290000370300200220022900d90237038003200241d8026a2203200241086a10a60120022802d802418180808078470440200241a0016a2003418892044127108d010c030b20022903e0022107200241d8026a2203200241086a10910120022802d8020440200241a0016a200341047241d891044130108d010c030b200241e8026a2203290300210a20022903e002210b200241d8026a2205200241086a10910120022802d8020440200241a0016a200541047241a691044132108d010c030b2003290300210c20022903e002210d200241d8026a2203200241086a106020022802d8020440200241a0016a200341047241fb9004412b108d010c030b200241e8026a2203290300210820022903e0022109200241d8026a2205200241086a10910120022802d8020440200241a0016a200541047241d09004412b108d010c030b2003290300210e20022903e002210f200241d8026a2203200241086a10910120022802d8020440200241a0016a200341047241a19004412f108d010c030b200241e8026a2203290300211020022903e0022111200241d8026a2205200241086a10910120022802d8020440200241a0016a200541047241e78f04413a108d010c030b2003290300211220022903e0022113200241d8026a2203200241086a106020022802d8020440200241a0016a200341047241b38f044134108d010c030b200241a8026a201237030020024198026a201037030020024188026a200e370300200241f8016a200c370300200241e8016a200a370300200241c0016a20024188036a290300370300200241c8016a20024190036a290300370300200241d0016a20024198036a290300370300200220133703a00220022011370390022002200f370380022002200d3703f0012002200b3703e00120022002290380033703b801200220013a00b102200220043a00b002200220073703d8012002200241e8026a2903003703b00120022903e0022107200241106a2201200241b0016a418801100f1a200228020c0d0220024198016a2001418801100f1a2008422088a721012008a721032007a721040c010b420221090b20004100360214200020043602102000200136020c2000200336020820002009370300200041186a20024198016a418801100f1a200241b0036a24000f0b000b6402027f037e230041206b22012400200141086a41888004108001200141186a290300210320012903102104200129030822054202510440200141106a10450b200020034200200542015122021b37030820002004420020021b370300200141206a24000b910302017f087e230041206b220624002000027f0240024002400240200129034022072002290300220b7c22082007540d00200820022903087c22072008540d0020072002290310220c7c220a2007540d002001290348220920042001290358220d7d7c220e20095422022002ad200141d0006a29030022092005200141e0006a2903007d2004200d54ad7d7c7c220420095420042009511b0d002004423f86200e42018884210520044201882104200320085604402003200758044020052107200421080c050b42002107420021082003200a560d04200641086a20052004200a20037d200c106120062d00080d02200641186a2903002108200629031021070c040b200641086a20052004200820037d200b106120062d00080d02200520062903107c220720055422012001ad2004200641186a2903007c7c220820045420042008511b450d030b200041013a000141010c030b200020062d00093a000141010c020b200020062d00093a000141010c010b20002007370308200041106a200837030041000b3a0000200641206a24000be50102047f027e230041206b2202240020022001360204200241b4800436020020024280800137020c200241e9ba043602082002200241086a22041097010240200228020c220520022802102201490d00200228020821032002200520016b220536020820032001200120036a2201200410002103200520022802082204490d002003101b41ff01712203410346047e42000520034110470d012002200436021c20022001360218200241086a200241186a10262002280208418180808078470d012002290310210642010b21072000200637030820002007370300200241206a24000f0b000b810102017f017e230041406a22032400200341286a200241086a290000370200200341306a200241106a290000370200200341386a200241186a2900003702002003200136021c20032002290000370220200341086a2001200341206a10b601200329030821042000200341106a29030037030820002004370300200341406b24000bf40102057f017e230041306b22002400200042808001370204200041e9ba04360200418480042000107c02402000280204220320002802082201490d00200028020021022000200320016b220336020020022001200120026a2201200010002102200320002802002204490d0002402002101b41ff017122024103460d0020024110470d012000200436022c20002001360228200041186a200041286a1026200028021822014181808080784704402000410c6a2000290320370200200041086a200028021c3602002000200136020420004101360200200041047210450c010b200029032021050b200041306a240020050f0b000b09004180800410e5010b810601087f230041d0016b22012400200141186a10b801200141a4016a2204102f200141386a2202200141086a4130100f1a200141f0006a200141d0006a290300370300200141f8006a200141d8006a29030037030020014180016a200141e0006a29030037030020014190016a4200370300200141a0016a4100360200200141c4016a220541e5d0e1f90236020020014198016a420037030020012001290348370368200142003703880120014280800137023c200141e9ba04360238200141e8006a20021086010240200128023c220720012802402203490d0020012802382106200141003602402001200720036b36023c2001200320066a36023820014188016a2002109c01200128023c220220012802402203490d00200220036b21022001280238220720036a2103024020012802a0012208410371044041c480042105410021040c010b200141003602402001200236023c200120033602382005200141386a220210ab0120042002108601200128023c220220012802402204490d01200220046b21022001280238220520046a21030b200120023602382008200642002007200520042003200141386a220410022106200220012802382205490d002006101b41ff017122024110472002410247710d00200120053602cc01200120033602c8012004200141c8016a107802400240027f200128023841818080807846044020012d003c0c010b200141086a200141386a418e8b04412a108d012001280208418180808078470d0320012d000c0b41ff01710e020100020b200141386a2200200141c8016a108c012001280238418180808078470440200141086a200041b88b044123108d012001280208418180808078470d020b20012802cc011a0c010b200141386a2202200141c8016a10910120012802380440200141086a410472200241047241db8b044120108d010c010b20012802cc010d0020012802442102200128024021032000200141c8006a22042903004280808080708320043502008437030820002003ad2002ad42208684370300200141d0016a24000f0b000b8f0302047f017e230041e0006b22032400200341246a220420022802003602002003411c6a200141186a290000370200200341146a200141106a2900003702002003410c6a200141086a290000370200200341b880043602002003200129000037020420034280800137024c200341e9ba0436024841b88004200341c8006a2205107c200341046a200510860120042005107c0240200328024c220420032802502201490d00200328024821022003200420016b220436024820022001200120026a2202200510002101200420032802482206490d00024020002001101b220141ff01712204410347047e20044110470d022003200636022c200320023602282005200341286a220210642003280248418180808078470d0120032d004c21012005200210910120032802480440200341306a2005410472418497044123108d010c030b200328022c0d0220032903502107200341d8006a2903000542000b37030820002007370300200020013a0010200341e0006a24000f0b200341306a200341c8006a41a797044121108d010b000b6b02017f017e230041406a22032400200341086a2001200210b6012003200341106a29030037032020032003290308370318200341286a200341186a4101107320032d00280440000b200329033021042000200341386a29030037030820002004370300200341406b24000b09004190800410e5010b0900418c800410e5010b820201057f230041206b2202240020024280800137020c200241e9ba043602082001200241086a2205107c0240200228020c220420022802102201490d00200228020821032002200420016b220436020820032001200120036a2201200510002103200420022802082206490d00024002402003101b41ff01712203410347044020034110470d032002200636021c200220013602182005200241186a10920120022802082201418180808078470d01200041086a200228020c36020020004283808080183702000c020b20004283808080083702000c010b200228020c21032000200229021037020820002003360204200020013602000b200241206a24000f0b000b15002000280200418380808078470440200010450b0b180020002802004181808080784904402000410c6a10460b0b13002000280200220004402000410c6a10460b0b0300010b4401027f2000280204210320002802082102230041106b22002400200020012002109b012000280200418180808078470440000b20012003200210be01200041106a24000b6d01017f230041206b22022400200241003b010e200241106a20012002410e6a410210c401024020022802102201418180808078460440200020022f010e3b01040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b9f0101027f230041106b22022400027f02400240024020002802002203418080808078734100200341ffffffff076a4102491b41016b0e020102000b20022000360208200141b688044106200241086a41bc880410e0010c020b200128021441cc8804410e200141186a28020028020c1102000c010b2002200041046a36020c200141da8804410b2002410c6a41e8880410e0010b2100200241106a240020000ba00201067f2001410c6a280200210202402000027f0240024020012802040e020001030b20020d024100210041c480040c010b20020d0120012802002201280204210020012802000b200010ce010f0b230041206b22032400200341086a027f20012802002204200128020422074103746a22022004470440200441046a2106200220046b41037621020340200628020020056a2105200641086a2106200241016b22020d000b0b200522022001410c6a280200450d001a2007452002410f4b7245044041002004280204450d011a0b20024101744100200241004e1b0b10ca012003410036021c20032003290308370214200341146a200110c9010440000b20002003290214370200200041086a2003411c6a280200360200200341206a24000b5501017f02402001450440410821020c010b0240200141ffffff0f4b0d00200141067422024100480d0041e8ba042d00001a4108200210d50122020d010b000b2000410036020820002002360204200020013602000b1b00200128021441f888044111200141186a28020028020c1102000bb806020a7f027e230041406a220224002002412c6a200110782000027f0240024002400240027f200228022c41818080807846044020022d00300c010b200241186a2002412c6a418e8b04412a108d0120022802182205418180808078470d0120022d001c0b210841e98a0421064185022107418080808078210541252104024002400240027f02400240200841ff01710e020001070b2002412c6a20011078027f200228022c41818080807846044020022d00300c010b200241186a2002412c6a418e8b04412a108d0120022802182204418180808078470d0320022d001c0b210b4108210541e98a04210341002108418080808078210441252109024002400240200b0e020100060b2002412c6a20011022200228022c0d01200241246a200241386a290200220c37020020022002290230220d37021c200241206a280200210a200241286a2802002107200da72105200ca721060b200a41807e712103200a41ff01710c020b2002411c6a200241306a41b88b044123108d01200241206a2802002103200241246a2802002109200241286a2802002108200228021c21040c030b2002412c6a22032001108c01200228022c418180808078470440200241186a200341b88b044123108d0120022802182205418180808078470d040b410921054100210341010b210420012802040d0520002005360204200041106a20073602002000410c6a2006360200200041086a200320047236020041000c070b2002280224210820022802202109200228021c21030b2002200836023820022009360234200220033602302002200436022c200241086a2002412c6a41db8b044120108d012002410c6a28020022064108762107200241106a2802002104200241146a2802002103200228020821050c020b200228021c2206410876210720022802242103200228022021040c010b20022f001d2002411f6a2d0000411074722107200228022421032002280220210420022d001c21060b20002005360204200041106a20033602002000410c6a2004360200200041086a200641ff01712007410874723602000c010b2000418080808078360204200041086a41e087043602002000410c6a42303702000b41010b360200200241406b24000b15002000200141948904418d89044189890410e7010b4201017f230041106b220224002002200036020c200141a4890441a989042000410c6a41b0890441c089042002410c6a41c4890410df012100200241106a240020000bd00101047f230041406a2201240020012000370308200142808001370228200141e9ba04360224200141246a4101108a01200141186a22032001412c6a28020036020020012001290224370310200141106a220241a18d04108701200141386a2003280200360200200120012903103703302002200141306a10af01200141206a2802002103200128021c2104200129021021002001410036021820012000370210200141086a20021095012001280218220220012802144b0440000b20042003200128021020021003200141406b24000b8f0101027f230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141e9ba04360204024020002d0000044041e9ba044181023b0000410221002001410236020c0c010b41e9ba0441003a00002001410136020c200041016a200141046a108601200128020c220041818001490d00000b2002200010c201000b4e01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041e9ba0441013a0000410121010b200141e9ba046a20013a00002002200141016a10c201000bac0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041e9ba04360204024041eaba04027f20012802002203410947044041e9ba0441003a0000410020034108460d011a41eaba0441013a00002000410236020c2001200041046a1023200028020c220141818001490d02000b41e9ba0441013a000041010b3a0000410221012000410236020c0b2002200110c201000b930101027f230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141e9ba043602040240200028020041818080807846044041e9ba044181023b0000410221002001410236020c0c010b2001410136020c41e9ba0441003a00002000200141046a10b101200128020c220041818001490d00000b2002200010c201000bc20101037f230041106b220224002002200036020c2002410c6a2802002103230041106b22002400200041808001360208200041e9ba0436020441022102024020012802002204410247044041e9ba0441003a0000024020044504402000410236020c41eaba0441003a0000200141086a200041046a109c010c010b41eaba0441013a00002000410236020c200141046a200041046a10230b200028020c220241818001490d01000b41e9ba044181023b00002000410236020c0b2003200210c201000bac0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041e9ba04360204024041eaba04027f20012802002203411547044041e9ba0441003a0000410020034114460d011a41eaba0441013a00002000410236020c2001200041046a105e200028020c220141818001490d02000b41e9ba0441013a000041010b3a0000410221012000410236020c0b2002200110c201000ba70101017f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041e9ba04360204024041eaba04027f20012d000045044041e9ba0441003a0000410020012d00014103460d011a41eaba0441013a00002000410236020c200141016a200041046a101f200028020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221000b2002200010c201000bcf0101047f230041106b22022400200242808001370208200241e9ba043602042001200241046a2205107c024020022802082204200228020c2201490d00200228020421032002200420016b220436020420032001200120036a200510002101200420022802042203490d002000027f02402001101b41ff01712201410347044020014110470d0320030d01200041013a00044183808080780c020b200041003a00044183808080780c010b20004230370208200041e087043602044180808080780b360200200241106a24000f0b000b930101047f230041206b22022400200242808001370218200241e9ba043602142000200241146a2204109601024020022802182205200228021c2200490d00200228021421032002410036021c2002200520006b3602182002200020036a36021420012004108601200228021c220120022802184b0d00200241086a200320002002280214200110c001200241206a24000f0b000b910101047f230041206b22022400200242808001370218200241e9ba043602142000200241146a2204107c024020022802182205200228021c2200490d00200228021421032002410036021c2002200520006b3602182002200020036a36021420012004107c200228021c220120022802184b0d00200241086a200320002002280214200110c001200241206a24000f0b000b5a01037f230041206b22002400200042808001370218200041e9ba0436021441b08104200041146a107c200028021c220120002802184b0440000b200041086a200028021422022001200120026a410010c001200041206a24000b240020002903005004402001410010bf010f0b2001410110bf01200041086a20011095010bc80101017f02400240024002400240024002400240024002400240024002404101200028020041086b22022002410c4f1b41016b0e0b0102030405060708090a0b000b2001410010bf010c0b0b2001410110bf012000200110230f0b2001410210bf010f0b2001410310bf010f0b2001410410bf010f0b2001410510bf010f0b2001410610bf010f0b2001410710bf010f0b2001410810bf01200041046a200110480f0b2001410910bf010f0b2001410a10bf010c010b2001410b10bf010f0b200041046a2001101f0b1200200041106a2001101f20002001109c010be00202027f017e230041206b22022400200241106a200110782000027f02400240024002400240027f200228021041818080807846044020022d00140c010b2002200241106a419d8a04412a108d0120022802002203418180808078470d0120022d00040b0e020203010b20002002290005370009200041106a2002410c6a280000360000200041086a20022d00043a0000200020033602040c030b2000418080808078360204200041086a41f889043602002000410c6a42253702000c020b2000420037030841000c020b200241106a200110a6010240027e200228021041818080807846044020022903180c010b2002200241106a41c78a044122108d0120022802002201418180808078470d0120022903080b210420004201370308200041106a200437030041000c020b200228020421032000410c6a2002290308370200200041086a2003360200200020013602040b41010b360200200241206a24000bb00301057f230041b0016b22052400024002402004500440200041023a0001410121060c010b20012002845020035072044020004200370308200041106a42003703000c010b200541406b22074200370300200542003703382005200437032820054200370330200541286a220641d8890410bb010d01200541186a20034200200142001014200541086a2003420020024200101420054188016a4200370300200520052903183703702005200541206a290300220220052903087c22013703782005200541106a2903002001200254ad7c37038001200541a8016a2007290300370300200541a0016a200541386a29030037030020054198016a200541306a2903003703002005200529032837039001200541e0006a22084200370300200541d8006a22094200370300200541d0006a22074200370300200542003703482006200541c8006a10bb010d01410021062007200541f0006a20054190016a410010bc012008290300200541e8006a290300845004402009290300210120002005290350370308200041106a20013703000c010b41012106200041013a00010b200020063a0000200541b0016a24000f0b000be10202037f037e230041106b220224002002200110490240024002400240200228020041818080807846044020022f010421032002200110492002280200418180808078470d0120022f010421042002200110a6012002280200418180808078470d02200229030821052002200110a6012002280200418180808078470d03200229030821062002200110a601200228020041818080807846044020022903082107200041226a20043b0100200041206a20033b0100200041186a2007370300200041106a200637030020002005370308200041003602000c050b200041046a200241c18d04412c108d01200041013602000c040b200041046a200241fe8e044135108d01200041013602000c030b200041046a200241c68e044138108d01200041013602000c020b200041046a200241988e04412e108d01200041013602000c010b200041046a200241ed8d04412b108d01200041013602000b200241106a24000bdc0101047f230041206b2202240020024280800137020c200241e9ba0436020841a48004200241086a2205107c200120051086010240200228020c220420022802102201490d00200228020821032002200420016b220436020820032001200120036a2201200510002105200420022802082203490d002005101b41ff01712204410346047f41000520044110470d012002200336021c20022001360218200241086a200241186a1092012002280208418180808078470d01200228020c210341010b21012000200336020420002001360200200241206a24000f0b000bfb0101017f230041206b22022400200241106a20011078024002400240024002400240027f200228021041818080807846044020022d00140c010b2002200241106a41c897044134108d0120022802002201418180808078470d0120022d00040b41ff01710e03010203040b200020022900053700052000410c6a2002410c6a280000360000200020022d00043a0004200020013602000c040b2000418180808078360200200041003a00040c030b2000418180808078360200200041013a00040c020b2000418180808078360200200041023a00040c010b200041fc970436020420004180808080783602002000422e3702080b200241206a24000bd00102047f017e230041206b22022400200242808001370204200241e9ba0436020041b080042002107c20012002107c02402002280204220420022802082201490d00200228020021032002200420016b220436020020032001200120036a2201200210002103200420022802002205490d0020002003101b41ff01712203410347047e20034110470d012002200536021c200220013602182002200241186a10900120022802000d01200241106a290300210620022903080542000b37030020002006370308200241206a24000f0b000b9b0101057f230041206b2201240020012000370308200142808001370218200141e9ba0436021441848004200141146a2205107c024020012802182202200128021c2203490d00200128021421042001410036021c2001200220036b3602182001200320046a360214200141086a2005109501200128021c220220012802184b0d002001200420032001280214200210c001200141206a24000f0b000b9b0101037f230041106b22042400200041346a280200210220042001200041386a2802002203109b01200428020041818080807846044020030440200220034106746a2103034020022001108601200241306a200110ab01200241346a20011048200241206a2001109c01200241406b22022003470d000b0b200041106a20011086012000413c6a2001104820002001105d200441106a24000f0b000b910d02157f027e230041f0026b22022400200241e4006a2001107702400240024002400240024002400240024020022802642204418180808078460440200241f4006a200128020441067622032002280268220620032006491b104c024020060440200241c8016a2110200241b8016a410472210720024188026a220341047221122002418c026a210c20034101722108200241ec016a2111200241e9016a2113200241ea016a2114200241e0016a2115200241eb016a2116034020024188026a22032001108e0120022d0088020d02200241c8026a2204200841186a290000370300200241c0026a2205200841106a290000370300200241b8026a2209200841086a290000370300200220082900003703b002200241003602e00220032001200241e0026a410410c401200228028802220a418180808078470d0420022d00e302210a20022d00e202210d20022d00e102210e20022d00e002210b2003200110aa01200228028802418180808078470d05200241e8026a220f200c41086a2802003602002002200c2902003703e002200320011091012002280288020440200241b8016a201241e095044131108d010c070b200241c0016a200929030037030020102005290300370300200241d0016a200429030037030020024180026a2203200f2802003602002013200e3a00002014200d3a0000201520024198026a2903003703002016200a3a0000200220022903b0023703b801200220022903e00222173703f8012002290390022118201120173702002002200b3a00e801200220183703d801201141086a200328020036020020022802ec01220a418080808078460d06200241b0016a220d200741086a280200360200200220072902003703a80120022802b801210e20024180016a20104124100f1a20022903f0012117200228027c22042002280274460440200241f4006a2105230041206b220324000240200441016a22040440410420052802002209410174220b20042004200b491b2204200441044d1b2204410674210b2004418080801049410374210f02402009450440200341003602180c010b200341083602182003200941067436021c200320052802043602140b200341086a200f200b200341146a10cd012003280208450d01200328020c1a0b000b200328020c21092005200436020020052009360204200341206a2400200228027c21040b200228027820044106746a2203200e360200200320022903a8013702042003410c6a200d280200360200200341106a20024180016a4124100f1a200320173703382003200a3602342002200228027c41016a36027c200641016b22060d000b0b200241286a200241fc006a280200360200200220022902743703200c050b200241b8016a200c41de96044126108d010c030b200241286a200241f0006a280200360200200220022902683703200c040b20022002290290023702d8022002200228028c023602d4022002200a3602d002200241b8016a200241d0026a41b696044128108d010c010b200241b8016a20024188026a419196044125108d010b200241286a200741086a2802003602002002200729020037032020022802b8012204418180808078470d010b200241186a2204200241286a28020036020020022002290320370310200241b8016a22032001102120022d00b8010d01200241d8006a2206200241d1016a290000370300200241d0006a2207200241c9016a290000370300200241c8006a2208200241c1016a290000370300200220022900b9013703402003200110a90120022802b801418180808078470d0220024190026a2205200241c4016a280200360200200220022902bc013703880220032001106020022802b8010d03200241086a22012005280200360200200241c8016a290300211720022903c0012118200041386a20042802003602002000200229031037023020002002290340370010200041186a2008290300370000200041206a2007290300370000200041286a2006290300370000200220022903880237030020002017370308200020183703002000200229030037023c200041c4006a20012802003602000c040b2002413c6a200241286a2802003602002002200436023020022002290320370234200041086a200241306a41b795044129108d01200042023703000c030b200041086a200241bc016a418a9504412d108d01200042023703000c020b200041086a200241b8016a41de9404412c108d01200042023703000c010b200041086a200241b8016a41047241af9404412f108d01200042023703000b200241f0026a24000bb30a02077f047e230041b0016b2204240002400240024020010440200441c8006a2106230041206b2205240020052005200110b6014108210702402005290300220d2003290300220e54220a200541086a290300220b200341086a290300220c54200b200c511b4504402005200d200e7d3703102005200b200c7d200aad7d3703182001200541106a1082010c010b200642003702042006410c6a42003e0200410121070b20062007360200200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a107f02402005290310220b20032903007c220d200b5422072007ad200541186a290300220b200341086a2903007c7c220c200b54200b200c511b4504402005200d3703202005200c370328200541086a41a89904200541206a10ad01200641083602000c010b2006410110b5010b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b024020020440200441c8006a2106230041206b2205240020052005200210b60102402005290300220b20032903007c220d200b5422072007ad200541086a290300220b200341086a2903007c7c220c200b54200b200c511b4504402005200d3703102005200c3703182002200541106a108201200641083602000c010b2006410110b5010b200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a107f02402005290310220d2003290300220e542207200541186a290300220b200341086a290300220c54200b200c511b4504402005200d200e7d3703202005200b200c7d2007ad7d370328200541086a41a89904200541206a10ad01200641083602000c010b2006410010b5010b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b20010440200441206a200141186a290000370300200441186a200141106a290000370300200441106a200141086a29000037030020042001290000370308410121080b20020440200441406b200241186a290000370300200441386a200241106a290000370300200441306a200241086a29000037030020042002290000370328410121090b41082105200341086a290300210b2003290300210c200441f1006a200441206a290300370000200441e9006a200441186a290300370000200441e1006a200441106a220629030037000020044182016a200441306a22032903003701002004418a016a200441386a220729030037010020044192016a200441406b290300370100200420042903083700592004200429032837017a2004200b3703502004200c370348200420093a0079200420083a00582004428080013702a801200441e9ba043602a401200441a4016a4103108a012003200441ac016a280200360200200420042902a401370328200441286a22024196840410870120062003280200360200200420042903283703082002200441086a2203200441d9006a410020011b10ae0120032002200441fa006a410020042d00791b10ae012002200310af0120072802002101200428023421032004290228210b200441003602302004200b370228200441d8006a2002109a01200441f9006a2002109a01200441c8006a2002109c0120042802302202200428022c4b0d01200320012004280228200210030b20002005360200200441b0016a24000f0b000b940402037f047e230041d0006b22042400230041e0006b2205240020052001200210b7012004027f2005290300220820032903002207542206200541086a2903002209200341086a290300220a542009200a511b4504402005200820077d220837031020052009200a7d2006ad7d2207370318200541386a200141186a290000370300200541306a200141106a290000370300200541286a200141086a290000370300200541c8006a200241086a290000370300200541d0006a200241106a290000370300200541d8006a200241186a2900003703002005200129000037032020052002290000370340200541206a200541106a108301200441106a20073703002004200837030841000c010b20044102360204200441106a42003e0200200441086a420037030041010b360200200541e0006a24000240200428020045044020042903082107200441c8006a200441106a2203290300370300200441186a200141186a2900003703002003200141106a29000037030041082103200441086a200141086a290000370300200441286a200241086a290000370300200441306a200241106a290000370300200441386a200241186a290000370300200420073703402004200129000037030020042002290000370320200410300c010b200441086a2903002107200428020421032000410c6a200441106a3502003e0200200020073702040b20002003360200200441d0006a24000bd10402087f017e23004190016b220224000240200020011025220841ff01714103460440230041406a2204240020042000360210200441146a20014121100f1a200441c099043602382004200441106a36023c200441086a2106230041106b22052400230041206b22032400200342808001370218200341e9ba04360214200441386a200341146a109901200328021c220720032802184b0440000b200341086a2003280214200710c101200328020c2107200541086a2209200328020836020020092007360204200341206a2400200528020c21032006200528020836020020062003360204200541106a2400200441406b2400200241047222031031200241246a20014121100f210620022000360200200242808001370260200241e9ba0436025c200220023602682002200336026c200241dc006a4104108a01200241d0006a2201200241e4006a2802003602002002200229025c370348200241c8006a220041d8840410870120024188016a22042001280200360200200220022903483703800120024180016a2205200241e8006a10880120012004280200360200200220022903800137034820052000200241256a410020022d00241b10ae012005200241ec006a1020200241f8006a200428020036020020022002290280013703702000200241f0006a10af01200241d8006a2802002101200228025421042002290248210a200241003602502002200a37024820022000107c20062000109a012003200010860120022802502200200228024c4b0d01200420012002280248200010030b20024190016a240020080f0b000b5b01027f230041d0006b22022400410221032000200110b4014504402000200110b3012002412e6a1031200220003602082002410c6a20014121100f1a200241013a002d200241086a10ac01410321030b200241d0006a240020030b0a0020002001410110730bbe1a02077f047e23004180046b22072400024002400240200220041033450d00200741c0016a2208102f200220081033450d002008200420022006106a20072802c00122084108460d00200020072902c4013702042000410c6a200741cc016a280200360200200020083602000c010b200741c0016a220820044100200610690240024020072802c00122094108460440200741106a2001200410b6012007290310200741186a2903008450450d0220072004360264200741b480043602602007428080013702c401200741e9ba043602c001200741e0006a200810970120072802c801220120072802c4014d0d010c040b200020072902c4013702042000410c6a200741cc016a280200360200200020093602000c020b200741086a20072802c001200110c1010b200741d0016a220810b801200741406b1036200541086a290300210e2005290300210f200741e0006a2201200741c0016a22054130100f1a200741d8016a20074188016a290300370300200820074180016a290300370300200741c8016a200741f8006a290300370300200741e8016a4200370300200741f0016a420037030020074180026a200741c8006a29030037030020074188026a200741d0006a29030037030020074190026a200741d8006a290300370300200720072903703703c001200742003703e001200720072903403703f801200741a0026a200e37030020074198026a2208200f370300200741a8026a220b41b29fece87b360200200741003602b002200742808001370264200741e9ba04360260200520011086012007280264220920072802682205490d012007280260210a200741003602682007200920056b36026420072005200a6a360260200741e0016a2001109c012007280264220520072802682201490d01200520016b21052007280260220c20016a2109024020072802b002220d410371044041c48004210b410021080c010b200741003602682007200536026420072009360260200b200741e0006a220110ab01200741f8016a200110860120082001109c012007280264220120072802682208490d02200120086b21052007280260220b20086a21090b20072005360260200d200a4200200c200b20082009200741e0006a22011002210820052007280260220a490d012008101b41ff017122054110472005410247710d012007200a3602c803200720093602c4032001200741c4036a104e20072802600d01200720072900693703202007200741f0006a280000360027200728026422054109460d01200741e8006a2d00002108200720072800273600df03200720072903203703d803024020054108460440200741d0016a22051036200741206a10b801200741406b102f103c21102001200741c0016a4130100f1a20074180036a20074188016a290300370300200741f8026a20074180016a290300370300200741f0026a200741f8006a29030037030020074188036a2208420037030020074190036a420037030020074198036a42003703002005200741c8006a290300370300200741d8016a200741d0006a290300370300200741e0016a200741d8006a290300370300200720072903703703e802200742013703c001200720072903403703c80120074180026a200e3703002007200f3703f801200741013a008802200742003703f001200720103703e801200741a1026a200741386a29000037000020074199026a200741306a29000037000020074191026a200741286a2900003700002007200729002037008902200741c1026a200341186a290000370000200741b9026a200341106a290000370000200741b1026a200341086a290000370000200720032900003700a902200741003602a00320074195d4bcb8023602e002200741003602d80220074280808080103703d002200742808001370264200741e9ba04360260200741e8026a20011086012007280264220a20072802682205490d0320072802602109200741003602682007200a20056b3602642007200520096a36026020082001109c012007280264220120072802682205490d03200120056b21012007280260220b20056a2105024020072802a003220c410371044041c4800421084100210a0c010b200741003602682007200136026420072005360260200741e0026a200741e0006a220110ab01200741a9026a200110860120074188026a2001109a01200741f8016a2001109c010240200741c0016a22052903005004402001410010bf01200541086a2001109501200541106a20011095010c010b2001410110bf01200541086a22052001108601200541206a20011094010b200741d0026a20011048200728026422012007280268220a490d042001200a6b210120072802602208200a6a21050b20072001360260200c20094200200b2008200a2005200741e0006a22081002210920012007280260220a490d032009101b41ff017122014110472001410247710d032007200a3602ac03200720053602a8032008200741a8036a10780240024002400240027f200728026041818080807846044020072d00640c010b200741d8036a200741e0006a418e8b04412a108d0120072802d803418180808078470d0820072d00dc030b41ff01710e020001070b200741e0006a200741a8036a1078027f200728026041818080807846044020072d00640c010b200741d8036a200741e0006a418e8b04412a108d0120072802d8032209418180808078470d0220072d00dc030b2105410c210141e98a04210a410021084125210b41808080807821090240024002400240200541ff01710e020100060b200741e0006a200741a8036a1078027f200728026041818080807846044020072d00640c010b200741f0036a200741e0006a41cf8504413c108d0120072802f0032201418180808078470d0220072d00f4030b2101410a2105024002400240024002400240200141ff01710e0400010403020b200741e0006a200741a8036a10a9012007280260418180808078460440200741083602dc03200741e0036a2007290264370200200741e8036a200741ec006a2802003602000c050b200741dc036a200741e0006a41b886044129108d010c070b200741e0006a200741a8036a10222007280260450440200741e4036a200741ec006a290200370200200720072902643702dc030c040b200741dc036a200741e4006a418b8604412d108d010c060b200741e0036a41998504360200200741e4036a423637020020074180808080783602dc030c050b410b21050b200720053602dc030b20072802dc0321010b20072802ac032001410d46720d082001410c460d06200041046a41d09804411e10ce01200041003602000c070b200741e8036a200741fc036a280000360000200741e0036a20072d00f4033a0000200720072900f5033700e103200720013602dc030b200741c8036a200741dc036a41b88b044123108d01200741cc036a280200210a200741d0036a280200210b200741d4036a280200210820072802c80321090c020b200741e0006a2200200741a8036a108c012007280260418180808078470440200741d8036a200041b88b044123108d0120072802d803418180808078470d060b20072802ac031a0c050b20072802e403210820072802e003210b20072802dc03210a0b2007200836026c2007200b3602682007200a36026420072009360260200741b4036a200741e0006a41db8b044120108d010c030b200020072903d8033700052000410c6a20072800df03360000200020083a0004200020053602000c010b200741e8006a200241086a290000370300200741f0006a200241106a290000370300200741f8006a200241186a29000037030020074188016a200341086a29000037030020074190016a200341106a29000037030020074198016a200341186a290000370300200741a8016a200441086a290000370300200741b0016a200441106a290000370300200741b8016a200441186a290000370300200720022900003703602007200329000037038001200720042900003703a001200641086a290300211020062903002111200741c0016a2204200741e0006a41e000100f1a200741b8026a2010370300200741a8026a200e370300200720113703b0022007200f3703a0022007428080013702c803200741e9ba043602c403200720043602a8032007200741e0016a22053602f003200720074180026a22063602b003200741c4036a4104108a01200741c8006a2202200741cc036a280200360200200720072902c403370340200741406b220141878204108701200741286a2203200228020036020020072007290340370320200741206a2208200741a8036a102020022003280200360200200720072903203703402001200741f0036a102020032002280200360200200720072903403703202008200741b0036a1020200741e0036a2003280200360200200720072903203703d8032001200741d8036a10af01200741d0006a2802002102200728024c21032007290240210e200741003602482007200e370240200420011086012005200110860120062001108601200741a0026a2001109c01200741b0026a2001109c012007280248220120072802444b0d0120032002200728024020011003200041083602000b20074180046a24000f0b000b0a0020002001410010740b0a0020002002410010730bf90c02097f057e23004180036b22052400200441086a290300210e20042903002111200541206a1038200541286a290300210f20052011200529032022107c22123703b00120052010201256ad200e200f7c7c3703b801200541186a41888004200541b0016a220710ad01200510b00137038001200541086a2002103a0240200529030850044020052002360244200541b480043602402005428080013702b401200541e9ba043602b001200541406b200710970120052802b401220820052802b8012206490d0120052802b0012109200541003602b8012005200820066b3602b4012005200620096a3602b00120054180016a200710950120052802b801220720052802b4014b0d0120052009200620052802b001200710c0010b200541c0016a220710b801200541406b2206102f200341086a290300210f2003290300211020054180016a200541b0016a22034130100f1a200541e8006a200141086a290000370000200541f0006a200141106a290000370000200541f8006a200141186a29000037000020052001290000370060200541e8016a200641c000100f2108200541b8016a20054198016a2903003703002007200541a0016a290300370300200541c8016a200541a8016a290300370300200541b0026a200f370300200541a8026a22072010370300200541d8016a4200370300200541e0016a4200370300200541c8026a220b41d4e69ef606360200200541c0026a4100360200200541b8026a220c42808080801037030020052005290390013703b001200542003703d001200541003602d002200542808001370244200541e9ba04360240200320061086012005280244220a20052802482203490d0020052802402109200541003602482005200a20036b3602442005200320096a360240200541d0016a2006109c012005280244220320052802482206490d00200320066b21032005280240220a20066a2106024020052802d002220d410371044041c480042108410021070c010b200541003602482005200336024420052006360240200b200541406b220310ab0120054188026a20031086012008200310860120072003109c01200c200310482005280244220320052802482207490d01200320076b21032005280240220820076a21060b20052003360240200d20094200200a200820072006200541406b220710022109200320052802402208490d002009101b41ff017122034110472003410247710d00200520083602e002200520063602dc022007200541dc026a104e20052802400d0020052005290049370380012005200541d0006a28000036008701200528024422034109460d00200541c8006a2d0000210620052005280087013600f70220052005290380013703f0020240024020034108460440200541b0016a410020022004106920052802b00122034108470440200520052900b5013703302005200541bc016a28000036003720052d00b40121060c020b200541d8006a200141186a290000370300200541d0006a200141106a290000370300200541c8006a200141086a290000370300200541e8006a200241086a290000370300200541f0006a200241106a290000370300200541f8006a200241186a2900003703002005200129000037034020052002290000370360200541b0016a2203200541406b41c000100f1a20054188026a200e370300200541f8016a200f3703002005201137038002200520103703f0012005428080013702e002200541e9ba043602dc02200520033602e8022005200541d0016a22063602ec02200541dc026a4103108a0120054188016a2202200541e4026a280200360200200520052902dc023703800120054180016a220141e68104108701200541f8026a2204200228020036020020052005290380013703f002200541f0026a2207200541e8026a102020022004280200360200200520052903f002370380012001200541ec026a10202004200228020036020020052005290380013703f0022001200710af0120054190016a2802002102200528028c012104200529028001210e20054100360288012005200e370280012003200110860120062001108601200541f0016a2001109c0120054180026a2001109c0120052802880122012005280284014b0d032004200220052802800120011003200041083602000c020b200520052800f702360037200520052903f0023703300b200020052903303700052000410c6a2005280037360000200020063a0004200020033602000b20054180036a24000f0b000b0a0020002002410110740b9a0102017f047e230041206b22032400200341106a107f200341186a2903002105200329031021042003103e0240200329030042017c2206200341086a290300200650ad7c22078450450440200442017c22042005200450ad7c2205845045044020002001290300200141086a2903002006200720042005200210ba010c020b20004181023b01000c010b20004181023b01000b200341206a24000b9a0102017f047e230041206b22032400200341106a107f200341186a2903002104200329031021052003103e0240200542017c22052004200550ad7c22068450450440200329030042017c2204200341086a290300200450ad7c2207845045044020002001290300200141086a2903002005200620042007200210ba010c020b20004181023b01000c010b20004181023b01000b200341206a24000ba5fd0102147f0a7e230041b0026b220024000240024002400240024002400240024002400240024002400240103241ff01714105470d0020004180800136020841e9ba04200041086a2203100120002802082201418180014f0d002000200136028c01200041e9ba0436028801200041003602e001200320004188016a200041e0016a410410c4010240024002402000027f02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002402000280208220341818080807846044020002d00e301210120002d00e201210320002d00e1012102024020002d00e001220441d8006b0e1e2a7979147979790a79067979791b0379792579227979347979363079790f000b0240200441336b0e0d112f797979792b1779792e7915000b0240200441a4016b0e09047979097979793707000b0240200441d6016b0e0713797916791d12000b0240200441e6016b0e092c7979793579790e10000b0240200441016b0e0723057979797919000b0240200441ca006b0e073379791c797927000b0240200441fd006b0e0726790879797932000b0240200441be016b0e062d7979317924000b0240200441f8016b0e0718797902797921000b0240200441246b0e02290d000b20044111460d0a20044116460d192004412b460d0b200441d400460d1d2004418a01460d272004419601460d1f200441b201460d1e200441b9014720024197014772200341ff017141ec01472001418f014772720d78200041086a20004188016a102d20002802080d60200041fe016a200041286a2903002214370100200041f6016a200041206a2903002215370100200041c6016a2201200041186a290300370100200041ce016a22022015370100200041d6016a2014370100200020002903103701be01200041386a2903002115200041306a2903002114200041d8006a2903002116200041d0006a2903002117200041406b2802002103200041c4006a2902002118200041cc006a2802002105200041b0016a2002280100360200200041a8016a2001290100370300200020002901be013703a00120004198016a200041da016a280100360200200020002901d2013703900141b08080807821010c6b0b200028020c2101200020002902103702102000200136020c20002003360208200041146a1046200041003a00a0010c770b200241f80047200341ff017141be0147722001410a47720d76200041086a20004188016a1068200029030822144202510d35200041b0016a200041186a28000036000020004198016a200041246a280200360200200020002900113700a9012000200029021c37039001200020002d00103a00a801200020143703a001200041306a29030021152000290328211420002802382103200029023c2118200028024421052000290348211741808080807821010c690b200241c000460d35200241d30147200341ff017141e5014772200141f60147720d75200041e0016a20004188016a107a418180808078210120002802e001418180808078470d71200020002802e4013602a0010c680b200241c10047200341ff017141f20047722001412747720d74200041086a20004188016a1068200029030822144202510d35200041b0016a200041186a28000036000020004198016a200041246a280200360200200020002900113700a9012000200029021c37039001200020002d00103a00a801200020143703a001200041306a29030021152000290328211420002802382103200029023c2118200028024421052000290348211741828080807821010c670b200241a20147200341ff017141c4004772200141f10047720d73200041b8016a20004188016a2202107a20002802b8012201418180808078470d6820002802bc012103200041e0016a2002106420002802e0012201418180808078470d6920002d00e4012104200041086a200210aa0120002802082201418180808078460d352000418a026a2000410f6a2d00003a0000200020002f000d3b01880220002d000c210320002802102102200028021421040c700b2002411e47200341ff0171413447722001410547720d72200041086a20004188016a102720002802080d35200041d2016a200041246a290200370100200041ca016a2000411c6a2902002214370100200041a8016a200041146a290200370300200041b0016a20143e020020004198016a200041d6016a2801003602002000200029020c22143701ba01200020143703a001200020002901ce01370390012000412c6a350200211441848080807821010c650b200241e40147200341ff0171418f014772200141bf0147720d71200041086a20004188016a106220002802080d35200041d6016a200041286a290300370100200041ce016a200041206a2903002215370100200041a8016a200041186a290300370300200041b0016a20153e020020004198016a200041da016a280100360200200020002903103703a001200020002901d2013703900141858080807821010c640b200241c500460d35200241e80147200341ff017141f5004772200141fa0047720d70200041086a20004188016a102d20002802080d36200041fe016a200041286a2903002214370100200041f6016a200041206a2903002215370100200041c6016a2201200041186a290300370100200041ce016a22022015370100200041d6016a2014370100200020002903103701be01200041386a2903002115200041306a2903002114200041d8006a2903002116200041d0006a2903002117200041406b2802002103200041c4006a2902002118200041cc006a2802002105200041b0016a2002280100360200200041a8016a2001290100370300200020002901be013703a00120004198016a200041da016a280100360200200020002901d2013703900141af8080807821010c630b200241d70047200341ff017141fb0147722001411247720d6f200041086a20004188016a1068200029030822144202510d36200041b0016a200041186a28000036000020004198016a200041246a280200360200200020002900113700a9012000200029021c37039001200020002d00103a00a801200020143703a001200041306a29030021152000290328211420002802382103200029023c2118200028024421052000290348211741888080807821010c620b2001200241ab0147200341ff017141c2004772720d6e200041e0016a20004188016a10a90120002802e001418180808078460d36200041106a200041e8016a290200370300200020002902e001370308200041146a10460c6e0b200241870147200341ff01714185014772200141e10147720d6d200041e0016a20004188016a107a20002802e001418180808078470d36200020002802e4013602a001418a8080807821010c600b2002412847200341ff017141f90047722001413647720d6c418b8080807821010c5f0b200241c500460d352002418f0147200341ff017141d6004772200141ea0147720d6b200041086a20004188016a10910120002802080d36200020002903103703a0012000200041186a2903003703a80141a98080807821010c5e0b2002411447200341ff017141cb004772200141890147720d6a200041e0016a20004188016a107a20002802e001418180808078470d36200020002802e4013602a001418d8080807821010c5d0b2002412647200341ff017141fb004772200141df0047720d69200041e0016a20004188016a107a20002802e001418180808078470d36200020002802e4013602a001418e8080807821010c5c0b2002411d47200341ff017141c70047722001411647720d68200041086a20004188016a102720002802080d36200041d2016a200041246a290200370100200041ca016a2000411c6a2902002214370100200041a8016a200041146a290200370300200041b0016a20143e020020004198016a200041d6016a2801003602002000200029020c22143701ba01200020143703a001200020002901ce01370390012000412c6a3502002114418f8080807821010c5b0b200241c80047200341ff0171411a47722001411947720d67200041086a20004188016a108e0120002d00080d36200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141908080807821010c5a0b2002418a0147200341ff0171411e47722001419a0147720d66200041086a20004188016a108e0120002d00080d36200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141918080807821010c590b2002411347200341ff017141c5004772200141c30147720d6541928080807821010c580b2002411a47200341ff017141950147722001412747720d6441938080807821010c570b2002410247200341ff0171411747722001411d47720d6341948080807821010c560b200241b00147200341ff017141840147722001412a47720d6241958080807821010c550b2002419a0147200341ff017141a8014772200141b00147720d61200041e0016a20004188016a107a20002802e001418180808078470d32200020002802e4013602a00141968080807821010c540b200241850147200341ff017141870147722001411947720d60200041e0016a20004188016a107a20002802e001418180808078470d32200020002802e4013602a00141978080807821010c530b200241e200460d32200241890147200341ff01714194014772200141bf0147720d5f41988080807821010c520b2002412d47200341ff017141f8014772200141c20147720d5e41998080807821010c510b200241e80047200341ff0171413847722001412f47720d5d200041086a20004188016a108e0120002d00080d31200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a001419a8080807821010c500b200241c70047200341ff017141d90147722001412147720d5c200041e0016a20004188016a2203108e0120002d00e0010d32200041086a2003108e0120002d0008450d31200041c2016a200041146a2902003701002000200029020c3701ba010c330b2002412047200341ff017141f9014772200141f50147720d5b200041086a20004188016a2203108e0120002d00080d34200041b8016a200310910120002802b8010d52200041c8016a290300211520002903c001211420004188026a200310aa012000280288022201418180808078460d3320002000290089023703e001200020004190026a2900003700e7010c5a0b200241b30147200341ff017141c7014772200141ee0047720d5a200041e0016a20004188016a2203108e0120002d00e0010d52200041086a2003108e0120002d00080d5320004188026a20031091012000280288020d5420004198026a29030021162000290390022117200041a0026a200310aa0120002802a0022202418180808078460d34200020002900a1023703b8012000200041a8026a2900003700bf010c580b2002410f47200341ff0171411b4772200141bd0147720d59200041086a20004188016a102820002802080d34200041fe016a200041286a2903002215370100200041f6016a200041206a2903002214370100200041c6016a200041186a2903002216370100200041ce016a2014370100200041d6016a2015370100200041a8016a2016370300200041b0016a20143e02002000200029031022143701be01200020143703a001200041386a2903002115200041306a290300211420004198016a200041da016a280100360200200020002901d20137039001419e8080807821010c4c0b200241d60147200341ff017141b5014772200141fa0047720d58200041086a20004188016a102820002802080d34200041fe016a200041286a2903002215370100200041f6016a200041206a2903002214370100200041c6016a200041186a2903002216370100200041ce016a2014370100200041d6016a2015370100200041a8016a2016370300200041b0016a20143e02002000200029031022143701be01200020143703a001200041386a2903002115200041306a290300211420004198016a200041da016a280100360200200020002901d20137039001419f8080807821010c4b0b200241cb0147200341ff017141d7004772200141d50147720d57200041086a20004188016a102820002802080d34200041fe016a200041286a2903002215370100200041f6016a200041206a2903002214370100200041c6016a200041186a2903002216370100200041ce016a2014370100200041d6016a2015370100200041a8016a2016370300200041b0016a20143e02002000200029031022143701be01200020143703a001200041386a2903002115200041306a290300211420004198016a200041da016a280100360200200020002901d2013703900141a08080807821010c4a0b200241f80047200341ff017141fd0047722001418e0147720d5641a18080807821010c490b200241ec0147200341ff017141b50147722001410847720d5541a28080807821010c480b200241f20047200341ff0171412f47722001412647720d54200041086a20004188016a102a20002d001822014102460d32200020002903083703a001200020013a00b0012000200041106a2903003703a80141a38080807821010c470b200241db0147200341ff017141fb0147722001413d47720d53200041086a20004188016a102a20002d001822014102460d32200020002903083703a001200020013a00b0012000200041106a2903003703a80141a48080807821010c460b200241b50147200341ff017141d0014772200141b00147720d52200041086a20004188016a108e0120002d00080d32200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141a58080807821010c450b200241e30147200341ff017141ed004772200141c60147720d51200041086a20004188016a108e0120002d00080d32200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141a68080807821010c440b200241ca0147200341ff017141cf014772200141f50047720d50200041086a20004188016a108e0120002d00080d32200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141a78080807821010c430b200241860147200341ff017141c3004772200141a90147720d4f200041086a20004188016a108e0120002d00080d32200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141a88080807821010c420b200241da0047200341ff017141e4014772200141830147720d4e200041086a20004188016a10910120002802080d32200020002903103703a0012000200041186a2903003703a80141aa8080807821010c410b200241f00047200341ff017141354772200141fe0047720d4d200041086a20004188016a10910120002802080d32200020002903103703a0012000200041186a2903003703a80141ab8080807821010c400b200241a10147200341ff017141e8004772200141cb0147720d4c200041086a20004188016a102920002802080d32200041fe016a200041286a2903002215370100200041f6016a200041206a2903002214370100200041c6016a200041186a2903002216370100200041ce016a2014370100200041d6016a2015370100200041a8016a2016370300200041b0016a20143e02002000200029031022143701be01200020143703a001200041386a2903002115200041306a290300211420004198016a200041da016a280100360200200020002901d2013703900141ad8080807821010c3f0b2002413647200341ff017141c70147722001413a47720d4b200041086a20004188016a102920002802080d32200041fe016a200041286a2903002215370100200041f6016a200041206a2903002214370100200041c6016a200041186a2903002216370100200041ce016a2014370100200041d6016a2015370100200041a8016a2016370300200041b0016a20143e02002000200029031022143701be01200020143703a001200041386a2903002115200041306a290300211420004198016a200041da016a280100360200200020002901d2013703900141ae8080807821010c3e0b2002412647200341ff0171411b4772200141d40147720d4a41b18080807821010c3d0b2002412047200341ff017141db004772200141e50147720d4941b28080807821010c3c0b200241f10047200341ff017141b7014772200141820147720d4841b38080807821010c3b0b200241d90147200341ff017141ac0147722001411847720d47200041086a20004188016a102b20002d000c22014102460d30200041ac016a200041146a29000037000020004198016a200041246a280200360200200020002f00093b00a101200020002d000b3a00a3012000200029000d3700a5012000200029021c37039001200020013a00a401200020002d00083a00a0012000290228211441b48080807821010c3a0b200241da0147200341ff0171413b4772200141b20147720d46200041e0016a20004188016a107a20002802e001418180808078470d30200020002802e4013602a00141b58080807821010c390b200241c00147200341ff017141e2004772200141fd0147720d45200041086a20004188016a102b20002d000c22014102460d30200041ac016a200041146a29000037000020004198016a200041246a280200360200200020002f00093b00a101200020002d000b3a00a3012000200029000d3700a5012000200029021c37039001200020013a00a401200020002d00083a00a0012000290228211441b68080807821010c380b200241cf0047200341ff017141094772200141910147720d44200041086a20004188016a102b20002d000c22014102460d30200041ac016a200041146a29000037000020004198016a200041246a280200360200200020002f00093b00a101200020002d000b3a00a3012000200029000d3700a5012000200029021c37039001200020013a00a401200020002d00083a00a0012000290228211441b78080807821010c370b200241f10147200341ff0171412447722001418a0147720d43200041086a20004188016a102b20002d000c22014102460d30200041ac016a200041146a29000037000020004198016a200041246a280200360200200020002f00093b00a101200020002d000b3a00a3012000200029000d3700a5012000200029021c37039001200020013a00a401200020002d00083a00a0012000290228211441b88080807821010c360b200241a60147200341ff017141c8004772200141830147720d42200041e0016a20004188016a2202107a20002802e0012201418180808078470d3120002802e4012103200041086a2002107a20002802082201418180808078460d3020002802102102200028020c210420002802140c320b200241b60147200341ff0171410c4772200141df0147720d41200041086a20004188016a102120002d00080d32200041a9016a200041126a290100370000200041b0016a200041196a28000036000020004198016a200041256a2800003602002000200029010a3700a10120002000411d6a29000037039001200020002d00093a00a00141ba8080807821010c340b200041e8016a200041186a290300370300200020002903103703e001200041ec016a10460c400b200341ff017141e30147200141db0147720d3f200041e0016a20004188016a10a60120002802e001418180808078460440200020002903e8013703a00141868080807821010c330b200041106a200041e8016a290300370300200020002903e001370308200041146a10460c3f0b200041e8016a200041186a290300370300200020002903103703e001200041ec016a10460c3e0b200028020c2201418080808078460d3d2000200041106a2902003702ac01200020013602a801200020043a00a401200020033a00a001200020034118763a00a301200020034108763b00a10141838080807821010c300b20004190026a200041146a2902003703002000200029020c3703880220004194026a10460c3c0b20004190026a200041146a2902003703002000200029020c3703880220004194026a10460c3b0b200341ff017141db0047200141f50047720d3a41878080807821010c2d0b20004190026a200041146a2902003703002000200029020c3703880220004194026a10460c390b200041e8016a200041186a290300370300200020002903103703e001200041ec016a10460c380b200020002800e9013602b8012000200041ec016a2800003600bb0120002802e4012201418080808078460d37200041e8016a2d00002103200041a8016a20002800bb01360000200020002802b8013600a501200020033a00a401200020013602a00141898080807821010c2a0b200041106a200041e8016a290200370300200020002902e001370308200041146a10460c360b200341ff0171419c01472001411447720d35200041e0016a20004188016a107a20002802e001418180808078460440200020002802e4013602a001418c8080807821010c290b200041106a200041e8016a290200370300200020002902e001370308200041146a10460c350b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a10460c340b200041106a200041e8016a290200370300200020002902e001370308200041146a1046200041023a00a0010c330b200041106a200041e8016a290200370300200020002902e001370308200041146a1046200041023a00a0010c320b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c310b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c300b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c2f0b200041106a200041e8016a290200370300200020002902e001370308200041146a1046200041023a00a0010c2e0b200041106a200041e8016a290200370300200020002902e001370308200041146a1046200041023a00a0010c2d0b200341ff0171410447200141e60147720d2c200041086a20004188016a1091012000280208450440200020002903103703a0012000200041186a2903003703a80141ac8080807821010c200b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c2c0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c2b0b200041c8016a200041f2016a290100370300200041c0016a200041ea016a2901002214370300200041cf016a200041f9016a290000370000200041a9016a2014370000200041b0016a200041c7016a280000360000200020002901e20122143703b801200020143700a101200041116a2900002115200041256a28000021052000411d6a2900002118200041196a28000021032000290009211420002d00e101210120004198016a200041d3016a280000360200200020002900cb0137039001200020013a00a001419b8080807821010c1d0b200041c2016a200041ec016a290200370100200020002902e4013701ba010b200041106a200041c2016a290100370300200020002901ba01370308200041146a1046200041023a00a0010c280b200041e8016a2202200041126a290100370300200041f0016a2000411a6a290100370300200041f7016a200041216a2900003700002000200029010a3703e00120002d00092101200028028c022203418080808078460d2620004190026a2902002118200041b0016a200041ef016a280000360000200041a9016a200229030037000020004198016a200041fb016a280000360200200020002903e0013700a101200020002900f30137039001200020013a00a001419c8080807821010c1a0b2000200029000d3703e0012000200041146a2900003700e70120002d000c21010c250b200041c0016a2204200041ea016a290100370300200041c8016a200041f2016a290100370300200041cf016a200041f9016a290000370000200020002901e2013703b80120002d00e101210220002802a4022201418080808078470d170c230b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c240b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c230b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c220b200041e8016a200041106a290300370300200020002903083703e001200041ec016a1046200041023a00a0010c210b200041e8016a200041106a290300370300200020002903083703e001200041ec016a1046200041023a00a0010c200b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1f0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1e0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1d0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1c0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1b0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c1a0b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c190b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c180b20004190026a200041146a2902003703002000200029020c3703880220004194026a1046200041023a00a0010c170b200041e8016a200041186a290200370300200020002902103703e001200041ec016a1046200041023a00a0010c160b200041106a200041e8016a290200370300200020002902e001370308200041146a1046200041023a00a0010c150b200041e8016a200041186a290200370300200020002902103703e001200041ec016a1046200041023a00a0010c140b200041e8016a200041186a290200370300200020002902103703e001200041ec016a1046200041023a00a0010c130b200041e8016a200041186a290200370300200020002902103703e001200041ec016a1046200041023a00a0010c120b2000200028020c3602a401200020033602a00141b98080807821010c040b20002802e801210220002802e401210420002802ec010b360214200020023602102000200436020c20002001360208200041146a1046200041023a00a0010c0f0b200041e8016a200041146a2902003703002000200029020c3703e001200041ec016a1046200041023a00a0010c0e0b200041116a2900002115200041a8026a2902002119200041196a28000021032000411d6a2900002118200041256a280000210520002900092114200041b0016a200041c7016a280000360000200041a9016a200429030037000020004198016a200041d3016a280000360200200020002903b8013700a101200020002900cb0137039001200020023a00a001200141bb80808078460d0d0b200041f8006a2202200041b0016a280200360200200041f0006a2204200041a8016a29030037030020004184016a20004198016a280200360200200020002903a001370368200020002903900137027c200141bb80808078470d070c0c0b000b2000418a026a200041bf016a2d00003a0000200020002f00bd013b01880220002802c401210420002802c001210220002d00bc0121030c070b2000418a026a200041e7016a2d00003a0000200020002f00e5013b01880220002802ec01210420002802e801210220002d00e40121030c060b200020002900bd013703e0012000200041c4016a2900003700e70120002d00bc0121010c070b200020002900e5013703b8012000200041ec016a2900003700bf0120002d00e40121020c050b2000200029000d3703b8012000200041146a2900003700bf0120002d000c21020c040b2000200029008d023703b801200020004194026a2900003700bf0120002d008c0221020c030b200041d0006a2016370300200041306a2015370300200041206a20004180016a290300370300200041186a2002290300370300200041106a20042903003703002000201737034820002014370328200020002903683703082000201937025c200020053602442000201837023c2000200336023820002001360258200041086a21024100210041002103410021044200211542002114230041d0086b22012400200141003602940420014198076a20014194046a10590240024002400240024002400240024002400240024002400240024002400240024002400240200128029807418380808078470d0020012d009c07450d00024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240411d20022802504180808080787322052005413b4f1b41016b0e3a01023938373614353433133231302f2e2d1211100f2c2b0e0d2a294b4b0c280b0a09272650502524232221201f1e1d1c0807061b1a1918171615000b2001200141cf086a22033602e80441082105200141f0046a200241c800100f210220014198046a22041031200141d8006a107f200141e0006a29030021152001290358211620014198076a1035200141f8056a2016201520013301b007420042e8074200410110ba01024020012d00f80545044020014188066a29030021142001290380062118200141c8006a2003200410b6012001290348201854200141d0006a290300221720145420142017511b450d0141002102410a21050c480b20012d00f9052100410021020c470b200141b8056a22032002103420014198076a103541012100200141f8056a2018201420013301b207420042e8074200410110ba01024020012d00f805450440200120012903800622173703b808200120014188066a29030022193703c008200141f8046a290300211420012903f0042118200141386a1038200141406b290300211a2001290338211b200141306a200310634100210220012802300440410b21050c490b2001104222003602d804200041016a220304402001200336029807418c800420014198076a2203105b2001200036029c07200141bc8004360298072003200141b8056a2204105a20014280800137029c07200141e9ba043602980741a480042003107c20042003108601200128029c07220620012802a0072204490d472001280298072105200141003602a0072001200620046b36029c072001200420056a36029807200141d8046a2003107c20012802a0072206200128029c074b0d47200141286a20052004200128029807200610c001200141f8056a2204200141ac056a220810cf01200120003602dc05200141ac80043602d80520014280800137029c07200141e9ba0436029807200141d8056a22072003109601200128029c07220920012802a0072205490d472001280298072106200141003602a0072001200920056b36029c072001200520066a3602980720042003104820012802a0072209200128029c074b0d47200141206a20062005200128029807200910c0012001200036029c07200141a8800436029807200320014180056a2206105a10b001211c200141f8076a201a370300200141e8076a2015370300200141c0076a200141a0046a290000370300200141c8076a200141a8046a290000370300200141d0076a200141b0046a2900003703002001201b3703f007200120163703e007200141003b01b0082001201c3703d807200142003703980720012001290098043703b80720014180086a4100413010111a200141b0076a2014370300200120183703a807200120003602dc05200141c080043602d8052001428080013702fc05200141e9ba043602f8052007200410960120012802fc0522092001280280062205490d4720012802f805210720014100360280062001200920056b3602fc052001200520076a3602f80520032004101d200128028006220320012802fc054b0d47200141186a2007200520012802f805200310c001104141016a22030d020b410121000c470b20012d00f9052100410021020c460b20012003360298074190800420014198076a2203105b200120003602b804200141086a200141b8046a22021065410821052001290308221520177c221720155422042004ad200141106a290300221520197c7c221620155420152016511b0d042001201737039807200120163703a00720022003101e2003102f200141f8056a220420014198046a2003200141b8086a106920012802f80522054108460440200141f0056a2209200141d0056a290000370300200141e8056a220a200141c8056a290000370300200141e0056a2207200141c0056a290000370300200120012900b8053703d805200141a4056a28020021022004200141a8056a2802002203104c200341ffffff1f71220420012802f805200128028006220c6b220520042005491b2205044020012802fc05200c4106746a2104200141cc076a210c0340200241306a280200210b200c200241346a10cf01200141c0076a200241286a290300370300200141a0076a200241086a290300370300200141a8076a200241106a290300370300200141b0076a200241186a2903003703002001200b3602c8072001200241206a2903003703b8072001200229030037039807200420014198076a41c000100f41406b2104200241406b2102200541016b22050d000b0b200141d0076a2003360200200120012902f8053703c807200141b0076a200641086a290300370300200141b8076a200641106a290300370300200141c0076a200641186a290300370300200120062903003703a807200141d4076a200810cf01200141c8066a2007290300370300200141d0066a200a290300370300200141d8066a2009290300370300200120143703a0072001201837039807200120012903d8053703c006200141f8056a220320014198076a220641c800100f1a2006200341e800100f1a20012000360280082001428080013702c004200141e9ba043602bc04200120014180086a22093602c804200141bc046a4104108a012007200141c4046a280200360200200120012902bc043703d805200141d8056a220341fc8b04108701200141e0046a22022007280200360200200120012903d8053703d804200141d8046a2208200141c8046a10880120012802dc04220420022802002205490d4520012802d8042107200141003602e0052001200420056b22023602dc052001200520076a220a3602d805200141e0076a220c200310860120012802e005220b20012802dc054b0d45200320012802d805200b108501200141003602e004200120023602dc042001200a3602d804200320081086012005200520012802e0046a22024b200220044b720d45200141003602e0052001200420026b22053602dc052001200220076a220a3602d80520062003106720012802e005220b20012802dc054b0d45200320012802d805200b108501200141003602e004200120053602dc042001200a3602d804200320081086012002200220012802e0046a22054b0d45200120053602d404200120043602d004200120073602cc042003200141cc046a10af01200141e8056a280200210220012802e405210520012902d805211541002104200141003602e005200120153702d80520092003107c200c200310860120062003106720012802e005220320012802dc054b0d452005200220012802d80520031003200041807e712102105c411421050c480b20012802fc05220041807e71210220012902800621150c460b2001200228020022043602b80820014190016a103820014198016a2903002114200129039001211520014198076a2200200141b8086a1037027f200129039807221642025204402001418c066a200141ac076a280000360000200120012900a5073700850620012802a007210220012d00a407210320014190066a200141b0076a418801100f1a200120033a0084062001200236028006200120163703f805410d20012d0091070d011a10b001211820001035200141e8046a200141f8056a2000201820152014103920012d00e8040d04410821054101210220012903f0062217200129038007221d7c221a20175422002000ad200141f8066a290300221420014188076a290300221b7c7c221520145420142015511b0d3e410f201a20012903f00422165a2015200141f8046a29030022195a20152019511b20012903e006221c2016542019200141e8066a29030022165620162019511b4572450d011a2001201a201c54201520165420152016511b047f41030520172017201c7c22195622002000ad201420167c7c221520145420142015511b0d3f410241012019201d542015201b542015201b511b1b0b3a009107200141e8046a103520012903e804211420014198076a10352014201420012903a0077c2215560d3e201520012903b80622147c22152014540d3e20152018580d030c3d0b410c0b21050c3c0b2001200141cf086a3602e804200141f0046a200241c800100f21004101210a20014199076a1031200141013a009807411221024192d4c19d7d20014198076a22041025220541ff01714103470d39200141b8056a220220001034200141a8016a20021063410c210220012802a801450d39200120012802ac01220d3602cc042004200141cc046a103720012903980722144202510d392001418c066a200141ac076a280000360000200120012900a5073700850620012802a007210020012d00a407210520014190066a200141b0076a418801100f1a200120053a0084062001200036028006200120143703f8052001290388062114200129039006211510b0012116201450450440410e210220152016560d3a0b410d210220012d0091074103470d39200141043a009107200141cc046a200141f8056a101c200141a8056a2802004106742109200141b8076a210c200141a4076a210e200141c8076a210f200141a8076a2108200141a4056a2802002102200141d0076a2111200141df056a2112034020094504402001200d3602d80420014280800137029c04200141e9ba04360298042001200141d8046a22033602b80820014198046a4102108a01200141a0076a2202200141a0046a28020036020020012001290298043703980720014198076a220041be8c0410870120014180066a2204200228020036020020012001290398073703f805200141f8056a200141b8086a108801200141e0056a2004280200360200200120012903f8053703d8052000200141d8056a10af01200141a8076a280200210220012802a407210520012902980721144100210a200141003602a007200120143702980720032000107c20012802a0072200200128029c074b0d442005200220012802980720001003105c411421020c3b0b105c200c4200370300200c41086a4200370300200141b0076a200241186a2903003703002008200241106a290300370300200141a0076a2204200241086a2903003703002001200229030037039807200141f8056a220020014198076a4130100f1a200141e0056a220520014180066a290300370300200141e8056a220620014188066a290300370300200141f0056a220b20014190066a290300370300200120012903f8053703d805200241286a2903002114200229032021152002280230211020014198046a200241346a10cf01200841186a200b290300370300200841106a2006290300370300200841086a2005290300370300200820012903d805370300201120143703002004200141a0046a280200360200200120153703c807200142003703d807200120012903980437039807200141083602e007200120103602a4072001428080013702fc05200141e9ba043602f8052008200010860120012802fc0522052001280280062204490d4320012802f805210b20014100360280062001200520046b3602fc0520012004200b6a3602f805200f2000109c0120012802fc0522042001280280062200490d43200420006b210420012802f805221020006a2106024020012802e0072213410371044041c480042100410021050c010b2001410036028006200120043602fc05200120063602f805200e200141f8056a220010ab012000200128029c0720012802a00710be0120012802fc0522002001280280062205490d44200020056b210420012802f805220020056a21060b200120043602f8052013200b42002010200020052006200141f8056a10022100200420012802f8052205490d432000101b220441ff0171220041024620004110467245044041828080807821050c390b200120053602bc08200120063602b808200141f8056a200141b8086a107802400240027f02400240027f0240027f024002400240024020012802f80541818080807846044020012d00fc0521040c010b200141d8056a200141f8056a418e8b04412a108d0120012d00dc05210420012802d8052205418180808078470d010b200441ff0171210b41e98a042104418502210741808080807821054100210041252106200b0e020102070b20012f00dd0520122d0000411074720c040b200141a0016a20012802bc082203410110cb0120012802a0012104200141f8056a2200200141b8086a20012802a4012206200310c40120012802f805220541818080807847044020012902fc052114200120012802840636028406200120143702fc05200120053602f805200141d8056a200041db8b044120108d0120012802e405210020012802e005210620012802dc05210420012802d8052205418180808078470d05200021030b200441807e710c010b200141f8056a2200200141b8086a108c0120012802f805418180808078470440200141d8056a200041b88b044123108d0120012802d8052205418180808078470d020b41002104410121064180808080780b210020012802bc08450d054180808080782105410021004130210641e087040c040b20012802dc0522044108760b210720012802e405210020012802e00521060c010b200441087621070b20002103200441ff01712007410874720b220441087621072006ad2000ad4220868421162005418380808078470d3a0c010b200041087621072000200441ff01717221042006ad2003ad4220868421160b200441ff0171200741087472418080808078460440200141013602d8052001410136029c0720014190880436029807200142013702a407200141013602fc052001200141f8056a3602a0072001200141d8056a3602f80520014198046a20014198076a104b0c3a0b20014198076a41b081041059200128029807418380808078470d43200241406b2102200941406a210920012d009c070d000b0c420b200141013a0090070c390b20012d00e9042102410821050c390b41002102410121000c410b230041106b22022400230041106b22032400230041206b22002400200042808001370214200041e9ba0436021041ac9904200041106a2205107c024002402000280214220720002802182204490d00200028021021062000200720046b220736021020062004200420066a2204200510002106200720002802102208490d00200610a40141ff01712206410347044020064110470d012000200836020c200020043602082005200041086a10a501027f20002802102204418180808078460440200028020c04404180808080782104413021064100210741da9b040c020b20002d00142104200341013a00042003418380808078360200200341056a20043a00000c040b200028021c21072000280218210620002802140b21052003200736020c20032006360208200320053a000420032004360200200341076a20054118763a0000200320054108763b00050c020b2003418380808078360200200341003a00040c010b000b200041206a2400200341056a2d0000210020032d00042104200328020041838080807846220545044020031081010b200241086a220620003a0001200620052004410047713a0000200341106a240020022d0008450440000b20022d00092100200241106a2400200141003a009807200120003a009907230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a22002d0000044041e9ba044181023b0000410221002002410236020c0c010b41e9ba0441003a00002002410136020c200041016a200241046a102e200228020c220041818001490d00000b0c4f0b20014198076a2100230041106b22022400200241a09904107d0c4f0b20014198076a2100230041106b22022400200241a49904107d0c4e0b230041106b220024002000103e20002903002114200141b0036a2203200041086a29030037030820032014370300200041106a240020012903b0032114200141a8076a200141b8036a2903003703000c3f0b20014198076a220241017210b8010c3f0b200229032021142001200241286a29030037038006200120143703f80520014198076a22001031200141e8046a20002002200141f8056a106a20012802e804410846047f105c41000541010b200141e8046a1054000b200229032021142001200241286a29030022153703f004200120143703e804200141f8056a22031031230041406a22002400200041186a200341186a290000370300200041106a200341106a290000370300200041086a200341086a290000370300200041286a200241086a2204290000370300200041306a200241106a2205290000370300200041386a200241186a220629000037030020002003290000370300200020022900003703202000200141e8046a108301200041406b2400200141e0076a2015370300200141b0076a20014190066a290000370300200141a8076a20014188066a290000370300200141a0076a20014180066a290000370300200141c0076a2004290300370300200141c8076a2005290300370300200141d0076a2006290300370300200120143703d807200120012900f80537039807200120022903003703b80720014198076a22001030105c2001410836029807410020001054000b230041106b220024002000107f2000290300211420014180036a2203200041086a29030037030820032014370300200041106a24002001290380032114200141a8076a20014188036a2903003703000c3b0b103c2114200141a8076a4200370300200120143703a0072001410036029807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a2200280200044041e9ba044181023b0000410221002002410236020c0c010b2002410136020c41e9ba0441003a0000200041086a200241046a109401200228020c220041818001490d00000b0c470b104221020c3c0b230041106b220024002000419c80041043027f02402000280200418380808078470440200010440c010b2000280204450d00200041086a2802000c010b41000b2102200041106a24000c3b0b103d21020c3a0b104121020c390b200141a0076a10352001410036029807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a2200280200044041e9ba044181023b0000410221002002410236020c0c010b2002410136020c41e9ba0441003a0000200041086a200241046a1019200228020c220041818001490d00000b0c420b20014198076a220241017210360c350b200141a4076a200241086a290200370200200141ac076a200241106a290200370200200141b4076a200241186a2902003702002001200229020037029c072001200141cf086a36029807200141f9056a1031200141013a00f80541032102024041e3abb1bb04200141f8056a22001025220341ff017141034604402001419c076a10082203410e4d047f2003418ca5046a2d000005410f0b220341ff0171411047044020014182808080783602f805200120033a00fc0520001045410121020b200120023602e8040c010b200141e8046a21000240024002400240200341ff017141016b0e020102000b200041046a41baa104411110ce010c020b200041046a41cba104410f10ce010c010b200041046a41daa104411110ce010b2000410236020020012802e80421020b2002410346047f105c41000541010b210241002103230041106b220024002000200236020c2000410c6a2802002106230041106b22022400200241808001360208200241e9ba0436020402400240024002400240200141e8046a22072802002201410447044041e9ba0441003a00004103210020014103460d034101210341eaba0441013a000041ebba042105200141016b0e020401020b4101210341e9ba0441013a00000c020b410221040b41ebba0420043a00002002410336020c200741046a200241046a1048200228020c220041818001490d02000b4102210041eaba0421050b200520033a00002002200036020c0b2006200010c201000b20022802042106200141cf086a220020022802002207102421034101210220014199076a1031200141013a009807200320014198076a22041025220541ff017141034604402006200020071024220b470440230041206b22032400200320063602142003200736021c200341b49904360218200341086a2109200341146a210d230041106b22022400200241086a210a230041206b22002400200042808001370218200041e9ba04360214200341186a200041146a220e109601024002402000280218220f200028021c2208490d002000280214210c2000410036021c2000200f20086b36021820002008200c6a360214200d200e107c200028021c220d20002802184b0d00200041086a200c20082000280214200d10c001200028020c2108200a2000280208360200200a2008360204200041206a24000c010b000b200228020c21002009200228020836020020092000360204200241106a2400200341206a2400200120063602c0052001200b3602bc05200120073602b8052001428080013702dc05200141e9ba043602d8052001200141b8056a220036029804200141d8056a4102108a01200141a0076a2203200141e0056a280200360200200120012902d80537039807200441f9840410870120014180066a2202200328020036020020012001290398073703f805200141f8056a20014198046a108801200141f0046a2002280200360200200120012903f8053703e8042004200141e8046a10af01200141a8076a280200210320012802a40721022001290298072114200141003602a007200120143702980720002004107c20004104722004107c200141c0056a2004107c20012802a0072200200128029c074b0d3020022003200128029807200010030b105c410021020b0c360b20022802002100200141f8056a2203200241046a22044121100f1a4101210220014199076a22051031200141013a0098070240024020012d00f80504402003410172200510bb010d010b410021050c010b20002004106b220541ff01714103470d00105c41002102410321050b0c350b200141cf086a20022802002200102421034101210420014199076a1031200141013a0098070240200320014198076a1025220541ff01714103470d002000200241046a106b220541ff01714103470d00105c41002104410321050b0c350b200141cf086a20022802002200102421034101210420014199076a1031200141013a0098070240200320014198076a1025220541ff01714103470d002000200241046a106c220541ff01714103470d00105c41002104410321050b0c340b200141cf086a2002280200102421020c310b2002280200200241046a10b4012100200141003a009807200120003a009907230041106b220024002000410036020c2000410c6a2802002103230041106b22002400200041808001360208200041e9ba04360204024020014198076a22012d0000044041e9ba044181023b0000410221020c010b41e9ba0441003a00002000410136020c200141016a200041046a102e200028020c220241818001490d00000b2003200210c201000b2001200141cf086a220036029807200141a0076a200241d000100f2102200141f0046a200141d8076a290300370300200141f8046a200141e0076a29030037030020014180056a200141e8076a2903003703002001200141d0076a2903003703e804200141c0076a29030021142001200141c8076a29030022153703c008200120143703b80820014180046a2000200141e8046a220410b601027f0240024020012903800420145420014188046a290300221420155420142015511b450440200141f8056a2203200141b8086a2205106d20012d00f8050d012001200129038006221437039804200120014188066a29030022153703a00420031031200141b8056a200020032002200420014198046a2005106e20012802b80522004108470440200141e0056a20012902bc05370300200141e8056a200141c4056a280200360200200120003602dc05200141013602d8050c030b200141e8056a2015370300200120143703e005200141003602d805105c41000c030b200141f8036a410b10ca0120012802f803210320012802fc03220041cd8104290000370000200041076a41d48104280000360000200141e8056a410b360200200141e4056a2000360200200141e0056a2003360200200142013703d8050c010b200141d8056a41047220012d00f90510b501200141013602d8050b41010b200141d8056a1056000b2001200141cf086a220036029807200141a0076a200241d000100f2102200141f0046a200141d8076a290300370300200141f8046a200141e0076a29030037030020014180056a200141e8076a2903003703002001200141d0076a2903003703e804200141c0076a29030021142001200141c8076a29030022153703c008200120143703b808200141e8036a2000200141e8046a22041040027f0240024020012903e803201454200141f0036a290300221620155420152016511b450440200141f8056a2203200141b8086a2205106f20012d00f8050d01200120012903800637039804200120014188066a2903003703a00420031031200141b8056a2000200320022004200520014198046a106e20012802b80522004108470440200141e0056a20012902bc05370300200141e8056a200141c4056a280200360200200120003602dc05200141013602d8050c030b200141e8056a2015370300200120143703e005200141003602d805105c41000c030b200141e0036a410d10ca0120012802e003210320012802e403220041d88104290000370000200041056a41dd8104290000370000200141e8056a410d360200200141e4056a2000360200200141e0056a2003360200200142013703d8050c010b200141d8056a41047220012d00f90510b501200141013602d8050b41010b200141d8056a1056000b200241086a29030021142002290300211520014190066a200241286a29030037030020014188066a200241206a29030037030020014180066a200241186a290300370300200120022903103703f805200120143703a004200120153703980420014198076a2200200141cf086a20014198046a22031070027f024020012d009807450440200120012903a00722143703b8052001200141a8076a29030022153703c00520001031200141d8056a2000200141f8056a200141b8056a2003107120012802d80522004108470440200141f0046a20012902dc05370300200141f8046a200141e4056a280200360200200120003602ec040c020b200141f8046a2015370300200120143703f004200141003602e804105c41000c020b200141e8046a41047220012d00990710b5010b200141013602e80441010b200141e8046a1056000b200241086a29030021142002290300211520014190066a200241286a29030037030020014188066a200241206a29030037030020014180066a200241186a290300370300200120022903103703f805200120143703a004200120153703980420014198076a2200200141cf086a20014198046a22031072027f024020012d009807450440200120012903a00722143703b8052001200141a8076a29030022153703c00520001031200141d8056a2000200141f8056a2003200141b8056a107120012802d80522004108470440200141f0046a20012902dc05370300200141f8046a200141e4056a280200360200200120003602ec040c020b200141f8046a2015370300200120143703f004200141003602e804105c41000c020b200141e8046a41047220012d00990710b5010b200141013602e80441010b200141e8046a1056000b200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141f8056a106d0c2e0b200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141f8056a106f0c2d0b200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141cf086a200141f8056a10700c2c0b200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141cf086a200141f8056a10720c2b0b200141d0036a200141cf086a2002103b20012903d0032114200141a8076a200141d8036a2903003703000c240b230041406a22002400200041286a200241086a290000370200200041306a200241106a290000370200200041386a200241186a2900003702002000200141cf086a220336021c20002002290000370220200041086a2003200041206a104020002903082114200141c0036a2203200041106a29030037030820032014370300200041406b240020012903c0032114200141a8076a200141c8036a2903003703000c230b20022d00102100200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141f8056a200010730c280b20022d00102100200229030021142001200241086a29030037038006200120143703f80520014198076a2202200141f8056a200010740c270b200229032021152001200241286a2903003703f004200120153703e804200141f8056a22031031230041e0006b2200240020002003200210b70120014198076a2204027f20002903002215200141e8046a22052903007c221620155422062006ad200041086a2903002218200541086a2903007c7c221520185420152018511b4504402000201637031020002015370318200041386a200341186a290000370300200041306a200341106a290000370300200041286a200341086a290000370300200041c8006a200241086a290000370300200041d0006a200241106a290000370300200041d8006a200241186a2900003703002000200329000037032020002002290000370340200041206a200041106a108301200441106a20153703002004201637030841000c010b200441046a410110b50141010b360200200041e0006a2400027f024020012802980745044020012903a0072115200141e0076a200141a8076a2200290300370300200141b0076a20014190066a290000370300200020014188066a290000370300200141a0076a20014180066a290000370300200141c0076a200241086a290300370300200141c8076a200241106a290300370300200141d0076a200241186a290300370300200120153703d807200120012900f80537039807200120022903003703b807200410300c010b200141a8076a3502002114200141a0076a29030021154101200128029c0722054108470d011a0b105c4108210541000b2100200141a4076a20143e02002001201537029c072001200536029807200020014198076a1054000b230041d0006b22002400200041106a200241c000100f1a20002002200041306a10b70120002903002114200141a0036a2203200041086a29030037030820032014370300200041d0006a240020012903a0032114200141a8076a200141a8036a2903003703000c1f0b20014190036a200141cf086a2002103b2001290390032114200141a8076a20014198036a2903003703000c1e0b20014198076a2203410172210020022802002104230041306b2202240020022004360200200241a880043602280c250b20014198076a210320022802002101230041206b2200240020002001360204200042808001370214200041e9ba0436021041ac8004200041106a2202107c200041046a2002107c024002402000280214220520002802182201490d00200028021021042000200520016b220536021020042001200120046a2201200210002102200520002802102204490d002002101b41ff01712202410346047f4180808080780520024110470d012000200436020c20002001360208200041106a200041086a10a9012000280210418180808078470d01200028020c0d01200041186a290200211420002802140b21012003201437020420032001360200200041206a24000c010b000b20031055000b230041406a22002400200041286a200241086a290000370200200041306a200241106a290000370200200041386a200241186a2900003702002000200141cf086a36021c20002002290000370220200041086a200041206a103a20002903082114200141f0026a2203200029031037030820032014370300200041406b240020012903f0022114200120012903f8023703a0072001201437039807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a2200290300420251044041e9ba044181023b0000410221002002410236020c0c010b2002410136020c41e9ba0441003a00002000200241046a105d200228020c220041818001490d00000b0c280b230041306b22002400200041186a200241086a290000370200200041206a200241106a290000370200200041286a200241186a2900003702002000200141cf086a36020c200020022900003702102000200041106a101a20002802042103200141e8026a2202200028020036020020022003360204200041306a2400200120012903e80237029807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024041eaba04027f20014198076a22002802002201410247044041e9ba0441003a000041002001450d011a41eaba0441013a00002002410236020c200041046a200241046a107c200228020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221002002410236020c0b0c270b230041d0006b220024002000200141cf086a360224200041286a20024124100f21032000200041c8006a28020036024c200041086a2003200041cc006a103f20002d0018210220002903082114200141d0026a2203200041106a29030037030820032014370300200320023a0010200041d0006a240020012d00e002210020012903d00221142001200141d8026a2903003703a0072001201437039807200120003a00a807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024041eaba04027f20014198076a22002d00102201410447044041e9ba0441003a0000410020014103460d011a41eaba0441013a00002002410236020c2000200241046a105f200228020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221002002410236020c0b0c260b20022802002103230041106b220024002000200336020c20014198076a22022000410c6a1037200041106a2400230041106b220024002000410036020c2000410c6a2802002103230041106b22012400200141808001360208200141e9ba04360204024041eaba04027f20022903002214420352044041e9ba0441003a0000410020144202510d011a41eaba0441013a00002001410236020c2002200141046a101d200128020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221002001410236020c0b0c250b200141b8026a210320022802002102230041f0026b2200240020002002360214200041b8016a2202200041146a103702400240027e024020002903b8014202520440200041186a200241a001100f1a20002d00b101450d010b42000c010b200041b8016a2202103510b001211420001038200041d8026a200041186a200220142000290300200041086a290300103920002d00d8020d01200041e8026a290300211420002903e002211542010b21162003201537030820032016370300200341106a2014370300200041f0026a24000c010b000b20012903b802211420012903c0022115200141a8076a200141c8026a290300370300200120153703a0072001201437039807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024041eaba04027f20014198076a22002903002214420252044041e9ba0441003a000041002014500d011a41eaba0441013a00002002410236020c200041086a200241046a109c01200228020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221002002410236020c0b0c240b20022802002103230041b0016b220024002000200336020c200041106a2000410c6a10372000290310211420002d00a9012103200041b0016a2400200141003a00980720014105200320144202511b3a009907230041106b220024002000410036020c2000410c6a2802002104230041106b22002400200041808001360208200041e9ba04360204024041eaba04027f20014198076a22032d000045044041e9ba0441003a0000410020032d00014105460d011a41eaba0441013a00002000410236020c200341016a200041046a101f200028020c220241818001490d02000b41e9ba0441013a000041010b3a0000410221020b2004200210c201000b20014198076a2203410172210020022802002104230041306b2202240020022004360200200241bc80043602280c1d0b230041206b220024002002280208210320022802042102200041186a22044200370300200041106a22054200370300200041086a2206420037030020004200370300200220032000100d20014198076a2203410172220241186a2004290300370000200241106a2005290300370000200241086a200629030037000020022000290300370000200041206a24000c1d0b230041d0006b220024002000200141cf086a36020020014198076a2203410172200041086a200241c800100f1034200041d0006a24000c1c0b2002290300211420014198076a2200103541082102027f0240200129039807221620012903a0077c22152016540d002015201520012903a8077c2216560d004113210220142016540d0020014199076a1031200141013a00980741122102410141d082bdaf0120001025220541ff01714103470d011a2014106620141051105c4114210241000c010b4101210541010b2104200120053a009c0720012002360298070c1d0b200141a8076a2200200241086a290300370300200141b0076a2203200241106a290300370300200141b8076a200241186a290300370300200120022903003703a0072001200141cf086a36029807103c211541012106027f024020012903a007221620002903007c22142016540d002014201420032903007c2216560d0041012105411320152016540d011a200141f9056a1031200141013a00f805411241d082bdaf01200141f8056a22001025220541ff01714103470d011a200141a0076a10182001428080013702dc05200141e9ba043602d805200141d8056a4101108a0120014180066a2203200141e0056a280200360200200120012902d8053703f805200041808d04108701200141f0046a2003280200360200200120012903f8053703e8042000200141e8046a10af0120014188066a2802002105200128028406210320012902f8052114410021062001410036028006200120143702f805200220001019200128028006220020012802fc054b0d0f2003200520012802f80520001003105c41140c010b4101210541080b2100200120053a009c072001200036029807200620014198076a1057000b2001200141cf086a3602f805200141fc056a20024124100f210020012001419c066a28020022033602980420014198076a20014198046a22061037027f024002402001290398072214420252044020012903a8072115411121054100210220012d00b008450d0220012903a0072116200141a8026a2000103a2014500d02201620012903b002420020012802a8021b580d0220014190026a20002006103f20012d00a0024103470d0220014188026a2000101a2001280288024101460440200128028c0220034f0d030b200120003602ec04200141a080043602e80420014280800137029c07200141e9ba0436029807200141e8046a220620014198076a2203109701200128029c07220520012802a0072202490d102001280298072104200141003602a0072001200520026b36029c072001200220046a3602980720014198046a2003107c20012802a0072205200128029c074b0d1020014180026a20042002200128029807200510c001200141f0016a200141cf086a2204200010b601410821052001200141f8016a2903003703c005200120012903f0013703b8052003200141b8056a2207106d20012d0098070d01200120012903a0073703d8052001200141a8076a2903003703e0052003102f20062004200320002000200141d8056a2007106e20012802e8042205410847044020012802ec04220441807e71210220012902f00421150c030b105c4114210541000c030b410c2105410021020c010b20012d0099072104410021020b200241807e71200441ff017172210241010b2104200120153702a0072001200236029c070c1a0b20022d0004210020022802002105200141d8056a22031031200120053602d804200141e0016a200141cf086a200310b601200141e8016a290300211520012903e0012118200141d0016a200141d8046a22021065200141d8016a290300211420012903d001211620014198076a220320021037027f02400240024002402001290398074202520440200141f8056a200141b0076a4128100f1a200141f0046a20014188066a290300370300200141f8046a20014190066a29030037030020014180056a20014198066a29030037030020012001290380063703e804200310312003200141e8046a10bb01450440201521140c030b410821022018201620187c22185622042004ad201420157c7c221420155420142015511b450d020c010b410c21020b410121040c010b02402014201884500440410a21020c010b20014198076a200141d8046a1037200129039807221542025204402001418c066a200141ac076a280000360000200120012900a5073700850620012802a007210320012d00a407210420014190066a200141b0076a418801100f1a200120043a0084062001200336028006200120153703f80520012d0091070440410d21020c020b200141b8016a200141d8056a200141d8046a103f200141c0016a290300211520012903b80121160240024002400240024002400240024002400240024002400240024020012d00c80141016b0e03020300010b024002400240200041016b0e020102000b20012903e006221520187c221620155422032003ad200141e8066a290300221720147c7c221520175420152017511b0d0e200141e0066a21020c120b20012903f006221520187c221620155422032003ad200141f8066a290300221720147c7c221520175420152017511b0d0d200141f0066a21020c110b200129038007221520187c221620155422032003ad20014188076a290300221720147c7c221520175420152017511b0d0c20014180076a21020c100b200041016b0e020304020b200041016b0e020506040b200041016b0e020708060b410021044108210220012903e00622192016542203200141e8066a290300221720155420152017511b0d0a41012104201920167d221920187c221620195422062006ad201720157d2003ad7d221720147c7c221520175420152017511b0d0a200141e0066a21020c0c0b410021044108210220012903e00622192016542203200141e8066a2206290300221720155420152017511b0d092006201720157d2003ad7d3703002001201920167d3703e0064101210420012903f006221520187c221620155422032003ad200141f8066a290300221720147c7c221520175420152017511b0d09200141f0066a21020c0b0b410021044108210220012903e00622192016542203200141e8066a2206290300221720155420152017511b0d082006201720157d2003ad7d3703002001201920167d3703e00641012104200129038007221520187c221620155422032003ad20014188076a290300221720147c7c221520175420152017511b0d0820014180076a21020c0a0b410021044108210220012903f00622192016542203200141f8066a2206290300221720155420152017511b0d072006201720157d2003ad7d3703002001201920167d3703f0064101210420012903e006221520187c221620155422032003ad200141e8066a290300221720147c7c221520175420152017511b0d07200141e0066a21020c090b410021044108210220012903f00622192016542203200141f8066a290300221720155420152017511b0d0641012104201920167d221920187c221620195422062006ad201720157d2003ad7d221720147c7c221520175420152017511b0d06200141f0066a21020c080b410021044108210220012903f00622192016542203200141f8066a2206290300221720155420152017511b0d052006201720157d2003ad7d3703002001201920167d3703f00641012104200129038007221520187c221620155422032003ad20014188076a290300221720147c7c221520175420152017511b0d0520014180076a21020c070b41002104410821022001290380072219201654220320014188076a2206290300221720155420152017511b0d042006201720157d2003ad7d3703002001201920167d370380074101210420012903e006221520187c221620155422032003ad200141e8066a290300221720147c7c221520175420152017511b0d04200141e0066a21020c060b41002104410821022001290380072219201654220320014188076a2206290300221720155420152017511b0d032006201720157d2003ad7d3703002001201920167d370380074101210420012903f006221520187c221620155422032003ad200141f8066a290300221720147c7c221520175420152017511b0d03200141f0066a21020c050b41002104410821022001290380072219201654220320014188076a290300221720155420152017511b0d0241012104201920167d221920187c221620195422062006ad201720157d2003ad7d221720147c7c221520175420152017511b4101460d0220014180076a21020c040b41012104410821020c010b410c21020b20012001290098043703f80520012001419f046a2800003600ff050b41010c010b2002201637030020022015370308200120143703f004200120183703e804200120003a00f804200141b4076a200141f0056a290000370200200141ac076a200141e8056a290000370200200141a4076a200141e0056a290000370200200141bc076a220722032005360200200120012900d80537029c07200141b88004360298072001428080013702bc05200141e9ba043602b80541b88004200141b8056a2202107c2001419c076a200210860120032002107c20012802bc05220620012802c0052203490d0c20012802b8052104200141003602c0052001200620036b3602bc052001200320046a3602b805200141e8046a22062002105f20012802c005220820012802bc054b0d0c200141b0016a2004200320012802b805200810c001200141d8046a200141f8056a2203101c200141b0076a200141f0056a290000370300200141a8076a200141e8056a290000370300200141a0076a200141e0056a290000370300200120012900d80537039807200120003a00bc07200120053602b8072001428080013702bc05200141e9ba043602b805200120014198076a22043602b8082001200141b8076a22053602980420024103108a0120014180066a2200200141c0056a280200360200200120012902b8053703f805200341df8c04108701200141f0046a22022000280200360200200120012903f8053703e8042006200141b8086a102020002002280200360200200120012903e8043703f805200320014198046a10880120022000280200360200200120012903f8053703e8042003200610af0120014188066a2802002100200128028406210220012902f80521142001410036028006200120143702f8052004200310860120052003107c20072003101f200128028006220420012802fc054b0d0c2002200020012802f80520041003105c4114210241000b2100200141a4076a20012800ff05360000200120012903f80537009d07200120043a009c072001200236029807200020014198076a1057000b200120073b00dd05200141df056a20074110763a0000200120163702e005200120043a00dc05200120053602d805200541818080807849044020014180066a200141e0056a290200370300200120012902d8053703f805200141a4076a42013702002001410136029c07200141c8980436029807200141023602bc082001200141b8086a3602a0072001200141f8056a3602b80820014198046a20014198076a104b20014184066a10460c010b200141a4076a42013702002001410136029c0720014190880436029807200141033602fc052001200141f8056a3602a0072001200141d8056a3602f80520014198046a20014198076a104b20012802d8054181808080784f0d00200141e4056a10460b20012001290099043703f8052001200141a0046a2800003600ff0520012d0098042105411021020b200141a4076a20012800ff05360000200120012903f80537009d07200120053a009c072001200236029807200a20014198076a1057000b2001201837038006200142013703f805200141b8086a2200200141f8056a2203101c10412206450d002001200641016b360298074190800420014198076a2206105b103d41016a2207450d002001200736029807418080042006105b20012d00910722024102460d0520014180016a20001065200120014188016a29030022143703c005200120012903800122153703b805200141f0006a20001065200129037022182015542206200141f8006a290300221620145420142016511b0d032001201820157d370398072001201620147d2006ad7d3703a00720152018852014201685844200520d012001428080013702fc05200141e9ba043602f80541b080042003107c20002003107c200128028006220020012802fc054b0d07200141e8006a20012802f805200010c1010c020b200120012900d805370398042001200141df056a28000036009f040c030b200141b8086a20014198076a101e0b200141e8046a2200102f20014198076a2203200141b8086a10372001290398074202510d04200141f8056a200341a001100f1a200141d8056a200020014198066a200141b8056a106920012802d80522054108460d02200120012900dd05370398042001200141e4056a28000036009f0420012d00dc0521020c010b410021020b410121040c010b200120023a00bc05200120043602b8052001428080013702dc05200141e9ba043602d8052001200141b8056a220536029804200141d8056a4103108a01200141a0076a2203200141e0056a280200360200200120012902d8053703980720014198076a2200419d8c0410870120014180066a2204200328020036020020012001290398073703f805200141f8056a220620014198046a10880120012802fc05220220042802002203490d0120012802f8052104200141003602a0072001200220036b220736029c072001200320046a220836029807200141bc056a22092000101f20012802a007220a200128029c074b0d012000200128029807200a1085012001410036028006200120073602fc05200120083602f80520002006108601200320032001280280066a22064b0d01200120063602f004200120023602ec04200120043602e8042000200141e8046a10af01200141a8076a280200210220012802a4072103200129029807211441002104200141003602a007200120143702980720052000107c20092000101f20012802a0072200200128029c074b0d012003200220012802980720001003105c411421050b200141a4076a200128009f04360000200120012903980437009d07200120023a009c070c0e0b000b410821050b410121040b200120153702a00720012005360298072001200241807e71200041ff01717236029c07230041106b220024002000200436020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a22002802002201411547044041e9ba0441003a00000240200141144604402002410236020c41eaba0441003a0000200041046a200241046a107c0c010b41eaba0441013a00002002410236020c2000200241046a105e0b200228020c220041818001490d01000b41e9ba044181023b0000410221002002410236020c0b0c0d0b200120143703a0070c0b0b200141003a00980720021052000b2001419c076a41aa9804410f10ce012001410036029807410120014198076a1054000b20014100360298072001200236029c07230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a2200280200044041e9ba044181023b0000410221002002410236020c0c010b2002410136020c41e9ba0441003a0000200041046a200241046a107c200228020c220041818001490d00000b0c090b200141003a009807200120053a009907200220014198076a1058000b200141003a009807200120053a009907200420014198076a1058000b20012d0098072103230041106b220024002000200336020c2000410c6a2802002101230041106b22002400200041808001360208200041e9ba0436020441022103024020022d00002204410247044041e9ba0441003a0000024020044504402000410236020c41eaba0441003a0000200241086a200041046a109c010c010b41eaba0441013a00002000410236020c200241016a200041046a101f0b200028020c220341818001490d01000b41e9ba044181023b00002000410236020c0b2001200310c201000b200141a8076a427f3703002001427f3703a0070c040b2002200236022c200241046a2105230041e0006b22042400200442808001370240200441e9ba0436023c200241286a22072004413c6a2206108901200741046a2006108901024002402004280240220920042802442207490d00200428023c21082004200920076b220936023c20082007200720086a22072006100021082009200428023c220a490d00024002402008101b41ff01712208410347044020084110470d032004200a360224200420073602202006200441206a1021027f20042d003c4504402004413a6a220620042d003f3a0000200420042f003d3b01382004200441d0006a2902003703282004200441d5006a29000037002d2004280224450d0341e08704210641302107410021084180808080780c010b200441cc006a2802002108200441c8006a2802002107200441c4006a280200210620042802400b2109200541106a20083602002005410c6a2007360200200541086a200636020020052009360204200541013a00000c020b200541003b01000c010b200441406b2802002107200441c4006a2802002108200441c8006a2802002109200441cc006a280200210a200420042f0138220c3b001d200420042903283703082004200429002d37000d200420062d000022063a001f200541046a20063a0000200541026a200c3b0000200541156a20042903083700002005411a6a200429000d370000200541116a200a3600002005410d6a2009360000200541096a2008360000200541056a200736000020054180023b01000b200441e0006a24000c010b000b20022d00040440000b2000200241046a4101724121100f1a200241306a2400200141003a009807230041106b220024002000410036020c2000410c6a2802002102230041106b22012400200141808001360208200141e9ba04360204024041eaba04027f20032d000045044041e9ba0441003a0000410020032d0001450d011a41eaba0441013a00002001410236020c200341026a200141046a108601200128020c220041818001490d02000b41e9ba0441013a000041010b3a0000410221002001410236020c0b2002200010c201000b200141003a00980720031052000b20012005360298070b200420014198076a1057000b2001410036029807230041106b220024002000410036020c2000410c6a2802002103230041106b22022400200241808001360208200241e9ba04360204024020014198076a2200280200044041e9ba044181023b0000410221002002410236020c0c010b2002410136020c41e9ba0441003a0000200041086a200241046a109c01200228020c220041818001490d00000b0b2003200010c201000b02402002280200418380808078460440200228020441818080807846044020004180808080783602000c020b2000200241046a2203290200370200200041086a200341086a2802003602000c010b20004180808080783602002002107e0b200241106a240020001055000b200041106a200041e8016a290200370300200020002902e001370308200041146a10460c030b2000410f6a2000418a026a2d00003a0000200020033a000c20002001360208200020002f0188023b000d2000200436021420002002360210200041146a10460c020b200041106a20002900bf01370000200020023a0008200020002903b801370009200041146a1046200041023a00a0010c010b200041106a20002900e701370000200020013a0008200020002903e001370009200041146a1046200041023a00a0010b20004101360208200041086a1053000baa2002167f047e23004190066b220024000240024002400240024002400240024002400240103241ff01714105470d0020004180800136021041e9ba04200041106a2201100120002802102203418180014f0d00200020033602bc02200041e9ba043602b80220004100360298032001200041b8026a220320004198036a410410c4012000280210220141818080807846044020002d009803419b01470d0a20002d00990341ae01470d0a20002d009a03419d01470d0a20002d009b0341de00470d0a200041a4046a2003108e0120002d00a4040d02200041c8046a2003108e0120002d00c8040d03200041ec046a2003108e0120002d00ec040d0420004190056a2003102c20002d0090050d05200041b8056a200310a60120002802b8052201418180808078470d0620002903c0052118200041c8056a200310a90120002802c8052201418180808078470d07200041d0056a290200211920002802cc052110200041d8056a200310a90120002802d8052201418180808078470d08200041e8056a2003106220002802e8050440200020002900ed05370398032000200041f4056a29000037009f0320002d00ec0521010c0a0b41082103200041186a200041ae046a290100370300200041206a200041b6046a290100370300200041276a200041bd046a290000370000200041376a200041c8046a410172220141086a2900003700002000413f6a200141106a290000370000200041c7006a200141186a290000370000200041e7006a200041ec046a410172220241186a290000370000200041df006a200241106a290000370000200041d7006a200241086a290000370000200020002901a6043703102000200129000037002f2000200229000037004f20002d00a5042101200041f0026a22052000419a056a290100370300200041f8026a2206200041a2056a29010037030020004180036a2204200041aa056a29010037030020004190036a2208200041e4056a28020036020020004187046a200041f8056a22072903003700002000418f046a20004180066a220929030037000020004197046a20004188066a29030037000020002000290192053703e802200020002902dc0537038803200020002903f0053700ff0320002d009105211120004198036a2202200041106a220a41df00100f1a200041c0026a220d200041f8036a4127100f1a2010418080808078460d09200041d8016a220b200241df00100f1a200041d4016a220c2008280200360200200041a0016a22082005290300370300200041a8016a22052006290300370300200041b0016a2206200429030037030020002000290388033702cc01200020002903e80237039801200041f1006a2204200d4127100f1a200020013a00104101210d200a410172200b41df00100f1a20004198056a200c28020036020020004180046a200829030037030020004188046a200529030037030020004190046a2006290300370300200020002902cc013703900520002000290398013703f803200220044127100f1a2009200041b7036a2900003703002007200041af036a290000370300200041f0056a200041a7036a29000022173703002000200029009f0322163703e805027f02402000027f41012016201620177c2217560d001a4101201720002903f8057c22162017540d001a41132103410120162018560d001a200041d9016a102f200041013a00d801230041f0006b22012400200b2d00000440200141ce006a200b290001370100200141e6006a200b41196a2203290000370100200141de006a200b41116a2202290000370100200141d6006a200b41096a2205290000370100200141206a2003290000370000200141186a2002290000370000200141106a2005290000370000200141013a00072001200b2900013700084100200141076a10b301200141013a004d200141003a002c20014100360228200141286a10ac010b200141f0006a2400230041a0016b2205240020054180016a220a200041106a220241186a220c290000370300200541f8006a220e200241106a2212290000370300200541f0006a2213200241086a221429000037030020052002290000370368200541186a2108200541e8006a2101230041106b22062400200641086a2107230041206b22032400200342808001370218200341e9ba0436021441b09904200341146a220f107c0240024020032802182215200328021c2204490d00200328021421092003410036021c2003201520046b3602182003200420096a3602142001200f108601200328021c220f20032802184b0d00200341086a200920042003280214200f10c001200328020c21042007200328020836020020072004360204200341206a24000c010b000b200628020c21032008200628020836020020082003360204200641106a240020054190016a420037030020054198016a4200370300200a200c290000370300200e201229000037030020132014290000370300200542003703880120052002290000370368200541286a220220014138100f1a20054280808080a0aedcdb827f370360230041406a22032400200320024138100f2203200229033837033841002106230041306b2202240020032903302116200242808001370224200241e9ba043602202003200241206a22071086010240027f0240024002402002280224220820022802282204490d002002280220210a200241003602282002200820046b36022420022004200a6a360220200341206a2007109c012002280224220420022802282208490d00200420086b21042002280220220c20086a210841d09a0421092003280238220e4103714504402002410036022820022004360224200220083602202003413c6a200710ab012002280224220420022802282206490d012002280220220920066a2108200420066b21040b20022004360220200e200a2016200c200920062008200241206a220610022107200420022802202209490d000240200710a401220441ff017122074110472007410247714504402002200936020c200220083602082006200241086a10780240027f200228022041818080807846044020022d00240c010b200241106a200241206a41cba004412a108d0120022802102207418180808078470d0120022d00140b210c41e39f042106418f02210a4101210941808080807821074125210441002108024002400240200c0e020001080b200241206a200241086a10a501200228022041818080807846044020022d002421070c020b200241106a200241206a4188a0044120108d0120022802102207418180808078470d0220022d001421070c010b200241206a2206200241086a108c012002280220418180808078470440200241106a200641a8a0044123108d0120022802102207418180808078470d060b0b200228020c450d0241808080807821074130210441da9b040c060b200228021c21082002280218210420022f0116210920022d0015210a20022d001421060c040b200120043a000420014182808080783602000c050b2001418380808078360200200141086a41013602002001200741ff0171410874200c723602040c040b000b2002280214220641107621092006410876210a200228021c2108200228021821040b200641ff0171200a41ff0171410874200941107472720b21062001200836020c2001200436020820012006360204200120073602000b200241306a2400200341406b2400200541106a2106027f20052802684183808080784704402001107e41f5a0040c010b20054100200541ed006a2d000020052d006c41017122011b3a0027200541e8006a107e41f5a004200541276a20011b0b2107230041106b22032400200341086a2104230041206b22012400200142808001370218200141e9ba0436021441ac9904200141146a2209107c024002402001280218220a200128021c2202490d00200128021421082001410036021c2001200a20026b3602182001200220086a36021420072009102e200128021c220720012802184b0d00200141086a200820022001280214200710c001200128020c21022004200128020836020020042002360204200141206a24000c010b000b200328020c21012006200328020836020020062001360204200341106a2400200541a0016a2400200020193702c402200020103602c002200041e0016a220220004198056a28020036020020002000290390053703d801230041106b22012400200041c0026a2203280200418080808078470440200141086a41a49904200310b2010b200b280200418080808078470440200141a09904200b10b2010b200141106a2400200041e8056a1018200041f0016a200041c8006a290300370300200041e8016a200041406b2903003703002002200041386a290300370300200020002903303703d8012000428080013702c402200041e9ba043602c002419480042003107c20002802c402220520002802c8022201490d0420002802c0022102200041003602c8022000200520016b3602c4022000200120026a3602c002200b200310860120002802c802220320002802c4024b0d04200041086a2002200120002802c002200310c0012018106620181051024020110440200041f1016a20004190046a290300370000200041e9016a20004188046a290300370000200041e1016a20004180046a290300370000200020002903f8033700d901200041013a00d80141d082bdaf01200b106c41ff01714103470d010b200041f1016a200041d0006a220141186a290000370000200041e9016a200141106a290000370000200041e1016a200141086a290000370000200041013a00d801200020012900003700d9014192d4c19d7d200041d8016a106c41ff01714103460d020b4112210341020b3a009c03200020033602980320004198036a0c010b200041033a009c032000411436029803105c4100210d41000b2101200041003602d801200020013602dc01230041106b220124002001200d36020c2001410c6a2802002102230041106b22012400200141808001360208200141e9ba04360204024041eaba04027f200041d8016a220328020045044041e9ba0441003a0000410020032802042203450d011a41eaba0441013a00002001410236020c2003200141046a105e200128020c220341818001490d02000b41e9ba0441013a000041010b3a0000410221032001410236020c0b2002200310c201000b200028021421032000200029021837021820002003360214200020013602102000411c6a10460c090b000b200020002900a904370398032000200041b0046a29000037009f0320002d00a80421010c060b200020002900cd04370398032000200041d4046a29000037009f0320002d00cc0421010c050b200020002900f104370398032000200041f8046a29000037009f0320002d00f00421010c040b20002000290095053703980320002000419c056a29000037009f0320002d00940521010c030b200020002900b905370398032000200041c0056a29000037009f030c020b200020002900c905370398032000200041d0056a29000037009f030c010b200020002900d905370398032000200041e0056a29000037009f030b200041186a200029009f03370000200020013a001020002000290398033700112000411c6a10460b20004101360210200041106a1053000be50401027f230041206b22022400200241106a200110780240024002400240024002402002280210220341818080807846044020022d0014220341037141016b0e03020304010b200020022900153700052000410c6a2002411c6a280000360000200020022d00143a0004200020033602000c050b200341027621010c030b200241096a20033a0000200241013a000820022001360204200241003b010c200241106a200241046a2002410c6a4102107920022802102201418180808078470440200020022901163701062000410e6a2002411e6a2f01003b0100200020022f01143b0104200020013602000c040b20022f010c220141ff014d0440200041fd98043602042000418080808078360200200042223702080c040b200141027621010c020b200241096a20033a0000200241013a0008200220013602042002410036020c200241106a200241046a2002410c6a4104107920022802102201418180808078470440200228021421032000200229021837020820002003360204200020013602000c030b200228020c220141ffff034d0440200041fd98043602042000418080808078360200200042223702080c030b200141027621010c010b200341044f0440200041fd98043602042000418080808078360200200042223702080c020b200241106a2001107a20022802102201418180808078470440200228021421032000200229021837020820002003360204200020013602000c020b2002280214220141ffffffff034b0d00200041fd98043602042000418080808078360200200042223702080c010b2000418180808078360200200020013602040b200241206a24000b6d01017f230041206b22022400200241003a000f200241106a20012002410f6a410110c401024020022802102201418180808078460440200020022d000f3a00040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b4801017f20012d00042104200141003a00042004450440200020012802002002200310c4010f0b2002200141056a2d00003a000020002001280200200241016a200341016b10c4010b6d01017f230041206b220224002002410036020c200241106a20012002410c6a410410c4010240200228021022014181808080784604402000200228020c3602040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b2a01017f230041106b22022400200220002f01003b010e20012002410e6a410210be01200241106a24000b2a01017f230041106b220224002002200028020036020c20012002410c6a410410be01200241106a24000bf00401097f230041306b22022400200242808001370224200241e9ba043602202001200241206a2204107c0240027f02400240024002402002280224220520022802282201490d00200228022021032002200520016b220536022020032001200120036a2201200410002103200520022802202206490d00200310a40141ff01712203410347044020034110470d012002200636020c200220013602082004200241086a10780240027f200228022041818080807846044020022d00240c010b200241106a200241206a41979f04412a108d0120022802102201418180808078470d0120022d00140b210441f29e042105418f022106418080808078210141252103418080808078210a0240024020040e020100070b200241206a200241086a10a901024020022802204181808080784604402002411c6a2002412c6a280200360200200220022902243702140c010b200241106a200241206a41c19f044122108d0120022802102204418180808078470d050b2002280214220341ff01712104200341807e71210a2002411c6a2802002108200241186a28020021090b200228020c450d044130210341da9b040c060b20022f0015200241176a2d0000411074722106200228021c21072002280218210320022d001421050c040b2000428380808098808080807f3702000c050b000b200228021422054108762106200228021c210720022802182103200421010c010b2000410c6a2008360200200041086a200936020020002004200a7236020420004183808080783602000c020b200541ff01712006410874720b21042000200736020c2000200336020820002004360204200020013602000b200241306a24000b1600200028020041838080807847044020001081010b0b6902017f017e230041206b22012400200141086a41a899041080012000027e200129030842017d220242015804402002a7410147044020012903102102200141186a2903000c020b200141106a1081010b4200210242000b37030820002002370300200141206a24000b9a0202047f017e230041206b22022400200242808001370204200241e9ba0436020020012002107c024002402002280204220420022802082201490d00200228020021032002200420016b220436020020032001200120036a2201200210002103200420022802002205490d00200310a40141ff01712203410347044020034110470d012002200536021c200220013602182002200241186a109001200228020045044020022903082106200041106a200241106a29030037030020002006370308200042013703000c030b200241086a290300210620022802042101200041146a200241106a3502003e02002000410c6a200637020020002001360208200042023703000c020b200042003703000c010b000b200241206a24000b190020002802004181808080784904402000410c6a10a3010b0b810201077f230041106b220224002002200036020c200241b89904360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041e9ba04360214200241086a200041146a22071097010240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a36021420012007109c01200028021c220120002802184b0d00200041086a200620042000280214200110c001200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000b810201077f230041106b220224002002200036020c200241bc9904360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041e9ba04360214200241086a200041146a22071093010240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a36021420012007109c01200028021c220120002802184b0d00200041086a200620042000280214200110c001200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000bd60101057f230041106b220124002001200036020c200141c09904360208230041106b22032400200341086a2104230041206b22002400200042808001370218200041e9ba04360214200141086a200041146a109901200028021c220220002802184b0440000b200041086a2205200028021420021006220236020420052002417f47360200200028020c21022004200028020836020020042002360204200041206a2400200328020c21002001200328020836020020012000360204200341106a240020012802002100200141106a240020004100470bc80101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100e200341202001412010e3010c010b200320022001200210e3010b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0b0020012000412010be010bac0101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206108601200228020c220120022802084b0d002006200228020420011085012002410036022c20022004360228200220053602242006200241246a1086012003200228022c6a22012003490d0020002001360208200241306a24000f0b000bac0101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206108901200228020c220120022802084b0d002006200228020420011085012002410036022c20022004360228200220053602242006200241246a1086012003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0b0020002802002001107c0b7301037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a108b0120012001200228020c6a22014b0d0020002001360208200241106a24000f0b000ba20101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d04402001200241027410bf010c010b200241ffff004d0440200020024102744101723b010a2000410a6a2001107b0c010b200241ffffffff034d04402000200241027441027236020c2000410c6a2001107c0c010b2001410310bf0120042001107c0b200041106a2400200341106a24000bc00101017f230041206b22022400200241106a2001107802400240027f200228021041818080807846044020022d00140c010b2002200241106a41839b044139108d0120022802002201418180808078470d0120022d00040b41ff0171410146044020004281808080183702000c020b200041d09a043602042000418080808078360200200042333702080c010b200020022900053700052000410c6a2002410c6a280000360000200020022d00043a0004200020013602000b200241206a24000b6601027f230041106b22042400200441086a41044110109d0120042802082205450440000b20052001290200370200200541086a200141086a2902003702002000200536020c20002003360208200020023602042000418080808078360200200441106a24000b0f0020002001411e41bc9b0410e6010b7601017f230041106b2203240020024200370000200241186a4200370000200241106a4200370000200241086a4200370000200320012002412010c40120032802002201418180808078470440200020032902043702042000410c6a2003410c6a2802003602000b20002001360200200341106a24000bb40102017f017e230041206b22022400200241086a20011091012000027f2002280208450440200128020404402000418080808078360204200041086a41da9b043602002000410c6a423037020041010c020b200241186a290300210320002002290310370308200041106a200337030041000c010b200241106a2903002103200228020c2101200041106a200241186a3502003e0200200041086a20033703002000200136020441010b360200200241206a24000b8a0101017f230041206b220224002002420037030820024200370300200241106a20012002411010c4012000027f2002280210220141818080807846044020002002290300370308200041106a200229030837030041000c010b200041086a2002290214370200200041106a2002411c6a2802003602002000200136020441010b360200200241206a24000b8d0101027f230041106b2202240020022001107a02402002280200220341818080807846044020012802040440200041da9b043602042000418080808078360200200042303702080c020b200228020421012000418180808078360200200020013602040c010b200228020421012000200229020837020820002001360204200020033602000b200241106a24000b1f0020002001108901200028020422002001108601200041206a20011086010b130020002001109501200041086a20011095010b2a01017f230041106b22022400200220002903003703082001200241086a410810be01200241106a24000b120020002001108901200041046a2001107c0b130020002001108901200041046a20011098010b0c00200028020020011086010b210020002001108901200041046a28020022002001107c200041046a2001109a010b240020002d00004504402001410010bf010f0b2001410110bf01200041016a20011086010b3001017f230041106b220324002003200236020c2003410c6a2001108b012000418180808078360200200341106a24000b3401017f230041106b22022400200220002903003703002002200041086a29030037030820012002411010be01200241106a24000b3a01017f230041106b22032400200341086a20012002410010a701200328020c21012000200328020836020020002001360204200341106a24000b3400200128021420002802002d0000410274220041a0a3046a280200200041e0a2046a280200200141186a28020028020c1102000b0c002000280200200110a0010b4201017f230041106b220224002002200036020c200141c49c0441c99c042000410c6a41d09c0441e09c042002410c6a41e49c0410df012100200241106a240020000b0f002000280200280200200110a0010b3a0020002802002200280200418080808078460440200041046a22002802002000280204200110e1010f0b20002802042000280208200110e1010b14002000280200220004402000410c6a10a3010b0b1d01017f410f21012000410e4d047f200041e0a3046a2d000005410f0b0b5b01017f230041106b220224002002200110780240200228020022014181808080784604400c010b200020022900053700052000410c6a2002410c6a2800003600000b200020022d00043a000420002001360200200241106a24000b6d01017f230041206b2202240020024200370308200241106a2001200241086a410810c401024020022802102201418180808078460440200020022903083703080c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b2c0020020440200345044041e8ba042d00001a0b2001200210d50121010b20002002360204200020013602000b15002000200141b49c0441ae9c0441aa9c0410e7010b870702097f027e230041106b220524002005200110aa0102402005280200220141818080807846044020052802042101200541086a28020021032005027f02402005410c6a2802002206450d00200641076b22024100200220064d1b2109200341036a417c7120036b210a41002102034002400240024002400240024002400240027e0240024002400240200220036a2d000022044118744118752208410048044042808080808020210b428080808010210c2004418ba7046a2d000041026b0e030601020a0b200a20026b4103710d0a200220094f0d0b0340200220036a220441046a280200200428020072418081828478710d0c200241086a22022009490d000b0c0b0b4200210b200241016a220720064f0d05200320076a2c00002107024002400240200441e001470440200441ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520074140480d030c050b200741607141a07f460d020c040b2007419f7f4a0d030c010b200741404e0d020b4200210c200241026a220420064f0d08200320046a2c000041bf7f4c0d070c020b4200210b200241016a220720064f0d04200320076a2c000021070240024002400240200441f0016b0e050100000002000b2008410f6a41ff017141024b200741404e720d030c020b200741f0006a41ff017141304f0d020c010b2007418f7f4a0d010b200241026a220420064f0d04200320046a2c000041bf7f4a0d014200210c200241036a220420064f0d07200320046a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210b428080808010210c0c040b200241016a22042006490d014200210b0b4200210c0c020b200320046a2c000041bf7f4a0d010b200441016a21020c030b2005200b2002ad84200c8437020441010c050b200241016a21020c010b200220064f0d000340200220036a2c00004100480d012006200241016a2202470d000b0c020b20022006490d000b0b20052003360204200541086a200636020041000b36020002402005280200047e2001418080808078470d0120032101200621032005290204052006ad0b210b20004181808080783602002000410c6a200b3e020020002001ad2003ad422086843702040c020b200041f49c043602042000418080808078360200200042153702080c010b2005290204210b2000200528020c36020c2000200b370204200020013602000b200541106a24000be00202077f017e230041106b220524002005200110770240200528020041818080807846044020052802042106230041206b22042400200441106a2102230041206b220324000240200620012802044b04402002418a9c043602042002418080808078360200200242203702080c010b200341086a2006410110cb0120032802082107200341106a2001200328020c2201200610c401200328021022084181808080784604402002200736020420024181808080783602002002410c6a2006360200200241086a20013602000c010b200220032902143702042002410c6a2003411c6a280200360200200220083602000b200341206a240020042802102101200441086a2004411c6a28020022023602002004200429021422093703002000410c6a20023602002000200937020420002001360200200441206a24000c010b20002005290200370200200041086a200541086a2902003702000b200541106a24000b0b0020012000410410be010bdf0202077f017e230041d0006b22072400200741086a2203200041c800100f1a230041206b22012400200142808001370218200141e9ba04360214230041306b220224002002200336020c200141146a22004104108a01200241286a2204200041086a28020036020020022000290200370320200241206a220641f7a004108701200241186a2200200428020036020020022002290320370310200241106a22052002410c6a108801200420002802003602002002200229031037032020052006200341056a410020032d00041b10ae0120062005200341266a410020032d00251b10ae012001200610af01200241306a2400200141106a2802002104200128020c210520012902002108200141003602082001200837020020032001107c200341046a2001109a01200341256a2001109a012001280208220020012802044b0440000b20052004200128020020001003200141206a2400200741d0006a24000bdd0101067f230041106b22042400200441086a2105230041206b22032400200342808001370218200341e9ba043602142001200341146a2207107c0240024020032802182208200328021c2201490d00200328021421062003410036021c2003200820016b3602182003200120066a36021420022007109c01200328021c220220032802184b0d00200341086a200620012003280214200210c001200328020c21012005200328020836020020052001360204200341206a24000c010b000b200428020c21012000200428020836020020002001360204200441106a24000bdc0101057f024020020440200120021087010c010b230041306b22022400024002402001280204220320012802082204490d00200128020021052002410036020c2002200320046b22063602082002200420056a220536020441899d04200241046a2203102e200228020c220720022802084b0d002003200228020420071085012002410036022c20022006360228200220053602242003200241246a10860120042004200228022c6a22034b0d0020012003360208200241306a24000c010b000b0b20002001290200370200200041086a200141086a2802003602000bdd0102057f017e230041106b22022400200241086a200141086a28020036020020022001290200370300230041106b22052400230041106b2203240020022802082104200241003602082004200228020422014b0440000b2002200120046b36020420022002280200220620046a360200200341086a2201200436020420012006360200200328020c2106200541086a2201200328020836020020012006360204200341106a240020052903082107200020022902003702002000200737020c200041086a200241086a280200360200200541106a2400200241106a24000b7602057f017e230041106b22002400200042003703002000410836020c20002000360208230041106b220124002001200041086a2202280204220336020c20022802002001410c6a100c2003200128020c2204490440000b20022004360204200141106a240020002903002105200041106a240020050b260020002802004180808080784604402001410010bf010f0b2001410110bf012000200110480bdd0101067f230041106b22042400200441086a2105230041206b22032400200342808001370218200341e9ba043602142001200341146a2207107c0240024020032802182208200328021c2201490d00200328021421062003410036021c2003200820016b3602182003200120066a3602142002200710b101200328021c220220032802184b0d00200341086a200620012003280214200210c001200328020c21012005200328020836020020052001360204200341206a24000c010b000b200428020c21012000200428020836020020002001360204200441106a24000bde0101047f230041406a2202240020022000360210200241146a20014121100f1a200241c099043602382002200241106a36023c200241086a2105230041106b22012400230041206b22002400200042808001370218200041e9ba04360214200241386a200041146a109901200028021c220320002802184b0440000b200041086a200028021422042003200320046a410010c001200028020c2103200141086a2204200028020836020020042003360204200041206a2400200128020c21002005200128020836020020052000360204200141106a2400200241406b24000b5101017f230041306b22022400200220003602082002410c6a20014121100f1a41012101200241086a108401450440200241003a000c20022000360208200241086a10840121010b200241306a240020010b51000240024002400240200141ff017141016b0e020102000b200041046a4197a104410c10ce010c020b200041046a41a3a104410b10ce010c010b200041046a41aea104410c10ce010b200041003602000bf40202047f027e230041206b220124002001200236021c200141b89904360218230041206b22022400200242808001370204200241e9ba04360200200141186a2002109701024002402002280204220520022802082203490d00200228020021042002200520036b220536020020042003200320046a2203200210002104200520022802002206490d00200410a40141ff01712204410347044020044110470d012002200636021c200220033602182002200241186a109001200228020045044020022903082107200141106a200241106a29030037030020012007370308200142013703000c030b200241086a290300210720022802042103200141146a200241106a3502003e02002001410c6a200737020020012003360208200142023703000c020b200142003703000c010b000b200241206a2400200129030022074202510440000b2001290308210820004200200141106a29030020075022021b37030820004200200820021b370300200141206a24000bf30302057f027e230041e0006b22032400200341186a200141186a290000370300200341106a200141106a290000370300200341086a200141086a290000370300200341286a200241086a290000370300200341306a200241106a290000370300200341386a200241186a2900003703002003200129000037030020032002290000370320200341bc99043602582003200336025c200341406b2102230041206b22012400200142808001370204200141e9ba04360200200341d8006a2001109301024002402001280204220620012802082204490d00200128020021052001200620046b220636020020052004200420056a2204200110002105200620012802002207490d00200510a40141ff01712205410347044020054110470d012001200736021c200120043602182001200141186a109001200128020045044020012903082108200241106a200141106a29030037030020022008370308200242013703000c030b200141086a290300210820012802042104200241146a200141106a3502003e02002002410c6a200837020020022004360208200242023703000c020b200242003703000c010b000b200141206a2400200329034022084202510440000b2003290348210920004200200341d0006a29030020085022011b37030820004200200920011b370300200341e0006a24000bdc06020b7f017e230041306b220624002006410f6a2109230041306b220524002005410c6a2102230041a0016b2201240020014280800137028001200141e9ba0436027c41b09904200141fc006a2207107c0240024020012802800122082001280284012203490d00200128027c21042001200820036b220836027c20042003200320046a22032007100021042008200128027c220a490d00200410a40141ff01712204410347044020044110470d012001200a36021c200120033602182007200141186a108e01027f20012d007c4504402001413d6a20014185016a290000370000200141c5006a2001418d016a290000370000200141cd006a220320014195016a2900003700002001200129007d220c370035200141326a220720012d00373a00002001200c3d0130200141386a28020021042001413c6a2802002108200141406b280200210a200141c4006a280200210b200120032900003700252001200141c8006a290200370320200128021c04404130210341da9b042107418080808078210441000c020b200241026a20012f01303b0000200241046a20072d00003a0000200120012903203703082001200129002537000d2002411a6a200129000d370000200241156a2001290308370000200241116a200b3600002002410d6a200a360000200241096a2008360000200241056a200436000020024180023b01000c040b200141dc006a220320014180016a41eba104413a108d01200141013a0058200141386a200341a5a2044139108d012001413c6a2802002107200141406b280200210320012802382104200141c4006a2802000b210820022004360204200241013a0000200241106a20083602002002410c6a2003360200200241086a20073602000c020b200241003b01000c010b000b200141a0016a24000240024020052d000c22010d0020052d000d450d002009200529010e370001200941013a0000200941196a200541266a290100370000200941116a2005411e6a290100370000200941096a200541166a2901003700000c010b200941003a00002001450d00200541106a1081010b200541306a240020062d000f450440000b20002006290010370000200041186a200641286a290000370000200041106a200641206a290000370000200041086a200641186a290000370000200641306a24000b4401017f230041206b22012400200141186a4200370300200141106a4200370300200141086a4200370300200142003703002000200110bb012100200141206a240020000ba80502067f047e230041d0016b220824002000027f2005200684500440200041023a000141010c010b20012002845020032004845072044020004200370308200041106a420037030041000c010b200841386a20034200200142001014200841186a20034200200242001014200841086a20044200200242001014200841286a2004420020014200101420084188016a2209420037030020084200370380012008200637037820082005370370200841406b290300210120082903182103200841206a29030021042008290308210e200841106a290300210f20082903282110200841306a29030021112008290338210202400240200841f0006a220a41f0a30410bb010d00200841a8016a220b200f20042001200120037c220156ad7c2204200e7c2203200454ad7c2003200320112001200120107c220156ad7c7c220356ad7c220f370300200820033703a00120082002370390012008200137039801200841c8016a220c2009290300370300200841c0016a20084180016a290300370300200841b8016a200841f8006a290300370300200820082903703703b001200a10b9010d00200841d0006a20084190016a220d200841b0016a2209410010bc01200841e0006a290300200841e8006a290300844200520d01200841d8006a29030021042008290350210e02402007450440200b200f370300200820033703a00120082001370398012008200237039001200c4200370300200842003703c001200820063703b801200820053703b001200910b9010d02200841c8006a200d2009200a10bc01200841f0006a10b901450d010b2000200e370308200041106a200437030041000c030b200e42017c22012004200150ad7c220284500d0120002001370308200041106a200237030041000c020b000b200041013a000141010b3a0000200841d0016a24000b0b002000200141201012450bde1f02047f167e230041c0076b22042400024002400240024002402002290310220d2001290310221184200241186a290300220e200141186a29030022108484500440200241086a290300210d2002290300210c2003450d02200c200d844200520d010c050b0240027e024002400240417f200d201185200e20108584420052200d201154200e201054200e2010511b1b2205047f200505200229030022082001290300220954200241086a290300220a200141086a290300220c54200a200c511b0d012008200985200a200c85844200520b4101460d010b200d200e8450450d0320112002290300220e542010200241086a29030022095420092010511b450d01200141086a290300210f20012903002112200979200e7942407d20094200521ba722010440200441e0016a200e200920011013200441d0016a2011201020011013200441c0016a2012200f410020016b41ff00711015200441b0016a2012200f20011013200441c8016a290300200441d8016a29030084211020042903c00120042903d001842111200441b8016a290300210f20042903b001211220042903e001210e200441e8016a29030021090b2009500d08200441a0016a2011201020094200101720044190016a20042903a001220a200441a8016a290300220b200942001014201020044198016a2903007d2011200429039001220c54ad7d210d2011200c7d210820044188016a2102034002400240200b4200520d0020044180016a200a200b200e42001014200429038001200f582002290300220c2008582008200c511b450d00200a210c0c010b200b200a50ad7d210b200a42017d220c210a200d2008200820097c220856ad7c220d500d010b0b200441f0006a200c200b200e20091014200441e0006a200f2004290370220a7d22102011200441f8006a2903007d200a200f56ad7d220d200942001017200441d0006a2004290360220a200441e8006a2903002208200942001014200d200441d8006a2903007d20102004290350220d54ad7d210f2010200d7d210b200441c8006a210203400240024020084200520d00200441406b200a2008200e4200101420042903402012582002290300220d200b58200b200d511b450d00200a210d0c010b2008200a50ad7d2108200a42017d220d210a200f200b2009200b7c220b56ad7c220f500d010b0b200441306a200d2008200e20091014200441206a20122004290330220a7d2010200441386a2903007d200a201256ad7d20011015200441286a29030021094200211220042903200c020b2003044020032001290300370300200341186a200141186a290300370300200341106a200141106a290300370300200341086a200141086a2903003703000b20004200370300200041186a4200370300200041106a4200370300200041086a42003703000c060b2009200e84500d06200441d0036a20112010200e20091017200441c0036a20042903d0032212200441d8036a2903002215200e200910142010200441c8036a2903007d201120042903c003220a54ad7d21082011200a7d2111200141086a290300210f20012903002110200979200e7942407d20094200521ba722010440200441b0036a200e200920011013200441a0036a201120082001101320044190036a2010200f410020016b41ff0071101520044180036a2010200f2001101320042903900320042903a00384211120044188036a290300210f200441b8036a2903002109200429038003211020042903b003210e20044198036a290300200441a8036a2903008421080b2009500d06200441f0026a20112008200942001017200441e0026a20042903f002220a200441f8026a290300220b2009420010142008200441e8026a2903007d201120042903e002220c54ad7d210d2011200c7d2108200441d8026a2102034002400240200b4200520d00200441d0026a200a200b200e4200101420042903d002200f582002290300220c2008582008200c511b450d00200a210c0c010b200b200a50ad7d210b200a42017d220c210a200d2008200820097c220856ad7c220d500d010b0b200441c0026a200c200b200e20091014200441b0026a200f20042903c002220a7d22142011200441c8026a2903007d200a200f56ad7d220d200942001017200441a0026a20042903b002220a200441b8026a2903002208200942001014200d200441a8026a2903007d201420042903a002220d54ad7d210f2014200d7d210b20044198026a210203400240024020084200520d0020044190026a200a2008200e420010142004290390022010582002290300220d200b58200b200d511b450d00200a210d0c010b2008200a50ad7d2108200a42017d220d210a200f200b2009200b7c220b56ad7c220f500d010b0b20044180026a200d2008200e20091014200441f0016a2010200429038002220a7d201420044188026a2903007d200a201056ad7d20011015200441f8016a290300210920042903f0010b210a20030440200342003703102003200a370300200341186a4200370300200320093703080b200020123703102000200d370300200041186a201537030020002008200c7c3703080c040b027e200e79200d7942407d200e4200521ba72205450440200141086a2903002108200241086a2903002115200129030021092002290300211b42000c010b200441b0076a200d200e20051013200441a0076a2002290300220a200241086a290300220d41800120056b2202101520044190076a200a200d20051013200441f0066a201120102002101520044180076a20012903002209200141086a290300220820021015200441e0066a201120102005101320044188076a290300200441e8066a29030084211020042903800720042903e006842111200441a8076a290300200441b8076a29030084210e20042903a00720042903b00784210d20044198076a290300211520042903f0062112200429039007211b200441f8066a2903000b2119200441d0066a2009200820051013200441d8066a290300211a427f210c20042903d006211c427f210a027e0240200d201258200e201958200e2019511b0d0020112114201021172012210f20192108200d2116200e220c79200d7942407d200c4200521ba722010440200441c0066a200d200c20011013200441b0066a200f200820011013200441a0066a20112010410020016b41ff0071101520044190066a201120102001101320042903a00620042903b00684210f20044198066a2903002117200429039006211420042903c0062116200441a8066a290300200441b8066a290300842108200441c8066a290300210c0b200c500d0620044180066a200f2008200c42001017200441f0056a200429038006220b20044188066a2903002209200c420010142008200441f8056a2903007d200f20042903f005220854ad7d210a200f20087d2108200441e8056a210203400240024020094200520d00200441e0056a200b200920164200101420042903e0052017582002290300221320085820082013511b450d00200b21130c010b2009200b50ad7d2109200b42017d2213210b200a20082008200c7c220856ad7c220a500d010b0b200441d0056a201320092016200c1014200441c0056a201720042903d005220a7d2218200f200441d8056a2903007d200a201756ad7d2208200c42001017200441b0056a20042903c005220a200441c8056a290300220b200c420010142008200441b8056a2903007d201820042903b005220854ad7d210f201820087d2108200441a8056a2102034002400240200b4200520d00200441a0056a200a200b20164200101420042903a0052014582002290300220920085820082009511b450d00200a21090c010b200b200a50ad7d210b200a42017d2209210a200f20082008200c7c220856ad7c220f500d010b0b20044190056a2009200b2016200c101420044180056a2014200429039005220a7d201820044198056a2903007d200a201456ad7d20011015200b20137c210a20044188056a2903002108200429038005210b200441f8046a2101024003400240200441e0046a2009200a201b201510bd0120042903f004220f200b562001290300220c2008562008200c511b450440200b200f852008200c85844200520d0120042903e004201c58200441e8046a290300220c201a58200c201a511b0d010b200b200b200d7c220b562202ad2008200e7c7c220c20085121062008200c562107200a200950ad7d210a200c2108200942017d220c21092002200720061b450d010c020b0b2009210c0b200a200c8450450d004200210c4200210a420021144200210842002109420021134200210b42000c010b200441c0046a201b2015200c200a10bd01200441c8046a290300210820042903c0042114200441a0046a200d200e200c200a10bd01200441b8046a29030020042903b004220f20042903d004220b20042903a0047c2209200b5422012001ad200441d8046a290300220b200441a8046a2903007c7c2213200b54200b2013511bad7c220b200f54ad7c0b211d2019201d200b20092014201c5622012008201a562008201a511bad7c22162009542202201320132002ad7c22135620092016581b20112016542202201020135420102013511b72ad7c2217200b542206ad7c22187d20122017542207ad7d210f201220177d2112201020137d2002ad7d2110201120167d2113201a20087d2001ad7d2111201c20147d2109027e20062018201d54200b2017581b2007201820195620182019511b72450440201221152013210d201021082009210b20112109200c0c010b200f2012200d2009201b7c220b20095422012001ad201120157c7c220920115420092011511bad7c2208200d542201200e200e2001ad7c220e562008200d5a1b200820137c220d20135422012001ad200e20107c7c220820105420082010511b72ad7c2215201254ad7c210f200a200c50ad7d210a200c42017d0b211120044190046a200b20092005101520044180046a200d20082005101520044188046a290300210920044198046a290300210b200429038004210e200429039004210c20050440200441f0036a200d2008410020056b41ff007122011013200441e0036a2015200f200110132009200441e8036a290300842109200e20042903e00384210e200b200441f8036a29030084210b200c20042903f00384210c0b200304402003200e3703102003200c370300200341186a20093703002003200b3703080b2000420037031020002011370300200041186a42003703002000200a3703080c030b2001290300210a200141086a290300220b2108230041206b220124002001200a2008200c200d101620012903102108200441106a2202200141186a29030037030820022008370300200141206a240020034200370310200341186a42003703002003200441186a290300370308200320042903103703000c010b200c200d84500d02200141086a290300210b2001290300210a0b2004200a200b200c200d101720004200370310200041186a42003703002000200441086a290300370308200020042903003703000b200441c0076a24000f0b000bc40101017f230041406a22052400200541306a20034200200142001014200541106a20034200200242001014200541206a20044200200142001014200520044200200242001014200020052903303703002000200541386a290300220220052903107c220120052903207c22033703082000200541186a2903002001200254ad7c220420052903007c2202200541286a2903002001200356ad7c7c2201370310200041186a2001200254ad200541086a2903002002200454ad7c7c370300200541406b24000b3f01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b2001200210e301200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041004220136020420002001417f473602000b19002000200120021005220136020420002001417f473602000b0d00200041e9ba0420011007000b0e0020012000200041206a10d3010b5b01017f2000027f2003200128020422044d04402002200320012802002202200310e3012001200420036b3602042001200220036a3602004181808080780c010b2000421e37020820004190a6043602044180808080780b3602000b2901017f230041106b22022400200220013a000f20002002410f6a200241106a220010d301200024000beb0101047f230041106b220424002004200236020c230041106b2205240020052004410c6a36020c230041106b2202240002402005410c6a28020022062802002203413f4d04402001200341027410c5010c010b200341ffff004d0440200220034102744101723b010a230041106b2203240020032002410a6a2f01003b010e20012003410e6a200341106a220110d301200124000c010b200341ffffffff034d04402002200341027441027236020c2002410c6a200110c8010c010b2001410310c5012006200110c8010b200241106a2400200541106a24002000418180808078360200200441106a24000b3601017f230041106b2203240020032002200110c6012003280200418180808078470440000b20022000200110d101200341106a24000b2c01017f230041106b220224002002200028020036020c20012002410c6a200241106a220010d301200024000b0d00200041b0a604200110dd010b3801017f230041106b22022400200241086a2001410010cb01200228020c21012000200228020836020020002001360204200241106a24000b7101027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001109d0120032802080c010b200320042001410110a70120032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000bce0101027f230041206b22042400027f4100200220036a22032002490d001a4108200128020022024101742205200320032005491b2203200341084d1b2203417f73411f76210502402002450440200441003602180c010b2004200236021c20044101360218200420012802043602140b200441086a20052003200441146a10cd012004280208450440200428020c210220012003360200200120023602044181808080780c010b200441106a2802002103200428020c0b21052000200336020420002005360200200441206a24000bef0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a20012002410010a70120042802082103200428020c0c020b200328020021032001200210d501220604402006200320052002200220054b1b100f1a0b2006210320020c010b200420012002109d012004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b4701027f230041106b22032400200341086a200210ca0120032802082104200328020c20012002100f2101200020023602082000200136020420002004360200200341106a24000b110020002001280204200128020810ce010b0d0020002001200210d10141000b0e0020002001200120026a10d3010bbf0201037f230041106b22022400024020002002410c6a027f0240024020014180014f04402002410036020c2001418010490d012001418080044f0d0220022001413f71418001723a000e20022001410c7641e001723a000c20022001410676413f71418001723a000d41030c030b200028020822032000280200460440230041106b22042400200441086a20002003410110cc012004280208418180808078470440000b200441106a2400200028020821030b2000200341016a360208200028020420036a20013a00000c030b20022001413f71418001723a000d2002200141067641c001723a000c41020c010b20022001413f71418001723a000f20022001410676413f71418001723a000e20022001410c76413f71418001723a000d2002200141127641077141f001723a000c41040b10d1010b200241106a240041000b2e01017f2000200220016b220210d4012000280208220320002802046a20012002100f1a2000200220036a3602080b4501027f20012000280200200028020822036b4b0440230041106b22022400200241086a20002003200110cc012002280208418180808078470440000b200241106a24000b0bf00101047f230041106b2203240041ecba052802004504403f00210241f0ba054180bb0536020041ecba05410136020041f4ba0520024110743602000b200341086a21040240200041f0ba052802006a41016b410020006b71220020016a22022000490d0041f4ba052802002002490440200141ffff036a22022001490d01200241107640002200417f460d012000411074220020024180807c716a22022000490d0141f4ba052002360200200020016a22022000490d010b41f0ba052002360200410121050b200420003602042004200536020020032802082100200328020c2101200341106a24002001410020001b0b0e0020002802001a03400c000b000b2601027f20002802042203200128020446047f20002802002001280200200310120541010b450bca0601127f230041d0006b22032400200341003b0138200320023602342003410036023020034281808080a00137022820032002360224200341003602202003200236021c200320013602182003410a3602142000280204210f2000280200210c2000280208210d2003412c6a210e027f0340024002400240024020032d00390d002003280218210a027f024020032802242207200328021c22104b0d002003280220220220074b0d0020032802282208200e6a41016b211103402002200a6a210020112d00002109027f200720026b220141084f044041002104230041106b22052400200341086a2212027f02402000200041036a417c712206470440200541086a20092000200620006b22042001200120044b1b220410d9014101210620052802084101460d010b02402004200141086b22134b0d00200941818284086c21060340200020046a220b41046a2802002006732214417f73201441818284086b71200b280200200673220b417f73200b41818284086b7172418081828478710d01200441086a220420134d0d000b0b20052009200020046a200120046b10d90120052802004101462106200528020420046a0c010b200528020c0b36020420122006360200200541106a240020032802082100200328020c0c010b200320092000200110d9012003280200210020032802040b210102400240200041014604402003200120026a41016a220236022020022008490d02200220104d0d010c020b200320073602200c030b200320083602442003200a200220086b6a3602402003200836024c2003200e360248200341406b200341c8006a10d701450d002003280230210020032002360230200220006b0c030b200220074d0d000b0b200341013a0039024020032d0038044020032802342102200328023021000c010b2003280234220220032802302200460d020b200220006b0b2101200f28020c2102200d2d00000d010c020b41000c040b200c41f4a604410420021102000d010b2000200a6a21002003410a36023c2003410136024420032003413c6a360240200d2001047f2003410136024c2003200020016a41016b360248200341406b200341c8006a10d7010541000b3a0000200c200020012002110200450d010b0b41010b2100200341d0006a240020000b5701027f024002402003450440410021030c010b200141ff017121054101210103402005200220046a2d0000460440200421030c030b2003200441016a2204470d000b0b410021010b20002003360204200020013602000b4e01027f20002802042102200028020021030240200028020822002d0000450d00200341f4a6044104200228020c110200450d0041010f0b20002001410a463a00002003200120022802101101000b820302057f017e230041406a2205240041012107024020002d00040d0020002d000521092000280200220628021c2208410471450440200628021441fba60441f8a60420091b4102410320091b200641186a28020028020c1102000d01200628021420012002200628021828020c1102000d01200628021441fda6044102200628021828020c1102000d0120032006200428020c11010021070c010b2009450440200628021441ffa6044103200641186a28020028020c1102000d01200628021c21080b200541013a001b200541346a41dca6043602002005200629021437020c20052005411b6a360214200520062902083702242006290200210a200520083602382005200628021036022c200520062d00203a003c2005200a37021c20052005410c6a220836023020082001200210d8010d00200841fda604410210d8010d0020032005411c6a200428020c1101000d0020052802304182a7044102200528023428020c11020021070b200041013a0005200020073a0004200541406b240020000b0d00200041dca604200110dd010ba90401087f230041406a22032400200341346a2001360200200341033a003c2003412036022c2003410036023820032000360230200341003602242003410036021c027f02400240200228021022014504402002410c6a28020022004103742106200041ffffffff017121072002280204210a20022802002109200228020821024100210141002100034020012006460d02200120096a220441046a28020022050440200328023020042802002005200328023428020c1102000d040b200041016a2100200141086a21012002280200210420022802042105200241086a210220042003411c6a2005110100450d000b0c020b200241146a28020022074105742100200741ffffff3f7121072002410c6a2802002105200228020821062002280204210a20022802002209210203402000450d01200241046a28020022080440200328023020022802002008200328023428020c1102000d030b2003200128021036022c200320012d001c3a003c20032001280218360238200341106a2006200141086a10de012003200329031037021c200341086a2006200110de0120032003290308370224200441016a2104200241086a2102200041206b210020012802142108200141206a2101200620084103746a22082802002003411c6a2008280204110100450d000b0c010b2007200a4904402003280230200920074103746a22002802002000280204200328023428020c1102000d010b41000c010b41010b2101200341406b240020010b5501027f0240027f02400240200228020041016b0e020103000b200241046a0c010b200120022802044103746a22012802044116470d0120012802000b2802002104410121030b20002004360204200020033602000bc90101017f230041106b22082400200028021420014105200041186a28020028020c1102002101200841003a000d200820013a000c20082000360208027f200841086a200241052003200410db01200541042006200710db0122002d0004220141004720002d0005450d001a2000027f410120010d001a200028020022002d001c41047145044020002802144185a7044102200028021828020c1102000c010b20002802144184a7044101200028021828020c1102000b22003a000420000b2100200841106a240020000b8d0402037f017e230041106b220524002005200028021420012002200041186a28020028020c1102003a000c2005200036020820052002453a000d20054100360204027f230041406a22002400200541046a220228020021062002027f410120022d00080d001a2002280204220128021c22074104714504404101200128021441fba6044187a70420061b4102410120061b200141186a28020028020c1102000d011a20032001200428020c1101000c010b2006450440410120012802144188a7044102200141186a28020028020c1102000d011a200128021c21070b200041013a001b200041346a41dca6043602002000200129021437020c20002000411b6a3602142000200129020837022420012902002108200020073602382000200128021036022c200020012d00203a003c2000200837021c20002000410c6a360230410120032000411c6a200428020c1101000d001a20002802304182a7044102200028023428020c1102000b3a00082002200641016a360200200041406b240020022d0008220041004720022802002201450d001a2002027f410120000d001a20022802042100024020014101470d0020022d0009450d0020002d001c4104710d0041012000280214418aa7044101200041186a28020028020c1102000d011a0b200028021441c8a6044101200041186a28020028020c1102000b22003a000820000b2100200541106a240020000bfa0d010e7f230041d0006b220624004101210d02402002280214220c4122200241186a280200220e280210220f1101000d004100210220064100360230200620003602282006200020016a36022c200641206a200641286a10e20120062802242204418080c4004704402006280220210a0340200641346a210541002103024002400240024002400240024002400240200441096b0e050103070702000b2004450d0420044122460d0520044127460d06200441dc00460d030c060b20054180043b010a20054200370102200541dce8013b01000c060b20054180043b010a20054200370102200541dce4013b01000c050b20054180043b010a20054200370102200541dcdc013b01000c040b20054180043b010a20054200370102200541dcb8013b01000c030b20054180043b010a20054200370102200541dce0003b01000c020b20054180043b010a20054200370102200541dcc4003b01000c010b0240027f2004410b74210b412121094121210803400240200941017620036a2207410274418cb4046a280200410b742209200b4622100440200721030c010b200720082009200b4b1b2208200741016a20032009200b491b22036b210920032008490d010b0b0240200320106a220741204b0d0020074102742209418cb4046a280200411576210341d7052108027f024020074120460d0020094190b4046a280200411576210820070d0041000c010b20094188b4046a28020041ffffff00710b2109200841016b2107024020082003417f736a450d00200420096b210b41d7052003200341d7054f1b41d7056b21084100210903402008450d02200b200920034190b5046a2d00006a2209490440200321070c020b200841016a21082007200341016a2203470d000b0b20074101710c010b000b450440027f024020044120490d0002400240027f4101200441ff00490d001a200441808004490d01200441808008490d02200441b0c70c6b41d0ba2b49200441cba60c6b410549722004419ef40b6b41e20b49200441e1d70b6b419f184972722004417e71419ef00a46200441a29d0b6b410e4972200441607141e0cd0a4672720d034100200441baee0a6b4106490d001a2004418080c4006b41f08374490b0c030b200441e9ae04412841b9af04419f0241d8b10441af0210e4010c020b2004418ba904412c41e3a90441c40141a7ab0441c20310e4010c010b41000b0d010b230041106b220341086a41003a0000200341003b0106200341fd003a000f20032004410f7141c9a6046a2d00003a000e20032004410476410f7141c9a6046a2d00003a000d20032004410876410f7141c9a6046a2d00003a000c20032004410c76410f7141c9a6046a2d00003a000b20032004411076410f7141c9a6046a2d00003a000a20032004411476410f7141c9a6046a2d00003a000920044101726741027641026b2207410b4f0440000b200341066a20076a22084187b4042f00003b0000200841026a4189b4042d00003a00002005410a3a000b200520073a000a20052003290106370000200541086a2003410e6a2f01003b00000c010b2005200436020420054180013a00000b024020062d0034418001460d0020062d003f20062d003e6b41ff01714101460d00200641186a2103024002402002200a4b0d0002402002450d00200120024d044020012002460d010c020b200020026a2c00004140480d010b200a450d012001200a4d04402001200a470d010c020b2000200a6a2c000041bf7f4a0d010b000b2003200a20026b3602042003200020026a360200200c2006280218200628021c200e28020c110200450440200641c8006a2006413c6a280200360200200620062902343703400340230041106b220324000240200641406b22022d0000418001470440230041106b220724002002410a6a22082d0000220520082d000122094904402008200541016a3a00000b200741086a220820053a0001200820052009493a000002400240200341086a220520072d00082208047f20072d00092209410a4f0d01200220096a2d00000541000b3a0001200520083a0000200741106a24000c010b000b20032d0009418080c40020032d00081b21070c010b200241086a410036020020022802042107200242003702000b200341106a240020072202418080c400460440027f41012004418001490d001a41022004418010490d001a41034104200441808004491b0b200a6a21020c030b200c2002200f110100450d000b0b0c030b200641106a200641286a10e2012006280210210a20062802142204418080c400470d000b0b200641086a210302402002450d000240200120024d044020012002470d010c020b200020026a2c000041bf7f4a0d010b000b2003200120026b3602042003200020026a360200200c2006280208200628020c200e28020c1102000d00200c4122200f110100210d0b200641d0006a2400200d0bf60101077f2001280200210620012802042107027f418080c400200128020022022001280204460d001a2001200241016a36020020022d00002203411874411875410048047f2001200241026a36020020022d0001413f7122042003411f71220541067472200341df014d0d011a2001200241036a36020020022d0002413f7120044106747222042005410c7472200341f001490d011a2001200241046a3602002005411274418080f0007120022d0003413f71200441067472720520030b0b2202418080c400470440200120012802002001280208220820076a200620012802046a6b6a3602080b20002002360204200020083602000b150020012003460440200020022001100f1a0f0b000bb20201077f410121080240024002402002450d00200120024101746a210a20004180fe0371410876210b200041ff0171210d0340200141026a210c200720012d000122026a2109200b20012d000022014704402001200b4b0d0220092107200c2201200a460d020c010b2004200949200720094b720d03200320076a2101024003402002450d01200241016b210220012d00002107200141016a21012007200d470d000b410021080c030b20092107200c2201200a470d000b0b2006450d00200520066a2104200041ffff037121010340200541016a210020052d00002202411874411875220341004e047f20000520002004460d0320052d0001200341ff0071410874722102200541026a0b2105200120026b22014100480d012008410173210820042005470d000b0b20084101710f0b000b4d01027f230041106b22012400200120001043027f02402001280200418380808078470440200110440c010b2001280204450d00200141086a2802000c010b41000b2102200141106a240020020b9e0202027f017e230041e0006b22042400200441d0006a2001200441306a108f012000027f20042802502201418180808078460440200020042f00303b0001200041036a200441326a2d00003a0000200441186a2004413f6a2800002201360200200420042900372206370310200420042900433703002004200441c8006a29000037000520042800332105200041106a2001360200200041086a2006370200200041146a2004290300370200200041196a2004290005370000200041046a200536020041000c010b200441186a200441dc006a28020022053602002004412c6a20053602002004200429025422063703102004200136022020042006370224200041046a200441206a20032002108d0141010b3a0000200441e0006a24000b5401017f230041106b22052400027f2000280200450440200128021420044104200141186a28020028020c1102000c010b2005200036020c2001200341042005410c6a200210e0010b2100200541106a240020000b0bdf390600418080040bb604eba00e3f19d8f846cf2fb11965ac0c42252db4095cbc7d7c74a13bdf5da67cdf52def0f2787424d4912f026fbbd26eaa04ed54b9dab1e4b78af2b1f9bd5c471e90a41dac436f756c64206e6f74206465636f64652060526f756e64696e67602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f64652060526f756e64696e67602c2076617269616e7420646f65736e2774206578697374000000000000436f756c64206e6f74206465636f64652060486173682e3060563a4d617852656465656d563a4d6178576974686472617701a5e5b1f0631e5f5290989092ca16eea75c92d1c382b59c7c1fd4f0bb971b57310132d4a91f012e838e1412f7062209d065f1a86c43aeec8cb04d5e71d0da155f6e436f756c64206e6f74206465636f6465206050535032324572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f6465206050535032324572726f723a3a437573746f6d2e3060436f756c64206e6f74206465636f6465206050535032324572726f723a3a536166655472616e73666572436865636b4661696c65642e3060436f756c64206e6f74206465636f6465206050535032324572726f72602c2076617269616e7420646f65736e2774206578697374011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb0041d784040bfa040100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403436f756c64206e6f74206465636f6465206056657374696e674572726f72602c2076617269616e7420646f65736e2774206578697374436f756c64206e6f74206465636f6465206056657374696e674572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f6465206056657374696e674572726f723a3a50535032324572726f722e3060436f756c64206e6f74206465636f6465206056657374696e674572726f723a3a437573746f6d2e3060436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c4275696c64657247656e6572616c566573743a3a6163636f756e745f696460436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c466f7277617264657247656e6572616c566573743a3a6275696c64657260496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e67214400010000000000496e76616c696420626f6f6c65616e20726570726573656e746174696f6e4465636f646504000000040000000400000005000000427566666572546f6f536d616c6c52657475726e4572726f7200000006000000040000000400000007000000436f756c644e6f7452656164496e7075744e6f6e65536f6d65000000080000000400000004000000090000004572726f72636175736500000a00000004000000040000000b000000646573630c00000004000000040000000d0041f889040bf719756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d6528542960756e65787065637465642066697273742062797465206465636f64696e6720526573756c74436f756c64206e6f7420726573756c742076617269616e74206279746520666f722060526573756c7460436f756c64206e6f74206465636f64652060526573756c743a3a4572726f7228452960436f756c64206e6f74204465636f64652060526573756c743a3a4f6b2854296001cd14879a051c7c587f001e1d438c0b137fd1c2a51d830f5fdcd29cfc04a29121015f5b16027cc992a83e3eedcdd887ffcbb490ffc9afb4bc3623c1e2cb54921ee401ddfe7f295d992235f6a7383cea3c5a7721049996fad19b261039a5fd67ed5189012ebcdce502f12523e0670f6e293cb7ad129d9aa48f5522ae3a294e822656a4d80134110cc3e5aa20ebef66d61de2e100ad52e013b1c4ad6b1582ea4aa568fc945a019157abbc52e3dead04f1509d5cffd9f18b51cf6fe2838565610edde16849ce20436f756c64206e6f74206465636f64652060566f74696e6752756c65733a3a66696e616c5f706572696f6460436f756c64206e6f74206465636f64652060566f74696e6752756c65733a3a666c61745f706572696f6460436f756c64206e6f74206465636f64652060566f74696e6752756c65733a3a696e697469616c5f706572696f6460436f756c64206e6f74206465636f64652060566f74696e6752756c65733a3a70726f706f7365725f6465706f7369745f706172745f653360436f756c64206e6f74206465636f64652060566f74696e6752756c65733a3a6d696e696d756d5f7374616b655f706172745f653360436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a6561726c696573745f657865637574696f6e60436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a766f7465735f616761696e73745f776974685f736c61736860436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a766f7465735f616761696e737460436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a766f7465735f666f7260436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a66696e616c697a656460436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a636f756e7465725f61745f737461727460436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a766f7465735f61745f737461727460436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a737461727460436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a70726f706f73657260436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a666f7263655f756e7374616b655f706f737369626c6560436f756c64206e6f74206465636f6465206050726f706f73616c53746174653a3a73746174757360436f756c64206e6f74206465636f6465206050726f706f73616c537461747573602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f6465206050726f706f73616c537461747573602c2076617269616e7420646f65736e2774206578697374436f756c64206e6f74206465636f6465206050726f706f73616c3a3a6561726c696573745f657865637574696f6e60436f756c64206e6f74206465636f6465206050726f706f73616c3a3a6465736372697074696f6e5f75726c60436f756c64206e6f74206465636f6465206050726f706f73616c3a3a6465736372697074696f6e5f6861736860436f756c64206e6f74206465636f6465206050726f706f73616c3a3a7472616e73616374696f6e7360436f756c64206e6f74206465636f646520605472616e73616374696f6e3a3a7472616e736665727265645f76616c756560436f756c64206e6f74206465636f646520605472616e73616374696f6e3a3a696e70757460436f756c64206e6f74206465636f646520605472616e73616374696f6e3a3a73656c6563746f7260436f756c64206e6f74206465636f646520605472616e73616374696f6e3a3a63616c6c656560436f756c64206e6f74206465636f6465206055736572566f74653a3a616d6f756e7460436f756c64206e6f74206465636f6465206055736572566f74653a3a766f746560436f756c64206e6f74206465636f64652060566f7465602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f64652060566f7465602c2076617269616e7420646f65736e2774206578697374556e7472616e736665727261626c654465636f6465204572726f723a2000390c01000e0000004661696c656420647572696e672063726561746520766573742063616c6c100102030405060708090a0b0c0d0e6f7574206f662072616e6765206465636f64696e6720436f6d706163743c7533323e00d6e34d4a6209318bc629684f5e6a9f464f255229f9372874ffbbddfc7c996051510afc692f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e7273000000c40c010069000000980000002e000000c40c0100690000009300000030000000436f756c64206e6f74206465636f646520604c616e674572726f72602c2076617269616e7420646f65736e2774206578697374436f756c64206e6f74206465636f646520604c616e674572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f646520604163636f756e7449642e3060496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e67214e6f7420656e6f756768206461746120746f206465636f646520766563746f724e6f6e65536f6d6500000e0000000400000004000000090000004572726f72636175736500000f000000040000000400000010000000646573631100000004000000040000000d000000496e76616c696420757466382073657175656e6365005375636365737343616c6c65655472617070656443616c6c656552657665727465644b65794e6f74466f756e645f42656c6f7753756273697374656e63655468726573686f6c645472616e736665724661696c65645f456e646f776d656e74546f6f4c6f77436f64654e6f74466f756e644e6f7443616c6c61626c654c6f6767696e6744697361626c656443616c6c52756e74696d654661696c656445636473615265636f766572794661696c6564537232353531395665726966794661696c656458636d457865637574696f6e4661696c656458636d53656e644661696c6564556e6b6e6f776e756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d6528542960756e65787065637465642066697273742062797465206465636f64696e6720526573756c74436f756c64206e6f74204465636f64652060526573756c743a3a4f6b28542960436f756c64206e6f74206465636f64652060526573756c743a3a4572726f7228452960436f756c64206e6f7420726573756c742076617269616e74206279746520666f722060526573756c74600c014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b4d3a3a556e646572666c6f774d3a3a4f766572666c6f774d3a3a44697642795a65726f41433a3a496e76616c696443616c6c657241433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e74436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c4275696c64657250535032323a3a6163636f756e745f696460436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c466f7277617264657250535032323a3a6275696c646572600000070000000d0000000e0000000b0000001a0000000e000000100000000c0000000b0000000f000000110000001300000013000000120000000d000000070000008a0e0100910e01009e0e0100ac0e0100b70e0100d10e0100df0e0100ef0e0100fb0e0100060f0100150f0100260f0100390f01004c0f01005e0f01006b0f0100100102030405060708090a0b0c0d0e004190a4040bfb032f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e72730000101201006a0000005d0000000e000000100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e72739b12010065000000770000000e0000004e6f7420656e6f756768206461746120746f2066696c6c206275666665720000120000000c000000040000001300000014000000150000002930313233343536373839616263646566000000170000000c0000000400000018000000190000001a00000020202020207b202c203a20207b0a2c0a7d207d28280a2c01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041cda8040b3302020202020202020202020202020202020202020202020202020202020203030303030303030303030303030303040404040400418ca9040bda110601010301040205070702080809020a050b020e041001110212051311140115021702190d1c051d081f0124016a046b02af03b102bc02cf02d102d40cd509d602d702da01e005e102e704e802ee20f004f802fa03fb010c273b3e4e4f8f9e9e9f7b8b9396a2b2ba86b1060709363d3e56f3d0d1041418363756577faaaeafbd35e01287898e9e040d0e11122931343a4546494a4e4f64655cb6b71b1c07080a0b141736393aa8a9d8d909379091a8070a3b3e66698f92116f5fbfeeef5a62f4fcff53549a9b2e2f2728559da0a1a3a4a7a8adbabcc4060b0c151d3a3f4551a6a7cccda007191a22253e3fe7ecefffc5c604202325262833383a484a4c50535556585a5c5e606365666b73787d7f8aa4aaafb0c0d0aeaf6e6fbe935e227b0503042d036603012f2e80821d03310f1c0424091e052b0544040e2a80aa06240424042808340b4e43813709160a08183b45390363080930160521031b05014038044b052f040a070907402027040c0936033a051a07040c07504937330d33072e080a8126524b2b082a161a261c1417094e042409440d19070a0648082709750b423e2a063b050a0651060105100305808b621e48080a80a65e22450b0a060d133a060a362c041780b93c64530c48090a46451b4808530d49070a80f6460a1d03474937030e080a0639070a813619073b031c56010f320d839b66750b80c48a4c630d843010168faa8247a1b98239072a045c06260a460a28051382b05b654b0439071140050b020e97f80884d62a09a2e781330f011d060e0408818c89046b050d0309071092604709743c80f60a73087015467a140c140c570919808781470385420f1584501f060680d52b053e2101702d031a040281401f113a050181d02a82e680f7294c040a04028311444c3d80c23c06010455051b3402810e2c04640c560a80ae381d0d2c040907020e06809a83d80411030d0377045f060c04010f0c0438080a062808224e81540c1d03090736080e040907090780cb250a840600010305050606020706080709110a1c0b190c1a0d100e0c0f0410031212130916011704180119031a071b011c021f1620032b032d0b2e01300331023201a702a902aa04ab08fa02fb05fd02fe03ff09ad78798b8da23057588b8c901cdd0e0f4b4cfbfc2e2f3f5c5d5fe2848d8e9192a9b1babbc5c6c9cadee4e5ff00041112293134373a3b3d494a5d848e92a9b1b4babbc6cacecfe4e500040d0e11122931343a3b4546494a5e646584919b9dc9cecf0d11293a3b4549575b5c5e5f64658d91a9b4babbc5c9dfe4e5f00d11454964658084b2bcbebfd5d7f0f183858ba4a6bebfc5c7cfdadb4898bdcdc6cecf494e4f57595e5f898e8fb1b6b7bfc1c6c7d71116175b5cf6f7feff806d71dedf0e1f6e6f1c1d5f7d7eaeaf7fbbbc16171e1f46474e4f585a5c5e7e7fb5c5d4d5dcf0f1f572738f747596262e2fa7afb7bfc7cfd7df9a409798308f1fd2d4ceff4e4f5a5b07080f10272feeef6e6f373d3f42459091536775c8c9d0d1d8d9e7feff00205f2282df048244081b04061181ac0e80ab051f09811b03190801042f043404070301070607110a500f1207550703041c0a090308030703020303030c0405030b06010e15054e071b0757070206170c500443032d03010411060f0c3a041d255f206d046a2580c80582b0031a0682fd03590716091809140c140c6a060a061a0659072b05460a2c040c040103310b2c041a060b0380ac060a062f314d0380a4083c030f033c0738082b0582ff1118082f112d03210f210f808c048297190b158894052f053b07020e180980be22740c80d61a0c0580ff0580df0cf29d033709815c1480b80880cb050a183b030a06380846080c06740b1e035a0459098083181c0a16094c04808a06aba40c170431a10481da26070c050580a61081f50701202a064c04808d0480be031b030f0d5c757b00000003000083042000910560005d13a0001217201f0c20601fef2ca02b2a30202c6fa6e02c02a8602d1efb602e00fe20369eff6036fd01e136010a2137240de137ab0e61392f18a139301c6148f31ea14c40346150f06aa1514f6f21529dbca15200cf615365d1a15300da215400e0e155aee26157ece42159d0e8a1592000ee59f0017f5a00700007002d0101010201020101480b30151001650702060202010423011e1b5b0b3a09090118040109010301052b033c082a180120370101010408040103070a021d013a0101010204080109010a021a010202390104020402020303011e0203010b0239010405010204011402160601013a0101020104080107030a021e013b0101010c01090128010301370101030503010407020b021d013a01020102010301050207020b021c02390201010204080109010a021d0148010401020301010801510102070c08620102090b0749021b0101010101370e01050102050b0124090166040106010202021902040310040d01020206010f01000300031d021e021e02400201070801020b09012d030101750222017603040209010603db0202013a010107010101010208060a0201301f310430070101050128090c0220040202010338010102030101033a0802029803010d0107040106010302c6400001c32100038d016020000669020004010a200250020001030104011902050197021a120d012608190b2e0330010204020227014306020202020c0108012f01330101030202050201012a020801ee010201040100010010101000020001e201950500030102050428030401a502000400025003460b31047b01360f290102020a033104020207013d03240501083e010c0234090a0402015f0302010102060102019d010308150239020101010116010e070305c308020301011701510102060101020101020102eb010204060201021b025508020101026a0101010206010165030204010500090102f5010a0201010401900402020401200a280602040801090602032e0d010200070106010152160207010201027a06030101020107010148020301010100020b023405050101010001060f00053b0700013f0451010002002e0217000101030405080802071e0494030037043208010e011605010f000701110207010201056401a00700013d04000400076d07006080f0","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_governor","version":"1.0.0","authors":["[your_name] <[your_email]>"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"vester","type":{"displayName":["AccountId"],"type":9}},{"label":"foundation","type":{"displayName":["AccountId"],"type":9}},{"label":"parameters_admin","type":{"displayName":["Option"],"type":8}},{"label":"unstake_period","type":{"displayName":["Timestamp"],"type":48}},{"label":"name","type":{"displayName":["String"],"type":37}},{"label":"symbol","type":{"displayName":["String"],"type":37}},{"label":"rules","type":{"displayName":["VotingRules"],"type":50}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":135},"selector":"0x9bae9d5e"}],"docs":[" This is AbaxGovernor Contract implementation."," It allows for staking PSP22 token (Abax token) in exchange for PSP22Vault shares (votes)."," The shares are non-transferrable."," Withdrawing assets is possible only after unstake period - unstaking is handled by GeneralVest contract.",""," The contract allows for proposing and voting on proposals by implementing Govern trait."," To create a proposal, the proposer must have enough votes (shares) to meet the minimum stake part."," While proposal is created the proposer must deposit a part of his votes. This votes are returned when proposal is finalized unless the proposal is finalized with 'DefeatedWithSlash' status."," One share is one vote."," Proposal has 3 periods of voting: Intial, Flat and Final which influence the minimum votes to finalize."," If proposal was finalized in Final phase, it's possible to force unstake an account that didn't vote on that proposal.",""," Contract is using pendzl Access Control to manage access to the messages"],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":15},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":186},"hash":{"displayName":["Hash"],"type":70},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":48}},"events":[{"args":[{"docs":[],"indexed":true,"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}},{"docs":[],"indexed":true,"label":"proposal_hash","type":{"displayName":["ProposalHash"],"type":70}},{"docs":[],"indexed":true,"label":"proposal","type":{"displayName":["Proposal"],"type":142}}],"docs":[],"label":"ProposalCreated","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0xcd14879a051c7c587f001e1d438c0b137fd1c2a51d830f5fdcd29cfc04a29121"},{"args":[{"docs":[],"indexed":true,"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}},{"docs":[],"indexed":true,"label":"status","type":{"displayName":["ProposalStatus"],"type":90}}],"docs":[],"label":"ProposalFinalized","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0x5f5b16027cc992a83e3eedcdd887ffcbb490ffc9afb4bc3623c1e2cb54921ee4"},{"args":[{"docs":[],"indexed":true,"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"docs":[],"label":"ProposalExecuted","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0xddfe7f295d992235f6a7383cea3c5a7721049996fad19b261039a5fd67ed5189"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}},{"docs":[],"indexed":false,"label":"vote","type":{"displayName":["Vote"],"type":98}}],"docs":[],"label":"VoteCasted","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0x2ebcdce502f12523e0670f6e293cb7ad129d9aa48f5522ae3a294e822656a4d8"},{"args":[{"docs":[],"indexed":false,"label":"rules","type":{"displayName":["VotingRules"],"type":50}}],"docs":[],"label":"VotingRulesChanged","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0x34110cc3e5aa20ebef66d61de2e100ad52e013b1c4ad6b1582ea4aa568fc945a"},{"args":[{"docs":[],"indexed":false,"label":"unstake_period","type":{"displayName":["Timestamp"],"type":48}}],"docs":[],"label":"UnstakePeriodChanged","module_path":"abax_governor::modules::govern::traits::events","signature_topic":"0x9157abbc52e3dead04f1509d5cffd9f18b51cf6fe2838565610edde16849ce20"},{"args":[{"docs":["The account that triggered the release."],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account to which the tokens are sent."],"indexed":true,"label":"to","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when vested tokens are released"],"label":"TokenReleased","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b"},{"args":[{"docs":[],"indexed":true,"label":"creator","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens will be sent."],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}},{"docs":[],"indexed":false,"label":"schedule","type":{"displayName":["VestingSchedule"],"type":184}}],"docs":["Emitted when general_vest schedule is created"],"label":"VestingScheduled","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":[],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"assets","type":{"displayName":["Balance"],"type":15}},{"docs":[],"indexed":false,"label":"shares","type":{"displayName":["Balance"],"type":15}}],"docs":["Represents a deposit event in the Vault contract."],"label":"Deposit","module_path":"pendzl_contracts::token::psp22::extensions::vault","signature_topic":"0xa5e5b1f0631e5f5290989092ca16eea75c92d1c382b59c7c1fd4f0bb971b5731"},{"args":[{"docs":[],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"assets","type":{"displayName":["Balance"],"type":15}},{"docs":[],"indexed":false,"label":"shares","type":{"displayName":["Balance"],"type":15}}],"docs":["Represents a withdraw event in the Vault contract."],"label":"Withdraw","module_path":"pendzl_contracts::token::psp22::extensions::vault","signature_topic":"0x32d4a91f012e838e1412f7062209d065f1a86c43aeec8cb04d5e71d0da155f6e"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":141},"messages":[{"args":[{"label":"proposal","type":{"displayName":["Proposal"],"type":142}}],"default":false,"docs":[],"label":"AbaxGovern::propose","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":147},"selector":"0xfb78be0a"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovern::finalize","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0x66d3e5f6"},{"args":[{"label":"proposal","type":{"displayName":["Proposal"],"type":142}}],"default":false,"docs":[],"label":"AbaxGovern::execute","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0xa4417227"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}},{"label":"vote","type":{"displayName":["Vote"],"type":98}},{"label":"_reason","type":{"displayName":["Vec"],"type":146}}],"default":false,"docs":[],"label":"AbaxGovern::vote","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0x02a24471"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}},{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovern::force_unstake","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0x611e3405"},{"args":[{"label":"rules","type":{"displayName":["VotingRules"],"type":50}}],"default":false,"docs":[],"label":"AbaxGovernManage::change_voting_rules","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0xace48fbf"},{"args":[{"label":"period","type":{"displayName":["Timestamp"],"type":48}}],"default":false,"docs":[],"label":"AbaxGovernManage::change_unstake_period","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0x6640e3db"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::vester","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":149},"selector":"0x7f455b75"},{"args":[{"label":"proposal","type":{"displayName":["Proposal"],"type":142}}],"default":false,"docs":[],"label":"AbaxGovernView::hash","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":150},"selector":"0xa757fb12"},{"args":[{"label":"description","type":{"displayName":["String"],"type":37}}],"default":false,"docs":[],"label":"AbaxGovernView::hash_description","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":150},"selector":"0x5fab4200"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::hash_by_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":151},"selector":"0x118785e1"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::rules","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":153},"selector":"0x2b287936"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::status","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":154},"selector":"0x25459c14"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::minimum_to_finalize","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0xed144b89"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::state","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":158},"selector":"0x75267b5f"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}},{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::vote_of_for","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":160},"selector":"0xee1d4716"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxGovernView::last_force_unstakes","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":162},"selector":"0x33481a19"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxGovernView::last_stake_timestamp","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":164},"selector":"0xdc8a1e9a"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::active_proposals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":165},"selector":"0xd61345c3"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::finalized_proposals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":165},"selector":"0x5b1a9527"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::executed_proposals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":165},"selector":"0x3f02171d"},{"args":[],"default":false,"docs":[],"label":"AbaxGovernView::next_proposal_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":165},"selector":"0xd9b0842a"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::description_url_by_proposal_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":166},"selector":"0x3a9aa8b0"},{"args":[{"label":"proposal_id","type":{"displayName":["ProposalId"],"type":0}}],"default":false,"docs":[],"label":"AbaxGovernView::description_hash_by_proposal_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":151},"selector":"0xf8858719"},{"args":[],"default":false,"docs":[],"label":"ProvideVestScheduleInfo::get_waiting_and_vesting_durations","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":167},"selector":"0x078994bf"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"label":"spender","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":146}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":146}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Vault::asset","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":149},"selector":"0x6b787d8e"},{"args":[],"default":false,"docs":[],"label":"PSP22Vault::total_assets","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x01ecb508"},{"args":[{"label":"assets","type":{"displayName":["Balance"],"type":15}},{"label":"round","type":{"displayName":["Rounding"],"type":172}}],"default":false,"docs":[],"label":"PSP22Vault::convert_to_shares","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0xc3722f26"},{"args":[{"label":"shares","type":{"displayName":["Balance"],"type":15}},{"label":"round","type":{"displayName":["Rounding"],"type":172}}],"default":false,"docs":[],"label":"PSP22Vault::convert_to_assets","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x69dbfb3d"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::max_deposit","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x7db5d0b0"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::max_mint","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x50e36dc6"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::max_withdraw","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x8acacf75"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::max_redeem","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":169},"selector":"0x248643a9"},{"args":[{"label":"assets","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Vault::preview_deposit","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x258f56ea"},{"args":[{"label":"shares","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Vault::preview_mint","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x585ae483"},{"args":[{"label":"assets","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Vault::preview_withdraw","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x3970357e"},{"args":[{"label":"shares","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Vault::preview_redeem","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x076204e6"},{"args":[{"label":"assets","type":{"displayName":["Balance"],"type":15}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::deposit","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":175},"selector":"0xe6a168cb"},{"args":[{"label":"shares","type":{"displayName":["Balance"],"type":15}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":175},"selector":"0xbe36c73a"},{"args":[{"label":"assets","type":{"displayName":["Balance"],"type":15}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::withdraw","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":175},"selector":"0x7fe8757a"},{"args":[{"label":"shares","type":{"displayName":["Balance"],"type":15}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22Vault::redeem","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":175},"selector":"0xb997ec8f"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":166},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":166},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":177},"selector":"0x7271b782"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":178},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":165},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":179},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":179},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":179},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":179},"selector":"0x71a64883"},{"args":[{"label":"set_code_hash","type":{"displayName":["Hash"],"type":70}}],"default":false,"docs":[],"label":"SetCodeHash::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":181},"selector":"0xabb60cdf"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access_control"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":15}},"root_key":"0xc629684f","ty":16}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":15}},"root_key":"0xffbbddfc","ty":20}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":15}},"root_key":"0x7c996051","ty":24}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x4f255229","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderPSP22"}},"root_key":"0x4f255229","ty":29}},"name":"asset"},{"layout":{"root":{"layout":{"leaf":{"key":"0x5e6a9f46","ty":11}},"root_key":"0x5e6a9f46","ty":33}},"name":"underlying_decimals"}],"name":"PSP22VaultData"}},"name":"vault"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x6209318b","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x6209318b","ty":37}},"name":"0"}],"name":"Some"}}}},"root_key":"0x6209318b","ty":38}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd6e34d4a","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd6e34d4a","ty":37}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd6e34d4a","ty":43}},"name":"symbol"}],"name":"PSP22MetadataData"}},"name":"metadata"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x74a13bdf","ty":47}},"name":"minimum_stake_part_e3"},{"layout":{"leaf":{"key":"0x74a13bdf","ty":47}},"name":"proposer_deposit_part_e3"},{"layout":{"leaf":{"key":"0x74a13bdf","ty":48}},"name":"initial_period"},{"layout":{"leaf":{"key":"0x74a13bdf","ty":48}},"name":"flat_period"},{"layout":{"leaf":{"key":"0x74a13bdf","ty":48}},"name":"final_period"}],"name":"VotingRules"}},"root_key":"0x74a13bdf","ty":49}},"name":"rules"},{"layout":{"root":{"layout":{"leaf":{"key":"0x252db409","ty":0}},"root_key":"0x252db409","ty":54}},"name":"active_proposals"},{"layout":{"root":{"layout":{"leaf":{"key":"0xeba00e3f","ty":0}},"root_key":"0xeba00e3f","ty":58}},"name":"finalized_proposals"},{"layout":{"root":{"layout":{"leaf":{"key":"0x5da67cdf","ty":0}},"root_key":"0x5da67cdf","ty":62}},"name":"executed_proposals"},{"layout":{"root":{"layout":{"leaf":{"key":"0x65ac0c42","ty":0}},"root_key":"0x65ac0c42","ty":66}},"name":"next_proposal_id"},{"layout":{"root":{"layout":{"leaf":{"key":"0xbd5c471e","ty":70}},"root_key":"0xbd5c471e","ty":71}},"name":"proposal_id_to_hash"},{"layout":{"root":{"layout":{"leaf":{"key":"0xbbd26eaa","ty":37}},"root_key":"0xbbd26eaa","ty":75}},"name":"proposal_id_to_description_url"},{"layout":{"root":{"layout":{"leaf":{"key":"0x912f026f","ty":70}},"root_key":"0x912f026f","ty":79}},"name":"proposal_id_to_description_hash"},{"layout":{"root":{"layout":{"leaf":{"key":"0x787424d4","ty":0}},"root_key":"0x787424d4","ty":83}},"name":"proposal_hash_to_id"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"enum":{"dispatchKey":"0x90a41dac","name":"ProposalStatus","variants":{"0":{"fields":[],"name":"Active"},"1":{"fields":[],"name":"Defeated"},"2":{"fields":[],"name":"DefeatedWithSlash"},"3":{"fields":[],"name":"Succeeded"},"4":{"fields":[],"name":"Executed"}}}},"name":"status"},{"layout":{"leaf":{"key":"0x90a41dac","ty":87}},"name":"force_unstake_possible"},{"layout":{"leaf":{"key":"0x90a41dac","ty":9}},"name":"proposer"},{"layout":{"leaf":{"key":"0x90a41dac","ty":48}},"name":"start"},{"layout":{"leaf":{"key":"0x90a41dac","ty":15}},"name":"votes_at_start"},{"layout":{"leaf":{"key":"0x90a41dac","ty":15}},"name":"counter_at_start"},{"layout":{"enum":{"dispatchKey":"0x90a41dac","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x90a41dac","ty":48}},"name":"0"}],"name":"Some"}}}},"name":"finalized"},{"layout":{"leaf":{"key":"0x90a41dac","ty":15}},"name":"votes_for"},{"layout":{"leaf":{"key":"0x90a41dac","ty":15}},"name":"votes_against"},{"layout":{"leaf":{"key":"0x90a41dac","ty":15}},"name":"votes_against_with_slash"},{"layout":{"enum":{"dispatchKey":"0x90a41dac","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x90a41dac","ty":48}},"name":"0"}],"name":"Some"}}}},"name":"earliest_execution"}],"name":"ProposalState"}},"root_key":"0x90a41dac","ty":88}},"name":"state"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"enum":{"dispatchKey":"0x8af2b1f9","name":"Vote","variants":{"0":{"fields":[],"name":"Agreed"},"1":{"fields":[],"name":"Disagreed"},"2":{"fields":[],"name":"DisagreedWithProposerSlashing"}}}},"name":"vote"},{"layout":{"leaf":{"key":"0x8af2b1f9","ty":15}},"name":"amount"}],"name":"UserVote"}},"root_key":"0x8af2b1f9","ty":95}},"name":"votes"},{"layout":{"root":{"layout":{"leaf":{"key":"0xdab1e4b7","ty":48}},"root_key":"0xdab1e4b7","ty":102}},"name":"last_stake_timestamp"},{"layout":{"root":{"layout":{"leaf":{"key":"0x52def0f2","ty":0}},"root_key":"0x52def0f2","ty":106}},"name":"last_force_unstake"}],"name":"GovernData"}},"name":"govern"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xcf2fb119","ty":15}},"root_key":"0xcf2fb119","ty":110}},"name":"counter"}],"name":"VaultCounterData"}},"name":"counter"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x04ed54b9","ty":15}},"root_key":"0x04ed54b9","ty":114}},"name":"locked"}],"name":"LockedSharesData"}},"name":"lock"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x5cbc7d7c","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderGeneralVest"}},"root_key":"0x5cbc7d7c","ty":118}},"name":"general_vester"},{"layout":{"root":{"layout":{"leaf":{"key":"0x19d8f846","ty":48}},"root_key":"0x19d8f846","ty":122}},"name":"unstake_period"}],"name":"UnstakeData"}},"name":"unstake"}],"name":"AbaxGovernor"}},"root_key":"0x00000000","ty":126}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"primitive":"u128"}}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":17}],"path":["ink_storage","lazy","Lazy"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"L","type":18},{"name":"R","type":19}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":15},{"name":"KeyType","type":21}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"L","type":22},{"name":"R","type":23}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"K","type":25},{"name":"V","type":15},{"name":"KeyType","type":26}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":25,"type":{"def":{"tuple":[9,9]}}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"L","type":27},{"name":"R","type":28}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":30}],"path":["ink_storage","lazy","Lazy"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"L","type":31},{"name":"R","type":32}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"V","type":11},{"name":"KeyType","type":34}],"path":["ink_storage","lazy","Lazy"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"L","type":35},{"name":"R","type":36}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":37,"type":{"def":{"primitive":"str"}}},{"id":38,"type":{"def":{"composite":{}},"params":[{"name":"V","type":39},{"name":"KeyType","type":40}],"path":["ink_storage","lazy","Lazy"]}},{"id":39,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":37}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":37}],"path":["Option"]}},{"id":40,"type":{"def":{"composite":{}},"params":[{"name":"L","type":41},{"name":"R","type":42}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":41,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":42,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":43,"type":{"def":{"composite":{}},"params":[{"name":"V","type":39},{"name":"KeyType","type":44}],"path":["ink_storage","lazy","Lazy"]}},{"id":44,"type":{"def":{"composite":{}},"params":[{"name":"L","type":45},{"name":"R","type":46}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":45,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":46,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":47,"type":{"def":{"primitive":"u16"}}},{"id":48,"type":{"def":{"primitive":"u64"}}},{"id":49,"type":{"def":{"composite":{}},"params":[{"name":"V","type":50},{"name":"KeyType","type":51}],"path":["ink_storage","lazy","Lazy"]}},{"id":50,"type":{"def":{"composite":{"fields":[{"name":"minimum_stake_part_e3","type":47,"typeName":"u16"},{"name":"proposer_deposit_part_e3","type":47,"typeName":"u16"},{"name":"initial_period","type":48,"typeName":"Timestamp"},{"name":"flat_period","type":48,"typeName":"Timestamp"},{"name":"final_period","type":48,"typeName":"Timestamp"}]}},"path":["abax_governor","modules","govern","traits","structs","VotingRules"]}},{"id":51,"type":{"def":{"composite":{}},"params":[{"name":"L","type":52},{"name":"R","type":53}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":52,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":53,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":54,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":55}],"path":["ink_storage","lazy","Lazy"]}},{"id":55,"type":{"def":{"composite":{}},"params":[{"name":"L","type":56},{"name":"R","type":57}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":56,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":57,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":58,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":59}],"path":["ink_storage","lazy","Lazy"]}},{"id":59,"type":{"def":{"composite":{}},"params":[{"name":"L","type":60},{"name":"R","type":61}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":60,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":61,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":62,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":63}],"path":["ink_storage","lazy","Lazy"]}},{"id":63,"type":{"def":{"composite":{}},"params":[{"name":"L","type":64},{"name":"R","type":65}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":64,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":65,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":66,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":67}],"path":["ink_storage","lazy","Lazy"]}},{"id":67,"type":{"def":{"composite":{}},"params":[{"name":"L","type":68},{"name":"R","type":69}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":68,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":69,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":70,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":71,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":70},{"name":"KeyType","type":72}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":72,"type":{"def":{"composite":{}},"params":[{"name":"L","type":73},{"name":"R","type":74}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":73,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":74,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":75,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":37},{"name":"KeyType","type":76}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":76,"type":{"def":{"composite":{}},"params":[{"name":"L","type":77},{"name":"R","type":78}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":77,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":78,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":79,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":70},{"name":"KeyType","type":80}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":80,"type":{"def":{"composite":{}},"params":[{"name":"L","type":81},{"name":"R","type":82}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":81,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":82,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":83,"type":{"def":{"composite":{}},"params":[{"name":"K","type":70},{"name":"V","type":0},{"name":"KeyType","type":84}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":84,"type":{"def":{"composite":{}},"params":[{"name":"L","type":85},{"name":"R","type":86}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":85,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":86,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":87,"type":{"def":{"primitive":"bool"}}},{"id":88,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":89},{"name":"KeyType","type":92}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":89,"type":{"def":{"composite":{"fields":[{"name":"status","type":90,"typeName":"ProposalStatus"},{"name":"force_unstake_possible","type":87,"typeName":"bool"},{"name":"proposer","type":9,"typeName":"AccountId"},{"name":"start","type":48,"typeName":"Timestamp"},{"name":"votes_at_start","type":15,"typeName":"Balance"},{"name":"counter_at_start","type":15,"typeName":"Balance"},{"name":"finalized","type":91,"typeName":"Option"},{"name":"votes_for","type":15,"typeName":"Balance"},{"name":"votes_against","type":15,"typeName":"Balance"},{"name":"votes_against_with_slash","type":15,"typeName":"Balance"},{"name":"earliest_execution","type":91,"typeName":"Option"}]}},"path":["abax_governor","modules","govern","traits","structs","ProposalState"]}},{"id":90,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Active"},{"index":1,"name":"Defeated"},{"index":2,"name":"DefeatedWithSlash"},{"index":3,"name":"Succeeded"},{"index":4,"name":"Executed"}]}},"path":["abax_governor","modules","govern","traits","structs","ProposalStatus"]}},{"id":91,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":48}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":48}],"path":["Option"]}},{"id":92,"type":{"def":{"composite":{}},"params":[{"name":"L","type":93},{"name":"R","type":94}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":93,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":94,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":95,"type":{"def":{"composite":{}},"params":[{"name":"K","type":96},{"name":"V","type":97},{"name":"KeyType","type":99}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":96,"type":{"def":{"tuple":[9,0]}}},{"id":97,"type":{"def":{"composite":{"fields":[{"name":"vote","type":98,"typeName":"Vote"},{"name":"amount","type":15,"typeName":"Balance"}]}},"path":["abax_governor","modules","govern","traits","structs","UserVote"]}},{"id":98,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Agreed"},{"index":1,"name":"Disagreed"},{"index":2,"name":"DisagreedWithProposerSlashing"}]}},"path":["abax_governor","modules","govern","traits","structs","Vote"]}},{"id":99,"type":{"def":{"composite":{}},"params":[{"name":"L","type":100},{"name":"R","type":101}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":100,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":101,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":102,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":48},{"name":"KeyType","type":103}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":103,"type":{"def":{"composite":{}},"params":[{"name":"L","type":104},{"name":"R","type":105}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":104,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":105,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":106,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":0},{"name":"KeyType","type":107}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":107,"type":{"def":{"composite":{}},"params":[{"name":"L","type":108},{"name":"R","type":109}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":108,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":109,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":110,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":111}],"path":["ink_storage","lazy","Lazy"]}},{"id":111,"type":{"def":{"composite":{}},"params":[{"name":"L","type":112},{"name":"R","type":113}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":112,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":113,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":114,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":15},{"name":"KeyType","type":115}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":115,"type":{"def":{"composite":{}},"params":[{"name":"L","type":116},{"name":"R","type":117}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":116,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":117,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":118,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":119}],"path":["ink_storage","lazy","Lazy"]}},{"id":119,"type":{"def":{"composite":{}},"params":[{"name":"L","type":120},{"name":"R","type":121}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":120,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":121,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":122,"type":{"def":{"composite":{}},"params":[{"name":"V","type":48},{"name":"KeyType","type":123}],"path":["ink_storage","lazy","Lazy"]}},{"id":123,"type":{"def":{"composite":{}},"params":[{"name":"L","type":124},{"name":"R","type":125}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":124,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":125,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":126,"type":{"def":{"composite":{"fields":[{"name":"access_control","type":127,"typeName":",>>::Type"},{"name":"psp22","type":128,"typeName":",>>::Type"},{"name":"vault","type":129,"typeName":",>>::Type"},{"name":"metadata","type":130,"typeName":",>>::Type"},{"name":"govern","type":131,"typeName":",>>::Type"},{"name":"counter","type":132,"typeName":",>>::Type"},{"name":"lock","type":133,"typeName":",>>::Type"},{"name":"unstake","type":134,"typeName":",>>::Type"}]}},"path":["abax_governor","abax_governor","AbaxGovernor"]}},{"id":127,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":128,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":16,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":20,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":24,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":129,"type":{"def":{"composite":{"fields":[{"name":"asset","type":29,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n673747853u32, ()>,>>::Type"},{"name":"underlying_decimals","type":33,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n332803272u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","vault","implementation","PSP22VaultData"]}},{"id":130,"type":{"def":{"composite":{"fields":[{"name":"name","type":38,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":43,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","vault_implementation","PSP22MetadataData"]}},{"id":131,"type":{"def":{"composite":{"fields":[{"name":"rules","type":49,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<577196433u32, ()\n>,>>::Type"},{"name":"active_proposals","type":54,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1575632642u32,\n()>,>>::Type"},{"name":"finalized_proposals","type":58,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<873313438u32,\n()>,>>::Type"},{"name":"executed_proposals","type":62,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1984369469u32, ()>,>>::Type"},{"name":"next_proposal_id","type":66,"typeName":"<::ink::storage::Lazy> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n574869580u32, ()>,>>::Type"},{"name":"proposal_id_to_hash","type":71,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2822849311u32, ()>,>>::Type"},{"name":"proposal_id_to_description_url","type":75,"typeName":"> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n489261630u32, ()>,>>::Type"},{"name":"proposal_id_to_description_hash","type":79,"typeName":"> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1346582127u32, ()>,>>::Type"},{"name":"proposal_hash_to_id","type":83,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1527090195u32, ()>,>>::Type"},{"name":"state","type":88,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1432459859u32,\n()>,>>::Type"},{"name":"votes","type":95,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1268214756u32,\n()>,>>::Type"},{"name":"last_stake_timestamp","type":102,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n3086900163u32, ()>,>>::Type"},{"name":"last_force_unstake","type":106,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1555622964u32, ()>,>>::Type"}]}},"path":["abax_governor","modules","govern","storage","govern_storage_item","GovernData"]}},{"id":132,"type":{"def":{"composite":{"fields":[{"name":"counter","type":110,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<2879836648u32,\n()>,>>::Type"}]}},"path":["abax_governor","modules","govern","storage","vault_counter_storage_item","VaultCounterData"]}},{"id":133,"type":{"def":{"composite":{"fields":[{"name":"locked","type":114,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1980085846u32,\n()>,>>::Type"}]}},"path":["abax_governor","modules","govern","storage","locked_shares_storage_item","LockedSharesData"]}},{"id":134,"type":{"def":{"composite":{"fields":[{"name":"general_vester","type":118,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3823152085u32, ()>,>>::Type"},{"name":"unstake_period","type":122,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1033429691u32, ()>,>>::Type"}]}},"path":["abax_governor","modules","govern","storage","unstake_storage_item","UnstakeData"]}},{"id":135,"type":{"def":{"variant":{"variants":[{"fields":[{"type":136}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":136},{"name":"E","type":141}],"path":["Result"]}},{"id":136,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":137}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":137}],"path":["Result"]}},{"id":137,"type":{"def":{"variant":{"variants":[{"fields":[{"type":138,"typeName":"MathError"}],"index":0,"name":"MathError"},{"fields":[{"type":139,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"index":2,"name":"InsuficientVotes"},{"index":3,"name":"ProposalAlreadyExists"},{"index":4,"name":"ProposalDoesntExist"},{"index":5,"name":"WrongStatus"},{"index":6,"name":"TooEarlyToExecuteProposal"},{"index":7,"name":"FinalizeCondition"},{"fields":[{"type":37,"typeName":"String"}],"index":8,"name":"UnderlyingTransactionReverted"},{"index":9,"name":"CantForceUnstake"},{"fields":[{"type":140,"typeName":"AccessControlError"}],"index":10,"name":"AccessControlError"},{"index":11,"name":"UnstakeShorterThanVotingPeriod"}]}},"path":["abax_governor","modules","govern","traits","errors","GovernError"]}},{"id":138,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":139,"type":{"def":{"variant":{"variants":[{"fields":[{"type":37,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":37,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":140,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":141,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":142,"type":{"def":{"composite":{"fields":[{"name":"transactions","type":143,"typeName":"Vec"},{"name":"description_hash","type":70,"typeName":"Hash"},{"name":"description_url","type":37,"typeName":"String"},{"name":"earliest_execution","type":91,"typeName":"Option"}]}},"path":["abax_governor","modules","govern","traits","structs","Proposal"]}},{"id":143,"type":{"def":{"sequence":{"type":144}}}},{"id":144,"type":{"def":{"composite":{"fields":[{"name":"callee","type":9,"typeName":"AccountId"},{"name":"selector","type":145,"typeName":"[u8; 4]"},{"name":"input","type":146,"typeName":"Vec"},{"name":"transferred_value","type":15,"typeName":"Balance"}]}},"path":["abax_governor","modules","govern","traits","structs","Transaction"]}},{"id":145,"type":{"def":{"array":{"len":4,"type":11}}}},{"id":146,"type":{"def":{"sequence":{"type":11}}}},{"id":147,"type":{"def":{"variant":{"variants":[{"fields":[{"type":148}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":148},{"name":"E","type":141}],"path":["Result"]}},{"id":148,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":137}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":137}],"path":["Result"]}},{"id":149,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":141}],"path":["Result"]}},{"id":150,"type":{"def":{"variant":{"variants":[{"fields":[{"type":70}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":70},{"name":"E","type":141}],"path":["Result"]}},{"id":151,"type":{"def":{"variant":{"variants":[{"fields":[{"type":152}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":152},{"name":"E","type":141}],"path":["Result"]}},{"id":152,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":70}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":70}],"path":["Option"]}},{"id":153,"type":{"def":{"variant":{"variants":[{"fields":[{"type":50}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":50},{"name":"E","type":141}],"path":["Result"]}},{"id":154,"type":{"def":{"variant":{"variants":[{"fields":[{"type":155}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":155},{"name":"E","type":141}],"path":["Result"]}},{"id":155,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":90}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":90}],"path":["Option"]}},{"id":156,"type":{"def":{"variant":{"variants":[{"fields":[{"type":157}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":157},{"name":"E","type":141}],"path":["Result"]}},{"id":157,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":15}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":15}],"path":["Option"]}},{"id":158,"type":{"def":{"variant":{"variants":[{"fields":[{"type":159}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":159},{"name":"E","type":141}],"path":["Result"]}},{"id":159,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":89}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":89}],"path":["Option"]}},{"id":160,"type":{"def":{"variant":{"variants":[{"fields":[{"type":161}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":161},{"name":"E","type":141}],"path":["Result"]}},{"id":161,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":97}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":97}],"path":["Option"]}},{"id":162,"type":{"def":{"variant":{"variants":[{"fields":[{"type":163}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":163},{"name":"E","type":141}],"path":["Result"]}},{"id":163,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":164,"type":{"def":{"variant":{"variants":[{"fields":[{"type":91}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":91},{"name":"E","type":141}],"path":["Result"]}},{"id":165,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":141}],"path":["Result"]}},{"id":166,"type":{"def":{"variant":{"variants":[{"fields":[{"type":39}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":39},{"name":"E","type":141}],"path":["Result"]}},{"id":167,"type":{"def":{"variant":{"variants":[{"fields":[{"type":168}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":168},{"name":"E","type":141}],"path":["Result"]}},{"id":168,"type":{"def":{"tuple":[48,48]}}},{"id":169,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":141}],"path":["Result"]}},{"id":170,"type":{"def":{"variant":{"variants":[{"fields":[{"type":171}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":171},{"name":"E","type":141}],"path":["Result"]}},{"id":171,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":139}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":139}],"path":["Result"]}},{"id":172,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Up"},{"index":1,"name":"Down"}]}},"path":["pendzl_lang","math","operations","Rounding"]}},{"id":173,"type":{"def":{"variant":{"variants":[{"fields":[{"type":174}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":174},{"name":"E","type":141}],"path":["Result"]}},{"id":174,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":138}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":138}],"path":["Result"]}},{"id":175,"type":{"def":{"variant":{"variants":[{"fields":[{"type":176}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":176},{"name":"E","type":141}],"path":["Result"]}},{"id":176,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":139}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":139}],"path":["Result"]}},{"id":177,"type":{"def":{"variant":{"variants":[{"fields":[{"type":11}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":11},{"name":"E","type":141}],"path":["Result"]}},{"id":178,"type":{"def":{"variant":{"variants":[{"fields":[{"type":87}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":87},{"name":"E","type":141}],"path":["Result"]}},{"id":179,"type":{"def":{"variant":{"variants":[{"fields":[{"type":180}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":180},{"name":"E","type":141}],"path":["Result"]}},{"id":180,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":140}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":140}],"path":["Result"]}},{"id":181,"type":{"def":{"variant":{"variants":[{"fields":[{"type":182}],"index":0,"name":"Ok"},{"fields":[{"type":141}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":182},{"name":"E","type":141}],"path":["Result"]}},{"id":182,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":183}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":183}],"path":["Result"]}},{"id":183,"type":{"def":{"variant":{"variants":[{"fields":[{"type":37,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":37,"typeName":"String"}],"index":2,"name":"PermissionError"}]}},"path":["pendzl_contracts","upgradeability","set_code_hash","SetCodeHashError"]}},{"id":184,"type":{"def":{"variant":{"variants":[{"fields":[{"type":48,"typeName":"Timestamp"},{"type":48,"typeName":"Timestamp"}],"index":0,"name":"Constant"},{"fields":[{"type":185,"typeName":"ExternalTimeConstraint"}],"index":1,"name":"External"}]}},"path":["pendzl_contracts","finance","general_vest","VestingSchedule"]}},{"id":185,"type":{"def":{"composite":{"fields":[{"name":"account","type":9,"typeName":"AccountId"},{"name":"fallback_values","type":168,"typeName":"(Timestamp, Timestamp)"}]}},"path":["pendzl_contracts","finance","general_vest","ExternalTimeConstraint"]}},{"id":186,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_governor.json b/artifacts/abax_governor.json new file mode 100644 index 0000000..4fad336 --- /dev/null +++ b/artifacts/abax_governor.json @@ -0,0 +1,7101 @@ +{ + "source": { + "hash": "0x931b0e6d44c79a7e7ae4d2fccb4d45952af28ab2eea79dad4e7f5348d4765be1", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_governor", + "version": "1.0.0", + "authors": ["[your_name] <[your_email]>"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "vester", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "foundation", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "parameters_admin", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "label": "unstake_period", + "type": { + "displayName": ["Timestamp"], + "type": 48 + } + }, + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 37 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 37 + } + }, + { + "label": "rules", + "type": { + "displayName": ["VotingRules"], + "type": 50 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 135 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [ + " This is AbaxGovernor Contract implementation.", + " It allows for staking PSP22 token (Abax token) in exchange for PSP22Vault shares (votes).", + " The shares are non-transferrable.", + " Withdrawing assets is possible only after unstake period - unstaking is handled by GeneralVest contract.", + "", + " The contract allows for proposing and voting on proposals by implementing Govern trait.", + " To create a proposal, the proposer must have enough votes (shares) to meet the minimum stake part.", + " While proposal is created the proposer must deposit a part of his votes. This votes are returned when proposal is finalized unless the proposal is finalized with 'DefeatedWithSlash' status.", + " One share is one vote.", + " Proposal has 3 periods of voting: Intial, Flat and Final which influence the minimum votes to finalize.", + " If proposal was finalized in Final phase, it's possible to force unstake an account that didn't vote on that proposal.", + "", + " Contract is using pendzl Access Control to manage access to the messages" + ], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 15 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 186 + }, + "hash": { + "displayName": ["Hash"], + "type": 70 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 48 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "proposal_hash", + "type": { + "displayName": ["ProposalHash"], + "type": 70 + } + }, + { + "docs": [], + "indexed": true, + "label": "proposal", + "type": { + "displayName": ["Proposal"], + "type": 142 + } + } + ], + "docs": [], + "label": "ProposalCreated", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0xcd14879a051c7c587f001e1d438c0b137fd1c2a51d830f5fdcd29cfc04a29121" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "status", + "type": { + "displayName": ["ProposalStatus"], + "type": 90 + } + } + ], + "docs": [], + "label": "ProposalFinalized", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0x5f5b16027cc992a83e3eedcdd887ffcbb490ffc9afb4bc3623c1e2cb54921ee4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "docs": [], + "label": "ProposalExecuted", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0xddfe7f295d992235f6a7383cea3c5a7721049996fad19b261039a5fd67ed5189" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "vote", + "type": { + "displayName": ["Vote"], + "type": 98 + } + } + ], + "docs": [], + "label": "VoteCasted", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0x2ebcdce502f12523e0670f6e293cb7ad129d9aa48f5522ae3a294e822656a4d8" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "rules", + "type": { + "displayName": ["VotingRules"], + "type": 50 + } + } + ], + "docs": [], + "label": "VotingRulesChanged", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0x34110cc3e5aa20ebef66d61de2e100ad52e013b1c4ad6b1582ea4aa568fc945a" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "unstake_period", + "type": { + "displayName": ["Timestamp"], + "type": 48 + } + } + ], + "docs": [], + "label": "UnstakePeriodChanged", + "module_path": "abax_governor::modules::govern::traits::events", + "signature_topic": "0x9157abbc52e3dead04f1509d5cffd9f18b51cf6fe2838565610edde16849ce20" + }, + { + "args": [ + { + "docs": ["The account that triggered the release."], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account to which the tokens are sent."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when vested tokens are released"], + "label": "TokenReleased", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "creator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens will be sent."], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "docs": [], + "indexed": false, + "label": "schedule", + "type": { + "displayName": ["VestingSchedule"], + "type": 184 + } + } + ], + "docs": ["Emitted when general_vest schedule is created"], + "label": "VestingScheduled", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "docs": [], + "indexed": false, + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Represents a deposit event in the Vault contract."], + "label": "Deposit", + "module_path": "pendzl_contracts::token::psp22::extensions::vault", + "signature_topic": "0xa5e5b1f0631e5f5290989092ca16eea75c92d1c382b59c7c1fd4f0bb971b5731" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "docs": [], + "indexed": false, + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Represents a withdraw event in the Vault contract."], + "label": "Withdraw", + "module_path": "pendzl_contracts::token::psp22::extensions::vault", + "signature_topic": "0x32d4a91f012e838e1412f7062209d065f1a86c43aeec8cb04d5e71d0da155f6e" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 141 + }, + "messages": [ + { + "args": [ + { + "label": "proposal", + "type": { + "displayName": ["Proposal"], + "type": 142 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovern::propose", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 147 + }, + "selector": "0xfb78be0a" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovern::finalize", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0x66d3e5f6" + }, + { + "args": [ + { + "label": "proposal", + "type": { + "displayName": ["Proposal"], + "type": 142 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovern::execute", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0xa4417227" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + }, + { + "label": "vote", + "type": { + "displayName": ["Vote"], + "type": 98 + } + }, + { + "label": "_reason", + "type": { + "displayName": ["Vec"], + "type": 146 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovern::vote", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0x02a24471" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovern::force_unstake", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0x611e3405" + }, + { + "args": [ + { + "label": "rules", + "type": { + "displayName": ["VotingRules"], + "type": 50 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernManage::change_voting_rules", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0xace48fbf" + }, + { + "args": [ + { + "label": "period", + "type": { + "displayName": ["Timestamp"], + "type": 48 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernManage::change_unstake_period", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0x6640e3db" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::vester", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 149 + }, + "selector": "0x7f455b75" + }, + { + "args": [ + { + "label": "proposal", + "type": { + "displayName": ["Proposal"], + "type": 142 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::hash", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 150 + }, + "selector": "0xa757fb12" + }, + { + "args": [ + { + "label": "description", + "type": { + "displayName": ["String"], + "type": 37 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::hash_description", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 150 + }, + "selector": "0x5fab4200" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::hash_by_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 151 + }, + "selector": "0x118785e1" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::rules", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 153 + }, + "selector": "0x2b287936" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::status", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 154 + }, + "selector": "0x25459c14" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::minimum_to_finalize", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0xed144b89" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::state", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 158 + }, + "selector": "0x75267b5f" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::vote_of_for", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 160 + }, + "selector": "0xee1d4716" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::last_force_unstakes", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 162 + }, + "selector": "0x33481a19" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::last_stake_timestamp", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 164 + }, + "selector": "0xdc8a1e9a" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::active_proposals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 165 + }, + "selector": "0xd61345c3" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::finalized_proposals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 165 + }, + "selector": "0x5b1a9527" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::executed_proposals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 165 + }, + "selector": "0x3f02171d" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxGovernView::next_proposal_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 165 + }, + "selector": "0xd9b0842a" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::description_url_by_proposal_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 166 + }, + "selector": "0x3a9aa8b0" + }, + { + "args": [ + { + "label": "proposal_id", + "type": { + "displayName": ["ProposalId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxGovernView::description_hash_by_proposal_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 151 + }, + "selector": "0xf8858719" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "ProvideVestScheduleInfo::get_waiting_and_vesting_durations", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 167 + }, + "selector": "0x078994bf" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 146 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 146 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Vault::asset", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 149 + }, + "selector": "0x6b787d8e" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Vault::total_assets", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x01ecb508" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "round", + "type": { + "displayName": ["Rounding"], + "type": 172 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::convert_to_shares", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0xc3722f26" + }, + { + "args": [ + { + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "round", + "type": { + "displayName": ["Rounding"], + "type": 172 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::convert_to_assets", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x69dbfb3d" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::max_deposit", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x7db5d0b0" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::max_mint", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x50e36dc6" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::max_withdraw", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x8acacf75" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::max_redeem", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 169 + }, + "selector": "0x248643a9" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::preview_deposit", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x258f56ea" + }, + { + "args": [ + { + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::preview_mint", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x585ae483" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::preview_withdraw", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x3970357e" + }, + { + "args": [ + { + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::preview_redeem", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x076204e6" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::deposit", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 175 + }, + "selector": "0xe6a168cb" + }, + { + "args": [ + { + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 175 + }, + "selector": "0xbe36c73a" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::withdraw", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 175 + }, + "selector": "0x7fe8757a" + }, + { + "args": [ + { + "label": "shares", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Vault::redeem", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 175 + }, + "selector": "0xb997ec8f" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 166 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 166 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 177 + }, + "selector": "0x7271b782" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 178 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 165 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 179 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 179 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 179 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 179 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "set_code_hash", + "type": { + "displayName": ["Hash"], + "type": 70 + } + } + ], + "default": false, + "docs": [], + "label": "SetCodeHash::set_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 181 + }, + "selector": "0xabb60cdf" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access_control" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 15 + } + }, + "root_key": "0xc629684f", + "ty": 16 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 15 + } + }, + "root_key": "0xffbbddfc", + "ty": 20 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 15 + } + }, + "root_key": "0x7c996051", + "ty": 24 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x4f255229", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderPSP22" + } + }, + "root_key": "0x4f255229", + "ty": 29 + } + }, + "name": "asset" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x5e6a9f46", + "ty": 11 + } + }, + "root_key": "0x5e6a9f46", + "ty": 33 + } + }, + "name": "underlying_decimals" + } + ], + "name": "PSP22VaultData" + } + }, + "name": "vault" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x6209318b", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x6209318b", + "ty": 37 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x6209318b", + "ty": 38 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd6e34d4a", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd6e34d4a", + "ty": 37 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd6e34d4a", + "ty": 43 + } + }, + "name": "symbol" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x74a13bdf", + "ty": 47 + } + }, + "name": "minimum_stake_part_e3" + }, + { + "layout": { + "leaf": { + "key": "0x74a13bdf", + "ty": 47 + } + }, + "name": "proposer_deposit_part_e3" + }, + { + "layout": { + "leaf": { + "key": "0x74a13bdf", + "ty": 48 + } + }, + "name": "initial_period" + }, + { + "layout": { + "leaf": { + "key": "0x74a13bdf", + "ty": 48 + } + }, + "name": "flat_period" + }, + { + "layout": { + "leaf": { + "key": "0x74a13bdf", + "ty": 48 + } + }, + "name": "final_period" + } + ], + "name": "VotingRules" + } + }, + "root_key": "0x74a13bdf", + "ty": 49 + } + }, + "name": "rules" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x252db409", + "ty": 0 + } + }, + "root_key": "0x252db409", + "ty": 54 + } + }, + "name": "active_proposals" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xeba00e3f", + "ty": 0 + } + }, + "root_key": "0xeba00e3f", + "ty": 58 + } + }, + "name": "finalized_proposals" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x5da67cdf", + "ty": 0 + } + }, + "root_key": "0x5da67cdf", + "ty": 62 + } + }, + "name": "executed_proposals" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x65ac0c42", + "ty": 0 + } + }, + "root_key": "0x65ac0c42", + "ty": 66 + } + }, + "name": "next_proposal_id" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xbd5c471e", + "ty": 70 + } + }, + "root_key": "0xbd5c471e", + "ty": 71 + } + }, + "name": "proposal_id_to_hash" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xbbd26eaa", + "ty": 37 + } + }, + "root_key": "0xbbd26eaa", + "ty": 75 + } + }, + "name": "proposal_id_to_description_url" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x912f026f", + "ty": 70 + } + }, + "root_key": "0x912f026f", + "ty": 79 + } + }, + "name": "proposal_id_to_description_hash" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x787424d4", + "ty": 0 + } + }, + "root_key": "0x787424d4", + "ty": 83 + } + }, + "name": "proposal_hash_to_id" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "enum": { + "dispatchKey": "0x90a41dac", + "name": "ProposalStatus", + "variants": { + "0": { + "fields": [], + "name": "Active" + }, + "1": { + "fields": [], + "name": "Defeated" + }, + "2": { + "fields": [], + "name": "DefeatedWithSlash" + }, + "3": { + "fields": [], + "name": "Succeeded" + }, + "4": { + "fields": [], + "name": "Executed" + } + } + } + }, + "name": "status" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 87 + } + }, + "name": "force_unstake_possible" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 9 + } + }, + "name": "proposer" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 48 + } + }, + "name": "start" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 15 + } + }, + "name": "votes_at_start" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 15 + } + }, + "name": "counter_at_start" + }, + { + "layout": { + "enum": { + "dispatchKey": "0x90a41dac", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 48 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "finalized" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 15 + } + }, + "name": "votes_for" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 15 + } + }, + "name": "votes_against" + }, + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 15 + } + }, + "name": "votes_against_with_slash" + }, + { + "layout": { + "enum": { + "dispatchKey": "0x90a41dac", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x90a41dac", + "ty": 48 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "earliest_execution" + } + ], + "name": "ProposalState" + } + }, + "root_key": "0x90a41dac", + "ty": 88 + } + }, + "name": "state" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "enum": { + "dispatchKey": "0x8af2b1f9", + "name": "Vote", + "variants": { + "0": { + "fields": [], + "name": "Agreed" + }, + "1": { + "fields": [], + "name": "Disagreed" + }, + "2": { + "fields": [], + "name": "DisagreedWithProposerSlashing" + } + } + } + }, + "name": "vote" + }, + { + "layout": { + "leaf": { + "key": "0x8af2b1f9", + "ty": 15 + } + }, + "name": "amount" + } + ], + "name": "UserVote" + } + }, + "root_key": "0x8af2b1f9", + "ty": 95 + } + }, + "name": "votes" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xdab1e4b7", + "ty": 48 + } + }, + "root_key": "0xdab1e4b7", + "ty": 102 + } + }, + "name": "last_stake_timestamp" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x52def0f2", + "ty": 0 + } + }, + "root_key": "0x52def0f2", + "ty": 106 + } + }, + "name": "last_force_unstake" + } + ], + "name": "GovernData" + } + }, + "name": "govern" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xcf2fb119", + "ty": 15 + } + }, + "root_key": "0xcf2fb119", + "ty": 110 + } + }, + "name": "counter" + } + ], + "name": "VaultCounterData" + } + }, + "name": "counter" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x04ed54b9", + "ty": 15 + } + }, + "root_key": "0x04ed54b9", + "ty": 114 + } + }, + "name": "locked" + } + ], + "name": "LockedSharesData" + } + }, + "name": "lock" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x5cbc7d7c", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderGeneralVest" + } + }, + "root_key": "0x5cbc7d7c", + "ty": 118 + } + }, + "name": "general_vester" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x19d8f846", + "ty": 48 + } + }, + "root_key": "0x19d8f846", + "ty": 122 + } + }, + "name": "unstake_period" + } + ], + "name": "UnstakeData" + } + }, + "name": "unstake" + } + ], + "name": "AbaxGovernor" + } + }, + "root_key": "0x00000000", + "ty": 126 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 17 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 18 + }, + { + "name": "R", + "type": 19 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 21 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 22 + }, + { + "name": "R", + "type": 23 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 25 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 26 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 25, + "type": { + "def": { + "tuple": [9, 9] + } + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 27 + }, + { + "name": "R", + "type": 28 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 30 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 31 + }, + { + "name": "R", + "type": 32 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 11 + }, + { + "name": "KeyType", + "type": 34 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 35 + }, + { + "name": "R", + "type": 36 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 38, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 39 + }, + { + "name": "KeyType", + "type": 40 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 39, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 37 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 37 + } + ], + "path": ["Option"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 41 + }, + { + "name": "R", + "type": 42 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 42, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 39 + }, + { + "name": "KeyType", + "type": 44 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 44, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 45 + }, + { + "name": "R", + "type": 46 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 46, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 47, + "type": { + "def": { + "primitive": "u16" + } + } + }, + { + "id": 48, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 49, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 50 + }, + { + "name": "KeyType", + "type": 51 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 50, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "minimum_stake_part_e3", + "type": 47, + "typeName": "u16" + }, + { + "name": "proposer_deposit_part_e3", + "type": 47, + "typeName": "u16" + }, + { + "name": "initial_period", + "type": 48, + "typeName": "Timestamp" + }, + { + "name": "flat_period", + "type": 48, + "typeName": "Timestamp" + }, + { + "name": "final_period", + "type": 48, + "typeName": "Timestamp" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "VotingRules"] + } + }, + { + "id": 51, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 52 + }, + { + "name": "R", + "type": 53 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 52, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 53, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 54, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 55 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 55, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 56 + }, + { + "name": "R", + "type": 57 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 56, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 57, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 58, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 59 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 59, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 60 + }, + { + "name": "R", + "type": 61 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 60, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 61, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 62, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 63 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 63, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 64 + }, + { + "name": "R", + "type": 65 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 64, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 65, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 66, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 67 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 67, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 68 + }, + { + "name": "R", + "type": 69 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 68, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 69, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 70, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 71, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 70 + }, + { + "name": "KeyType", + "type": 72 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 72, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 73 + }, + { + "name": "R", + "type": 74 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 73, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 74, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 75, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 37 + }, + { + "name": "KeyType", + "type": 76 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 76, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 77 + }, + { + "name": "R", + "type": 78 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 77, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 78, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 79, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 70 + }, + { + "name": "KeyType", + "type": 80 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 80, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 81 + }, + { + "name": "R", + "type": 82 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 81, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 82, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 83, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 70 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 84 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 84, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 85 + }, + { + "name": "R", + "type": 86 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 85, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 86, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 87, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 88, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 89 + }, + { + "name": "KeyType", + "type": 92 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 89, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "status", + "type": 90, + "typeName": "ProposalStatus" + }, + { + "name": "force_unstake_possible", + "type": 87, + "typeName": "bool" + }, + { + "name": "proposer", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "start", + "type": 48, + "typeName": "Timestamp" + }, + { + "name": "votes_at_start", + "type": 15, + "typeName": "Balance" + }, + { + "name": "counter_at_start", + "type": 15, + "typeName": "Balance" + }, + { + "name": "finalized", + "type": 91, + "typeName": "Option" + }, + { + "name": "votes_for", + "type": 15, + "typeName": "Balance" + }, + { + "name": "votes_against", + "type": 15, + "typeName": "Balance" + }, + { + "name": "votes_against_with_slash", + "type": 15, + "typeName": "Balance" + }, + { + "name": "earliest_execution", + "type": 91, + "typeName": "Option" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "ProposalState"] + } + }, + { + "id": 90, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Active" + }, + { + "index": 1, + "name": "Defeated" + }, + { + "index": 2, + "name": "DefeatedWithSlash" + }, + { + "index": 3, + "name": "Succeeded" + }, + { + "index": 4, + "name": "Executed" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "ProposalStatus"] + } + }, + { + "id": 91, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 48 + } + ], + "path": ["Option"] + } + }, + { + "id": 92, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 93 + }, + { + "name": "R", + "type": 94 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 93, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 94, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 95, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 96 + }, + { + "name": "V", + "type": 97 + }, + { + "name": "KeyType", + "type": 99 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 96, + "type": { + "def": { + "tuple": [9, 0] + } + } + }, + { + "id": 97, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "vote", + "type": 98, + "typeName": "Vote" + }, + { + "name": "amount", + "type": 15, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "UserVote"] + } + }, + { + "id": 98, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Agreed" + }, + { + "index": 1, + "name": "Disagreed" + }, + { + "index": 2, + "name": "DisagreedWithProposerSlashing" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "Vote"] + } + }, + { + "id": 99, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 100 + }, + { + "name": "R", + "type": 101 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 100, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 101, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 102, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 48 + }, + { + "name": "KeyType", + "type": 103 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 103, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 104 + }, + { + "name": "R", + "type": 105 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 104, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 105, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 106, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 107 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 107, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 108 + }, + { + "name": "R", + "type": 109 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 108, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 109, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 110, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 111 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 111, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 112 + }, + { + "name": "R", + "type": 113 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 112, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 113, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 114, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 115 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 115, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 116 + }, + { + "name": "R", + "type": 117 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 116, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 117, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 118, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 119 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 119, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 120 + }, + { + "name": "R", + "type": 121 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 120, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 121, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 122, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 48 + }, + { + "name": "KeyType", + "type": 123 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 123, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 124 + }, + { + "name": "R", + "type": 125 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 124, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 125, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 126, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access_control", + "type": 127, + "typeName": ",>>::Type" + }, + { + "name": "psp22", + "type": 128, + "typeName": ",>>::Type" + }, + { + "name": "vault", + "type": 129, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 130, + "typeName": ",>>::Type" + }, + { + "name": "govern", + "type": 131, + "typeName": ",>>::Type" + }, + { + "name": "counter", + "type": 132, + "typeName": ",>>::Type" + }, + { + "name": "lock", + "type": 133, + "typeName": ",>>::Type" + }, + { + "name": "unstake", + "type": 134, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_governor", "abax_governor", "AbaxGovernor"] + } + }, + { + "id": 127, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 128, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 16, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 20, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 24, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 129, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "asset", + "type": 29, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n673747853u32, ()>,>>::Type" + }, + { + "name": "underlying_decimals", + "type": 33, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n332803272u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "vault", "implementation", "PSP22VaultData"] + } + }, + { + "id": 130, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 38, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 43, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "vault_implementation", "PSP22MetadataData"] + } + }, + { + "id": 131, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "rules", + "type": 49, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<577196433u32, ()\n>,>>::Type" + }, + { + "name": "active_proposals", + "type": 54, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1575632642u32,\n()>,>>::Type" + }, + { + "name": "finalized_proposals", + "type": 58, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<873313438u32,\n()>,>>::Type" + }, + { + "name": "executed_proposals", + "type": 62, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1984369469u32, ()>,>>::Type" + }, + { + "name": "next_proposal_id", + "type": 66, + "typeName": "<::ink::storage::Lazy> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n574869580u32, ()>,>>::Type" + }, + { + "name": "proposal_id_to_hash", + "type": 71, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2822849311u32, ()>,>>::Type" + }, + { + "name": "proposal_id_to_description_url", + "type": 75, + "typeName": "> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n489261630u32, ()>,>>::Type" + }, + { + "name": "proposal_id_to_description_hash", + "type": 79, + "typeName": "> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1346582127u32, ()>,>>::Type" + }, + { + "name": "proposal_hash_to_id", + "type": 83, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1527090195u32, ()>,>>::Type" + }, + { + "name": "state", + "type": 88, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1432459859u32,\n()>,>>::Type" + }, + { + "name": "votes", + "type": 95, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1268214756u32,\n()>,>>::Type" + }, + { + "name": "last_stake_timestamp", + "type": 102, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n3086900163u32, ()>,>>::Type" + }, + { + "name": "last_force_unstake", + "type": 106, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1555622964u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "storage", "govern_storage_item", "GovernData"] + } + }, + { + "id": 132, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "counter", + "type": 110, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<2879836648u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "storage", "vault_counter_storage_item", "VaultCounterData"] + } + }, + { + "id": 133, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "locked", + "type": 114, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1980085846u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "storage", "locked_shares_storage_item", "LockedSharesData"] + } + }, + { + "id": 134, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "general_vester", + "type": 118, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3823152085u32, ()>,>>::Type" + }, + { + "name": "unstake_period", + "type": 122, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1033429691u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "storage", "unstake_storage_item", "UnstakeData"] + } + }, + { + "id": 135, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 136 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 136 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 136, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 137 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 137 + } + ], + "path": ["Result"] + } + }, + { + "id": 137, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 138, + "typeName": "MathError" + } + ], + "index": 0, + "name": "MathError" + }, + { + "fields": [ + { + "type": 139, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "index": 2, + "name": "InsuficientVotes" + }, + { + "index": 3, + "name": "ProposalAlreadyExists" + }, + { + "index": 4, + "name": "ProposalDoesntExist" + }, + { + "index": 5, + "name": "WrongStatus" + }, + { + "index": 6, + "name": "TooEarlyToExecuteProposal" + }, + { + "index": 7, + "name": "FinalizeCondition" + }, + { + "fields": [ + { + "type": 37, + "typeName": "String" + } + ], + "index": 8, + "name": "UnderlyingTransactionReverted" + }, + { + "index": 9, + "name": "CantForceUnstake" + }, + { + "fields": [ + { + "type": 140, + "typeName": "AccessControlError" + } + ], + "index": 10, + "name": "AccessControlError" + }, + { + "index": 11, + "name": "UnstakeShorterThanVotingPeriod" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "errors", "GovernError"] + } + }, + { + "id": 138, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 139, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 37, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 37, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 140, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 141, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 142, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "transactions", + "type": 143, + "typeName": "Vec" + }, + { + "name": "description_hash", + "type": 70, + "typeName": "Hash" + }, + { + "name": "description_url", + "type": 37, + "typeName": "String" + }, + { + "name": "earliest_execution", + "type": 91, + "typeName": "Option" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "Proposal"] + } + }, + { + "id": 143, + "type": { + "def": { + "sequence": { + "type": 144 + } + } + } + }, + { + "id": 144, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "callee", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "selector", + "type": 145, + "typeName": "[u8; 4]" + }, + { + "name": "input", + "type": 146, + "typeName": "Vec" + }, + { + "name": "transferred_value", + "type": 15, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_governor", "modules", "govern", "traits", "structs", "Transaction"] + } + }, + { + "id": 145, + "type": { + "def": { + "array": { + "len": 4, + "type": 11 + } + } + } + }, + { + "id": 146, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 147, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 148 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 148 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 148, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 137 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 137 + } + ], + "path": ["Result"] + } + }, + { + "id": 149, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 150, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 70 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 70 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 151, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 152 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 152 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 152, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 70 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 70 + } + ], + "path": ["Option"] + } + }, + { + "id": 153, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 50 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 50 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 154, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 155 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 155 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 155, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 90 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 90 + } + ], + "path": ["Option"] + } + }, + { + "id": 156, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 157 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 157 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 157, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 15 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + } + ], + "path": ["Option"] + } + }, + { + "id": 158, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 159 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 159 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 159, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 89 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 89 + } + ], + "path": ["Option"] + } + }, + { + "id": 160, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 161 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 161 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 161, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 97 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 97 + } + ], + "path": ["Option"] + } + }, + { + "id": 162, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 163 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 163 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 163, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 164, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 91 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 91 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 165, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 166, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 39 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 39 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 167, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 168 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 168 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 168, + "type": { + "def": { + "tuple": [48, 48] + } + } + }, + { + "id": 169, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 170, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 171 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 171 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 171, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 139 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 139 + } + ], + "path": ["Result"] + } + }, + { + "id": 172, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Up" + }, + { + "index": 1, + "name": "Down" + } + ] + } + }, + "path": ["pendzl_lang", "math", "operations", "Rounding"] + } + }, + { + "id": 173, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 174 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 174 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 174, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 138 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 138 + } + ], + "path": ["Result"] + } + }, + { + "id": 175, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 176 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 176 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 176, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 139 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 139 + } + ], + "path": ["Result"] + } + }, + { + "id": 177, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 11 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 11 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 178, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 87 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 87 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 179, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 180 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 180 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 180, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 140 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 140 + } + ], + "path": ["Result"] + } + }, + { + "id": 181, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 182 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 141 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 182 + }, + { + "name": "E", + "type": 141 + } + ], + "path": ["Result"] + } + }, + { + "id": 182, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 183 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 183 + } + ], + "path": ["Result"] + } + }, + { + "id": 183, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 37, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "SetCodeHashFailed" + }, + { + "fields": [ + { + "type": 37, + "typeName": "String" + } + ], + "index": 2, + "name": "PermissionError" + } + ] + } + }, + "path": ["pendzl_contracts", "upgradeability", "set_code_hash", "SetCodeHashError"] + } + }, + { + "id": 184, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 48, + "typeName": "Timestamp" + }, + { + "type": 48, + "typeName": "Timestamp" + } + ], + "index": 0, + "name": "Constant" + }, + { + "fields": [ + { + "type": 185, + "typeName": "ExternalTimeConstraint" + } + ], + "index": 1, + "name": "External" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingSchedule"] + } + }, + { + "id": 185, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "fallback_values", + "type": 168, + "typeName": "(Timestamp, Timestamp)" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "ExternalTimeConstraint"] + } + }, + { + "id": 186, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_governor.wasm b/artifacts/abax_governor.wasm new file mode 100644 index 0000000..bdd5615 Binary files /dev/null and b/artifacts/abax_governor.wasm differ diff --git a/artifacts/abax_inflator.contract b/artifacts/abax_inflator.contract new file mode 100644 index 0000000..0680f2f --- /dev/null +++ b/artifacts/abax_inflator.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x3ab6536a97591516cf43e0858e79ac51acf8dfe808a497a6fe84351f5cf832a4","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000015b0e60027f7f0060037f7f7f017f60037f7f7f0060017f0060027f7f017f60057f7e7e7e7e0060047f7f7f7f0060047f7f7f7f017f60047f7e7e7f0060017f017f60000060087f7f7e7f7f7f7f7f017f6000017f60057f7f7f7f7f0002ed010c057365616c310b6765745f73746f726167650007057365616c3005696e7075740000057365616c310463616c6c000b057365616c300d6465706f7369745f6576656e740006057365616c320b7365745f73746f726167650007057365616c310d636c6561725f73746f726167650004057365616c3110636f6e7461696e735f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000203656e76066d656d6f72790201021003454401010101080508050500000100040100000000030c00090000000200000300000303000a010a0000090000020000030000000000000302000001040502000d00010604060616037f01418080040b7f0041a087050b7f00419c87050b0711020463616c6c002e066465706c6f7900300ac7a501442b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b830102017f017e230041106b220424000240200341c000714504402003450d0120022003413f71ad2205862001410020036b413f71ad88842102200120058621010c010b20012003413f71ad862102420021010b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000b9b0102017f067e230041106b220524002005200342ffffffff0f832206200142ffffffff0f8322077e22082007200342208822097e220720062001422088220a7e7c22064220867c220b37030020052008200b56ad2009200a7e2006200754ad4220862006422088847c7c200120047e200220037e7c7c370308200529030021012000200541086a29030037030820002001370300200541106a24000b830102017f017e230041106b220424000240200341c000714504402003450d012002410020036b413f71ad8620012003413f71ad220588842101200220058821020c010b20022003413f71ad882101420021020b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000bd10502057e037f230041206b220a24000240024002402004504504402002502001200354200220045420022004511b720d01200a41106a20032004200479a7200279a76b220b41ff0071100f4201200b413f71ad862109200a41186a2903002107200a29031021080340200220077d2001200854ad7d2205420059044020062009842106200120087d2201200354200420055620042005511b0d04200521020b2007423f86200842018884210820094201882109200742018821070c000b000b02400240200250450440200220035a044020022003510d0220022003822105200220038021092003428080808010540440200542208620014220888422022003802204422086200142ffffffff0f8320022003824220868422012003808421062004422088200984210920012003822101420021050c070b2001200354200420055620042005511b0d032004423f8620034201888421072003423f862108428080808080808080807f210203400240200520077d2001200854ad7d22044200590440200120087d2101200220068421062004500d01200421050b2007423f86200842018884210820024201882102200742018821070c010b0b2001200380200684210642002105200120038221010c060b200a20032004413f200379a7220b200279a7220c6b41406b200b200c461b220b100f4201200b413f71ad862105200a41086a2903002107200a29030021084200210403400240200220077d2001200854ad7d22064200590440200120087d2101200420058421042006500d01200621020b2007423f86200842018884210820054201882105200742018821070c010b0b2001200380200484210642002105200120038221010c040b20012003802106200120038221010c030b2001200280210642012109200120028221010c030b0c020b200221050b420021090b2000200137031020002006370300200041186a200537030020002009370308200a41206a24000b3b01017f230041206b22052400200520012002200320041012200529030021012000200541086a29030037030820002001370300200541206a24000ba40201037f230041206b22022400200241106a2001101541012103024020022d00100d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210160d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410160d01200228021c220341027621012003418080044921030c010b200241086a2001103f20022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000b3f01027f230041106b22022400200241003a000f200020012002410f6a4101104b2201047f41000520022d000f0b3a0001200020013a0000200241106a24000b4201017f20002d00042103200041003a00042003450440200028020020012002104b0f0b2001200041056a2d00003a00002000280200200141016a200241016b104b0b8a0101047f230041206b22022400200241186a22034200370300200241106a22044200370300200241086a22054200370300200242003703002000027f200120024120104b45044020002002290300370001200041196a2003290300370000200041116a2004290300370000200041096a200529030037000041000c010b41010b3a0000200241206a24000bcd0201057f230041106b22032400230041106b220024002000200136020c200041bc8104360208230041206b220124002001428080013702182001418d8704360214200041086a200141146a2205103c0240024020012802182206200128021c2202490d00200128021421042001200620026b220636021420042002200220046a2202200510002104200620012802142205490d000240024020040e0400020201020b2001200536021820012002360214200141086a200141146a103f2001280208200128021872450440200128020c210220004101360200200020023602040c030b20004102360200200041103a00040c020b200041003602000c010b000b200141206a2400200028020022014102460440000b200341086a2202200028020436020420022001360200200041106a240020032802082100200328020c2101200341106a24002001410020001b0b2800027f200041306a2200200120021044450440410120002001418080041044450d011a0b41030b0b0b00200120002d000010480bfe0101037f230041e0006b22022400200241106a2001103f0240200228021045044020022802142103200241086a20011015024020022d00080d000240024020022d000922040e020100020b2002413f6a2001101720022d003f0d01200241306a200241d8006a290000370300200241286a200241d0006a290000370300200241206a200241c8006a290000370300200220022900403703180b20002002290318370005200020043a0004200020033602002000411d6a200241306a290300370000200041156a200241286a2903003700002000410d6a200241206a2903003700000c020b200041023a00040c010b200041023a00040b200241e0006a24000b2401017f230041106b220224002002200136020c2002410c6a2000103b200241106a24000b3301017f230041106b22022400200220002903003703002002200041086a2903003703082001200241101047200241106a24000bce0101057f230041406a220124002001418080013602102001418d870436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a10082004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141176a200141386a101720012d00170440000b2000200141196a290000370001200041096a200141216a290000370000200041116a200141296a290000370000200041186a200141306a290000370000200020012d00183a0000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a10092003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b100020002001280204200128020810250b1d01017f410f21012000410e4d047f200041ac81046a2d000005410f0b0b4301017f20002802042102200120002802082200101c200004402002200041226c6a21000340200220011037200241206a20011031200241226a22022000470d000b0b0b4801027f230041106b22022400200241003b010e024020012002410e6a4102104b45044020022f010e21010c010b410121030b200020013b0102200020033b0100200241106a24000b5401017f02402001450440410221020c010b0240200141c3878f1e4b0d00200141226c22024100480d00418c87042d00001a41022002104d22020d010b000b2000410036020820002002360204200020013602000b4001017f230041106b22032400200341046a2002102420032802082001200241226c100b1a200041086a200236020020002003290204370200200341106a24000b9f07020a7f027e230041206b22062400200641086a200110140240024020062802080d00200628020c220420012802044b0d00230041106b220224000240024002402004450440410121030c010b200441004e2203450d012002200320044101104c20022802002203450d010b2006200336020420062004360200200241106a24000c010b000b200628020021092001200628020422012004104b200941808080807846720d00200641146a2207027f02402004450d00200441076b22024100200220044d1b210a200141036a417c7120016b210b41002102034002400240024002400240024002400240027e0240024002400240200120026a2d000022034118744118752208410048044042808080808020210c428080808010210d2003418c85046a2d000041026b0e030601020a0b200b20026b4103710d0a2002200a4f0d0b0340200120026a220341046a280200200328020072418081828478710d0c200241086a2202200a490d000b0c0b0b4200210c200241016a220520044f0d05200120056a2c00002105024002400240200341e001470440200341ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520054140480d030c050b200541607141a07f460d020c040b2005419f7f4a0d030c010b200541404e0d020b4200210d200241026a220320044f0d08200120036a2c000041bf7f4c0d070c020b4200210c200241016a220520044f0d04200120056a2c000021050240024002400240200341f0016b0e050100000002000b2008410f6a41ff017141024b200541404e720d030c020b200541f0006a41ff017141304f0d020c010b2005418f7f4a0d010b200241026a220320044f0d04200120036a2c000041bf7f4a0d014200210d200241036a220320044f0d07200120036a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210c428080808010210d0c040b200241016a22032004490d014200210c0b4200210d0c020b200120036a2c000041bf7f4a0d010b200341016a21020c030b2007200c2002ad84200d8437020441010c050b200241016a21020c010b200220044f0d000340200120026a2c00004100480d012004200241016a2202470d000b0c020b20022004490d000b0b20072001360204200741086a200436020041000b36020020062802144504402000200436020820002009ad2001ad422086843702000c020b20004180808080783602000c010b20004180808080783602000b200641206a24000bac0601117f230041f0006b22032400200341106a20011014024020032802104504402003411c6a200128020441226e22022003280214220a2002200a491b10240240200a0440200341d0006a210b0340200341cf006a2001101720032d004f0d02200341086a2001102320032f01080d0220032f010a210e200341406b220f200b41186a290000370300200341386a2210200b41106a290000370300200341306a2211200b41086a2900003703002003200b29000037032820032802242202200328021c4604402003411c6a210c230041206b220624000240200241016a220204404104200c28020022044101742205200220022005491b2202200241044d1b220d41226c2105200d41c4878f1e49410174210902402004450440200641003602180c010b200641023602182006200441226c36021c2006200c2802043602140b200641146a2102230041106b22042400200641086a2207027f024002402009044020054100480d01027f20022802040440200241086a2802002208450440200441086a200920054100104c20042802082102200428020c0c020b2002280200211220092005104d220204402002201220082005200520084b1b100b1a0b20050c010b230041106b22022400200241086a200920054100104c200228020c21082004200228020836020020042008360204200241106a24002004280200210220042802040b21082002044020072002360204200741086a200836020041000c040b20072009360204200741086a20053602000c020b20074100360204200741086a20053602000c010b200741003602040b41010b360200200441106a24002006280208450d01200628020c1a0b000b200628020c2102200c200d360200200c2002360204200641206a2400200328022421020b2003280220200241226c6a220220032903283701002002200e3b0120200241086a2011290300370100200241106a2010290300370100200241186a200f2903003701002003200328022441016a360224200a41016b220a0d000b0b2000200329021c370200200041086a200341246a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200341f0006a24000bbf0102037f017e230041306b220124002001428080013702182001418d8704360214200141146a4101103a200141086a22022001411c6a28020036020020012001290214370300200141e480041038200141286a2002280200360200200120012903003703202001200141206a1042200141106a2802002102200128020c21032001290200210420014100360208200120043702002000200110222001280208220020012802044b0440000b20032002200128020020001003200141306a24000bab0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b220024002000418080013602082000418d87043602040240418e8704027f20012802002203410d470440418d870441003a000041002003410c460d011a418e870441013a00002000410236020c2001200041046a102d200028020c220141818001490d02000b418d870441013a000041010b3a0000410221012000410236020c0b20022001104a000ba60101017f230041106b220224002002200036020c2002410c6a2802002102230041106b220024002000418080013602082000418d87043602040240418e8704027f20012d0000450440418d870441003a0000410020012d00014103460d011a418e870441013a00002000410236020c200141016a200041046a101a200028020c220041818001490d02000b418d870441013a000041010b3a0000410221000b20022000104a000b4d01027f230041106b220124002001410136020c2001410c6a28020021024100210120002802000440418d870441013a0000410121010b2001418d87046a20013a00002002200141016a104a000ba40101057f230041206b220124002001428080013702182001418d870436021441a88104200141146a22021032024020012802182205200128021c2203490d00200128021421042001410036021c2001200520036b3602182001200320046a3602142000410c6a200210372000200210222000412c6a20021031200128021c220020012802184b0d00200141086a20042003200128021420001049200141206a24000f0b000bdd0101027f0240024002400240024041012000280200220241086b2203200341044f1b41016b0e03010203000b200141001048200120002d000410480f0b20014101104802400240024002400240024002400240200241016b0e0701020304050607000b2001410010480c090b2001410110480f0b2001410210480f0b2001410310480f0b2001410410480f0b2001410510480c040b2001410610480f0b2001410710480f0b200141021048200041046a2001101a0f0b2001410310480f0b200041046a22002802042102200120002802082200101c20012002200010470b8d4d02167f1b7e230041b0036b220024000240024002400240101f41ff01714105470d002000418080013602a002418d8704200041a0026a2201100120002802a0022202418180014f0d0020002002360284012000418d870436028001200041003602a00220004180016a20014104104b0d0120002d00a302210320002d00a202210620002d00a10221010240027f024002400240024020002d00a002220241ee006b0e0401070702000b024002400240200241204704400240024020024132470440200241ca00460d06200241d000460d012002418301460d05200241a601460d02200241c101460d04200241ea0147200141ff017141f10147722006412447720d0d200341ff0171418a01460d090c0d0b200141ff017141f20147200641ed004772200341ff0171411247720d0c0c0a0b200141ff017141d50147200641e5014772200341ff0171410f47720d0b410121050c090b200141ff0171410d47200641f9014772200341ff017141ad0147720d0a200042003703a802200042003703a00220004180016a200041a0026a4110104b0d0a20002903a802221642208620002903a0022219422088842122201642208821162019a722024108762104410221050c080b200141ff017141c80147200641da014772200341ff017141ec0047720d09200041a0026a20004180016a102720002802a0022201418080808078460d092001410876210320002f00a502200041a7026a2d000041107472210420003502a802212220002d00a4022102410321050c070b200141ff017141d90147200641ac014772200341ff0171411847720d08200041a0026a20004180016a101b20002d00a40222024102460d08200041f8016a200041bc026a29020037030020004180026a200041c4026a280200360200200020002902b4023703f00120002f00a10220002d00a30241107472210320002f00a502200041a7026a2d0000411074722104200041b0026a350200211620002902a802212220002d00a0022101410421050c060b200141ff017141da01472006413b4772200341ff017141b20147720d07200041306a20004180016a103f20002802300d07200028023422014108762103410521050c050b200141ff017141c00147200641e2004772200341ff017141fd0147720d06200041a0026a20004180016a101b20002d00a40222024102460d06200041f8016a200041bc026a29020037030020004180026a200041c4026a280200360200200020002902b4023703f00120002f00a10220002d00a30241107472210320002f00a502200041a7026a2d0000411074722104200041b0026a350200211620002902a802212220002d00a0022101410621050c040b200141ff017141cf0047200641094772200341ff017141910147720d05200041a0026a20004180016a101b20002d00a40222024102460d05200041f8016a200041bc026a29020037030020004180026a200041c4026a280200360200200020002902b4023703f0014107210520002f00a502200041a7026a2d0000411074722104200041b0026a350200211620002f00a10220002d00a302411074720c020b200141ff017141a60147200641c8004772200341ff017141830147720d04200041406b20004180016a2202103f20002802400d0420002802442101200041386a2002103f20002802380d0420014108762103200028023c22024108762104410921050c020b200041a0026a20004180016a101b20002d00a40222024102460d0341082105200041f8016a200041bc026a29020037030020004180026a200041c4026a280200360200200020002902b4023703f00120002f00a502200041a7026a2d0000411074722104200041b0026a350200211620002f00a10220002d00a302411074720b210320002902a802212220002d00a00221010b200041f0006a20004180026a2207290300370300200041e8006a200041f8016a2208290300370300200041d8006a2016422086202242208884222b370300200020002903f001370360200020053602482000200141ff0171200341087472220336024c2000200241ff01712004410874722206ad202242208684222c3703502000410036027c2000428080013702a4022000418d87043602a002200041fc006a200041a0026a2201103220002802a402220920002802a8022202490d0020002802a00221042000200920026b22093602a00220042002200220046a2202200110002104200920002802a002220a490d002004102141ff017122044103462004411047720d002000200a3602b401200020023602b0012001200041b0016a2202101720002d00a0020d0020004188026a2209200041b9026a2900003703002007200041b1026a2900003703002008200041a9026a290000370300200020002900a1023703f00120012002102720002802a0022201418080808078460d0020002902a4022116200041286a2002102320002f01280d0020002f012a2104200041e8016a22022009290300370300200041e0016a22092007290300370300200041d8016a220a2008290300370300200020002903f0013703d00120002802b4010d00200041d0006a2107200041a4016a20022903003702002000419c016a200929030037020020004194016a200a290300370200200020163c0084012000418b016a20164238883c000020004189016a20164228883d0000200020002903d00137028c012000200136028001200020043b01ac01200020164208883e0085012000418c016a21010240024002400240024002400240024002400240200541016b0e09010009080706050403020b200041c8016a220e200141186a290000370300200041c0016a220f200141106a290000370300200041b8016a2212200141086a290000370300200020012900003703b001200041a0036a20004180016a102020002802a80341226c210b20004188036a2113200041f8026a2114200041d8026a210a200041c0026a210c20004180026a210d200041b0026a210920002802a40321022004ad42ffff0383212f20004180036a2115027f024003400240200b044020023301202116230041d0016b22032400200041a0026a2208027f202f500440200841023a000141010c010b202b202c845020165072044020084200370308200841106a420037030041000c010b200341386a20164200202c42001010200341186a20164200202b42001010200341086a42004200202b42001010200341286a42004200202c4200101020034188016a220142003703002003420037038001200342003703782003202f370370200341406b290300211620032903182119200341206a290300211b20032903082117200341106a29030021182003290328211a200341306a290300211e2003290338211c02400240200341f0006a220441f8820410450d00200341a8016a20182017201b2016201620197c221956ad7c221b7c2216201b54ad7c20162016201e20192019201a7c221b56ad7c7c221956ad7c370300200320193703a0012003201c370390012003201b37039801200341c8016a2001290300370300200341c0016a20034180016a290300370300200341b8016a200341f8006a290300370300200320032903703703b001230041206b22012400200141186a4200370300200141106a4200370300200141086a4200370300200142003703002004200110452104200141206a240020040d00200341d0006a21044200212042002124230041c0076b220124000240024002400240200341b0016a2206290310221920034190016a2205290310221f84200641186a290300221e200541186a290300221d8484500440200641086a2903002116200629030021190c010b0240027e024002400240417f2019201f85201d201e85844200522019201f54201d201e56201d201e511b1b2207047f200705200629030022172005290300221854200641086a2903002216200541086a290300221b542016201b511b0d0120172018852016201b85844200520b4101460d010b2019201e8450450d03201f2006290300221e54201d200641086a2903002218542018201d511b450d01200541086a290300211c20052903002120201879201e7942407d20184200521ba722050440200141e0016a201e20182005100f200141d0016a201f201d2005100f200141c0016a2020201c410020056b41ff00711011200141b0016a2020201c2005100f200141c8016a290300200141d8016a29030084211d20012903c00120012903d00184211f200141b8016a290300211c20012903b001212020012903e001211e200141e8016a29030021180b2018500d06200141a0016a201f201d20184200101320014190016a20012903a0012216200141a8016a290300221a201842001010201d20014198016a2903007d201f200129039001221b54ad7d2119201f201b7d211720014188016a2106034002400240201a4200520d0020014180016a2016201a201e42001010200129038001201c582006290300221b2017582017201b511b450d002016211b0c010b201a201650ad7d211a201642017d221b211620192017201720187c221756ad7c2219500d010b0b200141f0006a201b201a201e20181010200141e0006a201c200129037022167d221d201f200141f8006a2903007d2016201c56ad7d2219201842001013200141d0006a20012903602216200141e8006a29030022172018420010102019200141d8006a2903007d201d2001290350221954ad7d211c201d20197d211a200141c8006a210603400240024020174200520d00200141406b20162017201e42001010200129034020205820062903002219201a582019201a511b450d00201621190c010b2017201650ad7d2117201642017d22192116201c201a2018201a7c221a56ad7c221c500d010b0b200141306a20192017201e20181010200141206a2020200129033022167d201d200141386a2903007d2016202056ad7d20051011200141286a2903001a4200212020012903200c020b20044200370300200441186a4200370300200441106a4200370300200441086a42003703000c040b2018201e84500d04200141d0036a201f201d201e20181013200141c0036a20012903d0032220200141d8036a2903002224201e20181010201d200141c8036a2903007d201f20012903c003221654ad7d2117201f20167d211f200541086a290300211c2005290300211d201879201e7942407d20184200521ba722050440200141b0036a201e20182005100f200141a0036a201f20172005100f20014190036a201d201c410020056b41ff0071101120014180036a201d201c2005100f20012903900320012903a00384211f20014188036a290300211c200141b8036a2903002118200129038003211d20012903b003211e20014198036a290300200141a8036a2903008421170b2018500d04200141f0026a201f2017201842001013200141e0026a20012903f0022216200141f8026a290300221a2018420010102017200141e8026a2903007d201f20012903e002221b54ad7d2119201f201b7d2117200141d8026a2106034002400240201a4200520d00200141d0026a2016201a201e4200101020012903d002201c582006290300221b2017582017201b511b450d002016211b0c010b201a201650ad7d211a201642017d221b211620192017201720187c221756ad7c2219500d010b0b200141c0026a201b201a201e20181010200141b0026a201c20012903c00222167d2223201f200141c8026a2903007d2016201c56ad7d2219201842001013200141a0026a20012903b0022216200141b8026a29030022172018420010102019200141a8026a2903007d202320012903a002221954ad7d211c202320197d211a20014198026a210603400240024020174200520d0020014190026a20162017201e42001010200129039002201d5820062903002219201a582019201a511b450d00201621190c010b2017201650ad7d2117201642017d22192116201c201a2018201a7c221a56ad7c221c500d010b0b20014180026a20192017201e20181010200141f0016a201d20012903800222167d202320014188026a2903007d2016201d56ad7d20051011200141f8016a2903001a20012903f0010b1a2004202037031020042019370300200441186a202437030020042017201b7c3703080c020b027e201e7920197942407d201e4200521ba72207450440200541086a2903002117200641086a2903002124200529030021182006290300212a42000c010b200141b0076a2019201e2007100f200141a0076a20062903002216200641086a290300221941800120076b2206101120014190076a201620192007100f200141f0066a201f201d2006101120014180076a20052903002218200541086a290300221720061011200141e0066a201f201d2007100f20014188076a290300200141e8066a29030084211d20012903800720012903e00684211f200141a8076a290300200141b8076a29030084211e20012903a00720012903b00784211920014198076a290300212420012903f0062120200129039007212a200141f8066a2903000b2128200141d0066a201820172007100f200141d8066a2903002129427f211b20012903d006212d427f2116027e02402019202058201e202858201e2028511b0d00201f2123201d21262020211c2028211720192125201e221b7920197942407d201b4200521ba722050440200141c0066a2019201b2005100f200141b0066a201c20172005100f200141a0066a201f201d410020056b41ff0071101120014190066a201f201d2005100f20012903a00620012903b00684211c20014198066a2903002126200129039006212320012903c0062125200141a8066a290300200141b8066a290300842117200141c8066a290300211b0b201b500d0420014180066a201c2017201b42001013200141f0056a200129038006221a20014188066a2903002218201b420010102017200141f8056a2903007d201c20012903f005221754ad7d2116201c20177d2117200141e8056a210603400240024020184200520d00200141e0056a201a201820254200101020012903e0052026582006290300222120175820172021511b450d00201a21210c010b2018201a50ad7d2118201a42017d2221211a201620172017201b7c221756ad7c2216500d010b0b200141d0056a202120182025201b1010200141c0056a202620012903d00522167d2227201c200141d8056a2903007d2016202656ad7d2217201b42001013200141b0056a20012903c0052216200141c8056a290300221a201b420010102017200141b8056a2903007d202720012903b005221754ad7d211c202720177d2117200141a8056a2106034002400240201a4200520d00200141a0056a2016201a20254200101020012903a0052023582006290300221820175820172018511b450d00201621180c010b201a201650ad7d211a201642017d22182116201c20172017201b7c221756ad7c221c500d010b0b20014190056a2018201a2025201b101020014180056a202320012903900522167d202720014198056a2903007d2016202356ad7d20051011201a20217c211620014188056a2903002117200129038005211a200141f8046a2105024003400240200141e0046a20182016202a2024104620012903f004221c201a562005290300221b2017562017201b511b450440201a201c852017201b85844200520d0120012903e004202d58200141e8046a290300221b202958201b2029511b0d010b201a2019201a7c221a562206ad2017201e7c7c221b20175121102017201b5621112016201850ad7d2116201b2117201842017d221b21182006201120101b450d010c020b0b2018211b0b2016201b8450450d004200211b42002116420021234200211742002118420021214200211a42000c010b200141c0046a202a2024201b20161046200141c8046a290300211720012903c0042123200141a0046a2019201e201b20161046200141b8046a29030020012903b004221c20012903d004221a20012903a0047c2218201a5422052005ad200141d8046a290300221a200141a8046a2903007c7c2221201a54201a2021511bad7c221a201c54ad7c0b213020282030201a20182023202d562205201720295620172029511bad7c22252018542206202120212006ad7c22265620182025581b201f2025542206201d202654201d2026511b72ad7c2227201a542210ad7c222e7d20202027542211ad7d211c202020277d2120201d20267d2006ad7d211d201f20257d2121202920177d2005ad7d211f202d20237d2118027e2010202e203054201a2027581b20112028202e542028202e511b724504402020212420212119201d21172018211a201f2118201b0c010b201c202020192018202a7c221a20185422052005ad201f20247c7c2218201f542018201f511bad7c22172019542205201e201e2005ad7c221f56201720195a1b201720217c221920215422052005ad201d201f7c7c2217201d542017201d511b72ad7c2224202054ad7c211c2016201b50ad7d2116201b42017d0b211b20014190046a201a20182007101120014180046a201920172007101120014188046a2903001a20014198046a2903001a2001290380041a2001290390041a20070440200141f0036a20192017410020076b41ff00712205100f200141e0036a2024201c2005100f200141e8036a2903001a20012903e0031a200141f8036a2903001a20012903f0031a0b200442003703102004201b370300200441186a4200370300200420163703080c010b2016201984500d0120012005290300200541086a29030020192016101320044200370310200441186a42003703002004200141086a290300370308200420012903003703000b200141c0076a24000c010b000b200341e0006a290300200341e8006a290300844200520d01200341d8006a290300211620082003290350370308200841106a201637030041000c020b000b200841013a000141010b3a0000200341d0016a240020002d00a0024504402009290300212220002903a8022116200041e8016a2203200241186a290100370300200041e0016a2204200241106a290100370300200041d8016a2205200241086a290100370300200020022901003703d001200941186a200e290300370000200941106a200f290300370000200941086a2012290300370000200920002903b001370000200041f0016a220120084130100b1a200041b8026a200d41186a2903003703002009200d41106a290300370300200041a8026a200d41086a2903003703002000200d2903003703a002200c41106a4200370300200c41086a4200370300200c4200370300200a20002903d001370300200a41086a2005290300370300200a41106a2004290300370300200a41186a200329030037030020152022370300200020163703f8022000410036029003200041fcf9d4a37d360288032000428080013702f4012000418d87043602f00120082001103720002802f401220420002802f8012203490d0f20002802f0012105200041003602f8012000200420036b3602f4012000200320056a3602f001200c2001101d20002802f401220120002802f8012203490d0f200120036b210120002802f001220720036a2104024020002802900322084103710440418080042106410021030c010b200041003602f801200020013602f401200020043602f001200041f0016a2201201341041047200a2001103720142001101d20002802f401220120002802f8012203490d10200120036b210120002802f001220620036a21040b200020013602f0012008200542002007200620032004200041f0016a10022103200120002802f0012205490d0f2003102141ff017122014110472001410247710d0f2000200536029c032000200436029803200041206a20004198036a101520002d00200d0f0240024020002d00210e020001110b200041106a20004198036a101520002d00100d104101210141082103024020002d00110e020400110b200041086a20004198036a101520002d00080d1041002101024002400240024002400240024020002d000922030e08000a010203040506170b200041f0016a20004198036a102620002802f0012204418080808078460d1620002902f4012122410021030c090b410221030c080b410321030c070b410421030c060b200041f0016a20004198036a102620002802f0012204418080808078460d1220002902f4012122410521030c050b410621030c040b410721030c030b200041186a20004198036a101520002d00180d0f20002d00194101470d0f200028029c031a0c0f0b20002d00a1022104410821030c030b2000428080013702d4012000418d87043602d001200041d0016a4101103a200041a8026a2202200041d8016a280200360200200020002902d0013703a002200041a0026a2201418581041038200041f8016a2002280200360200200020002903a0023703f0012001200041f0016a104220002802ac02200041b0026a28020020002802a00241001003200120004180016a4130100b1a2001102c410c210341000c030b200028029c030d0c200241226a2102200b41226b210b20010d000b200441087621020b41010b2101200020023b00a502200041a7026a20024110763a0000200020223702a802200020043a00a402200020033602a0022001200041a0026a1029000b200041a0026a220120004180016a1020230041106b220024002000410036020c2000410c6a2802002102230041106b220024002000418080013602082000418d870436020402402001280200418080808078460440418d87044181023b0000410221012000410236020c0c010b2000410136020c418d870441003a00002001200041046a1022200028020c220141818001490d00000b20022001104a000b200041b9026a200141186a290000370000200041b1026a200141106a290000370000200041a9026a200141086a290000370000200041003a00a002200020012900003700a102230041106b220124002001410036020c2001410c6a2802002102230041106b220124002001418080013602082001418d87043602040240200041a0026a22002d00000440418d87044181023b0000410221002001410236020c0c010b418d870441003a00002001410136020c200041016a200141046a1037200128020c220041818001490d00000b20022000104a000b20004180016a2204220120031018210541012102200041a1026a101e200041013a00a00220012005200041a0026a22051019220141ff017141034604402006200420031018220d470440230041206b22042400200420063602142004200336021c200441bc8104360218200441086a2109200441146a210b230041106b22072400200741086a210a230041206b220224002002428080013702182002418d8704360214200441186a200241146a220e103c024002402002280218220f200228021c2208490d002002280214210c2002410036021c2002200f20086b36021820022008200c6a360214200b200e1032200228021c220b20022802184b0d00200241086a200c20082002280214200b1049200228020c2108200a2002280208360200200a2008360204200241206a24000c010b000b200728020c21022009200728020836020020092002360204200741106a2400200441206a2400200020063602a8032000200d3602a403200020033602a0032000428080013702b4012000418d87043602b0012000200041a0036a220236029803200041b0016a4102103a200041a8026a2203200041b8016a280200360200200020002902b0013703a002200541c380041038200041f8016a22042003280200360200200020002903a0023703f001200041f0016a20004198036a1034200041d8016a2004280200360200200020002903f0013703d0012005200041d0016a1042200041b0026a280200210320002802ac02210420002902a0022116200041003602a802200020163702a002200220051032200241047220051032200041a8036a2005103220002802a802220220002802a4024b0d082004200320002802a002200210030b200041a0026a220220004180016a4130100b1a2002102c410021020b0c080b200041f0016a220120074121100b1a41012102200041a1026a2204101e200041013a00a0020240024020002d00f00104402001410172200410450d010b410021010c010b20004180016a220420032007102f220141ff01714103470d00200041a0026a220120044130100b1a2001102c41002102410321010b0c070b20004180016a220420031018210241012101200041a1026a101e200041013a00a002024020042002200041a0026a22051019220241ff01714103470d00200420032007102f220241ff01714103470d00200520044130100b1a2005102c41002101410321020b0c070b20004180016a220520031018210241012101200041a1026a101e200041013a00a002024020052002200041a0026a22041019220241ff01714103470d0041022102200041b0016a2003200710440d00200320071043200041c6026a101e200020033602a002200041a4026a20074121100b1a200041013a00c50220041040200420054130100b1a2004102c41002101410321020b0c060b20004180016a200310182101200041003602a002200020013602a402230041106b220124002001410036020c2001410c6a2802002102230041106b220124002001418080013602082001418d87043602040240200041a0026a22002802000440418d87044181023b0000410221002001410236020c0c010b2001410136020c418d870441003a0000200041046a200141046a1032200128020c220041818001490d00000b20022000104a000b200041b0016a200041c8006a4104722201280200200141046a10442101200041003a00a002200020013a00a102230041106b220124002001410036020c2001410c6a2802002102230041106b220124002001418080013602042001418d87043602000240200041a0026a22002d00000440418d87044181023b0000410221010c010b20014101360208418d870441003a0000200120002d00013a000f20012001410f6a410110472001280208220141818001490d00000b20022001104a000b41012103200041a1026a101e200041013a00a002027f410a20004180016a220241d082bdaf01200041a0026a1019220141ff01714103470d001a200220062022a722041025410021034100210220040440200641206a2101200441226c2105034020012f0100200241ffff03716a220241ffff03712002470440410121014101210341080c030b200141226a2101200541226b22050d000b0b200020023b01ac01200041a0026a220220062004102520021028200220004180016a4130100b1a2002102c410c0b2102200020013a00a402200020023602a0022003200041a0026a1029000b000b200041013602a002200041a0026a102b000b200041003a00a002200020013a00a1022002200041a0026a102a000b200041003a00a002200020023a00a1022001200041a0026a102a000bcf0502077f017e230041a0016b2203240002402000200120021019220941ff01714103460440230041406a2205240020052001360210200541146a20024121100b1a200541c081043602382005200541106a36023c230041106b22042400200441086a2107230041206b220024002000428080013702182000418d8704360214200541386a200041146a103e200028021c220620002802184b0440000b200041086a2208200028021420061005220636020420082006417f47360200200028020c21062007200028020836020020072006360204200041206a2400200428020c2100200541086a2207200428020836020020072000360204200441106a2400200541406b240020034104722205101e200341246a20024121100b21022003200136020020034280800137024c2003418d870436024820032003360254200341c8006a4104103a200341f8006a2201200341d0006a28020036020020032003290248370370200341f0006a220041a28004103820034198016a22042001280200360200200320032903703703900120034190016a2207200341d4006a1034200120042802003602002003200329039001370370200341e4006a2000200341256a410020032d00241b104120032802682204200328026c2201490d0120032802642106200341003602782003200420016b22043602742003200120066a22063602702005200010372003280278220820032802744b0d012000200328027020081036200341003602980120032004360294012003200636029001200020071037200120012003280298016a22044b0d01200341e0006a2004360200200320032902643703582000200341d8006a104220034180016a2802002101200328027c21042003290270210a200341003602782003200a37027020032000103220022000103d2005200010372003280278220020032802744b0d01200420012003280270200010030b200341a0016a240020090f0b000bbe0902087f017e230041f0016b220024000240101f41ff01714105470d00200041808001360250418d8704200041d0006a2202100120002802502201418180014f0d002000200136024c2000418d8704360248200041003602500240200041c8006a220120024104104b0d0020002d0050419b01470d0020002d005141ae01470d0020002d0052419d01470d0020002d005341de00470d00200041a0016a2001101720002d00a0010d00200041c8016a2001101720002d00c8010d0020004194016a20011027200028029401418080808078460d00200041d8006a200041aa016a290000370300200041e0006a200041b2016a290000370300200041e7006a200041b9016a290000370000200041f7006a200041d1016a290000370000200041ff006a200041d9016a29000037000020004187016a200041e1016a290000370000200020002900c90137006f2000200041a2016a290000370350200029029801210820002d00a1012101200041096a2002413f100b1a200041d2006a2000290009370000200041da006a200041116a290000370000200041e2006a200041196a290000370000200041e9006a200041206a290000370000200020013a0051200041013a0050230041f0006b2201240020022d00000440200141ce006a2002290001370100200141e6006a200241196a2203290000370100200141de006a200241116a2204290000370100200141d6006a200241096a2205290000370100200141206a2003290000370000200141186a2004290000370000200141106a2005290000370000200141013a0007200120022900013700084100200141076a1043200141013a004d200141003a002c20014100360228200141286a10400b200141f0006a240020022008a722042008422088a722031025200041f4006a200041406b290000370200200041ec006a200041386a290000370200200041e4006a200041306a2900003702002000200029002837025c41002101027f027f024020030440200441206a2102200341226c2105034020022f0100200141ffff03716a220141ffff03712001470d02200241226a2102200541226b22050d000b0b200020013b017c200041a0016a2205220120042003102520011028200041d7006a2d0000210420002d0054210320002d005821022000280250210120002f00552106200041c8016a2207200041d9006a4127100b1a20032001418080808078460d011a200520074127100b1a20062004411074724108742003720c020b41010b2102418080808078210141080b2103200020023a00582000200336025420002001360250200041d9006a200041a0016a4127100b1a2001418080808078462202047f200041d4006a05200041d0006a102c41000b2101200041003602c801200020013602cc01230041106b220124002001200236020c2001410c6a2802002102230041106b220124002001418080013602082001418d87043602040240418e8704027f200041c8016a2200280200450440418d870441003a0000410020002802042200450d011a418e870441013a00002001410236020c2000200141046a102d200128020c220041818001490d02000b418d870441013a000041010b3a0000410221002001410236020c0b20022000104a000b20004101360250200041d0006a102b000b000b2901017f230041106b22022400200220002f01003b010e20012002410e6a41021047200241106a24000b2901017f230041106b220224002002200028020036020c20012002410c6a41041047200241106a24000bd50101057f230041106b220124002001200036020c200141c08104360208230041106b22032400200341086a2104230041206b220024002000428080013702182000418d8704360214200141086a200041146a103e200028021c220220002802184b0440000b200041086a2205200028021420021006220236020420052002417f47360200200028020c21022004200028020836020020042002360204200041206a2400200328020c21002001200328020836020020012000360204200341106a240020012802002100200141106a240020004100470ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061035200228020c220120022802084b0d0020062002280204200110362002410036022c20022004360228200220053602242006200241246a10372003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0b002000280200200110320bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100a2003412020014120104e0c010b2003200220012002104e0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010470ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061037200228020c220120022802084b0d0020062002280204200110362002410036022c20022004360228200220053602242006200241246a10372003200228022c6a22012003490d0020002001360208200241306a24000f0b000bca0101067f230041306b2201240002402000280204220220002802082203490d00200028020021042001410036020c2001200220036b22053602082001200320046a2206360204230041106b22022400200241d082042d00003a000f200141046a22042002410f6a41011047200241106a2400200128020c220220012802084b0d0020042001280204200210362001410036022c20012005360228200120063602242004200141246a103720032003200128022c6a22024b0d0020002002360208200141306a24000f0b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a103b20012001200228020c6a22014b0d0020002001360208200241106a24000f0b000ba00101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d04402001200241027410480c010b200241ffff004d0440200020024102744101723b010a2000410a6a200110310c010b200241ffffffff034d04402000200241027441027236020c2000410c6a200110320c010b2001410310482004200110320b200041106a2400200341106a24000b1100200020011035200041046a200110320b210020002d00004504402001410010480f0b200141011048200041016a200110370b1f00200020011035200041046a280200220020011032200041046a2001103d0b4801027f230041106b220224002002410036020c024020012002410c6a4104104b450440200228020c21010c010b410121030b2000200136020420002003360200200241106a24000bfe0202077f017e230041d0006b22042400200441086a2202200041c800100b1a230041206b220024002000428080013702182000418d8704360214230041306b220124002001200236020c200041146a22034104103a200141286a2205200341086a28020036020020012003290200370320200141206a220641d282041038200141186a2207200528020036020020012001290320370310200141106a22032001410c6a1034200520072802003602002001200129031037032020032006200241056a410020022d00041b1041024020022d002504402003200241266a10380c010b200141106a10390b200141286a200141186a280200360200200120012902103703202000200141206a1042200141306a2400200041106a2802002101200028020c2103200029020021082000410036020820002008370200200220001032200241046a2000103d200241256a2000103d2000280208220220002802044b0440000b20032001200028020020021003200041206a2400200441d0006a24000b30000240200204402001200210380c010b200110390b20002001290200370200200041086a200141086a2802003602000bdd0102057f017e230041106b22022400200241086a200141086a28020036020020022001290200370300230041106b22052400230041106b2203240020022802082104200241003602082004200228020422014b0440000b2002200120046b36020420022002280200220620046a360200200341086a2201200436020420012006360200200328020c2106200541086a2201200328020836020020012006360204200341106a240020052903082107200020022902003702002000200737020c200041086a200241086a280200360200200541106a2400200241106a24000bdc0101047f230041406a2202240020022000360210200241146a20014121100b1a200241c081043602382002200241106a36023c200241086a2105230041106b22012400230041206b220024002000428080013702182000418d8704360214200241386a200041146a103e200028021c220320002802184b0440000b200041086a200028021422042003200320046a41001049200028020c2103200141086a2204200028020836020020042003360204200041206a2400200128020c21002005200128020836020020052000360204200141106a2400200241406b24000b4d00230041306b22002400200020013602082000410c6a20024121100b1a41012102200041086a1033450440200041003a000c20002001360208200041086a103321020b200041306a240020020b0b00200020014120100e450bc40101017f230041406a22052400200541306a20034200200142001010200541106a20034200200242001010200541206a20044200200142001010200520044200200242001010200020052903303703002000200541386a290300220220052903107c220120052903207c22033703082000200541186a2903002001200254ad7c220420052903007c2202200541286a2903002001200356ad7c7c2201370310200041186a2001200254ad200541086a2903002002200454ad7c7c370300200541406b24000b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b20012002104e200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041004220136020420002001417f473602000b0d002000418d870420011007000b3901027f20002802042203200249220445044020012002200028020022012002104e2000200320026b3602042000200120026a3602000b20040b2b00200204402003450440418c87042d00001a0b20012002104d21010b20002002360204200020013602000bf00101047f230041106b22032400419087052802004504403f0021024194870541a087053602004190870541013602004198870520024110743602000b200341086a210402402000419487052802006a41016b410020006b71220020016a22022000490d00419887052802002002490440200141ffff036a22022001490d01200241107640002200417f460d012000411074220020024180807c716a22022000490d01419887052002360200200020016a22022000490d010b419487052002360200410121050b200420003602042004200536020020032802082100200328020c2101200341106a24002001410020001b0b150020012003460440200020022001100b1a0f0b000b0b9006030041a180040bd1020100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc40301e7b2eb1e780f1b5b3268ec6bfa54defdf77bed0cde0fc31ffaf22cc3929b3a08019d1d74fc778b16d17ceea6cd50f3b81ba6d0c1b9eb7d2e07a1a40b3e5206de7a00000000000000100102030405060708090a0b0c0d0e00f9372874510afc692f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e7273000000c400010069000000980000002e000000c400010069000000930000003000000000014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b00419883040bf4022f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e72730000980101006a0000005d0000000e0000002f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e72730000001402010065000000770000000e00000001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041ce86040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_inflator","version":"1.0.0","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"admin","type":{"displayName":["AccountId"],"type":9}},{"label":"abax_token_account_id","type":{"displayName":["AccountId"],"type":9}},{"label":"inflation_distribution","type":{"displayName":["Vec"],"type":15}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":21},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":31},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":39},"hash":{"displayName":["Hash"],"type":37},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":38}},"events":[{"args":[{"docs":[],"indexed":false,"label":"distribution","type":{"displayName":["Vec"],"type":15}}],"docs":[],"label":"InflationDistributionChanged","module_path":"abax_inflator::modules::inflator::events","signature_topic":"0xe7b2eb1e780f1b5b3268ec6bfa54defdf77bed0cde0fc31ffaf22cc3929b3a08"},{"args":[],"docs":[],"label":"InflationDistributed","module_path":"abax_inflator::modules::inflator::events","signature_topic":"0x9d1d74fc778b16d17ceea6cd50f3b81ba6d0c1b9eb7d2e07a1a40b3e5206de7a"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":31}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":31}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":28},"messages":[{"args":[],"default":false,"docs":[],"label":"AbaxInflatorView::abax_token_account_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x32f26d12"},{"args":[],"default":false,"docs":[],"label":"AbaxInflatorView::inflation_distribution","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":30},"selector":"0x50d5e50f"},{"args":[{"label":"amount","type":{"displayName":["Balance"],"type":31}}],"default":false,"docs":[],"label":"AbaxInflator::inflate","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0xa60df9ad"},{"args":[{"label":"inflation_distribution","type":{"displayName":["Vec"],"type":15}}],"default":false,"docs":[],"label":"AbaxInflatorManage::set_inflation_distribution","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":21},"selector":"0x20c8da6c"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":32},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":34},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x71a64883"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"abax_token_account_id"},{"layout":{"leaf":{"key":"0x00000000","ty":15}},"name":"inflation_distribution"},{"layout":{"leaf":{"key":"0x00000000","ty":17}},"name":"total_parts"}],"name":"InflatorStorage"}},"name":"inflator"}],"name":"AbaxInflatorContract"}},"root_key":"0x00000000","ty":18}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"sequence":{"type":16}}}},{"id":16,"type":{"def":{"tuple":[9,17]}}},{"id":17,"type":{"def":{"primitive":"u16"}}},{"id":18,"type":{"def":{"composite":{"fields":[{"name":"access","type":19,"typeName":",>>::Type"},{"name":"inflator","type":20,"typeName":",>>::Type"}]}},"path":["abax_inflator","abax_treasury","AbaxInflatorContract"]}},{"id":19,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":20,"type":{"def":{"composite":{"fields":[{"name":"abax_token_account_id","type":9,"typeName":",>>::Type"},{"name":"inflation_distribution","type":15,"typeName":" as::ink::storage::traits::AutoStorableHint\n<::ink::storage::traits::ManualKey<3514826069u32, ()>,>>::Type"},{"name":"total_parts","type":17,"typeName":",>>::Type"}]}},"path":["abax_inflator","modules","inflator","storage_fields","inflator","InflatorStorage"]}},{"id":21,"type":{"def":{"variant":{"variants":[{"fields":[{"type":22}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":22},{"name":"E","type":28}],"path":["Result"]}},{"id":22,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":23}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":23}],"path":["Result"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"fields":[{"type":24,"typeName":"MathError"}],"index":0,"name":"MathError"},{"fields":[{"type":25,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"fields":[{"type":27,"typeName":"AccessControlError"}],"index":2,"name":"AccessControlError"},{"index":3,"name":"WrongInflationDistribution"}]}},"path":["abax_inflator","modules","inflator","errors","AbaxInflatorError"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":26,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":26,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":26,"type":{"def":{"primitive":"str"}}},{"id":27,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":28}],"path":["Result"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":28}],"path":["Result"]}},{"id":31,"type":{"def":{"primitive":"u128"}}},{"id":32,"type":{"def":{"variant":{"variants":[{"fields":[{"type":33}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":33},{"name":"E","type":28}],"path":["Result"]}},{"id":33,"type":{"def":{"primitive":"bool"}}},{"id":34,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":28}],"path":["Result"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"fields":[{"type":36}],"index":0,"name":"Ok"},{"fields":[{"type":28}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":36},{"name":"E","type":28}],"path":["Result"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":27}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":27}],"path":["Result"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":38,"type":{"def":{"primitive":"u64"}}},{"id":39,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_inflator.json b/artifacts/abax_inflator.json new file mode 100644 index 0000000..7042372 --- /dev/null +++ b/artifacts/abax_inflator.json @@ -0,0 +1,1507 @@ +{ + "source": { + "hash": "0x3ab6536a97591516cf43e0858e79ac51acf8dfe808a497a6fe84351f5cf832a4", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_inflator", + "version": "1.0.0", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "admin", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "abax_token_account_id", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "inflation_distribution", + "type": { + "displayName": ["Vec"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 21 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 31 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 39 + }, + "hash": { + "displayName": ["Hash"], + "type": 37 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 38 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "distribution", + "type": { + "displayName": ["Vec"], + "type": 15 + } + } + ], + "docs": [], + "label": "InflationDistributionChanged", + "module_path": "abax_inflator::modules::inflator::events", + "signature_topic": "0xe7b2eb1e780f1b5b3268ec6bfa54defdf77bed0cde0fc31ffaf22cc3929b3a08" + }, + { + "args": [], + "docs": [], + "label": "InflationDistributed", + "module_path": "abax_inflator::modules::inflator::events", + "signature_topic": "0x9d1d74fc778b16d17ceea6cd50f3b81ba6d0c1b9eb7d2e07a1a40b3e5206de7a" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 31 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 31 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 28 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxInflatorView::abax_token_account_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x32f26d12" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxInflatorView::inflation_distribution", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 30 + }, + "selector": "0x50d5e50f" + }, + { + "args": [ + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 31 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxInflator::inflate", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 21 + }, + "selector": "0xa60df9ad" + }, + { + "args": [ + { + "label": "inflation_distribution", + "type": { + "displayName": ["Vec"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxInflatorManage::set_inflation_distribution", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 21 + }, + "selector": "0x20c8da6c" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 32 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 34 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 35 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 35 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 35 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 35 + }, + "selector": "0x71a64883" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "abax_token_account_id" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 15 + } + }, + "name": "inflation_distribution" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 17 + } + }, + "name": "total_parts" + } + ], + "name": "InflatorStorage" + } + }, + "name": "inflator" + } + ], + "name": "AbaxInflatorContract" + } + }, + "root_key": "0x00000000", + "ty": 18 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "sequence": { + "type": 16 + } + } + } + }, + { + "id": 16, + "type": { + "def": { + "tuple": [9, 17] + } + } + }, + { + "id": 17, + "type": { + "def": { + "primitive": "u16" + } + } + }, + { + "id": 18, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 19, + "typeName": ",>>::Type" + }, + { + "name": "inflator", + "type": 20, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_inflator", "abax_treasury", "AbaxInflatorContract"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "abax_token_account_id", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "inflation_distribution", + "type": 15, + "typeName": " as::ink::storage::traits::AutoStorableHint\n<::ink::storage::traits::ManualKey<3514826069u32, ()>,>>::Type" + }, + { + "name": "total_parts", + "type": 17, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_inflator", "modules", "inflator", "storage_fields", "inflator", "InflatorStorage"] + } + }, + { + "id": 21, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 22 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 22 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 22, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 23 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 23 + } + ], + "path": ["Result"] + } + }, + { + "id": 23, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 24, + "typeName": "MathError" + } + ], + "index": 0, + "name": "MathError" + }, + { + "fields": [ + { + "type": 25, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "fields": [ + { + "type": 27, + "typeName": "AccessControlError" + } + ], + "index": 2, + "name": "AccessControlError" + }, + { + "index": 3, + "name": "WrongInflationDistribution" + } + ] + } + }, + "path": ["abax_inflator", "modules", "inflator", "errors", "AbaxInflatorError"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 26, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 26, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 26, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 27, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 29, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 30, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 31, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 32, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 33 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 33 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 33, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 34, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 35, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 36 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 28 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 36 + }, + { + "name": "E", + "type": 28 + } + ], + "path": ["Result"] + } + }, + { + "id": 36, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 27 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 27 + } + ], + "path": ["Result"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 38, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 39, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_inflator.wasm b/artifacts/abax_inflator.wasm new file mode 100644 index 0000000..8fe6f11 Binary files /dev/null and b/artifacts/abax_inflator.wasm differ diff --git a/artifacts/abax_tge.contract b/artifacts/abax_tge.contract new file mode 100644 index 0000000..0ab8ce7 --- /dev/null +++ b/artifacts/abax_tge.contract @@ -0,0 +1 @@ +{"source":{"hash":"0xd2c95a99b329cb6b43cc9c56eb1700dbc48644d890f129f33ab06bd930013b9d","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d010000000198011660027f7f0060037f7f7f0060017f017f60047f7f7f7f0060037f7f7f017f60027f7f017f60057f7e7e7e7e0060017f0060047f7f7f7f017f60047f7e7e7f0060047f7f7e7e0060037f7e7e017f60067f7f7f7e7e7f0060000060087f7f7e7f7f7f7f7f017f6000017f60057f7f7e7e7f0060047f7e7e7e006000017e60087f7e7e7e7e7e7e7f0060057f7f7f7f7f0060047f7e7e7f017f02c80211057365616c300c74616b655f73746f726167650008057365616c310b6765745f73746f726167650008057365616c3005696e7075740000057365616c310463616c6c000e057365616c300d6465706f7369745f6576656e740003057365616c320b7365745f73746f726167650008057365616c310d636c6561725f73746f726167650005057365616c3110636f6e7461696e735f73746f726167650005057365616c300b7365616c5f72657475726e0001057365616c300b69735f636f6e74726163740002057365616c300d7365745f636f64655f686173680002057365616c300663616c6c65720000057365616c3007616464726573730000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f727902010210036d6c0404040409060906060300000000000000000504000000000000070f0000000202020a070200000000000700000007000001000b0b00100c110a0c040d0d060000020001000000000000000003000000000000000701001200040213050306010014010003010301050301150616037f01418080040b7f0041c092050b7f0041b892050b0711020463616c6c004c066465706c6f79004d0aebe2026c2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b830102017f017e230041106b220424000240200341c000714504402003450d0120022003413f71ad2205862001410020036b413f71ad88842102200120058621010c010b20012003413f71ad862102420021010b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000b9b0102017f067e230041106b220524002005200342ffffffff0f832206200142ffffffff0f8322077e22082007200342208822097e220720062001422088220a7e7c22064220867c220b37030020052008200b56ad2009200a7e2006200754ad4220862006422088847c7c200120047e200220037e7c7c370308200529030021012000200541086a29030037030820002001370300200541106a24000b830102017f017e230041106b220424000240200341c000714504402003450d012002410020036b413f71ad8620012003413f71ad220588842101200220058821020c010b20022003413f71ad882101420021020b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000bd10502057e037f230041206b220a24000240024002402004504504402002502001200354200220045420022004511b720d01200a41106a20032004200479a7200279a76b220b41ff007110144201200b413f71ad862109200a41186a2903002107200a29031021080340200220077d2001200854ad7d2205420059044020062009842106200120087d2201200354200420055620042005511b0d04200521020b2007423f86200842018884210820094201882109200742018821070c000b000b02400240200250450440200220035a044020022003510d0220022003822105200220038021092003428080808010540440200542208620014220888422022003802204422086200142ffffffff0f8320022003824220868422012003808421062004422088200984210920012003822101420021050c070b2001200354200420055620042005511b0d032004423f8620034201888421072003423f862108428080808080808080807f210203400240200520077d2001200854ad7d22044200590440200120087d2101200220068421062004500d01200421050b2007423f86200842018884210820024201882102200742018821070c010b0b2001200380200684210642002105200120038221010c060b200a20032004413f200379a7220b200279a7220c6b41406b200b200c461b220b10144201200b413f71ad862105200a41086a2903002107200a29030021084200210403400240200220077d2001200854ad7d22064200590440200120087d2101200420058421042006500d01200621020b2007423f86200842018884210820054201882105200742018821070c010b0b2001200380200484210642002105200120038221010c040b20012003802106200120038221010c030b2001200280210642012109200120028221010c030b0c020b200221050b420021090b2000200137031020002006370300200041186a200537030020002009370308200a41206a24000b3b01017f230041206b22052400200520012002200320041017200529030021012000200541086a29030037030820002001370300200541206a24000b4601017f20012d00042104200141003a00042004450440200020012802002002200310740f0b2002200141056a2d00003a000020002001280200200241016a200341016b10740b3a01027f2000280204210320002802082102230041106b220024002000200236020c2000410c6a20011059200120032002106f200041106a24000b0c002000200141a48004107a0ba10202047f017e230041206b22022400200242808001370204200241a99204360200200120021057200141046a2002103502402002280204220420022802082201490d00200228020021032002200420016b220436020020032001200120036a2201200210012103200420022802002205490d00024002402003103441ff01712203410347044020034110470d032002200536021c200220013602182002200241186a102520022802000d0120022903082106200041106a200241106a29030037030020002006370308200042013703000c020b200042003703000c010b200241086a290300210620022802042101200041146a200241106a3502003e02002000410c6a200637020020002001360208200042023703000b200241206a24000f0b000b0c002000200141b08004107a0bc10202027f017e230041e0006b22022400200241c8006a22034200370300200241406b4200370300200241386a420037030020024200370330200241d0006a2001200241306a412010742000027f20022802502201418180808078460440200020022f01303b0001200041036a20022d00323a0000200241186a2002413f6a2800002201360200200220022900372204370310200220022900433703002002200329000037000520022800332103200041106a2001360200200041086a2004370200200041146a2002290300370200200041196a2002290005370000200041046a200336020041000c010b200241186a200241dc006a28020022033602002002412c6a20033602002002200229025422043703102002200136022020022004370224200041046a200241206a41d58004411e105c41010b3a0000200241e0006a24000b1100200020011054200041206a200110600bf70302027f017e230041206b22022400200241106a2001105b2000027f02400240024002400240024002400240024002400240027f200228021041818080807846044020022d00140c010b2002200241106a41f48004413a105c20022802002203418180808078470d0120022d00040b0e080102030405060708090b20002002290005370009200041106a2002410c6a280000360000200041086a20022d00043a0000200020033602040c090b200241106a200110212002280210418180808078460440200241086a2002411c6a280200220336020020022002290214220437030020004100360204200041086a2004370200200041106a200336020041000c0a0b200041046a200241106a419a82044127105c0c080b2000410136020441000c080b2000410236020441000c070b2000410336020441000c060b2000410436020441000c050b200241106a200110212002280210418180808078460440200241086a2002411c6a280200220136020020022002290214220437030020004105360204200041086a2004370200200041106a200136020041000c050b200041046a200241106a41ae81044138105c0c030b2000410636020441000c030b2000410736020441000c020b2000418080808078360204200041086a41e681043602002000410c6a42343702000b41010b360200200241206a24000bf00b020a7f027e230041306b22022400200241206a2001105b02400240027f024002400240027f024002400240200228022022044181808080784604400240024002400240024020022d0024220341037141016b0e03010200040b41808080807821044122210720034104490d02418080042101410121030c0b0b200241196a20033a0000200241013a001820022001360214200241003b011c200241206a200241146a2002411c6a4102101920022802202204418180808078460d0620022f012422014108762108200228022c21052002280228210720022f012621030c0a0b200241196a20033a0000200241013a0018200220013602142002410036021c200241206a200241146a2002411c6a4104101920022802202204418180808078460d0420022802242201411076210320014108762108200228022c2105200228022821070c090b200241206a2001106120022802202206418180808078470d022002280224220341ffffffff034b0d07418080042101410121030c080b200341027621030c060b200228022c21052002280228210720022f0126210320022d0025210820022d002421010c060b20022802242201411076210320014108762108200228022c210520022802282107200621040c050b200228021c220341ffff034d044041012103418080040c020b200341027621030c030b20022f011c220341ff014b0d0141012103418080040b21014180808080782104412221070c020b200341027621030b200320012802044b0440418080808078210441202107418e87040c020b200241086a20034101107520022802082107200241206a2001200228020c22052003107420022802202204418180808078460d02200228022c21052002280228210720022802240c010b200141ff0171200841ff0171410874722003411074720b21012000200536020c2000200736020820002001360204200020043602000c010b200241206a2208027f024020032201450d00200341076b22034100200120034f1b210a200541036a417c7120056b210b41002103034002400240024002400240024002400240027e0240024002400240200320056a2d000022044118744118752209410048044042808080808020210c428080808010210d200441a690046a2d000041026b0e030601020a0b200b20036b4103710d0a2003200a4f0d0b0340200320056a220441046a280200200428020072418081828478710d0c200341086a2203200a490d000b0c0b0b4200210c200341016a220620014f0d05200520066a2c00002106024002400240200441e001470440200441ed01460d012009411f6a41ff0171410c490d022009417e71416e470d0520064140480d030c050b200641607141a07f460d020c040b2006419f7f4a0d030c010b200641404e0d020b4200210d200341026a220420014f0d08200420056a2c000041bf7f4c0d070c020b4200210c200341016a220620014f0d04200520066a2c000021060240024002400240200441f0016b0e050100000002000b2009410f6a41ff017141024b200641404e720d030c020b200641f0006a41ff017141304f0d020c010b2006418f7f4a0d010b200341026a220420014f0d04200420056a2c000041bf7f4a0d014200210d200341036a220420014f0d07200420056a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210c428080808010210d0c040b200341016a22042001490d014200210c0b4200210d0c020b200420056a2c000041bf7f4a0d010b200441016a21030c030b2008200c2003ad84200d8437020441010c050b200341016a21030c010b200120034d0d000340200320056a2c00004100480d012001200341016a2203470d000b0c020b200120034b0d000b0b20082005360204200841086a200136020041000b36020002402002280220047e2007418080808078470d0120052107200121052002290224052001ad0b210c20004181808080783602002000410c6a200c3e020020002007ad2005ad422086843702040c010b200041ae87043602042000418080808078360200200042153702080b200241306a24000b9a0301067f230041106b22062400230041206b220324002003200136021c200341e08a04360218200341086a2101230041206b22002400200042808001370214200041a99204360210200341186a200041106a2205105f024002402000280214220720002802182202490d00200028021021042000200720026b220736021020042002200220046a2202200510012104200720002802102205490d000240024020040e0400020201020b2000200536020c20002002360208200041106a200041086a10612001027f20002802102202418180808078460440200028020c0440418080808078210241e08c0421044130210541000c020b200028021421022001428380808018370200200141086a20023602000c040b2000280218210520002802142104200028021c0b36020c2001200536020820012004360204200120023602000c020b20014283808080083702000c010b000b200041206a24002003280208418380808078470440000b200641086a200329020c370300200341206a240020062802082100200628020c2101200641106a24002001410020001b0b2900027f20004190026a220020012002106945044041012000200141b483041069450d011a0b41030b0b0b00200120002d000010700bb30102017f017e230041206b22022400200241086a200110262000027f2002280208450440200128020404402000418080808078360204200041086a41de86043602002000410c6a423037020041010c020b200241186a290300210320002002290310370308200041106a200337030041000c010b200241106a2903002103200228020c2101200041106a200241186a3502003e0200200041086a20033703002000200136020441010b360200200241206a24000b890101017f230041206b220224002002420037030820024200370300200241106a20012002411010742000027f2002280210220141818080807846044020002002290300370308200041106a200229030837030041000c010b200041086a2002290214370200200041106a2002411c6a2802003602002000200136020441010b360200200241206a24000ba60101037f230041406a220224002002410c6a200110610240200228020c418180808078460440200228021021032002411c6a22042001102820022d001c450440200041046a2004410172412110101a200020033602000c020b20002002290220370208200041023a0004200041106a200241286a2902003702000c010b2000200229020c370208200041023a0004200041106a200241146a2902003702000b200241406b24000bbf0302027f047e230041f0006b22022400200241cc006a2001105b02400240024002400240027f200228024c41818080807846044020022d00500c010b200241286a200241cc006a418b8804412a105c20022802282203418180808078470d0120022d002c0b0e020203010b2000200229002d370009200041106a200241346a280000360000200041086a20022d002c3a000020002003360204200041013a00000c030b2000418080808078360204200041013a0000200041086a41c487043602002000410c6a42253702000c020b200041003b01000c010b200241cc006a2001101e20022d004c450440200241c1006a200241e5006a2900002204370000200241106a200241d5006a2900002205370300200241186a200241dd006a2900002206370300200241206a20043703002002200229004d22073703082000411a6a2004370000200041126a20063700002000410a6a2005370000200041026a200737000020004180023b01000c010b2002412c6a200241d0006a41e987044122105c200241136a200241346a29020022043700002002200229022c220537000b2000410c6a200437000020002005370004200041013a00000b200241f0006a24000b2901017f230041106b22022400200220002903003703082001200241086a4108106f200241106a24000bc10101057f230041406a22012400200141808001360210200141a9920436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a100b2004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141146a200141386a101e20012d00140440000b20002001290015370000200041186a2001412d6a290000370000200041106a200141256a290000370000200041086a2001411d6a290000370000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a100d2003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b4902017f017e230041206b22022400200241086a2001101d200241186a2903002103200020022903104200200228020822011b37030020002003420020011b370308200241206a24000b4902017f017e230041206b22022400200241086a2001101b200241186a2903002103200020022903104200200228020822011b37030020002003420020011b370308200241206a24000b6502017f027e230041206b220224002002200136021c200241a880043602182002200241186a101c200229030022034202510440000b2002290308210420004200200241106a29030020035022011b37030820004200200420011b370300200241206a24000bcf0101057f230041206b22012400200142808001370214200141a9920436021041b48004200141106a2204105020002004105402402001280214220020012802182203490d00200128021021022001200020036b220036021020022003200220036a2205200410012102200020012802102203490d00410021002002103441ff01712202410347044020024110470d012001200336020c200120053602082004200141086a10362001280210418180808078470d01200128020c0d0120012f011421000b200141206a240020000f0b000b6401027f230041206b22012400200142808001370218200141a9920436021441b88004200141146a22021050200020021054200128021c220020012802184b0440000b200141086a20012802142000107220012802082100200141206a240020004100470b7802017f027e230041306b22012400200141086a2000102e200141186a2001290308200141106a290300420a4200428094ebdc0342004101106b20012d0018210020012903202102200141286a2903002103200141306a240042e400200220001b2202a741e4004200200320001b5020024280800454711b0b990502037f0a7e230041406a220424002000027f0240024002400240027e20012903e001220d200129038002220e58200141e8016a290300220920014188026a290300220a582009200a5122061b04402002210c20030c010b02402002200e7c2208200e5422052005ad2003200a7c7c220b200a54200a200b511b4504402008200d562009200b542009200b511b0d01200221072003210842000c020b0c040b2002200d200e7d220754220520032009200a7d200d200e54ad7d22085420032008511b0d01200220077d210c200320087d2005ad7d0b210b200441286a2007200820012903f001220f200141f8016a2903002210104e027e024020042d0028450440200441386a290300210320042903302108200b200c8450450d014200210c42000c020b0c050b200441086a200b4200420542001015200441186a200c42004205420010152004290310420052200441206a290300220720042903087c2202200754720d032002423f862004290318420188842107200242018821020240200d200e542009200a5420061b04402007200e7c2207200e5422012001ad2002200a7c7c2202200a542002200a511b450d010c050b2007200d7c2207200d5422012001ad200220097c7c220220095420022009511b0d040b200441286a2201200f201020072002200d20094100106b20042d00280d042001200c200b2004290330200441386a2201290300104e20042d00280d042001290300210c20042903300b2102200220087c220b20085422012001ad2003200c7c7c220220035420022003511b4504402000200b370308200041106a200237030041000c050b0c020b200041013b010441010c030b000b20004181023b010441010c010b200041056a20042d00293a0000200041013a000441010b360200200441406b24000b0e000340200028020c22000d000b0b1d01017f410f21012000410e4d047f200041d08a046a2d000005410f0b0b0b002000280200200110540b6c01017f230041206b22022400200241003b010e200241106a20012002410e6a41021074024020022802102201418180808078460440200020022f010e3b01040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000bb206020a7f027e230041406a220224002002412c6a2001105b2000027f0240024002400240027f200228022c41818080807846044020022d00300c010b200241186a2002412c6a41fa8804412a105c20022802182205418180808078470d0120022d001c0b210841b5880421064184022107418080808078210541252104024002400240027f02400240200841ff01710e020001070b2002412c6a2001105b027f200228022c41818080807846044020022d00300c010b200241186a2002412c6a41fa8804412a105c20022802182204418180808078470d0320022d001c0b210b4108210541b58804210341002108418080808078210441252109024002400240200b0e020100060b2002412c6a20011020200228022c0d01200241246a200241386a290200220c37020020022002290230220d37021c200241206a280200210a200241286a2802002107200da72105200ca721060b200a41807e712103200a41ff01710c020b2002411c6a200241306a41a489044123105c200241206a2802002103200241246a2802002109200241286a2802002108200228021c21040c030b2002412c6a22032001105a200228022c418180808078470440200241186a200341a489044123105c20022802182205418180808078470d040b410921054100210341010b210420012802040d0520002005360204200041106a20073602002000410c6a2006360200200041086a200320047236020041000c070b2002280224210820022802202109200228021c21030b2002200836023820022009360234200220033602302002200436022c200241086a2002412c6a41da88044120105c2002410c6a28020022064108762107200241106a2802002104200241146a2802002103200228020821050c020b200228021c2206410876210720022802242103200228022021040c010b20022f001d2002411f6a2d0000411074722107200228022421032002280220210420022d001c21060b20002005360204200041106a20033602002000410c6a2004360200200041086a200641ff01712007410874723602000c010b2000418080808078360204200041086a41de86043602002000410c6a42303702000b41010b360200200241406b24000bab0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041a99204360204024041aa9204027f20012d00002203410e47044041a9920441003a000041002003410d460d011a41aa920441013a00002000410236020c2001200041046a1042200028020c220141818001490d02000b41a9920441013a000041010b3a0000410221012000410236020c0b200220011073000ba60101017f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041a99204360204024041aa9204027f20012d000045044041a9920441003a0000410020012d00014103460d011a41aa920441013a00002000410236020c200141016a200041046a1024200028020c220041818001490d02000b41a9920441013a000041010b3a0000410221000b200220001073000b4d01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041a9920441013a0000410121010b200141a992046a20013a00002002200141016a1073000ba10202047f017e230041206b22022400200242808001370204200241a99204360200200120021057200141046a2002105402402002280204220420022802082201490d00200228020021032002200420016b220436020020032001200120036a2201200210012103200420022802002205490d00024002402003103441ff01712203410347044020034110470d032002200536021c200220013602182002200241186a102520022802000d0120022903082106200041106a200241106a29030037030020002006370308200042013703000c020b200042003703000c010b200241086a290300210620022802042101200041146a200241106a3502003e02002000410c6a200637020020002001360208200042023703000b200241206a24000f0b000b990101047f230041206b22022400200242808001370218200241a992043602142000200241146a22031057200041046a20031035024020022802182205200228021c2200490d00200228021421042002410036021c2002200520006b3602182002200020046a360214200120031060200228021c220120022802184b0d00200241086a20042000200228021420011071200241206a24000f0b000b990101047f230041206b22022400200242808001370218200241a992043602142000200241146a22031057200041046a20031054024020022802182205200228021c2200490d00200228021421042002410036021c2002200520006b3602182002200020046a360214200120031060200228021c220120022802184b0d00200241086a20042000200228021420011071200241206a24000f0b000bfc0101057f230041206b22012400200142808001370218200141a9920436021441cc8a04200141146a22021050024020012802182205200128021c2203490d00200128021421042001410036021c2001200520036b3602182001200320046a360214200041106a2002102920002002103f200041186a20021029200041206a20021054200041406b20021054200041e0006a2002105420004180016a20021054200041a0016a20021054200041c0016a20021054200041e0016a20021060200041f0016a2002106020004180026a20021060200128021c220020012802184b0d00200141086a20042003200128021420001071200141206a24000f0b000b210020002903005004402001410010700f0b200141011070200041086a200110290bf40302097f017e230041a0016b220224002002200141381010210220012802702104200241386a200141386a413810102108200220043602702002290330210b20024280800137028801200241a9920436028401200220024184016a2205105402402002280288012203200228028c012201490d002002280284012106410021042002410036028c012002200320016b360288012002200120066a36028401200241206a200510602002280288012201200228028c012203490d00200120036b2101200228028401220920036a210341f4800421072002280270220a4103714504402002410036028c0120022001360288012002200336028401200241e8006a2005106320082005101f2002280288012201200228028c012204490d01200228028401220720046a2103200120046b21010b2002200136028401200a2006200b200920072004200320024184016a22051003210420012002280284012206490d002004103441ff017122014110472001410247710d002002200636029c012002200336029801200520024198016a10372002280284010d002002200229008d01370378200220024194016a28000036007f20022802880122014109460d0020002002418c016a2d00003a000420002001360200200020022903783700052000410c6a200228007f360000200241a0016a24000f0b000bd50101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071035200328020c220220032802084b0d0220072003280204200210532003410036022c20032005360228200320063602242007200341246a10542004200328022c6a22022004490d02200120023602080c010b200141c3870410520b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000bfd0201017f0240024002400240024002400240024002400240024002400240024020002d000041016b0e0c0102030405060708090a0b0c000b2001410010700c0c0b200141011070200120002d000110700f0b200141021070200041016a200110240f0b20014103107002400240024002404101200028020441086b2202200241044f1b41016b0e03010203000b200141001070200041086a2001101a0f0b2001410110700c0b0b2001410210700f0b2001410310700f0b2001410410700f0b2001410510700f0b2001410610700f0b2001410710700f0b2001410810700f0b2001410910700f0b2001410a10700f0b2001410b10700f0b2001410c10700f0b0240024002400240024002400240024002400240200041046a220028020041016b0e0701020304050607000b2001410010700c070b2001410110700c070b2001410210700c060b2001410310700c050b2001410410700c040b2001410510700c020b2001410610700c020b2001410710700c010b200041046a2001101a0b0b0e0020002001200241a88004107b0b0e0020002001200241ac8004107b0b2e01017e10672102200041054105410d20012903800220014188026a29030084501b20022001290310541b3a00000b950402057f047e230041f0006b220524002000027f0240024002402001102f41ffff03712001103141ffff03716a220641ffff0371200646044020042d00000440200641ffff0371410a6a220641ffff03712006470d040b200541386a2001101b200220052903404200200528023822041b22027c220a20025422072007ad200541c8006a290300420020041b220220037c7c220320025420022003511b0d032005200a370350200520033703582005200136026c200541a48004360268200541e8006a2209200541d0006a2208103c200541286a2001102d20082005290328200541306a29030041e400200641ffff03712204200441e4004f1bad104820052d00500d02200541e0006a290300210220052903582103200541186a2001102c200541206a290300210b2005290318210a20052001101d20052903084200200528020022041b220c42002003200a7d220d2003200d542002200b7d2003200a54ad7d220320025620022003511b22061b220a7c220b200c5422072007ad200541106a290300420020041b22024200200320061b220c7c7c220320025420022003511b4504402005200b370350200520033703582005200136026c200541b0800436026820092008103c200041106a200c3703002000200a37030841000c050b0c030b0c020b000b200041056a20052d00513a0000200041013a000441010c010b20004181023b010441010b360200200541f0006a24000be60802047f097e230041e0006b22062400024002400240200129038002220e20037c2212200e5422072007ad20014188026a290300220b20047c7c220f200b54200b200f511b45044020012903e0012210200e58200141e8016a290300220a200b58200a200b5122071b0d022010201258200a200f58200a200f511b0d010c020b20004181023b01000c020b2001106737030820014201370300200642808001370248200641a99204360244200641c4006a41011058200641306a2208200641cc006a28020036020020062006290244370328200641286a220941ab8a041055200641d8006a2008280200360200200620062903283703502009200641d0006a10662006280234200641386a2802002006280228410010040b2004211102400240024002400240024002400240027e2003200e201054200a200b5620071b450d001a2003210c2004210d420021114200201020125a200a200f5a200a200f511b0d001a20032010200e7d220c5422072004200a200b7d200e201056ad7d220d542004200d511b0d012004200d7d2007ad7d21112003200c7d0b210e200641086a20114200420542001015200641186a200e42004205420010152006290310420052200641206a290300220b20062903087c220a200b54720d01200c2006290318220b7c220f200c5422072007ad200a200d7c7c220c200d54200c200d511b0d02200641286a2001200f200c104920062d00282207410d470d03024020054504402002200320041044220241ff01714103460d01200020023a0001200041013a00000c0a0b200641286a2001200220032004419003104a20062d00282202410d460d0020002006290029370001200041106a200641386a280000360000200041096a200641316a290000370000200020023a00000c090b200e201184500d07200641286a200b200a42c801104820062d00280440200020062d00293a0001200041013a00000c090b20014180016a20062903302203200641386a29030022041044220241ff01714103470440200020023a0001200041013a00000c090b200641286a200b200a4214104820062d00280440200020062d00293a0001200041013a00000c090b200141a0016a2006290330220d200641386a290300220c1044220241ff01714103470440200020023a0001200041013a00000c090b2003200d7c220d20035422022002ad2004200c7c7c220320045420032004511b0d04200d200d200e7c220c5622022002ad200320117c7c220420035420032004511b0d05200b200c5422022004200a562004200a511b0d06200141c0016a200b200c7d200a20047d2002ad7d1044220141ff01714103460d07200020013a0001200041013a00000c080b200041013b01000c070b20004181023b01000c060b20004181023b01000c050b20002006290029370001200041106a200641386a280000360000200041096a200641316a290000370000200020073a00000c040b20004181023b01000c030b20004181023b01000c020b200041013b01000c010b2000410d3a00000b200641e0006a24000b15002000200120022003420042e80742004101106b0bc00402057f017e230041f0016b2204240020044180800136028c01200441a9920436028801230041106b22062400200620044188016a2208280204220736020c20082802002006410c6a100c2007200628020c2205490440000b20082005360204200641106a2400200420042902880137029001200441c0016a220720044190016a2205101e0240024020042d00c001450440200441e0006a200441d9016a290000370300200441d8006a200441d1016a290000370300200441d0006a200441c9016a290000370300200420042900c101370348200441b8016a200141386a290300370300200441b0016a200141306a290300370300200441a8016a200141286a290300370300200420012903203703a00120072005413010101a200441f0006a2003370300200441e8006a2002370300200441f8006a41f8e8bcb704360200200441386a4200370300200441406b4200370300200441186a200441d8016a290300370300200441206a200441e0016a290300370300200441286a200441e8016a290300370300200442003703302004410036028001200420042903d0013703102004200441106a1040200428020022054108470d01200220012903800222097c220220095422052005ad20014188026a2205290300220920037c7c220320095420032009511b45044020012002370380022000410d3a0000200520033703000c030b20004181023b01000c020b000b20002004290204370208200041106a2004410c6a28020036020020002005360204200041003a00000b200441f0016a24000bb01802117f027e230041a0036b22062400200641f0006a2207200320042005ad42ffff03831048024002400240024020062d007045044020032006290378221854220c200420064180016a220529030022175420042017511b0d01200641386a200141386a290300370300200641306a200141306a290300370300200641286a200141286a29030037030020062001290320370320200641c0016a200241186a290000370300200641b8016a200241106a290000370300200641b0016a200241086a290000370300200620022900003703a801200641406b220b200641106a413010101a200641f8006a200641d8006a2903003703002005200641e0006a29030037030020064188016a200641e8006a290300370300200641d0016a2017370300200641c8016a201837030020064198016a4200370300200641a0016a4200370300200641e8016a220841dbc1e4af7f360200200641e0016a4100360200200641d8016a220a428080808010370300200620062903503703702006420037039001200641003602f001200642808001370244200641a992043602402007200b10542000027f024002402006280244220720062802482205490d0020062802402109200641003602482006200720056b3602442006200520096a36024020064190016a200b10602006280244220520062802482207490d00200520076b21052006280240220b20076a2107024020062802f001220e410371044041f48004210a410021080c010b2006410036024820062005360244200620073602402008200641406b22051063200641a8016a2005101f200a2005101a2006280244220520062802482208490d01200520086b21052006280240220a20086a21070b20062005360240200e20094200200b200a20082007200641406b220d10032108200520062802402209490d002008103441ff017122054110472005410247710d00200620093602e802200620073602e402200d200641e4026a103720062802400d00200620062900493703102006200641d0006a280000360017200628024422054109460d00200641c8006a2d00002107200620062800173600ff02200620062903103703f80220054108470d052003201885200420178584500d06200641c0016a200141f8006a290300370300200641b8016a220b200141f0006a290300370300200641b0016a220e200141e8006a290300370300200620012903603703a801200641386a220f200141206a220541186a2210290300370300200641306a2211200541106a2212290300370300200641286a2213200541086a221429030037030020062005290300370320200d200641106a413010101a200641d0016a200420177d200cad7d2204370300200641c8016a200320187d2203370300200641d8016a41b29fece87b36020020064198016a4200370300200641f8006a2208200641d8006a220c29030037030020064180016a220a200641e0006a221529030037030020064188016a200641e8006a2216290300370300200641a0016a4200370300200642003703900141002109200641003602e00120062006290350370370200641f8026a200641f0006a104020062802f80222074108470d01200641d1016a2010290000370000200641c9016a2012290000370000200641c1016a2014290000370000200620052900003700b901200f200141e0006a220141186a2903003703002011200141106a2903003703002013200141086a29030037030020062001290300370320200641406b200641106a413010101a200641a0026a200c290300370300200641a8026a2015290300370300200641b0026a2016290300370300200641e1016a200241086a290000370000200641e9016a200241106a290000370000200641f1016a200241186a290000370000200842003703002006200629035037039802200620022900003700d90120064200370370200641c8026a4200370300200641c0026a4200370300200641b8026a22054200370300200e2004370300200620033703a801200641003602d00220064195d4bcb802360290022006410036028802200642808080801037038002200641013a00b80120064280e092f6d50337038001200642808001370244200641a9920436024020064198026a200d10542006280244220720062802482201490d0020062802402102200641003602482006200720016b3602442006200120026a3602402005200d10602006280244220120062802482205490d00200120056b21012006280240220920056a2105024020062802d002220c410371044041f480042108410021070c010b20064100360248200620013602442006200536024020064190026a200641406b22051063200641d9016a20051054200b2005105d200641a8016a20051060024020062903705004402006280248220120062802444f0d03200628024020016a41003a00002006200141016a3602482008200510290c010b2006280248220120062802444f0d02200628024020016a41013a00002006200141016a3602482008200641406b2201105420064198016a20011029200641a0016a210a0b200a200641406b2201102920064180026a2001101a2006280244220120062802482207490d01200120076b21012006280240220820076a21050b20062001360240200c200242002009200820072005200641406b220910032102200120062802402207490d002002103441ff017122014110472001410247710d00200620073602e002200620053602dc022009200641dc026a105b0240024002400240027f200628024041818080807846044020062d00440c010b200641106a200641406b41fa8804412a105c2006280210418180808078470d0520062d00140b41ff01710e020001040b200641406b200641dc026a105b027f200628024041818080807846044020062d00440c010b200641106a200641406b41fa8804412a105c20062802102209418180808078470d0220062d00140b2101410c210741b58804210a4100210c4125210b41808080807821090240024002400240200141ff01710e020100060b200641406b200641dc026a105b027f200628024041818080807846044020062d00440c010b20064190036a200641406b41cd8404413c105c2006280290032201418180808078470d0220062d0094030b2101410a2105024002400240024002400240200141ff01710e0400010403020b200641406b200641dc026a1021200628024041818080807846044020064108360214200641186a2006290244370200200641206a200641cc006a2802003602000c050b200641146a200641406b418985044129105c0c070b200641406b200641dc026a102020062802404504402006411c6a200641cc006a290200370200200620062902443702140c040b200641146a200641c4006a41b28504412d105c0c060b200641186a419784043602002006411c6a423637020020064180808080783602140c050b410b21050b200620053602140b20064184036a2006411c6a29020022033702002006200629021422043702fc0220064180036a280200210520064188036a28020021082004a721072003a721020b20062802e0022007410d46720d052007410c460d0b4103210920054108760c070b200641206a2006419c036a280000360000200641186a20062d0094033a00002006200629009503370019200620013602140b200641fc026a200641146a41a489044123105c20064180036a280200210a20064184036a280200210b20064188036a280200210c20062802fc0221090c020b200641406b2200200641dc026a105a2006280240418180808078470440200641106a200041a489044123105c2006280210418180808078470d030b20062802e0021a0c020b200628021c210c2006280218210b2006280214210a0b2006200c36024c2006200b3602482006200a36024420062009360240200641e8026a200641406b41da88044120105c0b000b2006280284032108200628028003210220062d00fc02210520062f00fd02200641ff026a2d0000411074720b22013b0009200020062f000d3b0001200020083602102000200236020c2000410b6a20014110763a0000200041036a2006410f6a2d00003a0000200020053a000820002007360204200020093a00000c040b200020062d00713a0001200041013a00000c030b200041013b01000c020b200020062903f802370009200041106a20062800ff02360000200020073a000820002005360204200041003a00000c010b2000410d3a00000b200641a0036a24000bc60402077f017e23004190016b2203240002402000200120021023220841ff01714103460440230041406a2204240020042001360210200441146a2002412110101a200441e48a043602382004200441106a36023c230041106b22052400200541086a2106230041206b22002400200042808001370218200041a99204360214200441386a200041146a105e200028021c220720002802184b0440000b200041086a2209200028021420071006220736020420092007417f47360200200028020c21072006200028020836020020062007360204200041206a2400200528020c2100200441086a2206200528020836020020062000360204200541106a2400200441406b240020034104722204102a200341246a200241211010210520032001360200200342808001370264200341a992043602602003200336026c20032004360270200341e0006a41041058200341d0006a2201200341e8006a28020036020020032003290260370348200341c8006a220041d68304105520034188016a22062001280200360200200320032903483703800120034180016a2202200341ec006a105620012006280200360200200320032903800137034820022000200341256a410020032d00241b1065200341f4006a22012002200341f0006a1041200020011066200341d8006a2802002101200328025421022003290248210a200341003602502003200a37024820032000105020052000105d20042000105420032802502200200328024c4b0d01200220012003280248200010040b20034190016a240020080f0b000b8c850102267f097e230041b0096b220024000240024002400240024002400240024002400240102b41ff01714105470d002000418080013602d80341a99204200041d8036a2201100220002802d8032203418180014f0d00200020033602d406200041a992043602d006200041003602c0082001200041d0066a200041c0086a41041074024002400240027f0240024020002802d803220141818080807846044020002d00c308210520002d00c208210420002d00c108210302402000027f0240024002400240024002400240024002400240024002400240024002400240027e02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024020002d00c008220141156b0e020105000b0240024002400240024002402001413c6b0e03043501000b0240200141ca006b0e051135353503000b0240200141ee006b0e0412353514000b0240200141a8016b0e0407353515000b02400240200141e8016b0e03013614000b20014101460d0b20014122460d0820014135460d0c200141dc00460d09200141e300460d052001418301460d102001418c01460d0d2001419901460d022001419f01460d0e200141c101460d0f200141cc0147200341ff01714197014772200441ff017141960147200541ff0171411f4772720d35200041d8036a200041d0066a101e20002d00d8030d22200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410b21060c360b200341ff017141ea0147200441ff017141c8014772200541ff017141db0147720d340c350b200341ff0171418a0147200441ff017141f8014772200541ff017141db0147720d33200041f8076a200041d0066a2201102620002802f8070d1520004188086a290300212b200029038008212a20004180096a2001101e20002d0080090d2f200041c0086a2001102820002d00c008450d1420002f00c508200041c7086a2d0000411074722103200041d0086a350200212620002902c808212820002d00c40821010c320b200341ff017141c50147200441ff017141ad014772200541ff0171412147720d3220004180096a200041d0066a220110262000280280090d1620004190096a2903002126200029038809212a200041c0086a2001102620002802c0080d2f200041d0086a290300212720002903c8082129200041d8036a2001101e20002d00d803450d15200041e8036a3502002128200041e0036a290200212620002802dc030c300b200341ff017141d30047200441ff017141e2004772200541ff017141fc0147720d31200041d8036a200041d0066a101e20002d00d8030d16200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410321060c320b200341ff017141e90147200441ff017141c9014772200541ff017141cd0147720d30200041d8036a200041d0066a2201101e20002d00d8030d17200041c0086a2001103620002802c0082203418180808078460d16200041cc086a350200212820002902c4080c180b200341ff017141dc0047200441ff017141094772200541ff017141b40147720d2f200041d8036a200041d0066a101e20002d00d8030d18200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410521060c300b200341ff017141c40047200441ff017141c1004772200541ff017141fd0147720d2e410621060c2f0b200341ff0171411747200441ff017141b3014772200541ff0171412447720d2d410721060c2e0b200341ff017141f50147200441ff017141fb004772200541ff0171411047720d2c200041d8036a200041d0066a101e20002d00d8030d1641082106200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d90321070c2d0b200341ff017141c60147200441ff017141ab014772200541ff0171418a0147720d2b200041d8036a200041d0066a101e20002d00d8030d16200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410921060c2c0b200341ff017141b60147200441ff0171419b014772200541ff017141d20047720d2a200041d8036a200041d0066a101e20002d00d8030d16200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410a21060c2b0b200341ff017141b80147200441ff017141fa014772200541ff0171410d47720d29200041d8036a200041d0066a101e20002d00d8030d17200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410c21060c2a0b200341ff017141d10047200441ff017141f3004772200541ff017141ed0147720d28200041d8036a200041d0066a101e20002d00d8030d17200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410d21060c290b200341ff017141f00047200441ff017141334772200541ff017141fe0147720d27200041d8036a200041d0066a101e20002d00d8030d17200041e8036a2902002226422086200041e0036a290200222742208884212820264220882126200041dc036a280200220441087621022027a722014108762103200041f8036a3100002127200041f0036a290200212920002f01da03210820002d00d9032107410e21060c280b200341ff0171418a0147200441ff017141ef014772200541ff017141d70147720d26200041d8036a200041d0066a102620002802d8030d17200041e8036a290300222742208620002903e00322264220888421282026a72201410876210320274220882126410f21060c270b200341ff017141d90147200441ff017141ac014772200541ff0171411847720d25200041d8036a200041d0066a102720002d00dc0322014102460d174110210620002f00d90320002d00db0341107472210220002f00dd03200041df036a2d0000411074722103200041f4036a2902002227422088a7210a2027421088a72109200041e8036a350200212620002902ec03212920002902e003212820003502fc03212a20002d00d80321040c260b200341ff017141da0147200441ff0171413b4772200541ff017141b20147720d24200041d8036a200041d0066a106120002802d803418180808078470d1720002802dc0322044108762102411121060c250b200341ff017141c00147200441ff017141e2004772200541ff017141fd0147720d23200041d8036a200041d0066a102720002d00dc0322014102460d1720002f00d90320002d00db0341107472210220002f00dd03200041df036a2d0000411074722103200041f4036a2902002227422088a7210a2027421088a72109200041e8036a350200212620002902ec03212920002902e003212820003502fc03212a20002d00d8032104411221060c240b200341ff017141cf0047200441ff017141094772200541ff017141910147720d22200041d8036a200041d0066a102720002d00dc0322014102460d1720002f00d90320002d00db0341107472210220002f00dd03200041df036a2d0000411074722103200041f4036a2902002227422088a7210a2027421088a72109200041e8036a350200212620002902ec03212920002902e003212820003502fc03212a20002d00d8032104411321060c230b200341ff017141f10147200441ff017141244772200541ff0171418a0147720d21200041d8036a200041d0066a102720002d00dc0322014102460d1720002f00d90320002d00db0341107472210220002f00dd03200041df036a2d0000411074722103200041f4036a2902002227422088a7210a2027421088a72109200041e8036a350200212620002902ec03212920002902e003212820003502fc03212a20002d00d8032104411421060c220b200341ff017141a60147200441ff017141c8004772200541ff017141830147720d20200041c0086a200041d0066a2201106120002802c0082203418180808078470d1820002802c4082104200041d8036a2001106120002802d8032203418180808078460d1720002802e003210420002802dc03210520002802e4030c190b200341ff017141b60147200441ff0171410c4772200541ff017141df0147720d1f200041d8086a22014200370300200041d0086a4200370300200041c8086a4200370300200042003703c00820004180096a200041d0066a200041c0086a412010742000280280092202418180808078470d19200041f0066a200041cf086a2800002202360200200041e0036a220520002900c7082226370200200041e8036a22032002360200200020002f01c0083b00d903200020002d00c2083a00db03200020263703e806200020002900d3083703a008200020012900003700a50820002800c3082104200041f1036a20002900a508370000200041ec036a20002903a008370200200329020022264220862005290200222742208884212820044108762102202642208821262027a722014108762103200041f0036a2902002129200041f8036a310000212720002f01da03210820002d00d9032107411621060c200b200041e0036a200041ca086a290100370300200041e8036a200041d2086a290100370300200041f0036a200041da086a290100370300200020002901c2083703d80320002f01820920004184096a2d00004110747221032000418d096a350000212620004185096a290000212820002d008109210120002d00c10822054102460d1d20004199096a290000212720004191096a2900002129200041c8016a200041d8036a412710101a2027422088a7210a2027421088a72109410121060c1f0b20002f00fd0720002d00ff0741107472210320004188086a3502002126200029038008212820002d00fc0721010c1c0b2000200041ea036a2901003703c8012000200041f1036a2900003700cf012026422086202a42208884212820264220882126202aa7220141087621032027422088a7210a2027421088a72109200041e1036a290000212b200041e9036a2d0000210520002900d903212a410221060c1d0b20004190096a350200212820004188096a29030021262000280284090c190b200041dc036a10330c1a0b200041e7036a2900002226422086200041df036a290000222742208884212820002800db0322044108762102202642208821262027a722014108762103200041f7036a3300002127200041ef036a290000212920002f00d903210820002f01c4082109410421060c1a0b200041e8036a350200212820002802dc032103200041e0036a2902000b2126200041e4036a20283e0200200020263702dc03200020033602d803200041d8036a10330c170b200041dc036a10330c160b200041dc036a10330c150b200041dc036a10330c140b200041dc036a10330c130b200041dc036a10330c120b200041dc036a10330c110b200041dc036a10330c100b200041dc036a10330c0f0b200041d8036a41047210330c0e0b200041e0036a10330c0d0b200041d8036a10330c0c0b200041e0036a10330c0b0b200041e0036a10330c0a0b200041e0036a10330c090b20002802dc032201410876210320044108762102411521060c090b20002802c808210420002802c408210520002802cc080b3602e403200020043602e003200020053602dc03200020033602d803200041d8036a10330c060b200041f0066a2000418c096a280200220136020020004184086a2001360200200020002902840922263703e806200020023602f807200020263702fc07200041dc036a2201200041f8076a41bc80044119105c200110330c050b20002802dc032102200020002902e0033702e003200020023602dc03200020013602d803200041d8036a10330c040b20002f00850920004187096a2d000041107472210320004190096a3502002126200029028809212820002d00840921010c020b200041d0086a3502002128200041c8086a290300212620002802c4080b2101200041e4036a20283e0200200020263702dc03200020013602d803200041d8036a10330c010b200041cc086a20263e0200200020283702c408200020013a00c008200020033b00c108200020034110763a00c308200041c0086a10330b200041013602d803200041d8036a103a000b20004198076a220b200041c8016a412710101a20004190016a202b370300200041f0006a20284220883e020020004180016a202742ffff03832009ad42ffff0383421086200aad42208684843703002000202a3703880120002029370378200020053a009801200020263e0274200020083b0162200020073a00612000200441ff01712002410874723602642000200141ff0171200341087472ad20284220868437036820004199016a200b412710101a200020063a0060200041003602c4012000428080013702dc03200041a992043602d803200041c4016a200041d8036a2201105020002802dc03220420002802e0032202490d0020002802d80321032000200420026b22043602d80320032002200220036a2202200110012103200420002802d8032205490d002003103441ff017122034103462003411047720d00200020053602ec05200020023602e8052001200041e8056a2202106220002802d803418180808078470d0020002802e403210b20002802e003210d20012002105b027f20002802d80341818080807846044020002d00dc030c010b200041c8016a200041d8036a418b8804412a105c20002802c801418180808078470d0120002d00cc010b21014200212602400240200141ff01710e020100020b200041d8036a200041e8056a1062027e20002802d80341818080807846044020002903e0030c010b200041c8016a200041d8036a41e987044122105c20002802c801418180808078470d0220002903d0010b2128420121260b200041d8036a2201200041e8056a2202106220002802d803418180808078470d0020002903e003212c20012002101e20002d00d8030d0020004182076a220c20002d00db033a0000200020002f00d9033b0180072000200041ec036a22072902003703a0082000200041f1036a22042900003700a508200041dc036a2205280200210e200041e0036a2208280200210f200041e4036a22092802002114200041e8036a2203280200211520012002101e0240024002400240027f02400240024002400240024002400240024002400240024002400240024002400240024002400240027f02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024020002d00d803450440200041a1076a2210200041e1036a2211290000370000200041a9076a2212200041e9036a2213290000370000200041b1076a220a2004290000370000200020002900d90322273700990720004186076a221620002d009b073a0000200020273d0184072000419c076a2802002117200041a0076a2802002118200041a4076a2802002119200041a8076a280200211a2000200a2900003700fd072000200041ac076a2902003703f80720012002101e20002d00d8030d242010201129000037000020122013290000370000200a2004290000370000200020002900d9032227370099072000418a076a221020002d009b073a0000200020273d0188072000419c076a2802002111200041a0076a2802002112200041a4076a2802002113200041a8076a280200211b2000200a290000370085092000200041ac076a2902003703800920012002101e20002d00d8030d362000418e076a220a20002d00db033a0000200020002f00d9033b018c07200020072902003703c008200020042900003700c5082005280200211c2008280200211d2009280200211e2003280200211f20012002101e20002d00d8030d3620004192076a222020002d00db033a0000200020002f00d9033b01900720002007290200370398072000200429000037009d072005280200212120082802002122200928020021232003280200212420012002101e20002d00d8030d3620004196076a222520002d00db033a0000200020002f00d9033b019407200020072902003703c801200020042900003700cd012005280200210420082802002105200928020021072003280200210820012002102620002802d8030d362003290300212720002903e003212920012002102620002802d8030d362003290300212d20002903e003212e20012002102620002802d8030d36200020002f0180073b01f806200020002903a0083703e806200020002900a5083700ed06200020002f0184073b01e006200020002903f8073703d006200020002900fd073700d5062000200c2d00003a00fa06200020162d00003a00e2062003290300212a20002903e003212b200020102d00003a00ca06200020002f0188073b01c80620002000290380093703b80620002000290085093700bd06200020002f018c073b01b0062000200a2d00003a00b206200020002903c0083703a006200020002900c5083700a506200020202d00003a009a06200020002f0190073b0198062000200029009d0737008d06200020002903980737038806200020252d00003a008206200020002f0194073b018006200020002900cd013700f505200020002903c8013703f00520002802ec050d36200041e0006a4101722102200041ea016a20002d00fa063a000020004180026a20002900ed063700002000418a026a20002d00e2063a0000200041a0026a20002900d506370000200041aa026a20002d00ca063a0000200020002f01f8063b01e801200020002903e8063700fb01200020002f01e0063b018802200020002903d00637009b02200020002f01c8063b01a802200041c0026a20002900bd06370000200041ca026a20002d00b2063a0000200041e0026a20002900a506370000200041ea026a20002d009a063a000020004180036a200029008d06370000200020002903b8063700bb02200020002f01b0063b01c802200020002903a0063700db02200020002f0198063b01e80220002000290388063700fb022000418a036a20002d0082063a0000200041a0036a20002900f505370000200020002f0180063b018803200020002903f00537009b03200041d0036a202a370300200041c0036a202d370300200041b0036a20273703002000202b3703c8032000202e3703b803200020293703a803200020083600970320002007360093032000200536008f032000200436008b03200020243600f702200020233600f302200020223600ef02200020213600eb022000201f3600d7022000201e3600d3022000201d3600cf022000201c3600cb022000201b3600b702200020133600b302200020123600af02200020113600ab022000201a3600970220002019360093022000201836008f022000201736008b02200020153600f701200020143600f3012000200f3600ef012000200e3600eb012000202c3703e0012000200b3602dc012000200d3602d801200020283e02d001200020284220883e02d401200020263703c80120004188036a2103200041e8026a2105200041c8026a210120004188026a2104200641016b0e160102031a041d1e05060708090a0b0c0d0e0f10111213140b200041cc016a2201200541c18204413a105c2000419c076a200141fb82044139105c0c350b200041a0076a200041e8006a41d800101021022000200041c8016a220136029807200041c8076a2903002127200041c0076a2903002129200041f8076a200041d0076a412110101a200041d8036a20011045024020002d00d8032201410d46044020002903c801500d014101210520002903d001222820002903e0017c22262028540440410121010c350b10672026580d01410721010c340b0c310b20275020294280a0faa0ccd70554710440410421010c330b200041d8036a2201102a2000428080013702c408200041a992043602c0082001200041c0086a105420002802c40820002802c808490d3420002802c00810090440410921010c330b024020002d00f8072206450d00200041f0036a20004191086a290000370300200041e8036a20004189086a290000370300200041e0036a20004181086a290000370300200020002900f9073703d803200041d8036a10300d00410a21010c330b200041a0086a102a200041d8036a2201200041c8016a20292027103220002802d8030d23200041e8036a2205290300212620002903e0032128200041e8086a200041a8086a290000370300200041f0086a200041b0086a290000370300200041f8086a200041b8086a290000370300200041d8086a200341186a290000370300200041d0086a200341106a290000370300200041c8086a200341086a290000370300200020002900a0083703e008200020032900003703c00820004180046a2207200441186a290300370300200041f8036a2208200441106a290300370300200041f0036a2209200441086a290300370300200020042903003703e80320004180096a2001413010101a20004190046a200041c0086a220341c0001010210a200041e0036a20004198096a2903003703002005200041a0096a2903003703002009200041a8096a290300370300200041d8046a2026370300200041d0046a220520283703002007420037030020004188046a4200370300200041f0046a220741d4e69ef606360200200041e8046a4100360200200041e0046a220942808080801037030020002000290390093703d803200042003703f803200041003602f8042000428080013702c408200041a992043602c00820012003105420002802c408220b20002802c8082201490d3420002802c0082104200041003602c8082000200b20016b3602c4082000200120046a3602c00820082003106020002802c408220120002802c8082203490d34200120036b210120002802c008220820036a2103024020002802f804220b410371044041f480042107410021050c010b200041003602c808200020013602c408200020033602c0082007200041c0086a22011063200041b0046a20011054200a2001105420052001106020092001101a20002802c408220120002802c8082205490d35200120056b210120002802c008220720056a21030b200020013602c008200b200442002008200720052003200041c0086a220710032104200120002802c0082205490d342004103441ff017122014110472001410247710d3420002005360284092000200336028009200720004180096a103720002802c0080d3420002802c40822014109460d34024020014108460440200041a0086a202820261043220541ff01714103460d010c330b200041d1086a330000200041d3086a3100004210868442288620002900c90822284218888421262001ad200041c8086a31000042ff0183422086842028422886842128410021010c330b200041d8036a2203200041a0086a20292027200041f8076a104620002802d8030d24202920002903e0037c222b20295422012001ad2027200041e8036a2903007c7c222a2027542027202a511b0d252003200041c8016a22052002202b202a4101104720002d00d8032201410d470d302006450d132003202920274214104820002d00d8030d2620032005200041f9076a20002903e003200041e8036a2903004100104720002d00d8032201410d460d130c300b200041e0036a200041e8006a41c00010101a2000200041c8016a22013602d803200041e8036a2903002128200041f8036a2903002129200041f0036a290300212a20002903e00321264101210420004199076a102a200041013a009807200141f7bdd34f20004198076a1023220341ff01714103470440410221010c160b106720002903d8015a0440410621010c160b20004180046a2205202a20291043220341ff01714103470440410121010c160b200041003a009807200041c0086a20052026202820004198076a104620002802c0080d1341012101202620002903c8087c222b20265422022002ad2028200041d0086a2903007c7c222720285420272028511b0440410121030c160b20004198076a2206200041c8016a202b2027104920002d0098072202410d4604402005202b20271044220341ff01714103470d16200041d0076a2029370300200041c0076a2028370300200041b0076a200541186a290300370300200041a8076a200541106a290300370300200041a0076a200541086a2903003703002000202a3703c807200020263703b80720002005290300370398072000428080013702a408200041a992043602a008200020063602e806200041a0086a41021058200041c8086a2202200041a8086a280200360200200020002902a0083703c008200041c0086a220141e98904105520004188096a2002280200360200200020002903c00837038009200041f8076a220220004180096a200041e8066a1041200120021066200041d0086a280200210320002802cc08210220002902c0082128200041003602c808200020283702c008200620011054200041b8076a20011060200041c8076a2001106020002802c808220120002802c4084b0d342002200320002802c008200110040c150b200041a4076a2902002126200029029c07212820002f019a07210520002d0099072103200221010c150b200041b4076a200241186a2207290000370200200041ac076a200241106a2208290000370200200041a4076a200241086a22092900003702002000200229000037029c072000200041c8016a220636029807200041d8036a220a2006104520002d00d8032204410d470d25200041e4036a220b2009290000370200200041ec036a2008290000370200200041f4036a2007290000370200200041ac80043602d803200020022900003702dc032000428080013702c408200041a992043602c00841ac8004200041c0086a22021050200041dc036a2002105420002802c408220820002802c8082204490d3220002802c00821072000200820046b22083602c00820072004200420076a2204200210002107200820002802c0082209490d322007103441ff017122074103460d2620074110470d3220002009360284092000200436028009200220004180096a102520002802c0080d32200041d0086a290300212620002903c808212802402000419c076a22022003106c0d0020022005106c0d0020022001106c450440200a2006200220282026419003104a20002d00d8032204410d460d1720002f00d90320002d00db03411074722101200b29020021260c2d0b200041d8036a200041c8016a20022028202641c801104a20002d00d8032204410d460d1620002f00d90320002d00db03411074722101200041e4036a29020021260c2c0b200041d8036a200041c8016a20022028202641e807104a20002d00d8032204410d460d1520002f00d90320002d00db03411074722101200041e4036a29020021260c2b0b200041f4036a200241186a290000370200200041ec036a200241106a290000370200200041e4036a200241086a290000370200200020022900003702dc032000200041c8016a22013602d8034101210320004199076a102a200041013a009807200141effb949f0220004198076a1023220241ff01714103460d1641020c170b230041306b22032400200341186a200241086a290000370200200341206a200241106a290000370200200341286a200241186a2900003702002003200041c8016a36020c20032002290000370210200341106a102f21010c320b230041306b22032400200341186a200241086a290000370200200341206a200241106a290000370200200341286a200241186a2900003702002003200041c8016a36020c20032002290000370210200341106a103121010c310b230041306b22032400200341186a200241086a290000370200200341206a200241106a290000370200200341286a200241186a2900003702002003200041c8016a36020c20032002290000370210200341106a10302101200341306a24000c310b230041d0006b22012400200141186a200241086a290000370200200141206a200241106a290000370200200141286a200241186a2900003702002001200041c8016a36020c200120022900003702102001200141106a36024c200141ac8004360248200141306a200141c8006a101c200129033022264202510440000b20012903382128200041106a22024200200141406b29030020265022031b37030820024200202820031b370300200141d0006a240020002903102126200041e8036a200041186a2903003703000c310b230041406a22012400200141286a200241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041c8016a36021c20012002290000370220200141086a200141206a102e20012903082126200041206a2202200141106a29030037030820022026370300200141406b240020002903202126200041e8036a200041286a2903003703000c300b230041406a22012400200141286a200241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041c8016a36021c20012002290000370220200141086a200141206a102d20012903082126200041306a2202200141106a29030037030820022026370300200141406b240020002903302126200041e8036a200041386a2903003703000c2f0b230041406a22012400200141286a200241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041c8016a36021c20012002290000370220200141086a200141206a102c20012903082126200041406b2202200141106a29030037030820022026370300200141406b240020002903402126200041e8036a200041c8006a2903003703000c2e0b20002903682126200041f0006a2903002128230041206b22012400200141086a200041c8016a20262028103220012903102126200041d0006a22024200200141186a290300200128020822031b37030820024200202620031b370300200141206a240020002903502126200041e8036a200041d8006a2903003703000c2d0b200041d8036a200041e0006a4104722201280200200141046a106921010c2b0b200041c8016a200028026410222101200041003602d803200020013602dc03230041106b220124002001410036020c2001410c6a2802002103230041106b22012400200141808001360208200141a992043602040240200041d8036a2202280200044041a992044181023b0000410221022001410236020c0c010b2001410136020c41a9920441003a0000200241046a200141046a1050200128020c220241818001490d00000b0c300b200041c8016a2205200028026422041022210241012101200041d9036a102a200041013a00d803024020052002200041d8036a22021023220341ff01714103470d004102210320022004200041e8006a220610690d00200420061068200041fe036a102a200020043602d803200041dc036a2006412110101a200041013a00fd03200210642002200541900210101a2002103e41002101410321030b0c2b0b200041c8016a2202200028026422051022210341012101200041d9036a102a200041013a00d803024020022003200041d8036a22041023220341ff01714103470d0020022005200041e8006a104b220341ff01714103470d002004200241900210101a2004103e41002101410321030b0c2a0b2000280264210120004198076a2202200041e8006a2204412110101a41012103200041d9036a2205102a200041013a00d80320002d009807044020024101722005106c0d0e0b410021010c0e0b200041e8006a2802002105200041c8016a2201200028026422061022210241012103200041d9036a102a200041013a00d80320012002200041d8036a22041023220b41ff017141034604402005200120061022220d470440230041206b22022400200220053602142002200636021c200241e08a04360218200241086a2108200241146a210c230041106b22032400200341086a2109230041206b22012400200142808001370218200141a99204360214200241186a200141146a220e105f024002402001280218220f200128021c2207490d002001280214210a2001410036021c2001200f20076b36021820012007200a6a360214200c200e1050200128021c220c20012802184b0d00200141086a200a20072001280214200c1071200128020c21072009200128020836020020092007360204200141206a24000c010b000b200328020c21012008200328020836020020082001360204200341106a2400200241206a240020002005360280082000200d3602fc07200020063602f80720004280800137028409200041a99204360280092000200041f8076a22013602a00820004180096a41021058200041e0036a220220004188096a28020036020020002000290280093703d803200441f783041055200041a0076a22032002280200360200200020002903d8033703980720004198076a200041a0086a1056200041c8086a200328020036020020002000290398073703c0082004200041c0086a1066200041e8036a280200210220002802e403210320002902d8032126200041003602e003200020263702d80320012004105020014104722004105020004180086a2004105020002802e003220120002802dc034b0d252003200220002802d803200110040b200041d8036a2201200041c8016a41900210101a2001103e410021030b200041003a00d8032000200b3a00d9030c290b200041f4036a200241186a290000370200200041ec036a200241106a290000370200200041e4036a200241086a290000370200200020022900003702dc032000200041c8016a22013602d8034101210320004199076a102a200041013a009807200141e3abb1bb0420004198076a1023220241ff01714103470d0d200041034101200041dc036a100a2201410e4d047f200141848f046a2d000005410f0b41ff017141104622011b3602980720010d0e0c0f0b41012106202a202b8450047f200041d8036a220242d00042002029202742e40042004101106b20002d00d8030d1720004198076a200041c8016a220720002903e003200041e8036a290300104920002d0098072204410d470d184101210420024214420020002903a8032226200041b0036a290300222842e40042004101106b20002d00d8030d19200120002903e003200041e8036a2903001044220141ff01714103470d1a2002420242002026202842e40042004101106b20002d00d8030d19200520002903e003200041e8036a2903001044220141ff01714103470d1a2002423a42002026202842e40042004101106b20002d00d8030d19200320002903e003200041e8036a2903001044220141ff01714103470d1a2002200741900210101a2002103e41002106410d05410c0b21040c190b200041d8086a200041b8086a290000370300200041d0086a200041b0086a290000370300200041c8086a200041a8086a290000370300200041e8086a200241086a290300370300200041f0086a200241106a290300370300200041f8086a200241186a290300370300200020002900a0083703c008200020022903003703e008200041a8046a200041f8076a412110102106200041d8036a2202200041c0086a41c00010101a200041a0046a202737030020002029370398042000428080013702bc06200041a992043602b806200020023602a006200041b8066a4102105820004188096a2203200041c0066a280200360200200020002902b8063703800920004180096a220141c889041055200041f0066a200328020036020020002000290380093703e806200041d0066a2203200041e8066a200041a0066a104120012003106620004190096a2802002104200028028c09210520002902800921274100210320004100360288092000202737028009200220011054200041f8036a2001105420004198046a2001106020062001105d20002802880922012000280284094b0d2020052004200028028009200110042002200041c8016a41900210101a2002103e0c1f0b20002802c4082201411076210520014108762103200041d0086a2903002126200041c8086a2903002128200141ff0171410d470d010b200041d8036a2201200041c8016a41900210101a2001103e41002104410d21010b200041e4036a2026370200200020283702dc032000200141ff0171200341ff0171410874200541107472723602d8030c240b200041d8036a2202200041c8016a41900210101a2002103e41000c170b41022101200041dc036a200041e0006a4102724122101021022000200041c8016a22053602d8032000200041fc036a2f010022063b01d0064101210420004199076a102a200041013a009807200541db9396c40120004198076a22031023220741ff0171410346044020004280800137029c07200041a992043602980741b4800420031050200220031054200028029c07220820002802a0072201490d1c2000280298072104200041003602a0072000200820016b36029c072000200120046a36029807200041d0066a2003104f20002802a0072208200028029c074b0d1c20002004200120002802980720081071200041b0076a200241186a290200370300200041a8076a200241106a290200370300200041a0076a200241086a290200370300200020063b01b80720002002290200370398072000428080013702a408200041a992043602a008200020033602e806200041a0086a41021058200041c8086a2202200041a8086a280200360200200020002902a0083703c008200041c0086a2201418a8a04105520004188096a2002280200360200200020002903c00837038009200041f8076a220220004180096a200041e8066a1041200120021066200041d0086a280200210220002802cc08210420002902c0082126200041003602c808200020263702c008200320011054200041b8076a2001104f20002802c808220120002802c4084b0d1c2004200220002802c00820011004200041d8036a2201200541900210101a2001103e41002104410d21010b200020073a00d903200020013a00d8030c220b20004280800137029c07200041a992043602980741b8800420004198076a22011050200041dc036a2001105420002802a0072201200028029c074b0d1a41002103200041086a20002802980722042001200120046a41001071200041d8036a2201200041c8016a41900210101a2001103e410d0b2101200020023a00d903200020013a00d8032003200041d8036a1038000b20002903d001212820002903d801212a20004190046a200041e8016a220241186a29030037030020004188046a200241106a29030037030020004180046a200241086a290300370300200041a0046a200441086a290300370300200041a8046a200441106a290300370300200041b0046a200441186a290300370300200041c0046a200041a8026a220641086a290300370300200041c8046a200641106a290300370300200041d0046a200641186a290300370300200020022903003703f8032000200429030037039804200020062903003703b804200041f0046a200141186a290300370300200041e8046a200141106a290300370300200041e0046a200141086a29030037030020004180056a200541086a29030037030020004188056a200541106a29030037030020004190056a200541186a290300370300200041a0056a200341086a290300370300200041a8056a200341106a290300370300200041b0056a200341186a290300370300200020012903003703d804200020052903003703f8042000200329030037039805200041d0056a202d370300200041c0056a20273703002000202e3703c805200020293703b8052000202c3703f0032000202a3703e803200020283703e003200020263703d803230041106b220124002001410036020c2001410c6a2802002104230041106b22032400200341808001360208200341a992043602040240200041d8036a2201290300420251044041a992044181023b0000410221012003410236020c0c010b2003410136020c41a9920441003a0000200141106a200341046a2202102920012002103f200141186a20021029200141206a20021054200141406b20021054200141e0006a2002105420014180016a20021054200141a0016a20021054200141c0016a20021054200141e0016a20021060200141f0016a20021060200328020c220141818001490d00000b200420011073000b200041e8036a202a3703002000202b3703e0030c1f0b200041c8016a220220012004104b220141ff01714103470d00200041d8036a2201200241900210101a2001103e41002103410321010b200041003a00d803200020013a00d9030c1b0b20004198076a21010240024002400240200241ff017141016b0e020102000b200141046a41b28d04411110770c020b200141046a41c38d04410f10770c010b200141046a41d28d04411110770b200141023602002000280298074103470d010b200041d8036a2201200041c8016a41900210101a2001103e410021030b4100210441002105230041106b220124002001200336020c2001410c6a2802002106230041106b22012400200141808001360208200141a992043602040240024002400240024020004198076a22072802002200410447044041a9920441003a00004103210220004103460d034101210441aa920441013a000041ab92042103200041016b0e020401020b4101210441a9920441013a00000c020b410221050b41ab920420053a00002001410336020c200741046a200141046a101a200128020c220241818001490d02000b4102210241aa920421030b200320043a00002001200236020c0b200620021073000b200041cc016a2201200041dc036a41df850441c000105c2000419c076a2001419f8604413f105c0c110b20002802dc032201411076210420014108762105200041e8036a2903002126200041e0036a29030021280c0e0b20002802dc032201411076210420014108762105200041e8036a2903002126200041e0036a29030021280c0d0b41012101410121050c0c0b20002d00d90321050c0a0b20002f00d90320002d00db03411074722101200041e4036a29020021260c050b410b2104410021010c050b20002d00d9032101410121040c020b200041c8086a200041a2076a290100370300200041d0086a200041aa076a2f01003b01002000200029019a073703c00820002d00990721010c010b20002d00d90321010b200041ea036a200041d0086a2f01003b0100200041e2036a200041c8086a290300370100200020002903c0083701da03200020013a00d903200020043a00d8032006200041d8036a1038000b20002902dc0321280b41010b2103200041e8036a2026370300200020283703e003200020033602d8032000200441ff01712001410874723602dc030c050b200041e4036a290200212620002902dc03212820002f01da03210420002d00d90321050c010b410121010b410121030b200041e8036a2026370300200020283703e003200020033602d8032000200141ff0171200541ff0171410874200441107472723602dc030c010b000b230041106b220124002001200336020c2001410c6a2802002103230041106b22012400200141808001360208200141a99204360204410221020240200041d8036a22002802002204410247044041a9920441003a0000024020044504402001410236020c41aa920441003a0000200041086a200141046a10600c010b41aa920441013a00002001410236020c200041046a200141046a10420b200128020c220241818001490d01000b41a992044181023b00002001410236020c0b0c070b200341306a2400200041003b01d803200020013b01da03230041106b220124002001410036020c2001410c6a2802002103230041106b22012400200141808001360208200141a992043602040240200041d8036a22022f0100044041a992044181023b0000410221022001410236020c0c010b2001410136020c41a9920441003a0000200241026a200141046a104f200128020c220241818001490d00000b0c060b200041003a00d803200020013a00d903230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360204200141a992043602000240200041d8036a22002d0000044041a992044181023b0000410221010c010b2001410136020841a9920441003a0000200120002d00013a000f20012001410f6a4101106f2001280208220141818001490d00000b200220011073000b200020263703e0030c030b200041003a00d803200020033a00d9032001200041d8036a1039000b2003200041d8036a1039000b2004200041d8036a1038000b200041003602d803230041106b220124002001410036020c2001410c6a2802002103230041106b22012400200141808001360208200141a992043602040240200041d8036a2202280200044041a992044181023b0000410221022001410236020c0c010b2001410136020c41a9920441003a0000200241086a200141046a1060200128020c220241818001490d00000b0b200320021073000bb51002067f067e230041a00c6b22002400024002400240024002400240024002400240024002400240102b41ff01714105470d002000418080013602900a41a99204200041900a6a100220002802900a2201418180014f0d0020002001360204200041a99204360200200041003602d00120004198036a2000200041d0016a41041074200028029803220141818080807846044020002d00d001419b01470d0c20002d00d10141ae01470d0c20002d00d201419d01470d0c20002d00d30141de00470d0c200041e8076a2000106220002802e807418180808078470d0220002903f0072106200041f8076a2000106220002802f807418180808078470d03200029038008210720004188086a2000101e20002d0088080d04200041ac086a2000101e20002d00ac080d05200041d0086a2000101e20002d00d0080d06200041f4086a2000101e20002d00f4080d0720004198096a2000101e20002d0098090d08200041bc096a2000101e20002d00bc090d09200041e0096a2000102620002802e0090d0a200041f0096a290300210820002903e8092109200041f8096a2000102620002802f8090440200041e8046a200041840a6a290200370300200020002902fc093703e0040c0c0b200041b0066a20004191086a290000370300200041b8066a20004199086a290000370300200041c0066a200041a1086a290000370300200041d0066a200041b5086a290000370300200041d8066a200041bd086a290000370300200041e0066a200041c5086a29000037030020004180076a200041e9086a290000370300200041f8066a200041e1086a290000370300200041f0066a200041d9086a29000037030020002000290089083703a806200020002900ad083703c806200020002900d1083703e806200041880a6a290300210a20002903800a210b200041a0076a2000418d096a29000037030020004198076a20004185096a29000037030020004190076a200041fd086a290000370300200041c0076a200041b1096a290000370300200041b8076a200041a9096a290000370300200041b0076a200041a1096a290000370300200041d0076a200041c5096a290000370300200041d8076a200041cd096a290000370300200041e0076a200041d5096a290000370300200020002900f5083703880720002000290099093703a807200020002900bd093703c807200041d0016a2000419c036a200041980a6a200041106a200041d6016a2000419e036a200041e0046a410472200041a8066a41c001101041c001101041c001101041c001101041c001101041c001101041c00110101a200041910a6a102a200041013a00900a230041f0006b22012400200041900a6a22022d00000440200141ce006a2002290001370100200141e6006a200241196a2203290000370100200141de006a200241116a2204290000370100200141d6006a200241096a2205290000370100200141206a2003290000370000200141186a2004290000370000200141106a2005290000370000200141013a0007200120022900013700084100200141076a1068200141013a004d200141003a002c20014100360228200141286a10640b200141f0006a2400200041b80a6a200041d8016a290300370300200041c00a6a200041e0016a290300370300200041c80a6a200041e8016a290300370300200041d80a6a200041f8016a290300370300200041e00a6a20004180026a290300370300200041e80a6a20004188026a290300370300200020073703a80a200020063703a00a200042003703900a200020002903d0013703b00a200020002903f0013703d00a200041880b6a200041a8026a290300370300200041800b6a200041a0026a290300370300200041f80a6a20004198026a290300370300200041980b6a200041b8026a290300370300200041a00b6a200041c0026a290300370300200041a80b6a200041c8026a290300370300200041b80b6a200041d8026a290300370300200041c00b6a200041e0026a290300370300200041c80b6a200041e8026a29030037030020002000290390023703f00a200020002903b0023703900b200020002903d0023703b00b200041980c6a4200370300200041880c6a200a370300200041f80b6a2008370300200041e80b6a20004188036a290300370300200041e00b6a20004180036a290300370300200041d80b6a200041f8026a290300370300200042003703900c2000200b3703800c200020093703f00b200020002903f0023703d00b2002103e2000420037029803230041106b220124002001410036020c2001410c6a280200210141a9920420004198036a220028020022023a000041aa920420022000280204724100473a0000200141021073000b200028029c032102200020002902a0033702a0032000200236029c03200020013602980320004198036a10330c0b0b000b200041e8046a200041f0076a290300370300200020002903e8073703e0040c080b200041e8046a20004180086a290300370300200020002903f8073703e0040c070b200041e8046a20004194086a2902003703002000200029028c083703e0040c060b200041e8046a200041b8086a290200370300200020002902b0083703e0040c050b200041e8046a200041dc086a290200370300200020002902d4083703e0040c040b200041e8046a20004180096a290200370300200020002902f8083703e0040c030b200041e8046a200041a4096a2902003703002000200029029c093703e0040c020b200041e8046a200041c8096a290200370300200020002902c0093703e0040c010b200041e8046a200041ec096a290200370300200020002902e4093703e0040b200041e0046a10330b200041013602900a200041900a6a103a000b1900200020012002200320044280a094a58d1d42004101106b0b2901017f230041106b22022400200220002f01003b010e20012002410e6a4102106f200241106a24000b2901017f230041106b220224002002200028020036020c20012002410c6a4104106f200241106a24000bc40101047f230041106b220124002001200036020c200141e48a04360208230041106b22022400200241086a2104230041206b22002400200042808001370218200041a99204360214200141086a200041146a105e200028021c220320002802184b0440000b200041086a200028021420031072200028020c21032004200028020836020020042003360204200041206a2400200228020c21002001200228020836020020012000360204200241106a240020012802002100200141106a240020004100470bc80101057f230041306b2202240002402000280204220320002802082204490d00200028020021052002410036020c2002200320046b22063602082002200420056a2205360204230041106b22032400200320012d00003a000f200241046a22012003410f6a4101106f200341106a2400200228020c220320022802084b0d0020012002280204200310532002410036022c20022006360228200220053602242001200241246a10542004200228022c6a22012004490d0020002001360208200241306a24000f0b000bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100f200341202001412010790c010b200320022001200210790b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a00200120004120106f0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061054200228020c220120022802084b0d0020062002280204200110532002410036022c20022004360228200220053602242006200241246a10542003200228022c6a22012003490d0020002001360208200241306a24000f0b000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061057200228020c220120022802084b0d0020062002280204200110532002410036022c20022004360228200220053602242006200241246a10542003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0b002000280200200110500b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a105920012001200228020c6a22014b0d0020002001360208200241106a24000f0b000ba00101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d04402001200241027410700c010b200241ffff004d0440200020024102744101723b010a2000410a6a2001104f0c010b200241ffffffff034d04402000200241027441027236020c2000410c6a200110500c010b2001410310702004200110500b200041106a2400200341106a24000bbf0101017f230041206b22022400200241106a2001105b02400240027f200228021041818080807846044020022d00140c010b2002200241106a41f48b044139105c20022802002201418180808078470d0120022d00040b41ff0171410146044020004281808080183702000c020b200041ad8c043602042000418080808078360200200042333702080c010b200020022900053700052000410c6a2002410c6a280000360000200020022d00043a0004200020013602000b200241206a24000b6c01017f230041206b22022400200241003a000f200241106a20012002410f6a41011074024020022802102201418180808078460440200020022d000f3a00040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b5301017f41a892042d00001a4104411010782204450440000b2000200436020c2000200336020820002002360204200041808080807836020020042001290200370200200441086a200141086a2902003702000b210020002d00004504402001410010700f0b200141011070200041016a200110540b1f00200020011057200041046a280200220020011050200041046a2001105d0b1100200020011057200041046a200110500b3301017f230041106b22022400200220002903003703002002200041086a290300370308200120024110106f200241106a24000b6c01017f230041206b220224002002410036020c200241106a20012002410c6a410410740240200228021022014181808080784604402000200228020c3602040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b6c01017f230041206b2202240020024200370308200241106a2001200241086a41081074024020022802102201418180808078460440200020022903083703080c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b0a00200120004104106f0b820302077f017e230041d0006b22042400200441086a2202200041c80010101a230041206b22002400200042808001370218200041a99204360214230041306b220124002001200236020c200041146a220341041058200141286a2205200341086a28020036020020012003290200370320200141206a220641928d041055200141186a2207200528020036020020012001290320370310200141106a22032001410c6a1056200520072802003602002001200129031037032020032006200241056a410020022d00041b1065024020022d002504402003200241266a10550c010b200141106a41908d0410520b200141286a200141186a280200360200200120012902103703202000200141206a1066200141306a2400200041106a2802002101200028020c2103200029020021082000410036020820002008370200200220001050200241046a2000105d200241256a2000105d2000280208220220002802044b0440000b20032001200028020020021004200041206a2400200441d0006a24000b34000240200204402001200210550c010b200141908d0410520b20002001290200370200200041086a200141086a2802003602000bdd0102057f017e230041106b22022400200241086a200141086a28020036020020022001290200370300230041106b22052400230041106b2203240020022802082104200241003602082004200228020422014b0440000b2002200120046b36020420022002280200220620046a360200200341086a2201200436020420012006360200200328020c2106200541086a2201200328020836020020012006360204200341106a240020052903082107200020022902003702002000200737020c200041086a200241086a280200360200200541106a2400200241106a24000b7602057f017e230041106b22002400200042003703002000410836020c20002000360208230041106b220124002001200041086a2202280204220336020c20022802002001410c6a100e2003200128020c2204490440000b20022004360204200141106a240020002903002105200041106a240020050bdc0101047f230041406a2202240020022000360210200241146a2001412110101a200241e48a043602382002200241106a36023c200241086a2105230041106b22012400230041206b22002400200042808001370218200041a99204360214200241386a200041146a105e200028021c220320002802184b0440000b200041086a200028021422042003200320046a41001071200028020c2103200141086a2204200028020836020020042003360204200041206a2400200128020c21002005200128020836020020052000360204200141106a2400200241406b24000b4d00230041306b22002400200020013602082000410c6a2002412110101a41012102200041086a1051450440200041003a000c20002001360208200041086a105121020b200041306a240020020b4301017f230041206b22012400200141186a4200370300200141106a4200370300200141086a42003703002001420037030020002001106c2100200141206a240020000ba20502067f047e230041d0016b220824002000027f2005200684500440200041023a000141010c010b20012002845020032004845072044020004200370308200041106a420037030041000c010b200841386a20034200200142001015200841186a20034200200242001015200841086a20044200200242001015200841286a2004420020014200101520084188016a2209420037030020084200370380012008200637037820082005370370200841406b290300210120082903182103200841206a29030021042008290308210e200841106a290300210f20082903282110200841306a29030021112008290338210202400240200841f0006a220a41e88d04106c0d00200841a8016a220b200f20042001200120037c220156ad7c2204200e7c2203200454ad7c2003200320112001200120107c220156ad7c7c220356ad7c220f370300200820033703a00120082002370390012008200137039801200841c8016a220c2009290300370300200841c0016a20084180016a290300370300200841b8016a200841f8006a290300370300200820082903703703b001200a106a0d00200841d0006a20084190016a220d200841b0016a22094100106d200841e0006a290300200841e8006a290300844200520d01200841d8006a29030021042008290350210e02402007450440200b200f370300200820033703a00120082001370398012008200237039001200c4200370300200842003703c001200820063703b801200820053703b0012009106a0d02200841c8006a200d2009200a106d200841f0006a106a450d010b2000200e370308200041106a200437030041000c030b200e42017c22012004200150ad7c220284500d0120002001370308200041106a200237030041000c020b000b200041013a000141010b3a0000200841d0016a24000b0b002000200141201013450bdb1f02047f167e230041c0076b22042400024002400240024002402002290310220d2001290310221184200241186a290300220e200141186a29030022108484500440200241086a290300210d2002290300210c2003450d02200c200d844200520d010c050b0240027e024002400240417f200d201185200e20108584420052200d201154200e201054200e2010511b1b2205047f200505200229030022082001290300220954200241086a290300220a200141086a290300220c54200a200c511b0d012008200985200a200c85844200520b4101460d010b200d200e8450450d0320112002290300220e542010200241086a29030022095420092010511b450d01200141086a290300210f20012903002112200979200e7942407d20094200521ba722010440200441e0016a200e200920011014200441d0016a2011201020011014200441c0016a2012200f410020016b41ff00711016200441b0016a2012200f20011014200441c8016a290300200441d8016a29030084211020042903c00120042903d001842111200441b8016a290300210f20042903b001211220042903e001210e200441e8016a29030021090b2009500d08200441a0016a2011201020094200101820044190016a20042903a001220a200441a8016a290300220b200942001015201020044198016a2903007d2011200429039001220c54ad7d210d2011200c7d210820044188016a2102034002400240200b4200520d0020044180016a200a200b200e42001015200429038001200f582002290300220c2008582008200c511b450d00200a210c0c010b200b200a50ad7d210b200a42017d220c210a200d2008200820097c220856ad7c220d500d010b0b200441f0006a200c200b200e20091015200441e0006a200f2004290370220a7d22102011200441f8006a2903007d200a200f56ad7d220d200942001018200441d0006a2004290360220a200441e8006a2903002208200942001015200d200441d8006a2903007d20102004290350220d54ad7d210f2010200d7d210b200441c8006a210203400240024020084200520d00200441406b200a2008200e4200101520042903402012582002290300220d200b58200b200d511b450d00200a210d0c010b2008200a50ad7d2108200a42017d220d210a200f200b2009200b7c220b56ad7c220f500d010b0b200441306a200d2008200e20091015200441206a20122004290330220a7d2010200441386a2903007d200a201256ad7d20011016200441286a29030021094200211220042903200c020b2003044020032001290300370300200341186a200141186a290300370300200341106a200141106a290300370300200341086a200141086a2903003703000b20004200370300200041186a4200370300200041106a4200370300200041086a42003703000c060b2009200e84500d06200441d0036a20112010200e20091018200441c0036a20042903d0032212200441d8036a2903002215200e200910152010200441c8036a2903007d201120042903c003220a54ad7d21082011200a7d2111200141086a290300210f20012903002110200979200e7942407d20094200521ba722010440200441b0036a200e200920011014200441a0036a201120082001101420044190036a2010200f410020016b41ff0071101620044180036a2010200f2001101420042903900320042903a00384211120044188036a290300210f200441b8036a2903002109200429038003211020042903b003210e20044198036a290300200441a8036a2903008421080b2009500d06200441f0026a20112008200942001018200441e0026a20042903f002220a200441f8026a290300220b2009420010152008200441e8026a2903007d201120042903e002220c54ad7d210d2011200c7d2108200441d8026a2102034002400240200b4200520d00200441d0026a200a200b200e4200101520042903d002200f582002290300220c2008582008200c511b450d00200a210c0c010b200b200a50ad7d210b200a42017d220c210a200d2008200820097c220856ad7c220d500d010b0b200441c0026a200c200b200e20091015200441b0026a200f20042903c002220a7d22142011200441c8026a2903007d200a200f56ad7d220d200942001018200441a0026a20042903b002220a200441b8026a2903002208200942001015200d200441a8026a2903007d201420042903a002220d54ad7d210f2014200d7d210b20044198026a210203400240024020084200520d0020044190026a200a2008200e420010152004290390022010582002290300220d200b58200b200d511b450d00200a210d0c010b2008200a50ad7d2108200a42017d220d210a200f200b2009200b7c220b56ad7c220f500d010b0b20044180026a200d2008200e20091015200441f0016a2010200429038002220a7d201420044188026a2903007d200a201056ad7d20011016200441f8016a290300210920042903f0010b210a20030440200342003703102003200a370300200341186a4200370300200320093703080b200020123703102000200d370300200041186a201537030020002008200c7c3703080c040b027e200e79200d7942407d200e4200521ba72205450440200141086a2903002108200241086a2903002115200129030021092002290300211b42000c010b200441b0076a200d200e20051014200441a0076a2002290300220a200241086a290300220d41800120056b2202101620044190076a200a200d20051014200441f0066a201120102002101620044180076a20012903002209200141086a290300220820021016200441e0066a201120102005101420044188076a290300200441e8066a29030084211020042903800720042903e006842111200441a8076a290300200441b8076a29030084210e20042903a00720042903b00784210d20044198076a290300211520042903f0062112200429039007211b200441f8066a2903000b2119200441d0066a2009200820051014200441d8066a290300211a427f210c20042903d006211c427f210a027e0240200d201258200e201958200e2019511b0d0020112114201021172012210f20192108200d2116200e220c79200d7942407d200c4200521ba722010440200441c0066a200d200c20011014200441b0066a200f200820011014200441a0066a20112010410020016b41ff0071101620044190066a201120102001101420042903a00620042903b00684210f20044198066a2903002117200429039006211420042903c0062116200441a8066a290300200441b8066a290300842108200441c8066a290300210c0b200c500d0620044180066a200f2008200c42001018200441f0056a200429038006220b20044188066a2903002209200c420010152008200441f8056a2903007d200f20042903f005220854ad7d210a200f20087d2108200441e8056a210203400240024020094200520d00200441e0056a200b200920164200101520042903e0052017582002290300221320085820082013511b450d00200b21130c010b2009200b50ad7d2109200b42017d2213210b200a20082008200c7c220856ad7c220a500d010b0b200441d0056a201320092016200c1015200441c0056a201720042903d005220a7d2218200f200441d8056a2903007d200a201756ad7d2208200c42001018200441b0056a20042903c005220a200441c8056a290300220b200c420010152008200441b8056a2903007d201820042903b005220854ad7d210f201820087d2108200441a8056a2102034002400240200b4200520d00200441a0056a200a200b20164200101520042903a0052014582002290300220920085820082009511b450d00200a21090c010b200b200a50ad7d210b200a42017d2209210a200f20082008200c7c220856ad7c220f500d010b0b20044190056a2009200b2016200c101520044180056a2014200429039005220a7d201820044198056a2903007d200a201456ad7d20011016200b20137c210a20044188056a2903002108200429038005210b200441f8046a2101024003400240200441e0046a2009200a201b2015106e20042903f004220f200b562001290300220c2008562008200c511b450440200b200f852008200c85844200520d0120042903e004201c58200441e8046a290300220c201a58200c201a511b0d010b200b200b200d7c220b562202ad2008200e7c7c220c20085121062008200c562107200a200950ad7d210a200c2108200942017d220c21092002200720061b450d010c020b0b2009210c0b200a200c8450450d004200210c4200210a420021144200210842002109420021134200210b42000c010b200441c0046a201b2015200c200a106e200441c8046a290300210820042903c0042114200441a0046a200d200e200c200a106e200441b8046a29030020042903b004220f20042903d004220b20042903a0047c2209200b5422012001ad200441d8046a290300220b200441a8046a2903007c7c2213200b54200b2013511bad7c220b200f54ad7c0b211d2019201d200b20092014201c5622012008201a562008201a511bad7c22162009542202201320132002ad7c22135620092016581b20112016542202201020135420102013511b72ad7c2217200b542206ad7c22187d20122017542207ad7d210f201220177d2112201020137d2002ad7d2110201120167d2113201a20087d2001ad7d2111201c20147d2109027e20062018201d54200b2017581b2007201820195620182019511b72450440201221152013210d201021082009210b20112109200c0c010b200f2012200d2009201b7c220b20095422012001ad201120157c7c220920115420092011511bad7c2208200d542201200e200e2001ad7c220e562008200d5a1b200820137c220d20135422012001ad200e20107c7c220820105420082010511b72ad7c2215201254ad7c210f200a200c50ad7d210a200c42017d0b211120044190046a200b20092005101620044180046a200d20082005101620044188046a290300210920044198046a290300210b200429038004210e200429039004210c20050440200441f0036a200d2008410020056b41ff007122011014200441e0036a2015200f200110142009200441e8036a290300842109200e20042903e00384210e200b200441f8036a29030084210b200c20042903f00384210c0b200304402003200e3703102003200c370300200341186a20093703002003200b3703080b2000420037031020002011370300200041186a42003703002000200a3703080c030b2001290300210a200141086a290300220b2108230041206b220124002001200a2008200c200d101720012903102108200441106a2202200141186a29030037030820022008370300200141206a240020034200370310200341186a42003703002003200441186a290300370308200320042903103703000c010b200c200d84500d02200141086a290300210b2001290300210a0b2004200a200b200c200d101820004200370310200041186a42003703002000200441086a290300370308200020042903003703000b200441c0076a24000f0b000bc40101017f230041406a22052400200541306a20034200200142001015200541106a20034200200242001015200541206a20044200200142001015200520044200200242001015200020052903303703002000200541386a290300220220052903107c220120052903207c22033703082000200541186a2903002001200254ad7c220420052903007c2202200541286a2903002001200356ad7c7c2201370310200041186a2001200254ad200541086a2903002002200454ad7c7c370300200541406b24000b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b200120021079200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041005220136020420002001417f473602000b19002000200120021007220136020420002001417f473602000b0d00200041a9920420011008000b5a01017f2000027f2003200128020422044d04402002200320012802002202200310792001200420036b3602042001200220036a3602004181808080780c010b2000421e3702082000418890043602044180808080780b3602000b9e0101037f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440230041106b22022400200241086a2004200141001076200228020c2104200341086a2205200228020836020020052004360204200241106a240020032802080c010b2003200420014101107620032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b2b0020020440200345044041a892042d00001a0b20012002107821010b20002002360204200020013602000b7501047f230041106b22042400230041106b22032400200341086a200241001075200328020c2105200441086a2206200328020836020020062005360204200341106a240020042802082103200428020c2001200210102101200020023602082000200136020420002003360200200441106a24000bf00101047f230041106b2203240041ac92052802004504403f00210241b0920541c0920536020041ac9205410136020041b4920520024110743602000b200341086a21040240200041b092052802006a41016b410020006b71220020016a22022000490d0041b492052802002002490440200141ffff036a22022001490d01200241107640002200417f460d012000411074220020024180807c716a22022000490d0141b492052002360200200020016a22022000490d010b41b092052002360200410121050b200420003602042004200536020020032802082100200328020c2101200341106a24002001410020001b0b15002001200346044020002002200110101a0f0b000b6002017f027e230041206b220324002003200136021c200320023602182003200341186a101c200329030022044202510440000b200341106a29030021052000200329030837030820002004370300200041106a2005370300200341206a24000b8e0202077f017e230041406a22042400200441386a2205200041186a290000370200200441306a2206200041106a290000370200200441286a2207200041086a290000370200200420002900003702202004200336021c20042004411c6a2208103b2004290300220b4202520440027f200142002004290308200b5022091b22017c220b200154220a200aad4200200441106a29030020091b220120027c7c220220015420012002511b4504402004200b370300200420023703082007200041086a2900003702002006200041106a2900003702002005200041186a2900003702002004200336021c2004200029000037022020082004103d41030c010b41010b2100200441406b240020000f0b000b0bb3110400418080040bb4036f7574206f662072616e6765206465636f64696e6720436f6d706163743c7533323e00008cc898936735ce1e945880b44a6f6861a7148a5a86ded24e436f756c64206e6f74206465636f64652060486173682e3060436f756c64206e6f74206465636f646520604163636f756e7449642e306000436f756c64206e6f74206465636f6465206050535032324572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f6465206050535032324572726f723a3a536166655472616e73666572436865636b4661696c65642e3060436f756c64206e6f74206465636f6465206050535032324572726f72602c2076617269616e7420646f65736e2774206578697374436f756c64206e6f74206465636f6465206050535032324572726f723a3a437573746f6d2e3060436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c4275696c64657250535032323a3a6163636f756e745f696460436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c466f7277617264657250535032323a3a6275696c646572600041d583040b8e0a0100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403436f756c64206e6f74206465636f6465206056657374696e674572726f72602c2076617269616e7420646f65736e2774206578697374436f756c64206e6f74206465636f6465206056657374696e674572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f6465206056657374696e674572726f723a3a437573746f6d2e3060436f756c64206e6f74206465636f6465206056657374696e674572726f723a3a50535032324572726f722e3060436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c4275696c64657247656e6572616c566573743a3a6163636f756e745f696460436f756c64206e6f74206465636f646520605f5f696e6b5f547261697443616c6c466f7277617264657247656e6572616c566573743a3a6275696c64657260496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e67214e6f7420656e6f756768206461746120746f206465636f646520766563746f72496e76616c696420757466382073657175656e636500756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d6528542960436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60756e65787065637465642066697273742062797465206465636f64696e6720526573756c74436f756c64206e6f74204465636f64652060526573756c743a3a4f6b28542960436f756c64206e6f7420726573756c742076617269616e74206279746520666f722060526573756c7460436f756c64206e6f74206465636f64652060526573756c743a3a4572726f72284529600109c9f10870d40d31bd2e00dcdd473843bbbd2f6226d6e16650526206fc356fd6010f4fb9a57d5e9b962bad8ebd5f696bcfcc8967e74d880d25b643d4d05913cd6001feb0551b761be4d75a51e790ab505b33181bf04fb8c012ed11081ae0c12d7dbd01cc59a84bd5940e7c8499e4de6e247a94899a0f5793a90e20140b4e6a9f4b38e30000000000100102030405060708090a0b0c0d0e00f9372874510afc692f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000006805010069000000980000002e00000068050100690000009300000030000000436f756c64206e6f74206465636f646520604c616e674572726f72602c206661696c656420746f20726561642076617269616e742062797465436f756c64206e6f74206465636f646520604c616e674572726f72602c2076617269616e7420646f65736e2774206578697374496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e672100014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b41433a3a496e76616c696443616c6c657241433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e740041888e040b9e032f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e72730000080701006a0000005d0000000e000000100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e392f7372632f636f6465632e7273009307010064000000770000000e0000004e6f7420656e6f756768206461746120746f2066696c6c2062756666657201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041e891040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_tge","version":"1.0.0","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"start_time","type":{"displayName":["Timestamp"],"type":15}},{"label":"phase_two_duration","type":{"displayName":["Timestamp"],"type":15}},{"label":"generated_token_address","type":{"displayName":["AccountId"],"type":9}},{"label":"contribution_token_address","type":{"displayName":["AccountId"],"type":9}},{"label":"vester_address","type":{"displayName":["AccountId"],"type":9}},{"label":"founders_address","type":{"displayName":["AccountId"],"type":9}},{"label":"foundation_address","type":{"displayName":["AccountId"],"type":9}},{"label":"strategic_reserves_address","type":{"displayName":["AccountId"],"type":9}},{"label":"phase_one_token_cap","type":{"displayName":["u128"],"type":16}},{"label":"cost_to_mint_milliard_tokens","type":{"displayName":["u128"],"type":16}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":46},"selector":"0x9bae9d5e"}],"docs":[" A contract repsonsible for generating the Abax Token."],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":16},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":74},"hash":{"displayName":["Hash"],"type":67},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":15}},"events":[{"args":[{"docs":[],"indexed":true,"label":"contributor","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"to_create","type":{"displayName":["Balance"],"type":16}},{"docs":[],"indexed":false,"label":"referrer","type":{"displayName":["Option"],"type":8}}],"docs":[],"label":"Contribution","module_path":"abax_tge::modules::tge::events","signature_topic":"0x09c9f10870d40d31bd2e00dcdd473843bbbd2f6226d6e16650526206fc356fd6"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":16}},{"docs":[],"indexed":false,"label":"fee_paid","type":{"displayName":["Balance"],"type":16}}],"docs":[],"label":"Stakedrop","module_path":"abax_tge::modules::tge::events","signature_topic":"0x0f4fb9a57d5e9b962bad8ebd5f696bcfcc8967e74d880d25b643d4d05913cd60"},{"args":[{"docs":[],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"multiplier","type":{"displayName":["u16"],"type":17}}],"docs":[],"label":"BonusMultiplierSet","module_path":"abax_tge::modules::tge::events","signature_topic":"0xfeb0551b761be4d75a51e790ab505b33181bf04fb8c012ed11081ae0c12d7dbd"},{"args":[],"docs":[],"label":"PhaseChanged","module_path":"abax_tge::modules::tge::events","signature_topic":"0xcc59a84bd5940e7c8499e4de6e247a94899a0f5793a90e20140b4e6a9f4b38e3"},{"args":[{"docs":["The account that triggered the release."],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account to which the tokens are sent."],"indexed":true,"label":"to","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":16}}],"docs":["Emitted when vested tokens are released"],"label":"TokenReleased","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b"},{"args":[{"docs":[],"indexed":true,"label":"creator","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens will be sent."],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":16}},{"docs":[],"indexed":false,"label":"schedule","type":{"displayName":["VestingSchedule"],"type":71}}],"docs":["Emitted when general_vest schedule is created"],"label":"VestingScheduled","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":16}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":16}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":47},"messages":[{"args":[],"default":false,"docs":[],"label":"AbaxTGE::init","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0xe8eac8db"},{"args":[{"label":"to_create","type":{"displayName":["Balance"],"type":16}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"label":"referrer","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AbaxTGE::contribute","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":56},"selector":"0x3e8af8db"},{"args":[{"label":"amount","type":{"displayName":["Balance"],"type":16}},{"label":"fee_paid","type":{"displayName":["Balance"],"type":16}},{"label":"receiver","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGE::stakedrop","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0x99c5ad21"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGE::collect_reserved","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":56},"selector":"0x4e5362fc"},{"args":[{"label":"contributor","type":{"displayName":["AccountId"],"type":9}},{"label":"bonus_multiplier_e3","type":{"displayName":["u16"],"type":17}}],"default":false,"docs":[],"label":"AbaxTGE::set_exp_bonus_multiplier_e3","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0x3ce9c9cd"},{"args":[{"label":"referrer","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGE::register_referrer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0x635c09b4"},{"args":[],"default":false,"docs":[],"label":"AbaxTGEView::tge_parameters","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0x154441fd"},{"args":[],"default":false,"docs":[],"label":"AbaxTGEView::total_amount_minted","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0xa817b324"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::exp_bonus_multiplier_of_e3","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":61},"selector":"0x22f57b10"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::contribution_bonus_multiplier_of_e3","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":61},"selector":"0x5cc6ab8a"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::is_referrer","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":62},"selector":"0x16b69b52"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::reserved_for","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0xcc97961f"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::contributed_amount_by","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0x01b8fa0d"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::generated_base_amount_by","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0x355173ed"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTGEView::generated_bonus_amount_by","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0x8c7033fe"},{"args":[{"label":"to_create","type":{"displayName":["Balance"],"type":16}}],"default":false,"docs":[],"label":"AbaxTGEView::calculate_cost","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":60},"selector":"0x9f8aefd7"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":62},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":64},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":65},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":65},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":65},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":65},"selector":"0x71a64883"},{"args":[{"label":"set_code_hash","type":{"displayName":["Hash"],"type":67}}],"default":false,"docs":[],"label":"SetCodeHash::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":68},"selector":"0xabb60cdf"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access_control"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":15}},"name":"start_time"},{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":15}},"name":"0"}],"name":"Some"}}}},"name":"phase_two_start_time"},{"layout":{"leaf":{"key":"0x00000000","ty":15}},"name":"phase_two_duration"},{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"generated_token_address"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderPSP22"}},"name":"contribution_token"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderGeneralVest"}},"name":"vester"},{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"founders_address"},{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"foundation_address"},{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"strategic_reserves_address"},{"layout":{"leaf":{"key":"0x00000000","ty":16}},"name":"phase_one_token_cap"},{"layout":{"leaf":{"key":"0x00000000","ty":16}},"name":"cost_to_mint_milliard_tokens"},{"layout":{"leaf":{"key":"0x00000000","ty":16}},"name":"total_amount_minted"},{"layout":{"root":{"layout":{"leaf":{"key":"0xa7148a5a","ty":17}},"root_key":"0xa7148a5a","ty":18}},"name":"exp_bonus_multiplier_e3_by_address"},{"layout":{"root":{"layout":{"leaf":{"key":"0x6735ce1e","ty":16}},"root_key":"0x6735ce1e","ty":22}},"name":"contributed_amount_by_account"},{"layout":{"root":{"layout":{"leaf":{"key":"0x8cc89893","ty":16}},"root_key":"0x8cc89893","ty":26}},"name":"base_created_by_account"},{"layout":{"root":{"layout":{"leaf":{"key":"0x4a6f6861","ty":16}},"root_key":"0x4a6f6861","ty":30}},"name":"bonus_created_by_account"},{"layout":{"root":{"layout":{"leaf":{"key":"0x945880b4","ty":16}},"root_key":"0x945880b4","ty":34}},"name":"reserved_tokens"},{"layout":{"root":{"layout":{"leaf":{"key":"0x86ded24e","ty":4}},"root_key":"0x86ded24e","ty":38}},"name":"referrers"}],"name":"PublicContributionStorage"}},"name":"tge"}],"name":"TGEContract"}},"root_key":"0x00000000","ty":42}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"primitive":"u64"}}},{"id":16,"type":{"def":{"primitive":"u128"}}},{"id":17,"type":{"def":{"primitive":"u16"}}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":17},{"name":"KeyType","type":19}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"L","type":20},{"name":"R","type":21}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":16},{"name":"KeyType","type":23}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"L","type":24},{"name":"R","type":25}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":25,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":16},{"name":"KeyType","type":27}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"L","type":28},{"name":"R","type":29}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":16},{"name":"KeyType","type":31}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"L","type":32},{"name":"R","type":33}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":16},{"name":"KeyType","type":35}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"L","type":36},{"name":"R","type":37}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":37,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":38,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":4},{"name":"KeyType","type":39}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":39,"type":{"def":{"composite":{}},"params":[{"name":"L","type":40},{"name":"R","type":41}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":40,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":41,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":42,"type":{"def":{"composite":{"fields":[{"name":"access_control","type":43,"typeName":",>>::Type"},{"name":"tge","type":44,"typeName":",>>::Type"}]}},"path":["abax_tge","abax_tge_contract","TGEContract"]}},{"id":43,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":44,"type":{"def":{"composite":{"fields":[{"name":"start_time","type":15,"typeName":",>>::Type"},{"name":"phase_two_start_time","type":45,"typeName":" as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<3814414010u32, ()>,>>::Type"},{"name":"phase_two_duration","type":15,"typeName":",>>::Type"},{"name":"generated_token_address","type":9,"typeName":",>>::Type"},{"name":"contribution_token","type":9,"typeName":",>>::Type"},{"name":"vester","type":9,"typeName":",>>::Type"},{"name":"founders_address","type":9,"typeName":",>>::Type"},{"name":"foundation_address","type":9,"typeName":",>>::Type"},{"name":"strategic_reserves_address","type":9,"typeName":",>>::Type"},{"name":"phase_one_token_cap","type":16,"typeName":",>>::Type"},{"name":"cost_to_mint_milliard_tokens","type":16,"typeName":",>>::Type"},{"name":"total_amount_minted","type":16,"typeName":",>>::Type"},{"name":"exp_bonus_multiplier_e3_by_address","type":18,"typeName":">\nas::ink::storage::traits::AutoStorableHint<::ink::storage::\ntraits::ManualKey<1172862652u32, ()>,>>::Type"},{"name":"contributed_amount_by_account","type":22,"typeName":"> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2581529101u32, ()>,>>::Type"},{"name":"base_created_by_account","type":26,"typeName":"> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<3956750023u32, ()>,>>::Type"},{"name":"bonus_created_by_account","type":30,"typeName":"> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2148838658u32, ()>,>>::Type"},{"name":"reserved_tokens","type":34,"typeName":"> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2496788806u32, ()>,>>::Type"},{"name":"referrers","type":38,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n913713862u32, ()>,>>::Type"}]}},"path":["abax_tge","modules","tge","storage_fields","public_contribution","PublicContributionStorage"]}},{"id":45,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":15}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":15}],"path":["Option"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":47}],"path":["Result"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":48,"type":{"def":{"variant":{"variants":[{"fields":[{"type":49}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":49},{"name":"E","type":47}],"path":["Result"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":50}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":50}],"path":["Result"]}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":51,"typeName":"PSP22Error"}],"index":0,"name":"PSP22Error"},{"fields":[{"type":53,"typeName":"MathError"}],"index":1,"name":"MathError"},{"fields":[{"type":54,"typeName":"AccessControlError"}],"index":2,"name":"AccessControlError"},{"fields":[{"type":55,"typeName":"VestingError"}],"index":3,"name":"CreateVestFailed"},{"index":4,"name":"AmountLessThanMinimum"},{"index":5,"name":"TGENotStarted"},{"index":6,"name":"TGEStarted"},{"index":7,"name":"TGEEnded"},{"index":8,"name":"Phase1TokenCapReached"},{"index":9,"name":"ContributionViaContract"},{"index":10,"name":"InvalidReferrer"},{"index":11,"name":"NoReservedTokens"},{"index":12,"name":"AlreadyInitialized"}]}},"path":["abax_tge","modules","tge","errors","TGEError"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":52,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":52,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":52,"type":{"def":{"primitive":"str"}}},{"id":53,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":55,"type":{"def":{"variant":{"variants":[{"fields":[{"type":52,"typeName":"String"}],"index":0,"name":"Custom"},{"fields":[{"type":51,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"index":2,"name":"NativeTransferFailed"},{"index":3,"name":"InvalidAmountPaid"}]}},"path":["pendzl_contracts","finance","general_vest","VestingError"]}},{"id":56,"type":{"def":{"variant":{"variants":[{"fields":[{"type":57}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":57},{"name":"E","type":47}],"path":["Result"]}},{"id":57,"type":{"def":{"variant":{"variants":[{"fields":[{"type":16}],"index":0,"name":"Ok"},{"fields":[{"type":50}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":16},{"name":"E","type":50}],"path":["Result"]}},{"id":58,"type":{"def":{"variant":{"variants":[{"fields":[{"type":59}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":59},{"name":"E","type":47}],"path":["Result"]}},{"id":59,"type":{"def":{"tuple":[15,45,15,9,9,9,9,9,9,16,16]}}},{"id":60,"type":{"def":{"variant":{"variants":[{"fields":[{"type":16}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":16},{"name":"E","type":47}],"path":["Result"]}},{"id":61,"type":{"def":{"variant":{"variants":[{"fields":[{"type":17}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":17},{"name":"E","type":47}],"path":["Result"]}},{"id":62,"type":{"def":{"variant":{"variants":[{"fields":[{"type":63}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":63},{"name":"E","type":47}],"path":["Result"]}},{"id":63,"type":{"def":{"primitive":"bool"}}},{"id":64,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":47}],"path":["Result"]}},{"id":65,"type":{"def":{"variant":{"variants":[{"fields":[{"type":66}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":66},{"name":"E","type":47}],"path":["Result"]}},{"id":66,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":54}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":54}],"path":["Result"]}},{"id":67,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":68,"type":{"def":{"variant":{"variants":[{"fields":[{"type":69}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":69},{"name":"E","type":47}],"path":["Result"]}},{"id":69,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":70}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":70}],"path":["Result"]}},{"id":70,"type":{"def":{"variant":{"variants":[{"fields":[{"type":52,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":52,"typeName":"String"}],"index":2,"name":"PermissionError"}]}},"path":["pendzl_contracts","upgradeability","set_code_hash","SetCodeHashError"]}},{"id":71,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15,"typeName":"Timestamp"},{"type":15,"typeName":"Timestamp"}],"index":0,"name":"Constant"},{"fields":[{"type":72,"typeName":"ExternalTimeConstraint"}],"index":1,"name":"External"}]}},"path":["pendzl_contracts","finance","general_vest","VestingSchedule"]}},{"id":72,"type":{"def":{"composite":{"fields":[{"name":"account","type":9,"typeName":"AccountId"},{"name":"fallback_values","type":73,"typeName":"(Timestamp, Timestamp)"}]}},"path":["pendzl_contracts","finance","general_vest","ExternalTimeConstraint"]}},{"id":73,"type":{"def":{"tuple":[15,15]}}},{"id":74,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_tge.json b/artifacts/abax_tge.json new file mode 100644 index 0000000..b0694bf --- /dev/null +++ b/artifacts/abax_tge.json @@ -0,0 +1,3204 @@ +{ + "source": { + "hash": "0xd2c95a99b329cb6b43cc9c56eb1700dbc48644d890f129f33ab06bd930013b9d", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_tge", + "version": "1.0.0", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "start_time", + "type": { + "displayName": ["Timestamp"], + "type": 15 + } + }, + { + "label": "phase_two_duration", + "type": { + "displayName": ["Timestamp"], + "type": 15 + } + }, + { + "label": "generated_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "contribution_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "vester_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "founders_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "foundation_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "strategic_reserves_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "phase_one_token_cap", + "type": { + "displayName": ["u128"], + "type": 16 + } + }, + { + "label": "cost_to_mint_milliard_tokens", + "type": { + "displayName": ["u128"], + "type": 16 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 46 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [" A contract repsonsible for generating the Abax Token."], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 16 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 74 + }, + "hash": { + "displayName": ["Hash"], + "type": 67 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 15 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "contributor", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "to_create", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "docs": [], + "indexed": false, + "label": "referrer", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [], + "label": "Contribution", + "module_path": "abax_tge::modules::tge::events", + "signature_topic": "0x09c9f10870d40d31bd2e00dcdd473843bbbd2f6226d6e16650526206fc356fd6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee_paid", + "type": { + "displayName": ["Balance"], + "type": 16 + } + } + ], + "docs": [], + "label": "Stakedrop", + "module_path": "abax_tge::modules::tge::events", + "signature_topic": "0x0f4fb9a57d5e9b962bad8ebd5f696bcfcc8967e74d880d25b643d4d05913cd60" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "multiplier", + "type": { + "displayName": ["u16"], + "type": 17 + } + } + ], + "docs": [], + "label": "BonusMultiplierSet", + "module_path": "abax_tge::modules::tge::events", + "signature_topic": "0xfeb0551b761be4d75a51e790ab505b33181bf04fb8c012ed11081ae0c12d7dbd" + }, + { + "args": [], + "docs": [], + "label": "PhaseChanged", + "module_path": "abax_tge::modules::tge::events", + "signature_topic": "0xcc59a84bd5940e7c8499e4de6e247a94899a0f5793a90e20140b4e6a9f4b38e3" + }, + { + "args": [ + { + "docs": ["The account that triggered the release."], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account to which the tokens are sent."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 16 + } + } + ], + "docs": ["Emitted when vested tokens are released"], + "label": "TokenReleased", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "creator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens will be sent."], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "docs": [], + "indexed": false, + "label": "schedule", + "type": { + "displayName": ["VestingSchedule"], + "type": 71 + } + } + ], + "docs": ["Emitted when general_vest schedule is created"], + "label": "VestingScheduled", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 16 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 16 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 47 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxTGE::init", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0xe8eac8db" + }, + { + "args": [ + { + "label": "to_create", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "referrer", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGE::contribute", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 56 + }, + "selector": "0x3e8af8db" + }, + { + "args": [ + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "label": "fee_paid", + "type": { + "displayName": ["Balance"], + "type": 16 + } + }, + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGE::stakedrop", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0x99c5ad21" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGE::collect_reserved", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 56 + }, + "selector": "0x4e5362fc" + }, + { + "args": [ + { + "label": "contributor", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "bonus_multiplier_e3", + "type": { + "displayName": ["u16"], + "type": 17 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGE::set_exp_bonus_multiplier_e3", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0x3ce9c9cd" + }, + { + "args": [ + { + "label": "referrer", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGE::register_referrer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0x635c09b4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxTGEView::tge_parameters", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0x154441fd" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxTGEView::total_amount_minted", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0xa817b324" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::exp_bonus_multiplier_of_e3", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 61 + }, + "selector": "0x22f57b10" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::contribution_bonus_multiplier_of_e3", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 61 + }, + "selector": "0x5cc6ab8a" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::is_referrer", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 62 + }, + "selector": "0x16b69b52" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::reserved_for", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0xcc97961f" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::contributed_amount_by", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0x01b8fa0d" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::generated_base_amount_by", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0x355173ed" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::generated_bonus_amount_by", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0x8c7033fe" + }, + { + "args": [ + { + "label": "to_create", + "type": { + "displayName": ["Balance"], + "type": 16 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTGEView::calculate_cost", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 60 + }, + "selector": "0x9f8aefd7" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 62 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 64 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 65 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 65 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 65 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 65 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "set_code_hash", + "type": { + "displayName": ["Hash"], + "type": 67 + } + } + ], + "default": false, + "docs": [], + "label": "SetCodeHash::set_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 68 + }, + "selector": "0xabb60cdf" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access_control" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 15 + } + }, + "name": "start_time" + }, + { + "layout": { + "enum": { + "dispatchKey": "0x00000000", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 15 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "phase_two_start_time" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 15 + } + }, + "name": "phase_two_duration" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "generated_token_address" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderPSP22" + } + }, + "name": "contribution_token" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderGeneralVest" + } + }, + "name": "vester" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "founders_address" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "foundation_address" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "strategic_reserves_address" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 16 + } + }, + "name": "phase_one_token_cap" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 16 + } + }, + "name": "cost_to_mint_milliard_tokens" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 16 + } + }, + "name": "total_amount_minted" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xa7148a5a", + "ty": 17 + } + }, + "root_key": "0xa7148a5a", + "ty": 18 + } + }, + "name": "exp_bonus_multiplier_e3_by_address" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x6735ce1e", + "ty": 16 + } + }, + "root_key": "0x6735ce1e", + "ty": 22 + } + }, + "name": "contributed_amount_by_account" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x8cc89893", + "ty": 16 + } + }, + "root_key": "0x8cc89893", + "ty": 26 + } + }, + "name": "base_created_by_account" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x4a6f6861", + "ty": 16 + } + }, + "root_key": "0x4a6f6861", + "ty": 30 + } + }, + "name": "bonus_created_by_account" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x945880b4", + "ty": 16 + } + }, + "root_key": "0x945880b4", + "ty": 34 + } + }, + "name": "reserved_tokens" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x86ded24e", + "ty": 4 + } + }, + "root_key": "0x86ded24e", + "ty": 38 + } + }, + "name": "referrers" + } + ], + "name": "PublicContributionStorage" + } + }, + "name": "tge" + } + ], + "name": "TGEContract" + } + }, + "root_key": "0x00000000", + "ty": 42 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 16, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 17, + "type": { + "def": { + "primitive": "u16" + } + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 17 + }, + { + "name": "KeyType", + "type": 19 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 20 + }, + { + "name": "R", + "type": 21 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 16 + }, + { + "name": "KeyType", + "type": 23 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 24 + }, + { + "name": "R", + "type": 25 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 16 + }, + { + "name": "KeyType", + "type": 27 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 28 + }, + { + "name": "R", + "type": 29 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 16 + }, + { + "name": "KeyType", + "type": 31 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 32 + }, + { + "name": "R", + "type": 33 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 16 + }, + { + "name": "KeyType", + "type": 35 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 36 + }, + { + "name": "R", + "type": 37 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 39 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 40 + }, + { + "name": "R", + "type": 41 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 42, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access_control", + "type": 43, + "typeName": ",>>::Type" + }, + { + "name": "tge", + "type": 44, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_tge", "abax_tge_contract", "TGEContract"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 44, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "start_time", + "type": 15, + "typeName": ",>>::Type" + }, + { + "name": "phase_two_start_time", + "type": 45, + "typeName": " as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<3814414010u32, ()>,>>::Type" + }, + { + "name": "phase_two_duration", + "type": 15, + "typeName": ",>>::Type" + }, + { + "name": "generated_token_address", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "contribution_token", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "vester", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "founders_address", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "foundation_address", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "strategic_reserves_address", + "type": 9, + "typeName": ",>>::Type" + }, + { + "name": "phase_one_token_cap", + "type": 16, + "typeName": ",>>::Type" + }, + { + "name": "cost_to_mint_milliard_tokens", + "type": 16, + "typeName": ",>>::Type" + }, + { + "name": "total_amount_minted", + "type": 16, + "typeName": ",>>::Type" + }, + { + "name": "exp_bonus_multiplier_e3_by_address", + "type": 18, + "typeName": ">\nas::ink::storage::traits::AutoStorableHint<::ink::storage::\ntraits::ManualKey<1172862652u32, ()>,>>::Type" + }, + { + "name": "contributed_amount_by_account", + "type": 22, + "typeName": "> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2581529101u32, ()>,>>::Type" + }, + { + "name": "base_created_by_account", + "type": 26, + "typeName": "> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<3956750023u32, ()>,>>::Type" + }, + { + "name": "bonus_created_by_account", + "type": 30, + "typeName": "> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2148838658u32, ()>,>>::Type" + }, + { + "name": "reserved_tokens", + "type": 34, + "typeName": "> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2496788806u32, ()>,>>::Type" + }, + { + "name": "referrers", + "type": 38, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n913713862u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_tge", "modules", "tge", "storage_fields", "public_contribution", "PublicContributionStorage"] + } + }, + { + "id": 45, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 15 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + } + ], + "path": ["Option"] + } + }, + { + "id": 46, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 49 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 49 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 50 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 50 + } + ], + "path": ["Result"] + } + }, + { + "id": 50, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 51, + "typeName": "PSP22Error" + } + ], + "index": 0, + "name": "PSP22Error" + }, + { + "fields": [ + { + "type": 53, + "typeName": "MathError" + } + ], + "index": 1, + "name": "MathError" + }, + { + "fields": [ + { + "type": 54, + "typeName": "AccessControlError" + } + ], + "index": 2, + "name": "AccessControlError" + }, + { + "fields": [ + { + "type": 55, + "typeName": "VestingError" + } + ], + "index": 3, + "name": "CreateVestFailed" + }, + { + "index": 4, + "name": "AmountLessThanMinimum" + }, + { + "index": 5, + "name": "TGENotStarted" + }, + { + "index": 6, + "name": "TGEStarted" + }, + { + "index": 7, + "name": "TGEEnded" + }, + { + "index": 8, + "name": "Phase1TokenCapReached" + }, + { + "index": 9, + "name": "ContributionViaContract" + }, + { + "index": 10, + "name": "InvalidReferrer" + }, + { + "index": 11, + "name": "NoReservedTokens" + }, + { + "index": 12, + "name": "AlreadyInitialized" + } + ] + } + }, + "path": ["abax_tge", "modules", "tge", "errors", "TGEError"] + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 52, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 52, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 52, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 53, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 54, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 55, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 52, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "fields": [ + { + "type": 51, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "index": 2, + "name": "NativeTransferFailed" + }, + { + "index": 3, + "name": "InvalidAmountPaid" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingError"] + } + }, + { + "id": 56, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 57 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 57 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 57, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 16 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 50 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 16 + }, + { + "name": "E", + "type": 50 + } + ], + "path": ["Result"] + } + }, + { + "id": 58, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 59 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 59 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 59, + "type": { + "def": { + "tuple": [15, 45, 15, 9, 9, 9, 9, 9, 9, 16, 16] + } + } + }, + { + "id": 60, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 16 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 16 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 61, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 17 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 17 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 62, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 63 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 63 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 63, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 64, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 65, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 66 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 66 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 66, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 54 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 54 + } + ], + "path": ["Result"] + } + }, + { + "id": 67, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 68, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 69 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 69 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 69, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 70 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 70 + } + ], + "path": ["Result"] + } + }, + { + "id": 70, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 52, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "SetCodeHashFailed" + }, + { + "fields": [ + { + "type": 52, + "typeName": "String" + } + ], + "index": 2, + "name": "PermissionError" + } + ] + } + }, + "path": ["pendzl_contracts", "upgradeability", "set_code_hash", "SetCodeHashError"] + } + }, + { + "id": 71, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15, + "typeName": "Timestamp" + }, + { + "type": 15, + "typeName": "Timestamp" + } + ], + "index": 0, + "name": "Constant" + }, + { + "fields": [ + { + "type": 72, + "typeName": "ExternalTimeConstraint" + } + ], + "index": 1, + "name": "External" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingSchedule"] + } + }, + { + "id": 72, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "fallback_values", + "type": 73, + "typeName": "(Timestamp, Timestamp)" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "ExternalTimeConstraint"] + } + }, + { + "id": 73, + "type": { + "def": { + "tuple": [15, 15] + } + } + }, + { + "id": 74, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_tge.wasm b/artifacts/abax_tge.wasm new file mode 100644 index 0000000..184ee63 Binary files /dev/null and b/artifacts/abax_tge.wasm differ diff --git a/artifacts/abax_token.contract b/artifacts/abax_token.contract new file mode 100644 index 0000000..2cb7128 --- /dev/null +++ b/artifacts/abax_token.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x0035c1197569193c293a79d7e0b0ce01abb1d81bf9df077291745da7ff81231b","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000014c0d60027f7f0060017f0060037f7f7f0060047f7f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f017f60017f017f6000017f60057f7f7f7f7f0060037f7e7e0060027e7e017f0282020d057365616c310b6765745f73746f726167650007057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e740003057365616c320b7365745f73746f726167650007057365616c310d636c6561725f73746f726167650004057365616c3110636f6e7461696e735f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c300d7365745f636f64655f686173680008057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000203656e76066d656d6f727902010210035c5b050505050b01010101010000030004040000010109010101010000060c0609020a0404060003000001000100020000080000020000000000000000000000000000030201000003000002020000040000020002000a0003020203000616037f01418080040b7f0041908c050b7f0041888c050b0711020463616c6c0029066465706c6f79002f0af9e6015b2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b8f0102017f047e230041106b220324002003200242ffffffff0f832204200142ffffffff0f8322057e22062005200242208822027e22052004200142208822077e7c22014220867c220437030020032004200654ad200220077e2001200554ad4220862001422088847c7c370308200329030021012000200341086a29030037030820002001370300200341106a24000b0a0020004180800410660b140020002903004202510440200041086a10150b0b0a0020004184800410660bb90202057f027e230041306b2201240020014280800137020c200141f98b0436020841888004200141086a220410330240200128020c220520012802102202490d00200128020821032001200520026b220536020820032002200220036a2202200410002103200520012802082204490d00027e02400240024020030e0400040401040b200120043602242001200236022020014200370328200141086a200141206a200141286a41081062200141146a027e200128020822024181808080784604402001280224450d03418080808078210241e88104210342300c010b200128020c210320012902100b370200200141106a20033602002001200236020c20014101360208200141086a41047210150b42000c010b2001290328210642010b21072000200637030820002007370300200141306a24000f0b000b15002000280200418180808078490440200010230b0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206104a200228020c220120022802084b0d00200620022802042001103e2002410036022c20022004360228200220053602242006200241246a103f2003200228022c6a22012003490d0020002001360208200241306a24000f0b000bc10202027f017e230041e0006b22022400200241c8006a22034200370300200241406b4200370300200241386a420037030020024200370330200241d0006a2001200241306a412010622000027f20022802502201418180808078460440200020022f01303b0001200041036a20022d00323a0000200241186a2002413f6a2800002201360200200220022900372204370310200220022900433703002002200329000037000520022800332103200041106a2001360200200041086a2004370200200041146a2002290300370200200041196a2002290005370000200041046a200336020041000c010b200241186a200241dc006a28020022033602002002412c6a20033602002002200229025422043703102002200136022020022004370224200041046a200241206a41a58004411e104d41010b3a0000200241e0006a24000b9d0a02077f047e230041b0016b220424000240024020010440200441c8006a2106230041206b2205240020052001105b4108210702402005290300220d2003290300220e54220a200541086a290300220b200341086a290300220c54200b200c511b4504402005200d200e7d3703102005200b200c7d200aad7d3703182001200541106a10390c010b200642003702042006410c6a42003e0200410121070b20062007360200200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a103402402005290310220b20032903007c220d200b5422072007ad200541186a290300220b200341086a2903007c7c220c200b54200b200c511b4504402005200d3703202005200c370328200541086a41e08304200541206a1055200641083602000c010b20064101105a0b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b024020020440200441c8006a2106230041206b2205240020052002105b02402005290300220b20032903007c220d200b5422072007ad200541086a290300220b200341086a2903007c7c220c200b54200b200c511b4504402005200d3703102005200c3703182002200541106a1039200641083602000c010b20064101105a0b200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a103402402005290310220d2003290300220e542207200541186a290300220b200341086a290300220c54200b200c511b4504402005200d200e7d3703202005200b200c7d2007ad7d370328200541086a41e08304200541206a1055200641083602000c010b20064100105a0b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b20010440200441206a200141186a290000370300200441186a200141106a290000370300200441106a200141086a29000037030020042001290000370308410121080b20020440200441406b200241186a290000370300200441386a200241106a290000370300200441306a200241086a29000037030020042002290000370328410121090b41082105200341086a290300210b2003290300210c200441f1006a200441206a290300370000200441e9006a200441186a290300370000200441e1006a200441106a220629030037000020044182016a200441306a22032903003701002004418a016a200441386a220729030037010020044192016a200441406b290300370100200420042903083700592004200429032837017a2004200b3703502004200c370348200420093a0079200420083a00582004428080013702a801200441f98b043602a401200441a4016a410310422003200441ac016a280200360200200420042902a401370328200441286a220241e58004104020062003280200360200200420042903283703082002200441086a2203200441d9006a410020011b105620032002200441fa006a410020042d00791b105620022003105720072802002101200428023421032004290228210b200441003602302004200b370228200441d8006a20021048200441f9006a20021048200441c8006a2002104c20042802302202200428022c4d0440200320012004280228200210020c010b000b20002005360200200441b0016a24000b7200024002400240024002400240024002400240200028020041016b0e0701020304050607000b20014100105f0c070b20014101105f0f0b20014102105f0f0b20014103105f0f0b20014104105f0f0b20014105105f0c020b20014106105f0f0b20014107105f0f0b200041046a200110500b9a0301067f230041106b22062400230041206b220324002003200136021c200341f88304360218200341086a2101230041206b22002400200042808001370214200041f98b04360210200341186a200041106a22051047024002402000280214220720002802182202490d00200028021021042000200720026b220736021020042002200220046a2202200510002104200720002802102205490d000240024020040e0400020201020b2000200536020c20002002360208200041106a200041086a10322001027f20002802102202418180808078460440200028020c04404180808080782102418c850421044130210541000c020b200028021421022001428380808018370200200141086a20023602000c040b2000280218210520002802142104200028021c0b36020c2001200536020820012004360204200120023602000c020b20014283808080083702000c010b000b200041206a24002003280208418380808078470440000b200641086a200329020c370300200341206a240020062802082100200628020c2101200641106a24002001410020001b0b1f00027f20002001105945044041012000418581041059450d011a0b41030b0b8606020e7f017e23004180016b22022400200241086a200110320240024002402002280208418180808078460440200228020c210a200241dc006a20011030027f200228025c41818080807846044020022d00600c010b200241386a200241dc006a41bd8204412a104d20022802382203418180808078470d0220022d003c0b210841800121044100210341988204210541252106024002400240200822090e020100050b200241dc006a2001101720022d005c0d01200241c1006a200241e5006a290000370000200241c9006a200241ed006a290000370000200241d1006a2201200241f5006a290000370000200241346a2203200241c3006a2d00003a00002002412c6a2204200241cb006a2d00003a00002002200229005d221037003920022002413f6a2800003602302002200241c7006a280000360228200241c6006a2d00002105200241c4006a2f01002106200228003b21092002200129000037001d2002200241cc006a29020037031820032d0000200541187420064108747272210b20042d0000210c2002280228210d2002280230210e2010a7210f0b2000200c3a00172000200d3600132000200b36000f2000200e36000b200020093600072000200f3b0005200020083a0004200020022903183700182000200a3602002000411d6a200229001d3700000c040b2002413c6a200241e0006a41e782044122104d200241346a200241c3006a2d00003a00002002412c6a200241cb006a2d00003a0000200220022800473602282002200228003f360230200241c4006a2f0100200241c6006a2d00004110747220022d002841187472210620022f013c2002413e6a2d0000411074722103200228002921072002280031210520022d003021040c020b20002002290208370208200041023a0004200041106a200241106a2902003702000c020b200341187621042002280244210720022802402106200228023c21050b200041023a0004200041146a2007360200200041106a20063602002000410c6a20053602002000200341ffffff07712004411874723602080b20024180016a24000bdf0101017f230041406a22022400200241046a20011017024020022d0004450440200241286a2001104520022802284504402000200229000537000820004100360200200041286a2002290330370300200041306a200241386a290300370300200041106a2002410d6a290000370000200041186a200241156a290000370000200041206a2002411d6a2900003700000c020b2000200229022c370204200041013602002000410c6a200241346a2902003702000c010b20002002290208370204200041013602002000410c6a200241106a2902003702000b200241406b24000bc20202067f017e23004190016b22012400200141086a2205200041d000100c1a200142808001370270200141f98b0436026c200120053602782001200141286a220436027c200141ec006a41031042200141e0006a2200200141f4006a2802003602002001200129026c370358200141d8006a220241c48004104020014188016a22032000280200360200200120012903583703800120014180016a2206200141f8006a10162000200328020036020020012001290380013703582002200141fc006a1016200320002802003602002001200129035837038001200220061057200141e8006a28020021002001280264210320012902582107200141003602602001200737025820052002103f20042002103f200141c8006a2002104c20012802602204200128025c4b0440000b2003200020012802582004100220014190016a24000bc10101057f230041406a22012400200141808001360210200141f98b0436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a10082004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141146a200141386a101720012d00140440000b20002001290015370000200041186a2001412d6a290000370000200041106a200141256a290000370000200041086a2001411d6a290000370000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a10092003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b4702027f017e230041206b22012400200141086a1011200141186a2903002103200020012903104200200128020822021b37030020002003420020021b370308200141206a24000b4702027f017e230041206b22012400200141086a1013200141186a2903002103200020012903104200200128020822021b37030020002003420020021b370308200141206a24000b0e000340200028020c22000d000b0b4d01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041f98b0441013a0000410121010b200141f98b046a20013a00002002200141016a1061000b7e01017f230041106b220224002002200036020c2002410c6a2802002102027f20012d000045044041f98b0441003a000041012100410020012d000122014103460d011a41fa8b0441013a00004102210020010c010b4101210041f98b0441013a000041010b2101200041f98b046a20013a00002002200041016a1061000bab0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041f98b04360204024041fa8b04027f20012802002203410947044041f98b0441003a0000410020034108460d011a41fa8b0441013a00002000410236020c2001200041046a1019200028020c220141818001490d02000b41f98b0441013a000041010b3a0000410221012000410236020c0b200220011061000b5901037f230041206b22002400200042808001370218200041f98b04360214418c8304200041146a1033200028021c220120002802184b0440000b200041086a200028021422022001200120026a41001060200041206a24000b850102037f017e230041306b22022400200241086a1013027f200020022903104200200228020822031b22007c220520005422042004ad200241186a290300420020031b220020017c7c220120005420002001511b4504402002200537032020022001370328200241848004200241206a105541030c010b41010b2103200241306a240020030bb85902107f0a7e230041c0036b220024000240024002400240024002400240027f02400240024002400240102041ff01714105470d002000418080013602800141f98b0420004180016a220110012000280280012202418180014f0d00200020023602f401200041f98b043602f001200041003602c8022001200041f0016a200041c8026a41041062024002400240024002400240024002400240200028028001220141818080807846044020002d00cb02210420002d00ca02210220002d00c9022101024002402000027f024002400240024002400240024002400240024002400240027f02400240024002400240024002400240024002400240024002400240024020002d00c802220341ee006b0e050527270601000b0240024002400240024002400240024002400240024002400240200341166b0e050333333301000b0240200341ca006b0e0410333305000b0240200341fc016b0e0302330a000b20034134460d0b2003413d460d0a200341d400460d06200341e500460d03200341f8004704402003418301460d0f2003419601460d09200341ab01460d13200341b201460d08200341c101460d0e200341db01460d06200341ea01470d33200141ff0171220341d901460d15200341f10147200241ff017141244772200441ff0171418a0147720d3320004180016a200041f0016a101c20002d00840122014102460d16200041b0026a20004198016a29020037030020002000290290013703a80220002f00810120002d00830141107472210420002f00850120004187016a2d0000411074722105200029028801211020002d008001210220002902a001211141938080807821030c320b200141ff0171413447200241ff017141ef014772200441ff017141c60047720d3220004180016a200041f0016a101d2000280280010d13200041b0026a200041a0016a290300370300200020004198016a2903003703a802200028028801220241087621042000418c016a28020022014108762105200041b0016a2903002112200041a8016a290300211120004190016a290300211041808080807821030c310b200141ff017141c90047200241ff017141c2004772200441ff0171418d0147720d3141818080807821030c300b200141ff0171413c47200241ff017141f5004772200441ff017141d40147720d3020004180016a200041f0016a101d2000280280010d14200041b0026a200041a0016a290300370300200020004198016a2903003703a802200028028801220241087621042000418c016a28020022014108762105200041b0016a2903002112200041a8016a290300211120004190016a290300211041838080807821030c2f0b200141ff0171412d47200241ff017141f8014772200441ff017141c20147720d2f41848080807821030c2e0b200141ff017141e80047200241ff017141384772200441ff0171412f47720d2e20004180016a200041f0016a101720002d0080010d13200041b0026a20004199016a290000370300200020004191016a2900003703a80220004185016a2800002201410876210520002f01820120004184016a2d000041107472210420004189016a290000211020002d008101210241858080807821030c2d0b200141ff017141c70047200241ff017141d9014772200441ff0171412147720d2d200041c8026a200041f0016a2201101720002d00c8020d1420004180016a2001101720002d008001450d132000419a036a20004193016a2d00003a0000200020002f0091013b0198032000290089012110200028008501210320002d0084010c150b200141ff0171412047200241ff017141f9014772200441ff017141f50147720d2c20004180016a200041f0016a2201101720002d0080010d16200041c8026a2001104520002802c8020d25200041d8026a290300211220002903d002211120004198036a200110542000280298032202418180808078460d152002410876210420002902a0032110200028029c0321010c2a0b200141ff017141b30147200241ff017141c7014772200441ff017141ee0047720d2b200041c8026a200041f0016a2201101720002d00c8020d2520004180016a2001101720002d0080010d2620004198036a200110452000280298030d27200041a8036a290300211820002903a003211320004188026a200110542000280288022202418180808078460d16200241087621042000290290022110200028028c0221010c280b200141ff0171410f47200241ff0171411b4772200441ff017141bd0147720d2a20004180016a200041f0016a101d2000280280010d16200041b0026a200041a0016a290300370300200020004198016a2903003703a802200028028801220241087621042000418c016a28020022014108762105200041b0016a2903002112200041a8016a290300211120004190016a290300211041898080807821030c290b200141ff017141d60147200241ff017141b5014772200441ff017141fa0047720d2920004180016a200041f0016a101d2000280280010d16200041b0026a200041a0016a290300370300200020004198016a2903003703a802200028028801220241087621042000418c016a28020022014108762105200041b0016a2903002112200041a8016a290300211120004190016a2903002110418a8080807821030c280b200141ff017141cb0147200241ff017141d7004772200441ff017141d50147720d2820004180016a200041f0016a101d2000280280010d16200041b0026a200041a0016a290300370300200020004198016a2903003703a802200028028801220241087621042000418c016a28020022014108762105200041b0016a2903002112200041a8016a290300211120004190016a2903002110418b8080807821030c270b200141ff0171412647200241ff0171411b4772200441ff017141d40147720d27418c8080807821030c260b200141ff0171412047200241ff017141db004772200441ff017141e50147720d26418d8080807821030c250b200141ff017141f10047200241ff017141b7014772200441ff017141820147720d25418e8080807821030c240b200141ff017141d90147200241ff017141ac014772200441ff0171411847720d2420004180016a200041f0016a101c20002d00840122014102460d13200041b0026a20004198016a29020037030020002000290290013703a80220002f00810120002d00830141107472210420002f00850120004187016a2d0000411074722105200029028801211020002d008001210220002902a0012111418f8080807821030c230b200141ff017141da0147200241ff0171413b4772200441ff017141b20147720d2320004180016a200041f0016a1032200028028001418180808078470d132000280284012202410876210441908080807821030c220b200141ff017141c00147200241ff017141e2004772200441ff017141fd0147720d2220004180016a200041f0016a101c20002d00840122014102460d13200041b0026a20004198016a29020037030020002000290290013703a80220002f00810120002d00830141107472210420002f00850120004187016a2d0000411074722105200029028801211020002d008001210220002902a001211141918080807821030c210b200141ff017141cf0047200241ff017141094772200441ff017141910147720d2120004180016a200041f0016a101c20002d00840122014102460d13200041b0026a20004198016a29020037030020002000290290013703a80220002f00810120002d00830141107472210420002f00850120004187016a2d0000411074722105200029028801211020002d008001210220002902a001211141928080807821030c200b200141ff017141a60147200241ff017141c8004772200441ff017141830147720d20200041c8026a200041f0016a2201103220002802c8022203418180808078470d1420002802cc02210220004180016a200110322000280280012203418180808078460d1320002802880121022000280284012104200028028c010c150b200141ff017141b60147200241ff0171410c4772200441ff017141df0147720d1f200041e0026a22014200370300200041d8026a4200370300200041d0026a4200370300200042003703c80220004198036a200041f0016a200041c8026a412010622000280298032202418180808078470d1520004180026a200041d7026a280000220236020020004188016a20002900cf02221037020020004190016a2002360200200020002f01c8023b008101200020002d00ca023a008301200020103703f801200020002900db023703b802200020012900003700bd0220002800cb02210120004199016a220420002900bd0237000020004194016a20002903b80237020020004184016a2202200136020020004189016a290000211020022d0000210320004185016a280000210120002d008101210220002f0182012106200041b0026a2004290000370300200020004191016a2900003703a802200141087621052006200341107472210441958080807821030c1e0b20004180016a41047210230c1e0b200241ff0171411e47200441ff0171412647720d1d41828080807821030c1c0b20004188016a10230c1c0b20004180016a41047210230c1b0b20004184016a10230c1a0b200041b0026a200041e1026a2900003703002000200041d9026a2900003703a802200041cd026a2800002201410876210520002f01ca02200041cc026a2d000041107472210420004189016a2900002112200041d1026a29000021102000419d016a280000210720004195016a290000211520004191016a2800002106200029008101211120002d00c902210241868080807821030c180b2000419a036a200041db026a2d00003a0000200020002f00d9023b01980320002900d102211020002800cd02210320002d00cc020b21012000418f016a2000419a036a2d00003a000020002010370085012000200336008101200020013a008001200020002f0198033b008d0120004180016a10230c170b20004190026a220320004199016a290000370300200020004191016a2900003703880220002f01820120004184016a2d000041107472210420004189016a290000211020004185016a280000210120002d0081012102200028029c032206418080808078460d14200041a0036a2902002115200041b0026a200329030037030020002000290388023703a8022001410876210541878080807821030c150b20002f00850120004187016a2d0000411074722104200029028c012110200028028801210120002d00840121020c130b200041c0026a2205200041e1026a2900003703002000200041d9026a2900003703b80220002f01ca02200041cc026a2d0000411074722104200041d1026a2900002110200041cd026a280000210120002d00c9022102200028028c022203418080808078470d0b0c110b20004180016a41047210230c130b20004180016a41047210230c120b20004180016a41047210230c110b20004188016a10230c100b20004180016a10230c0f0b20004188016a10230c0e0b20004188016a10230c0d0b200028028401220141087621052002410876210441948080807821030c0b0b20002802d002210220002802cc02210420002802d4020b36028c0120002002360288012000200436028401200020033602800120004180016a10230c0a0b20004180026a200041a4036a280200220136020020004194026a20013602002000200029029c0322103703f80120002002360288022000201037028c0220004184016a220120004188026a418c80044119104d200110230c090b20004189016a290000211220004190026a290200211420004191016a280000210620004195016a29000021152000419d016a28000021072000290081012111200041b0026a2005290300370300200020002903b8023703a8022003419680808078460d08200141087621050c070b20002802840121022000200029028801370288012000200236028401200020013602800120004180016a10230c070b20002f00cd0220002d00cf0241107472210420002902d402211020002802d002210120002d00cc0221020c040b20002f00cd02200041cf026a2d000041107472210420002902d402211020002802d002210120002d00cc0221020c020b20002f00850120004187016a2d0000411074722104200029028c012110200028028801210120002d00840121020c010b20002f009d0320002d009f0341107472210420002902a403211020002802a003210120002d009c0321020b20002010370288012000200136028401200020023a008001200020043b008101200020044110763a00830120004180016a10230c020b20002010370288012000200136028401200020023a008001200020043b008101200020044110763a00830120004180016a10230c010b200041e8016a2208200041b0026a290300370300200020002903a8023703e0012003419680808078460d00200041c8016a2018370300200041a8016a201237030020004198016a2008290300370300200020133703c001200020113703a0012000201037038801200020002903e00137039001200020143702d401200020073602bc01200020153702b401200020063602b0012000200141ff0171200541087472360284012000200241ff017120044108747236028001200020033602d001200041003602f8012000428080013702cc02200041f98b043602c802200041f8016a200041c8026a2204103320002802cc02220520002802d0022201490d0220002802c80221022000200520016b22053602c80220022001200120026a20041000200520002802c802220149720d020c010b200041013602800120004180016a1024000b20010d00024002400240024002400240027f0240024002400240027f02400240024002400240024002400240024002400240024002400240024002400240024041082003418080808078732201200141164f1b41016b0e150e0f011002030405140618191a1b0708090a0b0c0d000b2000200041f0016a3602c802200041d0026a20004180016a4130100c2106200041f0026a29030021152000200041f8026a290300221837039002200020153703880220004199036a101f200041013a0098034197d0e0bb7e20004198036a2201101b220241ff01714103470d1e102a220241ff0171410347044020012002105a0c240b200041086a2105201521114200211242002114230041206b22012400230041206b22022400024002400240201822105045044020104280f0aee796095a044020104280f0aee79609510d0220104280f0aee7960980211920104280f0aee796098222125020114280f0aee7960954710d044280b8d7b3cb042116428080808080808080807f211003400240201220167d2011201754ad7d22134200590440201120177d2111201020148421142013500d01201321120b2016423f86201742018884211720104201882110201642018821160c010b0b20114280f0aee796098020148421144200211220114280f0aee796098221110c040b230041106b220424004280f0aee7960921130240413f41d900201079a722036b20034119461b220341c000714504402003450d0142002003413f71ad2213864280f0aee79609410020036b413f71ad888421124280f0aee7960920138621130c010b4280f0aee796092003413f71ad862112420021130b2004201337030020042012370308200429030021122002200441086a29030037030820022012370300200441106a240042012003413f71ad862112200241086a29030021162002290300211703400240201020167d2011201754ad7d22134200590440201120177d2111201220148421142013500d01201321100b2016423f86201742018884211720124201882112201642018821160c010b0b20114280f0aee79609802014842114420021120c020b20114280f0aee796098021140c010b2011201080211442012119201120108221110c010b20114280f0aee796098221110b2001201137031020012014370300200141186a201237030020012019370308200241206a2400200129030021102005200141086a29030037030820052010370300200141206a2400200041186a101120002903204200200028021822011b221020002903087c221220105422022002ad200041286a290300420020011b2210200041106a2903007c7c221120105420102011511b0d1f2000201237039803200020113703a00320004180800420004198036a22011055201520181028220241ff017141034604402001200620004188026a102b0c240b20004198036a2002105a0c230b2000200041f0016a3602c802200041d0026a20004180016a4130100c2101200041f0026a29030021102000200041f8026a29030037039002200020103703880220004199036a101f200041013a0098034196e4ea6c20004198036a2202101b220441ff01714103470d1f102a220441ff017141034604402002200120004188026a102b0c230b20004198036a2004105a0c220b230041406a22012400200141286a20004180016a220241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041f0016a36021c20012002290000370220200141086a200141206a105b20012903082110200041e0006a2202200141106a29030037030820022010370300200141406b240020002903602110200041d8026a200041e8006a2903003703000c220b230041d0006b22012400200141106a20004180016a220241c000100c1a20012002200141306a105c20012903002110200041f0006a2202200141086a29030037030820022010370300200141d0006a240020002903702110200041d8026a200041f8006a2903003703000c210b200041a8016a290300211020002903a0012111200041b0036a20004198016a290300370300200041a8036a20004190016a290300370300200041a0036a20004188016a290300370300200020002903800137039803200020103703c002200020113703b802200041c8026a2201101f20004188026a200120004198036a200041b8026a101820002802880222034108460d0c200041b0026a20004194026a2802003602002000200029028c023703a80241010c0d0b200041c8016a290300211020002903c0012111200041a0036a200041a8016a290300370300200041a8036a200041b0016a290300370300200041b0036a200041b8016a290300370300200041a0026a20004198016a29030037030020004198026a20004190016a29030037030020004190026a20004188016a290300370300200020002903a00137039803200020002903800137038802200020103703b002200020113703a802200041c8026a2201101f200041b8026a2202200041f0016a20004188026a22042001200041a8026a2201102c20002802b80222034108470d1c2002200420004198036a2001101820002802b80222034108460d0d0c1c0b20002903a00121102000200041a8016a29030037039002200020103703880220004198036a2202101f230041e0006b220124002001200220004180016a2204105c200041c8026a2203027f2001290300221020004188026a22052903007c221220105422062006ad200141086a2903002215200541086a2903007c7c221020155420102015511b4504402001201237031020012010370318200141386a200241186a290000370300200141306a200241106a290000370300200141286a200241086a290000370300200141c8006a200441086a290000370300200141d0006a200441106a290000370300200141d8006a200441186a2900003703002001200229000037032020012004290000370340200141206a200141106a103a200341106a20103703002003201237030841000c010b200341046a4101105a41010b360200200141e0006a240020002802c8020d0e20002903d002211020004190036a200041d8026a2201290300370300200041e0026a200041b0036a2900003703002001200041a8036a290000370300200041d0026a200041a0036a290000370300200041f0026a20004188016a290300370300200041f8026a20004190016a29030037030020004180036a20004198016a290300370300200020103703880320002000290098033703c80220002000290380013703e8022003101e0c0f0b20004180016a2201280200200141046a10592101200041003a00c802200020013a00c902230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360204200141f98b043602000240200041c8026a22002d0000044041f98b044181023b0000410221000c010b2001410136020841f98b0441003a0000200120002d00013a000f20012001410f6a4101105e2001280208220041818001490d00000b0c210b200041f0016a200028028001101a2101200041003602c802200020013602cc02230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141f98b043602040240200041c8026a2200280200044041f98b044181023b0000410221002001410236020c0c010b2001410136020c41f98b0441003a0000200041046a200141046a1033200128020c220041818001490d00000b0c200b200041f0016a2000280280012202101a210441012101200041c9026a101f200041013a00c80202402004200041c8026a101b220341ff01714103470d00200220004180016a410472102d220341ff01714103470d00102741002101410321030b0c1c0b200041f0016a2000280280012202101a210441012101200041c9026a101f200041013a00c80202402004200041c8026a101b220341ff01714103470d00200220004180016a410472102e220341ff01714103470d00102741002101410321030b0c1b0b200028028001210120004198036a220220004180016a41047222044121100c1a41012103200041c9026a2205101f200041013a00c80220002d0098030440200241017220054120100f450d110b410021010c110b2000280284012105200041f0016a22012000280280012206101a210241012103200041c9026a101f200041013a00c8022002200041c8026a2204101b220c41ff01714103460440200520012006101a220d470440230041206b22022400200220053602142002200636021c200241f88304360218200241086a2108200241146a2109230041106b22032400200341086a210a230041206b22012400200142808001370218200141f98b04360214200241186a200141146a220e1047024002402001280218220f200128021c2207490d002001280214210b2001410036021c2001200f20076b36021820012007200b6a3602142009200e1033200128021c220920012802184b0d00200141086a200b2007200128021420091060200128020c2107200a2001280208360200200a2007360204200141206a24000c010b000b200328020c21012008200328020836020020082001360204200341106a2400200241206a2400200020053602b0022000200d3602ac02200020063602a8022000428080013702bc02200041f98b043602b8022000200041a8026a22013602e001200041b8026a41021042200041d0026a2202200041c0026a280200360200200020002902b8023703c802200441c881041040200041a0036a22032002280200360200200020002903c8023703980320004198036a200041e0016a103c20004190026a2003280200360200200020002903980337038802200420004188026a1057200041d8026a280200210220002802d402210320002902c8022110200041003602d002200020103702c802200120041033200141047220041033200041b0026a2004103320002802d002220120002802cc024b0d132003200220002802c802200110020b1027410021030b200041003a00c8022000200c3a00c9020c1a0b200041d4026a20004188016a290300370200200041dc026a20004190016a290300370200200041e4026a20004198016a29030037020020002000290380013702cc022000200041f0016a3602c80220004199036a101f200041013a00980341032103024041e3abb1bb0420004198036a2201101b220241ff01714103460440200041cc026a10072202410e4d047f200241d488046a2d000005410f0b220241ff01714110470440200041828080807836029803200020023a009c0320011015410121030b20002003360288020c010b20004188026a21010240024002400240200241ff017141016b0e020102000b200141046a41a78704411110640c020b200141046a41b88704410f10640c010b200141046a41c78704411110640b2001410236020020002802880221030b2003410346047f102741000541010b21034100210241002104230041106b220124002001200336020c2001410c6a2802002106230041106b22012400200141808001360208200141f98b043602040240024002400240024020004188026a22072802002203410447044041f98b0441003a00004103210020034103460d034101210241fa8b0441013a000041fb8b042105200341016b0e020401020b4101210241f98b0441013a00000c020b410221040b41fb8b0420043a00002001410336020c200741046a200141046a1050200128020c220041818001490d02000b4102210041fa8b0421050b200520023a00002001200036020c0b200620001061000b230041106b220124002001102120012903002110200041306a2202200141086a29030037030820022010370300200141106a240020002903302110200041d8026a200041386a2903003703000c160b230041106b220124002001102220012903002110200041406b2202200141086a29030037030820022010370300200141106a240020002903402110200041d8026a200041c8006a2903003703000c150b230041106b220124002001103420012903002110200041d0006a2202200141086a29030037030820022010370300200141106a240020002903502110200041d8026a200041d8006a2903003703000c140b102741000b2101200041d4026a200041b0026a280200360200200020002903a8023702cc020c150b10274108210341000c0f0b200041a8016a290300211020002903a001211120004180036a20004198016a290300370300200041f8026a20004190016a290300370300200041f0026a20004188016a29030037030020002000290380013703e8022000201037039002200020113703880220004198036a2202101f230041406a22012400200141186a200241186a290000370300200141106a200241106a290000370300200141086a200241086a290000370300200141286a20004180016a220441086a290000370300200141306a200441106a290000370300200141386a200441186a2900003703002001200229000037030020012004290000370320200120004188026a103a200141406b240020004190036a2010370300200041e0026a200041b0036a290000370300200041d8026a200041a8036a290000370300200041d0026a200041a0036a290000370300200020113703880320002000290098033703c802200041c8026a2201101e1027200041083602c802410020011026000b200041d8026a3502002111200041d0026a2903002110410120002802cc0222014108470d011a0b10274108210141000b2102200041d4026a20113e0200200020103702cc02200020013602c8022002200041c8026a1026000b20002903a00121102000200041a8016a2903003703a0032000201037039803200041c8026a2201101f20004188026a200041f0016a200120004180016a20004198036a102c200028028802410846047f102741000541010b20004188026a1026000b200041c8026a2101230041106b22002400200041ec830410370c100b200041c8026a2101230041106b22002400200041e8830410370c0f0b41002103230041106b22022400230041206b22012400200142808001370214200141f98b0436021041e48304200141106a22061033024002402001280214220720012802182204490d00200128021021052001200720046b220736021020052004200420056a2204200610002105200720012802102206490d000240024020050e0400020201020b2001200636020c20012004360208200141106a200141086a1051027f20012802102205418180808078460440200128020c044041808080807821054130210641002107418c85040c020b20012d00142104200241013a00042002418380808078360200200241056a20043a00000c040b200128021c21072001280218210620012802140b21042002200736020c20022006360208200220043a000420022005360200200241076a20044118763a0000200220044108763b00050c020b2002418380808078360200200241003a00040c010b000b200141206a24000240024020022802002201418380808078470d0020022d0004450d00200241056a2d000021030c010b2001418380808078460d00200210360b200241106a2400200041003a00c802200020033a00c902230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141f98b043602040240200041c8026a22002d0000044041f98b044181023b0000410221002001410236020c0c010b41f98b0441003a00002001410136020c200041016a200141046a1041200128020c220041818001490d00000b0c0d0b20012004102e220141ff01714103470d00102741002103410321010b200041003a00c802200020013a00c9020c090b000b20004198036a2002105d0c040b20004198036a4101105a0c030b20004198036a2004105d0c020b200041e8016a200041c4026a280200360200200020002902bc023703e00141010b2101200041d4026a200041e8016a280200360200200020002903e0013702cc020c040b200028029803410846047f102741000541010b20004198036a1026000b200020103703d002200041003602c802230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141f98b043602040240200041c8026a2200280200044041f98b044181023b0000410221002001410236020c0c010b2001410136020c41f98b0441003a0000200041086a200141046a104c200128020c220041818001490d00000b0c030b200041003a00c802200020033a00c9022001200041c8026a1025000b2003200041c8026a1025000b200020033602c8022001200041c8026a1026000b200220001061000b02402000280200418380808078460440200028020441818080807846044020014180808080783602000c020b2001200041046a2202290200370200200141086a200241086a2802003602000c010b20014180808080783602002000280200418380808078470440200010360b0b200041106a2400230041106b220024002000410036020c2000410c6a2802002102230041106b22002400200041808001360208200041f98b043602040240200128020041818080807846044041f98b044181023b0000410221012000410236020c0c010b2000410136020c41f98b0441003a00002001200041046a1058200028020c220141818001490d00000b200220011061000b9d0602097f037e230041c0016b220024002000420037036820004108360294012000200041e8006a36029001230041106b22022400200220004190016a2203280204220436020c20032802002002410c6a100a2004200228020c2205490440000b20032005360204200241106a240020002903682109200041d8006a101402402000280258044020002903602009560d010b200041c8006a1014024020092000290350420020002802481b220a540d00200041386a1021200041186a200041406b2903002009200a7d220a1010200041286a2000290338200a1010410121012000290320420052200041306a290300220a20002903187c220b200a54720d002000290328200b1028220141ff01714103470d0020004280800137029401200041f98b04360290014188800420004190016a2202103320002802940122042000280298012201490d01200028029001210320004100360298012000200420016b360294012000200120036a36029001200020093703682002200041e8006a22044108105e20002802980122052000280294014b0d01200041106a200320012000280290012005106020001022200029030021092000200041086a2903003703702000200937036820004280800137027c200041f98b04360278200041f8006a4102104220004198016a220120004180016a28020036020020002000290278370390012002419b83041040200028029401220320012802002201490d01200028029001210520004100360298012000200320016b2206360294012000200120056a22073602900120042002104c20002802980122082000280294014b0d0120022000280290012008103e200041003602bc01200020063602b801200020073602b4012002200041b4016a103f2001200120002802bc016a22064b0d012000200636028c0120002003360288012000200536028401200220004184016a1057200041a0016a2802002101200028029c01210320002902900121092000410036029801200020093702900120042002104c20002802980122022000280294014b0d012003200120002802900120021002410321010b200041c0016a240020010f0b000ba50102027f037e230041206b22032400200341106a103402402003290310220520022903007c220720055422042004ad200341186a2903002206200241086a2903007c7c220520065420052006511b4504402003102220072003290300562005200341086a29030022065620052006511b450440200041002001200210180c020b200041046a41908304410a1064200041003602000c010b20004101105a0b200341206a24000b920402027f047e230041d0006b22052400230041e0006b22062400200620022003105c2005027f2006290300220820042903002207542201200641086a2903002209200441086a290300220a542009200a511b4504402006200820077d220837031020062009200a7d2001ad7d2207370318200641386a200241186a290000370300200641306a200241106a290000370300200641286a200241086a290000370300200641c8006a200341086a290000370300200641d0006a200341106a290000370300200641d8006a200341186a2900003703002006200229000037032020062003290000370340200641206a200641106a103a200541106a20073703002005200837030841000c010b20054102360204200541106a42003e0200200541086a420037030041010b360200200641e0006a24000240200528020045044020052903082107200541c8006a200541106a2201290300370300200541186a200241186a2900003703002001200241106a29000037030041082104200541086a200241086a290000370300200541286a200341086a290000370300200541306a200341106a290000370300200541386a200341186a2900003703002005200737034020052002290000370300200520032900003703202005101e0c010b200541086a2903002107200528020421042000410c6a200541106a3502003e0200200020073702040b20002004360200200541d0006a24000bf90402077f017e230041d0006b2206240041022102200020011059450440230041406a2203240020032000360210200341146a20014121100c1a200341fc83043602382003200341106a36023c200341086a2107230041106b22042400230041206b22022400200242808001370218200241f98b04360214200341386a200241146a104b200228021c220520022802184b0440000b200241086a200228021422082005200520086a41001060200228020c2105200441086a2208200228020836020020082005360204200241206a2400200428020c21022007200428020836020020072002360204200441106a2400200341406b24002006412e6a101f200620003602082006410c6a20014121100c1a200641013a002d230041d0006b22042400200441086a2200200641086a41c800100c1a230041206b22012400200142808001370218200141f98b04360214230041306b220224002002200036020c200141146a220341041042200241286a2207200341086a28020036020020022003290200370320200241206a220341e486041040200241186a2208200728020036020020022002290320370310200241106a22052002410c6a103c200720082802003602002002200229031037032020052003200041056a410020002d00041b105620032005200041266a410020002d00251b1056200120031057200241306a2400200141106a2802002102200128020c2103200129020021092001410036020820012009370200200020011033200041046a20011048200041256a200110482001280208220020012802044b0440000b20032002200128020020001002200141206a2400200441d0006a2400410321020b200641d0006a240020020bd90402087f017e23004190016b22022400024020002001101b220841ff01714103460440230041406a2204240020042000360210200441146a20014121100c1a200441fc83043602382004200441106a36023c230041106b22052400200541086a2106230041206b22032400200342808001370218200341f98b04360214200441386a200341146a104b200328021c220720032802184b0440000b200341086a2209200328021420071004220736020420092007417f47360200200328020c21072006200328020836020020062007360204200341206a2400200528020c2103200441086a2206200528020836020020062003360204200541106a2400200441406b240020024104722203101f200241246a20014121100c210620022000360200200242808001370260200241f98b0436025c200220023602682002200336026c200241dc006a41041042200241d0006a2201200241e4006a2802003602002002200229025c370348200241c8006a220041a78104104020024188016a22042001280200360200200220022903483703800120024180016a2205200241e8006a103c20012004280200360200200220022903800137034820052000200241256a410020022d00241b10562005200241ec006a1016200241f8006a200428020036020020022002290280013703702000200241f0006a1057200241d8006a2802002101200228025421042002290248210a200241003602502002200a37024820022000103320062000104820032000103f20022802502200200228024c4b0d01200420012002280248200010020b20024190016a240020080f0b000b9a09020a7f027e230041f0006b2200240002400240024002400240102041ff01714105470d0020004180800136024841f98b04200041c8006a2204100120002802482201418180014f0d0020002001360224200041f98b04360220200041003602382004200041206a2203200041386a2206410410622000280248220141818080807846044020002d0038419b01470d0520002d003941ae01470d0520002d003a419d01470d0520002d003b41de00470d05200041286a2003105320002802282201418180808078470d02200041306a2d00002102200028022c210520062003105320002802382201418180808078470d03200420031051200028024822014181808080784704402000350049200041cf006a310000423086200041cd006a3300004220868484210a2000290250210b0c050b2000350031200041376a310000423086200041356a3300004220868484210a200029023c210b2005418080808078460440200221010c050b200041c4006a280200210120002d004c210320002002ad42ff0183200a4208868437024c20002005360248200020033a0020200041186a41ec8304200041c8006a22041038200020013602502000200b370348200041106a41e8830420041038230041106b22022400200241086a2105200041206a2107230041206b22012400200142808001370218200141f98b0436021441e48304200141146a220810330240024020012802182209200128021c2203490d00200128021421062001410036021c2001200920036b3602182001200320066a360214200720081041200128021c220720012802184b0d00200141086a20062003200128021420071060200128020c21032005200128020836020020052003360204200141206a24000c010b000b200228020c2101200041086a2203200228020836020020032001360204200241106a2400200041c9006a101f200041013a0048024041002004102d41ff01714103460440200041083602380c010b200041386a4102105d0b200041d0006a200041406b29020037030020002000290238220a370348200041c8006a2101200aa741084722024504401027410021010b200041003602282000200136022c230041106b220124002001200236020c2001410c6a2802002103230041106b22012400200141808001360208200141f98b04360204024041fa8b04027f200041286a220228020045044041f98b0441003a0000410020022802042202450d011a41fa8b0441013a00002001410236020c2002200141046a1019200128020c220241818001490d02000b41f98b0441013a000041010b3a0000410221022001410236020c0b200320021061000b200028024c2102200020002902503702502000200236024c20002001360248200041c8006a10230c040b000b20003500292000412f6a3100004230862000412d6a3300004220868484210a2000290230210b0c010b20003500392000413f6a3100004230862000413d6a3300004220868484210a2000290240210b0b2000200a3e0049200041cf006a200a4230883c0000200041cd006a200a4220883d00002000200b370250200020013a0048200041c8006a10230b20004101360248200041c8006a1024000b6c01017f230041206b22022400200241003a000f200241106a20012002410f6a41011062024020022802102201418180808078460440200020022d000f3a00040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b4601017f20012d00042104200141003a00042004450440200020012802002002200310620f0b2002200141056a2d00003a000020002001280200200241016a200341016b10620b6c01017f230041206b220224002002410036020c200241106a20012002410c6a410410620240200228021022014181808080784604402000200228020c3602040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b2901017f230041106b220224002002200028020036020c20012002410c6a4104105e200241106a24000b6702017f017e230041206b22012400200141086a41e0830410352000027e200129030842017d220242015804402002a7410147044020012903102102200141186a2903000c020b200141106a10360b4200210242000b37030820002002370300200141206a24000b900202047f017e230041206b22022400200242808001370204200241f98b04360200200120021033024002402002280204220420022802082201490d00200228020021032002200420016b220436020020032001200120036a2201200210002103200420022802002205490d000240024020030e0400020201020b2002200536021c200220013602182002200241186a1044200228020045044020022903082106200041106a200241106a29030037030020002006370308200042013703000c030b200241086a290300210620022802042101200041146a200241106a3502003e02002000410c6a200637020020002001360208200042023703000c020b200042003703000c010b000b200241206a24000b180020002802004181808080784904402000410c6a104f0b0be70401097f230041306b22022400200242808001370224200241f98b043602202001200241206a220410330240027f02400240024002402002280224220520022802282201490d00200228022021032002200520016b220536022020032001200120036a2201200410002103200520022802202204490d000240024020030e0400020201020b2002200436020c20022001360208200241206a200241086a10300240027f200228022041818080807846044020022d00240c010b200241106a200241206a41978604412a104d20022802102201418180808078470d0120022d00140b210341f2850421054182022106418080808078210141252104418080808078210a0240024020030e020100070b200241206a200241086a1053024020022802204181808080784604402002411c6a2002412c6a280200360200200220022902243702140c010b200241106a200241206a41c186044122104d20022802102203418180808078470d050b2002280214220441ff01712103200441807e71210a2002411c6a2802002108200241186a28020021090b200228020c450d0441302104418c85040c060b20022f0015200241176a2d0000411074722106200228021c21072002280218210420022d001421050c040b2000428380808098808080807f3702000c050b000b200228021422054108762106200228021c210720022802182104200321010c010b2000410c6a2008360200200041086a200936020020002003200a7236020420004183808080783602000c020b200541ff01712006410874720b21032000200736020c2000200436020820002003360204200020013602000b200241306a24000bdb0101067f230041106b22042400200441086a2105230041206b22032400200342808001370218200341f98b043602142001200341146a220710330240024020032802182208200328021c2201490d00200328021421062003410036021c2003200820016b3602182003200120066a360214200220071058200328021c220220032802184b0d00200341086a20062001200328021420021060200328020c21012005200328020836020020052001360204200341206a24000c010b000b200428020c21012000200428020836020020002001360204200441106a24000bfe0101077f230041106b220224002002200036020c200241f48304360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041f98b04360214200241086a200041146a220710490240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a36021420012007104c200028021c220120002802184b0d00200041086a20062004200028021420011060200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000bfe0101077f230041106b220224002002200036020c200241f08304360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041f98b04360214200241086a200041146a220710460240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a36021420012007104c200028021c220120002802184b0d00200041086a20062004200028021420011060200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000bd50101057f230041106b220124002001200036020c200141fc8304360208230041106b22032400200341086a2104230041206b22002400200042808001370218200041f98b04360214200141086a200041146a104b200028021c220220002802184b0440000b200041086a2205200028021420021005220236020420052002417f47360200200028020c21022004200028020836020020042002360204200041206a2400200328020c21002001200328020836020020012000360204200341106a240020012802002100200141106a240020004100470ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206103d200228020c220120022802084b0d00200620022802042001103e2002410036022c20022004360228200220053602242006200241246a103f2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0b002000280200200110330bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100b200341202001412010650c010b200320022001200210650b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a00200120004120105e0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206103f200228020c220120022802084b0d00200620022802042001103e2002410036022c20022004360228200220053602242006200241246a103f2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b2901017f230041106b22022400200220002d00003a000f20012002410f6a4101105e200241106a24000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a104320012001200228020c6a22014b0d0020002001360208200241106a24000f0b000bbf0101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d044020012002410274105f0c010b200241ffff004d0440200020024102744101723b010a230041106b2202240020022000410a6a2f01003b010e20012002410e6a4102105e200241106a24000c010b200241ffffffff034d04402000200241027441027236020c2000410c6a200110330c010b20014103105f2004200110330b200041106a2400200341106a24000bb30102017f017e230041206b22022400200241086a200110452000027f2002280208450440200128020404402000418080808078360204200041086a418c85043602002000410c6a423037020041010c020b200241186a290300210320002002290310370308200041106a200337030041000c010b200241106a2903002103200228020c2101200041106a200241186a3502003e0200200041086a20033703002000200136020441010b360200200241206a24000b890101017f230041206b220224002002420037030820024200370300200241106a20012002411010622000027f2002280210220141818080807846044020002002290300370308200041106a200229030837030041000c010b200041086a2002290214370200200041106a2002411c6a2802003602002000200136020441010b360200200241206a24000b1c0020002001103d200028020422002001103f200041206a2001103f0b110020002001103d200041046a200110330b210020002d000045044020014100105f0f0b20014101105f200041016a2001103f0b110020002001103d200041046a2001104a0b0b0020002802002001103f0b1f0020002001103d200041046a280200220020011033200041046a200110480b3301017f230041106b22022400200220002903003703002002200041086a290300370308200120024110105e200241106a24000b6501027f230041106b22042400200441086a41044110104e20042802082205450440000b20052001290200370200200541086a200141086a2902003702002000200536020c20002003360208200020023602042000418080808078360200200441106a24000b3901017f230041106b22032400200341086a2001200241001052200328020c21012000200328020836020020002001360204200341106a24000b13002000280200220004402000410c6a104f0b0b6501037f2000280204210420002802082103230041106b22002400230041106b220224002002200336020c2002410c6a200110432000418180808078360200200241106a24002000280200418180808078470440000b200120042003105e200041106a24000b5b01017f230041106b220224002002200110300240200228020022014181808080784604400c010b200020022900053700052000410c6a2002410c6a2800003600000b200020022d00043a000420002001360200200241106a24000b930201037f20020440200345044041f88b042d00001a0b230041106b2203240041fc8b052802004504403f00210441808c0541908c0536020041fc8b05410136020041848c0520044110743602000b200341086a21050240200141808c052802006a41016b410020016b71220120026a22042001490d0041848c052802002004490440200241ffff036a22042002490d01200441107640002201417f460d012001411074220120044180807c716a22042001490d0141848c052004360200200120026a22042001490d010b41808c052004360200410121060b200520013602042005200636020020032802082101200328020c2104200341106a24002004410020011b21010b20002002360204200020013602000b860702097f027e230041106b2205240020052001105402402005280200220141818080807846044020052802042101200541086a28020021032005027f02402005410c6a2802002206450d00200641076b22024100200220064d1b2109200341036a417c7120036b210a41002102034002400240024002400240024002400240027e0240024002400240200220036a2d000022044118744118752208410048044042808080808020210b428080808010210c200441f689046a2d000041026b0e030601020a0b200a20026b4103710d0a200220094f0d0b0340200220036a220441046a280200200428020072418081828478710d0c200241086a22022009490d000b0c0b0b4200210b200241016a220720064f0d05200320076a2c00002107024002400240200441e001470440200441ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520074140480d030c050b200741607141a07f460d020c040b2007419f7f4a0d030c010b200741404e0d020b4200210c200241026a220420064f0d08200320046a2c000041bf7f4c0d070c020b4200210b200241016a220720064f0d04200320076a2c000021070240024002400240200441f0016b0e050100000002000b2008410f6a41ff017141024b200741404e720d030c020b200741f0006a41ff017141304f0d020c010b2007418f7f4a0d010b200241026a220420064f0d04200320046a2c000041bf7f4a0d014200210c200241036a220420064f0d07200320046a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210b428080808010210c0c040b200241016a22042006490d014200210b0b4200210c0c020b200320046a2c000041bf7f4a0d010b200441016a21020c030b2005200b2002ad84200c8437020441010c050b200241016a21020c010b200220064f0d000340200220036a2c00004100480d012006200241016a2202470d000b0c020b20022006490d000b0b20052003360204200541086a200636020041000b36020002402005280200047e2001418080808078470d0120032101200621032005290204052006ad0b210b20004181808080783602002000410c6a200b3e020020002001ad2003ad422086843702040c020b200041dc85043602042000418080808078360200200042153702080c010b2005290204210b2000200528020c36020c2000200b370204200020013602000b200541106a24000bb90702077f017e230041106b22032400230041206b22022400200241106a200110300240024002400240024002402002280210220441818080807846044020022d0014220441037141016b0e03020304010b200320022900153700052003410c6a2002411c6a280000360000200320022d00143a0004200320043602000c050b200441027621040c030b200241096a20043a0000200241013a000820022001360204200241003b010c200241106a200241046a2002410c6a4102103120022802102204418180808078470440200320022901163701062003410e6a2002411e6a2f01003b0100200320022f01143b0104200320043602000c040b20022f010c220441ff014d0440200341bb83043602042003418080808078360200200342223702080c040b200441027621040c020b200241096a20043a0000200241013a0008200220013602042002410036020c200241106a200241046a2002410c6a4104103120022802102204418180808078470440200228021421052003200229021837020820032005360204200320043602000c030b200228020c220441ffff034d0440200341bb83043602042003418080808078360200200342223702080c030b200441027621040c010b200441044f0440200341bb83043602042003418080808078360200200342223702080c020b200241106a2001103220022802102204418180808078470440200228021421052003200229021837020820032005360204200320043602000c020b2002280214220441ffffffff034b0d00200341bb83043602042003418080808078360200200342223702080c010b2003418180808078360200200320043602040b200241206a24000240200328020041818080807846044020032802042106230041206b22052400200541106a2102230041206b220424000240200620012802044b0440200241bc85043602042002418080808078360200200242203702080c010b200441086a20064101106320042802082107200441106a2001200428020c220120061062200428021022084181808080784604402002200736020420024181808080783602002002410c6a2006360200200241086a20013602000c010b200220042902143702042002410c6a2004411c6a280200360200200220083602000b200441206a240020052802102101200541086a2005411c6a28020022023602002005200529021422093703002000410c6a20023602002000200937020420002001360200200541206a24000c010b20002003290200370200200041086a200341086a2902003702000b200341106a24000bdb0101067f230041106b22042400200441086a2105230041206b22032400200342808001370218200341f98b043602142001200341146a220710330240024020032802182208200328021c2201490d00200328021421062003410036021c2003200820016b3602182003200120066a36021420022007104c200328021c220220032802184b0d00200341086a20062001200328021420021060200328020c21012005200328020836020020052001360204200341206a24000c010b000b200428020c21012000200428020836020020002001360204200441106a24000bd90101057f0240200204402001200210400c010b230041306b22022400024002402001280204220320012802082204490d00200128020021052002410036020c2002200320046b22063602082002200420056a220536020441f18504200241046a22031041200228020c220720022802084b0d00200320022802042007103e2002410036022c20022006360228200220053602242003200241246a103f20042004200228022c6a22034b0d0020012003360208200241306a24000c010b000b0b20002001290200370200200041086a200141086a2802003602000bdd0102057f017e230041106b22022400200241086a200141086a28020036020020022001290200370300230041106b22052400230041106b2203240020022802082104200241003602082004200228020422014b0440000b2002200120046b36020420022002280200220620046a360200200341086a2201200436020420012006360200200328020c2106200541086a2201200328020836020020012006360204200341106a240020052903082107200020022902003702002000200737020c200041086a200241086a280200360200200541106a2400200241106a24000b2400200028020041808080807846044020014100105f0f0b20014101105f2000200110500b4f01017f230041306b22022400200220003602082002410c6a20014121100c1a41012101200241086a103b450440200241003a000c20022000360208200241086a103b21010b200241306a240020010b4e000240024002400240200141ff017141016b0e020102000b200041046a41848704410c10640c020b200041046a41908704410b10640c010b200041046a419b8704410c10640b200041003602000be90202057f027e230041206b220324002003200136021c200341f48304360218230041206b22022400200242808001370204200241f98b04360200200341186a20021049024002402002280204220120022802082204490d00200228020021052002200120046b220636020020052004200420056a2204200210002105200620022802002201490d000240024020050e0400020201020b2002200136021c200220043602182002200241186a1044200228020045044020022903082107200341106a200241106a29030037030020032007370308200342013703000c030b200241086a290300210720022802042101200341146a200241106a3502003e02002003410c6a200737020020032001360208200342023703000c020b200342003703000c010b000b200241206a2400200329030022084202510440000b2003290308210720004200200341106a29030020085022011b37030820004200200720011b370300200341206a24000be80302057f027e230041e0006b22032400200341186a200141186a290000370300200341106a200141106a290000370300200341086a200141086a290000370300200341286a200241086a290000370300200341306a200241106a290000370300200341386a200241186a2900003703002003200129000037030020032002290000370320200341f083043602582003200336025c200341406b2102230041206b22012400200142808001370204200141f98b04360200200341d8006a20011046024002402001280204220620012802082204490d00200128020021052001200620046b220636020020052004200420056a2204200110002105200620012802002207490d000240024020050e0400020201020b2001200736021c200120043602182001200141186a1044200128020045044020012903082108200241106a200141106a29030037030020022008370308200242013703000c030b200141086a290300210820012802042104200241146a200141106a3502003e02002002410c6a200837020020022004360208200242023703000c020b200242003703000c010b000b200141206a2400200329034022084202510440000b2003290348210920004200200341d0006a29030020085022011b37030820004200200920011b370300200341e0006a24000b4e000240024002400240200141ff017141016b0e020102000b200041046a41a78704411110640c020b200041046a41b88704410f10640c010b200041046a41c78704411110640b200041003602000b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b200120021065200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041003220136020420002001417f473602000b0d00200041f98b0420011006000b5a01017f2000027f2003200128020422044d04402002200320012802002202200310652001200420036b3602042001200220036a3602004181808080780c010b2000421e370208200041d889043602044180808080780b3602000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001104e20032802080c010b2003200420014101105220032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b7501047f230041106b22042400230041106b22032400200341086a200241001063200328020c2105200441086a2206200328020836020020062005360204200341106a240020042802082103200428020c20012002100c2101200020023602082000200136020420002003360200200441106a24000b150020012003460440200020022001100c1a0f0b000b5f02027f037e230041206b22022400200241086a220320011035200241186a290300210420022903102105200229030822064202510440200310120b20002005370308200041106a200437030020002006420151ad370300200241206a24000b0ba00b0300418080040b85017295d893686d11401eff64e4436f756c64206e6f74206465636f64652060486173682e3060436f756c64206e6f74206465636f646520604163636f756e7449642e3060011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb0041a681040bd0090100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e6721756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d65285429600000000000000043617052656163686564017514dd87908f9a7dc45fd5a063d922a23d1093212f0a0ab9c354aa2905e95b056f7574206f662072616e6765206465636f64696e6720436f6d706163743c7533323e000000c629684fd57ae5cd91c80e52d1f34aae7c996051ffbbddfcf9372874510afc692f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000000002010069000000980000002e00000000020100690000009300000030000000496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e67214e6f7420656e6f756768206461746120746f206465636f646520766563746f72496e76616c696420757466382073657175656e636500756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d6528542960014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b4d3a3a556e646572666c6f774d3a3a4f766572666c6f774d3a3a44697642795a65726f41433a3a496e76616c696443616c6c657241433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e742f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e72730000d80301006a0000005d0000000e000000100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e72736304010065000000770000000e0000004e6f7420656e6f756768206461746120746f2066696c6c2062756666657201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041b88b040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_token","version":"1.0.0","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":29}},{"label":"symbol","type":{"displayName":["String"],"type":29}},{"label":"decimal","type":{"displayName":["u8"],"type":11}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":66},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":15},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":84},"hash":{"displayName":["Hash"],"type":80},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":51}},"events":[{"args":[{"docs":[],"indexed":true,"label":"cap","type":{"displayName":["Balance"],"type":15}}],"docs":[],"label":"CapUpdated","module_path":"abax_token::abax_token","signature_topic":"0x7514dd87908f9a7dc45fd5a063d922a23d1093212f0a0ab9c354aa2905e95b05"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":69},"messages":[{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"AbaxToken::generate","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0x7834ef46"},{"args":[],"default":false,"docs":[],"label":"AbaxToken::inflation_rate_per_milisecond","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":70},"selector":"0x1a49428d"},{"args":[],"default":false,"docs":[],"label":"AbaxToken::cap","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":70},"selector":"0xead91e26"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Mintable::mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0xfc3c75d4"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":70},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":70},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"label":"spender","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":70},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":71}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":71}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":66},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":72},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":72},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":73},"selector":"0x7271b782"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":74},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":76},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":77},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":77},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":77},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":77},"selector":"0x71a64883"},{"args":[{"label":"set_code_hash","type":{"displayName":["Hash"],"type":80}}],"default":false,"docs":[],"label":"SetCodeHash::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":81},"selector":"0xabb60cdf"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":15}},"root_key":"0xc629684f","ty":16}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":15}},"root_key":"0xffbbddfc","ty":20}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":15}},"root_key":"0x7c996051","ty":24}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":29}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":30}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":29}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":35}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":11}},"root_key":"0xd57ae5cd","ty":39}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x686d1140","ty":15}},"root_key":"0x686d1140","ty":43}},"name":"cap"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7295d893","ty":15}},"root_key":"0x7295d893","ty":47}},"name":"inflation_rate_per_milisecond"},{"layout":{"root":{"layout":{"leaf":{"key":"0x1eff64e4","ty":51}},"root_key":"0x1eff64e4","ty":52}},"name":"last_cap_update"}],"name":"CappedInflation"}},"name":"capped_inflation"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc03938f3","ty":11}},"root_key":"0xc03938f3","ty":56}},"name":"version"}],"name":"Reserved"}},"name":"upgradeable"}],"name":"AbaxTokenContract"}},"root_key":"0x00000000","ty":60}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"primitive":"u128"}}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":17}],"path":["ink_storage","lazy","Lazy"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"L","type":18},{"name":"R","type":19}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":15},{"name":"KeyType","type":21}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"L","type":22},{"name":"R","type":23}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"K","type":25},{"name":"V","type":15},{"name":"KeyType","type":26}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":25,"type":{"def":{"tuple":[9,9]}}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"L","type":27},{"name":"R","type":28}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":29,"type":{"def":{"primitive":"str"}}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"V","type":31},{"name":"KeyType","type":32}],"path":["ink_storage","lazy","Lazy"]}},{"id":31,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":29}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":29}],"path":["Option"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"L","type":33},{"name":"R","type":34}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"V","type":31},{"name":"KeyType","type":36}],"path":["ink_storage","lazy","Lazy"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"L","type":37},{"name":"R","type":38}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":37,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":38,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":39,"type":{"def":{"composite":{}},"params":[{"name":"V","type":11},{"name":"KeyType","type":40}],"path":["ink_storage","lazy","Lazy"]}},{"id":40,"type":{"def":{"composite":{}},"params":[{"name":"L","type":41},{"name":"R","type":42}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":41,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":42,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":43,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":44}],"path":["ink_storage","lazy","Lazy"]}},{"id":44,"type":{"def":{"composite":{}},"params":[{"name":"L","type":45},{"name":"R","type":46}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":45,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":46,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":47,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":48}],"path":["ink_storage","lazy","Lazy"]}},{"id":48,"type":{"def":{"composite":{}},"params":[{"name":"L","type":49},{"name":"R","type":50}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":49,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":50,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":51,"type":{"def":{"primitive":"u64"}}},{"id":52,"type":{"def":{"composite":{}},"params":[{"name":"V","type":51},{"name":"KeyType","type":53}],"path":["ink_storage","lazy","Lazy"]}},{"id":53,"type":{"def":{"composite":{}},"params":[{"name":"L","type":54},{"name":"R","type":55}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":54,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":55,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":56,"type":{"def":{"composite":{}},"params":[{"name":"V","type":11},{"name":"KeyType","type":57}],"path":["ink_storage","lazy","Lazy"]}},{"id":57,"type":{"def":{"composite":{}},"params":[{"name":"L","type":58},{"name":"R","type":59}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":58,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":59,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":60,"type":{"def":{"composite":{"fields":[{"name":"access","type":61,"typeName":",>>::Type"},{"name":"psp22","type":62,"typeName":",>>::Type"},{"name":"metadata","type":63,"typeName":",>>::Type"},{"name":"capped_inflation","type":64,"typeName":",>>::Type"},{"name":"upgradeable","type":65,"typeName":",>>::Type"}]}},"path":["abax_token","abax_token","AbaxTokenContract"]}},{"id":61,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":62,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":16,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":20,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":24,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":63,"type":{"def":{"composite":{"fields":[{"name":"name","type":30,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":35,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":39,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":64,"type":{"def":{"composite":{"fields":[{"name":"cap","type":43,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2833472755u32, ()>,>>::Type"},{"name":"inflation_rate_per_milisecond","type":47,"typeName":"<::ink::storage::Lazy> as\n::ink::storage::traits::AutoStorableHint<::ink::storage::traits\n::ManualKey<2839632402u32, ()>,>>::Type"},{"name":"last_cap_update","type":52,"typeName":"<::ink::storage::Lazy> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1017758183u32, ()>,>>::Type"}]}},"path":["abax_token","modules","capped_inflation","capped_infaltion_storage_field","CappedInflation"]}},{"id":65,"type":{"def":{"composite":{"fields":[{"name":"version","type":56,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1821155093u32,\n()>,>>::Type"}]}},"path":["abax_token","modules","capped_inflation","reserved","Reserved"]}},{"id":66,"type":{"def":{"variant":{"variants":[{"fields":[{"type":67}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":67},{"name":"E","type":69}],"path":["Result"]}},{"id":67,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":68}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":68}],"path":["Result"]}},{"id":68,"type":{"def":{"variant":{"variants":[{"fields":[{"type":29,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":29,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":69,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":70,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":69}],"path":["Result"]}},{"id":71,"type":{"def":{"sequence":{"type":11}}}},{"id":72,"type":{"def":{"variant":{"variants":[{"fields":[{"type":31}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":31},{"name":"E","type":69}],"path":["Result"]}},{"id":73,"type":{"def":{"variant":{"variants":[{"fields":[{"type":11}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":11},{"name":"E","type":69}],"path":["Result"]}},{"id":74,"type":{"def":{"variant":{"variants":[{"fields":[{"type":75}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":75},{"name":"E","type":69}],"path":["Result"]}},{"id":75,"type":{"def":{"primitive":"bool"}}},{"id":76,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":69}],"path":["Result"]}},{"id":77,"type":{"def":{"variant":{"variants":[{"fields":[{"type":78}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":78},{"name":"E","type":69}],"path":["Result"]}},{"id":78,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":79}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":79}],"path":["Result"]}},{"id":79,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":80,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":81,"type":{"def":{"variant":{"variants":[{"fields":[{"type":82}],"index":0,"name":"Ok"},{"fields":[{"type":69}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":82},{"name":"E","type":69}],"path":["Result"]}},{"id":82,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":83}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":83}],"path":["Result"]}},{"id":83,"type":{"def":{"variant":{"variants":[{"fields":[{"type":29,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":29,"typeName":"String"}],"index":2,"name":"PermissionError"}]}},"path":["pendzl_contracts","upgradeability","set_code_hash","SetCodeHashError"]}},{"id":84,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_token.json b/artifacts/abax_token.json new file mode 100644 index 0000000..8b16f1d --- /dev/null +++ b/artifacts/abax_token.json @@ -0,0 +1,2873 @@ +{ + "source": { + "hash": "0x0035c1197569193c293a79d7e0b0ce01abb1d81bf9df077291745da7ff81231b", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_token", + "version": "1.0.0", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 11 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 66 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 15 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 84 + }, + "hash": { + "displayName": ["Hash"], + "type": 80 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 51 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "cap", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [], + "label": "CapUpdated", + "module_path": "abax_token::abax_token", + "signature_topic": "0x7514dd87908f9a7dc45fd5a063d922a23d1093212f0a0ab9c354aa2905e95b05" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 69 + }, + "messages": [ + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxToken::generate", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0x7834ef46" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxToken::inflation_rate_per_milisecond", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 70 + }, + "selector": "0x1a49428d" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxToken::cap", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 70 + }, + "selector": "0xead91e26" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Mintable::mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0xfc3c75d4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 70 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 70 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 70 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 71 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 71 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 66 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 72 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 72 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 73 + }, + "selector": "0x7271b782" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 74 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 76 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 77 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 77 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 77 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 77 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "set_code_hash", + "type": { + "displayName": ["Hash"], + "type": 80 + } + } + ], + "default": false, + "docs": [], + "label": "SetCodeHash::set_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 81 + }, + "selector": "0xabb60cdf" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 15 + } + }, + "root_key": "0xc629684f", + "ty": 16 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 15 + } + }, + "root_key": "0xffbbddfc", + "ty": 20 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 15 + } + }, + "root_key": "0x7c996051", + "ty": 24 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 29 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 30 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 29 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 35 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 11 + } + }, + "root_key": "0xd57ae5cd", + "ty": 39 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x686d1140", + "ty": 15 + } + }, + "root_key": "0x686d1140", + "ty": 43 + } + }, + "name": "cap" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7295d893", + "ty": 15 + } + }, + "root_key": "0x7295d893", + "ty": 47 + } + }, + "name": "inflation_rate_per_milisecond" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x1eff64e4", + "ty": 51 + } + }, + "root_key": "0x1eff64e4", + "ty": 52 + } + }, + "name": "last_cap_update" + } + ], + "name": "CappedInflation" + } + }, + "name": "capped_inflation" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc03938f3", + "ty": 11 + } + }, + "root_key": "0xc03938f3", + "ty": 56 + } + }, + "name": "version" + } + ], + "name": "Reserved" + } + }, + "name": "upgradeable" + } + ], + "name": "AbaxTokenContract" + } + }, + "root_key": "0x00000000", + "ty": 60 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 17 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 18 + }, + { + "name": "R", + "type": 19 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 21 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 22 + }, + { + "name": "R", + "type": 23 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 25 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 26 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 25, + "type": { + "def": { + "tuple": [9, 9] + } + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 27 + }, + { + "name": "R", + "type": 28 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 31 + }, + { + "name": "KeyType", + "type": 32 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 29 + } + ], + "path": ["Option"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 33 + }, + { + "name": "R", + "type": 34 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 31 + }, + { + "name": "KeyType", + "type": 36 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 37 + }, + { + "name": "R", + "type": 38 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 11 + }, + { + "name": "KeyType", + "type": 40 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 41 + }, + { + "name": "R", + "type": 42 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 42, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 44 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 44, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 45 + }, + { + "name": "R", + "type": 46 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 46, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 47, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 48 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 48, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 49 + }, + { + "name": "R", + "type": 50 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 49, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 50, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 51, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 52, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 51 + }, + { + "name": "KeyType", + "type": 53 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 53, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 54 + }, + { + "name": "R", + "type": 55 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 54, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 55, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 56, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 11 + }, + { + "name": "KeyType", + "type": 57 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 57, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 58 + }, + { + "name": "R", + "type": 59 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 58, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 59, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 60, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 61, + "typeName": ",>>::Type" + }, + { + "name": "psp22", + "type": 62, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 63, + "typeName": ",>>::Type" + }, + { + "name": "capped_inflation", + "type": 64, + "typeName": ",>>::Type" + }, + { + "name": "upgradeable", + "type": 65, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_token", "abax_token", "AbaxTokenContract"] + } + }, + { + "id": 61, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 62, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 16, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 20, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 24, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 63, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 30, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 35, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 39, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 64, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "cap", + "type": 43, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2833472755u32, ()>,>>::Type" + }, + { + "name": "inflation_rate_per_milisecond", + "type": 47, + "typeName": "<::ink::storage::Lazy> as\n::ink::storage::traits::AutoStorableHint<::ink::storage::traits\n::ManualKey<2839632402u32, ()>,>>::Type" + }, + { + "name": "last_cap_update", + "type": 52, + "typeName": "<::ink::storage::Lazy> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1017758183u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_token", "modules", "capped_inflation", "capped_infaltion_storage_field", "CappedInflation"] + } + }, + { + "id": 65, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "version", + "type": 56, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1821155093u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["abax_token", "modules", "capped_inflation", "reserved", "Reserved"] + } + }, + { + "id": 66, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 67 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 67 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 67, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 68 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 68 + } + ], + "path": ["Result"] + } + }, + { + "id": 68, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 69, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 70, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 71, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 72, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 31 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 31 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 73, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 11 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 11 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 74, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 75 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 75 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 75, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 76, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 77, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 78 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 78 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 78, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 79 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 79 + } + ], + "path": ["Result"] + } + }, + { + "id": 79, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 80, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 81, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 82 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 69 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 82 + }, + { + "name": "E", + "type": 69 + } + ], + "path": ["Result"] + } + }, + { + "id": 82, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 83 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 83 + } + ], + "path": ["Result"] + } + }, + { + "id": 83, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "SetCodeHashFailed" + }, + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 2, + "name": "PermissionError" + } + ] + } + }, + "path": ["pendzl_contracts", "upgradeability", "set_code_hash", "SetCodeHashError"] + } + }, + { + "id": 84, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_token.wasm b/artifacts/abax_token.wasm new file mode 100644 index 0000000..41fca8c Binary files /dev/null and b/artifacts/abax_token.wasm differ diff --git a/artifacts/abax_treasury.contract b/artifacts/abax_treasury.contract new file mode 100644 index 0000000..583f350 --- /dev/null +++ b/artifacts/abax_treasury.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x2b6e14c4ee5a5be88f0b24be21bfe3f537b68379cac55b6ad6811516faa43bc1","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001580e60027f7f0060037f7f7f0060027f7f017f60017f0060037f7f7f017f60017f017f60047f7f7f7f017f60047f7f7f7f006000006000017f60087f7f7e7f7f7f7f7f017f60057f7e7e7f7f006000017e60057f7f7f7f7f0002b50210057365616c300c74616b655f73746f726167650006057365616c310b6765745f73746f726167650006057365616c3005696e7075740000057365616c310463616c6c000a057365616c30087472616e736665720006057365616c300d6465706f7369745f6576656e740007057365616c320b7365745f73746f726167650006057365616c310d636c6561725f73746f726167650002057365616c3110636f6e7461696e735f73746f726167650002057365616c300b7365616c5f72657475726e0001057365616c300d7365745f636f64655f686173680005057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f727902010210035857040404040004000000000002020000000000000000000300030909050300000003010003000008000000030b000802020800050000010000000000050000000000000000000301000c00020100050d00040101070102070616037f01418080040b7f00418088050b7f00418088050b0711020463616c6c003c066465706c6f79003f0ab3cd01572b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba40201037f230041206b22022400200241106a2001104b41012103024020022d00100d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210140d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410140d01200228021c220341027621012003418080044921030c010b200241086a2001104d20022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000b4201017f20002d00042103200041003a00042003450440200028020020012002105f0f0b2001200041056a2d00003a00002000280200200141016a200241016b105f0b1e01017f200028020421022001200028020822001024200120022000105a0b8a0101047f230041206b22022400200241186a22034200370300200241106a22044200370300200241086a22054200370300200242003703002000027f200120024120105f45044020002002290300370001200041196a2003290300370000200041116a2004290300370000200041096a200529030037000041000c010b41010b3a0000200241206a24000b1100200020011043200041206a200110520b950202027f017e230041206b2202240020022001104b41082103024020022d00000d000240024002400240024002400240024020022d000122030e080008010203040506070b200241146a200110192002280214418080808078460d06200241106a2002411c6a28020022013602002002200229021422043703082000410c6a200136020020002004370204410021030c070b410221030c060b410321030c050b410421030c040b200241146a200110192002280214418080808078460d02200241106a2002411c6a28020022013602002002200229021422043703082000410c6a200136020020002004370204410521030c030b410621030c020b410721030c010b410821030b20002003360200200241206a24000bd306020a7f027e230041206b22062400200641086a200110130240024020062802080d00200628020c220320012802044b0d002006200341011060200628020021092001200628020422012003105f200941808080807846720d00200641146a2207027f02402003450d00200341076b22024100200220034d1b210a200141036a417c7120016b210b41002102034002400240024002400240024002400240027e0240024002400240200120026a2d000022044118744118752208410048044042808080808020210c428080808010210d200441f085046a2d000041026b0e030601020a0b200b20026b4103710d0a2002200a4f0d0b0340200120026a220441046a280200200428020072418081828478710d0c200241086a2202200a490d000b0c0b0b4200210c200241016a220520034f0d05200120056a2c00002105024002400240200441e001470440200441ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520054140480d030c050b200541607141a07f460d020c040b2005419f7f4a0d030c010b200541404e0d020b4200210d200241026a220420034f0d08200120046a2c000041bf7f4c0d070c020b4200210c200241016a220520034f0d04200120056a2c000021050240024002400240200441f0016b0e050100000002000b2008410f6a41ff017141024b200541404e720d030c020b200541f0006a41ff017141304f0d020c010b2005418f7f4a0d010b200241026a220420034f0d04200120046a2c000041bf7f4a0d014200210d200241036a220420034f0d07200120046a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210c428080808010210d0c040b200241016a22042003490d014200210c0b4200210d0c020b200120046a2c000041bf7f4a0d010b200441016a21020c030b2007200c2002ad84200d8437020441010c050b200241016a21020c010b200220034f0d000340200120026a2c00004100480d012003200241016a2202470d000b0c020b20022003490d000b0b20072001360204200741086a200336020041000b36020020062802144504402000200336020820002009ad2001ad422086843702000c020b20004180808080783602000c010b20004180808080783602000b200641206a24000bc70201057f230041106b22032400230041106b220024002000200136020c200041888204360208230041206b22012400200142808001370218200141f18704360214200041086a200141146a220510510240024020012802182206200128021c2202490d00200128021421042001200620026b220636021420042002200220046a2202200510012104200620012802142205490d000240024020040e0400020201020b2001200536021820012002360214200141086a200141146a104c2001280208450440200128020c210220004101360200200020023602040c030b20004102360200200041103a00040c020b200041003602000c010b000b200141206a2400200028020022014102460440000b200341086a2202200028020436020420022001360200200041106a240020032802082100200328020c2101200341106a24002001410020001b0b1f00027f20002001105945044041012000418c80041059450d011a0b41030b0b0b00200120002d0000105b0b4500027f200029030050044020014100105b200041086a2001101e200041106a0c010b20014101105b200041086a20011043200041286a2001101e200041306a0b2001101e0b2901017f230041106b22022400200220002903003703082001200241086a4108105a200241106a24000ba20102027f027e230041306b22022400200241106a2001104e0240024020022802100d002002290318210420022001104e20022802000d0020022903082105200241246a2001102020022802242203418080808078460d002001280204450440200020022902283702142000200336021020002005370308200020043703000c020b20004180808080783602100c010b20004180808080783602100b200241306a24000b8e0e02147f097e230041b0036b2202240020024180016a2001101302402002280280014504402002418c016a20012802044190016e2203200228028401220b2003200b491b102d0240200b044020024189036a2108200241f9026a210d200241186a210f2002419c016a211020024181036a211120024191036a21120340200241f8006a2001104b20022d00780d02024002400240024020022d00790e03000102060b200241f8026a2001101620022d00f8020d05200241c8026a2203200841086a290000370300200220082900003703c002200229008103211820022900f9022119200241086a2001102c2002290308a70d05200f290300211620022903102117200241e0016a2003290300370300200220022903c0023703d8014202211a0c020b200241f8026a22032001101620022d00f8020d04200241a8036a2204200841086a2205290000370300200220082900003703a003200229008103211820022900f902211920032001101620022d00f8020d04200241c8026a22032005290000370300200220082900003703c0022011290000211620022900f9022117200241206a2001102c2002290320a70d04200241306a290300211b2002290328211c200241e0016a2004290300370300200241d0016a2003290300370300200220022903a0033703d801200220022903c0023703c8014203211a0c010b200241f8026a22032001101620022d00f8020d03200241b8026a2205200d41086a2900003703002002200d2900003703b0022012290000211b200229008903211c20032001102220022d00f8024102460d03200241c0026a20034121100f1a200241e0006a2001102c20022802600d03200241f0006a290300211d2002290368211e200241d8006a2001104b20022d00580d03027e0240024020022d00590e020001060b200241c8006a2001104e20022802480d0520022903502119200241386a2001104e2002290338a70d052002290340211842000c010b200241f8026a22042001101620022d00f8020d04200241a8036a2206200841086a290000370300200220082900003703a003200229008103211820022900f9022119230041206b22032400200341106a2001104e42012116024020032802100d002003290318211720032001104e2003290300a70d002003290308211620042017370308200441106a2016370300420021160b20042016370300200341206a240020022903f80250450d04200241f0026a2006290300370300200220022903a0033703e8022002290388032116200229038003211742010b211a200241e0016a200241f0026a290300370300200241d0016a2005290300370300200220022903e8023703d801200220022903b0023703c801200241a0016a200241c0026a4121100f1a0b200241a8026a2213200241e0016a29030037030020024198026a2214200241d0016a290300370300200220022903d8013703a002200220022903c80137039002200241e8016a200241a0016a4121100f1a2002280294012203200228028c014604402002418c016a210c230041206b220424000240200341016a220304404104200c28020022064101742205200320032005491b2203200341044d1b220e4190016c2105200e41b99c8e0749410374210a02402006450440200441003602180c010b20044108360218200420064190016c36021c2004200c2802043602140b200441146a2107230041106b22062400200441086a2209027f02400240200a044020054100480d01027f20072802040440200741086a2802002203450440200641086a200a20054100106220062802082103200628020c0c020b20072802002115200a2005106422070440200720152003200520032005491b100f1a0b2007210320050c010b2006200a200510612006280200210320062802040b21072003044020092003360204200941086a200736020041000c040b2009200a360204200941086a20053602000c020b20094100360204200941086a20053602000c010b200941003602040b41010b360200200641106a24002004280208450d01200428020c1a0b000b200428020c2103200c200e360200200c2003360204200441206a240020022802940121030b20022802900120034190016c6a220320173703282003201e3703582003201c37034820032018370310200320193703082003201a370300200320022903a0023703182003200229039002370338200341306a2016370300200341e0006a201d370300200341d0006a201b370300200341206a2013290300370300200341406b2014290300370300200341e8006a200241e8016a4121100f1a2003418c016a2010280000360000200320022800990136008901200220022802940141016a36029401200b41016b220b0d000b0b2000200229028c01370200200041086a20024194016a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200241b0036a24000b6801037f230041306b2202240020022001104d02402002280200450440200228020421032002410f6a22042001102220022d000f4102470440200041046a20044121100f1a200020033602000c020b200041023a00040c010b200041023a00040b200241306a24000b960101027f230041306b22022400200241086a2001104b41022103024020022d00080d000240024020022d00090e020001020b410021030c010b2002410f6a2001101620022d000f0d0020002002290010370001200041196a200241286a290000370000200041116a200241206a290000370000200041096a200241186a290000370000410121030b200020033a0000200241306a24000bb00102017f027e230041306b22022400200241106a2001104e0240024020022802104504402002290318210320022001104e20022802000d0120022903082104200241246a200110202002280224418080808078470440200020022902243702102000200437030820002003370300200041186a2002412c6a2802003602000c030b20004180808080783602100c020b20004180808080783602100c010b20004180808080783602100b200241306a24000b2401017f230041106b220224002002200136020c2002410c6a20001049200241106a24000bce0202057f017e230041f0006b22012400200141206a200041186a290300370300200141186a2203200041106a290300370300200141106a2205200041086a29030037030020012000290300370308200142808001370244200141f187043602402001200336024c200141406b41021048200141306a2200200141c8006a28020036020020012001290240370328200141286a2202419281041042200141e8006a2204200028020036020020012001290328370360200141e0006a200141cc006a1045200141d8006a2004280200360200200120012903603703502002200141d0006a1056200141386a280200210020012802342104200129022821062001410036023020012006370228200320021040200141086a2002101e20052002101e2001411c6a2002102620012802302203200128022c4b0440000b20042000200128022820031005200141f0006a24000bc80102037f017e2000280204210320012000280208220010242000044020004190016c2104034002400240024002404202200220036a220029030042027d2205200542025a1ba741016b0e020102000b20014100105b200041086a20011043200041286a200110520c020b20014101105b200041086a20011043200041286a20011043200041c8006a200110520c010b20014102105b200041386a20011043200041e8006a20011050200041d8006a2001105220002001101d0b200420024190016a2202470d000b0b0bce0101057f230041406a22012400200141808001360210200141f1870436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a100b2004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141176a200141386a101620012d00170440000b2000200141196a290000370001200041096a200141216a290000370000200041116a200141296a290000370000200041186a200141306a290000370000200020012d00183a0000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a100c2003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0bbd0101067f230041206b22002400200042808001370218200041f1870436021441848004200041146a22051040024020002802182201200028021c2202490d00200028021421032000200120026b220436021420032002200220036a2202200510012101200420002802142203490d004100210402402001102a41ff017122014103460d0020014110470d012000200336021820002002360214200041086a2005104c20002802080d00200028020c21040b200041206a240020040f0b000b1d01017f410f21012000410e4d047f200041f881046a2d000005410f0b0bad0201067f230041d0006b22012400200142808001370230200141f1870436022c418080042001412c6a2206104002402001280230220420012802342202490d00200128022c21032001200420026b220436022c20032002200220036a22022006100121032004200128022c2205490d002003102a41ff01714110470d00200120053602042001200236020020062001101620012d002c0d00200141106a2202200141366a290000370300200141186a22032001413e6a2900003703002001411f6a2204200141c5006a29000037000020012001412e6a29000037030820012802040d0020012d002d210520002001290308370001200041186a2004290000370000200041116a2003290300370000200041096a2002290300370000200020053a0000200141d0006a24000f0b000b5f02017f037e230041106b2202240020024200370308200242003703000240200120024110105f45044020022903082104200229030021050c010b420121030b2000200537030820002003370300200041106a2004370300200241106a24000b5501017f02402001450440410821020c010b0240200141b89c8e074b0d0020014190016c22024100480d0041f087042d00001a41082002106422020d010b000b2000410036020820002002360204200020013602000bc10102037f017e230041206b22022400200241086a2001104b0240024020022d00080d0002400240024020022d00090e020001030b20022001104b20022d00000d0241082103024020022d00010e020200030b200241106a20011018200228021022034108460d0220022902182105200228021421040c010b2001104a450d0141092103410121040b20012802044504402000200537020820002004360204200020033602000c020b2000410a3602000c010b2000410a3602000b200241206a24000b9a0202037f017e230041e0006b22012400200141186a200041186a290000370300200141106a200041106a290000370300200141086a200041086a29000037030020012000290000370300200142808001370238200141f1870436023420012001360240200141346a41021048200141286a22002001413c6a28020036020020012001290234370320200141206a220241f180041042200141d8006a200028020036020020012001290320370350200141c4006a2200200141d0006a200141406b1030200220001056200141306a2802002100200128022c21032001290220210420014100360228200120043702202001200210432001280228220220012802244b0440000b20032000200128022020021005200141e0006a24000bd80101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002280200200341046a22071043200328020c220220032802084b0d0220072003280204200210442003410036022c20032005360228200320063602242007200341246a10432004200328022c6a22022004490d02200120023602080c010b200141ef800410470b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000ba60101017f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041f18704360204024041f28704027f20012d000045044041f1870441003a0000410020012d00014103460d011a41f2870441013a00002000410236020c200141016a200041046a101c200028020c220041818001490d02000b41f1870441013a000041010b3a0000410221000b20022000105e000b4d01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041f1870441013a0000410121010b200141f187046a20013a00002002200141016a105e000bbf0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041f18704360204024020012d00002203410a47044041f1870441003a00000240200341094604402000410236020c41f2870441003a0000200141046a200041046a10400c010b41f2870441013a00002000410236020c2001200041046a10370b200028020c220141818001490d01000b41f187044181023b0000410221012000410236020c0b20022001105e000bab0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041f18704360204024041f28704027f20012d00002203410a47044041f1870441003a0000410020034109460d011a41f2870441013a00002000410236020c2001200041046a1037200028020c220141818001490d02000b41f1870441013a000041010b3a0000410221012000410236020c0b20022001105e000b5901037f230041206b22002400200042808001370218200041f1870436021441f48104200041146a1040200028021c220120002802184b0440000b200041086a200028021422022001200120026a4100105d200041206a24000be40502097f017e230041a0026b22022400200241c8016a200141a8016a4138100f210320012802e0012104200241206a2208200141a801100f1a2002200436028002200241f8016a290300210b20024280800137029402200241f1870436029002200320024190026a22051043024020022802940222032002280298022201490d0020022802900221064100210420024100360298022002200320016b360294022002200120066a36029002200241e8016a2005105220022802940222012002280298022203490d00200120036b2101200228029002220920036a2103418c80042107200228028002220a410371450440200241003602980220022001360294022002200336029002200241c0016a2005105320024189016a20051043200241e8006a20051050200241d8006a2005105220082005101d200241b0016a2005101520022802940222012002280298022204490d01200228029002220720046a2103200120046b21010b2002200136029002200a2006200b200920072004200320024190026a1003210420012002280290022206490d002004102a41ff017122014110472001410247710d002002200636028c022002200336028802200241186a20024188026a104b20022d00180d00024002400240024020022d00190e020001040b200241106a20024188026a104b20022d00100d03410c2103024020022d00110e020300040b200241086a20024188026a104b20022d00080d03410a21030240024020022d00090e0400010403050b20024190026a20024188026a10192002280290022201418080808078460d04200229029402210b410821030c030b20024190026a20024188026a101820022802900222034108460d03200229029802210b20022802940221010c020b20024188026a104a450d02200228028c021a0c020b410b21030b200228028c020d002000200b370208200020013a000420002003360200200041076a20014118763a0000200020014108763b0005200241a0026a24000f0b000bd10201017f024002400240024002400240024002400240024020002d000041016b0e080102030405060708000b20014100105b0c080b20014101105b200120002d0001105b0f0b20014102105b200041016a2001101c0f0b20014103105b02400240024002404101200028020441086b2202200241044f1b41016b0e03010203000b20014100105b200041086a200110150f0b20014101105b0c070b20014102105b0f0b20014103105b0f0b20014104105b0f0b20014105105b0f0b20014106105b0f0b20014107105b0f0b20014108105b0f0b0240024002400240024002400240024002400240200041046a220028020041016b0e0701020304050607000b20014100105b0c070b20014101105b0c070b20014102105b0c060b20014103105b0c050b20014104105b0c040b20014105105b0c020b20014106105b0c020b20014107105b0c010b200041046a200110150b0b1a0020002001101e200041086a2001101e200041106a200110260bcf0101047f230041406a22012400200141286a200041186a290000370300200141206a200041106a290000370300200141186a200041086a29000037030020012000290000370310200142808001370238200141f1870436023441808004200141346a22041040024020012802382202200128023c2200490d00200128023421032001410036023c2001200220006b3602382001200020036a360234200141106a20041043200128023c220220012802384b0d00200141086a2003200020012802342002105d200141406b24000f0b000ba50a020a7f097e23004190016b2205240010292109200541146a2004102d024020052802142207200528021c2206460d00200528021820064190016c6a210a20044190016c210b200620076b21084100210703402007200b460d0102400240024002404202200320076a2206290300220f42027d2210201042025a1ba741016b0e020102000b200541d8006a200641206a2903003703002005200641186a290300370350200641306a2903002110200641286a290300210f200641106a2903002113200641086a2903002111420221120c020b200541c8006a200641406b290300370300200541d8006a200641206a2903003703002005200641386a2903003703402005200641186a290300370350200641d0006a2903002114200641c8006a2903002115200641306a2903002110200641286a290300210f200641106a2903002113200641086a2903002111420321120c010b200641e8006a2d0000047f200541f8006a20064181016a290000370300200541f0006a200641f9006a290000370300200541e8006a200641f1006a2900003703002005200641e9006a29000037036041010541000b210c200641e0006a210d200641d8006a210e027e200f500440200641086a290300211142002112200641106a2903000c010b20054188016a200641206a2903003703002005200641186a29030037038001200641086a2903002111200641306a2903002110200641286a290300210f42012112200641106a2903000b2113200d2903002116200e2903002117200541286a200541e8006a290300370300200541306a200541f0006a290300370300200541386a200541f8006a290300370300200541d8006a20054188016a290300370300200541c8006a200641406b2903003703002005200529036037032020052005290380013703502005200641386a290300370340200641d0006a2903002114200641c8006a29030021150b2007200a6a22062012370300200641306a2010370300200641286a200f370300200641e0006a2016370300200641d8006a2017370300200641d0006a2014370300200641c8006a2015370300200641106a2013370300200641086a2011370300200641186a2005290350370300200641206a200541d8006a290300370300200641386a2005290340370300200641406b200541c8006a290300370300200641e8006a200c3a0000200641e9006a2005290320370000200641f1006a200541286a290300370000200641f9006a200541306a29030037000020064181016a200541386a29030037000020074190016a2107200841016a22080d000b0b200541f8006a2004360200200520052902143703702005200237036820052001370360200520093602840120054188800436028001200542808001370224200541f1870436022020054180016a200541206a2207105102402005280224220620052802282203490d0020052802202104200541003602282005200620036b3602242005200320046a360220200541e0006a2208200710382005280228220620052802244b0d00200541086a2004200320052802202006105d410121030240200941016a2204044020052004360220200542808001370264200541f1870436026041848004200810402005280264220620052802682203490d0220052802602104200541003602682005200620036b3602642005200320046a3602602007200810402005280268220620052802644b0d0220052004200320052802602006105d20002009360204410921030c010b200041013a00010b200020033a000020054190016a24000f0b000ba60301057f230041e0006b220224002002200136023c200241888004360238200242808001370244200241f18704360240200241386a200241406b2205105102402002280244220420022802482201490d00200228024021032002200420016b220436024020032001200120036a2201200510002103200420022802402206490d00027f2003102a41ff01712203410347044020034110470d022002200636020c200220013602082005200241086a101f20022802502201418080808078460d02200241206a200241dc006a28020036020020022002290041370328200220022902543703182002200241c8006a29000037002f20022d00400c010b418080808078210141100b2103200241106a2204200241206a2802003602002002200229002f37004720022002290328370340200220022903183703082000027f200141808080807847044020002002290340370009200020033a0008200041106a20022900473700002000411c6a2002290308370200200041186a2001360200200041246a200428020036020041000c010b200041043a000441010b360200200241e0006a24000f0b000bff4c02297f077e230041e0046b2200240002400240024002400240102841ff01714105470d002000418080013602a00141f18704200041a0016a2201100220002802a0012202418180014f0d00200020023602dc03200041f187043602d803200041003602a001200041d8036a20014104105f0d0120002d00a301210520002d00a201210420002d00a1012102027f02400240024002400240024002400240024002400240024002400240024020002d00a001220141ee006b0e040111110b000b20014133460d032001413a460d02200141ca00460d082001418301460d072001419b01470440200141ab01460d0c200141b701460d05200141c101460d07200141d901460d02200141de01460d06200141ea01460d0a200141f10147200241ff0171412d4772200441ff017141da01472005412e4772720d11200041086a200041d8036a104d20002802080d11200028020c2201410876210341030c0f0b200241ff017141b70147200441ff0171413947722005412f47720d10200041a0016a200041d8036a101620002d00a0010d10200041b0046a200041b4016a2800003602002000200041ac016a2900003703a8042000200041bc016a2800003602f8032000200041c0016a2d00003a00fc03200041a8016a28000022024108762106200041a4016a28000022014108762103200041a2016a2f00002107200041b8016a280000210420002d00a101210841000c0e0b200241ff0171220141cf00460d0b200141e50047200441ff0171411e4772200541de0147720d0f200041a0016a200041d8036a102320002802b0012204418080808078460d0f200041b0046a200041ac016a28020036020020004180046a200041bc016a280200360200200020002902a4013703a804200020002902b4013703f80320002f00a10120002d00a30141107472210620002d00a001210241010c0d0b200241ff017141a10147200441ff017141de014772200541ff0047720d0e200041a0016a200041d8036a102320002802b0012204418080808078460d0e200041b0046a200041ac016a28020036020020004180046a200041bc016a280200360200200020002902a4013703a804200020002902b4013703f80320002f00a10120002d00a30141107472210620002d00a001210241020c0c0b200241ff0171418e0147200441ff017141fc014772200541c00147720d0d200041106a200041d8036a104d20002802100d0d20002802142201410876210341040c0b0b200241ff017141d30147200441ff017141e1014772200541940147720d0c41050c0a0b200241ff017141dc0047200441ff017141a90147722005412547720d0b41060c090b200241ff017141d40047200441ff017141d3014772200541c80147720d0a200041186a200041d8036a104d20002802180d0a200028021c2201410876210341070c080b200241ff017141d90147200441ff017141ac0147722005411847720d09200041a0016a200041d8036a102120002d00a40122024102460d09200041b0046a200041b0016a28020036020020004180046a200041c0016a280200360200200020002902a8013703a804200020002902b8013703f80320002f00a10120002d00a30141107472210320002f00a501200041a7016a2d000041107472210620002d00a001210120002802b401210420003502c401212941080c070b200241ff017141da0147200441ff0171413b4772200541b20147720d08200041206a200041d8036a104d20002802200d0820002802242201410876210341090c060b200241ff017141c00147200441ff017141e2004772200541fd0147720d07200041a0016a200041d8036a102120002d00a40122024102460d07200041b0046a200041b0016a28020036020020004180046a200041c0016a280200360200200020002902a8013703a804200020002902b8013703f80320002f00a10120002d00a30141107472210320002f00a501200041a7016a2d000041107472210620002d00a001210120002802b401210420003502c4012129410a0c050b200241ff017141f10147200441ff0171412447722005418a0147720d06200041a0016a200041d8036a102120002d00a40122024102460d06200041b0046a200041b0016a28020036020020004180046a200041c0016a280200360200200020002902a8013703a804200020002902b8013703f80320002f00a10120002d00a30141107472210320002f00a501200041a7016a2d000041107472210620002d00a001210120002802b401210420003502c4012129410c0c040b200241ff017141a60147200441ff017141c8004772200541830147720d05200041306a200041d8036a2202104d20002802300d0520002802342101200041286a2002104d20002802280d0520014108762103200028022c22024108762106410d0c030b200241ff017141b60147200441ff0171410c47720d04200541df01460d010c040b200441ff0171410947200541910147720d03200041a0016a200041d8036a102120002d00a40122024102460d03200041b0046a200041b0016a28020036020020004180046a200041c0016a280200360200200020002902a8013703a804200020002902b8013703f80320002f00a10120002d00a30141107472210320002f00a501200041a7016a2d000041107472210620002d00a001210120002802b401210420003502c4012129410b0c010b200041b8016a4200370300200041b0016a4200370300200041a8016a4200370300200042003703a001200041d8036a200041a0016a4120105f0d02200041b0046a200041b3016a280000360200200041fc036a200041bf016a2d00003a0000200020002900ab013703a804200020002800bb013602f80320002800a7012202410876210620002800a3012201410876210320002f00a101210720002d00a001210820002800b7012104410e0b2109200041cc006a200041b0046a280200360200200041dc006a20004180046a280200360200200020002903a804370244200020002903f8033702542000202937036020002004360250200020073b013a200020083a0039200020093a00382000200241ff017120064108747222073602402000200141ff0171200341087472220536023c2000410036026c2000428080013702a401200041f187043602a001200041ec006a200041a0016a2203104020002802a401220620002802a8012201490d0020002802a00121022000200620016b22063602a00120022001200120026a200310012101200620002802a0012203490d0020032001102a41ff01712201410346200141104772720d00200041406b2102200041386a41017221010240024002400240024002400240024002400240024002400240027f024002400240024002400240024002400240024002400240200941016b0e0e01020315050414131211100f0e0d000b200041bc016a200141186a290000370200200041b4016a200141106a290000370200200041ac016a200141086a290000370200200020012900003702a4012000200041df046a3602a00141012101200041a9046a1027200041013a00a80441d082bdaf01200041a8046a101b220241ff01714103460d0a41020c0b0b2000280258210720002802542106200029034821292000290340212a41012102200041a1016a1027200041013a00a0014186e0eedc7d200041a0016a101b220141ff01714103470440410221050c090b200041a0016a202a202920062007103a20002d00a00122054109460d07200041b0046a200041b0016a280200360200200020002902a8013703a80420002802a401210320002f01a201210420002d00a10121010c080b20002802582107200028025421062000290348212a2000290340212941012101200041a1016a1027200041013a00a00141f88f9ec402200041a0016a101b220241ff01714103470440410221050c060b1057222b4280a0f6a7137c222c202b54044041012102410121050c060b2029202c540440410821050c060b200041a0016a2029202a20062007103a20002d00a00122054109460d04200041b0046a200041b0016a280200360200200020002902a8013703a80420002802a401210320002f01a201210420002d00a10121020c050b41012117200041a1016a1027200041013a00a0014192d4c19d7d200041a0016a101b220441ff01714103470440410221050c160b200041a0016a2005103b20002802a0010d02200041c0016a2802002102200041bc016a280200210120002903b001212a20002903a801212920291057222b560440410521050c160b202a202b540440410621050c160b200041b0016a21042002450d13200120024190016c6a211e20004198026a211f20004188026a2118200041e8016a2119200041d8016a210c200041c0016a2109200041b8046a2106200041e8026a210a200041c8026a210b20004189026a2111200041a8016a210720004188046a210d200041e9016a2112200041e0016a2116200041af046a2120200041a1026a211a0340200129030022294204510d14200141386a2103200141086a2102200141d0006a290300212c200141306a290300212a2001290348212e2001290328212b02400240024002404202202942027d222d202d42025a1ba741016b0e020102000b200041a0036a200241186a290000222937030020004198036a200241106a290000222c37030020004190036a200241086a290000222e37030020002002290000222d37038803200041b8016a20293703002004202c3703002007202e3703002000202d3703a0012000202a3703b0042000202b3703a8042000428080013702fc03200041f187043602f803200041a0016a200041f8036a2208104320002802fc03220e2000280280042202490d1a20002802f803210320004100360280042000200e20026b3602fc032000200220036a3602f803200041a8046a20081052200028028004220820002802fc034b0d1a2003200220002802f80320081004105c41ff01714110460d02410721050c190b20042002290300370300200441186a200241186a290300370300200441106a200241106a290300370300200441086a200241086a29030037030020004180046a2208200341086a290300370300200020032903003703f803200041a8046a2202200041a0016a22034130100f1a200041b8016a200641186a2903003703002004200641106a2903003703002007200641086a2903003703002016202a37030020004180026a202c370300200020062903003703a001200941106a4200370300200941086a420037030020094200370300201920002903f803370300201941086a20082903003703002000202b3703d8012000202e3703f8012000410036029002200041dbc1e4af7f36029802200041003602a0022000428080808010370388022000428080013702ac04200041f187043602a80420032002104320002802ac04220820002802b0042203490d1920002802a804210e200041003602b0042000200820036b3602ac0420002003200e6a3602a80420092002105220002802ac04220220002802b0042203490d19200220036b210220002802a804221320036a2103024020002802a00222144103710440418c80042110410021080c010b200041003602b004200020023602ac04200020033602a804201f200041a8046a22021053200c2002101720182002101520002802ac04220220002802b0042208490d1a200220086b210220002802a804221020086a21030b200020023602a8042014200e42002013201020082003200041a8046a22081003210e200220002802a8042210490d19200e102a41ff017122024110472002410247710d19200020103602bc03200020033602b8032008200041b8036a102e20002802a8042202410a462002410946720d1920024108460d010c150b200141e0006a290300212d2001290358212f20012d0068210f200041b0036a220e200341086a290000370300200041c0036a2210200141e9006a220841086a290000370300200041c8036a2213200841106a290000370300200041d0036a2214200841186a290000370300200041e0036a221b200241086a290300370300200041e8036a221c200241106a290300370300200041f0036a221d200241186a290300370300200020032900003703a803200020082900003703b803200020022903003703d803200041f0006a102b027f200f4101710440200420002903b803370000200441186a2014290300370000200441106a2013290300370000200441086a2010290300370000200041a8046a2202200041a0016a22034130100f1a200041b8016a200641186a22212903003703002004200641106a22222903003703002007200641086a2223290300370300200020062903003703a001200941106a4200370300200941086a420037030020094200370300200c2000290070370000200c41086a200041f8006a2224290000370000200c41106a20004180016a2225290000370000200c41186a20004188016a222629000037000020004180026a202d3703002000202f3703f8012000410036029002200041b29fece87b360288022000428080013702ac04200041f187043602a80420032002104320002802ac04220820002802b0042203490d1a20002802a804210f200041003602b0042000200820036b3602ac0420002003200f6a3602a80420092002105220002802ac04220220002802b0042203490d1a200220036b210220002802a804222720036a2103024020002802900222284103710440418c80042115410021080c010b200041003602b004200020023602ac04200020033602a8042018200041a8046a22021053200c2002101720002802ac04220220002802b0042208490d1b200220086b210220002802a804221520086a21030b200020023602a8042028200f42002027201520082003200041a8046a22081003210f200220002802a8042215490d1a200f102a41ff017122024110472002410247710d1a200020153602fc03200020033602f8032008200041f8036a220f102e20002802a8042202410a462002410946720d1a20024108470d16201220002903b803370000201241186a2014290300370000201241106a2013290300370000201241086a201029030037000020212026290000370000202220252900003700002023202429000037000020062000290070370000200f20084130100f1a201141086a200e290300370000201120002903a803370000200720002903d803370300200741086a201b290300370300200741106a201c290300370300200741186a201d290300370300200b200d290300370300200b41086a200d41086a290300370300200b41106a200d41106a290300370300200b41186a200d41186a290300370300201a202c3700002016202d370300200041d0016a202a370300200a4200370300200a41086a4200370300200a41106a4200370300200a41186a41003602002000202e370099022000202f3703d8012000202b3703c80120004195d4bcb8023602c002200041003602b80220004280808080103703b002200041013a00e801200020293703a00120004190016a200041a0016a10362000280290012202410c460d0220002f00950120004197016a2d0000411074720c010b200641186a20004188016a290000370000200641106a20004180016a290000370000200641086a200041f8006a29000037000020062000290070370000200041f8036a200041a8046a4130100f1a201141086a200e290300370000201120002903a803370000200720002903d803370300200741086a201b290300370300200741106a201c290300370300200741186a201d290300370300200b200d290300370300200b41086a200d41086a290300370300200b41106a200d41106a290300370300200b41186a200d41186a290300370300201a202c3700002016202d370300200041d0016a202a370300200a4200370300200a41086a4200370300200a41106a4200370300200a41186a41003602002000202e370099022000202f3703d8012000202b3703c80120004195d4bcb8023602c002200041003602b80220004280808080103703b002200041003a00e801200020293703a00120004190016a200041a0016a10362000280290012202410c460d0120002f00950120004197016a2d0000411074720b2101200029029801212920002d0094012103410321050c170b20014190016a2201201e470d000b0c130b102921010c170b200041a0016a2201410172102b200041003a00a001230041106b220024002000410036020c2000410c6a2802002102230041106b22002400200041808001360208200041f18704360204024020012d0000044041f187044181023b0000410221012000410236020c0c010b41f1870441003a00002000410136020c200141016a200041046a1043200028020c220141818001490d00000b20022001105e000b200041ad016a2f0000200041af016a2d0000411074722101200041b0016a2903002129200041ac016a2d00002103200041a8016a280200210220002f01a601210720002d00a501210420002d00a40122054109470d120c110b20002802a4012103200041bc016a2007360200200041b8016a2006360200200020043602b401200020033602b0012000202a3703a801200020293703a001200041a0016a1025103541002101410921050b200041b0016a200041b0046a280200360200200020002903a8043702a801200020033602a401200020043b01a201200020023a00a101200020053a00a0012001200041a0016a1033000b20002802a4012103200041bc016a2007360200200041b8016a2006360200200020043602b401200020033602b001200020293703a8012000202a3703a001200041a0016a1025103541002102410921050b200041b0016a200041b0046a280200360200200020002903a8043702a801200020033602a401200020043b01a201200020013a00a101200020053a00a0012002200041a0016a1033000b200041a4016a220110392001102f10354100210141090b2104200020023a00a101200020043a00a0012001200041a0016a1034000b200041bc016a200141186a290000370200200041b4016a200141106a290000370200200041ac016a200141086a290000370200200020012900003702a4012000200041df046a3602a00141012101200041a9046a1027200041013a00a8040240024041e3abb1bb04200041a8046a101b220441ff017141034604402000410341014112200041a4016a100a105c2202200241ff01714110461b41ff017141124622021b3602a80420020d010c020b200041a8046a21020240024002400240200441ff017141016b0e020102000b200241046a41be8304411110630c020b200241046a41cf8304410f10630c010b200241046a41de8304411110630b2002410236020020002802a8044103470d010b1035410021010b4100210241002104230041106b220324002003200136020c2003410c6a2802002105230041106b22012400200141808001360208200141f1870436020402400240024002400240200041a8046a22062802002203410447044041f1870441003a00004103210020034103460d034101210241f2870441013a000041f387042107200341016b0e020401020b4101210241f1870441013a00000c020b410221040b41f3870420043a00002001410336020c200641046a200141046a1015200128020c220041818001490d02000b4102210041f2870421070b200720023a00002001200036020c0b20052000105e000b200041df046a2005101a210241012101200041a1016a1027200041013a00a0012002200041a0016a2203101b220241ff017141034604402007200041df046a2005101a220d470440230041206b22042400200420073602142004200536021c200441888204360218200441086a2109200441146a210c230041106b22062400200641086a210a230041206b22012400200142808001370218200141f18704360214200441186a200141146a221110510240024020012802182212200128021c2208490d002001280214210b2001410036021c2001201220086b36021820012008200b6a360214200c20111040200128021c220c20012802184b0d00200141086a200b20082001280214200c105d200128020c2108200a2001280208360200200a2008360204200141206a24000c010b000b200628020c21012009200628020836020020092001360204200641106a2400200441206a2400200020073602c0032000200d3602bc03200020053602b8032000428080013702dc03200041f187043602d8032000200041b8036a220136028803200041d8036a41021048200041a8016a2204200041e0036a280200360200200020002902d8033703a001200341cf80041042200041b0046a22072004280200360200200020002903a0013703a804200041a8046a20004188036a104520004180046a2007280200360200200020002903a8043703f8032003200041f8036a1056200041b0016a280200210420002802ac01210720002902a0012129200041003602a801200020293702a001200120031040200141047220031040200041c0036a2003104020002802a801220120002802a4014b0d0d2007200420002802a001200110050b1035410021010b0c0e0b200041a8046a220420024121100f1a41012101200041a1016a22031027200041013a00a0010240024020002d00a80404402004410172200341201012450d010b410021020c010b20052002103d220241ff01714103470d00103541002101410321020b0c0d0b200041df046a2005101a210141012104200041a1016a1027200041013a00a00102402001200041a0016a101b220141ff01714103470d0020052002103d220141ff01714103470d00103541002104410321010b0c0d0b200041df046a2005101a210141012104200041a1016a1027200041013a00a00102402001200041a0016a101b220141ff01714103470d004102210120052002103e41ff01714103470d00103541002104410321010b0c0c0b200041df046a2005101a21010c090b200041386a4104722201280200200141046a10592101200041003a00a001200020013a00a101230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360204200141f187043602000240200041a0016a22002d0000044041f187044181023b0000410221010c010b2001410136020841f1870441003a0000200120002d00013a000f20012001410f6a4101105a2001280208220141818001490d00000b20022001105e000b200041a0016a2100230041d0006b220124002001200536022420014188800436022020014280800137022c200141f18704360228200141206a200141286a2204105102400240200128022c220720012802302202490d00200128022821032001200720026b220736022820032002200220036a2202200410012103200720012802282205490d002000027f2003102a41ff01712203410347044020034110470d022001200536024c200120023602482004200141c8006a101f20012802382202418080808078460d02200141086a200141c4006a280200360200200120012900293703102001200129023c3703002001200141306a29000037001720012d00280c010b418080808078210241100b3a0000200020012903103700012000200236021020002001290300370214200041086a20012900173700002000411c6a200141086a280200360200200141d0006a24000c010b000b230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141f18704360204024041f28704027f2000280210220441818080807847044041f1870441003a000041002004418080808078460d011a41f2870441013a00002001410236020c2000200141046a1038200128020c220041818001490d02000b41f1870441013a000041010b3a0000410221002001410236020c0b20022000105e000b41012104200041a1016a1027200041013a00a001410221010240418aeddeb67f200041a0016a2203101b220241ff01714103470d0020032005103b024020002802a00145044020002005360288032000428080013702dc03200041f187043602d803200020004188036a22013602b803200041d8036a41021048200041a8016a2202200041e0036a280200360200200020002902d8033703a001200341d481041042200041b0046a22042002280200360200200020002903a0013703a804200041a8046a200041b8036a104520004180046a2004280200360200200020002903a8043703f8032003200041f8036a1056200041b0016a280200210420002802ac01210220002902a0012129200041003602a801200020293702a00120012003104020002802a801220120002802a4014b0d072002200420002802a001200110050c010b20004180046a200041ae016a29010037030020004188046a200041b6016a2f01003b0100200020002901a6013703f80320002d00a501210220002d00a40122014109470d010b103541002104410921010b200041b2016a20004188046a2f01003b0100200041aa016a20004180046a290300370100200020002903f8033701a201200020023a00a101200020013a00a0012004200041a0016a1034000b20002f00ad0420202d000041107472210120002902b004212920002d00ac042103410021050c020b20002005360290012000428080013702bc03200041f187043602b803200020004190016a2206360270200041b8036a41021048200041a8016a2201200041c0036a280200360200200020002902b8033703a001200041a0016a220541b381041042200041b0046a22022001280200360200200020002903a0013703a804200041a8046a200041f0006a104520004180046a2002280200360200200020002903a8043703f8032005200041f8036a10562004280200210120002802ac01210220002902a0012129200041003602a801200020293702a00120062005104020002802a801220420002802a4014b0d022002200120002802a001200410050b103541002117410921050b200020013b00a901200041ab016a20014110763a0000200020293702ac01200020033a00a801200020023602a401200020073b01a201200020043a00a101200020053a00a0012017200041a0016a1034000b000b200041013602a001200041a0016a1032000b200041003602a001200020013602a401230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141f187043602040240200041a0016a2200280200044041f187044181023b0000410221002001410236020c0c010b2001410136020c41f1870441003a0000200041046a200141046a1040200128020c220041818001490d00000b20022000105e000b200041003a00a001200020023a00a1012001200041a0016a1031000b200041003a00a001200020013a00a1012004200041a0016a1031000bc40402087f017e23004190016b22022400024020002001101b220841ff01714103460440230041406a2204240020042000360210200441146a20014121100f1a2004418c82043602382004200441106a36023c230041106b22052400200541086a2106230041206b22032400200342808001370218200341f18704360214200441386a200341146a104f200328021c220720032802184b0440000b200341086a2209200328021420071007220736020420092007417f47360200200328020c21072006200328020836020020062007360204200341206a2400200528020c2103200441086a2206200528020836020020062003360204200541106a2400200441406b2400200241047222031027200241246a20014121100f210520022000360200200242808001370264200241f187043602602002200236026c20022003360270200241e0006a41041048200241d0006a2201200241e8006a28020036020020022002290260370348200241c8006a220041ae8004104220024188016a22062001280200360200200220022903483703800120024180016a2204200241ec006a104520012006280200360200200220022903800137034820042000200241256a410020022d00241b1055200241f4006a22012004200241f0006a1030200020011056200241d8006a2802002101200228025421042002290248210a200241003602502002200a37024820022000104020052000105020032000104320022802502200200228024c4b0d01200420012002280248200010050b20024190016a240020080f0b000b5801027f230041d0006b22022400410221032000200110594504402000200110582002412e6a1027200220003602082002410c6a20014121100f1a200241013a002d200241086a1054410321030b200241d0006a240020030bd20801087f230041b0026b220024000240102841ff01714105470d0020004180800136020041f187042000100220002802002201418180014f0d0020002001360264200041f18704360260200041003602000240200041e0006a220120004104105f0d0020002d0000419b01470d0020002d000141ae01470d0020002d0002419d01470d0020002d000341de00470d00200041ca016a2001101620002d00ca010d00200041eb016a2001101620002d00eb010d002000418c026a22022001101620002d008c020d00200041bf016a200041a5026a2201290000370000200041b7016a2000419d026a2203290000370000200041af016a20004195026a2204290000370000200041f0006a200041d4016a290000370300200041f8006a200041dc016a290000370300200041ff006a200041e3016a2900003700002000200029008d023700a7012000200041cc016a29000037036820002d00cb0121052000419f016a20004184026a29000037000020004197016a200041fc016a2900003700002000418f016a200041f4016a290000370000200020002900ec013700870141012107200041016a200041e8006a220641df00100f1a200020053a00002001200041186a2900003700002003200041106a2900003700002004200041086a2900003700002000200029000037008d02200041013a008c02230041f0006b2201240020022d00000440200141ce006a2002290001370100200141e6006a200241196a2203290000370100200141de006a200241116a2204290000370100200141d6006a200241096a2205290000370100200141206a2003290000370000200141186a2004290000370000200141106a2005290000370000200141013a0007200120022900013700084100200141076a1058200141013a004d200141003a002c20014100360228200141286a10540b200141f0006a2400200041406b220110392001102f027f024002404186e0eedc7d2002103e220141ff01714103470d0020004181016a200041386a290000370000200041f9006a200041306a290000370000200041f1006a200041286a29000037000020002000290020370069200041013a0068410221014192d4c19d7d2006103e41ff01714103470d00418aeddeb67f2006103e41ff01714103470d0041f88f9ec4022006103e41ff01714103460d010b200020013a0069200041023a0068200041e8006a0c010b20004189063b016810354100210741000b21012000410036028c022000200136029002230041106b220124002001200736020c2001410c6a2802002102230041106b22012400200141808001360208200141f18704360204024041f28704027f2000418c026a220028020045044041f1870441003a0000410020002802042200450d011a41f2870441013a00002001410236020c2000200141046a1037200128020c220041818001490d02000b41f1870441013a000041010b3a0000410221002001410236020c0b20022000105e000b2000410136020020001032000b000b2901017f230041106b220224002002200028020036020c20012002410c6a4104105a200241106a24000bd50101057f230041106b220124002001200036020c2001418c8204360208230041106b22032400200341086a2104230041206b22002400200042808001370218200041f18704360214200141086a200041146a104f200028021c220220002802184b0440000b200041086a2205200028021420021008220236020420052002417f47360200200028020c21022004200028020836020020042002360204200041206a2400200328020c21002001200328020836020020012000360204200341106a240020012802002100200141106a240020004100470ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061043200228020c220120022802084b0d0020062002280204200110442002410036022c20022004360228200220053602242006200241246a10432003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0a00200120004120105a0bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100e200341202001412010650c010b200320022001200210650b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061046200228020c220120022802084b0d0020062002280204200110442002410036022c20022004360228200220053602242006200241246a10432003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0b002000280200200110400bc80101057f230041306b2202240002402000280204220320002802082204490d00200028020021052002410036020c2002200320046b22063602082002200420056a2205360204230041106b22032400200320012d00003a000f200241046a22012003410f6a4101105a200341106a2400200228020c220320022802084b0d0020012002280204200310442002410036022c20022006360228200220053602242001200241246a10432004200228022c6a22012004490d0020002001360208200241306a24000f0b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a104920012001200228020c6a22014b0d0020002001360208200241106a24000f0b000bbf0101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d044020012002410274105b0c010b200241ffff004d0440200020024102744101723b010a230041106b2202240020022000410a6a2f01003b010e20012002410e6a4102105a200241106a24000c010b200241ffffffff034d04402000200241027441027236020c2000410c6a200110400c010b20014103105b2004200110400b200041106a2400200341106a24000b3601027f230041106b22012400200141086a2000104b20012d0009210020012d00082102200141106a24002002417f732000410146710b3f01027f230041106b22022400200241003a000f200020012002410f6a4101105f2201047f41000520022d000f0b3a0001200020013a0000200241106a24000b3e01027f230041106b22022400200241086a2001104d200228020821032000200228020c36020420002003200128020472410047360200200241106a24000b4801027f230041106b220224002002410036020c024020012002410c6a4104105f450440200228020c21010c010b410121030b2000200136020420002003360200200241106a24000b4a02017f027e230041106b220224002002420037030802402001200241086a4108105f450440200229030821040c010b420121030b2000200437030820002003370300200241106a24000b1f00200020011046200041046a280200220020011040200041046a200110500b210020002d000045044020014100105b0f0b20014101105b200041016a200110430b1100200020011046200041046a200110400b3301017f230041106b22022400200220002903003703002002200041086a290300370308200120024110105a200241106a24000b0a00200120004104105a0b820302077f017e230041d0006b22042400200441086a2202200041c800100f1a230041206b22002400200042808001370218200041f18704360214230041306b220124002001200236020c200041146a220341041048200141286a2205200341086a28020036020020012003290200370320200141206a2206419e83041042200141186a2207200528020036020020012001290320370310200141106a22032001410c6a1045200520072802003602002001200129031037032020032006200241056a410020022d00041b1055024020022d002504402003200241266a10420c010b200141106a419c830410470b200141286a200141186a280200360200200120012902103703202000200141206a1056200141306a2400200041106a2802002101200028020c2103200029020021082000410036020820002008370200200220001040200241046a20001050200241256a200010502000280208220220002802044b0440000b20032001200028020020021005200041206a2400200441d0006a24000b34000240200204402001200210420c010b2001419c830410470b20002001290200370200200041086a200141086a2802003602000bdd0102057f017e230041106b22022400200241086a200141086a28020036020020022001290200370300230041106b22052400230041106b2203240020022802082104200241003602082004200228020422014b0440000b2002200120046b36020420022002280200220620046a360200200341086a2201200436020420012006360200200328020c2106200541086a2201200328020836020020012006360204200341106a240020052903082107200020022902003702002000200737020c200041086a200241086a280200360200200541106a2400200241106a24000b7602057f017e230041106b22002400200042003703002000410836020c20002000360208230041106b220124002001200041086a2202280204220336020c20022802002001410c6a100d2003200128020c2204490440000b20022004360204200141106a240020002903002105200041106a240020050bdc0101047f230041406a2202240020022000360210200241146a20014121100f1a2002418c82043602382002200241106a36023c200241086a2105230041106b22012400230041206b22002400200042808001370218200041f18704360214200241386a200041146a104f200028021c220320002802184b0440000b200041086a200028021422042003200320046a4100105d200028020c2103200141086a2204200028020836020020042003360204200041206a2400200128020c21002005200128020836020020052000360204200141106a2400200241406b24000b4f01017f230041306b22022400200220003602082002410c6a20014121100f1a41012101200241086a1041450440200241003a000c20022000360208200241086a104121010b200241306a240020010b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b200120021065200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d01017f410f21012000410e4d047f200041ec84046a2d000005410f0b0b1d00200020012002200320041006220136020420002001417f473602000b0d00200041f1870420011009000b3901027f2000280204220320024922044504402001200220002802002201200210652000200320026b3602042000200120026a3602000b20040b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001106120032802080c010b2003200420014101106220032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b3901017f230041106b22032400200341086a2001200241001062200328020c21012000200328020836020020002001360204200341106a24000b2b0020020440200345044041f087042d00001a0b20012002106421010b20002002360204200020013602000b7501047f230041106b22042400230041106b22032400200341086a200241001060200328020c2105200441086a2206200328020836020020062005360204200341106a240020042802082103200428020c20012002100f2101200020023602082000200136020420002003360200200441106a24000bf00101047f230041106b2203240041f487052802004504403f00210241f887054180880536020041f48705410136020041fc870520024110743602000b200341086a21040240200041f887052802006a41016b410020006b71220020016a22022000490d0041fc87052802002002490440200141ffff036a22022001490d01200241107640002200417f460d012000411074220020024180807c716a22022000490d0141fc87052002360200200020016a22022000490d010b41f887052002360200410121050b200420003602042004200536020020032802082100200328020c2101200341106a24002001410020001b0b150020012003460440200020022001100f1a0f0b000b0b99070300418080040b0c35f0b625190db0d23ad16d8b0041ad80040bc3060100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc4030001a0bdd34754b06b8d8527d1a550e724819f5282b5c6d7240df66085e092381d9701fbeb66c77e8f3b374224f0e1d71a3636e222ef725cbf206afa00253775545a7c0154d7cd8217989c7967258d10d487f3b1789ee709374d4aca8e7856421fbeb97201de8a4e3608586659eb822deaee4db3cfed7df0eb62d2fccb3fb8eb6ec6b8d8d600000000100102030405060708090a0b0c0d0e00f9372874510afc692f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000001001010069000000980000002e0000001001010069000000930000003000000000014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b41433a3a496e76616c696443616c6c657241433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e742f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e7273000000ef0101006a0000005d0000000e000000100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e72737b02010065000000770000000e00000001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041b287040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_treasury","version":"1.0.0","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"governor","type":{"displayName":["AccountId"],"type":9}},{"label":"foundation","type":{"displayName":["AccountId"],"type":9}},{"label":"vester","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":41},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":27},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":64},"hash":{"displayName":["Hash"],"type":60},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":23}},"events":[{"args":[{"docs":[],"indexed":true,"label":"vester","type":{"displayName":["AccountId"],"type":9}}],"docs":[],"label":"VesterChanged","module_path":"abax_treasury::modules::treasury::events","signature_topic":"0xa0bdd34754b06b8d8527d1a550e724819f5282b5c6d7240df66085e092381d97"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":0}},{"docs":[],"indexed":false,"label":"earliest_execution","type":{"displayName":["u64"],"type":23}},{"docs":[],"indexed":false,"label":"latest_execution","type":{"displayName":["u64"],"type":23}},{"docs":[],"indexed":false,"label":"operations","type":{"displayName":["Vec"],"type":24}}],"docs":[],"label":"OrderCreated","module_path":"abax_treasury::modules::treasury::events","signature_topic":"0xfbeb66c77e8f3b374224f0e1d71a3636e222ef725cbf206afa00253775545a7c"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":0}}],"docs":[],"label":"OrderExecuted","module_path":"abax_treasury::modules::treasury::events","signature_topic":"0x54d7cd8217989c7967258d10d487f3b1789ee709374d4aca8e7856421fbeb972"},{"args":[{"docs":[],"indexed":true,"label":"id","type":{"displayName":["u32"],"type":0}}],"docs":[],"label":"OrderCancelled","module_path":"abax_treasury::modules::treasury::events","signature_topic":"0xde8a4e3608586659eb822deaee4db3cfed7df0eb62d2fccb3fb8eb6ec6b8d8d6"},{"args":[{"docs":["The account that triggered the release."],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account to which the tokens are sent."],"indexed":true,"label":"to","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":27}}],"docs":["Emitted when vested tokens are released"],"label":"TokenReleased","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b"},{"args":[{"docs":[],"indexed":true,"label":"creator","type":{"displayName":["AccountId"],"type":9}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens will be sent."],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":27}},{"docs":[],"indexed":false,"label":"schedule","type":{"displayName":["VestingSchedule"],"type":30}}],"docs":["Emitted when general_vest schedule is created"],"label":"VestingScheduled","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":27}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":27}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":49},"messages":[{"args":[{"label":"vester","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AbaxTreasury::set_vester","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":41},"selector":"0x9bb7392f"},{"args":[{"label":"earliest_execution","type":{"displayName":["Timestamp"],"type":23}},{"label":"latest_execution","type":{"displayName":["Timestamp"],"type":23}},{"label":"operations","type":{"displayName":["Vec"],"type":24}}],"default":false,"docs":[],"label":"AbaxTreasury::create_order","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0x6e651ede"},{"args":[{"label":"earliest_execution","type":{"displayName":["Timestamp"],"type":23}},{"label":"latest_execution","type":{"displayName":["Timestamp"],"type":23}},{"label":"operations","type":{"displayName":["Vec"],"type":24}}],"default":false,"docs":[],"label":"AbaxTreasury::rescue_order","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0xd9a1de7f"},{"args":[{"label":"id","type":{"displayName":["OrderId"],"type":0}}],"default":false,"docs":[],"label":"AbaxTreasury::execute_order","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":41},"selector":"0xf12dda2e"},{"args":[{"label":"id","type":{"displayName":["OrderId"],"type":0}}],"default":false,"docs":[],"label":"AbaxTreasury::cancel_order","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":41},"selector":"0x3a8efcc0"},{"args":[],"default":false,"docs":[],"label":"AbaxTreasuryView::vester","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":52},"selector":"0x33d3e194"},{"args":[],"default":false,"docs":[],"label":"AbaxTreasuryView::next_order_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0xb75ca925"},{"args":[{"label":"id","type":{"displayName":["OrderId"],"type":0}}],"default":false,"docs":[],"label":"AbaxTreasuryView::order","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":54},"selector":"0xde54d3c8"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":56},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":53},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0x71a64883"},{"args":[{"label":"set_code_hash","type":{"displayName":["Hash"],"type":60}}],"default":false,"docs":[],"label":"SetCodeHash::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":61},"selector":"0xabb60cdf"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x35f0b625","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderGeneralVest"}},"root_key":"0x35f0b625","ty":15}},"name":"vester"},{"layout":{"root":{"layout":{"leaf":{"key":"0x190db0d2","ty":0}},"root_key":"0x190db0d2","ty":19}},"name":"next_order_id"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x3ad16d8b","ty":23}},"name":"earliest_execution"},{"layout":{"leaf":{"key":"0x3ad16d8b","ty":23}},"name":"latest_execution"},{"layout":{"leaf":{"key":"0x3ad16d8b","ty":24}},"name":"operations"}],"name":"Order"}},"root_key":"0x3ad16d8b","ty":33}},"name":"orders"}],"name":"OrdersStorage"}},"name":"orders"}],"name":"AbaxTreasuryContract"}},"root_key":"0x00000000","ty":38}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":16}],"path":["ink_storage","lazy","Lazy"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"L","type":17},{"name":"R","type":18}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":20}],"path":["ink_storage","lazy","Lazy"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"L","type":21},{"name":"R","type":22}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"primitive":"u64"}}},{"id":24,"type":{"def":{"sequence":{"type":25}}}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":26,"typeName":"NativeTransfer"}],"index":0,"name":"NativeTransfer"},{"fields":[{"type":28,"typeName":"PSP22Transfer"}],"index":1,"name":"PSP22Transfer"},{"fields":[{"type":29,"typeName":"Vest"}],"index":2,"name":"Vest"}]}},"path":["abax_treasury","modules","treasury","structs","Operation"]}},{"id":26,"type":{"def":{"composite":{"fields":[{"name":"to","type":9,"typeName":"AccountId"},{"name":"amount","type":27,"typeName":"Balance"}]}},"path":["abax_treasury","modules","treasury","structs","NativeTransfer"]}},{"id":27,"type":{"def":{"primitive":"u128"}}},{"id":28,"type":{"def":{"composite":{"fields":[{"name":"asset","type":9,"typeName":"AccountId"},{"name":"to","type":9,"typeName":"AccountId"},{"name":"amount","type":27,"typeName":"Balance"}]}},"path":["abax_treasury","modules","treasury","structs","PSP22Transfer"]}},{"id":29,"type":{"def":{"composite":{"fields":[{"name":"receiver","type":9,"typeName":"AccountId"},{"name":"asset","type":8,"typeName":"Option"},{"name":"amount","type":27,"typeName":"Balance"},{"name":"schedule","type":30,"typeName":"VestingSchedule"}]}},"path":["abax_treasury","modules","treasury","structs","Vest"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"fields":[{"type":23,"typeName":"Timestamp"},{"type":23,"typeName":"Timestamp"}],"index":0,"name":"Constant"},{"fields":[{"type":31,"typeName":"ExternalTimeConstraint"}],"index":1,"name":"External"}]}},"path":["pendzl_contracts","finance","general_vest","VestingSchedule"]}},{"id":31,"type":{"def":{"composite":{"fields":[{"name":"account","type":9,"typeName":"AccountId"},{"name":"fallback_values","type":32,"typeName":"(Timestamp, Timestamp)"}]}},"path":["pendzl_contracts","finance","general_vest","ExternalTimeConstraint"]}},{"id":32,"type":{"def":{"tuple":[23,23]}}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":34},{"name":"KeyType","type":35}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":34,"type":{"def":{"composite":{"fields":[{"name":"earliest_execution","type":23,"typeName":"Timestamp"},{"name":"latest_execution","type":23,"typeName":"Timestamp"},{"name":"operations","type":24,"typeName":"Vec"}]}},"path":["abax_treasury","modules","treasury","structs","Order"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"L","type":36},{"name":"R","type":37}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":37,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":38,"type":{"def":{"composite":{"fields":[{"name":"access","type":39,"typeName":",>>::Type"},{"name":"orders","type":40,"typeName":",>>::Type"}]}},"path":["abax_treasury","abax_treasury","AbaxTreasuryContract"]}},{"id":39,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":40,"type":{"def":{"composite":{"fields":[{"name":"vester","type":15,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1366363367u32, ()>,>>::Type"},{"name":"next_order_id","type":19,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<2369994615u32,\n()>,>>::Type"},{"name":"orders","type":33,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<636239520u32, ()\n>,>>::Type"}]}},"path":["abax_treasury","modules","treasury","storage_fields","operations","OrdersStorage"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"fields":[{"type":42}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":42},{"name":"E","type":49}],"path":["Result"]}},{"id":42,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":43}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":43}],"path":["Result"]}},{"id":43,"type":{"def":{"variant":{"variants":[{"fields":[{"type":44,"typeName":"PSP22Error"}],"index":0,"name":"PSP22Error"},{"fields":[{"type":46,"typeName":"MathError"}],"index":1,"name":"MathError"},{"fields":[{"type":47,"typeName":"AccessControlError"}],"index":2,"name":"AccessControlError"},{"fields":[{"type":48,"typeName":"VestingError"}],"index":3,"name":"VestingError"},{"index":4,"name":"NoSuchOrder"},{"index":5,"name":"ToEarlyToExecute"},{"index":6,"name":"ToLateToExecute"},{"index":7,"name":"NativeTransferFailed"},{"index":8,"name":"WrongEarliestExecution"}]}},"path":["abax_treasury","modules","treasury","errors","AbaxTreasuryError"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"fields":[{"type":45,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":45,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":45,"type":{"def":{"primitive":"str"}}},{"id":46,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":48,"type":{"def":{"variant":{"variants":[{"fields":[{"type":45,"typeName":"String"}],"index":0,"name":"Custom"},{"fields":[{"type":44,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"index":2,"name":"NativeTransferFailed"},{"index":3,"name":"InvalidAmountPaid"}]}},"path":["pendzl_contracts","finance","general_vest","VestingError"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":51}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":51},{"name":"E","type":49}],"path":["Result"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":43}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":43}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":49}],"path":["Result"]}},{"id":53,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":49}],"path":["Result"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"fields":[{"type":55}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":55},{"name":"E","type":49}],"path":["Result"]}},{"id":55,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":34}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":34}],"path":["Option"]}},{"id":56,"type":{"def":{"variant":{"variants":[{"fields":[{"type":57}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":57},{"name":"E","type":49}],"path":["Result"]}},{"id":57,"type":{"def":{"primitive":"bool"}}},{"id":58,"type":{"def":{"variant":{"variants":[{"fields":[{"type":59}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":59},{"name":"E","type":49}],"path":["Result"]}},{"id":59,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":47}],"path":["Result"]}},{"id":60,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":61,"type":{"def":{"variant":{"variants":[{"fields":[{"type":62}],"index":0,"name":"Ok"},{"fields":[{"type":49}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":62},{"name":"E","type":49}],"path":["Result"]}},{"id":62,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":63}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":63}],"path":["Result"]}},{"id":63,"type":{"def":{"variant":{"variants":[{"fields":[{"type":45,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":45,"typeName":"String"}],"index":2,"name":"PermissionError"}]}},"path":["pendzl_contracts","upgradeability","set_code_hash","SetCodeHashError"]}},{"id":64,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_treasury.json b/artifacts/abax_treasury.json new file mode 100644 index 0000000..9578a6a --- /dev/null +++ b/artifacts/abax_treasury.json @@ -0,0 +1,2565 @@ +{ + "source": { + "hash": "0x2b6e14c4ee5a5be88f0b24be21bfe3f537b68379cac55b6ad6811516faa43bc1", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_treasury", + "version": "1.0.0", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "governor", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "foundation", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "vester", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 41 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 27 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 64 + }, + "hash": { + "displayName": ["Hash"], + "type": 60 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "vester", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [], + "label": "VesterChanged", + "module_path": "abax_treasury::modules::treasury::events", + "signature_topic": "0xa0bdd34754b06b8d8527d1a550e724819f5282b5c6d7240df66085e092381d97" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "id", + "type": { + "displayName": ["u32"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "earliest_execution", + "type": { + "displayName": ["u64"], + "type": 23 + } + }, + { + "docs": [], + "indexed": false, + "label": "latest_execution", + "type": { + "displayName": ["u64"], + "type": 23 + } + }, + { + "docs": [], + "indexed": false, + "label": "operations", + "type": { + "displayName": ["Vec"], + "type": 24 + } + } + ], + "docs": [], + "label": "OrderCreated", + "module_path": "abax_treasury::modules::treasury::events", + "signature_topic": "0xfbeb66c77e8f3b374224f0e1d71a3636e222ef725cbf206afa00253775545a7c" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "id", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "docs": [], + "label": "OrderExecuted", + "module_path": "abax_treasury::modules::treasury::events", + "signature_topic": "0x54d7cd8217989c7967258d10d487f3b1789ee709374d4aca8e7856421fbeb972" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "id", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "docs": [], + "label": "OrderCancelled", + "module_path": "abax_treasury::modules::treasury::events", + "signature_topic": "0xde8a4e3608586659eb822deaee4db3cfed7df0eb62d2fccb3fb8eb6ec6b8d8d6" + }, + { + "args": [ + { + "docs": ["The account that triggered the release."], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account to which the tokens are sent."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 27 + } + } + ], + "docs": ["Emitted when vested tokens are released"], + "label": "TokenReleased", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "creator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens will be sent."], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 27 + } + }, + { + "docs": [], + "indexed": false, + "label": "schedule", + "type": { + "displayName": ["VestingSchedule"], + "type": 30 + } + } + ], + "docs": ["Emitted when general_vest schedule is created"], + "label": "VestingScheduled", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 27 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 27 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 49 + }, + "messages": [ + { + "args": [ + { + "label": "vester", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasury::set_vester", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 41 + }, + "selector": "0x9bb7392f" + }, + { + "args": [ + { + "label": "earliest_execution", + "type": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + { + "label": "latest_execution", + "type": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + { + "label": "operations", + "type": { + "displayName": ["Vec"], + "type": 24 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasury::create_order", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 50 + }, + "selector": "0x6e651ede" + }, + { + "args": [ + { + "label": "earliest_execution", + "type": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + { + "label": "latest_execution", + "type": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + { + "label": "operations", + "type": { + "displayName": ["Vec"], + "type": 24 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasury::rescue_order", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 50 + }, + "selector": "0xd9a1de7f" + }, + { + "args": [ + { + "label": "id", + "type": { + "displayName": ["OrderId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasury::execute_order", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 41 + }, + "selector": "0xf12dda2e" + }, + { + "args": [ + { + "label": "id", + "type": { + "displayName": ["OrderId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasury::cancel_order", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 41 + }, + "selector": "0x3a8efcc0" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxTreasuryView::vester", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 52 + }, + "selector": "0x33d3e194" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbaxTreasuryView::next_order_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 53 + }, + "selector": "0xb75ca925" + }, + { + "args": [ + { + "label": "id", + "type": { + "displayName": ["OrderId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbaxTreasuryView::order", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 54 + }, + "selector": "0xde54d3c8" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 56 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 53 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "set_code_hash", + "type": { + "displayName": ["Hash"], + "type": 60 + } + } + ], + "default": false, + "docs": [], + "label": "SetCodeHash::set_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 61 + }, + "selector": "0xabb60cdf" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x35f0b625", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderGeneralVest" + } + }, + "root_key": "0x35f0b625", + "ty": 15 + } + }, + "name": "vester" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x190db0d2", + "ty": 0 + } + }, + "root_key": "0x190db0d2", + "ty": 19 + } + }, + "name": "next_order_id" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x3ad16d8b", + "ty": 23 + } + }, + "name": "earliest_execution" + }, + { + "layout": { + "leaf": { + "key": "0x3ad16d8b", + "ty": 23 + } + }, + "name": "latest_execution" + }, + { + "layout": { + "leaf": { + "key": "0x3ad16d8b", + "ty": 24 + } + }, + "name": "operations" + } + ], + "name": "Order" + } + }, + "root_key": "0x3ad16d8b", + "ty": 33 + } + }, + "name": "orders" + } + ], + "name": "OrdersStorage" + } + }, + "name": "orders" + } + ], + "name": "AbaxTreasuryContract" + } + }, + "root_key": "0x00000000", + "ty": 38 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 16 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 17 + }, + { + "name": "R", + "type": 18 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 20 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 21 + }, + { + "name": "R", + "type": 22 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 24, + "type": { + "def": { + "sequence": { + "type": 25 + } + } + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 26, + "typeName": "NativeTransfer" + } + ], + "index": 0, + "name": "NativeTransfer" + }, + { + "fields": [ + { + "type": 28, + "typeName": "PSP22Transfer" + } + ], + "index": 1, + "name": "PSP22Transfer" + }, + { + "fields": [ + { + "type": 29, + "typeName": "Vest" + } + ], + "index": 2, + "name": "Vest" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "structs", "Operation"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "to", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 27, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "structs", "NativeTransfer"] + } + }, + { + "id": 27, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 28, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "asset", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "to", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 27, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "structs", "PSP22Transfer"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "receiver", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "asset", + "type": 8, + "typeName": "Option" + }, + { + "name": "amount", + "type": 27, + "typeName": "Balance" + }, + { + "name": "schedule", + "type": 30, + "typeName": "VestingSchedule" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "structs", "Vest"] + } + }, + { + "id": 30, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 23, + "typeName": "Timestamp" + }, + { + "type": 23, + "typeName": "Timestamp" + } + ], + "index": 0, + "name": "Constant" + }, + { + "fields": [ + { + "type": 31, + "typeName": "ExternalTimeConstraint" + } + ], + "index": 1, + "name": "External" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingSchedule"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "fallback_values", + "type": 32, + "typeName": "(Timestamp, Timestamp)" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "ExternalTimeConstraint"] + } + }, + { + "id": 32, + "type": { + "def": { + "tuple": [23, 23] + } + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 34 + }, + { + "name": "KeyType", + "type": 35 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "earliest_execution", + "type": 23, + "typeName": "Timestamp" + }, + { + "name": "latest_execution", + "type": 23, + "typeName": "Timestamp" + }, + { + "name": "operations", + "type": 24, + "typeName": "Vec" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "structs", "Order"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 36 + }, + { + "name": "R", + "type": 37 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 39, + "typeName": ",>>::Type" + }, + { + "name": "orders", + "type": 40, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_treasury", "abax_treasury", "AbaxTreasuryContract"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "vester", + "type": 15, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1366363367u32, ()>,>>::Type" + }, + { + "name": "next_order_id", + "type": 19, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<2369994615u32,\n()>,>>::Type" + }, + { + "name": "orders", + "type": 33, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<636239520u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "storage_fields", "operations", "OrdersStorage"] + } + }, + { + "id": 41, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 42 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 42 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 42, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 43 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 43 + } + ], + "path": ["Result"] + } + }, + { + "id": 43, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 44, + "typeName": "PSP22Error" + } + ], + "index": 0, + "name": "PSP22Error" + }, + { + "fields": [ + { + "type": 46, + "typeName": "MathError" + } + ], + "index": 1, + "name": "MathError" + }, + { + "fields": [ + { + "type": 47, + "typeName": "AccessControlError" + } + ], + "index": 2, + "name": "AccessControlError" + }, + { + "fields": [ + { + "type": 48, + "typeName": "VestingError" + } + ], + "index": 3, + "name": "VestingError" + }, + { + "index": 4, + "name": "NoSuchOrder" + }, + { + "index": 5, + "name": "ToEarlyToExecute" + }, + { + "index": 6, + "name": "ToLateToExecute" + }, + { + "index": 7, + "name": "NativeTransferFailed" + }, + { + "index": 8, + "name": "WrongEarliestExecution" + } + ] + } + }, + "path": ["abax_treasury", "modules", "treasury", "errors", "AbaxTreasuryError"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 45, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 45, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 45, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 46, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 45, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "fields": [ + { + "type": 44, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "index": 2, + "name": "NativeTransferFailed" + }, + { + "index": 3, + "name": "InvalidAmountPaid" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingError"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 50, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 51 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 51 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 43 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 43 + } + ], + "path": ["Result"] + } + }, + { + "id": 52, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 53, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 54, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 55 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 55 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 55, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 34 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 34 + } + ], + "path": ["Option"] + } + }, + { + "id": 56, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 57 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 57 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 57, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 58, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 59 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 59 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 59, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 60, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 61, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 62 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 62 + }, + { + "name": "E", + "type": 49 + } + ], + "path": ["Result"] + } + }, + { + "id": 62, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 63 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 63 + } + ], + "path": ["Result"] + } + }, + { + "id": 63, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 45, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "SetCodeHashFailed" + }, + { + "fields": [ + { + "type": 45, + "typeName": "String" + } + ], + "index": 2, + "name": "PermissionError" + } + ] + } + }, + "path": ["pendzl_contracts", "upgradeability", "set_code_hash", "SetCodeHashError"] + } + }, + { + "id": 64, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_treasury.wasm b/artifacts/abax_treasury.wasm new file mode 100644 index 0000000..1612b88 Binary files /dev/null and b/artifacts/abax_treasury.wasm differ diff --git a/artifacts/abax_vester.contract b/artifacts/abax_vester.contract new file mode 100644 index 0000000..76790e5 --- /dev/null +++ b/artifacts/abax_vester.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x7c97210da4fa6a70d4ffcf1aa59220caeb1f3d8c01387ca35a0047b4d04d0fc4","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000015e0f60027f7f0060037f7f7f0060037f7f7f017f60017f0060047f7f7f7f0060047f7f7f7f017f60017f017f60000060087f7f7e7f7f7f7f7f017f60027f7f017f60037f7e7e006000017f60057f7f7f7e7e006000017e60057f7f7f7f7f000281020e057365616c310b6765745f73746f726167650005057365616c3005696e7075740000057365616c310463616c6c0008057365616c30087472616e736665720005057365616c300d6465706f7369745f6576656e740004057365616c320b7365745f73746f726167650005057365616c310d636c6561725f73746f726167650009057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c3007616464726573730000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f727902010210034847020202020a020000010003030000030100030b030600000000030700070c0700000000000006000000000000000000000000060000000d0000000400000001000e0002010401040616037f01418080040b7f0041c086050b7f0041b486050b0711020463616c6c0029066465706c6f79002b0af9a301472b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b8f0102017f047e230041106b220324002003200242ffffffff0f832204200142ffffffff0f8322057e22062005200242208822027e22052004200142208822077e7c22014220867c220437030020032004200654ad200220077e2001200554ad4220862001422088847c7c370308200329030021012000200341086a29030037030820002001370300200341106a24000b4201017f20002d00042103200041003a00042003450440200028020020012002104f0f0b2001200041056a2d00003a00002000280200200141016a200241016b104f0b3a01027f2000280204210320002802082102230041106b220024002000200236020c2000410c6a20011019200120032002104b200041106a24000bac0101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001280200200241046a22061035200228020c220120022802084b0d0020062002280204200110152002410036022c20022004360228200220053602242006200241246a10352003200228022c6a22012003490d0020002001360208200241306a24000f0b000bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a2201100c200341202001412010530c010b200320022001200210530b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061035200228020c220120022802084b0d0020062002280204200110152002410036022c20022004360228200220053602242006200241246a10352003200228022c6a22012003490d0020002001360208200241306a24000f0b000bca0101067f230041306b2201240002402000280204220220002802082203490d00200028020021042001410036020c2001200220036b22053602082001200320046a2206360204230041106b22022400200241d681042d00003a000f200141046a22042002410f6a4101104b200241106a2400200128020c220220012802084b0d0020042001280204200210152001410036022c20012005360228200120063602242004200141246a103520032003200128022c6a22024b0d0020002002360208200141306a24000f0b000b7201047f230041106b220124002001410436020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a101920022002200128020c6a22024b0d0020002002360208200141106a24000f0b000b830101027f230041106b22022400024020002802002203413f4d044020012003410274104c0c010b200341ffff004d0440200220034102744101723b010e20012002410e6a4102104b0c010b200341ffffffff034d044020022003410274410272360208200241086a2001103d0c010b20014103104c20002001103d0b200241106a24000ba90101027f0240024002400240024041012000280200220241086b2203200341044f1b41016b0e03000102030b20014101104c0240024002400240024002400240200241016b0e0700010203040506090b20014101104c0f0b20014102104c0f0b20014103104c0f0b20014104104c0f0b20014105104c0c050b20014106104c0f0b20014107104c0f0b20014102104c0f0b20014103104c0f0b20014100104c0b200041046a200110130b830302057f017e230041c0016b220124002001200041f800100d22004280800137029001200041a5860436028c0120002000360298012000200041206a220536029c012000418c016a101820004180016a220120004194016a2802003602002000200029028c01370378200041b0016a2202200041f8006a220341958104101c200220004198016a10142001200041b8016a2204280200360200200020002902b00137037820032000419c016a101420042001280200360200200020002903783703b001200041d0006a2101024020002d005004402002200041d1006a10160c010b200041b0016a10170b200041a8016a200041b8016a280200360200200020002903b0013703a001200041f8006a2202200041a0016a101d20004188016a280200210420002802840121032000290278210620004100360280012000200637027820002002103520052002103520012002103b200041406b2002103e2000280280012201200028027c4b0440000b20032004200028027820011004200041c0016a24000bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071035200328020c220220032802084b0d0220072003280204200210152003410036022c20032005360228200320063602242007200341246a10352004200328022c6a22022004490d02200120023602080c010b200110170b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000bd30102067f017e230041206b22022400200241186a2206200141086a28020036020020022001290200370310230041106b22042400200241106a2201280208210320014100360208200441086a21052003200128020422074b0440000b2001200720036b36020420012001280200220120036a3602002005200336020420052001360200200428020c2101200241086a2203200428020836020020032001360204200441106a240020022903082108200041086a2006280200360200200020022903103702002000200837020c200241206a24000bce0101057f230041406a22012400200141808001360210200141a5860436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a10082004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141176a200141386a103420012d00170440000b2000200141196a290000370001200041096a200141216a290000370000200041116a200141296a290000370000200041186a200141306a290000370000200020012d00183a0000200141406b24000b3602017f027e230041106b2200240020001020200041086a290300210120002903002102200041106a2400410541042001200284501b0b8c0102057f017e230041206b2201240020014200370308200142003703002001411036021c20012001360218230041106b220224002002200141186a2203280204220436020c20032802002002410c6a100a2004200228020c2205490440000b20032005360204200241106a2400200129030021062000200129030837030820002006370300200141206a24000b1d01017f410f21012000410e4d047f200041dc81046a2d000005410f0b0bbd0202037f017e230041206b22022400200241106a200110330240024020022d00100d0002400240024020022d00110e020001030b200241086a2001103320022d00080d0241082103024020022d00090e020200030b20022001103320022d00000d02024002400240024002400240024020022d000122030e080008010203040506090b200241146a2001102320022802142204418080808078460d0820022902182105410021030c070b410221030c060b410321030c050b410421030c040b200241146a2001102320022802142204418080808078460d0420022902182105410521030c030b410621030c020b410721030c010b20011032450d0141092103410121040b20012802044504402000200537020820002004360204200020033602000c020b2000410a3602000c010b2000410a3602000b200241206a24000bab06020a7f037e230041106b22052400200541046a22062001102402402005280204220a4180808080784704402005290208220ea721042006027f0240200e422088a72203450d00200341076b22014100200120034d1b2109200441036a417c7120046b210b034002400240024002400240024002400240027e0240024002400240200220046a2d000022074118744118752208410048044042808080808020210c428080808010210d200741a484046a2d000041026b0e030601020a0b200b20026b4103710d0a200220094f0d0b0340200220046a220141046a280200200128020072418081828478710d0c200241086a22022009490d000b0c0b0b4200210c200241016a220120034f0d05200120046a2c00002101024002400240200741e001470440200741ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520014140480d030c050b200141607141a07f460d020c040b2001419f7f4a0d030c010b200141404e0d020b4200210d200241026a220120034f0d08200120046a2c000041bf7f4c0d070c020b4200210c200241016a220120034f0d04200120046a2c000021010240024002400240200741f0016b0e050100000002000b2008410f6a41ff017141024b200141404e720d030c020b200141f0006a41ff017141304f0d020c010b2001418f7f4a0d010b200241026a220120034f0d04200120046a2c000041bf7f4a0d014200210d200241036a220120034f0d07200120046a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210c428080808010210d0c040b200241016a22012003490d014200210c0b4200210d0c020b200120046a2c000041bf7f4a0d010b200141016a21020c030b2006200c2002ad84200d8437020441010c050b200241016a21020c010b200220034f0d000340200220046a2c00004100480d012003200241016a2202470d000b0c020b20022003490d000b0b20062004360204200641086a200336020041000b3602002005280204450440200020033602082000200aad200e422086843702000c020b20004180808080783602000c010b20004180808080783602000b200541106a24000bef0201037f230041206b22022400200241106a200110330240024020022d00100d000240024002400240024020022d0011220341037141016b0e03010203000b200341fc017141027621030c030b200241196a20033a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210120d0320022f011c220341ff014d0d03200341027621030c020b200241196a20033a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410120d02200228021c220341808004490d02200341027621030c010b200341044f0d01200241086a2001104020022802080d01200228020c2203418080808004490d010b024020012802042003490d002002200341011050200228020021042001200228020422012003104f200441808080807846720d002000200336020820002001360204200020043602000c020b20004180808080783602000c010b20004180808080783602000b200241206a24000bab0101027f230041106b220224002002200036020c2002410c6a2802002102230041106b22002400200041808001360208200041a58604360204024041a68604027f20012802002203410d47044041a5860441003a000041002003410c460d011a41a6860441013a00002000410236020c2001200041046a101a200028020c220141818001490d02000b41a5860441013a000041010b3a0000410221012000410236020c0b20022001104e000b4d01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041a5860441013a0000410121010b200141a586046a20013a00002002200141016a104e000b5901037f230041206b22002400200042808001370218200041a5860436021441d88104200041146a103d200028021c220120002802184b0440000b200041086a200028021422022001200120026a4100104d200041206a24000b960101027f230041306b22022400200241086a2001103341022103024020022d00080d000240024020022d00090e020001020b410021030c010b2002410f6a2001103420022d000f0d0020002002290010370001200041196a200241286a290000370000200041116a200241206a290000370000200041096a200241186a290000370000410121030b200020033a0000200241306a24000bf93d02107f0d7e230041a0056b220024002000418080013602d00241a58604200041d0026a220710010240024020002802d0022201418180014f0d002000200136029404200041a5860436029004200041003602d00220004190046a220620074104104f0d0120002d00d302210120002d00d202210220002d00d1022103027f02400240024020002d00d0022204410b470440200441154704402004413d460d02200441c600460d03200441af0147200341950147722002411d47200141b7014772720d07200041a0046a2006102820002d00a00422034102460d0720072006102820002d00d0024102460d0720004198026a200610242000280298022202418080808078460d0720004180026a200041b8046a290000370300200041b8016a200041e7026a290000370300200041c0016a200041ef026a2f00003b0100200020002900b0043703f801200020002900df023703b001200041a3046a2d00002101200041d6026a2d0000210920002900a804211220002800a404210620002d00d302210420002900d702211320002f00a104210820002f01d402210520002d00c004210720002d00d202210a20002f01d002210b2000200029029c023703f8042007200a411874200b41087472722107200820014110747221084202211120052009411074720c050b2003412a472002410f47720d0620014127460d030c060b200341e9004720024185014772200141ac0147720d05200041a0046a20004190046a2201102820002d00a0044102460d05200041d0026a2001102820002d00d0024102460d05200041286a2001104020002802280d05200028022c210320004198026a200110242000280298022201418080808078460d0520004180026a200041b4046a290200370300200041b8016a200041e3026a290000370300200041c0016a200041eb026a280000360200200020002902ac043703f801200020002900db023703b00120002902a404211220002802a004210620002802bc04210720002d00c004210420002900d302211320002f01d002210920002d00d2022105200029029c022110200020013602f804200020103702fc042003410876210820002f00ef0221024203211120092005411074720c030b200341ff0047200241014772200141880147720d04200041a0046a20004190046a2201103420002d00a0040d04200041d0026a2001102820002d00d00222034102460d0420004198026a200110242000280298022202418080808078460d04200041b8016a200041b8046a290000370300200041c0016a200041c0046a2d00003a000020004180026a200041e8026a290000370300200020002900e0023703f8012000200041b0046a2900003703b001200041a8046a2900002113200041a4046a2d00002104200041a5046a2f00002101200041a7046a2d00002109200041d3026a2d00002108200041a3046a2d0000210720002800d402210620002900d802211220002f00d102210520002f00a104210a2000200029029c023703f80420002d00f0022007411874200a41087472722107200520084110747221084204211120012009411074720c020b200341e40147200241d50047722001411447720d03200041a0046a20004190046a2201103420002d00a0040d03200041d0026a2001102820002d00d00222044102460d03200041306a2001104020002802300d032000280234210720004198026a200110242000280298022201418080808078460d0320004180026a200041b9046a290000370300200041b8016a200041e4026a290000370300200041c0016a200041ec026a280000360200200020002900dc023703b0012000200041b1046a2900003703f801200041a9046a2900002112200041a5046a2800002106200041a2046a2f00002108200041a4046a2d00002109200041d3026a2d0000210520002d00a104210320002900d402211320002d00f002210220002f00d102210a200029029c022110200020013602f804200020103702fc042008200941107472210842052111200a2005411074720c010b20004198026a20004190046a2201103420002d0098020d02200041a0046a22032001102820002d00a0044102460d02200041106a2001104120002802100d02200041206a290300211020002903182114200041d0026a2001104420002903d00222114202510d02200041f0006a200110242000280270418080808078460d02200041c0016a20004199026a220141106a280000360200200041b8016a200141086a290000370300200020012900003703b001200041ad026a2800002102200041b1026a2900002112200041d0016a20034121100d1a200041d3006a200041f8006a28020036000020004180026a200041f0026a2903003703002000200029027037004b200020123703f804200020002903e8023703f8012000200041cf006a2900003700a701200020002900483703a001200041db026a2d00002101200041ff026a2d0000210920002903e002211220002802dc02210620002d00d802210320002802f802210720002d00fc022104200029038003211320002f00d902210820002f00fd02210520004188056a201037030020002014370380052008200141107472210820052009411074720b210920004190016a20004180026a290300370300200041f8006a200041b8016a29030037030020004180016a200041c0016a280200360200200020002903f80137038801200020002903b00137037020004188056a2903002116200029038005211420002903f8042110200041c8006a200041d0016a4121100d1a200020002900a70137003f200020002903a0013703382000410036029c012000428080013702d402200041a586043602d0022000419c016a200041d0026a220a103d20002802d402220b20002802d8022201490d0020002802d00221052000200b20016b220b3602d00220052001200120056a200a10002101200b20002802d0022205490d0020052001102141ff01712201410346200141104772720d0002400240024002400240024002400240201142027d2215a741016a410020154204541b41016b0e0404010203000b20004180026a20004190016a29030037030020002000290388013703f801200041c0016a20004180016a280200360200200041b8016a200041f8006a290300370300200020002903703703b001200020103703c801200020023602c401200041d0016a200041c8006a4121100d1a2000200029003f3700a701200020002903383703a001410b210120004190026a200041ab016a280000360200200020002900a30137038802200041f8046a101e024020002d00d001450440200010202000290300201485200041086a2903002016858450450d010c060b20004180800136029404200041a5860436029004230041106b22012400200120004190046a2202280204220536020c20022802002001410c6a10092005200128020c220a490440000b2002200a360204200141106a2400200020002902900437029802200041a0046a220120004198026a2205103420002d00a0040d0820002d00a104210a200041a0036a200041b9046a29000037000020004199036a200041b2046a29000037000020004191036a200041aa046a29000037000020004189036a200041a2046a290000370000200041c0026a200041d0016a410172220241186a290000370300200041b8026a200241106a290000370300200041b0026a200241086a290000370300200020022900003703a802200120054130100d1a200041a8036a220520002900f804370300200041b0036a20004180056a290000370300200041b8036a20004188056a290000370300200041c0036a20004190056a290000370300200041d8026a200041b8046a290300370300200041e0026a200041c0046a290300370300200041e8026a200041c8046a290300370300200020002903b0043703d002200041f8026a420037030020004180036a4200370300200041e0036a4100360200200041e8036a220b41d4e69ef606360200200041d8036a220d428080808010370300200041c8036a220e2014370300200041d0036a2016370300200042003703f002200041003602f0032000200a3a0088032000428080013702a404200041a586043602a004200041d0026a2001103520002802a404220c20002802a8042202490d0820002802a004210a200041003602a8042000200c20026b3602a40420002002200a6a3602a004200041f0026a2001103e20002802a404220220002802a8042201490d08200220016b210220002802a004220c20016a2101024020002802f003220f410371044041948104210b410021050c010b200041003602a804200020023602a404200020013602a004200b200041a0046a2201104220052001103520004188036a20011035200e2001103e200d2001101320002802a404220120002802a8042205490d09200120056b210220002802a004220b20056a21010b200020023602a004200f200a4200200c200b20052001200041a0046a22051002210a200220002802a004220b490d08200a102141ff017122024110472002410247710d082000200b3602cc02200020013602c8022005200041c8026a102220002802a0042201410a460d08200020002900a504370398022000200041ac046a28000036009f0220014109460d0820002d00a40421022000200028009f023600970420002000290398023703900420014108460d052000200028009704360087042000200029039004370380040b200020002800870436009f022000200029038004370398020c050b101f41ff01714105470d06200041ac046a2012370200200041b4046a200029038801370200200041cc046a2013370200200041d4046a2000290370370200200041f4046a220120143e0200200041ec046a22052010370200200041e8046a2002360200200041bc046a20004190016a290300370200200041dc046a200041f8006a290300370200200041e4046a20004180016a280200360200200041c4046a2007ad2004ad42ff01834220862009ad422886848437020020002003ad42ff01832008ad42ffffff07834208862006ad422086848422103702a40420002000419f056a3602a00420004198026a200041a8046a4121100d1a200041b8016a2001280200360200200020052902003703b001200041f8046a2202101e41012101200041d8016a220620004199026a200220002d0098021b220241086a290000370300200041e0016a2207200241106a290000370300200041e8016a2208200241186a290000370300200020022900003703d001200041d0026a2202200041d0016a2203200041c9046a22042010a710470240024020002d00d002410247044020022004200320002903d8022211200041e0026a22012903002210102a20002802d0022203410c460440200041e8026a20004190056a290000370300200120004188056a290000370300200041d8026a20004180056a290000370300200041f8026a200629030037030020004180036a200729030037030020004188036a2008290300370300200020002900f8043703d002200020002903d0013703f002200041a0036a20044121100d1a20004198036a201037030020002011370390032002101b0c020b200041dc026a350200211020002902d4022111410121010c020b200041e0026a3502002110200041d8026a290300211120002802d4022203410c470d010b102741002101410c21030b200041dc026a20103e0200200020113702d402200020033602d0022001200041d0026a1025000b101f41ff01714105470d05200041e8026a20004190016a29030037030020004188036a200041f8006a29030037030020004190036a20004180016a280200360200200020123703d80220002000290388013703e002200020133703f80220002000290370370380032000201037039803200020023602940320002003ad42ff01832008ad42ffffff07834208862006ad42208684843703d00220002007ad2004ad42ff01834220862009ad42288684843703f002230041f0016b22022400200241086a200041d0026a220141d000100d1a200241f0006a200241c1006a290000370300200241e8006a200241396a290000370300200241e0006a200241316a29000037030020022002290029370358200241f8006a20014121100d1a2002418080043602a801200241ac016a200241d8006a41c100100d1a200241a0016a200241a8016a102d20022802a00122034102460440000b20022802a4012104200241f0016a2400200041003602d00220002004410020031b3602d402230041106b220024002000410036020c2000410c6a2802002102230041106b22002400200041808001360208200041a5860436020402402001280200044041a586044181023b0000410221012000410236020c0c010b2000410136020c41a5860441003a0000200141046a200041046a103d200028020c220141818001490d00000b20022001104e000b101f41ff01714105470d04200041b8046a20004190016a290300370300200041d8046a200041f8006a290300370300200041e0046a20004180016a280200360200200020123703a80420002000290388013703b004200020133703c804200020002903703703d004200020143e02f004200020103703e804200020023602e40420002003ad42ff01832008ad42ffffff07834208862006ad42208684843703a00420002007ad2004ad42ff01834220862009ad42288684843703c00423004180026b22012400200041a0046a220228022021032001410c6a2204200241246a4121100d1a200141c5006a200241186a2900003700002001413d6a200241106a290000370000200141356a200241086a2900003700002001200229000037002d2001418480043602b401200141b8016a200441c400100d1a200141fc016a2003360200200141d0006a200141b4016a102f20012903504203510440000b200041d0026a2200200141d0006a41e000100d1a20014180026a2400230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141a58604360204024041a68604027f20002903002210420352044041a5860441003a0000410020104202510d011a41a6860441013a00002001410236020c2000200141046a1045200128020c220041818001490d02000b41a5860441013a000041010b3a0000410221002001410236020c0b20022000104e000b101f41ff01714105470d03200041ac046a2012370200200041b4046a200029038801370200200041cc046a2013370200200041d4046a2000290370370200200041ec046a2010370200200041e8046a2002360200200041bc046a20004190016a290300370200200041dc046a200041f8006a290300370200200041e4046a20004180016a280200360200200041c4046a2007ad2004ad42ff01834220862009ad422886848437020020002003ad42ff01832008ad42ffffff07834208862006ad42208684843702a40420002000419f056a3602a004200041d0016a2201101e200041b0026a200041a5046a2001200341ff01711b220141186a290000370300200041a8026a200141106a290000370300200041a0026a200141086a29000037030020002001290000370398024200211042002111230041d0006b22022400200241206a20004198026a220641186a290000370300200241186a2208200641106a290000370300200241106a200641086a29000037030020022006290000370308200241286a200041c5046a22074121100d1a2002200241086a102c2002280204220141016b22034100200120034f1b410020022802001b210441002101200041d0026a2203027f0240024002400340200241086a200620072001104720022d000822094102460d022011201120022903107c22115622052005ad201020082903007c7c221220105420102012511b0d0302402009450440200141016a2201450d0320122110200120044d0d020c010b201221102001200441016b22094100200420094f1b22044d0d010b0b20032011370308200341106a201237030041000c030b200341046a4101104641010c020b200228020c210120022903102110200341106a200241186a3502003e0200200341086a20103703002003200136020441010c010b200341046a4101104641010b360200200241d0006a2400027f027e20002802d00245044020032007200620002903d8022210200041e0026a2903002211102a20002802d0022201410c47044020002902d4022110200041dc026a3502000c020b200041e8026a200041e8016a290000370300200041e0026a200041e0016a290000370300200041d8026a200041d8016a290000370300200041f8026a200041a0026a29030037030020004180036a200041a8026a29030037030020004188036a200041b0026a290300370300200020002900d0013703d00220002000290398023703f002200041a0036a20074121100d1a20004198036a20113703002000201037039003200041d0026a101b102741000c020b200041d8026a290300211020002802d4022101200041e0026a3502000b42ffffffff0f83211141010b2102200041e0026a2011370300200020103703d802200020013602d402200020023602d002230041106b220124002001200236020c2001410c6a2802002103230041106b22012400200141808001360208200141a58604360204410221020240200041d0026a22002802002204410247044041a5860441003a0000024020044504402001410236020c41a6860441003a0000200041086a200141046a103e0c010b41a6860441013a00002001410236020c200041046a200141046a101a0b200128020c220241818001490d01000b41a586044181023b00002001410236020c0b20032002104e000b2007ad2004ad42ff01834220862009ad422886848421172003ad42ff01832008ad42ffffff07834208862006ad422086848421154200211002402011500440200020123703e002200020153703d8020c010b200041e0026a2012370300200041e8026a20002903f80137030020004180036a2013370300200041f8026a2017370300200041f0026a20004180026a290300370300200020153703d802420121100b200020103703d002200041a0046a21034200211023004190026b22012400200141286a200041b0016a220241186a2206290000370300200141206a200241106a2207290000370300200141186a200241086a220829000037030020012002290000370310200141306a200041d0016a22044121100d1a200141086a200141106a102c200128020c21092001280208210520014191016a200629000037000020014189016a200729000037000020014181016a200829000037000020012002290000370079200141d8006a20044121100d1a20012009410020051b220636029c0110432119027e200041d0026a22022903005004402002290308211820022903100c010b20014188026a200241206a2903003703002001200241186a29030037038002200241306a2903002110200241286a290300211a200229030821184201211b200241106a2903000b211c200141f8016a4200370300200141e8016a2016370300200141c0016a20014188026a290300370300200142003703f001200120143703e0012001201c3703b001200120183703a8012001201b3703a001200120193703d80120012001290380023703b801200120103703d0012001201a3703c801200141d8006a200141a0016a220210310240200641016a22060440200120063602a001200141106a200210302003410c3602000c010b2003410110460b20014190026a240020002802a0042201410c460440200041a0036a20004190056a29000037030020004198036a20004188056a29000037030020004190036a20004180056a290000370300200020002900f80437038803200041d8036a20044121100d2104200041d0036a2016370300200041c0036a200041c8016a290300370300200041b8036a200041c0016a290300370300200041b0036a200041b8016a290300370300200041f0026a20004180026a290300370300200020143703c8032000201337038003200020173703f802200020123703e002200020153703d802200020113703d002200020002903b0013703a803200020002903f8013703e80220004280800137028404200041a5860436028004200020004188036a220636028c042000200041a8036a22023602c80220004180046a1018200041a8046a220120004188046a28020036020020002000290280043703a00420004198026a2207200341b68104101c20072000418c046a10142001200041a0026a28020036020020002000290298023703a004200041c8036a2107024020002d00d80304402003200041d9036a10160c010b200041a0046a10170b200041a0026a2201200041a8046a280200360200200020002903a0043703980220004198026a200041c8026a101420004198046a2001280200360200200020002903980237039004200041a0046a220120004190046a101d200041b0046a280200210820002802ac04210920002902a004211041002103200041003602a804200020103702a00420062001103520042001103b20022001103520072001103e200041d0026a2001104a20002802a804220120002802a4044b0d032009200820002802a004200110041027410c21010c020b200020002900a504370398022000200041ac046a28000036009f0220002d00a40421020b410121030b200041dc026a200028009f0236000020002000290398023700d502200020023a00d402200020013602d0022003200041d0026a1025000b000b200041013602d002200041d0026a1026000b8e0801087f230041e0016b22052400024002400240024020012d0000450440200541e8006a200241186a290000370300200541e0006a200241106a290000370300200541d8006a200241086a290000370300200520022900003703502005200437032820052003370320200542808001370214200541a58604360210200541d0006a200541106a220610352005280214220720052802182201490d0420052802102102200541003602182005200720016b3602142005200120026a360210200541206a2006103e2005280218220620052802144b0d04200220012005280210200610032201410e4d047f200141a083046a2d000005410f0b41ff01714110460d012000410a3602000c030b200541f8006a2206200141196a290000370300200541f0006a2208200141116a290000370300200541e8006a2207200141096a29000037030020052001290001370360200541206a2201200541d0006a22094130100d1a200541d8006a200541386a290300370300200541e0006a200541406b2903003703002007200541c8006a290300370300200541a0016a200241186a29000037030020054198016a200241106a29000037030020054190016a200241086a2900003703002006420037030020054180016a420037030020052005290330370350200520022900003703880120054200370370200541b0016a2004370300200541a8016a22062003370300200541c8016a220a41dbc1e4af7f360200200541c0016a4100360200200541b8016a220b428080808010370300200541003602d001200542808001370224200541a586043602202009200110352005280224220920052802282202490d0320052802202107200541003602282005200920026b3602242005200220076a36022020082001103e2005280224220220052802282201490d03200220016b21022005280220220920016a2101024020052802d001220c4103710440419481042108410021060c010b200541003602282005200236022420052001360220200a200541206a2201104220054188016a2001103520062001103e200b200110132005280224220120052802282206490d04200120066b21022005280220220820066a21010b20052002360220200c200742002009200820062001200541206a220610022107200220052802202208490d032007102141ff017122024110472002410247710d03200520083602dc01200520013602d8012006200541d8016a102220052802202201410a460d032005200529002537031020052005412c6a28000036001720014109460d0320052d00242102200520052800173600072005200529031037030020014108470d010b2000410c3602000c010b200020052903003700052000410c6a2005280007360000200020023a0004200020013602000b200541e0016a24000f0b000bf10101037f230041106b2200240002400240101f41ff01714105470d0020004180800136020841a58604200041086a2201100120002802082202418180014f0d002000200236020c200041a58604360208200041003602042001200041046a4104104f45044020002d0004419b014720002d000541ae01477220002d0006419d01477220002d000741de004772450d020b20004101360208200041086a1026000b000b102720004200370208230041106b220124002001410036020c2001410c6a280200210141a58604200041086a220028020022023a000041a6860420022000280204724100473a000020014102104e000b5401017f230041d0006b22022400200241ec81043602082002410c6a200141c100100d1a2002200241086a102d200228020022014102460440000b2000200228020436020420002001360200200241d0006a24000be60101057f230041206b22022400200242808001370218200241a586043602142001200241146a220510390240024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2201200510002103200420022802142206490d002003103f41ff01712203410347044020034110470d012002200636021820022001360214200241086a200510402002280208200228021872450440200228020c210120004101360200200020013602040c030b20004102360200200041103a00040c020b200041003602000c010b000b200241206a24000b4d01017f230041b0016b22022400200241f08104360264200241e8006a200141c800100d1a2002200241e4006a102f20022903004203510440000b2000200241e000100d1a200241b0016a24000b970302057f067e230041e0016b2202240020024280800137027c200241a586043602782001200241f8006a2204103c02400240200228027c22052002280280012201490d00200228027821032002200520016b220536027820032001200120036a2201200410002103200520022802782206490d002003103f41ff01712203410347044020034110470d012002200636024420022001360240200241306a200241406b22011037024020022802300d0020022903382107200420011044200229037822084202510d00200241b0016a220420024180016a4130100d1a200241186a2001104120022802180d00200241286a29030021092002290320210a2002200110412002290300a70d00200241106a290300210b2002290308210c200241c8006a220120044130100d1a20022802440d00200041086a20014130100d1a200041d8006a200b3703002000200c370350200041c8006a20093703002000200a37034020002007370338200020083703000c030b20004203370300200041103a00080c020b200042023703000c010b000b200241e0016a24000b860201077f230041d0006b22022400200241ec81043602082002410c6a200041c100100d1a230041106b22032400200341086a2105230041206b22002400200042808001370218200041a58604360214200241086a200041146a220710390240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a36021420012007103d200028021c220120002802184b0d00200041086a2006200420002802142001104d200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241d0006a24000b8b0201077f230041e0006b22022400200241f08104360214200241186a200041c800100d1a230041106b22032400200341086a2105230041206b22002400200042808001370218200041a58604360214200241146a200041146a2207103c0240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a360214200120071045200028021c220120002802184b0d00200041086a2006200420002802142001104d200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c2100200241086a2201200328020836020020012000360204200341106a2400200241e0006a24000b3601027f230041106b22012400200141086a2000103320012d0009210020012d00082102200141106a24002002417f732000410146710b3f01027f230041106b22022400200241003a000f200020012002410f6a4101104f2201047f41000520022d000f0b3a0001200020013a0000200241106a24000b8a0101047f230041206b220224002000027f20024200370000200241186a22034200370000200241106a22044200370000200241086a22054200370000200120024120104f45044020002002290000370001200041196a2003290000370000200041116a2004290000370000200041096a200529000037000041000c010b41010b3a0000200241206a24000b0a00200120004120104b0b6502017f027e230041206b22022400200241106a2001103742012103024020022802100d00200229031821042002200110372002290300a70d002002290308210320002004370308200041106a2003370300420021030b20002003370300200241206a24000b4a02017f027e230041106b220224002002420037030802402001200241086a4108104f450440200229030821040c010b420121030b2000200437030820002003370300200241106a24000b2901017f230041106b22022400200220002903003703082001200241086a4108104b200241106a24000b1a0020002001103a200041046a20011035200041246a2001103b0b0b0020002802002001103d0b210020002d000045044020014100104c0f0b20014101104c200041016a200110350b240020002001103a200041256a20011035200041046a2001103b200041c8006a2001103d0b2901017f230041106b220224002002200028020036020c20012002410c6a4104104b200241106a24000b3301017f230041106b22022400200220002903003703002002200041086a290300370308200120024110104b200241106a24000b1d01017f410f21012000410e4d047f2000419782046a2d000005410f0b0b4801027f230041106b220224002002410036020c024020012002410c6a4104104f450440200228020c21010c010b410121030b2000200136020420002003360200200241106a24000b5f02017f037e230041106b2202240020024200370308200242003703000240200120024110104f45044020022903082104200229030021050c010b420121030b2000200537030820002003370300200041106a2004370300200241106a24000b0a00200120004104104b0b7602057f017e230041106b22002400200042003703002000410836020c20002000360208230041106b220124002001200041086a2202280204220336020c20022802002001410c6a100b2003200128020c2204490440000b20022004360204200141106a240020002903002105200041106a240020050bb60302077f027e230041e0006b22032400200341206a20011033024002400240024020032d002045044020032d00210e020102030b200042023703000c030b200341106a20011037024020032802100d00200329031821092003200110372003290300a70d002003290308210a20002009370308200042003703002000200a3703100c030b200042023703000c020b200341286a2104230041d0006b22022400200241086a220520011034024020022d0008450440200241c8006a2206200241216a290000370300200241406b2207200241196a290000370300200241386a2208200241116a290000370300200220022900093703302005200110362002290308500440200241186a29030021092002290310210a200441206a2006290300370000200441186a2007290300370000200441106a200829030037000020042002290330370008200441306a2009370300200441286a200a370300200442003703000c020b200442013703000c010b200442013703000b200241d0006a24002000027e2003290328500440200041086a200341306a4130100d1a42010c010b42020b3703000c010b200042023703000b200341e0006a24000b2400200041386a2001103820002001104a200041406b2001103e200041d0006a2001103e0b4e000240024002400240200141ff017141016b0e020102000b200041046a41f48104410c10520c020b200041046a41808204410b10520c010b200041046a418b8204410c10520b200041083602000b881202077f097e230041d0046b22042400200441d9016a200141086a290000370000200441e1016a200141106a290000370000200441e9016a200141186a290000370000200420012900003700d101200441b0016a220520024121100d1a200420033602f401200441a0036a2005102e024020042903a003420251044020004200370308200041003a0000200041106a42003703000c010b200441d0006a2205200441a0036a41e000100d1a1043210c200441406b2005104802402000027f0240024002400240024002400240200429038801220d20042903407c220b200d5a0440200b20042903487c220f200b540d0120044180046a200510492004280280042205410c470d0220042d008404450440200b200c5a0d0420044198016a290300210d200429039001210e200b200f5a0d05200441206a200d200c200b7d220c1011200441306a200e200c10112004290328420052200441386a290300220c20042903207c220d200c54720d06200d502004290330220e200f200b7d220b5471450440200441106a21094200210c4200210f230041206b22052400230041206b22072400024002400240200d50450440200b200d580440200b200d510d02200d200b82210c200d200b802113200b428080808010540440200c422086200e42208884220c200b80220d422086200e42ffffffff0f83200c200b8242208684220c200b80842110200d4220882013842113200c200b82210e4200210c0c050b200c50200b200e56710d04200b4201882111200b423f862112428080808080808080807f210d03400240200c20117d200e201254ad7d220f4200590440200e20127d210e200d2010842110200f500d01200f210c0b2011423f862012420188842112200d420188210d201142018821110c010b0b200e200b8020108421104200210c200e200b82210e0c040b200b210c230041106b220824000240413f200b79a72206200d79a7220a6b41406b2006200a461b220641c000714504402006450d0142002006413f71ad220c86200b410020066b413f71ad8884210f200b200c86210c0c010b200c2006413f71ad86210f4200210c0b2008200c3703002008200f3703082008290300210c2007200841086a2903003703082007200c370300200841106a240042012006413f71ad86210c200741086a29030021112007290300211203400240200d20117d200e201254ad7d220f4200590440200e20127d210e200c2010842110200f500d01200f210d0b2011423f862012420188842112200c420188210c201142018821110c010b0b200e200b8020108421104200210c0c020b200e200b8021100c010b200e200d80211042012113200e200d82210e0c010b200e200b82210e0b2005200e37031020052010370300200541186a200c37030020052013370308200741206a24002005290300210b2009200541086a2903003703082009200b370300200541206a24002004290310220c20042903a001220b427f857c220e200c54ad200441186a290300200441a8016a290300220c427f857c7c210d0c090b200441a0036a410472410010460c070b420020044198016a290300220d200441a8016a290300220c7d200429039001220e20042903a001220b54ad7d220f200e200e200b7d221054200d200f54200d200f511b22051b210d4200201020051b210e0c070b200441a0036a410472410110460c050b200441a0036a410472410110460c040b200441b0036a2004418c046a280000360000200441a8036a20042d0084043a000020042004290085043700a903200420053602a4030c030b200441a8016a290300210c20042903a001210b4200210d0c030b4200200d200441a8016a290300220c7d200e20042903a001220b54ad7d220f200e200e200b7d221054200d200f54200d200f511b22051b210d4200201020051b210e0c020b200441a0036a410472410110460b200441b0036a350200210c200441a8036a290300210b20042802a4030c010b200b200b200e7c220f5622052005ad200c200d7c7c220b200c54200b200c511b450d01200441c0026a41047241011046200441d0026a350200210c200441c8026a290300210b20042802c4020b360204200041023a0000200041106a200c3e0200200041086a200b3703000c010b200441a8016a200b3703002004200f3703a001200441a0036a200441d0006a104920042802a0032205410c470440200020042900a503370009200041106a200441ac036a280000360000200041086a20042d00a4033a000020002005360204200041023a00000c010b02402000027f024020042d00a403044020044180026a200141086a2209220729000037030020044188026a200141106a220a220629000037030020044190026a200141186a2208290000370300200420012900003703f80120044198016a290300210c200429039001211020044198026a20024121100d1a200441086a200441f8016a102c2004280208450d032004200428020c41016b22053602bc02200441f9026a2008290000370000200441f1026a2006290000370000200441e9026a2007290000370000200420012900003700e102200441c0026a220720024121100d1a2004200536028403200441a0036a22062007102e20042903a0034202510d032007200641e000100d1a200441b9046a2008290000370000200441b1046a200a290000370000200441a9046a2009290000370000200420012900003700a10420044180046a220120024121100d1a200441f081043602a003200441a4036a200141c400100d1a200441e8036a20053602002004428080013702c804200441a586043602c4042006200441c4046a103c20042802cc04220120042802c8044b0d034200200c200b7d200f201056ad7d220b2010200f7d220f201056200b200c56200b200c511b22021b210b200420042802c40420011006220136020420042001417f4736020020032005470440200441b0016a200710310b200441f8016a200441bc026a1030200e4200200f20021b200e7c220c5622012001ad200b200d7c7c220b200d54200b200d511b0d012000200c370308200041106a200b37030041010c020b200441b0016a200441d0006a10312000200e370308200041003a0000200041106a200d3703000c030b200041046a4101104641020b3a00000c010b000b200441d0046a24000bf80402097f017e23004190016b220224002000027e20012903005004402001290308210b20012903100c010b200241386a4200370300200241406b4200370300200241286a200141206a290300370300200241206a200141186a290300370300200241186a200141106a2903003703002002420037033020022001290308370310200241c8006a2203200241106a22074138100d1a20024280808080f0a0a2cabf7f370380012002290378210b200242808001370214200241a58604360210200320071035024002402002280214220420022802182203490d0020022802102106200241003602182002200420036b3602142002200320066a360210200241e8006a2007103e2002280214220320022802182204490d00200320046b21032002280210220920046a210441f481042108200228028001220a41037145044020024100360218200220033602142002200436021020024184016a200710422002280214220320022802182205490d012002280210220820056a2104200320056b21030b20022003360210200a2006200b2009200820052004200241106a10022105200320022802102206490d002005103f41ff017122054110472005410247710d012002200636028c012002200436028801200241086a20024188016a103320022d00080d0102400240024020022d00090e020100040b20024188016a1032450d03200228028c01450d010c030b200241106a20024188016a1036200229031050450d02200228028c010d022002290318210b200241206a2903000c030b200141286a290300210b200141306a2903000c020b000b200141286a290300210b200141306a2903000b3703082000200b37030020024190016a24000b6902017f037e230041106b220224001043210520022001104802402001290338220320022903007c220420035a04402004200420022903087c22035804402000410c360200200020032005583a00040c020b2000410110460c010b2000410110460b200241106a24000b4900200029030050044020014100104c200041086a20011038200041106a200110380f0b20014101104c200041086a220020011035200041206a220020011038200041086a200110380b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b200120021053200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041005220136020420002001417f473602000b0d00200041a5860420011007000b3901027f2000280204220320024922044504402001200220002802002201200210532000200320026b3602042000200120026a3602000b20040b9e0101037f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440230041106b22022400200241086a2004200141001051200228020c2104200341086a2205200228020836020020052004360204200241106a240020032802080c010b2003200420014101105120032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b930201037f20020440200345044041a486042d00001a0b230041106b2203240041a886052802004504403f00210441ac860541c0860536020041a88605410136020041b0860520044110743602000b200341086a21050240200141ac86052802006a41016b410020016b71220120026a22042001490d0041b086052802002004490440200241ffff036a22042002490d01200441107640002201417f460d012001411074220120044180807c716a22042001490d0141b086052004360200200120026a22042001490d010b41ac86052004360200410121060b200520013602042005200636020020032802082101200328020c2104200341106a24002004410020011b21010b20002002360204200020013602000b7501047f230041106b22042400230041106b22032400200341086a200241001050200328020c2105200441086a2206200328020836020020062005360204200341106a240020042802082103200428020c20012002100d2101200020023602082000200136020420002003360200200441106a24000b150020012003460440200020022001100d1a0f0b000b0be7050200418080040ba405a7f8ba8199adfaed2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000000800010069000000980000002e0000000800010069000000930000003000000001de8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b01c5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32000000000000100102030405060708090a0b0c0d0e00a7f8ba8199adfaed4d3a3a556e646572666c6f774d3a3a4f766572666c6f774d3a3a44697642795a65726f100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e7273260101006a0000005d0000000e000000100102030405060708090a0b0c0d0e2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e7273af01010065000000770000000e00000001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041e685040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"abax_vester","version":"1.0.0","authors":["Konrad Wierzbik "]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":24},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":1},"balance":{"displayName":["Balance"],"type":4},"blockNumber":{"displayName":["BlockNumber"],"type":8},"chainExtension":{"displayName":["ChainExtension"],"type":38},"hash":{"displayName":["Hash"],"type":37},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":0}},"events":[{"args":[{"docs":["The account that triggered the release."],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":1}},{"docs":["The account to which the tokens are sent."],"indexed":true,"label":"to","type":{"displayName":["AccountId"],"type":1}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":7}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when vested tokens are released"],"label":"TokenReleased","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b"},{"args":[{"docs":[],"indexed":true,"label":"creator","type":{"displayName":["AccountId"],"type":1}},{"docs":["The locked asset."],"indexed":true,"label":"asset","type":{"displayName":["Option"],"type":7}},{"docs":["The account to which the tokens will be sent."],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":1}},{"docs":["The amount of tokens released."],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}},{"docs":[],"indexed":false,"label":"schedule","type":{"displayName":["VestingSchedule"],"type":10}}],"docs":["Emitted when general_vest schedule is created"],"label":"VestingScheduled","module_path":"pendzl_contracts::finance::general_vest","signature_topic":"0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":7}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":7}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":1}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":1}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":25},"messages":[{"args":[{"label":"receiver","type":{"displayName":["AccountId"],"type":1}},{"label":"asset","type":{"displayName":["Option"],"type":7}},{"label":"amount","type":{"displayName":["Balance"],"type":4}},{"label":"schedule","type":{"displayName":["VestingSchedule"],"type":10}},{"label":"data","type":{"displayName":["Vec"],"type":26}}],"default":false,"docs":[],"label":"GeneralVest::create_vest","mutates":true,"payable":true,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x152a0f27"},{"args":[{"label":"receiver","type":{"displayName":["Option"],"type":7}},{"label":"asset","type":{"displayName":["Option"],"type":7}},{"label":"data","type":{"displayName":["Vec"],"type":26}}],"default":false,"docs":[],"label":"GeneralVest::release","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":32},"selector":"0xaf951db7"},{"args":[{"label":"receiver","type":{"displayName":["Option"],"type":7}},{"label":"asset","type":{"displayName":["Option"],"type":7}},{"label":"id","type":{"displayName":["u32"],"type":8}},{"label":"data","type":{"displayName":["Vec"],"type":26}}],"default":false,"docs":[],"label":"GeneralVest::release_by_vest_id","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x0b6985ac"},{"args":[{"label":"of","type":{"displayName":["AccountId"],"type":1}},{"label":"asset","type":{"displayName":["Option"],"type":7}},{"label":"data","type":{"displayName":["Vec"],"type":26}}],"default":false,"docs":[],"label":"GeneralVest::next_id_vest_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":34},"selector":"0x3d7f0188"},{"args":[{"label":"of","type":{"displayName":["AccountId"],"type":1}},{"label":"asset","type":{"displayName":["Option"],"type":7}},{"label":"id","type":{"displayName":["u32"],"type":8}},{"label":"data","type":{"displayName":["Vec"],"type":26}}],"default":false,"docs":[],"label":"GeneralVest::vesting_schedule_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":35},"selector":"0x46e45514"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x99adfaed","ty":0}},"name":"creation_time"},{"layout":{"enum":{"dispatchKey":"0x99adfaed","name":"VestingSchedule","variants":{"0":{"fields":[{"layout":{"leaf":{"key":"0x99adfaed","ty":0}},"name":"0"},{"layout":{"leaf":{"key":"0x99adfaed","ty":0}},"name":"1"}],"name":"Constant"},"1":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x99adfaed","ty":1}},"name":"account"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x99adfaed","ty":0}},"name":"0"},{"layout":{"leaf":{"key":"0x99adfaed","ty":0}},"name":"1"}],"name":"(A, B)"}},"name":"fallback_values"}],"name":"ExternalTimeConstraint"}},"name":"0"}],"name":"External"}}}},"name":"schedule"},{"layout":{"leaf":{"key":"0x99adfaed","ty":4}},"name":"amount"},{"layout":{"leaf":{"key":"0x99adfaed","ty":4}},"name":"released"}],"name":"VestingData"}},"root_key":"0x99adfaed","ty":5}},"name":"vesting_datas"},{"layout":{"root":{"layout":{"leaf":{"key":"0xa7f8ba81","ty":8}},"root_key":"0xa7f8ba81","ty":17}},"name":"next_id"}],"name":"GeneralVestData"}},"name":"vesting"}],"name":"Vester"}},"root_key":"0x00000000","ty":22}},"types":[{"id":0,"type":{"def":{"primitive":"u64"}}},{"id":1,"type":{"def":{"composite":{"fields":[{"type":2,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":2,"type":{"def":{"array":{"len":32,"type":3}}}},{"id":3,"type":{"def":{"primitive":"u8"}}},{"id":4,"type":{"def":{"primitive":"u128"}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"K","type":6},{"name":"V","type":9},{"name":"KeyType","type":13}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":6,"type":{"def":{"tuple":[1,7,8]}}},{"id":7,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":1}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":1}],"path":["Option"]}},{"id":8,"type":{"def":{"primitive":"u32"}}},{"id":9,"type":{"def":{"composite":{"fields":[{"name":"creation_time","type":0,"typeName":"Timestamp"},{"name":"schedule","type":10,"typeName":"VestingSchedule"},{"name":"amount","type":4,"typeName":"Balance"},{"name":"released","type":4,"typeName":"Balance"}]}},"path":["pendzl_contracts","finance","general_vest","VestingData"]}},{"id":10,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0,"typeName":"Timestamp"},{"type":0,"typeName":"Timestamp"}],"index":0,"name":"Constant"},{"fields":[{"type":11,"typeName":"ExternalTimeConstraint"}],"index":1,"name":"External"}]}},"path":["pendzl_contracts","finance","general_vest","VestingSchedule"]}},{"id":11,"type":{"def":{"composite":{"fields":[{"name":"account","type":1,"typeName":"AccountId"},{"name":"fallback_values","type":12,"typeName":"(Timestamp, Timestamp)"}]}},"path":["pendzl_contracts","finance","general_vest","ExternalTimeConstraint"]}},{"id":12,"type":{"def":{"tuple":[0,0]}}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"L","type":14},{"name":"R","type":16}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":15}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"tuple":[]}}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":15}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"K","type":18},{"name":"V","type":8},{"name":"KeyType","type":19}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":18,"type":{"def":{"tuple":[1,7]}}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"L","type":20},{"name":"R","type":21}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":15}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":15}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"composite":{"fields":[{"name":"vesting","type":23,"typeName":",>>::Type"}]}},"path":["abax_vester","abax_vester","Vester"]}},{"id":23,"type":{"def":{"composite":{"fields":[{"name":"vesting_datas","type":5,"typeName":", u32), VestingData,::ink::\nstorage::traits::ManualKey>\nas::ink::storage::traits::AutoStorableHint<::ink::storage::\ntraits::ManualKey<1670016381u32, ()>,>>::Type"},{"name":"next_id","type":17,"typeName":"), u32,::ink::storage::\ntraits::ManualKey> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2454413451u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","finance","general_vest","implementation","GeneralVestData"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":25}],"path":["Result"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":26,"type":{"def":{"sequence":{"type":3}}}},{"id":27,"type":{"def":{"variant":{"variants":[{"fields":[{"type":28}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":28},{"name":"E","type":25}],"path":["Result"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":29}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":29}],"path":["Result"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":30,"typeName":"String"}],"index":0,"name":"Custom"},{"fields":[{"type":31,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"index":2,"name":"NativeTransferFailed"},{"index":3,"name":"InvalidAmountPaid"}]}},"path":["pendzl_contracts","finance","general_vest","VestingError"]}},{"id":30,"type":{"def":{"primitive":"str"}}},{"id":31,"type":{"def":{"variant":{"variants":[{"fields":[{"type":30,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":30,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":32,"type":{"def":{"variant":{"variants":[{"fields":[{"type":33}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":33},{"name":"E","type":25}],"path":["Result"]}},{"id":33,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":29}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":29}],"path":["Result"]}},{"id":34,"type":{"def":{"variant":{"variants":[{"fields":[{"type":8}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":8},{"name":"E","type":25}],"path":["Result"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"fields":[{"type":36}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":36},{"name":"E","type":25}],"path":["Result"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"type":2,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":38,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/abax_vester.json b/artifacts/abax_vester.json new file mode 100644 index 0000000..995352d --- /dev/null +++ b/artifacts/abax_vester.json @@ -0,0 +1,1476 @@ +{ + "source": { + "hash": "0x7c97210da4fa6a70d4ffcf1aa59220caeb1f3d8c01387ca35a0047b4d04d0fc4", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "abax_vester", + "version": "1.0.0", + "authors": ["Konrad Wierzbik "] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 24 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 1 + }, + "balance": { + "displayName": ["Balance"], + "type": 4 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 8 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 38 + }, + "hash": { + "displayName": ["Hash"], + "type": 37 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 0 + } + }, + "events": [ + { + "args": [ + { + "docs": ["The account that triggered the release."], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The account to which the tokens are sent."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": ["Emitted when vested tokens are released"], + "label": "TokenReleased", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xde8c338ca79d8805352d1d92f36574a15658653f461ebd4f627be5d542e7363b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "creator", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The locked asset."], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "docs": ["The account to which the tokens will be sent."], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The amount of tokens released."], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "schedule", + "type": { + "displayName": ["VestingSchedule"], + "type": 10 + } + } + ], + "docs": ["Emitted when general_vest schedule is created"], + "label": "VestingScheduled", + "module_path": "pendzl_contracts::finance::general_vest", + "signature_topic": "0xc5a44e3ce50f6ecdb81b76c25cea0615b745a129563c4ad611b6067ae1e0eb32" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 25 + }, + "messages": [ + { + "args": [ + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + }, + { + "label": "schedule", + "type": { + "displayName": ["VestingSchedule"], + "type": 10 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 26 + } + } + ], + "default": false, + "docs": [], + "label": "GeneralVest::create_vest", + "mutates": true, + "payable": true, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0x152a0f27" + }, + { + "args": [ + { + "label": "receiver", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 26 + } + } + ], + "default": false, + "docs": [], + "label": "GeneralVest::release", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 32 + }, + "selector": "0xaf951db7" + }, + { + "args": [ + { + "label": "receiver", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "id", + "type": { + "displayName": ["u32"], + "type": 8 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 26 + } + } + ], + "default": false, + "docs": [], + "label": "GeneralVest::release_by_vest_id", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0x0b6985ac" + }, + { + "args": [ + { + "label": "of", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 26 + } + } + ], + "default": false, + "docs": [], + "label": "GeneralVest::next_id_vest_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 34 + }, + "selector": "0x3d7f0188" + }, + { + "args": [ + { + "label": "of", + "type": { + "displayName": ["AccountId"], + "type": 1 + } + }, + { + "label": "asset", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "id", + "type": { + "displayName": ["u32"], + "type": 8 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 26 + } + } + ], + "default": false, + "docs": [], + "label": "GeneralVest::vesting_schedule_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 35 + }, + "selector": "0x46e45514" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 0 + } + }, + "name": "creation_time" + }, + { + "layout": { + "enum": { + "dispatchKey": "0x99adfaed", + "name": "VestingSchedule", + "variants": { + "0": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 0 + } + }, + "name": "0" + }, + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 0 + } + }, + "name": "1" + } + ], + "name": "Constant" + }, + "1": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 1 + } + }, + "name": "account" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 0 + } + }, + "name": "0" + }, + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 0 + } + }, + "name": "1" + } + ], + "name": "(A, B)" + } + }, + "name": "fallback_values" + } + ], + "name": "ExternalTimeConstraint" + } + }, + "name": "0" + } + ], + "name": "External" + } + } + } + }, + "name": "schedule" + }, + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 4 + } + }, + "name": "amount" + }, + { + "layout": { + "leaf": { + "key": "0x99adfaed", + "ty": 4 + } + }, + "name": "released" + } + ], + "name": "VestingData" + } + }, + "root_key": "0x99adfaed", + "ty": 5 + } + }, + "name": "vesting_datas" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xa7f8ba81", + "ty": 8 + } + }, + "root_key": "0xa7f8ba81", + "ty": 17 + } + }, + "name": "next_id" + } + ], + "name": "GeneralVestData" + } + }, + "name": "vesting" + } + ], + "name": "Vester" + } + }, + "root_key": "0x00000000", + "ty": 22 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 2, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 2, + "type": { + "def": { + "array": { + "len": 32, + "type": 3 + } + } + } + }, + { + "id": 3, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 4, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 6 + }, + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 13 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 6, + "type": { + "def": { + "tuple": [1, 7, 8] + } + } + }, + { + "id": 7, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 1 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 1 + } + ], + "path": ["Option"] + } + }, + { + "id": 8, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "creation_time", + "type": 0, + "typeName": "Timestamp" + }, + { + "name": "schedule", + "type": 10, + "typeName": "VestingSchedule" + }, + { + "name": "amount", + "type": 4, + "typeName": "Balance" + }, + { + "name": "released", + "type": 4, + "typeName": "Balance" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingData"] + } + }, + { + "id": 10, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0, + "typeName": "Timestamp" + }, + { + "type": 0, + "typeName": "Timestamp" + } + ], + "index": 0, + "name": "Constant" + }, + { + "fields": [ + { + "type": 11, + "typeName": "ExternalTimeConstraint" + } + ], + "index": 1, + "name": "External" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingSchedule"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 1, + "typeName": "AccountId" + }, + { + "name": "fallback_values", + "type": 12, + "typeName": "(Timestamp, Timestamp)" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "ExternalTimeConstraint"] + } + }, + { + "id": 12, + "type": { + "def": { + "tuple": [0, 0] + } + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 14 + }, + { + "name": "R", + "type": 16 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 15 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 15 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 18 + }, + { + "name": "V", + "type": 8 + }, + { + "name": "KeyType", + "type": 19 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 18, + "type": { + "def": { + "tuple": [1, 7] + } + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 20 + }, + { + "name": "R", + "type": 21 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 15 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 15 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "vesting", + "type": 23, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_vester", "abax_vester", "Vester"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "vesting_datas", + "type": 5, + "typeName": ", u32), VestingData,::ink::\nstorage::traits::ManualKey>\nas::ink::storage::traits::AutoStorableHint<::ink::storage::\ntraits::ManualKey<1670016381u32, ()>,>>::Type" + }, + { + "name": "next_id", + "type": 17, + "typeName": "), u32,::ink::storage::\ntraits::ManualKey> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2454413451u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "implementation", "GeneralVestData"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 26, + "type": { + "def": { + "sequence": { + "type": 3 + } + } + } + }, + { + "id": 27, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 28 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 28 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 29 + } + ], + "path": ["Result"] + } + }, + { + "id": 29, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 30, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "fields": [ + { + "type": 31, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "index": 2, + "name": "NativeTransferFailed" + }, + { + "index": 3, + "name": "InvalidAmountPaid" + } + ] + } + }, + "path": ["pendzl_contracts", "finance", "general_vest", "VestingError"] + } + }, + { + "id": 30, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 30, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 30, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 32, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 33 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 33 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 33, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 29 + } + ], + "path": ["Result"] + } + }, + { + "id": 34, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 8 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 8 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 35, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 36 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 36 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 36, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 2, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 38, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/abax_vester.wasm b/artifacts/abax_vester.wasm new file mode 100644 index 0000000..22f0e89 Binary files /dev/null and b/artifacts/abax_vester.wasm differ diff --git a/artifacts/balance_viewer.contract b/artifacts/balance_viewer.contract new file mode 100644 index 0000000..2dbd493 --- /dev/null +++ b/artifacts/balance_viewer.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x80790bb8455f4f72051d2721b120937872009ffc26d21bfc9f8224707d282bd0","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001520d60027f7f0060037f7f7f017f60037f7f7f0060000060047f7f7f7f017f60017f017f60087f7f7e7f7f7f7f7f017f6000017f60037e7e7f0060047f7f7f7f0060027f7f017f60027e7f0060047e7e7e7f0002810107057365616c310b6765745f73746f726167650004057365616c3005696e7075740000057365616c310463616c6c0006057365616c320b7365745f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c301176616c75655f7472616e73666572726564000003656e76066d656d6f72790201021003262501010101000007020000000000080005090000010a03050000000000000b030003000c02020616037f01418080040b7f0041a080050b7f0041a080050b0711020463616c6c0024066465706c6f7900260adc8d01252b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bb00101037f230041106b22022400200241046a2001100b0240024020022802042203418180808078460d00200128020422044120490d002001200441206b36020420012001280200220141206a36020020002002290208370204200020033602002000200129000037000c200041146a200141086a2900003700002000411c6a200141106a290000370000200041246a200141186a2900003700000c010b20004181808080783602000b200241106a24000b980101017f230041106b22022400200220011018024002400240024020022d000045044020022d00010e020203010b20004181808080783602000c030b20004181808080783602000c020b20004180808080783602000c010b200241046a200110172002280204220141808080807847044020002002290208370204200020013602000c010b20004181808080783602000b200241106a24000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1005200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0be72802197f1c7e230041e0036b22032400200341d0026a2205200141186a2206290000370300200341c8026a2207200141106a220a290000370300200341c0026a220b200141086a220c290000370300200320012900003703b802200341e8016a200341a8026a2209413010061a200341a8016a220d4200370300200341b0016a220e4200370300200341b8016a2208410036020020034188016a220f20034180026a221029030037030020034190016a221220034188026a221129030037030020034198016a221320034190026a2214290300370300200341c4016a2215200241086a2216290000370200200341cc016a2217200241106a2218290000370200200341d4016a2219200241186a221a290000370200200342003703a001200320032903f80137038001200320022900003702bc01200341dc016a220441c4dbd29f7e360200200341c8006a20034180016a221b100f2019201a2900003702002017201829000037020020152016290000370200200320022900003702bc01200520062900003703002007200a290000370300200b200c290000370300200320012900003703b802200341e8016a200341a8026a413010061a200441d1f38dde7b360200200f20102903003703002012201129030037030020132014290300370300200d4200370300200e420037030020084100360200200320032903f80137038001200342003703a0012003428080013702ac02200341a080043602a802201b20091012024020032802ac02220720032802b0022205490d0020032802a8022106200341003602b0022003200720056b3602ac022003200520066a3602a802420042002009101320032802ac02220a20032802b0022205490d0020032802a8022107200341003602b0022003200a20056b3602ac022003200520076a3602a802200420091014200341bc016a2009101220032802ac02220a20032802b0022204490d0020032802a80221052003200a20046b220a3602a802410020064200200720052004200420056a2205200910022104200a20032802a8022206492004410f4f720d002006452004418080046a2d00002204411047200441024771720d002003200641016b22043602ac022003200541016a3602a80202400240024020052d00000e020001030b2004450d02200641026b21040240024020052d00010e020100040b20044110492006412a6b220441674b720d032005410a6a290000221c4220862005290002221d422088842122201c42208821232005411a6a29000021242005290012212520052900222126201da7210a4201211d0b2004450d010c020b200341a8026a1015450d0120032802ac021a0c010b200341d4016a200241186a290000370200200341cc016a200241106a290000370200200341c4016a200241086a290000370200200320022900003702bc01200341d0026a200141186a290000370300200341c8026a200141106a290000370300200341c0026a200141086a290000370300200320012900003703b802200341e8016a200341a8026a2208413010061a200341dc016a22074183f9f7d17936020020034188016a20034180026a29030037030020034190016a20034188026a29030037030020034198016a20034190026a290300370300200341a8016a4200370300200341b8016a4100360200200341b0016a4200370300200320032903f80137038001200342003703a0012003428080013702ac02200341a080043602a80220034180016a2008101220032802ac02220620032802b0022204490d0020032802a8022105200341003602b0022003200620046b3602ac022003200420056a3602a802420042002008101320032802ac02220b20032802b0022204490d0020032802a8022106200341003602b0022003200b20046b3602ac022003200420066a3602a802200720081014200341bc016a2008101220032802ac02220b20032802b0022204490d0020032802a80221072003200b20046b220b3602a802410020054200200620072004200420076a2205200810022104200b20032802a8022206492004410f4f720d002006452004418080046a2d00002204411047200441024771720d002003200641016b22043602ac022003200541016a3602a8020240024002400240024002400240024020052d00000e020001080b2004450d07200641026b21040240024020052d00010e020100090b20044104492006410e6b41774b72200641166b41774b2006411e6b41774b72720d08200641266b220441774b2004411049720d082005280002210d200529000e212720052900162128200641366b21042005290006221c422088a7210b201ca7210e200529002e21292005290026212a200529001e212b420121210b20040d07200341d4016a200241186a290000370200200341cc016a200241106a290000370200200341c4016a200241086a290000370200200320022900003702bc01200341d0026a200141186a290000370300200341c8026a200141106a290000370300200341c0026a200141086a290000370300200320012900003703b802200341e8016a200341a8026a2208413010061a200341dc016a220741eef5efa37c36020020034188016a20034180026a29030037030020034190016a20034188026a29030037030020034198016a20034190026a290300370300200341a8016a4200370300200341b8016a4100360200200341b0016a4200370300200320032903f80137038001200342003703a0012003428080013702ac02200341a080043602a80220034180016a2008101220032802ac02220620032802b0022204490d0720032802a8022105200341003602b0022003200620046b3602ac022003200420056a3602a802420042002008101320032802ac02220c20032802b0022204490d0720032802a8022106200341003602b0022003200c20046b3602ac022003200420066a3602a802200720081014200341bc016a2008101220032802ac02220c20032802b0022204490d0720032802a80221072003200c20046b220c3602a802410020054200200620072004200420076a2205200810022104200c20032802a8022206492004410f4f720d072006452004418080046a2d00002204411047200441024771720d072003200641016b22043602ac022003200541016a3602a80220052d00000e020102070b200341a8026a1015450d0620032802ac021a0c060b2004450d05200641026b21040240024020052d00010e020100070b20044104492006411a6b2204416b4b720d06200541126a290000221c422086200529000a221e42208884212c201c422088212d2005280006210f2005280002210c201ea721104201211e0b20040d05200341d4016a200241186a290000370200200341cc016a200241106a290000370200200341c4016a200241086a290000370200200320022900003702bc01200341d0026a200141186a290000370300200341c8026a200141106a290000370300200341c0026a200141086a290000370300200320012900003703b802200341e8016a200341a8026a2209413010061a200341dc016a220741e2fd81a70436020020034188016a20034180026a29030037030020034190016a20034188026a29030037030020034198016a20034190026a290300370300200341a8016a4200370300200341b8016a4100360200200341b0016a4200370300200320032903f80137038001200342003703a0012003428080013702ac02200341a080043602a80220034180016a2009101220032802ac02220620032802b0022204490d0520032802a8022105200341003602b0022003200620046b3602ac022003200420056a3602a802420042002009101320032802ac02220820032802b0022204490d0520032802a8022106200341003602b0022003200820046b3602ac022003200420066a3602a802200720091014200341bc016a2009101220032802ac02220820032802b0022204490d0520032802a80221072003200820046b22083602a802410020054200200620072004200420076a2204200910022106200820032802a8022205492006410f4f720d052005452006418080046a2d00002206411047200641024771720d052003200541016b22063602ac022003200441016a3602a80220042d00000e020102050b200341a8026a1015450d0420032802ac021a0c040b2006450d032003200541026b22053602ac022003200441026a3602a802024020042d00010e020200040b200341306a200341a8026a220410272003290330221c4202510d03200341406b290300211f20032903382120200341186a200410272003290318222e4202510d0320032802ac0222044110490d03200341286a290300212f20032903202130200320032802a802220541106a3602a8022004417071411046200441204772201c420351720d03200541086a290000213120052900002132201f4220862020422088842133201f422088211f20032802a802220441086a2900002134200429000021352020a721110c020b200341a8026a1015450d0220032802ac021a0c020b20050d014202211c0b200341d4016a200241186a290000370200200341cc016a200241106a290000370200200341c4016a200241086a290000370200200320022900003702bc01200341d0026a200141186a290000370300200341c8026a200141106a290000370300200341c0026a200141086a290000370300200320012900003703b802200341e8016a200341a8026a2209413010061a200341dc016a22074198d3dc0236020020034188016a20034180026a29030037030020034190016a20034188026a29030037030020034198016a20034190026a290300370300200341a8016a4200370300200341b8016a4100360200200341b0016a4200370300200320032903f80137038001200342003703a0012003428080013702ac02200341a080043602a80220034180016a2009101220032802ac02220620032802b0022204490d0020032802a8022105200341003602b0022003200620046b3602ac022003200420056a3602a802420042002009101320032802ac02220820032802b0022204490d0020032802a8022106200341003602b0022003200820046b3602ac022003200420066a3602a802200720091014200341bc016a2009101220032802ac02220820032802b0022204490d0020032802a80221072003200820046b22083602a802410020054200200620072004200420076a2205200910022104200820032802a8022206492004410f4f720d002006452004418080046a2d00002204411047200441024771720d002003200641016b3602ac022003200541016a3602a8020240024002400240024020052d00000e020001050b2003200341a8026a22091027200329030022204202510d0420032802ac020d04200341106a290300213620032903082137200341a8016a2204200141186a290000370300200341a0016a200141106a29000037030020034198016a2206200141086a2900003703002003200129000037039001200920034180016a2201413010061a200341dc016a220741eed0c6c67e36020020034188016a200341c0026a29030037030020034190016a200341c8026a2903003703002006200341d0026a290300370300200341d4016a200241186a290000370200200341cc016a200241106a290000370200200341c4016a200241086a290000370200200320032903b80237038001200320022900003702bc0120044200370300200341b0016a4200370300200341b8016a4100360200200342003703a0012003428080013702ac02200341a080043602a80220012009101220032802ac02220420032802b0022201490d0420032802a8022102200341003602b0022003200420016b3602ac022003200120026a3602a802420042002009101320032802ac02220420032802b0022201490d0420032802a8022106200341003602b0022003200420016b3602ac022003200120066a3602a802200720091014200341bc016a2009101220032802ac02220720032802b0022201490d0420032802a80221042003200720016b22083602a802410020024200200620042001200120046a2201200910022102200820032802a8022207492002410f4f720d042007452002418080046a2d00002202411047200241024771720d042003200741016b22023602e4012003200141016a3602e00120012d000022080e020102040b200341a8026a1015450d0320032802ac021a0c030b2002450d02200741026b21020240024020012d000122050e020100040b20024160714120462002412049720d03200341c2036a2001412a6a290000370100200341ca036a200141326a290000370100200341d2036a2001413a6a290000370100200341a8036a200141106a290000370300200341b0036a200141186a290000370300200341b8036a200141206a2f00003b0100200320012900223701ba03200320012900083703a00320012f0002210620012800042104200341e6026a200341a0036a413a10061a200741c2006b21020b200341a8026a200341e6026a413a10061a0c010b200341e0016a1015450d014101210420032802e40121020b200341e8016a2201200341a8026a2207413c10061a20020d0020072001413c10061a20012007413a10061a20080d00200041b7026a2001413a10061a200041f8016a200341c8006a413810061a200041f0016a2034370300200020353703e801200041e0016a2031370300200020323703d801200041d0016a202f370300200020303703c801200041bc016a201f3e0200200020333702b40120004184016a202d3e02002000202c37027c200041206a202437030020002025370318200041146a20233e02002000202237020c2000202e3703c001200041b0016a20113602002000201c3703a8012000200f36028c012000200c36028801200041f8006a20103602002000201e3703702000200d360268200020293703602000202a3703582000202b37035020002028370348200020273703402000200b36023c200041386a200e36020020002021370330200020263703282000200a3602082000201d370300200041a0016a203637030020004198016a2037370300200041b3026a2004360000200041b1026a20063b0000200020053a00b0022000202037039001200341e0036a24000f0b000bdd0302087f017e230041e0006b22022400200241086a22032001413810061a2002200128023c3602442002200128023822053602402002290338210a200242808001370258200241a080043602542003200241d4006a22061012024020022802582204200228025c2201490d0020022802542107410021032002410036025c2002200420016b3602582002200120076a3602542002290328200241306a2903002006101320022802582204200228025c2201490d00200420016b21042002280254220920016a210141808004210820054103714504402002410036025c2002200436025820022001360254200241c4006a2006101420022802582201200228025c2203490d01200120036b21042002280254220820036a21010b2002200436025420052007200a2009200820032001200241d4006a10022103200420022802542205492003410f4f720d002005452003418080046a2d00002203411047200341024771720d002002200541016b3602502002200141016a36024c0240024020012d00000e020100020b200241cc006a1015450d0120022802501a0c010b200241d4006a200241cc006a101720022802542201418080808078460d0020022802500d002000200229025837020420002001360200200241e0006a24000f0b000bf60502097f067e230041f0006b2202240020022001413810062202200128023822043602382002413c6a2001413c6a4124100621092002290330210d200242808001370268200241a080043602642002200241e4006a22061012024020022802682203200228026c2201490d00200228026421072002410036026c2002200320016b3602682002200120076a3602642002290320200241286a2903002006101320022802682203200228026c2201490d00200320016b21032002280264220a20016a210141808004210820044103714504402002410036026c2002200336026820022001360264200241dc006a2006101420092006101220022802682201200228026c2205490d01200120056b21032002280264220820056a21010b2002200336026420042007200d200a200820052001200241e4006a10022104200320022802642205492004410f4f720d002005452004418080046a2d00002203411047200341024771720d002002200541016b22033602682002200141016a360264024002400240024020012d00000e020001040b2003450d032002200541026b22053602682002200141026a360264024020012d00010e020200040b200241e4006a101c220541ff01714102460d03200241e4006a101c220341ff01714102460d03200228026822014110490d0320022002280264220441106a360264200141787122064110460d032004290000210b200441086a290000210c20022002280264220441086a360264200141286b416f4b0d032004290000210d20022002280264220441106a36026420064128462001413047720d03200c422086200b42208884210e200c422088210c200ba72101200441086a290000210b2004290000210f200228026429000021100c020b200241e4006a1015450d0220022802681a0c020b20050d01410221030b2000200f3703102000200e370204200020033a0031200020053a0030200020103703282000200d37032020002001360200200041186a200b3703002000410c6a200c3e0200200241f0006a24000f0b000bed0402097f077e23004190016b2202240020022001413810062202200128023822053602382002413c6a2001413c6a41c400100621092002290330210b20024280800137028801200241a0800436028401200220024184016a2206101202402002280288012203200228028c012201490d0020022802840121072002410036028c012002200320016b360288012002200120076a360284012002290320200241286a290300200610132002280288012203200228028c012201490d00200320016b2103200228028401220a20016a210141808004210820054103714504402002410036028c0120022003360288012002200136028401200241fc006a20061014200241dc006a200610122009200610122002280288012201200228028c012204490d01200120046b2103200228028401220820046a21010b200220033602840120052007200b200a20082004200120024184016a1002210520032002280284012204492005410f4f720d002004452005418080046a2d00002203411047200341024771720d002002200441016b2205360288012002200141016a2203360284010240024020012d00000e020001020b2005411049200441216b416f4b72200441c10047200441316b416f4b72720d01200341086a290000210b2003290000210c200141196a290000210d2001290011210e200141296a290000210f2001290021211020012900312111200041386a200141396a29000037030020002011370330200041286a200f37030020002010370320200041186a200d3703002000200e3703102000200b3703082000200c37030020024190016a24000f0b20024184016a1015450d002002280288011a0b000beb0101057f200028020822022000280200460440230041206b220324000240200241016a220204404104200028020022044101742205200220022005491b2202200241044d1b220241e0006c2105200241d6aad50a49410374210602402004450440200341003602180c010b200341083602182003200441e0006c36021c200320002802043602140b200341086a20062005200341146a10162003280208450d01200328020c1a0b000b200328020c21042000200236020020002004360204200341206a2400200028020821020b2000280204200241e0006c6a200141e00010061a2000200241016a3602080b0a0020012000412010290b2a01017f230041106b2203240020032001370308200320003703002002200341101029200341106a24000b0a0020012000410410290b3601027f230041106b22012400200141086a2000101820012d0009210020012d00082102200141106a24002002417f732000410146710be80101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a20012002102a20042802082103200428020c0c020b20032802002106024020012002101a2203450440410021030c010b20032006200510061a0b20020c010b200420012002102a2004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000bf806010b7f230041406a22032400200341106a2001101802400240024020032d00100d000240024002400240024020032d0011220241037141016b0e03010203000b200241fc017141027621050c030b200341256a20023a0000200341013a002420032001360220200341003b0114200341206a200341146a410210190d0320032f0114220241ff014d0d03200241027621050c020b200341256a20023a0000200341013a00242003200136022020034100360214200341206a200341146a410410190d022003280214220241808004490d02200241027621050c010b200241044f0d01200341086a210520012802042202410449047f4101052001200241046b36020420012001280200220241046a3602002002280000210241000b2104200520023602042005200436020020032802080d01200328020c2205418080808004490d010b024020012802044105762202200520022005491b2202450440410121060c010b200241ffffff1f4b0d03200241057422044100480d03419080042d00001a20024180808020492004101a2206450d030b410021042003410036021c20032006360218200320023602140240200504400340200128020422024120490d022001200241206b36020420012001280200220241206a360200200341286a2209200241086a290000370300200341306a220a200241106a290000370300200341386a220b200241186a2900003703002003200229000037032020032802142004460440200341146a2106230041206b220224000240200441016a220404404104200628020022074101742208200420042008491b2204200441044d1b220441808080204921082004410574210c02402007450440200241003602180c010b200241013602182002200741057436021c200220062802043602140b200241086a2008200c200241146a10162002280208450d01200228020c1a0b000b200228020c21072006200436020020062007360204200241206a240020032802182106200328021c21040b200620044105746a22022003290320370000200241186a200b290300370000200241106a200a290300370000200241086a20092903003700002003200441016a220436021c200541016b22050d000b0b20002003290214370200200041086a2003411c6a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200341406b24000f0b000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a200120002802002201200210061a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a20002802002201200210061a0b2000200320026b3602042000200120026a36020041000b0bc50101017f027f419480042d00000440419880042802000c010b3f0021024198800441a080053602004194800441013a0000419c8004200241107436020041a080050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a419c80042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d02419c800420023602004100200020016a22022000490d011a0b41988004200236020020000b0f0b41000b130041a080044181023b010041014102101f000b3f01027f230041106b22012400200141086a2000101820012d0009210020012d00082102200141106a240041024101410220004101461b410020001b20021b0b7401017f230041106b2202240002402001413f4d04402000200141027410210c010b200141ffff004d0440200220014102744101723b010e20002002410e6a410210290c010b200141ffffffff034d04402001410274410272200010250c010b2000410310212001200010250b200241106a24000bdc0301017e200041f8016a20011020024020002903005004402001410010210c010b2001410110212000290308200041106a29030020011013200041186a290300200041206a29030020011013200041286a290300200110230b024020002903305004402001410010210c010b200141011021200041e8006a28020020011025200041386a29030020011023200041406b29030020011023200041c8006a29030020011023200041d0006a29030020011023200041d8006a29030020011023200041e0006a290300200110230b024020002903705004402001410010210c010b20014101102120004188016a28020020011025200028028c0120011025200041f8006a29030020004180016a290300200110130b024020002903a801220242025104402001410010210c010b2001410110212002200041b0016a290300200041b8016a29030020011028200041c0016a290300200041c8016a290300200041d0016a29030020011028200041d8016a290300200041e0016a29030020011013200041e8016a290300200041f0016a290300200110130b20002903900120004198016a290300200041a0016a2903002001102820002d00b0024504402001410010210f0b200141011021200041b1026a20011012200041d1026a200110120b0d00200041a0800420011004000b6101017f20002d0031220241024604402001410010210f0b20014101102120002d0030200110222002200110222000290300200041086a290300200110132000290320200110232000290310200041186a290300200110132000290328200110230b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b2601017f230041106b22022400200220003a000f20012002410f6a41011029200241106a24000b2601017f230041106b22022400200220003703082001200241086a41081029200241106a24000bba3502147f057e230041e0036b220224000240024002400240100c41ff01714105470d0020024180800136026841a08004200241e8006a100120022802682200418180014f0d000240024020004104490d00200241a480043602382002200041046b220736023c41a380042d0000210041a280042d0000210141a180042d00002103024002400240024002400240024041a080042d0000220441d8006b0e020601000b2004411c460d0420044132460d03200441e400460d02200441f600460d01200441850147200341f20047722001413e47200041ff017141cc014772722007412049720d06200241c8006a41b48004290200370300200241d0006a41bc8004290200370300200241c48004360238200241ac800429020037034041ab80042d0000210441a78004280000210541a580042f0000210041a480042d00002107410521030c070b200341c10147200141174772200041ff017141f30047720d05200241e8006a200241386a100a20022802682205418180808078460d0520022d006c2104200241406b200241ed006a412710061a410021030c060b2003412347200141dc004772200041ff017141d90047720d04200241e8006a200241386a100b20022802682205418180808078460d042002200228006d3602402002200241f0006a28000036004320022d006c2104410121030c050b200341f300472001419e014772200041ff0171419a0147720d03200241e8006a200241386a100b20022802682205418180808078460d032002200228006d3602402002200241f0006a28000036004320022d006c2104410221030c040b2003410d47200141ee004772200041ff017141e50047720d02200241e8006a200241386a100a20022802682205418180808078460d0220022d006c2104200241406b200241ed006a412710061a410321030c030b200341a50147200141104772200041ff0171412747720d01200241e8006a200241386a100a20022802682205418180808078460d0120022d006c2104200241406b200241ed006a412710061a410421030c020b200341ac0147200141ec014772200041ff0171413947720d00200241e8006a200241386a100b20022802682205418180808078460d002002200228006d3602402002200241f0006a28000036004320022d006c2104410621030c010b101b000b200241116a200241406b412710061a200220043a00102002200536020c200220003b010a200220073a0009200220033a000820024280800137026c200241a080043602684100200241e8006a22041025200228026c220720022802702200490d00200228026821012002200720006b220736026820012000200020016a2200200410002101200720022802682204492001410f4f720d002001418080046a2d000022014103462001411047722004412047720d002002410c6a210120002d00002104200241c1006a200041016a411f10071a200220043a004002400240024002400240200341016b0e06060601020304000b200241e8006a2105200241406b210223004180026b220024002001290204211420012802002103200041206a200141246a290200370300200041186a2001411c6a290200370300200041106a200141146a2902003703002000200129020c370308027f2003418080808078460440200041f8016a200241186a290000370300200041f0016a200241106a290000370300200041e8016a200241086a290000370300200020022900003703e001200041406b200041d0016a413010061a20004198016a4200370300200041a8016a4280808080e0afb990ac7f370300200041f8006a200041d8006a29030037030020004180016a200041e0006a29030037030020004188016a200041e8006a290300370300200041a0016a4200370300200042003703900120002000290350370370200041286a200041f0006a100e200028022c210320002802300c010b2014a721032014422088a70b21022000410036023c20004280808080800137023402400240024020020440200041e0016a210a20004180016a2101200041cc016a210f200041ac016a210720004190016a210b2002410574210c41002104410821080340200041d8006a2211200341186a2202290000370300200041d0006a2212200341106a2206290000370300200041c8006a2213200341086a220929000037030020002003290000370340200141186a2002290000370000200141106a2006290000370000200141086a200929000037000020012003290000370000200041d0016a2202200041f0006a2206413010061a200741186a200041206a290300370200200741106a200041186a290300370200200741086a200041106a29030037020020072000290308370200200041f8006a200a41086a2903003703002001200a41106a29030037030020004188016a200a41186a290300370300200041e5d0e1f9023602cc012000200a290300370370200b41186a4100360200200b41106a4200370300200b41086a4200370300200b42003703002000428080013702d401200041a080043602d00120062002101220002802d401220d20002802d8012206490d0320002802d0012109200041003602d8012000200d20066b3602d4012000200620096a3602d001420042002002101320002802d401220e20002802d8012206490d0320002802d001210d200041003602d8012000200e20066b3602d40120002006200d6a3602d001200f2002101420072002101220002802d401221020002802d8012206490d0320002802d001210e2000201020066b22103602d001410020094200200d200e20062006200e6a2206200210022109201020002802d0012202492009410f4f720d032002452009418080046a2d00002209411047200941024771720d032000200241016b220d3602d4012000200641016a22093602d001024020062d00000e020003040b2002411147200d411049720d03200941086a290000211420092900002115200341206a210320002802342004460440200041346a2108230041206b220224000240200441016a220404404104200828020022064101742209200420042009491b2204200441044d1b220441306c2109200441abd5aa1549410374210d02402006450440200241003602180c010b200241083602182002200641306c36021c200220082802043602140b200241086a200d2009200241146a10162002280208450d01200228020c1a0b000b200228020c21062008200436020020082006360204200241206a240020002802382108200028023c21040b2008200441306c6a2202200029034037000020132903002116201229030021172011290300211820022015370320200241286a2014370300200241186a2018370000200241106a2017370000200241086a20163700002000200441016a220436023c200c41206b220c0d000b0b20052000290234370200200541086a2000413c6a28020036020020004180026a24000c020b200041d0016a1015450d0020002802d4011a0b000b230041106b22022400200241808001360208200241a08004360204024020052802004180808080784704402002410136020c41a0800441003a000020052802042100200241046a20052802082201101d200104402000200141306c6a210103402000200241046a22031012200041206a290300200041286a29030020031013200041306a22002001470d000b0b200228020c220041818001490d01000b41a080044181023b0100410221000b0c070b200241406b2105230041b0036b22002400027f2001280200418080808078460440200041c8006a200541186a290000370300200041406b200541106a290000370300200041386a200541086a29000037030020002005290000370330200041c0026a200041206a413010061a200041a8016a4200370300200041b8016a4280808080e0afb990ac7f37030020004188016a200041d8026a29030037030020004190016a200041e0026a29030037030020004198016a200041e8026a290300370300200041b0016a4200370300200042003703a001200020002903d00237038001200041086a20004180016a100e20002802102104200028020c0c010b20012902042214422088a721042014a70b21032000410036021c200042808080808001370214200404402001410c6a210120004190036a210720004190026a2108200041406b210c200041bc016a2109200041a0016a210a200041e0026a210b200441057421040340200041386a200341186a2206290000370300200041306a200341106a220d290000370300200041286a200341086a220e29000037030020002003290000370320200b41186a2006290000370000200b41106a200d290000370000200b41086a200e290000370000200b2003290000370000200841186a200541186a290000370000200841106a200541106a290000370000200841086a200541086a2900003700002008200529000037000020004180036a20004180026a2206413010061a200041c8026a200141086a290000370300200041d0026a200141106a290000370300200041d8026a200141186a290000370300200020012900003703c0022006200041c0026a41c00010061a200a4200370300200a41086a4200370300200a41106a4200370300200a41186a410036020020004188016a200741086a29030037030020004190016a200741106a29030037030020004198016a200741186a29030037030020002007290300370380012009200641c00010061a200041a5d6c49c7d3602fc01200c20004180016a1010200341206a2103200041146a200041206a1011200441206b22040d000b0b0c050b200241406b2105230041b0036b22002400027f2001280200418080808078460440200041c8006a200541186a290000370300200041406b200541106a290000370300200041386a200541086a29000037030020002005290000370330200041c0026a200041206a413010061a200041a8016a4200370300200041b8016a4280808080e0afb990ac7f37030020004188016a200041d8026a29030037030020004190016a200041e0026a29030037030020004198016a200041e8026a290300370300200041b0016a4200370300200042003703a001200020002903d00237038001200041086a20004180016a100e20002802102104200028020c0c010b20012902042214422088a721042014a70b21032000410036021c200042808080808001370214200404402001410c6a210120004190036a210720004190026a2108200041406b210c200041bc016a2109200041a0016a210a200041e0026a210b200441057421040340200041386a200341186a2206290000370300200041306a200341106a220d290000370300200041286a200341086a220e29000037030020002003290000370320200b41186a2006290000370000200b41106a200d290000370000200b41086a200e290000370000200b2003290000370000200841186a200541186a290000370000200841106a200541106a290000370000200841086a200541086a2900003700002008200529000037000020004180036a20004180026a2206413010061a200041c8026a200141086a290000370300200041d0026a200141106a290000370300200041d8026a200141186a290000370300200020012900003703c0022006200041c0026a41c00010061a200a4200370300200a41086a4200370300200a41106a4200370300200a41186a410036020020004188016a200741086a29030037030020004190016a200741106a29030037030020004198016a200741186a29030037030020002007290300370380012009200641c00010061a200041e58a94b97e3602fc01200c20004180016a1010200341206a2103200041146a200041206a1011200441206b22040d000b0b0c040b230041306b22012400200141186a200241086a410172220041086a290000370200200141206a200041106a290000370200200141286a200041186a2900003702002001200241406b220336020c20012000290000370210200241e8006a22002003200141106a100d200141306a2400230041106b22022400200241808001360208200241a0800436020402402000290300420251044041a080044181023b0100410221000c010b2002410136020c41a0800441003a00002000200241046a101e200228020c220041818001490d00000b0c040b200241406b2107200229021021144100210423004190046b22012400027f200541808080807846044020014188046a200741186a29000037030020014180046a200741106a290000370300200141f8036a200741086a290000370300200120072900003703f003200141b0036a200141e0036a413010061a200141406b4200370300200141d0006a4280808080e0afb990ac7f370300200141206a200141c8036a290300370300200141286a200141d0036a290300370300200141306a200141d8036a290300370300200141c8006a420037030020014200370338200120012903c0033703182001410c6a200141186a100e2001280214210520012802100c010b2014422088a721052014a70b2103200141003602b8032001428080808080013702b00320050440200141386a210b20054105742105410821000340200141306a200341186a2208290000370300200141286a200341106a220a290000370300200141206a200341086a220629000037030020012003290000370318200141f8036a2008290000370300200141f0036a200a290000370300200141e8036a2006290000370300200120032900003703e003200b2007200141e0036a100d200341206a210320012802b0032004460440200141b0036a2108230041206b220024000240200441016a2204044041042008280200220a4101742206200420042006491b2204200441044d1b22044198036c2106200441d1a0c10249410374210c0240200a450440200041003602180c010b200041083602182000200a4198036c36021c200020082802043602140b200041086a200c2006200041146a10162000280208450d01200028020c1a0b000b200028020c210a200820043602002008200a360204200041206a240020012802b803210420012802b40321000b200020044198036c6a200141186a41980310061a2001200441016a22043602b803200541206b22050d000b0b200241e8006a220320012902b003370200200341086a200141b8036a28020036020020014190046a2400230041106b22022400200241808001360208200241a08004360204024020032802004180808080784704402002410136020c41a0800441003a000020032802042100200241046a20032802082201101d20010440200020014198036c6a210103402000200241046a22031012200041206a2003101e20004198036a22002001470d000b0b200228020c220041818001490d01000b41a080044181023b0100410221000b0c030b000b200241406b210420022902102114230041b0026b22012400027f2005418080808078460440200141406b200441186a290000370300200141386a200441106a290000370300200141306a200441086a2900003703002001200429000037032820014180026a200141186a413010061a20014198016a4200370300200141a8016a4280808080e0afb990ac7f370300200141f8006a20014198026a29030037030020014180016a200141a0026a29030037030020014188016a200141a8026a290300370300200141a0016a4200370300200142003703900120012001290390023703702001200141f0006a100e2001280208210020012802040c010b2014422088a721002014a70b21052001410036021420014280808080800137020c20000440200141386a210d200141ac016a210720014190016a210a20004105742108200141e0016a210b20014190026a210641002100410821030340200141306a200541186a220c290000370300200141286a200541106a2209290000370300200141206a200541086a220e29000037030020012005290000370318200641186a200441186a290000370000200641106a200441106a290000370000200641086a200441086a29000037000020062004290000370000200141d0016a20014180026a413010061a200a4200370300200a41086a4200370300200a41106a4200370300200a41186a4100360200200741186a200c290000370000200741106a2009290000370000200741086a200e29000037000020072005290000370000200141f8006a200b41086a29030037030020014180016a200b41106a29030037030020014188016a200b41186a2903003703002001200b290300370370200141c4dbd29f7e3602cc01200d200141f0006a100f200541206a2105200128020c20004604402001410c6a210c230041206b220324000240200041016a220004404104200c2802002209410174220e20002000200e491b2200200041044d1b220041d8006c210e20004198bad10b49410374210f02402009450440200341003602180c010b200341083602182003200941d8006c36021c2003200c2802043602140b200341086a200f200e200341146a10162003280208450d01200328020c1a0b000b200328020c2109200c2000360200200c2009360204200341206a240020012802102103200128021421000b2003200041d8006c6a200141186a41d80010061a2001200041016a2200360214200841206b22080d000b0b200241e8006a2203200129020c370200200341086a200141146a280200360200200141b0026a2400230041106b22022400200241808001360208200241a08004360204024020032802004180808080784704402002410136020c41a0800441003a000020032802042100200241046a20032802082201101d200104402000200141d8006c6a210103402000200241046a22031012200041206a20031020200041d8006a22002001470d000b0b200228020c220041818001490d01000b41a080044181023b0100410221000b0c010b200241e8006a22012000290214370200200141086a2000411c6a280200360200200041b0036a2400230041106b22022400200241808001360208200241a08004360204024020012802004180808080784704402002410136020c41a0800441003a000020012802042100200241046a20012802082201101d200104402000200141e0006c6a210303402000200241046a22011012200041206a290300200041286a29030020011013200041306a290300200041386a29030020011013200041406b290300200041c8006a29030020011013200041d0006a290300200041d8006a29030020011013200041e0006a22002003470d000b0b200228020c220041818001490d01000b41a080044181023b0100410221000b0b41002000101f000b2601017f230041106b220224002002200036020c20012002410c6a41041029200241106a24000bd60201067f230041306b220024000240100c41ff01714105470d0020004180800136020441a08004200041046a2202100120002802042201418180014f0d0002402001410449200141246b415f4b720d0041a080042d0000419b01470d0041a180042d000041ae01470d0041a280042d0000419d01470d0041a380042d000041de00470d0041a480042d000021012000411c6a41bc8004290000370000200041156a41b580042900003700002000410d6a41ad8004290000370000200041a58004290000370005200020013a0004200042808001370228200041a080043602244100200041246a2204102520002802282205200028022c2201490d01200028022421032000410036022c2000200520016b3602282000200120036a360224200220041012200028022c220220002802284b0d01200320012000280224200210031a41a0800441003b010041004102101f000b101b000b000bc90102027f037e230041206b22022400200241186a200110180240024020022d00180d00024020022d00190e020200010b20012802042203411049047e4201052001200341106b36020420012001280200220141106a360200200141086a29000021042001290000210542000b21062002200537030820022006370300200241106a220120043703004202420120022802001b210420012903002105200229030821060c010b420221040b2000200637030820002004370300200041106a2005370300200241206a24000b1d0020005004402003410010210f0b20034101102120012002200310130b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a2001200210061a200020043602080f0b000b000b250020020440419080042d00001a20012002101a21010b20002002360204200020013602000b0b170100418080040b0f100102030405060708090a0b0c0d0e","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"balance_viewer","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"lending_pool","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":4},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":12},"blockNumber":{"displayName":["BlockNumber"],"type":30},"chainExtension":{"displayName":["ChainExtension"],"type":46},"hash":{"displayName":["Hash"],"type":45},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":19}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":30}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":18}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":12}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":12}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":12}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":2}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":41}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":41}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":1}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":1}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":12}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":18}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":18}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":42}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":34}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":43}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":30}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":35}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":35}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":35}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":19}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":44}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":44}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":0}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":12}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":44}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":30}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":44}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":44}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":44}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":6},"messages":[{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}},{"label":"account","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"view_account_balances","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":9},"selector":"0x59c11773"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}}],"default":false,"docs":[],"label":"view_unupdated_reserve_datas","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":13},"selector":"0x76235c59"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}}],"default":false,"docs":[],"label":"view_reserve_datas","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":13},"selector":"0x64739e9a"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}},{"label":"account","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"view_unupdated_account_reserve_datas","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0x320d6e65"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}},{"label":"account","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"view_account_reserve_datas","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0x1ca51027"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"view_complete_reserve_data","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0x85723ecc"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":7}}],"default":false,"docs":[],"label":"view_complete_reserve_datas","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0x58acec39"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":0}},"name":"account_id"}],"name":"__ink_TraitCallBuilderLendingPoolView"}},"name":"lending_pool"}],"name":"BalanceViewer"}},"root_key":"0x00000000","ty":3}},"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":{"composite":{"fields":[{"name":"lending_pool","type":0,"typeName":",>>::Type"}]}},"path":["balance_viewer","balance_viewer","BalanceViewer"]}},{"id":4,"type":{"def":{"variant":{"variants":[{"fields":[{"type":5}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":5},{"name":"E","type":6}],"path":["Result"]}},{"id":5,"type":{"def":{"tuple":[]}}},{"id":6,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":7,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":8}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":8}],"path":["Option"]}},{"id":8,"type":{"def":{"sequence":{"type":0}}}},{"id":9,"type":{"def":{"variant":{"variants":[{"fields":[{"type":10}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":10},{"name":"E","type":6}],"path":["Result"]}},{"id":10,"type":{"def":{"sequence":{"type":11}}}},{"id":11,"type":{"def":{"tuple":[0,12]}}},{"id":12,"type":{"def":{"primitive":"u128"}}},{"id":13,"type":{"def":{"variant":{"variants":[{"fields":[{"type":14}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":14},{"name":"E","type":6}],"path":["Result"]}},{"id":14,"type":{"def":{"sequence":{"type":15}}}},{"id":15,"type":{"def":{"tuple":[0,16]}}},{"id":16,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":17}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":17}],"path":["Option"]}},{"id":17,"type":{"def":{"composite":{"fields":[{"name":"activated","type":18,"typeName":"bool"},{"name":"frozen","type":18,"typeName":"bool"},{"name":"total_deposit","type":12,"typeName":"Balance"},{"name":"current_deposit_rate_e18","type":19,"typeName":"u64"},{"name":"total_debt","type":12,"typeName":"Balance"},{"name":"current_debt_rate_e18","type":19,"typeName":"u64"}]}},"path":["abax_library","structs","reserve_data","ReserveData"]}},{"id":18,"type":{"def":{"primitive":"bool"}}},{"id":19,"type":{"def":{"primitive":"u64"}}},{"id":20,"type":{"def":{"variant":{"variants":[{"fields":[{"type":21}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":21},{"name":"E","type":6}],"path":["Result"]}},{"id":21,"type":{"def":{"sequence":{"type":22}}}},{"id":22,"type":{"def":{"tuple":[0,23]}}},{"id":23,"type":{"def":{"composite":{"fields":[{"name":"deposit","type":12,"typeName":"Balance"},{"name":"debt","type":12,"typeName":"Balance"},{"name":"applied_deposit_index_e18","type":12,"typeName":"u128"},{"name":"applied_debt_index_e18","type":12,"typeName":"u128"}]}},"path":["abax_library","structs","account_reserve_data","AccountReserveData"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":25}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":25},{"name":"E","type":6}],"path":["Result"]}},{"id":25,"type":{"def":{"composite":{"fields":[{"name":"data","type":16,"typeName":"Option"},{"name":"indexes","type":26,"typeName":"Option"},{"name":"interest_rate_model","type":28,"typeName":"Option"},{"name":"fees","type":31,"typeName":"Option"},{"name":"restriction","type":33,"typeName":"Option"},{"name":"decimal_multiplier","type":35,"typeName":"Option"},{"name":"tokens","type":36,"typeName":"Option"}]}},"path":["balance_viewer","balance_viewer","CompleteReserveData"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":27}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":27}],"path":["Option"]}},{"id":27,"type":{"def":{"composite":{"fields":[{"name":"deposit_index_e18","type":12,"typeName":"u128"},{"name":"debt_index_e18","type":12,"typeName":"u128"},{"name":"update_timestamp","type":19,"typeName":"Timestamp"}]}},"path":["abax_library","structs","reserve_indexes_and_fees","ReserveIndexes"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":29}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":29}],"path":["Option"]}},{"id":29,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":30,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":19,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":19,"typeName":"u64"},{"name":"rate_at_target_ur_e18","type":19,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":19,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":19,"typeName":"u64"},{"name":"last_adjustment_timestamp","type":19,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModel"]}},{"id":30,"type":{"def":{"primitive":"u32"}}},{"id":31,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":32}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":32}],"path":["Option"]}},{"id":32,"type":{"def":{"composite":{"fields":[{"name":"deposit_fee_e6","type":30,"typeName":"u32"},{"name":"debt_fee_e6","type":30,"typeName":"u32"},{"name":"earned_fee","type":12,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_indexes_and_fees","ReserveFees"]}},{"id":33,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":34}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":34}],"path":["Option"]}},{"id":34,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":35,"typeName":"Option"},{"name":"maximal_total_debt","type":35,"typeName":"Option"},{"name":"minimal_collateral","type":12,"typeName":"Balance"},{"name":"minimal_debt","type":12,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":12}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":12}],"path":["Option"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":37}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":37}],"path":["Option"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"name":"a_token_address","type":0,"typeName":"AccountId"},{"name":"v_token_address","type":0,"typeName":"AccountId"}]}},"path":["abax_library","structs","reserve_abacus_tokens","ReserveAbacusTokens"]}},{"id":38,"type":{"def":{"variant":{"variants":[{"fields":[{"type":39}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":39},{"name":"E","type":6}],"path":["Result"]}},{"id":39,"type":{"def":{"sequence":{"type":40}}}},{"id":40,"type":{"def":{"tuple":[0,25]}}},{"id":41,"type":{"def":{"primitive":"str"}}},{"id":42,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":30,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":19,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":19,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":19,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":19,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":43,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":30,"typeName":"u32"},{"name":"deposit_fee_e6","type":30,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":45,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":46,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/balance_viewer.json b/artifacts/balance_viewer.json new file mode 100644 index 0000000..faf89fc --- /dev/null +++ b/artifacts/balance_viewer.json @@ -0,0 +1,2358 @@ +{ + "source": { + "hash": "0x80790bb8455f4f72051d2721b120937872009ffc26d21bfc9f8224707d282bd0", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "balance_viewer", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "lending_pool", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 4 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 0 + }, + "balance": { + "displayName": ["Balance"], + "type": 12 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 30 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 46 + }, + "hash": { + "displayName": ["Hash"], + "type": 45 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 19 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 30 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 18 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 12 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 12 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 2 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 41 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 41 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 12 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 18 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 18 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 42 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 34 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 43 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 30 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 35 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 35 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 35 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 19 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 12 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 44 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 44 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 6 + }, + "messages": [ + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "view_account_balances", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 9 + }, + "selector": "0x59c11773" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "view_unupdated_reserve_datas", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 13 + }, + "selector": "0x76235c59" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "view_reserve_datas", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 13 + }, + "selector": "0x64739e9a" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "view_unupdated_account_reserve_datas", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 20 + }, + "selector": "0x320d6e65" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "view_account_reserve_datas", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 20 + }, + "selector": "0x1ca51027" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "view_complete_reserve_data", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 24 + }, + "selector": "0x85723ecc" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "view_complete_reserve_datas", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 38 + }, + "selector": "0x58acec39" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderLendingPoolView" + } + }, + "name": "lending_pool" + } + ], + "name": "BalanceViewer" + } + }, + "root_key": "0x00000000", + "ty": 3 + } + }, + "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": { + "composite": { + "fields": [ + { + "name": "lending_pool", + "type": 0, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["balance_viewer", "balance_viewer", "BalanceViewer"] + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 5 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 5 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 5, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 6, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 7, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 8 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 8 + } + ], + "path": ["Option"] + } + }, + { + "id": 8, + "type": { + "def": { + "sequence": { + "type": 0 + } + } + } + }, + { + "id": 9, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 10 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 10, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "tuple": [0, 12] + } + } + }, + { + "id": 12, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 13, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 14 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 14 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 14, + "type": { + "def": { + "sequence": { + "type": 15 + } + } + } + }, + { + "id": 15, + "type": { + "def": { + "tuple": [0, 16] + } + } + }, + { + "id": 16, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 17 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 17 + } + ], + "path": ["Option"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "activated", + "type": 18, + "typeName": "bool" + }, + { + "name": "frozen", + "type": 18, + "typeName": "bool" + }, + { + "name": "total_deposit", + "type": 12, + "typeName": "Balance" + }, + { + "name": "current_deposit_rate_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "total_debt", + "type": 12, + "typeName": "Balance" + }, + { + "name": "current_debt_rate_e18", + "type": 19, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_data", "ReserveData"] + } + }, + { + "id": 18, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 19, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 20, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 21 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 21 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 21, + "type": { + "def": { + "sequence": { + "type": 22 + } + } + } + }, + { + "id": 22, + "type": { + "def": { + "tuple": [0, 23] + } + } + }, + { + "id": 23, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit", + "type": 12, + "typeName": "Balance" + }, + { + "name": "debt", + "type": 12, + "typeName": "Balance" + }, + { + "name": "applied_deposit_index_e18", + "type": 12, + "typeName": "u128" + }, + { + "name": "applied_debt_index_e18", + "type": 12, + "typeName": "u128" + } + ] + } + }, + "path": ["abax_library", "structs", "account_reserve_data", "AccountReserveData"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 25 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 25 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "data", + "type": 16, + "typeName": "Option" + }, + { + "name": "indexes", + "type": 26, + "typeName": "Option" + }, + { + "name": "interest_rate_model", + "type": 28, + "typeName": "Option" + }, + { + "name": "fees", + "type": 31, + "typeName": "Option" + }, + { + "name": "restriction", + "type": 33, + "typeName": "Option" + }, + { + "name": "decimal_multiplier", + "type": 35, + "typeName": "Option" + }, + { + "name": "tokens", + "type": 36, + "typeName": "Option" + } + ] + } + }, + "path": ["balance_viewer", "balance_viewer", "CompleteReserveData"] + } + }, + { + "id": 26, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 27 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 27 + } + ], + "path": ["Option"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit_index_e18", + "type": 12, + "typeName": "u128" + }, + { + "name": "debt_index_e18", + "type": 12, + "typeName": "u128" + }, + { + "name": "update_timestamp", + "type": 19, + "typeName": "Timestamp" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_indexes_and_fees", "ReserveIndexes"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 29 + } + ], + "path": ["Option"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "rate_at_target_ur_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 19, + "typeName": "u64" + }, + { + "name": "last_adjustment_timestamp", + "type": 19, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModel"] + } + }, + { + "id": 30, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 32 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 32 + } + ], + "path": ["Option"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit_fee_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "debt_fee_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "earned_fee", + "type": 12, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_indexes_and_fees", "ReserveFees"] + } + }, + { + "id": 33, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 34 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 34 + } + ], + "path": ["Option"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 35, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 35, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 12, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 12, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 35, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 12 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 12 + } + ], + "path": ["Option"] + } + }, + { + "id": 36, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 37 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 37 + } + ], + "path": ["Option"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "a_token_address", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "v_token_address", + "type": 0, + "typeName": "AccountId" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_abacus_tokens", "ReserveAbacusTokens"] + } + }, + { + "id": 38, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 39 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 39 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 39, + "type": { + "def": { + "sequence": { + "type": 40 + } + } + } + }, + { + "id": 40, + "type": { + "def": { + "tuple": [0, 25] + } + } + }, + { + "id": 41, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 42, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 19, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 19, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 30, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 46, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/balance_viewer.wasm b/artifacts/balance_viewer.wasm new file mode 100644 index 0000000..20ed2c3 Binary files /dev/null and b/artifacts/balance_viewer.wasm differ diff --git a/artifacts/dia_oracle.contract b/artifacts/dia_oracle.contract new file mode 100644 index 0000000..48e3b27 --- /dev/null +++ b/artifacts/dia_oracle.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x30c7bdc675e99691b53c94d7f31b2b073c156f9c6fc85112baa00bc10a3f4642","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001550f60027f7f0060037f7f7f0060017f0060037f7f7f017f60047f7f7f7f0060027f7f017f60000060047f7f7f7f017f60017f017f60047f7e7e7e0060047e7e7e7f0060027e7f0060037e7e7f006000017f6000017e02e9010c057365616c310b6765745f73746f726167650007057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e740004057365616c320b7365745f73746f726167650007057365616c300b7365616c5f72657475726e0001057365616c300d7365745f636f64655f686173680008057365616c300d6f776e5f636f64655f686173680000057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f72790201021003333203030303020002000001090a00010201000000000b0c020101000202020d05000e01000405050006000000060006030401000616037f01418080040b7f00418083050b7f0041f482050b0711020463616c6c0036066465706c6f7900380ab758322b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bd70201057f23004180016b22012400200142808001370244200141f482043602404101200141406b2205101002402001280244220420012802482202490d00200128024021032001200420026b220436024020032002200220036a2202200510002105200420012802402203490d002000027f02400240024020050e0400040401040b20034160714120462003412049720d0020022d00002104200141f7006a200241386a290000370000200141ef006a200241306a290000370000200141e7006a200241286a290000370000200141c8006a200241096a290000370300200141d0006a200241116a290000370300200141d7006a200241186a2900003700002001200229002037005f20012002290001370340200141016a200141406b413f100b1a200341c000460d010b41000c010b200041026a200141016a413f100b1a200020043a000141010b3a000020014180016a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a4104101a200241106a24000b950101057f230041106b22012400200142808001370208200141f482043602044101200141046a22031010024020012802082205200128020c2202490d00200128020421042001410036020c2001200520026b3602082001200220046a360204200020031012200041206a20031012200128020c220020012802084b0d00200420022001280204200010031a200141106a24000f0b000b0a00200120004120101a0bf10102047f047e230041106b220224002001280208210320012802042101200242808001370208200241f482043602044198afa8d800200241046a220410102001200320041014024020022802082205200228020c2201490d00200228020421032002200520016b220536020420032001200120036a2201200410002104200520022802042203490d00027e0240024020040e0400030301030b20034118472003411849720d02200141106a2900002107200129000821084201210620012900000c010b42100b2109200020083703102000200937030820002006370300200041186a2007370300200241106a24000f0b000b100020022001102d200220002001101a0baa0101047f230041106b220424002000280208210520002802042100200442808001370208200441f482043602044198afa8d800200441046a220710102000200520071014024020042802082206200428020c2200490d00200428020421052004410036020c2004200620006b3602082004200020056a36020420012002200320071016200428020c220620042802084b0d00200520002004280204200610031a200441106a24000f0b000b100020002003101f20012002200310200ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061012200228020c220120022802084b0d0020062002280204200110182002410036022c20022004360228200220053602242006200241246a10122003200228022c6a22012003490d0020002001360208200241306a24000f0b000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a100a200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100b1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000bb40101077f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a2204360204200141003a0024200141046a2205200141246a22064101101a200128020c220720012802084b0d0020052001280204200710182001410036022c200120033602282001200436022420052006101220022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100b1a200020043602080f0b000b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a101c20012001200228020c6a22014b0d0020002001360208200241106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410350c010b200041ffff004d0440200220004102744101723b010e20012002410e6a4102101a0c010b200041ffffffff034d04402000410274410272200110100c010b2001410310352000200110100b200241106a24000be10102037f037e230041306b22022400200241246a2001101e024002402002280224418080808078460d00200241086a210320012802042204411049047e4201052001200441106b36020420012001280200220141106a360200200141086a29000021052001290000210642000b21072003200637030820032007370300200341106a20053703002002290308a70d00200241186a2903002105200229031021062000200229022437020020002006370310200041186a2005370300200041086a2002412c6a2802003602000c010b20004180808080783602000b200241306a24000bd70501097f230041106b22062400200641086a2001103702400240024020062802080d0020012802042205200628020c2202490d00200620024101102c200628020021082006280204200128020022032002100b21042001200520026b3602042001200220036a3602002008418080808078460d002002450d01200241076b22014100200120024d1b2109200441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541e380046a2d000041026b0e03030102080b200a20016b4103710d09200120094f0d080340200120046a220541046a280200200528020072418081828478710d092009200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002008ad2004ad422086843702000b200641106a24000b2601017f230041106b22022400200220003703082001200241086a4108101a200241106a24000b2a01017f230041106b220324002003200137030820032000370300200220034110101a200341106a24000b0a00200041818004103c0bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071012200328020c220220032802084b0d0220072003280204200210182003410036022c20032005360228200320063602242007200341246a10122004200328022c6a22022004490d02200120023602080c010b200110190b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000bd40101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002280200200341046a22071012200328020c220220032802084b0d0220072003280204200210182003410036022c20032005360228200320063602242007200341246a10122004200328022c6a22022004490d02200120023602080c010b200110190b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b210020002d00004504402001410010350f0b200141011035200041016a200110120bd202010a7f230041406a22012400200142808001370208200141f48204360204200141046a4102101b200141186a22022001410c6a28020036020020012001290204370310200141106a220341c38004101702402001280214220420022802002202490d0020012802102105200141003602182001200420026b22063602142001200220056a22073602102000411c6a2802002208200041206a2802002209200310142001280218220a20012802144b0d0020032001280210200a10182001410036023c20012006360238200120073602342003200141346a101220022002200128023c6a22024b200220044b720d00200141003602182001200420026b3602142001200220056a36021020082009200310142000290300200041086a2903002003102020002903102003101f2001280218220020012802144b0d0020052002200128021020001002200141406b24000f0b000b0a00200041a28004103c0b850101027f230041106b2201240020014180800136020c41f482042001410c6a1007200128020c2202418180014f2002411f4d72450440200041f58204290000370001200041096a41fd8204290000370000200041116a41858304290000370000200041186a418c8304290000370000200041f482042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1008200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b0b00200020014120100e450bb40101047f230041206b220224000240200141016a220104404104200028020022034101742204200120012004491b2201200141044d1b220141057421042001418080802049410374210502402003450440200241003602180c010b200241083602182002200341057436021c200220002802043602140b200241086a20052004200241146a102e2002280208450d01200228020c1a0b000b200228020c21032000200136020020002003360204200241206a24000b4202017f017e230041106b22002400200042003703002000410836020c20002000410c6a1009200028020c41094f0440000b20002903002101200041106a240020010b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001103b20032802080c010b2003200420014101103a20032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b2401017f230041106b220224002002200136020c2002410c6a2000101c200241106a24000bea0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100103a20042802082103200428020c0c020b2003280200210602402001200210302203450440410021030c010b200320062005100b1a0b20020c010b200420012002103b2004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b100041e482042d00001a2000200110300bc50101017f027f41e882042d0000044041ec82042802000c010b3f00210241ec82044180830536020041e8820441013a000041f082042002411074360200418083050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a41f082042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d0241f0820420023602004100200020016a22022000490d011a0b41ec8204200236020020000b0f0b41000b3c01027f027f200145044041f48204210141010c010b4101210241f4820441013a000041f58204210141020b2103200120023a0000200020031033000b5301037f230041106b22002400200042808001370208200041f482043602044100200041046a1010200028020c220120002802084b0440000b200028020422022001200120026a410010031a200041106a24000b0d00200041f4820420011004000b310020002903005004402001410010350f0b2001410110352000290308200041106a290300200041186a290300200110160b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000be324020b7f037e230041a0016b22002400024002400240102841ff01714105470d0020004180800136021841f48204200041186a100120002802182204418180014f0d00027f0240024020044104490d00200041f882043602402000200441046b220636024441f782042d0000210241f682042d0000210341f582042d00002101027f02400240024002400240024002400240024041f482042d0000220541bc016b0e020102000b2005410e470440200541f801460d03200541e900460d04200541c801470440200541d901470440200541ce0047200141ff017141cf014772200341ff017141a40147200241ff017141b8014772722006412049720d0c200041d0006a418c8304290200370300200041d8006a4194830428020036020020004198830436024020004184830429020037034841ff820428000022014108762103418383042d0000210441fb8204280000210241f982042f0000210641f882042d0000210741000c0e0b200141ff0171411747200341ff017141274772200241ff017141d50047200641204972720d0b200041d0006a418c8304290200370300200041d8006a4194830428020036020020004198830436024020004184830429020037034841ff820428000022014108762103418383042d0000210441fb8204280000210241f982042f0000210641f882042d0000210741010c0d0b200141ff0171411247200341ff017141fd014772200241ff017141a70147720d0a200041186a200041406b101d20002802182201418080808078460d0a200041d0006a200041256a290000370300200041d8006a2000412d6a290000370300200041df006a200041346a2800003600002000200029001d3703482001410876210320002d001c210441020c0c0b200141ff017141d60147200341ff017141dc004772200241ff017141b00147720d09200041086a200041406b103720002802080d094108210120002802444105762202200028020c220320022003491b22020440200241ffffff1f4b0d0d200241057422014100480d0d41082001102f2201450d0d0b4100210420004100360274200020013602702000200236026c2003450d06200041186a41047221020340200041186a200041406b101d20002802182205418080808078460d0a20004190016a2206200241186a28020036020020004188016a2207200241106a29020037030020004180016a2208200241086a29020037030020002002290200370378200028026c2004460440200041ec006a2004102a20002802742104200028027021010b200120044105746a22042005360200200420002903783702042004410c6a2008290300370200200441146a20072903003702002004411c6a20062802003602002000200028027441016a2204360274200341016b22030d000b200041ea006a200041f7006a2d00003a0000200020002f00753b0168200028026c2202418080808078460d0920002f0071200041f3006a2d000041107472210320002d007021010c0a0b200141ff017141c30147200341ff017141014772200241ff017141b40147720d0841040c0a0b200141ff0171220441e900460d02200441df0147200341ff017141a60147720d07200241ff0171412d460d030c070b200141ff017141e90147200341ff017141c9014772200241ff0171413947720d06200041106a200041406b103720002802100d06410421012000280244410c6e22022000280214220320022003491b22020440200241aad5aad5004b0d0a2002410c6c22014100480d0a41042001102f2201450d0a0b4100210420004100360280012000200136027c200020023602782003450d040340200041186a200041406b101e20002802182208418080808078460d07200029021c210b20002802782004460440200041f8006a2102230041206b220124000240200441016a220404404104200228020022054101742209200420042009491b2204200441044d1b2204410c6c2109200441abd5aad50049410274210a02402005450440200141003602180c010b2001410436021820012005410c6c36021c200120022802043602140b200141086a200a2009200141146a102e2001280208450d01200128020c1a0b000b200128020c21052002200436020020022005360204200141206a24002000280280012104200028027c21010b20012004410c6c6a2202200b37020420022008360200200020002802800141016a220436028001200341016b22030d000b200041ee006a20004183016a2d00003a0000200020002f0081013b016c20002802782202418080808078460d0620002d007c210120002f007d200041ff006a2d0000411074720c050b200141ff017141cf0047200341ff017141b5014772200241ff0171410f47200641204972720d05200041d0006a418c8304290200370300200041d8006a419483042802003602002000419883043602402000200441246b36024420004184830429020037034841ff820428000022014108762103418383042d0000210441fb8204280000210241f982042f0000210641f882042d0000210741080c070b200341ff017141ce0147200241ff017141a70147720d0441070c060b200041186a200041406b101e20002802182202418080808078460d03200020002f00213b01482000200041236a2d00003a004a20002f001d2000411f6a2d000041107472210320002d0020210420002d001c210141050c050b200041ea006a200041f7006a2d00003a0000200020002f00753b0168200141087621030c030b200041ee006a20004183016a2d00003a0000200020002f0081013b016c20014108760b2103200020002f016c3b01482000200041ee006a2d00003a004a41060c020b410141011031000b200020002f01683b01482000200041ea006a2d00003a004a41030b21052000413c6a200041df006a280000360000200041356a200041d8006a2903003700002000412d6a200041d0006a29030037000020002000290348370025200020043a00242000200236021c200020063b011a200020073a0019200020053a00182000200141ff017120034108747236022020004280800137027c200041f482043602784100200041f8006a22031010200028027c22042000280280012201490d00200028027821022000200420016b220436027820022001200120026a2003100020042000280278220149722001720d00200041186a2201410472210320014101722102024002400240024002400240024002400240200541016b0e080102030704050806000b230041b0016b22012400200141086a22031027200141ef006a2204100f0240024020012d006f450d00200141286a2200200141f0006a41c000100b1a200320001029450d00200141406b200241186a2203290000370300200141386a200241106a2206290000370300200141306a200241086a2205290000370300200120022900003703282000101120014188016a200141206a29000037000020014180016a200141186a290000370000200141f8006a200141106a29000037000020014198016a2005290000370000200141a0016a2006290000370000200141a8016a200329000037000020012001290008370070200141013a006f200120022900003700900120041021200141b0016a24000c010b000b0c090b230041b0016b220124002001410f6a22031027200141ef006a2204100f0240024020012d006f450d002001412f6a2200200141f0006a41c000100b1a200320001029450d00200141e7006a200241186a2203290000370000200141df006a200241106a2206290000370000200141d7006a200241086a22052900003700002001200229000037004f2000101120014188016a200141276a29000037000020014180016a2001411f6a290000370000200141f8006a200141176a29000037000020014198016a2005290000370000200141a0016a2006290000370000200141a8016a20032900003700002001200129000f370070200141013a006f200120022900003700900120041026200141b0016a24000c010b000b0c080b230041b0016b22012400200041206a220041186a290300210b2000290310210c200028020821022000280204210320002802002104200141086a22061027200141e8006a2200100f0240024020012d0068450d00200141286a2205200141e9006a41c000100b1a2006200141c8006a1029450d00102b210d200120024100102c20012802002106200128020420032002100b2107200120023602702001200736026c200120063602682000200d200c200b10152005101120014188016a200236020020014184016a20033602002001200b3703702001200c37036820012004360280012001200d37037820001025200141b0016a24000c010b000b0c070b230041b0016b220124002003280208210220032802042100200141086a22031027200141e8006a100f0240024020012d0068450d00200141286a200141e9006a41c000100b1a2003200141c8006a1029450d00102b210b02402002450d00200020024105746a2104034020002802002206418080808078460d01200041186a290300210c2000290310210d200028020421032001200028020822024100102c20012802002105200128020420032002100b2107200120023602702001200736026c20012005360268200141e8006a2205200b200d200c10152001200c3703702001200d3703682001200236028801200120033602840120012006360280012001200b37037820051025200041206a22002004470d000b0b200141286a1011200141b0016a24000c010b000b0c060b200041d0006a200341086a28020036020020002003290200370348230041e0006b22022400200241186a200041c8006a220141086a28020036020020022000419f016a36020c200220012902003702102002411f6a100f20022d001f450440000b200041f8006a2201200241106a1013200241e0006a2400230041106b22002400200041808001360208200041f4820436020402402001290300420251044041f482044181023b0100410221010c010b2000410136020c41f4820441003a00002001200041046a1034200028020c220141818001490d00000b410020011033000b200041f8006a2104230041e0006b2201240020032802082100200328020421022001410036020c200142808080808001370204200141106a100f024020012d0010044002402000450d0020022000410c6c6a21054100210041082106034020022802002203418080808078460d012001200336025420012002290204370258200141106a200141d4006a101320012802042000460440200141046a2000102a20012802082106200128020c21000b200620004105746a22032001290310370300200341186a200141286a290300370300200341106a200141206a290300370300200341086a200141186a2903003703002001200041016a220036020c2002410c6a22022005470d000b0b20042001290204370200200441086a2001410c6a280200360200200141e0006a24000c010b000b230041106b22012400200141808001360208200141f48204360204024020042802004180808080784704402001410136020c41f4820441003a000020042802042100200141046a20042802082202102d200204402002410574210203402000200141046a1034200041206a2100200241206b22020d000b0b200128020c220041818001490d01000b41f482044181023b0100410221000b410020001033000b230041b0016b22012400200141086a22001027200141e8006a2203100f0240024020012d0068450d00200141286a2204200141e9006a41c000100b1a200020041029450d0020014180016a200241186a290000370300200141f8006a200241106a290000370300200141f0006a200241086a29000037030020012002290000370368200310050d00200141b0016a24000c010b000b0c030b200041f8006a2201410172210323004190016b22022400200241cf006a100f20022d004f450440000b2002410f6a200241d0006a41c000100b1a200341186a200241c7006a290000370000200341106a2002413f6a290000370000200341086a200241376a2900003700002003200229002f37000020024190016a24000c030b230041106b220324002003412036020c41f482042003410c6a1006200041f8006a2201410172220241f58204290000370001200241096a41fd8204290000370000200241116a41858304290000370000200241186a418c8304290000370000200241f482042d00003a0000200341106a24000c020b000b1032410041001031000b200041003a0078230041106b22002400200041808001360208200041f48204360204024020012d0000044041f482044181023b0100410221010c010b41f4820441003a00002000410136020c200141016a200041046a1012200028020c220141818001490d00000b410020011033000bc50201067f230041106b22022400024020012802042207450440410121030c010b200128020022062d000021052001200741016b2204360204410121032001200641016a3602000240024002400240200541037141016b0e03020301000b20054102762104410021030c030b2004410449200541044f720d02200628000121042001200741056b3602042001200641056a36020020044180808080044921030c020b200241096a20053a0000200241013a000820022001360204200241003b010c200241046a2002410c6a410210390d0120022f010c220141ff014d0d0120014102762104410021030c010b200241096a20053a0000200241013a0008200220013602042002410036020c200241046a2002410c6a410410390d00200228020c220141027621042001418080044921030b2000200436020420002003360200200241106a24000b8f0302087f037e230041f0006b2200240002400240102841ff01714105470d0020004180800136022841f48204200041286a100120002802282201418180014f0d00200141044f044041f482042d0000419b014741f582042d000041ae01477241f682042d0000419d01477241f782042d000041de004772450d020b410141011031000b000b200041086a1027200041d1006a2205200041106a2201290000370000200041d9006a2206200041186a2202290000370000200041e1006a2207200041206a2203290000370000200041003a002820002000290008370049200041286a22041021200520012900003700002006200229000037000020072003290000370000200041003a00282000200029000837004920041026200041406b20032900002208370300200041386a20022900002209370300200041306a2001290000220a370300200041d0006a200a370300200041d8006a2009370300200041e0006a20083703002000200029000822083703282000200837034820041011103241f4820441003b0100410041021033000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100b1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100b1a0b2000200320026b3602042000200120026a36020041000b0b2b0020020440200345044041e482042d00001a0b20012002103021010b20002002360204200020013602000b3901017f230041106b22032400200341086a200120024100103a200328020c21012000200328020836020020002001360204200341106a24000b940201067f23004180016b22022400200241086a2205200041c100100b1a200242808001370254200241f482043602502002200241296a220436025c200241d0006a4103101b200241f8006a2200200241d8006a28020036020020022002290250370370200241f0006a220320011017200241e8006a2000280200360200200220022903703703602003200241e0006a22002005410172410020022d00081b102220002003200241dc006a102302402002280264220720022802682200490d0020022802602106200241003602782002200720006b3602742002200020066a3602702005200310242004200310122002280278220420022802744b0d002006200020022802702004100220024180016a24000f0b000b0ba6020200418080040be30101f363ee3187c9dfdb16a8d9436920bc4e73b5e9cc4ce69a2ad51fdbb4bc105b390130dc916d115e1f67227a6c63b7dfc08de7c2cf284fc50891334f1848abf1481b0128053f279c683bfadeb53d25879f1c616b885477142009a6def019e2e1e5df9001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041a582040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"dia_oracle","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":18},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":4},"blockNumber":{"displayName":["BlockNumber"],"type":30},"chainExtension":{"displayName":["ChainExtension"],"type":37},"hash":{"displayName":["Hash"],"type":21},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":3}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":30}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":31}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":4}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":4}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":4}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":2}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":6}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":6}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":1}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":1}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":4}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":31}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":31}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":32}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":33}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":35}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":30}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":34}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":34}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":34}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":0}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":3}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":[],"indexed":true,"label":"previous_owner","type":{"displayName":["Option"],"type":36}},{"docs":[],"indexed":true,"label":"new_owner","type":{"displayName":["AccountId"],"type":0}}],"docs":[],"label":"OwnershipTransferred","module_path":"dia_oracle::oracle_anchor","signature_topic":"0xf363ee3187c9dfdb16a8d9436920bc4e73b5e9cc4ce69a2ad51fdbb4bc105b39"},{"args":[{"docs":[],"indexed":true,"label":"old","type":{"displayName":["Option"],"type":36}},{"docs":[],"indexed":true,"label":"new","type":{"displayName":["AccountId"],"type":0}}],"docs":[],"label":"UpdaterChanged","module_path":"dia_oracle::oracle_anchor","signature_topic":"0x30dc916d115e1f67227a6c63b7dfc08de7c2cf284fc50891334f1848abf1481b"},{"args":[{"docs":[],"indexed":true,"label":"pair","type":{"displayName":["String"],"type":6}},{"docs":[],"indexed":false,"label":"price","type":{"displayName":["u128"],"type":4}},{"docs":[],"indexed":false,"label":"timestamp","type":{"displayName":["u64"],"type":3}}],"docs":[],"label":"TokenPriceChanged","module_path":"dia_oracle::oracle_anchor","signature_topic":"0x28053f279c683bfadeb53d25879f1c616b885477142009a6def019e2e1e5df90"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":36}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":36}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":0}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":4}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":36}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":30}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":36}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":36}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":30}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":36}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":19},"messages":[{"args":[],"default":false,"docs":[],"label":"code_hash","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":20},"selector":"0xbd69cea7"},{"args":[{"label":"code_hash","type":{"displayName":[],"type":1}}],"default":false,"docs":[],"label":"set_code","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0x694fb50f"},{"args":[{"label":"new_owner","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"OracleSetters::transfer_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0x4ecfa4b8"},{"args":[{"label":"updater","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"OracleSetters::set_updater","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0xd9172755"},{"args":[{"label":"pair","type":{"displayName":["String"],"type":6}},{"label":"price","type":{"displayName":["u128"],"type":4}}],"default":false,"docs":[],"label":"OracleSetters::set_price","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0xc812fda7"},{"args":[{"label":"pairs","type":{"displayName":["Vec"],"type":22}}],"default":false,"docs":[],"label":"OracleSetters::set_prices","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0x0ed65cb0"},{"args":[],"default":false,"docs":[],"label":"OracleGetters::get_updater","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":24},"selector":"0xbcc301b4"},{"args":[{"label":"pair","type":{"displayName":["String"],"type":6}}],"default":false,"docs":[],"label":"OracleGetters::get_latest_price","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":25},"selector":"0xbddfa62d"},{"args":[{"label":"pairs","type":{"displayName":["Vec"],"type":27}}],"default":false,"docs":[],"label":"OracleGetters::get_latest_prices","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":28},"selector":"0xf8e9c939"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x01000000","ty":0}},"name":"owner"},{"layout":{"leaf":{"key":"0x01000000","ty":0}},"name":"updater"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x98170a0b","ty":3}},"name":"0"},{"layout":{"leaf":{"key":"0x98170a0b","ty":4}},"name":"1"}],"name":"(A, B)"}},"root_key":"0x98170a0b","ty":5}},"name":"pairs"}],"name":"TokenPriceStruct"}},"root_key":"0x01000000","ty":12}},"name":"data"}],"name":"TokenPriceStorage"}},"root_key":"0x00000000","ty":17}},"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":"u64"}}},{"id":4,"type":{"def":{"primitive":"u128"}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"K","type":6},{"name":"V","type":7},{"name":"KeyType","type":8}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":6,"type":{"def":{"primitive":"str"}}},{"id":7,"type":{"def":{"tuple":[3,4]}}},{"id":8,"type":{"def":{"composite":{}},"params":[{"name":"L","type":9},{"name":"R","type":10}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":9,"type":{"def":{"composite":{}},"path":["ink_storage_traits","impls","AutoKey"]}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":11}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":11,"type":{"def":{"tuple":[]}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"V","type":13},{"name":"KeyType","type":14}],"path":["ink_storage","lazy","Lazy"]}},{"id":13,"type":{"def":{"composite":{"fields":[{"name":"owner","type":0,"typeName":",>>::Type"},{"name":"updater","type":0,"typeName":",>>::Type"},{"name":"pairs","type":5,"typeName":" as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<185210776u32, ()\n>,>>::Type"}]}},"path":["dia_oracle","oracle_anchor","TokenPriceStruct"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"L","type":15},{"name":"R","type":16}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":11}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":11}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{"fields":[{"name":"data","type":12,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<818540694u32,\n()>,>>::Type"}]}},"path":["dia_oracle","oracle_anchor","TokenPriceStorage"]}},{"id":18,"type":{"def":{"variant":{"variants":[{"fields":[{"type":11}],"index":0,"name":"Ok"},{"fields":[{"type":19}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":11},{"name":"E","type":19}],"path":["Result"]}},{"id":19,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":20,"type":{"def":{"variant":{"variants":[{"fields":[{"type":21}],"index":0,"name":"Ok"},{"fields":[{"type":19}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":21},{"name":"E","type":19}],"path":["Result"]}},{"id":21,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":22,"type":{"def":{"sequence":{"type":23}}}},{"id":23,"type":{"def":{"tuple":[6,4]}}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":19}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":19}],"path":["Result"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":26}],"index":0,"name":"Ok"},{"fields":[{"type":19}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":26},{"name":"E","type":19}],"path":["Result"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":7}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":7}],"path":["Option"]}},{"id":27,"type":{"def":{"sequence":{"type":6}}}},{"id":28,"type":{"def":{"variant":{"variants":[{"fields":[{"type":29}],"index":0,"name":"Ok"},{"fields":[{"type":19}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":29},{"name":"E","type":19}],"path":["Result"]}},{"id":29,"type":{"def":{"sequence":{"type":26}}}},{"id":30,"type":{"def":{"primitive":"u32"}}},{"id":31,"type":{"def":{"primitive":"bool"}}},{"id":32,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":30,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":3,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":3,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":3,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":3,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":33,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":34,"typeName":"Option"},{"name":"maximal_total_debt","type":34,"typeName":"Option"},{"name":"minimal_collateral","type":4,"typeName":"Balance"},{"name":"minimal_debt","type":4,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":34,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":4}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":4}],"path":["Option"]}},{"id":35,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":30,"typeName":"u32"},{"name":"deposit_fee_e6","type":30,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":37,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/dia_oracle.json b/artifacts/dia_oracle.json new file mode 100644 index 0000000..ad2de9e --- /dev/null +++ b/artifacts/dia_oracle.json @@ -0,0 +1,2153 @@ +{ + "source": { + "hash": "0x30c7bdc675e99691b53c94d7f31b2b073c156f9c6fc85112baa00bc10a3f4642", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "dia_oracle", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 18 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 0 + }, + "balance": { + "displayName": ["Balance"], + "type": 4 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 30 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 37 + }, + "hash": { + "displayName": ["Hash"], + "type": 21 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 3 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 30 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 31 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 2 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 6 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 6 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 4 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 31 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 31 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 32 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 33 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 35 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 30 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 34 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 34 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 34 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 3 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "previous_owner", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": [], + "indexed": true, + "label": "new_owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [], + "label": "OwnershipTransferred", + "module_path": "dia_oracle::oracle_anchor", + "signature_topic": "0xf363ee3187c9dfdb16a8d9436920bc4e73b5e9cc4ce69a2ad51fdbb4bc105b39" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "old", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": [], + "indexed": true, + "label": "new", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [], + "label": "UpdaterChanged", + "module_path": "dia_oracle::oracle_anchor", + "signature_topic": "0x30dc916d115e1f67227a6c63b7dfc08de7c2cf284fc50891334f1848abf1481b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "pair", + "type": { + "displayName": ["String"], + "type": 6 + } + }, + { + "docs": [], + "indexed": false, + "label": "price", + "type": { + "displayName": ["u128"], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "timestamp", + "type": { + "displayName": ["u64"], + "type": 3 + } + } + ], + "docs": [], + "label": "TokenPriceChanged", + "module_path": "dia_oracle::oracle_anchor", + "signature_topic": "0x28053f279c683bfadeb53d25879f1c616b885477142009a6def019e2e1e5df90" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 4 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 36 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 30 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 36 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 19 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "code_hash", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 20 + }, + "selector": "0xbd69cea7" + }, + { + "args": [ + { + "label": "code_hash", + "type": { + "displayName": [], + "type": 1 + } + } + ], + "default": false, + "docs": [], + "label": "set_code", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0x694fb50f" + }, + { + "args": [ + { + "label": "new_owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "OracleSetters::transfer_ownership", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0x4ecfa4b8" + }, + { + "args": [ + { + "label": "updater", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "OracleSetters::set_updater", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0xd9172755" + }, + { + "args": [ + { + "label": "pair", + "type": { + "displayName": ["String"], + "type": 6 + } + }, + { + "label": "price", + "type": { + "displayName": ["u128"], + "type": 4 + } + } + ], + "default": false, + "docs": [], + "label": "OracleSetters::set_price", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0xc812fda7" + }, + { + "args": [ + { + "label": "pairs", + "type": { + "displayName": ["Vec"], + "type": 22 + } + } + ], + "default": false, + "docs": [], + "label": "OracleSetters::set_prices", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0x0ed65cb0" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "OracleGetters::get_updater", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 24 + }, + "selector": "0xbcc301b4" + }, + { + "args": [ + { + "label": "pair", + "type": { + "displayName": ["String"], + "type": 6 + } + } + ], + "default": false, + "docs": [], + "label": "OracleGetters::get_latest_price", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 25 + }, + "selector": "0xbddfa62d" + }, + { + "args": [ + { + "label": "pairs", + "type": { + "displayName": ["Vec"], + "type": 27 + } + } + ], + "default": false, + "docs": [], + "label": "OracleGetters::get_latest_prices", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 28 + }, + "selector": "0xf8e9c939" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x01000000", + "ty": 0 + } + }, + "name": "owner" + }, + { + "layout": { + "leaf": { + "key": "0x01000000", + "ty": 0 + } + }, + "name": "updater" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x98170a0b", + "ty": 3 + } + }, + "name": "0" + }, + { + "layout": { + "leaf": { + "key": "0x98170a0b", + "ty": 4 + } + }, + "name": "1" + } + ], + "name": "(A, B)" + } + }, + "root_key": "0x98170a0b", + "ty": 5 + } + }, + "name": "pairs" + } + ], + "name": "TokenPriceStruct" + } + }, + "root_key": "0x01000000", + "ty": 12 + } + }, + "name": "data" + } + ], + "name": "TokenPriceStorage" + } + }, + "root_key": "0x00000000", + "ty": 17 + } + }, + "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": "u64" + } + } + }, + { + "id": 4, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 6 + }, + { + "name": "V", + "type": 7 + }, + { + "name": "KeyType", + "type": 8 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 6, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [3, 4] + } + } + }, + { + "id": 8, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 9 + }, + { + "name": "R", + "type": 10 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": {} + }, + "path": ["ink_storage_traits", "impls", "AutoKey"] + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 11 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 11, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 13 + }, + { + "name": "KeyType", + "type": 14 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": ",>>::Type" + }, + { + "name": "updater", + "type": 0, + "typeName": ",>>::Type" + }, + { + "name": "pairs", + "type": 5, + "typeName": " as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<185210776u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["dia_oracle", "oracle_anchor", "TokenPriceStruct"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 15 + }, + { + "name": "R", + "type": 16 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 11 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 11 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "data", + "type": 12, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<818540694u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["dia_oracle", "oracle_anchor", "TokenPriceStorage"] + } + }, + { + "id": 18, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 11 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 11 + }, + { + "name": "E", + "type": 19 + } + ], + "path": ["Result"] + } + }, + { + "id": 19, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 20, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 21 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 21 + }, + { + "name": "E", + "type": 19 + } + ], + "path": ["Result"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 22, + "type": { + "def": { + "sequence": { + "type": 23 + } + } + } + }, + { + "id": 23, + "type": { + "def": { + "tuple": [6, 4] + } + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 19 + } + ], + "path": ["Result"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 26 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 26 + }, + { + "name": "E", + "type": 19 + } + ], + "path": ["Result"] + } + }, + { + "id": 26, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 7 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + } + ], + "path": ["Option"] + } + }, + { + "id": 27, + "type": { + "def": { + "sequence": { + "type": 6 + } + } + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 29 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 29 + }, + { + "name": "E", + "type": 19 + } + ], + "path": ["Result"] + } + }, + { + "id": 29, + "type": { + "def": { + "sequence": { + "type": 26 + } + } + } + }, + { + "id": 30, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 31, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 32, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 3, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 3, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 3, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 3, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 34, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 34, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 4, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 4, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 34, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + } + ], + "path": ["Option"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 30, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 30, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 36, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 37, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/dia_oracle.wasm b/artifacts/dia_oracle.wasm new file mode 100644 index 0000000..4e2500a Binary files /dev/null and b/artifacts/dia_oracle.wasm differ diff --git a/artifacts/fee_reduction_provider_mock.contract b/artifacts/fee_reduction_provider_mock.contract new file mode 100644 index 0000000..10c9058 --- /dev/null +++ b/artifacts/fee_reduction_provider_mock.contract @@ -0,0 +1 @@ +{"source":{"hash":"0xa09f5acbe96171d2379f75b3bc987163bdad6104c2a335bdffa1ee0a65b39c02","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001220660027f7f0060037f7f7f017f60037f7f7f0060000060047f7f7f7f017f6000017f027406057365616c310b6765745f73746f726167650004057365616c3005696e7075740000057365616c320b7365745f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c301176616c75655f7472616e73666572726564000003656e76066d656d6f72790201021003151401010101000000000005020003000300030002000616037f01418080040b7f00418880050b7f00419080050b0711020463616c6c0013066465706c6f7900150aa31c142b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bd70101047f230041406a2202240020024180800436020c200241106a200141211005210120024280800137023820024188800436023441edada4e903200241346a2204100a20012004100b024020022802382205200228023c2201490d00200228023421032002200520016b220536023420032001200120036a2203200410002104200520022802342201490d00027f0240024020040e0400030301030b20014104472001410449720d022003280000210141010c010b4110210141000b21032000200136020420002003360200200241406b24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041017200241106a24000b230020002d00004504402001410010180f0b2001410110182001200041016a412010170b830201047f230041406a22022400200241848004360204200241086a200141211005210120024280800137023820024188800436023441d180f3b107200241346a2205100a20012005100b024020022802382203200228023c2201490d00200228023421042002200320016b220336023420042001200120046a2204200510002101200320022802342205490d00027f0240024020010e0400030301030b200220053602302002200436022c200241346a2002412c6a100d20022802340d0220022802300d022002413c6a28020021014101210320022802380c010b4100210341100b2104200020013602082000200436020420002003360200200241406b24000f0b000b6201037f230041106b22022400200241086a2001101641012103024020022802080d00200228020c210420022001101620022802000d002002280204210120002004360204200041086a2001360200410021030b20002003360200200241106a24000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1004200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b0e0020002002100a20012002100a0b3c01027f027f200145044041888004210141010c010b410121024188800441013a000041898004210141020b2103200120023a0000200020031012000b5301037f230041106b220024002000428080013702082000418880043602044100200041046a100a200028020c220120002802084b0440000b200028020422022001200120026a410010021a200041106a24000b0d0020004188800420011003000b8e0f01087f230041f0006b22002400024002400240100e41ff01714105470d0020004180800136020c418880042000410c6a1001200028020c2201418180014f0d0020014104490d022000418c80043602382000200141046b220236023c418b80042d00002103418a80042d00002104418980042d00002105027f02400240024002400240418880042d0000220141c6006b0e020102000b20014114460d02200141ec0047200541d8004772200441ce00472003418f014772720d072000410c6a200041386a101420002d000c22044102460d07200028023c4104490d07200041c8006a200041166a290000370300200041d0006a2000411e6a290000370300200041d6006a200041246a2900003701002000200029000e3703402000280238280000210120002d002c21024102210320002d000d0c040b200541f50047200441d5014772200341ff0047720d062000410c6a200041386a101420002d000c22034102470d020c060b200541f100472002412049722004411847200341e7004772720d05200041c8006a41998004290000370300200041d0006a41a18004290000370300200041d7006a41a88004280000360000200041918004290000370340418f80042d00002104418d80042f00002106418c80042d0000210741032103419080042d00000c020b200541f90147200241204972200441f10047200341bd014772720d04200041c8006a41998004290000370300200041d0006a41a18004290000370300200041d7006a41a88004280000360000200041918004290000370340418f80042d00002104418d80042f00002106418c80042d0000210741042103419080042d00000c010b200041e4006a200041386a100d20002802640d03200041c8006a2000411a6a290000370300200041d0006a200041226a290000370300200041d7006a200041296a28000036000020002000290012370340200041ec006a280200210120002d0010210420002f000e210620002d000d21072000280268210220002d00110b2105200041286a200041d6006a290100370100200041226a200041d0006a2903003701002000411a6a200041c8006a290300370100200020002903403701122000200136023420002002360230200020053a0011200020043a0010200020063b010e200020073a000d200020033a000c2000428080013702442000418880043602404100200041406b2204100a2000280244220520002802482201490d00200028024021022000200520016b220536024020022001200120026a2004100020052000280240220149722001720d002000410c6a41017221020240024002400240200341026b41ff0171220141016a410020014103491b41016b0e03010203000b230041406a220124002000410c6a220028022821042000280224210520014184800436020c200141106a200041211005210020014280800137023820014188800436023441d180f3b107200141346a2202100a20002002100b0240024020012802382206200128023c2200490d00200128023421032001410036023c2001200620006b3602382001200020036a360234200520042002100f200128023c220220012802384b0d00200320002001280234200210021a200141406b24000c010b000b0c040b230041406a22012400200041106a2200280224210420014180800436020c200141106a200041211005210020014280800137023820014188800436023441edada4e903200141346a2202100a20002002100b0240024020012802382205200128023c2200490d00200128023421032001410036023c2001200520006b3602382001200020036a36023420042002100a200128023c220220012802384b0d00200320002001280234200210021a200141406b24000c010b000b0c030b230041406a22012400200141386a200241186a290000370000200141306a200241106a290000370000200141286a200241086a290000370000200141013a001f20012002290000370020200141046a2001411f6a2202100c2000027f2001280204450440200141003a001f200141106a2002100c20012802144100200128021022031b2102200141186a280200410020031b0c010b200128020821022001410c6a2802000b36020420002002360200200141406b24002000200029030037024420004100360240230041106b220124002001418080013602082001418880043602040240200041406b22002802000440418880044181023b0100410221000c010b2001410136020c4188800441003a00002000280204200041086a280200200141046a100f200128020c220041818001490d00000b410020001012000b230041406a22002400200041386a200241186a290000370000200041306a200241106a290000370000200041286a200241086a290000370000200041013a001f20002002290000370020200041106a2000411f6a22011009027f2000280210450440200041003a001f200041086a20011009200028020c410020002802081b0c010b20002802140b2101200041406b2400230041106b220024002000418880043602044188800441003a000020004280808180103702082001200041046a100a200028020c2200418180014f0440000b410020001012000b000b1011410041001010000b410141011010000ba60101047f41022103024020012802042204450d002001200441016b36020420012001280200220541016a22023602000240024020052d00000e020001020b410021030c010b20044121490d002001200441216b3602042001200541216a36020020002002290000370001200041096a200241086a290000370000200041116a200241106a290000370000200041196a200241186a290000370000410121030b200020033a00000b940101017f230041106b2200240002400240100e41ff01714105470d0020004180800136020c418880042000410c6a1001200028020c2200418180014f0d00200041044f0440418880042d0000419b0147418980042d000041ae014772418a80042d0000419d014772418b80042d000041de004772450d020b410141011010000b000b10114188800441003b0100410041021012000b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a2001200210051a200020043602080f0b000b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b0b100100418080040b08ed16293d51c03c76","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"fee_reduction_provider_mock","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":15},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":3},"balance":{"displayName":["Balance"],"type":19},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":28},"hash":{"displayName":["Hash"],"type":27},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":23}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":20}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":19}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":19}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":19}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":5}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":21}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":21}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":4}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":4}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":19}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":20}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":20}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":22}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":24}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":26}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":25}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":25}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":25}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":3}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":23}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":2}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":2}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":2}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":3}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":2}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":2}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":3}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":3}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":19}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":2}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"}],"lang_error":{"displayName":["ink","LangError"],"type":16},"messages":[{"args":[{"label":"account_id","type":{"displayName":["Option"],"type":2}},{"label":"fee_reductions","type":{"displayName":[],"type":6}}],"default":false,"docs":[],"label":"set_fee_reduction","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":15},"selector":"0x4675d57f"},{"args":[{"label":"account_id","type":{"displayName":["Option"],"type":2}},{"label":"fee_reduction","type":{"displayName":["u32"],"type":0}}],"default":false,"docs":[],"label":"set_flash_loan_fee_reduction","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":15},"selector":"0x6c584e8f"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":3}}],"default":false,"docs":[],"label":"FeeReduction::get_fee_reductions","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":17},"selector":"0x47711867"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":3}}],"default":false,"docs":[],"label":"FeeReduction::get_flash_loan_fee_reduction","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":18},"selector":"0x14f971bd"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x51c03c76","ty":0}},"name":"0"},{"layout":{"leaf":{"key":"0x51c03c76","ty":0}},"name":"1"}],"name":"(A, B)"}},"root_key":"0x51c03c76","ty":1}},"name":"fee_reductions"},{"layout":{"root":{"layout":{"leaf":{"key":"0xed16293d","ty":0}},"root_key":"0xed16293d","ty":11}},"name":"flash_loan_fee_reductions"}],"name":"FeeReductionProvider"}},"root_key":"0x00000000","ty":14}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":2},{"name":"V","type":6},{"name":"KeyType","type":7}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":3}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":3}],"path":["Option"]}},{"id":3,"type":{"def":{"composite":{"fields":[{"type":4,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":4,"type":{"def":{"array":{"len":32,"type":5}}}},{"id":5,"type":{"def":{"primitive":"u8"}}},{"id":6,"type":{"def":{"tuple":[0,0]}}},{"id":7,"type":{"def":{"composite":{}},"params":[{"name":"L","type":8},{"name":"R","type":9}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":8,"type":{"def":{"composite":{}},"path":["ink_storage_traits","impls","AutoKey"]}},{"id":9,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":10}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":10,"type":{"def":{"tuple":[]}}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"K","type":2},{"name":"V","type":0},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":8},{"name":"R","type":13}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":10}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{"fields":[{"name":"fee_reductions","type":1,"typeName":", (u32, u32)> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1983692881u32, ()>,>>::Type"},{"name":"flash_loan_fee_reductions","type":11,"typeName":", u32> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1026103021u32,\n()>,>>::Type"}]}},"path":["fee_reduction_provider_mock","fee_reduction_provider_mock","FeeReductionProvider"]}},{"id":15,"type":{"def":{"variant":{"variants":[{"fields":[{"type":10}],"index":0,"name":"Ok"},{"fields":[{"type":16}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":10},{"name":"E","type":16}],"path":["Result"]}},{"id":16,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":17,"type":{"def":{"variant":{"variants":[{"fields":[{"type":6}],"index":0,"name":"Ok"},{"fields":[{"type":16}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":6},{"name":"E","type":16}],"path":["Result"]}},{"id":18,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":16}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":16}],"path":["Result"]}},{"id":19,"type":{"def":{"primitive":"u128"}}},{"id":20,"type":{"def":{"primitive":"bool"}}},{"id":21,"type":{"def":{"primitive":"str"}}},{"id":22,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":0,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":23,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":23,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":23,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":23,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":23,"type":{"def":{"primitive":"u64"}}},{"id":24,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":25,"typeName":"Option"},{"name":"maximal_total_debt","type":25,"typeName":"Option"},{"name":"minimal_collateral","type":19,"typeName":"Balance"},{"name":"minimal_debt","type":19,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":19}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":19}],"path":["Option"]}},{"id":26,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":0,"typeName":"u32"},{"name":"deposit_fee_e6","type":0,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":27,"type":{"def":{"composite":{"fields":[{"type":4,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":28,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/fee_reduction_provider_mock.json b/artifacts/fee_reduction_provider_mock.json new file mode 100644 index 0000000..8e6a5b7 --- /dev/null +++ b/artifacts/fee_reduction_provider_mock.json @@ -0,0 +1,1783 @@ +{ + "source": { + "hash": "0xa09f5acbe96171d2379f75b3bc987163bdad6104c2a335bdffa1ee0a65b39c02", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "fee_reduction_provider_mock", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 15 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 3 + }, + "balance": { + "displayName": ["Balance"], + "type": 19 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 28 + }, + "hash": { + "displayName": ["Hash"], + "type": 27 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 23 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 20 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 19 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 19 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 5 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 21 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 21 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 4 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 19 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 20 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 20 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 22 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 24 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 26 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 25 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 25 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 25 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 23 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 2 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 19 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 2 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 16 + }, + "messages": [ + { + "args": [ + { + "label": "account_id", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "label": "fee_reductions", + "type": { + "displayName": [], + "type": 6 + } + } + ], + "default": false, + "docs": [], + "label": "set_fee_reduction", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 15 + }, + "selector": "0x4675d57f" + }, + { + "args": [ + { + "label": "account_id", + "type": { + "displayName": ["Option"], + "type": 2 + } + }, + { + "label": "fee_reduction", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "set_flash_loan_fee_reduction", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 15 + }, + "selector": "0x6c584e8f" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "default": false, + "docs": [], + "label": "FeeReduction::get_fee_reductions", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 17 + }, + "selector": "0x47711867" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 3 + } + } + ], + "default": false, + "docs": [], + "label": "FeeReduction::get_flash_loan_fee_reduction", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 18 + }, + "selector": "0x14f971bd" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x51c03c76", + "ty": 0 + } + }, + "name": "0" + }, + { + "layout": { + "leaf": { + "key": "0x51c03c76", + "ty": 0 + } + }, + "name": "1" + } + ], + "name": "(A, B)" + } + }, + "root_key": "0x51c03c76", + "ty": 1 + } + }, + "name": "fee_reductions" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xed16293d", + "ty": 0 + } + }, + "root_key": "0xed16293d", + "ty": 11 + } + }, + "name": "flash_loan_fee_reductions" + } + ], + "name": "FeeReductionProvider" + } + }, + "root_key": "0x00000000", + "ty": 14 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 2 + }, + { + "name": "V", + "type": 6 + }, + { + "name": "KeyType", + "type": 7 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 3 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 3 + } + ], + "path": ["Option"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 4, + "type": { + "def": { + "array": { + "len": 32, + "type": 5 + } + } + } + }, + { + "id": 5, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 6, + "type": { + "def": { + "tuple": [0, 0] + } + } + }, + { + "id": 7, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 8 + }, + { + "name": "R", + "type": 9 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 8, + "type": { + "def": { + "composite": {} + }, + "path": ["ink_storage_traits", "impls", "AutoKey"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 10 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 10, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 2 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 8 + }, + { + "name": "R", + "type": 13 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 10 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "fee_reductions", + "type": 1, + "typeName": ", (u32, u32)> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1983692881u32, ()>,>>::Type" + }, + { + "name": "flash_loan_fee_reductions", + "type": 11, + "typeName": ", u32> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1026103021u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["fee_reduction_provider_mock", "fee_reduction_provider_mock", "FeeReductionProvider"] + } + }, + { + "id": 15, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 10 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 16 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "E", + "type": 16 + } + ], + "path": ["Result"] + } + }, + { + "id": 16, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 17, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 6 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 16 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 6 + }, + { + "name": "E", + "type": 16 + } + ], + "path": ["Result"] + } + }, + { + "id": 18, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 16 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 16 + } + ], + "path": ["Result"] + } + }, + { + "id": 19, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 20, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 21, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 22, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 23, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 23, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 23, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 23, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 23, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 24, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 25, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 25, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 19, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 19, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 19 + } + ], + "path": ["Option"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/fee_reduction_provider_mock.wasm b/artifacts/fee_reduction_provider_mock.wasm new file mode 100644 index 0000000..ec647ea Binary files /dev/null and b/artifacts/fee_reduction_provider_mock.wasm differ diff --git a/artifacts/flash_loan_receiver_mock.contract b/artifacts/flash_loan_receiver_mock.contract new file mode 100644 index 0000000..a00eb33 --- /dev/null +++ b/artifacts/flash_loan_receiver_mock.contract @@ -0,0 +1 @@ +{"source":{"hash":"0xbc9bf9a671e5adff30c8e97fc383cac9b18d988dd2f6837c41a0fbc765b5dd18","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000014a0c60027f7f0060037f7f7f0060037f7f7f017f60017f0060047f7f7f7f017f60047f7f7f7f0060017f017f60000060087f7f7e7f7f7f7f7f017f6000017f60037e7e7f0060027f7f017f02ce010b057365616c310b6765745f73746f726167650004057365616c3005696e7075740000057365616c310463616c6c0008057365616c300d6465706f7369745f6576656e740005057365616c320b7365745f73746f726167650004057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c3007616464726573730000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f727902010210032c2b02020202000101000301030003090000000300000a0000000601010100070002000006010700020b0005010616037f01418080040b7f0041b083050b7f0041a883050b0711020463616c6c0027066465706c6f79002e0ac0502b2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bb70101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a2205360204200141046a280200200141086a280200200241046a2206100f200228020c220120022802084b0d0020062002280204200110102002410036022c20022004360228200220053602242006200241246a10112003200228022c6a22012003490d0020002001360208200241306a24000f0b000b130020022001101820022000200141047410130bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1009200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100a1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010130bb40101077f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a2204360204200141003a0024200141046a2205200141246a220641011013200128020c220720012802084b0d0020052001280204200710102001410036022c200120033602282001200436022420052006101120022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100a1a200020043602080f0b000b000b7201047f230041106b220124002001410436020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a101520022002200128020c6a22024b0d0020002002360208200141106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410320c010b200041ffff004d0440200220004102744101723b010e20012002410e6a410210130c010b200041ffffffff034d044020004102744102722001101c0c010b20014103103220002001101c0b200241106a24000b850101027f230041106b2201240020014180800136020c41a883042001410c6a1007200128020c2202418180014f2002411f4d72450440200041a98304290000370001200041096a41b18304290000370000200041116a41b98304290000370000200041186a41c08304290000370000200041a883042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1008200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b2401017f230041106b220224002002200136020c2002410c6a20001015200241106a24000b3c01027f027f200145044041a88304210141010c010b4101210241a8830441013a000041a98304210141020b2103200120023a0000200020031026000bdf0101037f230041106b22032400200341808001360208200341a883043602040240027f024002402001280200220441828080807847044041a8830441003a00002004418180808078460d0241a9830441013a00002004418080808078470d0141aa830441003a000020012d000421024104210141ab83040c030b4101210241a8830441013a00000c010b41aa830441013a00002003410336020c20012802042102200341046a22042001280208220110182004200220011013200328020c220141818001490d02000b4102210141a983040b20023a00000b200020011026000b8d0201057f230041106b22012400200142808001370208200141a883043602044100200141046a2203101c024020012802082202200128020c2204490d00200128020421052001410036020c2001200220046b3602082001200420056a36020420002d00182003101d20002d00192003101d027f2000290300500440200128020c2200200128020822024f0d022001280204220320006a41003a0000200041016a0c010b200128020c220220012802084f0d01200128020420026a41013a00002001200241016a36020c2000290308200041106a290300200141046a101e2001280208210220012802042103200128020c0b220020024b0d00200520042003200010041a200141106a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041013200241106a24000b2601017f230041106b22022400200220003a000f20012002410f6a41011013200241106a24000b2a01017f230041106b2203240020032001370308200320003703002002200341101013200341106a24000bf60502097f017e23004190016b22022400200220014138100a210220012802702105200241386a200141386a4138100a2109200220053602702002290330210b20024280800137028801200241a8830436028401200220024184016a2208101102402002280288012204200228028c012201490d0020022802840121062002410036028c012002200420016b360288012002200120066a360284012002290320200241286a2903002008101e2002280288012204200228028c012201490d00200420016b2104200228028401220a20016a210141808004210720054103714504402002410036028c0120022004360288012002200136028401200241e8006a20081020200920081011200241d8006a290300200241e0006a2903002008101e2002280288012201200228028c012203490d01200120036b2104200228028401220720036a21010b200220043602840120052006200b200a20072003200120024184016a1002210320042002280284012206492003410f4f720d002006452003418681046a2d00002203411047200341024771720d002002200641016b220336028001410121052002200141016a36027c0240027f0240024020012d00000e020001040b2003450d03200641026b21044108210341002107024020012d00010e020300040b2004450d032002200641036b2204360280012002200141036a36027c024002400240024002400240024020012d000222030e0800090102030405060a0b20024184016a200241fc006a10212002280284012205418080808078460d09200229028801210b41000c070b410221030c070b410321030c060b410421030c050b20024184016a200241fc006a10212002280284012205418080808078460d05200229028801210b41050c030b410621030c030b410721030c020b200241fc006a1022450d024101210741090b210320022802800121040b20042007720d002000200b370208200020053a000420002003360200200041076a20054118763a0000200020054108763b000520024190016a24000f0b000b0a0020012000410410130b9c0502097f017e230041106b22062400200641046a2001102b02400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d00002205411874411875220741004804402005419581046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000b3601027f230041106b22012400200141086a2000102f20012d0009210020012d00082102200141106a24002002417f732000410146710be40101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002280200220241046a280200200241086a280200200341046a22071024200328020c220220032802084b0d0220072003280204200210102003410036022c20032005360228200320063602242007200341246a10112004200328022c6a22022004490d02200120023602080c010b200110120b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b2d0020022001101820010440200141057421010340200020021011200041206a2100200141206b22010d000b0b0bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071011200328020c220220032802084b0d0220072003280204200210102003410036022c20032005360228200320063602242007200341246a10112004200328022c6a22022004490d02200120023602080c010b200110120b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b0d00200041a8830420011005000bcc23022b7f087e230041d0026b22002400024002400240024002400240101741ff01714105470d0020004180800136027841a88304200041f8006a100120002802782201418180014f0d000240024020014104490d00200041ac83043602582000200141046b220136025c41ab83042d0000210241aa83042d0000210341a983042d000021050240024041a883042d00002204413b470440200441f900460d02200441eb01460d01200441f00147200541c70147722003412d47200241e0004772720d03200041206a200041d8006a102820002802200d0341012101200028025c41057622022000280224220520022005491b22020440200241ffffff1f4b0d06200241057422014100480d0620024180808020492001410010292201450d060b41002103200041003602a802200020013602a402200020023602a002200504400340200028025c22064120490d0520004180016a22082000280258220241086a29000037030020004188016a220f200241106a29000037030020004190016a2210200241186a2900003703002000200641206b36025c2000200241206a3602582000200229000037037820002802a0022003460440200041a0026a2109230041206b220124000240200341016a220204404104200928020022034101742206200220022006491b2202200241044d1b220b418080802049210c200b410574210202402003450440200141003602180c010b200141013602182001200341057436021c200120092802043602140b200141146a2104230041106b22032400200141086a2206027f0240200c044020024100480d01027f20042802040440200441086a280200220c450440200341086a410120024100103320032802082104200328020c0c020b2004280200211302404101200210312204450440410021040c010b20042013200c100a1a0b20020c010b20034101200210342003280200210420032802040b210c2004044020062004360204200641086a200c36020041000c030b20064101360204200641086a200236020041010c020b20064100360204200641086a200236020041010c010b2006410036020441010b360200200341106a24002001280208450d01200128020c1a0b000b200128020c21022009200b36020020092002360204200141206a240020002802a802210320002802a40221010b200120034105746a22022000290378370000200241186a2010290300370000200241106a200f290300370000200241086a20082903003700002000200341016a22033602a802200541016b22050d000b20002802a0022202418080808078460d040b20002902a402212b200041f0016a200041d8006a2201102a20002802f0012203418080808078460d0320002902f401212f200041a0026a2001102a20002802a0022219418080808078460d0320002902a402212c200041f8006a2001102b200028027841808080807846200241838080807846720d03202ba721012003ad422086202b42208884212d202b420888a721060c040b200541c90047200341144772200241fb0047720d02200041d8006a102c220141ff01714102460d0241808080807821020c030b200541f60147200341cf00477220024124472001410f4d72720d0141b48304290200212f41ac8304290200212d41818080807821020c020b2005413f47200341f6004772200241da0047720d00200041d8006a102c220141ff01714102460d0041828080807821020c010b410141011019000b20004280800137027c200041a883043602784100200041f8006a2205101c200028027c22092000280280012203490d00200028027821042000200920036b220936027820042003200320046a220b200510002104200920002802782203492004410f4f720d002004418681046a2d000022044103462004411047720d002000200336027c2000200b3602782005102c220f41ff01714102460d002005102c221041ff01714102460d00200028027c2204450d004101211a200441016b21054200212b02400240200028027822092d00000e020100020b20054110490d01200941096a290000222b4238862009290001223142088884212e200441116b2105202b420888212b2031a72103420121314100211a0b20050d00202b420886202e42388884212b2003ad42ff0183202e42088684212e02400240024002400240200241ffffffff076b41002002418380808078481b41016b0e03030201000b202d4220882130202f4220882132202da72113200f41ff01710d03202c422088a72116202ca721172030a721232032a72124202fa7212520004180026a2105200041b0026a210920004188016a210420004198016a210b200041b0016a210c200041d4016a2126200041b4016a2127201041ff01712128200041b1016a221841176a2129200041d8016a211b200141ff0171200641087472222a2103410021064100210102400340200120134604402000201636029801200020173602940120002019360290012000202f37038801200020233602840120002013360280012000202a36027c2000200236027820004280800137025c200041a883043602582000200041f8006a360228200041d8006a1014200041a8026a2203200041e0006a280200360200200020002902583703a002200041f0016a2202200041a0026a220141c58004102520012002200041286a1023200120004184016a100e200041f8016a22062003280200360200200020002902a0023703f001200220004190016a100e20002802f401220520062802002202490d0720002802f0012103200041003602a8022000200520026b3602a4022000200220036a3602a002200028027c200028028001200110242000280288012000418c016a2802002001100f2000280294012000280298012001100f20002802a802220120002802a4024b0d072003200220002802a0022001100320004181808080783602a0020c0a0b20042003290000370000200441186a200341186a2214290000370000200441106a200341106a2215290000370000200441086a200341086a2211290000370000200041f0016a22071016200041a0026a2208200041f8006a220a4130100a1a200041e5d0e1f90236009002202720074124100a211220004180016a221c200941086a221d2903003703002004200941106a221e29030037030020004190016a221f200941186a222029030037030020002009290300370378200b41186a4100360200200b41106a22214200370300200b41086a22224200370300200b42003703002000428080013702a402200041a883043602a002200a2008101120002802a402220d20002802a8022207490d0620002802a002210a200041003602a8022000200d20076b3602a40220002007200a6a3602a002420042002008101e20002802a402220e20002802a8022207490d0620002802a002210d200041003602a8022000200e20076b3602a40220002007200d6a3602a00220262008102020122008101120002802a402220e20002802a8022207490d0620002802a00221122000200e20076b220e3602a0024100200a4200200d20122007200720126a220720081002210a200e20002802a002220849200a410f4f720d06200845200a418681046a2d0000220a411047200a41024771720d062000200841016b220d3602a4022000200741016a220a3602a00202400240024020072d00000e020001090b200d4110490d0820084111460d010c080b200041a0026a1022450d0720002802a4021a0c070b20012024460d060240200620256a2208290300200a29000056200841086a220d290300222c200a41086a290000222d56202c202d511b4504402028450d01200041406b22072014290000370300200041386a220a2015290000370300200041306a2212201129000037030020002003290000370328200041d8006a1016200120164f0d08200620176a220e290300212c200e41086a290300212d20202007290300370000201e200a290300370000201d201229030037000020092000290328370000200041f0016a200041a0026a4130100a1a200c41186a200041f0006a290000370000200c41106a200041e8006a290000370000200c41086a200041e0006a290000370000200c2000290058370000201c200541086a2903003703002004200541106a290300370300201f200541186a290300370300200b4200370300202242003703002021420037030020002005290300370378201b202d3703002000202c3703d001200041003602e801200041fcf9d4a37d3602e001200041c8006a200041f8006a101f2000280248220741054620074572452007410846710d01200041106a41104100102d2000280210210220002802142201418b8004290000370000200141086a41938004290000370000200041103602a8020c090b200041134100102d2000280200210220002802042201419b80042900003700002001410f6a41aa8004280000360000200141086a41a38004290000370000200041133602a8020c080b202e212d202b212c201a0440200120164f0d072008290300222c200620176a22082903007c222d202c5422072007ad200d2903002230200841086a2903007c7c222c203054202c2030511b0d020b200041f0006a22082014290000370300200041e8006a22072015290000370300200041e0006a22142011290000370300200020032900003703582000418080013602a00241a88304200041a0026a2215100620002802a0022211418180014f2011411f4d720d06201841a98304290000370000201841086a41b18304290000370000201841106a41b98304290000370000202941c0830429000037000041a883042d0000211120202008290300370000201e2007290300370000201d201429030037000020092000290358370000200041f0016a20154130100a1a201b202c370300200b42003703002022420037030020214200370300201c200541086a2903003703002004200541106a290300370300201f200541186a2903003703002000202d3703d001200041003602e801200041b29fece87b3602e001200020113a00b00120002005290300370378200041286a200041f8006a101f2000280228220841054620084572450440200141016a2101200341206a2103200641106a210620084108460d010b0b200041086a410b4100102d20002802082102200028020c220141808004290000370000200141076a418780042800003600002000410b3602a8020c060b200041013a00a40220004180808080783602a0020c060b20004188016a202b3703002000202e37038001200020013a0091012000200f3a0090010c070b20004188016a202f3703002000202d37038001200020103a0091012000200f3a009001200042013703780c070b20004188016a202b3703002000202e37038001200020103a009101200020013a0090010c050b2000418c016a20323e020020002030202f42208684370284012000202c3702940120002019360290012000201336028001200020013a007c20002002360278200020063b007d200020064110763a007f20004280800137025c200041a883043602582000200041f8006a360228200041d8006a1014200041a8026a2203200041e0006a280200360200200020002902583703a002200041f0016a2202200041a0026a220141e68004102520012002200041286a1023200120004184016a100e200041f8016a22062003280200360200200020002902a0023703f001200220004190016a100e20002802f401220520062802002202490d0020002802f0012103200041003602a8022000200520026b3602a4022000200220036a3602a002200028027c20002802800120011024200028028801200028028c012001100f2000280294012000280298012001100f20002802a802220120002802a4024b0d002003200220002802a00220011003200041186a41164100102d20002802182102200028021c220141ae80042900003700002001410e6a41bc8004290000370000200141086a41b68004290000370000200041163602a8020c010b000b200020013602a402200020023602a0022002418180808078460d010b4101200041a0026a101a000b20004188016a202b37030020004196016a200041f4016a2f01003b01002000202e37038001200020103a0091012000200f3a00900120002031370378200020002801f00136019201200041f8006a101b4100200041a0026a101a000b200020313703780b200041f8006a101b410041001019000bbc0201047f230041106b2202240020022001102f41012104024020022d00000d000240024002400240024020022d0001220341037141016b0e03020301000b200341fc01714102762103410021040c040b200341ff01714104490d020c030b200241096a20033a0000200241013a000820022001360204200241003b010c200241046a2002410c6a410210300d0220022f010c220141ff014d0d0220014102762103410021040c020b200241096a20033a0000200241013a0008200220013602042002410036020c200241046a2002410c6a410410300d01200228020c220141027621032001418080044921040c010b200128020422054104490d002001280200220428000021032001200541046b3602042001200441046a36020020034180808080044921040b2000200336020420002004360200200241106a24000b16002002450440419883042d00001a0b2000200110310bbe0101067f230041106b22052400200541086a2001102841808080807821020240024020052802080d00200528020c220341ffffffff004b0d002001280204220620034104742204490d0002402003450440410821020c010b2004410048200341ffffff3f4b720d0241082004410110292202450d020b2002200128020022072004100a21022001200620046b3602042001200420076a36020020002002ad2003ad42208684370204200321020b20002002360200200541106a24000f0b000ba20101067f230041106b22022400200241086a200110284180808080782103024020022802080d0020012802042206200228020c2204490d00200220044101102d200228020021052002280204200128020022032004100a21072001200620046b3602042001200320046a36020041808080807821032005418080808078460d0020002007ad2004ad42208684370204200521030b20002003360200200241106a24000b3f01027f230041106b22012400200141086a2000102f20012d0009210020012d00082102200141106a240041024101410220004101461b410020001b20021b0b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001103420032802080c010b2003200420014101103320032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000ba20101027f230041206b2200240002400240101741ff01714105470d0020004180800136020041a883042000100120002802002201418180014f0d00200141044f044041a883042d0000419b014741a983042d000041ae01477241aa83042d0000419d01477241ab83042d000041de004772450d020b410141011019000b000b20004180023b0118200042003703002000101b41a8830441003b0100410041021026000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100a1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100a1a0b2000200320026b3602042000200120026a36020041000b0bc50101017f027f419c83042d0000044041a083042802000c010b3f00210241a0830441b08305360200419c830441013a000041a48304200241107436020041b083050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a41a483042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d0241a4830420023602004100200020016a22022000490d011a0b41a08304200236020020000b0f0b41000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b380002402002450d002003450440419883042d00001a41012002103121010c010b41012002103121010b20002002360204200020013602000b3901017f230041106b22032400200341086a2001200241001033200328020c21012000200328020836020020002001360204200341106a24000b0bd8020200418080040b950243616e74417070726f766541737365744e6f744d696e7461626c65496e73756666696369656e7442616c616e6365457865637574654f7065726174696f6e4661696c65640163ebc6028b9b9e0cb557e0e706191a3dc930d95984f31d4ea1e6dd8a43127ab001960598314f895ba03934229bcc8a7eeb085c52a05b11eddcd5b11563513f8a25100102030405060708090a0b0c0d0e01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041d782040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"flash_loan_receiver_mock","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":4},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":8},"balance":{"displayName":["Balance"],"type":1},"blockNumber":{"displayName":["BlockNumber"],"type":18},"chainExtension":{"displayName":["ChainExtension"],"type":25},"hash":{"displayName":["Hash"],"type":24},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":20}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":18}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":0}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":1}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":1}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":1}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":10}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":17}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":17}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":9}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":9}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":1}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":0}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":0}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":19}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":21}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":22}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":18}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":3}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":3}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":3}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":8}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":20}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":[],"indexed":true,"label":"assets","type":{"displayName":["Vec"],"type":7}},{"docs":[],"indexed":true,"label":"amounts","type":{"displayName":["Vec"],"type":11}},{"docs":[],"indexed":true,"label":"fees","type":{"displayName":["Vec"],"type":11}}],"docs":[],"label":"ExecutedWithSuccess","module_path":"flash_loan_receiver_mock::flash_loan_receiver_mock","signature_topic":"0x63ebc6028b9b9e0cb557e0e706191a3dc930d95984f31d4ea1e6dd8a43127ab0"},{"args":[{"docs":[],"indexed":true,"label":"assets","type":{"displayName":["Vec"],"type":7}},{"docs":[],"indexed":true,"label":"amounts","type":{"displayName":["Vec"],"type":11}},{"docs":[],"indexed":true,"label":"fees","type":{"displayName":["Vec"],"type":11}}],"docs":[],"label":"ExecutedWithFail","module_path":"flash_loan_receiver_mock::flash_loan_receiver_mock","signature_topic":"0x960598314f895ba03934229bcc8a7eeb085c52a05b11eddcd5b11563513f8a25"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":23}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":23}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":8}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":8}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":1}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":23}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":18}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":18}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":18}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":18}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":23}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":23}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":18}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":23}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":8}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"}],"lang_error":{"displayName":["ink","LangError"],"type":6},"messages":[{"args":[{"label":"should_fail_execute_operation","type":{"displayName":["bool"],"type":0}}],"default":false,"docs":[],"label":"set_fail_execute_operation","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":4},"selector":"0x3b49147b"},{"args":[{"label":"custom_amount_to_approve","type":{"displayName":["u128"],"type":1}}],"default":false,"docs":[],"label":"set_custom_amount_to_approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":4},"selector":"0xebf64f24"},{"args":[{"label":"simulate_balance_to_cover_fee","type":{"displayName":["bool"],"type":0}}],"default":false,"docs":[],"label":"set_simulate_balance_to_cover_fee","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":4},"selector":"0x793f765a"},{"args":[{"label":"assets","type":{"displayName":["Vec"],"type":7}},{"label":"amounts","type":{"displayName":["Vec"],"type":11}},{"label":"fees","type":{"displayName":["Vec"],"type":11}},{"label":"receiver_params","type":{"displayName":["Vec"],"type":12}}],"default":false,"docs":[],"label":"FlashLoanReceiver::execute_operation","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":13},"selector":"0xf0c72d60"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":0}},"name":"fail_execute_operation"},{"layout":{"leaf":{"key":"0x00000000","ty":0}},"name":"simulate_balance_to_cover_fee"},{"layout":{"enum":{"dispatchKey":"0x00000000","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":1}},"name":"0"}],"name":"Some"}}}},"name":"custom_amount_to_approve"}],"name":"FlashLoanReceiverMock"}},"root_key":"0x00000000","ty":2}},"types":[{"id":0,"type":{"def":{"primitive":"bool"}}},{"id":1,"type":{"def":{"primitive":"u128"}}},{"id":2,"type":{"def":{"composite":{"fields":[{"name":"fail_execute_operation","type":0,"typeName":",>>::Type"},{"name":"simulate_balance_to_cover_fee","type":0,"typeName":",>>::Type"},{"name":"custom_amount_to_approve","type":3,"typeName":" as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<1303653968u32, ()>,>>::Type"}]}},"path":["flash_loan_receiver_mock","flash_loan_receiver_mock","FlashLoanReceiverMock"]}},{"id":3,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":1}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":1}],"path":["Option"]}},{"id":4,"type":{"def":{"variant":{"variants":[{"fields":[{"type":5}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":5},{"name":"E","type":6}],"path":["Result"]}},{"id":5,"type":{"def":{"tuple":[]}}},{"id":6,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":7,"type":{"def":{"sequence":{"type":8}}}},{"id":8,"type":{"def":{"composite":{"fields":[{"type":9,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":9,"type":{"def":{"array":{"len":32,"type":10}}}},{"id":10,"type":{"def":{"primitive":"u8"}}},{"id":11,"type":{"def":{"sequence":{"type":1}}}},{"id":12,"type":{"def":{"sequence":{"type":10}}}},{"id":13,"type":{"def":{"variant":{"variants":[{"fields":[{"type":14}],"index":0,"name":"Ok"},{"fields":[{"type":6}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":14},{"name":"E","type":6}],"path":["Result"]}},{"id":14,"type":{"def":{"variant":{"variants":[{"fields":[{"type":5}],"index":0,"name":"Ok"},{"fields":[{"type":15}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":5},{"name":"E","type":15}],"path":["Result"]}},{"id":15,"type":{"def":{"variant":{"variants":[{"fields":[{"type":16,"typeName":"MathError"}],"index":0,"name":"MathErorr"},{"fields":[{"type":17,"typeName":"String"}],"index":1,"name":"Custom"}]}},"path":["abax_contracts","flash_loan_receiver","errors","FlashLoanReceiverError"]}},{"id":16,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":17,"type":{"def":{"primitive":"str"}}},{"id":18,"type":{"def":{"primitive":"u32"}}},{"id":19,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":18,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":20,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":20,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":20,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":20,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":20,"type":{"def":{"primitive":"u64"}}},{"id":21,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":3,"typeName":"Option"},{"name":"maximal_total_debt","type":3,"typeName":"Option"},{"name":"minimal_collateral","type":1,"typeName":"Balance"},{"name":"minimal_debt","type":1,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":22,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":18,"typeName":"u32"},{"name":"deposit_fee_e6","type":18,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":8}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":8}],"path":["Option"]}},{"id":24,"type":{"def":{"composite":{"fields":[{"type":9,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":25,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/flash_loan_receiver_mock.json b/artifacts/flash_loan_receiver_mock.json new file mode 100644 index 0000000..97ea39f --- /dev/null +++ b/artifacts/flash_loan_receiver_mock.json @@ -0,0 +1,1818 @@ +{ + "source": { + "hash": "0xbc9bf9a671e5adff30c8e97fc383cac9b18d988dd2f6837c41a0fbc765b5dd18", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "flash_loan_receiver_mock", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 4 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 8 + }, + "balance": { + "displayName": ["Balance"], + "type": 1 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 18 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 25 + }, + "hash": { + "displayName": ["Hash"], + "type": 24 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 20 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 18 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 1 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 17 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 17 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 1 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 19 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 21 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 22 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 18 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 3 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 3 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 20 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "assets", + "type": { + "displayName": ["Vec"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "amounts", + "type": { + "displayName": ["Vec"], + "type": 11 + } + }, + { + "docs": [], + "indexed": true, + "label": "fees", + "type": { + "displayName": ["Vec"], + "type": 11 + } + } + ], + "docs": [], + "label": "ExecutedWithSuccess", + "module_path": "flash_loan_receiver_mock::flash_loan_receiver_mock", + "signature_topic": "0x63ebc6028b9b9e0cb557e0e706191a3dc930d95984f31d4ea1e6dd8a43127ab0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "assets", + "type": { + "displayName": ["Vec"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "amounts", + "type": { + "displayName": ["Vec"], + "type": 11 + } + }, + { + "docs": [], + "indexed": true, + "label": "fees", + "type": { + "displayName": ["Vec"], + "type": 11 + } + } + ], + "docs": [], + "label": "ExecutedWithFail", + "module_path": "flash_loan_receiver_mock::flash_loan_receiver_mock", + "signature_topic": "0x960598314f895ba03934229bcc8a7eeb085c52a05b11eddcd5b11563513f8a25" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 23 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 23 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 1 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 23 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 18 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 18 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 18 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 18 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 23 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 23 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 18 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 23 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 6 + }, + "messages": [ + { + "args": [ + { + "label": "should_fail_execute_operation", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "set_fail_execute_operation", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 4 + }, + "selector": "0x3b49147b" + }, + { + "args": [ + { + "label": "custom_amount_to_approve", + "type": { + "displayName": ["u128"], + "type": 1 + } + } + ], + "default": false, + "docs": [], + "label": "set_custom_amount_to_approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 4 + }, + "selector": "0xebf64f24" + }, + { + "args": [ + { + "label": "simulate_balance_to_cover_fee", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "set_simulate_balance_to_cover_fee", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 4 + }, + "selector": "0x793f765a" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Vec"], + "type": 7 + } + }, + { + "label": "amounts", + "type": { + "displayName": ["Vec"], + "type": 11 + } + }, + { + "label": "fees", + "type": { + "displayName": ["Vec"], + "type": 11 + } + }, + { + "label": "receiver_params", + "type": { + "displayName": ["Vec"], + "type": 12 + } + } + ], + "default": false, + "docs": [], + "label": "FlashLoanReceiver::execute_operation", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 13 + }, + "selector": "0xf0c72d60" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "fail_execute_operation" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "simulate_balance_to_cover_fee" + }, + { + "layout": { + "enum": { + "dispatchKey": "0x00000000", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 1 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "custom_amount_to_approve" + } + ], + "name": "FlashLoanReceiverMock" + } + }, + "root_key": "0x00000000", + "ty": 2 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 1, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 2, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "fail_execute_operation", + "type": 0, + "typeName": ",>>::Type" + }, + { + "name": "simulate_balance_to_cover_fee", + "type": 0, + "typeName": ",>>::Type" + }, + { + "name": "custom_amount_to_approve", + "type": 3, + "typeName": " as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<1303653968u32, ()>,>>::Type" + } + ] + } + }, + "path": ["flash_loan_receiver_mock", "flash_loan_receiver_mock", "FlashLoanReceiverMock"] + } + }, + { + "id": 3, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 1 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 1 + } + ], + "path": ["Option"] + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 5 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 5 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 5, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 6, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 7, + "type": { + "def": { + "sequence": { + "type": 8 + } + } + } + }, + { + "id": 8, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 9, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 9, + "type": { + "def": { + "array": { + "len": 32, + "type": 10 + } + } + } + }, + { + "id": 10, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 11, + "type": { + "def": { + "sequence": { + "type": 1 + } + } + } + }, + { + "id": 12, + "type": { + "def": { + "sequence": { + "type": 10 + } + } + } + }, + { + "id": 13, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 14 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 6 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 14 + }, + { + "name": "E", + "type": 6 + } + ], + "path": ["Result"] + } + }, + { + "id": 14, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 5 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 15 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 5 + }, + { + "name": "E", + "type": 15 + } + ], + "path": ["Result"] + } + }, + { + "id": 15, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 16, + "typeName": "MathError" + } + ], + "index": 0, + "name": "MathErorr" + }, + { + "fields": [ + { + "type": 17, + "typeName": "String" + } + ], + "index": 1, + "name": "Custom" + } + ] + } + }, + "path": ["abax_contracts", "flash_loan_receiver", "errors", "FlashLoanReceiverError"] + } + }, + { + "id": 16, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 17, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 18, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 19, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 18, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 20, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 20, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 20, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 20, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 20, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 21, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 3, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 3, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 1, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 1, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 18, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 18, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 23, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 8 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 8 + } + ], + "path": ["Option"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 9, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/flash_loan_receiver_mock.wasm b/artifacts/flash_loan_receiver_mock.wasm new file mode 100644 index 0000000..71458e5 Binary files /dev/null and b/artifacts/flash_loan_receiver_mock.wasm differ diff --git a/artifacts/flipper.contract b/artifacts/flipper.contract new file mode 100644 index 0000000..e059eeb --- /dev/null +++ b/artifacts/flipper.contract @@ -0,0 +1 @@ +{"source":{"hash":"0xf6888365661acaa043a864668e134dde5ca00c17978fefcfb1e40cbcf5092dde","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001320960027f7f0060037f7f7f017f60037f7f7f0060017f0060047f7f7f7f017f60047f7f7f7f006000006000017f60017f017f02a20108057365616c310b6765745f73746f726167650004057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e740005057365616c320b7365745f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000203656e76066d656d6f72790201021003181701010101020000030000070800000303060602000001050616037f01418080040b7f0041c083050b7f0041c083050b0711020463616c6c0017066465706c6f7900180ad31d172b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a220110062003412020014120101d0c010b2003200220012002101d0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b2901017f230041106b220224002002200028020036020c20012002410c6a41041019200241106a24000b2901017f230041106b22022400200220002d00003a000f20012002410f6a41011019200241106a24000b920402077f017e230041406a22012400200120003a000f20014102360234200142808001370214200141b18304360210200141346a2205200141106a2200100f024020012802182203418180014f0d002001410036021820014180800120036b22023602142001200341b183046a2204360210418d8104200010102001280218220620012802144b0d00200020012802102006100b2001410036023c200120023602382001200436023420002005101020032003200128023c6a22024b2002418180014f720d002001410036021820014180800120026b22033602142001200241b183046a22043602102001410f6a22062000100d2001280218220720012802144b0d00200020012802102007100b2001410036023c200120033602382001200436023420002005101020022002200128023c6a22034b0d0020012003360218200141808001360214200141b18304360210230041106b220324002000280208210220004100360208200341086a21052002200028020422044b0440000b2000200420026b36020420002000280200220420026a3602002005200236020420052004360200200328020c21022001200328020836020020012002360204200341106a2400200128020421022001280200210320012903102108200141003602182001200837021020062000100d2001280218220020012802144b0d0020032002200128021020001002200141406b24000f0b000b830101027f230041106b22022400024020002802002203413f4d044020012003410274101a0c010b200341ffff004d0440200220034102744101723b010e20012002410e6a410210190c010b200341ffffffff034d044020022003410274410272360208200241086a2001100c0c010b20014103101a20002001100c0b200241106a24000b0a0020012000412010190b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a10052003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b4901017f230041106b22012400200141003a000f027f20002001410f6a4101101c4504404101410220012d000f22004101461b410020001b0c010b41020b2100200141106a240020000bcd0201057f230041106b220224002002200036020c2002410c6a2802002105230041206b22002400200041808001360208200041b18304360204410221020240024002400240024020012802002203410247044041b1830441003a000020034504402000410236020c41b2830441003a00002000200141106a29030037031820002001290308370310200041046a200041106a411010190c030b4101210341b2830441013a00004103210241b3830421042001280204220641ffffffff076b41002006418280808078481b41016b0e020403010b4101210341b1830441013a000041b2830421040c030b2000410336020c41b3830441003a0000200141086a280200210220002001410c6a2802002201360210200041106a200041046a2203100f20032002200110190b200028020c220241818001490d02000b410221030b200420033a00000b20052002101b000b4d01017f230041106b220224002002200036020c2002410c6a2802002102410021002001280200044041b1830441013a0000410121000b200041b183046a20003a00002002200041016a101b000ba30101057f230041206b22012400200142808001370218200141b1830436021441b08104200141146a2202100c024020012802182205200128021c2203490d00200128021421042001410036021c2001200520036b3602182001200320046a36021420002002100d200128021c220020012802184b0d00200141086a220220042003200128021420001003220036020420022000417f47360200200141206a24000f0b000b2201017f230041106b22012400200120003a000f2001410f6a1015200141106a24000bb709010c7f230041206b220124000240101141ff01714105470d0020014180800136020841b18304200141086a2200100120012802082202418180014f0d002001200236020c200141b183043602082001410036020002400240200020014104101c0d0020012d0003210020012d0002210220012d000121030240024020012d0000220404402004412f460d012004413a470440200441e300460d03200441d501470d0441012104200341970147200241ab014772200041334772450d050c040b410221042003412046200241e5004671200041c30146710d040c030b41032104200341930146200241e8014671200041cc0046710d030c020b41042104200341860146200241db004671200041d9014671450d010c020b410021042003413a47200241a5014772200041d1004772450d010b200141013602084101200141086a1014000b2001410036020020014280800137020c200141b183043602082001200141086a2202100c200128020c220520012802102200490d00200128020821032001200520006b220536020820032000200020036a22002002100020052001280208220349720d002001200336020c2001200036020820021012220041ff01714102460d00200128020c0d002001200041ff0171220041004722023a00070240024002400240200441016b0e0401020403000b200141076a220020002d000041017322003a00002000100e20012d00071016200141003602084100200141086a1014000b2000452200100e20001016200141186a420037030020014205370310200141003602084100200141086a1013000b230041106b22022400200241086a2108230041106b22032400200341086a2109230041106b22072400230041106b2204240041b083042d00001a230041106b2205240041b483052802004504403f00210041b8830541c0830536020041b48305410136020041bc830520004110743602000b200541086a210b024041b883052802002200410a6a22062000490d0041bc83052802002006490440410140002200417f460d0120004110742200418080046a22062000490d0141bc830520063602002000410a6a22062000490d010b41b8830520063602004101210a0b200b2000360204200b200a36020020052802082100200528020c2106200541106a24002006410020001b2100200441086a2205410a36020420052000360200200428020c2100200741086a2205200428020836020020052000360204200441106a24000240200728020822000440200920003602042009410a360200200741106a24000c010b000b200328020c21002008200328020836020020082000360204200341106a240020022802082103200228020c41b48104410a10072104200141086a22054104722200410a3602082000200436020420002003360200200241106a240020014101360208410120051013000b200141003a0008200120023a0009230041106b220024002000410036020c2000410c6a2802002102230041106b22002400200041808001360208200041b183043602040240200141086a22012d0000044041b183044181023b0000410221010c010b41b1830441003a00002000410136020c200141016a200041046a100d200028020c220141818001490d00000b20022001101b000b000bcc0201077f230041106b22002400024002400240101141ff01714105470d0020004180800136020841b18304200041086a2202100120002802082201418180014f0d002000200136020c200041b18304360208200041003602042002200041046a22054104101c0d0120002d0007210120002d0006210320002d0005210420002d00042206419b01470440200441cb00462003419d0146712001411b467145200641ed0147720d02200041003a0004200510150c030b200441ae01472003419d014772200141de0047720d01200041086a22021012220141ff01714102460d01200020013a0004200041046a10150c020b000b200041013602084101200041086a1014000b20004200370208230041106b220024002000410036020c2000410c6a280200210041b18304200228020022013a000041b2830420012002280204724100473a000020004102101b000b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b20012002101d200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b0d00200041b1830420011004000b3901027f20002802042203200249220445044020012002200028020022012002101d2000200320026b3602042000200120026a3602000b20040b15002001200346044020002002200110071a0f0b000b0bb6030100418080040bad032f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000000000010069000000980000002e0000000000010069000000930000003000000001529cf346ddea0543633a1d91f021fa688fb7fe023ee1fb83ad031fe00567325400000000000000536f6d65206572726f722f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e7273be0001006a0000005d0000000e0000002f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e72730000003801010065000000770000000e","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"flipper","version":"0.1.0","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"init_value","type":{"displayName":["bool"],"type":0}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":2},"selector":"0x9bae9d5e"},{"args":[],"default":false,"docs":[],"label":"default","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":2},"selector":"0xed4b9d1b"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":11},"balance":{"displayName":["Balance"],"type":7},"blockNumber":{"displayName":["BlockNumber"],"type":16},"chainExtension":{"displayName":["ChainExtension"],"type":17},"hash":{"displayName":["Hash"],"type":14},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":15}},"events":[{"args":[{"docs":[],"indexed":true,"label":"new_value","type":{"displayName":["bool"],"type":0}}],"docs":[],"label":"Flipped","module_path":"flipper","signature_topic":"0x529cf346ddea0543633a1d91f021fa688fb7fe023ee1fb83ad031fe005673254"}],"lang_error":{"displayName":["ink","LangError"],"type":4},"messages":[{"args":[],"default":false,"docs":[],"label":"flip","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":2},"selector":"0x633aa551"},{"args":[],"default":false,"docs":[],"label":"flip_and_return_value","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":5},"selector":"0xd597ab33"},{"args":[],"default":false,"docs":[],"label":"return_error","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":5},"selector":"0x3a2065c3"},{"args":[],"default":false,"docs":[],"label":"do_panic","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":2},"selector":"0x0093e84c"},{"args":[],"default":false,"docs":[],"label":"get","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":10},"selector":"0x2f865bd9"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":0}},"name":"value"}],"name":"Flipper"}},"root_key":"0x00000000","ty":1}},"types":[{"id":0,"type":{"def":{"primitive":"bool"}}},{"id":1,"type":{"def":{"composite":{"fields":[{"name":"value","type":0,"typeName":",>>::Type"}]}},"path":["flipper","flipper","Flipper"]}},{"id":2,"type":{"def":{"variant":{"variants":[{"fields":[{"type":3}],"index":0,"name":"Ok"},{"fields":[{"type":4}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":3},{"name":"E","type":4}],"path":["Result"]}},{"id":3,"type":{"def":{"tuple":[]}}},{"id":4,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":5,"type":{"def":{"variant":{"variants":[{"fields":[{"type":6}],"index":0,"name":"Ok"},{"fields":[{"type":4}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":6},{"name":"E","type":4}],"path":["Result"]}},{"id":6,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":8}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":8}],"path":["Result"]}},{"id":7,"type":{"def":{"primitive":"u128"}}},{"id":8,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9,"typeName":"String"}],"index":0,"name":"SomeError"},{"index":1,"name":"SomeError2"},{"index":2,"name":"SomeError3"}]}},"path":["flipper","FlipperError"]}},{"id":9,"type":{"def":{"primitive":"str"}}},{"id":10,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":4}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":4}],"path":["Result"]}},{"id":11,"type":{"def":{"composite":{"fields":[{"type":12,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":12,"type":{"def":{"array":{"len":32,"type":13}}}},{"id":13,"type":{"def":{"primitive":"u8"}}},{"id":14,"type":{"def":{"composite":{"fields":[{"type":12,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":15,"type":{"def":{"primitive":"u64"}}},{"id":16,"type":{"def":{"primitive":"u32"}}},{"id":17,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/flipper.json b/artifacts/flipper.json new file mode 100644 index 0000000..6995c52 --- /dev/null +++ b/artifacts/flipper.json @@ -0,0 +1,533 @@ +{ + "source": { + "hash": "0xf6888365661acaa043a864668e134dde5ca00c17978fefcfb1e40cbcf5092dde", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "flipper", + "version": "0.1.0", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "init_value", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 2 + }, + "selector": "0x9bae9d5e" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "default", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 2 + }, + "selector": "0xed4b9d1b" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 11 + }, + "balance": { + "displayName": ["Balance"], + "type": 7 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 16 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 17 + }, + "hash": { + "displayName": ["Hash"], + "type": 14 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 15 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "new_value", + "type": { + "displayName": ["bool"], + "type": 0 + } + } + ], + "docs": [], + "label": "Flipped", + "module_path": "flipper", + "signature_topic": "0x529cf346ddea0543633a1d91f021fa688fb7fe023ee1fb83ad031fe005673254" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 4 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "flip", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 2 + }, + "selector": "0x633aa551" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "flip_and_return_value", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 5 + }, + "selector": "0xd597ab33" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "return_error", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 5 + }, + "selector": "0x3a2065c3" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "do_panic", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 2 + }, + "selector": "0x0093e84c" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "get", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 10 + }, + "selector": "0x2f865bd9" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "value" + } + ], + "name": "Flipper" + } + }, + "root_key": "0x00000000", + "ty": 1 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 0, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["flipper", "flipper", "Flipper"] + } + }, + { + "id": 2, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 3 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 3 + }, + { + "name": "E", + "type": 4 + } + ], + "path": ["Result"] + } + }, + { + "id": 3, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 5, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 6 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 6 + }, + { + "name": "E", + "type": 4 + } + ], + "path": ["Result"] + } + }, + { + "id": 6, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 8 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 8 + } + ], + "path": ["Result"] + } + }, + { + "id": 7, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9, + "typeName": "String" + } + ], + "index": 0, + "name": "SomeError" + }, + { + "index": 1, + "name": "SomeError2" + }, + { + "index": 2, + "name": "SomeError3" + } + ] + } + }, + "path": ["flipper", "FlipperError"] + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 10, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 4 + } + ], + "path": ["Result"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 12, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 12, + "type": { + "def": { + "array": { + "len": 32, + "type": 13 + } + } + } + }, + { + "id": 13, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 14, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 12, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 15, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 16, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 17, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/flipper.wasm b/artifacts/flipper.wasm new file mode 100644 index 0000000..c071027 Binary files /dev/null and b/artifacts/flipper.wasm differ diff --git a/artifacts/lending_pool.contract b/artifacts/lending_pool.contract new file mode 100644 index 0000000..5adaf5f --- /dev/null +++ b/artifacts/lending_pool.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x9d0661fc3d611a2964851f42911c3c2735548ab4e0d599f49b246000f11f38c2","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d010000000198022360027f7f0060037f7f7f0060017f0060027f7f017f60017f017f60047f7f7f7f0060037f7f7f017f60057f7e7e7e7e0060027e7e0060037e7e7f0060047f7e7e7f006000017f60087f7f7f7f7f7f7f7f0060000060057f7f7f7e7e0060047f7f7f7f017f60087f7f7f7f7f7f7e7e00600b7f7e7f7f7f7f7f7f7f7f7f017f60087f7f7e7f7f7f7f7f017f60077f7f7f7f7f7f7f006000017e60037f7f7e017f60097f7f7e7e7e7e7f7f7f0060047e7e7e7f0060027e7f0060037e7e7e0060087f7f7f7e7e7f7e7e00600a7f7f7f7f7f7f7f7f7f7e0060067f7f7f7f7f7f0060047f7e7f7f0060077f7f7e7e7e7e7e0060087f7e7e7e7e7e7e7f0060077f7f7f7e7e7e7e017f60077f7e7e7e7e7e7e0060057f7f7e7e7f0002b30210057365616c310b6765745f73746f72616765000f057365616c310b696e7374616e74696174650011057365616c3005696e7075740000057365616c310463616c6c0012057365616c300d6465706f7369745f6576656e740005057365616c320b7365745f73746f72616765000f057365616c310d636c6561725f73746f726167650003057365616c3110636f6e7461696e735f73746f726167650003057365616c300b7365616c5f72657475726e0001057365616c300d7365745f636f64655f686173680004057365616c300663616c6c65720000057365616c3007616464726573730000057365616c301176616c75655f7472616e736665727265640000057365616c30036e6f770000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f72790201021003e301e101060606060a070a07070100010200000809000000000000000000040103000100000013000100040000000004030300000000040000000002020b03031400000001150016000000020c00020100000009000001000400040506030101000000020000020208020017021802020208020d19000000080000000001010000000000000009000e0e01000b000003010000050e1a0001030300001b1c0501001d000500000003000400000101001e021f00000501010404010d000000000d000102060001000605000002000000000000000b10200c100c00010721070a2204040905000616037f01418080040b7f0041908a050b7f0041888a050b0713020463616c6c00c501066465706c6f7900ca010a8dcb06e1012b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0b830102017f017e230041106b220424000240200341c000714504402003450d0120022003413f71ad2205862001410020036b413f71ad88842102200120058621010c010b20012003413f71ad862102420021010b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000b9b0102017f067e230041106b220524002005200342ffffffff0f832206200142ffffffff0f8322077e22082007200342208822097e220720062001422088220a7e7c22064220867c220b37030020052008200b56ad2009200a7e2006200754ad4220862006422088847c7c200120047e200220037e7c7c370308200529030021012000200541086a29030037030820002001370300200541106a24000b830102017f017e230041106b220424000240200341c000714504402003450d012002410020036b413f71ad8620012003413f71ad220588842101200220058821020c010b20022003413f71ad882101420021020b2004200137030020042002370308200429030021012000200441086a29030037030820002001370300200441106a24000bd10502057e037f230041206b220a24000240024002402004504504402002502001200354200220045420022004511b720d01200a41106a20032004200479a7200279a76b220b41ff007110134201200b413f71ad862109200a41186a2903002107200a29031021080340200220077d2001200854ad7d2205420059044020062009842106200120087d2201200354200420055620042005511b0d04200521020b2007423f86200842018884210820094201882109200742018821070c000b000b02400240200250450440200220035a044020022003510d0220022003822105200220038021092003428080808010540440200542208620014220888422022003802204422086200142ffffffff0f8320022003824220868422012003808421062004422088200984210920012003822101420021050c070b2001200354200420055620042005511b0d032004423f8620034201888421072003423f862108428080808080808080807f210203400240200520077d2001200854ad7d22044200590440200120087d2101200220068421062004500d01200421050b2007423f86200842018884210820024201882102200742018821070c010b0b2001200380200684210642002105200120038221010c060b200a20032004413f200379a7220b200279a7220c6b41406b200b200c461b220b10134201200b413f71ad862105200a41086a2903002107200a29030021084200210403400240200220077d2001200854ad7d22064200590440200120087d2101200420058421042006500d01200621020b2007423f86200842018884210820054201882105200742018821070c010b0b2001200380200484210642002105200120038221010c040b20012003802106200120038221010c030b2001200280210642012109200120028221010c030b0c020b200221050b420021090b2000200137031020002006370300200041186a200537030020002009370308200a41206a24000b3b01017f230041206b22052400200520012002200320041016200529030021012000200541086a29030037030820002001370300200541206a24000b1300200220011019200220002001410474101a0b2501017f230041106b220224002002200136020c2002410c6a200010dd01200241106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100f1a200020043602080f0b000b000beb0102067f037e230041306b22012400200142808001370228200141888a0436022441d8bfd68879200141246a2205101c0240024020012802282204200128022c2202490d00200128022421032001200420026b220436022420032002200220036a2203200510002102200420012802242206492002410f4f720d00200241e889046a2d000022024103460d0120024110470d002001200636022820012003360224200141086a2005101d2001290308a70d01200141186a290300210820012903102109420121070c010b000b2000200937030820002007370300200041106a2008370300200141306a24000b2601017f230041106b220224002002200036020c20012002410c6a4104101a200241106a24000b5502027f017e230041206b22022400200241086a20011043200241186a29030021042002280208210320002002290310370308200041106a200437030020002003200128020472410047ad370300200241206a24000b0f002000200141d8bfd6887910ed010b2a01017f230041106b220324002003200137030820032000370300200220034110101a200341106a24000b3501017f230041406a22022400200241086a2001102120022d00394103460440000b2000200241086a4138100f1a200241406b24000b830402067f067e230041106b22022400200242808001370208200241888a0436020441e886042001200241046a2205102a02400240024020022802082201200228020c2204490d00200228020421032002200120046b220136020420032004200320046a2204200510002106200120022802042203492006410f4f720d00200641e889046a2d00002201410347044020014110470d0120022003360208200220043602044102210120051041220741ff01714102460440200228020821030c030b200241046a1041220641ff017141024620022802082203411049720d0220022002280204220541106a360204200341106b22044108490440200421030c030b200541086a29000021082005290000210920022002280204220541086a360204200341186b22044110490440200421030c030b2005290000210a20022002280204220541106a360204200341286b22044108490440200421030c030b200541086a290000210b2005290000210c200341306b21032002280204290000210d200621010c020b200041023a00310c020b000b0240200141ff01714102460d004102200120031b220141ff01714102460d002000200c37031020002009370300200020073a00302000200d3703282000200a370320200041186a200b37030020002008370308200020013a00310c010b200041033a0031200041103a00000b200241106a24000b3801017f230041d0006b22022400200241086a2001102320022903084202510440000b2000200241086a41c800100f1a200241d0006a24000bf90202057f047e230041106b22042400200442808001370208200441888a0436020441cc86042001200441046a2205102a024020042802082202200428020c2201490d00200428020421032004200220016b220636020420032001200120036a2201200510002102200620042802042203492002410f4f720d002000027e4200200241e889046a2d000022024103460d001a20024110470d010240200341707122054110462003411049720d00200341787141204622022002720d00200341286b22024104492002417c71410446722005413046200341c0004772720d00200141086a290000210720012900002108200141186a29000021092001290020210a200128002821032000200129001037031820002008370308200020033602402000200a37032820002001290030370330200041206a2009370300200041106a20073703002000200128002c360244200041386a200141386a29000037030042010c010b200041103a000842020b370300200441106a24000f0b000ba70201047f230041406a220224002002411c6a200141086a290000370200200241246a200141106a2900003702002002412c6a200141186a290000370200200241d0860436021020022001290000370214200242808001370238200241888a0436023441cae6f3f77e200241346a2204101c200241146a20041025024020022802382205200228023c2201490d00200228023421032002200520016b220536023420032001200120036a2203200410002101200520022802342204492001410f4f720d002000027f200141e889046a2d0000220141034604404100210341100c010b20014110470d012002200436023820022003360234200241086a200241346a102620022802080d0141012103200228020c0b36020420002003360200200241406b24000f0b000b0a00200120004120101a0b3e01027f230041106b22022400200241086a2001102f200228020821032000200228020c36020420002003200128020472410047360200200241106a24000b820101017f230041f0006b22022400200241d8006a200141086a290000370200200241e0006a200141106a290000370200200241e8006a200141186a290000370200200241f0860436024c200220012900003702502002410b6a200241cc006a102820022d000b4102460440000b20002002410b6a41c100100f1a200241f0006a24000be90201057f23004180016b22022400200242808001370244200241888a043602402001280200200241406b2205108201200141046a2005102502402002280244220620022802482201490d00200228024021032002200620016b220636024020032001200120036a2201200510002104200620022802402203492004410f4f720d002000027f4100200441e889046a2d000022044103460d001a20044110470d01024020034160714120462003412049720d00200241f8006a200141386a290000370300200241f0006a200141306a290000370300200241e8006a200141286a290000370300200241c8006a200141086a290000370300200241d0006a200141106a290000370300200241d8006a200141186a29000037030020022001290020370360200220012900003703402002200541c000100f2101200341c000470d00200041016a200141c000100f1a41010c010b200041103a000141020b3a000020024180016a24000f0b000b5401017f230041106b22012400200142808001370208200141888a0436020441d886042000200141046a102a200128020c220020012802084b0440000b20012802042000102b2100200141106a240020004100470b0f002000200210820120012002101c0b0b00200020011007417f470ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061025200228020c220120022802084b0d00200620022802042001102d2002410036022c20022004360228200220053602242006200241246a10252003200228022c6a22012003490d0020002001360208200241306a24000f0b000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a100e200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100f1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000bce0102027f047e230041d0006b22022400200241c8006a2001102f42012104024020022802480d00200228024c2103200241386a2001103020022802380d0020022903402105200241286a2001103020022802280d0020022903302106200241186a2001103020022802180d0020022903202107200241086a200110302002290308a70d002002290310210420002005370308200041286a2003360200200041206a2004370300200041186a2007370300200041106a2006370300420021040b20002004370300200241d0006a24000b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b4802017f027e20012802042202410849047e4201052001200241086b36020420012001280200220141086a3602002001290000210342000b210420002003370308200020043703000bf80601037f230041c0016b22072400200741f8006a200141186a290000370300200741f0006a200141106a290000370300200741e8006a200141086a29000037030020072001290000370360200741a8016a2201200541086a280200360200200741b4016a200441086a280200360200200720042902003702ac01200741086a2001290300370300200741106a2209200741b0016a29030037030020072005290200370300200741346a200241186a2900003702002007412c6a200241106a290000370200200741246a200241086a2900003702002007200229000037021c200741d4006a200341186a290000370200200741cc006a200341106a290000370200200741c4006a200341086a2900003702002007200329000037023c20074190016a42003703002007420037038801200720033602980120074280c8afa025370380012007419bddf6f40536025c200720063a00182007428080013702a401200741888a043602a001200741e0006a200741a0016a22081025024020072802a401220420072802a8012201490d0020072802a0012102200741003602a8012007200420016b3602a4012007200120026a3602a001420042002008101f20072802a401220520072802a8012201490d0020072802a0012104200741003602a8012007200520016b3602a4012007200120046a3602a001200741dc006a200810322009280200200741146a2802002008103320072802042007280208200810332006200810342007411c6a200810252007413c6a2008102520072802a401220520072802a8012201490d00200520016b2206411f4d0d0020072802a0012105200741203602bc012007200641206b22063602a00120024280c8afa025200420052001200120056a2201200741bc016a200141206a2008200341201001210220072802bc01220441214f0d00200620072802a0012203492002410f4f720d000240200241e889046a2d0000220241104704402003452002410247720d022007200341016b3602a4012007200141216a3602a00120012d002041016b0d020c010b20044120490d0120012d0000210220012f0001210320002001280003360003200020033b0001200020023a00002000411f6a2001411f6a2d00003a0000200041176a200141176a2900003700002000410f6a2001410f6a29000037000020002001290007370007200741c0016a24000f0b200741a0016a10351a0b000b0a00200120004104101a0b1000200220011019200220002001101a0b2601017f230041106b22022400200220003a000f20012002410f6a4101101a200241106a24000b3601027f230041106b22012400200141086a2000103f20012d0009210020012d00082102200141106a24002002417f732000410146710ba00401017f0240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002402000280200220241076b4100200241086b411b491b41016b0e1b0102030405060708090a0b0c0d0e0f101112131415161718191a1b000b20014100103702400240024002400240024002400240200241016b0e0701020304050607000b2001410010370c220b2001410110370f0b2001410210370f0b2001410310370f0b2001410410370f0b2001410510370c1d0b2001410610370f0b2001410710370f0b2001410110370c1b0b2001410210370c1a0b2001410310372001410010370f0b2001410410370c180b2001410510370c170b2001410610370c160b2001410710372000280204418080808078460440200141001037200120002d000810370f0b20014101103720002802082000410c6a280200200110330f0b2001410810370f0b2001410910370f0b2001410a10370f0b2001410b10370f0b2001410c10370f0b2001410d10370f0b2001410e10370f0b2001410f10370f0b2001411010370f0b2001411110370f0b2001411210370f0b2001411310370f0b2001411410370f0b2001411510370f0b2001411610370f0b2001411710370f0b2001411810370f0b2001411910370f0b2001411a103720002d0004200110340f0b2001411b10370f0b200041086a2802002000410c6a280200200110330f0b200120002d000410370b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b6201037f230041106b22022400200241086a2001102f41012103024020022802080d00200228020c210420022001102f20022802000d002002280204210120002004360204200041086a2001360200410021030b20002003360200200241106a24000b19002000200110252000290320200041286a2903002001101f0bbb0101047f230041206b22012400200142808001370218200141888a0436021441f888042000200141146a2203102a024020012802182204200128021c2200490d00200128021421022001200420006b220436021420022000200020026a2200200310002102200420012802142203490d00027f0240024020020e0400030301030b2001200336021820012000360214200141086a200141146a102620012802080d02200128020c0c010b41000b2100200141206a240020000f0b000b1f00027f20002001103c4504404101200041d98504103c450d011a0b41030b0b5101017f230041306b22022400200220003602082002410c6a20014121100f1a41012101200241086a10eb01450440200241003a000c20022000360208200241086a10eb0121010b200241306a240020010bf70101057f230041406a2202240002402001280204220541204f04402001200541206b220636020420012001280200220341206a2204360200200641204f04402001200541406a3602042001200341406b360200200241286a200441086a290000370300200241306a200441106a290000370300200241386a200441186a290000370300200241086a200341086a290000370300200241106a200341106a290000370300200241186a200341186a2900003703002002200429000037032020022003290000370300200041016a200241c000100f1a200041003a00000c020b200041013a00000c010b200041013a00000b200241406b24000b8b0201047f230041306b22022400200241086a2001102f02402002280208450440200228020c210320022001103f024020022d00000d000240024020022d000122040e020100020b200128020422054120490d012001200541206b36020420012001280200220141206a360200200241186a200141086a290000370300200241206a200141106a290000370300200241286a200141186a290000370300200220012900003703100b20002002290310370005200020043a0004200020033602002000411d6a200241286a290300370000200041156a200241206a2903003700002000410d6a200241186a2903003700000c020b200041023a00040c010b200041023a00040b200241306a24000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b840101017f0240200128020422024120490d002001200241206b36020420012001280200220241206a36020020011041220141ff01714102460d00200020013a002020002002290000370000200041186a200241186a290000370000200041106a200241106a290000370000200041086a200241086a2900003700000f0b200041023a00200b3f01027f230041106b22012400200141086a2000103f20012d0009210020012d00082102200141106a240041024101410220004101461b410020001b20021b0bb00302067f027e23004180016b220224000240024002402001280204220641204f04402001200641206b220336020420012001280200220441206a220536020020034120490d012001200641406a22073602042001200441406b220336020020074120490d022001200641e0006b3602042001200441e0006a360200200241086a200110432002290308a7450440200241186a290300210820022903102109200241386a200441186a290000370300200241306a200441106a290000370300200241286a200441086a290000370300200241c8006a200541086a290000370300200241d0006a200541106a290000370300200241d8006a200541186a290000370300200241e8006a200341086a290000370300200241f0006a200341106a290000370300200241f8006a200341186a290000370300200220042900003703202002200529000037034020022003290000370360200041086a200241206a41e000100f1a200041f0006a2008370300200041e8006a2009370300200042003703000c040b200042013703000c030b200042013703000c020b200042013703000c010b200042013703000b20024180016a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000bfd0302087f027e230041b0016b220224000240024002402001280204220441204f04402001200441206b220636020420012001280200220341206a2205360200200241e8006a2207200341086a290000370300200241f0006a2208200341106a290000370300200241f8006a2209200341186a2900003703002002200329000037036020064120490d012001200441406a3602042001200341406b36020020024188016a2203200541086a29000037030020024190016a2204200541106a29000037030020024198016a2206200541186a2900003703002002200529000037038001200241086a2001104320022802080d02200241186a290300210a2002290310210b200241a4016a2001104520022802a401418080808078470440200020022902a401370250200041d8006a200241ac016a280200360200200241286a2007290300370300200241306a2008290300370300200241386a2009290300370300200241c8006a2003290300370300200241d0006a2004290300370300200241d8006a20062903003703002002200229036037032020022002290380013703402000200241206a41c000100f220041c8006a200a3703002000200b3703400c040b20004180808080783602500c030b20004180808080783602500c020b20004180808080783602500c010b20004180808080783602500b200241b0016a24000ba30101067f230041106b22022400200241086a2001106c4180808080782103024020022802080d0020012802042206200228020c2204490d0020022004410110a201200228020021052002280204200128020022032004100f21072001200620046b3602042001200320046a36020041808080807821032005418080808078460d0020002007ad2004ad42208684370204200521030b20002003360200200241106a24000b850101027f230041106b2201240020014180800136020c41888a042001410c6a100b200128020c2202418180014f2002411f4d72450440200041898a04290000370001200041096a41918a04290000370000200041116a41998a04290000370000200041186a41a08a04290000370000200041888a042d00003a0000200141106a24000f0b000b850101027f230041106b2201240020014180800136020c41888a042001410c6a100a200128020c2202418180014f2002411f4d72450440200041898a04290000370001200041096a41918a04290000370000200041116a41998a04290000370000200041186a41a08a04290000370000200041888a042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a100c200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b0b0020002001104a4101730b0b002000200141201012450b4202017f017e230041106b22002400200042003703002000410836020c20002000410c6a100d200028020c41094f0440000b20002903002101200041106a240020010bd10101067f230041206b22022400200242808001370218200241888a0436021441d086042001200241146a2205109b01024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2206200510002101200420022802142207492001410f4f720d00411121032000200141e889046a2d00002201410347047f20014110470d012002200736021820022006360214200241086a2005102620022802080d012000200228020c36020441230541110b360200200241206a24000f0b000b8b0101037f23004180016b22022400200241c8006a220320011021024020022d007922014103460d00200241106a220420034131100f1a2002410c6a2203200241fe006a2f01003b01002002200228017a36020820014102460d00200020044131100f220020013a003120002002280208360132200041366a20032f01003b010020024180016a24000f0b000b5502017f017e23004190016b22022400200241c8006a200110230240200229034822034202510d00200241086a2201200241d0006a41c000100f1a2003500d002000200141c000100f1a20024190016a24000f0b000b8d0101017f230041d0006b22032400200341046a20021054024002402001200328020c4904402003280208200141c8006c6a22012903004200520d010b200341106a410041c00010111a0c010b200341106a200141086a41c000100f1a0b20002003290204370240200041c8006a2003410c6a2802003602002000200341106a41c000100f1a200341d0006a24000be60302027f077e230041406a220324000240200220002903202205540d004103210420022005510d00200220057d210702400240024020012903202205500d002001290300200141086a29030084500d00200341186a20054200200742001014027e200341206a290300220b2003290318220a42808090bbbad6adf00d7c2205200a54ad7c2206200041086a29030022082000290300220942808090bbbad6adf00d8584500d001a200a200b845004402009210520080c010b200341286a200920082005200642808090bbbad6adf00d4200410110bc0120032d00280d0220032903302105200341386a2903000b210620002005370300200020063703080b20012903282205500d012001290310200141186a29030084500d01200341086a20054200200742001014027e200341106a290300220a2003290308220742808090bbbad6adf00d7c2206200754ad7c2205200041186a220129030022082000290310220942808090bbbad6adf00d8584500d001a2007200a845004402009210620080c010b200341286a200920082006200542808090bbbad6adf00d4200410010bc0120032d00280d0120032903302106200341386a2903000b210520002006370310200120053703000c010b20032d002921040c010b200020023703200b200341406b240020040bca0502067f017e23004180026b220224002002410f6a10bb0102402000027f20022d000f45044041000c010b200241c0016a2204200241286a290000370300200241b8016a200241206a290000370300200241b0016a200241186a290000370300200220022900103703a801200241e8006a220620024198016a22034130100f1a200241d8006a4200370300200241386a20024180016a290300370300200241406b20024188016a290300370300200241c8006a20024190016a290300370300200241e0006a4200370300200241ec016a200141186a290000370200200241e4016a200141106a290000370200200241dc016a200141086a2900003702002002420037035020022002290378370330200220012900003702d4012003200241306a4138100f1a200241f4016a220741c7e2e1b806360200200241003602d00120022903c801210820024280800137026c200241888a04360268200320061025200228026c220520022802702201490d0120022802682103200241003602702002200520016b36026c2002200120036a36026820022903b80120042903002006101f200228026c220520022802702201490d0120022802682104200241003602702002200520016b36026c2002200120046a360268200720061032200241d4016a20061025200228026c220520022802702201490d01200228026821072002200520016b2205360268410020032008200420072001200120076a2201200610032103200520022802682204492003410f4f720d01200445200341e889046a2d00002203411047200341024771720d012002200441016b3602fc012002200141016a3602f8010240024020012d00000e020100030b200241f8016a1035450d0220022802fc011a0c020b200241e8006a200241f8016a103820022802680d0120022802fc010d01200228026c2103200241f0006a2802000b3602042000200336020020024180026a24000f0b000ba10902037f0a7e230041206b220924000240024002400240024002400240024002400240027e02400240024002400240024002402001290320220f200254200141286a290300220c2003542003200c51220a1b41012001290330221520045a200141386a290300221420055a20052014511b1b0440200c200f84502002200f582003200c58200a1b720d07420020012903002210200141086a290300220d84500d081a200941086a220b2010200d20022003200f200c410110bc0120092d00080d012009290310220c201054220a200941186a290300220e200d54200d200e511b0d02200b200c20107d200e200d7d200aad7d200628021010e90120092d00080d03200741c1843d4f0d09200b2009290310200941186a29030041c0843d20076b10e90120092d00080d04200c2009290310220f542207200e200941186a290300221254200e2012511b0d05200c200f7d2213201054220a200e20127d2007ad7d220e200d54200d200e511b0d06200120133703002001200e3703082006290300220c200f7c220f200c5422072007ad2012200641086a29030022127c7c220c201254200c2012511b450440201320107d21132006200f3703002006200c370308200e200d7d200aad7d0c090b20004181023b01000c120b20004200370308200041003a0000200041106a4200370300200041186a4200370300200041206a42003703000c110b20092d00092101200041013a0000200020013a00010c100b200041013b01000c0f0b20092d00092101200041013a0000200020013a00010c0e0b20092d00092101200041013a0000200020013a00010c0d0b200041013b01000c0c0b200041013b01000c0b0b42000b211220012002370320200141286a200337030020012903102210200141186a220b290300220d8450201420158450720d07420021022004201556200520145620052014511b450d08200941086a220a2010200d2004200520152014410010bc0120092d00080d01200929031022032010542207200941186a290300220e200d54200d200e511b0d02200a200320107d200e200d7d2007ad7d200628021410e90120092d00080d03200841c1843d4f0d00200a2009290310200941186a29030041c0843d20086b10e90120092d00080d042003200929031022027c220c20035422072007ad200e200941186a290300220f7c7c2211200e54200e2011511b0d05200c2010542208200d201156200d2011511b0d062001200c370310200b20113703002002200629030022027c220320025422072007ad200641086a2903002202200f7c7c220f2002542002200f511b4504402011200d7d2008ad7d2102200c20107d2111200620033703002006200f3703080c090b20004181023b01000c090b000b20092d00092101200041013a0000200020013a00010c070b200041013b01000c060b20092d00092101200041013a0000200020013a00010c050b20092d00092101200041013a0000200020013a00010c040b20004181023b01000c030b200041013b01000c020b420021020b2000201337030820012004370330200041003a0000200041206a2002370300200041186a2011370300200041106a2012370300200141386a20053703000b200941206a24000beb0102017f077e230041d0006b22022400200241386a2001104342012103024020022802380d00200241c8006a290300210420022903402105200241206a2001104320022802200d00200241306a290300210620022903282107200241086a2001104320022802080d00200241186a29030021082002290310210920022001102f20022802002001280204720d002002280204210120002005370308200041306a2008370300200041286a2009370300200041206a2006370300200041186a2007370300200041106a2004370300200041386a2001360200420021030b20002003370300200241d0006a24000b960302047f017e230041406a22022400200241246a200110a601200241186a10d601200241106a200228021c410020022802181b220310cf012002410036023820022002290310370230200241306a200310d1012002280238210120022003047f200120036a21042002280234200141c8006c6a2101034020014200370300200141c8006a2101200341016b22030d000b20040520010b360238024020022802244180808080784604402002290234210620022002280230360230200220063702342006422088a721010c010b200241386a2002412c6a2802002201360200200220022902243703300b200241086a10d6012001200228020c410020022802081b2204490440200241306a200420016b220310d10120022802342002280238220441c8006c6a2201420037030041012003200341014d1b2105200341024f0440200541016b2103200141c8006a2101034020014200370300200141c8006a2101200341016b22030d000b0b2002200420056a3602380b20002002290330370200200041086a200241386a280200360200200241406b24000b3e01017f230041406a220224002002200110a5010240200229030050044020004100413410111a0c010b2000200241086a4138100f1a0b200241406b24000bd90602077f017e230041d0016b22012400200141046a1059200141106a220241bae696857a10d501024020012d0010410171450d00200141a0016a200141296a29000037030020014198016a200141216a29000037030020014190016a200141196a2900003703002001200129001137038801200141c8006a2206200141f8006a4130100f1a200141386a4200370300200141186a200141e0006a290300370300200141206a200141e8006a290300370300200141286a200141f0006a290300370300200141406b420037030020014180016a2001410c6a28020036020020014200370330200120012903583703102001200129020437037820014188016a20024138100f2102200141003602c00120014187dd97c50736028401200141b8016a290300210820014280800137024c200141888a04360248200220061025200128024c220320012802502202490d0020012802482104200141003602502001200320026b36024c2001200220046a360248200141a8016a290300200141b0016a2903002006101f200128024c220520012802502202490d0020012802482103200141003602502001200520026b36024c2001200220036a36024820014184016a20061032200128027c2001280280012006108801200128024c220720012802502202490d00200128024821052001200720026b2207360248410020042008200320052002200220056a2202200610032103200720012802482204492003410f4f720d00200445200341e889046a2d00002203411047200341024771720d002001200441016b22033602cc012001200241016a3602c801027f02400240024020022d00000e020001040b2003450d032001200441026b22033602cc012001200241026a22053602c801024020022d00010e020200040b2003450d03200441034720052d0000220241014b720d034201420220024101461b420020021b2108410d2104200041046a0c020b200141c8016a1035450d0220012802cc011a0c020b200141c8006a200141c8016a10c60120012802482202418080808078460d0120012802cc010d012000410f6a200129024c22084238883c00002000410d6a20084228883d0000200020084208883e00092000200236020441232104200041086a0b210220002004360200200220083c0000200141d0016a24000f0b000b920a020e7f0f7e230041a0026b22082400200841ec006a2003280230109d01200341086a2903002117200341186a2903002116200341286a290300211b20032903002119200329031021182003290320211c200841e0006a10d6010240027f02402008280260450440420021174200211642002119420021180c010b02402008280264220c450440420021174200211642002119420021180c010b2016201783221d201b84211e2018201983221f201c842120200841e0016a21102008280274210f2008280270211141002103200841d8006a2112200841d0016a2113200c210d42002119420021184200211742002116024002400240024002400240024002400340200341c8006c210e200620034104746a210b2001210a201121090340200841d0006a2020201e200341ff0071221410152008290350221a201229030084500d0a0240201a42018350450440200220034d0d05200a200e6a221529030050450d010b200a41c8006a210a200b41106a210b200941c8006a2109200d200341016a2203460d0b0c010b0b200841f8006a220d201541086a41c000100f1a200841b8016a2003104e200841f8016a200d20082903b801200841c0016a29030020082903c8012013290300201020042005105220082d00f801450440200841406b420142002014101320082903402221201f83200841c8006a2903002222201d838450450440200320074f0d04200841306a200310be01200841206a200829037820084180016a290300200b290300200b41086a2903002008290330200841386a29030010e7010240024002402003200f490440200841286a290300211a200829032021232009200e6a220a29030022244202560d032024a741016b0e020301020b200042153702040c0d0b200042153702042000410c6a42003702000c0c0b20004115360204200041106a42003e0200200041086a42003703000c0b0b200841f8016a2023201a200a41086a290300200a41106a29030010e80120082d00f8010440200041086a20082d00f9013a0000200041093602040c0b0b201720172008290380027c221756220a200aad201620084188026a2903007c7c221a2016542016201a511b0d03201a21160b201c202183201b2022838450450440200320074f0d04200841106a200310be01200820082903880120084190016a290300200b290300200b41086a2903002008290310200841186a29030010e7012003200f4f0d052009200e6a22092903004202510d06200941186a280200450d07200841f8016a2008290300200841086a290300200941206a290300200941286a29030010e80120082d00f8010d08201920192008290380027c22195622092009ad201820084188026a2903007c7c221a2018542018201a511b0d09201a21180b200c200341016a22032003200c491b210d2003200c4f0d0a0c010b0b200041086a20082d00f9013a0000200041093602040c070b20004109360204200041086a41013a00000c060b000b200042143702040c040b200041143602040c030b20004114360204200041106a42003e0200200041086a42003703000c020b200041086a20082d00f9013a0000200041093602040c010b20004109360204200041086a41013a00000b200041023a00000c030b2017201954201620185420162018511b450d00201820167d2017201956ad7d2116201920177d211741000c010b201620187d2017201954ad7d2116201720197d211741010b210320002017370308200020033a0000200041106a20163703000b200841a0026a24000bfa0101057f230041206b22022400200242808001370218200241888a0436021441c486042001200241146a2205102a024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2203200510002101200420022802142206492001410f4f720d0002400240200141e889046a2d00002201410347044020014110470d03200220063602102002200336020c20052002410c6a10d80120022802142201418080808078460d0120002002290218370204200020013602000c020b20004180808080783602000c010b2000418180808078360200200041103a00040b200241206a24000f0b000bc903010b7f230041406a22012400200141086a10d6012001200128020c410020012802081b2206106d2001410036021c200120012802042203360218200120012802002202360214024002400240024020022006490440200141146a410020061067418180808078460d010c040b2006450d020c010b200128021c2105200128021821030b200320054105746a2103200141286a210a200141376a210b0340200142808001370224200141888a0436022041bc86042007200141206a2208102a2001280224220920012802282202490d02200128022021042001200920026b220936022020042002200220046a2202200810002104200920012802202208492004410f4f720d02200441e889046a2d00004110472008412047720d02200a200241096a290000370300200141306a2204200241116a290000370300200b200241186a29000037000020012002290001370320200320022d00003a0000200341016a2001290320370000200341096a200a290300370000200341116a2004290300370000200341186a200b290000370000200341206a21032006200741016a2207470d000b200520076a21050b20002001290214370200200041086a2005360200200141406b24000f0b000bad0202067f017e230041e0006b220324002003410036021420034280808080800137020c0240024002402002044020024105742102200341d0006a2106200341406b21070340200341186a22042001104c200328021c2105200328021822084123470d032004200510222003290318500d022003290348210920072006290300370300200341306a200141186a290000370300200341286a200141106a290000370300200341206a200141086a29000037030020032009370338200320012900003703182003410c6a20041064200141206a2101200241206b22020d000b0b2000200329020c370204200041233602002000410c6a200341146a2802003602000c020b200041113602000c010b2000200329022037020820002005360204200020083602000b200341e0006a24000b830202057f027e230041306b22022400200242808001370228200241888a0436022441e086042001200241246a2205102a024020022802282204200228022c2201490d00200228022421032002200420016b220436022420032001200120036a2203200510002101200420022802242206492001410f4f720d0002400240200141e889046a2d00002201410347044020014110470d032002200636022820022003360224200241086a2005101d2002290308a70d01200241186a2903002107200229031021082000420137030020002008370308200041106a20073703000c020b200042003703000c010b20004202370300200041103a00080b200241306a24000f0b000b8d0202057f017e230041a0016b22022400200242808001370254200241888a0436025041dc86042001200241d0006a2205102a02402002280254220420022802582201490d00200228025021032002200420016b220436025020032001200120036a2203200510002101200420022802502206492001410f4f720d0002400240200141e889046a2d00002201410347044020014110470d0320022006360204200220033602002005200210c801200229035022074202510d01200241086a2201200241d8006a41c800100f1a20022802040d01200041086a200141c800100f1a200020073703000c020b200042023703000c010b20004203370300200041103a00080b200241a0016a24000f0b000be70101057f230041106b22022400200242808001370208200241888a043602042001200241046a220510da01024020022802082203200228020c2201490d00200228020421042002200320016b220636020420042001200120046a2204200510002103200620022802042201492003410f4f720d0002400240200341e889046a2d00002203410347044020034110470d0320014178714108462001410849722001411047720d012000420137030020002004290008370310200020042900003703080c020b200042003703000c010b20004202370300200041103a00080b200241106a24000f0b000b130041ec86042002108201200020012002101f0bd10101047f230041106b22022400200242808001370208200241888a0436020441c886042001200241046a2204102a024020022802082205200228020c2201490d00200228020421032002200520016b220536020420032001200120036a2203200410002101200520022802042204492001410f4f720d0002400240200141e889046a2d00002201410347044020014110470d0320044104470d0120004101360200200020032800003602040c020b200041003602000c010b20004102360200200041103a00040b200241106a24000f0b000bae0202057f077e230041106b22022400200242808001370208200241888a0436020441d886042001200241046a2205102a024020022802082203200228020c2201490d00200228020421042002200320016b220636020420042001200120046a2201200510002103200620022802042204492003410f4f720d00027e200341e889046a2d00002203410346044042000c010b20034110472004410449722004410c6b41774b200441146b41774b72722004413447720d012001280000210320012900042107200129002c210820012900242109200129001c210a2001290014210b200129000c210c42010b210d2000200336023820002008370330200020093703282000200a3703202000200b3703182000200c370310200020073703082000200d370300200241106a24000f0b000b4000200220011019200104402000200141306c6a21010340200020021025200041206a290300200041286a2903002002101f200041306a22002001470d000b0b0b4a01017f02402001450440410821020c010b024020014192c9a4124b0d00200141386c22024100480d002002106322020d010b000b2000410036020820002002360204200020013602000b1900200045044041080f0b41848a042d00001a4108200010680b100020002001413041abd5aa1510ee010b0f00200010632200044020000f0b000bec0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a20012002410010d30120042802082103200428020c0c020b2003280200210602402001200210682203450440410021030c010b200320062005100f1a0b20020c010b20042001200210d0012004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000bc10101037f230041206b22032400027f41002001200120026a22014b0d001a4104200028020022024101742204200120012004491b2201200141044d1b220141808080204921042001410574210502402002450440200341003602180c010b200341013602182003200241057436021c200320002802043602140b200341086a20042005200341146a10662003280208450440200328020c210220002001360200200020023602044181808080780c010b200328020c0b2104200341206a240020040bc50101017f027f41f889042d0000044041fc89042802000c010b3f00210241fc890441908a0536020041f8890441013a000041808a04200241107436020041908a050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a41808a042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d0241808a0420023602004100200020016a22022000490d011a0b41fc8904200236020020000b0f0b41000b4b01027f230041106b22032400200341086a20024100106a20032802082104200328020c20012002410474100f2101200020023602082000200136020420002004360200200341106a24000b7701027f230041106b2203240002402001450440410821020c010b0240200141ffffff3f4b0d00200141047422044100480d00027f2002450440200341086a4108200410d00120032802080c010b2003200410d40120032802000b22020d010b000b2000200236020420002001360200200341106a24000b860301087f230041406a22022400200241086a2001106c02402002280208450440200220012802044105762204200228020c220520042005491b106d410021042002410036021c200220022802042206360218200220022802003602140240200504400340200128020422034120490d022001200341206b36020420012001280200220341206a360200200241286a2207200341086a290000370300200241306a2208200341106a290000370300200241386a2209200341186a2900003703002002200329000037032020022802142004460440200241146a200441011067418180808078470440000b20022802182106200228021c21040b200620044105746a22032002290320370000200341186a2009290300370000200341106a2008290300370000200341086a20072903003700002002200441016a220436021c200541016b22050d000b0b20002002290214370200200041086a2002411c6a2802003602000c020b20004180808080783602000c010b20004180808080783602000b200241406b24000ba60201037f230041206b22022400200241106a2001103f41012103024020022d00100d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210ce010d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410ce010d01200228021c220341027621012003418080044921030c010b200241086a2001102f20022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000b6601027f230041106b2203240002402001450440410121020c010b0240200141ffffff1f4b0d00200141057422024100480d00200341086a2001418080802049200210d001200328020822020d010b000b2000200236020420002001360200200341106a24000bfc0101057f230041a0016b220124002001200041f000100f220042808001370278200041888a04360274200041f4006a4102106f20004198016a2201200041fc006a280200360200200020002902743703900120004190016a220441f38304102c20004188016a2202200128020036020020002000290390013703800120004180016a200041d0006a2203102c0240200028028401220520022802002201490d00200028028001210220004100360298012000200520016b360294012000200120026a3602900120032004102520002004107020002802980122032000280294014b0d002002200120002802900120031004200041a0016a24000f0b000b7301037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a10dd0120012001200228020c6a22014b0d0020002001360208200241106a24000f0b000b540020002903002000290308200041106a290300200110762000290318200041206a290300200041286a290300200110762000290330200041386a2903002001101f2000290340200041c8006a2903002001101f0b0b00200041f7840410ef010b0b00200041d6840410ef010bb40101057f230041206b22022400200242808001370208200241888a04360204200241046a4101106f200241186a22032002410c6a28020036020020022002290204370310200241106a220641ef8204102c02402002280214220420032802002203490d0020022802102105200241003602182002200420036b3602142002200320056a360210200020012006101f2002280218220420022802144b0d0020052003200228021020041004200241206a24000f0b000be70201057f230041a0016b220124002001200041f000100f220042808001370278200041888a04360274200041f4006a4103106f20004198016a2201200041fc006a280200360200200020002902743703900120004190016a2202418c8204102c20004188016a2203200128020036020020002000290390013703800120004180016a200041e8006a1075200120032802003602002000200029038001370390012002200041c8006a2204102c0240200028029401220520012802002201490d00200028029001210320004100360298012000200520016b360294012000200120036a3602900120002802682002101c20042002102520002903002000290308200041106a290300200210762000290318200041206a290300200041286a290300200210762000290330200041386a290300200041406b2903002002107620002802980122042000280294014b0d002003200120002802900120041004200041a0016a24000f0b000baa0101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206108201200228020c220120022802084b0d00200620022802042001102d2002410036022c20022004360228200220053602242006200241246a10252003200228022c6a22012003490d0020002001360208200241306a24000f0b000b1d0020005004402003410010370f0b200341011037200120022003101f0ba50201057f23004180016b22012400200141086a2205200041c800100f1a200142808001370258200141888a04360254200141d4006a4102106f200141f8006a2200200141dc006a28020036020020012001290254370370200141f0006a220241948404102c200141e8006a2203200028020036020020012001290370370360200141e0006a2005102c02402001280264220420032802002200490d0020012802602103200141003602782001200420006b3602742001200020036a360270200520021025200141c8006a2802002002101c200129032820021078200141306a29030020021078200141386a29030020021078200141406b290300200210782001280278220420012802744b0d002003200020012802702004100420014180016a24000f0b000b2601017f230041106b22022400200220003703082001200241086a4108101a200241106a24000b0b0020004198850410ef010bfc0101057f230041e0006b22012400200141086a220520004128100f1a200142808001370238200141888a04360234200141346a4102106f200141d8006a22002001413c6a28020036020020012001290234370350200141d0006a220341ad8204102c200141c8006a2202200028020036020020012001290350370340200141406b2005102c02402001280244220420022802002200490d0020012802402102200141003602582001200420006b3602542001200020026a36025020052003102520012802282003101c2001412c6a2802002003101c2001280258220420012802544b0d0020022000200128025020041004200141e0006a24000f0b000b0b00200041b5840410ef010b4d01017f230041106b22022400200241888a0436020441888a0441003a0000200242808081801037020820002001200241046a101f200228020c2202418180014f0440000b41002002108601000b8f0102017f017e230041106b22012400200141808001360208200141888a04360204024041898a04027f20002903002202420252044041888a0441003a000041002002500d011a41898a0441013a00002001410236020c200041086a200141046a108701200128020c220041818001490d02000b41888a0441013a000041010b3a0000410221000b41002000108601000b140041888a044181023b010041014102108601000b4f01017f230041106b22032400200341888a0436020441888a0441003a00002003428080818010370208200020012002200341046a1076200328020c2203418180014f0440000b41002003108601000b8b0101027f230041106b22022400200241808001360208200241888a04360204024041898a04027f20012802002203412447044041888a0441003a0000410020034123460d011a41898a0441013a00002002410236020c2001200241046a1036200228020c220141818001490d02000b41888a0441013a000041010b3a0000410221010b20002001108601000b3e01017f41888a0441003a00004102210241898a04200141ff0171410347047f418a8a0420013a00004103210241010541000b3a000020002002108601000b0b0020002802002001101c0b0b0020002001410010ed010bf80302097f017e230041a0016b22022400200220014138100f210220012802702105200241386a200141386a4138100f2109200220053602702002290330210b20024280800137028c01200241888a0436028801200220024188016a220610250240200228028c0122032002280290012201490d00200228028801210720024100360290012002200320016b36028c012002200120076a360288012002290320200241286a2903002006101f200228028c0122012002280290012203490d00200120036b2101200228028801220a20036a210341f886042108200541037145044020024100360290012002200136028c012002200336028801200241e8006a20061032200920061039200228028c0122012002280290012204490d01200228028801220820046a2103200120046b21010b200220013602880120052007200b200a20082004200320024188016a22061003210420012002280288012205492004410f4f720d00200441e889046a2d000022014110472001410247710d002002200536029c012002200336029801200620024198016a1085012002280288012201410a460d002002200229008d01370378200220024194016a28000036007f20014109460d00200020022d008c013a000420002001360200200020022903783700052000410c6a200228007f360000200241a0016a24000f0b000bbf0202037f017e230041206b22022400200241106a2001103f0240024020022d00100d0002400240024020022d00110e020001030b200241086a2001103f20022d00080d0241082103024020022d00090e020200030b20022001103f20022d00000d02024002400240024002400240024020022d000122030e080008010203040506090b200241146a200110bd0120022802142204418080808078460d0820022902182105410021030c070b410221030c060b410321030c050b410421030c040b200241146a200110bd0120022802142204418080808078460d0420022902182105410521030c030b410621030c020b410721030c010b20011035450d0141092103410121040b20012802044504402000200537020820002004360204200020033602000c020b2000410a3602000c010b2000410a3602000b200241206a24000b0d00200041888a0420011008000b2d002000290300200041086a2903002001101f2000290310200041186a2903002001101f2000290320200110780b2d0020022001101920010440200141057421010340200020021025200041206a2100200141206b22010d000b0b0b990101027f20022001101920010440200141c8006c210403400240200020036a220129030042025104402002410010370c010b2002410110372001290300200141086a290300200141106a29030020021076200141186a290300200141206a290300200141286a29030020021076200141306a290300200141386a290300200141406b290300200210760b2004200341c8006a2203470d000b0b0b3e002000290300200041086a2903002001101f2000290310200041186a2903002001101f2000290320200041286a2903002001101f20002802302001101c0b210020002d00004504402001410010370f0b200141011037200041016a200110250b46002000290300200041086a2903002001101f2000290310200041186a2903002001101f2000290320200041286a2903002001101f2000290330200041386a2903002001101f0b410020002802302001101c2000290300200110782000290308200110782000290310200110782000290318200110782000290320200110782000290328200110780b250020002802102001101c20002802142001101c2000290300200041086a2903002001101f0b1100200020011025200041206a200110250b480020002d00302001103420002d0031200110342000290300200041086a2903002001101f2000290320200110782000290310200041186a2903002001101f2000290328200110780b0e002000200210782001200210780b980101017f230041106b2202240020022001103f024002400240024020022d000045044020022d00010e020203010b20004181808080783602000c030b20004181808080783602000c020b20004180808080783602000c010b200241046a2001106b2002280204220141808080807847044020002002290208370204200020013602000c010b20004181808080783602000b200241106a24000ba70901067f230041b0026b2205240020054180016a22062001104c0240024020052802800122074123460440024002402005280284011029450440200541386a200141186a290000370300200541306a200141106a290000370300200541286a200141086a29000037030020052001290000370320200541d0006a200541106a4130100f1a200541e0016a2004370300200541d8016a2003370300200541e8016a41faba96850136020020054188016a200541e8006a29030037030020054190016a200541f0006a29030037030020054198016a200541f8006a290300370300200541c0016a200241086a290000370300200541c8016a200241106a290000370300200541d0016a200241186a290000370300200541003602f0012005200529036037038001200520022900003703b801200541b0016a4200370300200541a8016a4200370300200542003703a00120052006108401200528020022014108460d01200020052902043702042000410c6a2005410c6a280200360200200020013602000c050b200541106a22061046200541a8016a2207200141186a290000370300200541a0016a200141106a29000037030020054198016a2208200141086a2900003703002005200129000037039001200541d0006a20054180016a22014130100f1a200541386a200241086a290000370000200541406b200241106a290000370000200541c8006a200241186a29000037000020052002290000370030200541b8016a200641c000100f210920054188016a200541e8006a29030037030020054190016a200541f0006a2903003703002008200541f8006a29030037030020054180026a2004370300200541f8016a200337030020074200370300200541b0016a420037030020054198026a220841d4e69ef60636020020054190026a410036020020054188026a4280808080103703002005200529036037038001200542003703a001200541003602a002200542808001370214200541888a043602102001200610252005280214220720052802182201490d0320052802102102200541003602182005200720016b3602142005200120026a360210420042002006101f2005280214220a20052802182201490d0320052802102107200541003602182005200a20016b3602142005200120076a360210200820061032200541d8016a20061025200920061025200320042006101f41014100200610332005280214220920052802182201490d03200528021021082005200920016b2209360210410020024200200720082001200120086a2202200610032101200920052802102207492001410f4f720d03200141e889046a2d000022014110472001410247710d03200520073602ac02200520023602a8022006200541a8026a10850120052802102201410a460d032005200529001537035020052005411c6a28000036005720014109460d0320052d00142102200520052800573600072005200529035037030020014108470d010b200041233602000c030b200020052903003700052000410c6a2005280007360000200020023a0004200020013602000c020b2005280284012101200020052902880137020820002001360204200020073602000c010b000b200541b0026a24000b920901057f23004180026b22052400200541406b22072001104c024002402005280240220641234604400240024020052802441029450440200541f8016a200141186a290000370300200541f0016a200141106a290000370300200541e8016a200141086a290000370300200520012900003703e001200541106a200541d0016a4130100f1a200541a0016a200437030020054198016a2003370300200541a8016a41fcf9d4a37d360200200541c8006a200541286a290300370300200541d0006a200541306a290300370300200541d8006a200541386a29030037030020054180016a200241086a29000037030020054188016a200241106a29000037030020054190016a200241186a290000370300200541003602b0012005200529032037034020052002290000370378200541f0006a4200370300200541e8006a42003703002005420037036020052007108401200528020022014108460d01200020052902043702042000410c6a2005410c6a280200360200200020013602000c050b200541e8006a2206200141186a290000370300200541e0006a200141106a290000370300200541d8006a2208200141086a29000037030020052001290000370350200541d0016a2207200541406b22014130100f1a200541c8006a200541e8016a290300370300200541d0006a200541f0016a2903003703002008200541f8016a29030037030020054190016a200241186a29000037030020054188016a200241106a29000037030020054180016a200241086a29000037030020064200370300200541f0006a4200370300200520052903e0013703402005200229000037037820054200370360200541a0016a200437030020054198016a2003370300200541b8016a220841dbc1e4af7f360200200541b0016a4100360200200541a8016a428080808010370300200541003602c0012005428080013702d401200541888a043602d00120012007102520052802d401220620052802d8012201490d0320052802d0012102200541003602d8012005200620016b3602d4012005200120026a3602d001420042002007101f20052802d401220920052802d8012201490d0320052802d0012106200541003602d8012005200920016b3602d4012005200120066a3602d001200820071032200541f8006a20071039410141002007103320052802d401220920052802d8012201490d0320052802d00121082005200920016b22093602d001410020024200200620082001200120086a2202200710032101200920052802d0012206492001410f4f720d03200141e889046a2d000022014110472001410247710d03200520063602cc01200520023602c8012007200541c8016a10850120052802d0012201410a460d03200520052900d5013703102005200541dc016a28000036001720014109460d0320052d00d4012102200520052800173600072005200529031037030020014108470d010b200041233602000c030b200020052903003700052000410c6a2005280007360000200020023a0004200020013602000c020b200528024421012000200529024837020820002001360204200020063602000c010b000b20054180026a24000bde0202077f027e230041a0016b220324002003410036021420034280808080800137020c0240024002402002044020024105742105200341e0006a2106200341c8006a210720034180016a21090340200341d8006a22082001104c200328025c2102200328025822044123470d032008200210222003290358500d02200341186a2204200641c000100f1a2007290300210a200742003703002003290340210b20034200370340200220041096012009200a370300200341f0006a200141186a290000370300200341e8006a200141106a2900003703002006200141086a2900003703002003200b370378200320012900003703582003410c6a20081064200141206a2101200541206b22050d000b0b2000200329020c370204200041233602002000410c6a200341146a2802003602000c020b200041113602000c010b2000200329026037020820002002360204200020043602000b200341a0016a24000b9b0101047f230041106b22022400200242808001370208200241888a0436020441cc86042000200241046a2203102a024020022802082205200228020c2200490d00200228020421042002410036020c2002200520006b3602082002200020046a36020420012003108701200141286a2003108e01200228020c220120022802084b0d00200420002002280204200110051a200241106a24000f0b000b3a01037f230041106b22002400200041086a41cef7ecc90110b50120002802082101200028020c2102200041106a24002002410020014101461b0b920101047f230041106b22022400200242808001370208200241888a0436020441d486042000200241046a2204109b01024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004108a01200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000b5301047f230041d0006b220224002002410c6a200110542002280214210320022802102104200241186a22052001105520022001105120002004200320052002280200200228020410a801200241d0006a24000b5001017f230041106b22022400200242808001370208200241888a0436020420002001200241046a109b01200228020c220020022802084b0440000b20022802042000102b2100200241106a240020000b0f00200020021082012001200210250b6102017f017e230041a0016b22022400200241d0006a2001105c0240200229035022034203510d00200241086a2201200241d8006a41c800100f1a20034202510d0020002003370300200041086a200141c800100f1a200241a0016a24000f0b000b4c01017f230041106b22022400200241046a200110582002280204220141818080807846200141808080807846724504402000200229020837020420002001360200200241106a24000f0b000b8e0b020a7f057e230041a0016b220424002004411c6a20011054200441286a20011055200441106a2001105120042004290310370260104b210e2004410036027020044280808080800137026820042802242108200428022021090240024002402003450d002002200341386c6a210c4108210741002103034020044190016a2002104c2004280294012105027f0240024002400240024002400240024020042802900122064123460440200520084f0d0d2009200541c8006c6a220629030050044020064201370300200641086a410041c00010111a0b200641086a2106200241306a2d000041016b0e03020304010b200020042902980137020820002005360204200020063602000c0b0b20042006360284012004200441286a360288012004200441e0006a36028c012004200241206a360298012004410036029401200441003a009001200441f4006a200520044184016a410120044188016a41012004418c016a410120044190016a200e10a701200428027422054123460d052004290278210e200020042802800136020c2000200e370204200020053602000c0a0b200441406b290300210f2004290338211020042006360284012004200441286a360288012004200441e0006a36028c012004200241206a36029801200441003602940120044181023b019001200441f4006a200520044184016a410120044188016a41012004418c016a410120044190016a200e10a701200428027422064123460d032004290278210e200020042802800136020c2000200e370204200020063602000c090b20042006360284012004200441286a360288012004200441e0006a36028c012004200241206a360298012004410036029401200441023a009001200441f4006a200520044184016a410120044188016a41012004418c016a410120044190016a200e10a701200428027422054123460d012004290278210e200020042802800136020c2000200e370204200020053602000c080b20042006360284012004200441286a360288012004200441e0006a36028c012004200241206a360298012004410036029401200441033a009001200441f4006a200520044184016a410120044188016a41012004418c016a410120044190016a200e10a7012004280274220541234704402004290278210e200020042802800136020c2000200e370204200020053602000c080b200428028001450d080c030b200428028001450d074101210a200428027c0c030b20042010200f200541ff00711015200428028001450d062004280200200a72210a0c010b200428028001450d050b200428027c0b220541186a290300210f200541086a2903002110200529031021112005290300211220042802682003460440200441e8006a2106230041206b220524000240200341016a22030440410420062802002207410174220b20032003200b491b2203200341044d1b2203410574210b2003418080802049410374210d02402007450440200541003602180c010b200541083602182005200741057436021c200520062802043602140b200541086a200d200b200541146a10662005280208450d01200528020c1a0b000b200528020c21072006200336020020062007360204200541206a2400200428026c2107200428027021030b200720034105746a220520113703102005201037030820052012370300200541186a200f3703002004200341016a2203360270200241386a2202200c470d000b200a410171450d0020044190016a20092008200441286a2004280260200428026410a80120042802900122024123460d0020002004290294013702042000410c6a2004419c016a280200360200200020023602000c010b20012009200810aa012001200441286a109801200041233602002000410c6a200441f0006a280200360200200020042902683702040b200441a0016a24000f0b000bfc0301027f230041b0016b22052400024002400240024002400240417f200320048442005220044200531b41ff01710e020102000b10de012106420020042003420052ad7c7d22044200530d042006420020037d370300200641013a0010200641003a00312006200437030820062002290000370011200641196a200241086a290000370000200641216a200241106a290000370000200641296a200241186a2900003700000c020b200041083602000c020b10de01210620044200530d0220062003370300200641013a0031200641003a001020062004370308200620022900003700322006413a6a200241086a290000370000200641c2006a200241106a290000370000200641ca006a200241186a2900003700000b200541f8006a200141186a290000370300200541f0006a200141106a290000370300200541e8006a200141086a2900003703002005200129000037036020054180016a200541d0006a4130100f1a200541386a4200370300200541406b4200370300200541c8006a4100360200200541186a20054198016a290300370300200541206a200541a0016a290300370300200541286a200541a8016a290300370300200541306a420037030020054281808080b0cfbfef3f370308200520063602042005410136020020052005290390013703102000200510ab010b200541b0016a24000f0b000bf50702067f037e230041b0036b220824000240024020052002104a450440200841d1016a200241186a220a290000220e370000200841c9016a200241106a220b290000220f370000200841c1016a200241086a220c2900002210370000200841e2016a2010370100200841ea016a200f370100200841f2016a200e37010020082002290000220e3700b9012008200e3701da01200841f0006a200141186a290000370300200841e8006a200141106a290000370300200841e0006a200141086a29000037030020082001290000370358200841f8006a2209200841c8006a220d4130100f1a200841186a20084190016a290300370200200841206a20084198016a290300370200200841286a200841a0016a290300370200200841d6006a200c290000370100200841de006a200b290000370100200841e6006a200a290000370100200841a8026a200541086a290000370300200841b0026a200541106a290000370300200841b8026a200541186a29000037030020082008290388013702102008200229000037014e200820052900003703a002200841406b4200370200200841386a420037020020084200370230200841d8026a200841106a4138100f2101200820033703a801200820043703b00120082003420052200442005520045022021b3a00d9012008200350200442005320021b3a00b801200841fa016a200d4126100f1a200841c8026a2007370300200820063703c0022008410036029003200841c18cbc9f053602d00220084188036a290300210320084280800137027c200841888a04360278200120091025200828027c22052008280280012201490d012008280278210220084100360280012008200520016b36027c2008200120026a360278200841f8026a29030020084180036a2903002009101f200828027c220a2008280280012201490d012008280278210520084100360280012008200a20016b36027c2008200120056a360278200841d0026a20091032200841a8016a200910dc0120084180026a20091025200841a0026a20091025200620072009101f200828027c220b2008280280012201490d012008280278210a2008200b20016b220b3602784100200220032005200a20012001200a6a2202200910032101200b20082802782205492001410f4f720d01200141e889046a2d000022014110472001410247710d01200820053602ac03200820023602a8032009200841a8036a10850120082802782201410a460d012008200829007d37039803200820084184016a28000036009f0320014109460d01200020082d007c3a00042000200136020020002008290398033700052000410c6a200828009f033600000c020b20002001200220032004109f010c010b000b200841b0036a24000b8c0101047f230041106b22022400200242808001370208200241888a043602042000200241046a2204101c024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a360204200120041025200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000b7101027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a2004200110d00120032802080c010b200320042001410110d30120032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b970301077f23004180016b22022400024020002001103b220741ff01714103460440200220003602082002410c6a20014121100f1a200242808001370274200241888a04360270200241086a2205200241f0006a220410cb012002280278220320022802744b0d012002280270200310061a2005410472220310472002412c6a20014121100f210820022000360208200242808001370258200241888a04360254200241d4006a4104106f200241f8006a2200200241dc006a28020036020020022002290254370370200441fb8504102c200241e8006a2201200028020036020020022002290370370360200241e0006a2206200510752000200128020036020020022002290360370370200620042002412d6a410020022d002c1b10cc0120062003102c2002280264220520022802682200490d0120022802602101200241003602782002200520006b3602742002200020016a36027020022802082004101c20082004108b012003200410252002280278220320022802744b0d01200120002002280270200310040b20024180016a240020070f0b000bed0301067f230041c0016b2202240041022103024020002001103c4504402002200036024c200241d0006a20014121100f2106200242808001370208200241888a04360204200241cc006a2205200241046a220410cb01200228020c220320022802084b0d01200228020422072003200320076a410010051a2002412a6a104720022000360204200241086a20014121100f1a200241013a00292005200441c800100f1a20024280800137029801200241888a043602940120024194016a4104106f200241b8016a22002002419c016a28020036020020022002290294013703b001200241b0016a220441818904102c200241a8016a22012000280200360200200220022903b0013703a001200241a0016a22032005107520002001280200360200200220022903a0013703b00120032004200241d1006a410020022d00501b10cc01024020022d007104402003200241f2006a102c0c010b200241a0016a10cd010b20022802a401220320022802a8012200490d0120022802a0012101200241003602b8012002200320006b3602b4012002200020016a3602b001200228024c200241b0016a2203101c20062003108b01200241f1006a2003108b0120022802b801220320022802b4014b0d012001200020022802b00120031004410321030b200241c0016a240020030f0b000b800202057f017e23004180016b2202240020024280800137023c200241888a0436023841d486042001200241386a2205109b010240200228023c220420022802402201490d00200228023821032002200420016b220436023820032001200120036a2203200510002101200420022802382206492001410f4f720d00027e200141e889046a2d00002201410347044020014110470d022002200636027c200220033602782005200241f8006a105320022903384200520d0220022d00402101200241016a200241c1006a4137100f1a42010c010b42000b2107200020013a000820002007370300200041096a200241016a4137100f1a20024180016a24000f0b000ba20502077f097e230041306b22022400200242808001370228200241888a0436022441e486042001200241246a2205109b01024020022802282203200228022c2201490d00200228022421042002200320016b220336022420042001200120046a2204200510002101200320022802242205492001410f4f720d002000027e200141e889046a2d000022014103460440418080808078210142100c010b20014110470d01200220053602202002200436021c200241106a2002411c6a106c20022802100d01200241086a200228022041c8006e22012002280214220420012004491b10cf01410021052002410036022c2002200228020c220636022820022002280208220136022420040440034020022802202203450d032002200341016b22083602202002200228021c220141016a220736021c420021090240024020012d00000e020100050b2008411049200341216b416f4b72200341316b416f4b720d04200341c1006b2203416f4b0d04200741086a290000210a2007290000210b200141196a290000210c2001290011210d200141296a290000210e2001290021210f200220033602202002200141c1006a36021c200141396a290000211020012900312111420121090b2002280224200546047f200241246a2005410110d201418180808078470440000b20022802282106200228022c0520050b41c8006c20066a22012009370300200120113703382001200f3703282001200d3703182001200b370308200141406b2010370300200141306a200e370300200141206a200c370300200141106a200a3703002002200228022c41016a220536022c200441016b22040d000b200228022421010b2001418080808078460d012002280220200141818080807846720d0120022902280b37020420002001360200200241306a24000f0b000bfe1001047f230041a0026b220a2400024002400240024002400240024020032005460440200a41086a220b2001104d200a41406b220c2001104e200a4180016a220d2001109c01200a41e0016a2001200a290308200a41106a290300200a290318200a41206a290300200910ba01200a2802e00122054123470d0102400240024002400240024002400240024002400240024002400240024002400240200c200b20091050220541ff01714103460440200a200341057410d401200a2802002205450d14200a20013602dc01200a200d3602d801200a200c3602d401200a200b3602d00120082d000041016b0e050203040506010b200020053a0004200041093602000c180b2008280204220b20034f2007200b4d720d12200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a28020020082802082202290300200241086a29030010df01200a2802e0010d05200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103460d0d200020023a0004200041093602000c170b2008280204220b20034f2007200b4d720d11200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a280200200828020820082d000110e101200a2802e0010d05200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103460d0c200020023a0004200041093602000c160b2008280204220b20034f2007200b4d720d10200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a28020020082802082202290300200241086a29030010e201200a2802e0010d05200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103460d0b200020023a0004200041093602000c150b2008280204220b20034f2007200b4d720d0f200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a2802002008280208410110e301200a2802e0010d05200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103460d0a200020023a0004200041093602000c140b2008280204220b20034f2007200b4d720d0e200a41e0016a200a41d0016a2002200b410274220b6a2802002004200b6a2802002006200b6a280200220b280200200b41046a280200200828020c20082d000110e101200a2802e0010d05200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220b41ff01714103460d062000200b3a0004200041093602000c130b2008280204220b20034f2007200b4d720d0d200a41e0016a200a41d0016a2002200b410274220b6a2802002004200b6a2802002006200b6a280200220b280200200b41046a280200200828020c20082d000110e301200a2802e0010d06200520032008280204200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220b41ff01714103460d072000200b3a0004200041093602000c120b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c110b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c100b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c0f0b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c0e0b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c0d0b2008280208220b20034f2007200b4d720d07200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a280200200828020c2202290300200241086a29030010df01200a2802e0010d08200520032008280208200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103460d02200020023a0004200041093602000c0c0b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c0b0b2008280208220b20034f2007200b4d720d05200a41e0016a200a41d0016a2002200b41027422076a280200200420076a280200200620076a2802002202280200200241046a280200200828020c2202290300200241086a29030010e201200a2802e0010d01200520032008280208200a2903e801200a41f0016a290300200a2903f801200a4180026a29030010e001220241ff01714103470d020b200a41e0016a20011060200a2903e00150450d060c070b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c080b200020023a0004200041093602000c070b2000411e3602000c060b2000200a2902e4013702042000410c6a200a41ec016a280200360200200020053602000c050b000b200a2802e4012101200a2903e80121092000410c6a200a41f0016a3502003e020020002009370204200020013602000c030b200a41086a200a41e8016a10b201220241ff01714103470d010b2001200a41086a10ad012001200a41406b10b0012000410c6a2003360200200041086a200536020020002003360204200041233602000c010b200020023a0004200041093602000b200a41a0026a24000bcd0102037f027e230041206b22062400200641086a22071056024002400240200628020822084123460440200720012002200320042005200641106a2201280200200641146a280200105720062d00082202410247044020020d02411621050c030b200628020c22054123460d01200641186a35020021092001290300210a0c020b200629020c21092000200628021436020c20002009370204200020083602000c020b200041233602000c010b2000200a370204200020053602002000410c6a20093e02000b200641206a24000b7b01037f2000280208220420002802004604402000410110d1010b20002802042206200141c8006c6a21050240200120044f044020012004460d01000b200541c8006a2005200420016b41c8006c10101a0b20054201370300200541086a200241c000100f1a2000200441016a220036020820032006200010aa010b9a0201047f230041106b22032400200342808001370208200341888a0436020441e486042000200341046a2206109b01024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a36020420062002101920020440200241c8006c2102034002402001290300500440200328020c220420032802084f0d04200328020420046a41003a00002003200441016a36020c0c010b200328020c220420032802084f0d03200328020420046a41013a00002003200441016a36020c200141086a200341046a108c010b200141c8006a2101200241c8006b22020d000b0b200328020c220120032802084b0d00200520002003280204200110051a200341106a24000f0b000bad0402087f017e23004180016b22022400200241186a200141106a4138100f2103200241106a200141086a29030037030020022001290300370308200220012802482206360250200241c8006a290300210a20024280800137026c200241888a043602682003200241e8006a220510250240200228026c220320022802702201490d0020022802682107200241003602702002200320016b36026c2002200120076a360268200241386a290300200241406b2903002005101f200228026c220120022802702203490d00200120036b21012002280268220920036a210341f8860421082006410371450440200241003602702002200136026c20022003360268200241146a20051032200228020c2101200520022802102203101920030440200341d8006c210303402001200241e8006a10dc01200141d8006a2101200341d8006b22030d000b0b200228026c220120022802702204490d012002280268220820046a2103200120046b21010b2002200136026820062007200a2009200820042003200241e8006a220510032104200120022802682206492004410f4f720d00200441e889046a2d000022014110472001410247710d002002200636027c200220033602782005200241f8006a10850120022802682201410a460d002002200229006d3703582002200241f4006a28000036005f20014109460d00200020022d006c3a000420002001360200200020022903583700052000410c6a200228005f36000020024180016a24000f0b000bad0302027f037e230041206b220424002004200210e401024002402004280200450d00200441086a22052002200428020410e5012004290308500d00200441186a29030021082004290310210620052002200341016a413c7010e501024002400240024002402004290308504504402001200620042903107d22074200200620075a1b5804400340200441086a2002200341016a413c70220341016a220541002005413c471b10e5012004290308500d07200620042903107d22074200200620075a1b20015a0d000b0b200441086a2002200310e5012004290308500d0120012006200429031022017d22074200200620075a1b2207560d02200120065a0d032008200441186a2903007d200780220142ffffffff0f560d0420004123360200200020013e02040c070b2000410036020c20004200370204200041213602000c060b2000410036020c20004202370204200041213602000c050b200041033a0004200041213602000c040b200041023a0004200041093602000c030b200041013a0004200041093602000c020b2000410036020c20004201370204200041213602000c010b000b200441206a24000b910101047f230041106b22022400200242808001370208200241888a0436020441e886042000200241046a2204102a024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004109001200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000bd70402067f027e230041e0006b22042400200441106a22062002104c02400240027f02402004280210220241234604402004280214210220012802002105024010970120054b0440200442808001370214200441888a043602102001200610db012004280214220820042802182205490d06200428021021072004200820056b220836021020072005200520076a2207200610002105200820042802102209492005410f4f720d06200541e889046a2d00004110470d062004200936025c200420073602582006200441d8006a10d80120042802102206418080808078460d0620042004290214220a370208200420063602042002200a422088a722064f0d01200aa70c040b2000411f3602000c040b034020044202370310200441046a200441106a10d901200428020c220620024d0d000b0c010b200428021421012000200429021837020820002001360204200020023602000c020b20042802080b2105027f2005200241c8006c6a200341c800100f2202290300210a2002290318210b024002400240200a4202560d00200aa741016b0e020002010b200329030050450d0041010c020b200b500d0020032903184200520d0041010c010b2003290330500b04402000410a3602000c010b200442808001370214200441888a043602102001200441106a220310db012004280214220720042802182201490d0120042802102102200441003602182004200720016b3602142004200120026a3602102005200620031089012004280218220320042802144b0d01200220012004280210200310051a200041233602000b200441e0006a24000f0b000b8c0101047f230041106b22022400200242808001370208200241888a043602042000200241046a2204101c024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004101c200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000b0900200020011096010b900101047f230041106b22022400200242808001370208200241888a0436020441dc86042000200241046a2204102a024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a360204200120041070200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000be50102027f057e230041206b220224000240024020002903102204200041186a29030022058450044020004200370320200041286a42003703000c010b200241086a220320002903002206200041086a29030022072004200510e601024020022d00080d002003200228020c200110b80120022d00080d00200020022903102208370328200620078450450440410121012003200420052008420020062007410110bc0120022d00080d01200241186a29030050450d03200020022903103703200c020b200042003703200c010b20022d000921010c010b410321010b200241206a240020010b09002000200110b9010b0e0041d086042000109a014100470be80101057f230041206b22022400200242808001370218200241888a043602142001200241146a2205101c024020022802182204200228021c2201490d00200228021421032002200420016b220436021420032001200120036a2203200510002101200420022802142206492001410f4f720d0002400240200141e889046a2d00002201410347044020014110470d032002200636021820022003360214200241086a2005102620022802080d01200228020c210120004101360200200020013602040c020b200041003602000c010b20004102360200200041103a00040b200241206a24000f0b000b910101047f230041106b22022400200242808001370208200241888a0436020441c886042000200241046a2204102a024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004108201200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000be00101067f230041206b220324000240200220002802002204200028020822066b4d0440200220066a2107200028020421040c010b2006200220066a22074d04404108200441017422052007200520074b1b2205200541084d1b2205417f73411f76210802402004450440200341003602180c010b2003200436021c20034101360218200320002802043602140b200341086a20082005200341146a10662003280208450440200328020c210420002005360200200020043602040c020b200328020c1a0b000b200420066a20012002100f1a20002007360208200341206a24000bb70202037f037e230041206b220324002000027f02402001450440200042003703080c010b024002402001200228023022044d0440200341086a2001ad4200200229031042002004ad4200410010bc0120032d00080d01200341186a29030050200329031022064280808080105471450d02200020063703080c030b200341086a200120046b22054100200120054f1bad420020022903182207200229031022067d22084200200720085a1b420041c0843d20046b22014100200141c0843d4d1bad4200410010bc0120032d00080440200020032d00093a000141010c040b200341186a29030050200329031022074280808080105471450d012006200620077c2206560d01200020063703080c020b200020032d00093a000141010c020b200041013a000141010c010b41000b3a0000200341206a24000b910101047f230041106b22022400200242808001370208200241888a0436020441d886042000200241046a2204102a024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004108d01200228020c220120022802084b0d00200320002002280204200110051a200241106a24000f0b000b8c0302067f027e230041406a22072400200741106a200110e40102400240024002402007280210450d00200741186a220920012007280214220810e50142002007290320200729031850220a1b220d20065a0d01200741286a290300210e2009200220032004200510e60120072d00180d022007200735021c42002006200d7d2202420020022006581b420010142007290308500440200729030021022007200841016a413c7022083602302007413c6a200836020020072001360238200741c0860436023420074280800137021c200741888a04360218200741346a200910da01200728021c220c20072802202208490d012007280218210b200741003602202007200c20086b36021c20072008200b6a360218200620024200200e200a1b7c20091091012007280220220a200728021c4b0d01200b20082007280218200a10051a2001200741306a10b601200041233602000c040b200041013a0004200041093602000c030b000b200041233602000c010b200020072d00193a0004200041093602000b200741406b24000b7101027f230041306b220124002001410f6a41f683a1eb0210d501200020012d000f410171047f20002001290010370001200041196a200141286a290000370000200041116a200141206a290000370000200041096a200141186a29000037000041010541000b3a0000200141306a24000bea0402057f047e230041d0016b220824002000027f2005200684500440200041023a000141010c010b20012002845020032004845072044020004200370308200041106a420037030041000c010b200841386a20034200200142001014200841186a20034200200242001014200841086a20044200200242001014200841286a20044200200142001014200841a8016a220a4200370300200842003703a00120082006370398012008200537039001200841406b290300210120082903182103200841206a29030021042008290308210d200841106a290300210e2008290328210f200841306a2903002110200829033821020240024020084190016a220941c88904104a0d00200841c8016a220b200e20042001200120037c220156ad7c2204200d7c2203200454ad7c20032003201020012001200f7c220156ad7c7c220356ad7c220e370300200820033703c001200820023703b001200820013703b801200910ec010d00200841d0006a200841b0016a220c20052006410010ea01200841e0006a290300200841e8006a290300844200520d01200841d8006a29030021042008290350210d02402007450440200a200e370300200820033703a00120082001370398012008200237039001200b4200370300200842003703c001200820063703b801200820053703b001200c10ec010d02200841c8006a200920052006200841f0006a220710ea01200710ec01450d010b2000200d370308200041106a200437030041000c030b200d42017c22012004200150ad7c220284500d0120002001370308200041106a200237030041000c020b000b200041013a000141010b3a0000200841d0016a24000b9c0502097f017e230041106b22062400200641046a2001104502400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541f886046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000b4e02017f017e230041206b22022400200241086a2001105b2002290308220342025120035072450440200241186a29030021032000200229031037030020002003370308200241206a24000f0b000b4601017e0240200220034d0d002001200341c8006c6a22012903004202510d002001280230450d00200141406b290300210420002001290338370300200020043703080f0b000bab0702017f137e23004180026b2203240020032001290300220542002002290300220442001014200341406b200129030822084200200442001014200341d0006a200129031022094200200442001014200341e0006a200129031822064200200442001014200341106a200229030822044200200542001014200341f0006a20044200200842001014200341a0016a20044200200942001014200341d0016a20044200200642001014200341206a20022903102204420020054200101420034180016a20044200200842001014200341b0016a20044200200942001014200341e0016a20044200200642001014200341306a20022903182204420020054200101420034190016a20044200200842001014200341c0016a20044200200942001014200341f0016a2004420020064200101402402003290390012208200341386a290300200329033022042003290380012209200341286a2903002003290320220520032903702206200341186a290300200329031022072003290340220a200341086a2903007c220b7c2212200754ad7c22072003290350220c200341c8006a290300200a200b56ad7c7c220a7c220b7c220d7c2213200554ad7c220e20032903a001220f200341f8006a2903002006200d56ad7c22062007200b56ad7c220520032903602207200341d8006a290300200a200c54ad7c7c220a7c220b7c220c7c220d7c22117c2214200454ad7c221520032903b001221620034188016a2903002009201156ad7c2209200d200e54ad7c220420032903d001220d200341a8016a290300200c200f54ad7c220c20052006542005200b5672ad7c2205200341e8006a2903002007200a56ad7c7c22067c22077c220a7c220b7c220e7c220f4200520d0020032903c001221120034198016a2903002008200f56ad7c220f200e201554ad7c220820032903e001220e200341b8016a290300200b201654ad7c220b20042009542004200a5672ad7c22042007200d54ad200341d8016a2903002005200c54200520065672ad7c7c7c22097c22067c22057c22074200520d0020032903f001220a200341c8016a2903002007201154ad7c22072008200f54200520085472ad7c22052006200e54ad200341e8016a2903002004200b54200420095672ad7c7c7c22047c22084200520d00200341f8016a2903002008200a54ad7c42002005200754200420055472ad7d520d0020002003290300370308200041206a2014370300200041186a2013370300200041106a2012370300420121100b2000201037030020034180026a24000bdc0102067e017f2001290308220320022903087c220720035421092001290300220320022903007c220820035a047e2009ad05200742017c220750ad2009ad7c0b21032001290310220420022903107c22052004542109200350047e2009ad052005200320057c220556ad2009ad7c0b21042001290318220620022903187c22032006542101420021060240024020045004402001450d010c020b20010d012003200320047c2203560d010b20002008370308200041206a2003370300200041186a2005370300200041106a2007370300420121060b200020063703000b4b02027f017e200041186a210141c07d21020340200241406b2202414046044041c000200029030079a76b0f0b20012903002103200141086b21012003500d000b4100200379a720026a6b0b5302027f017e200041086a210202400240034020014103460d01200141016a210120022903002103200241086a21022003500d000b200141034d0d010b2000290300220342ffffffff0f560d002003a70f0b000b8b06020a7f027e230041d0016b220324002003410036021420034280808080800137020c200341ca006a2107200341296a21080240034002402002200b6a220441206a290300220e4200522205200441286a290300220d420055200d501b4504404200200d2005ad7c7d220d4200530d0320082004290000370000200841086a200441086a290000370000200841106a200441106a290000370000200841186a200441186a29000037000020034200200e7d370318200341013a0028200341003a00490c010b20072004290100370100200741186a200441186a290100370100200741106a200441106a290100370100200741086a200441086a2901003701002003200e370318200341013a0049200341003a00280b2003200d3703202003410c6a220428020822062004280200460440230041206b220524000240200641016a22060440410420042802002209410174220a20062006200a491b2206200641044d1b220641d8006c210a20064198bad10b49410374210c02402009450440200541003602180c010b200541083602182005200941d8006c36021c200520042802043602140b200541086a200c200a200541146a10662005280208450d01200528020c1a0b000b200528020c21092004200636020020042009360204200541206a2400200428020821060b2004280204200641d8006c6a200341186a220541d800100f1a2004200641016a360208200b41306a220b41e000470d000b200341206a200341146a2802003602002003200329020c37031820034198016a200141186a29000037030020034190016a200141106a29000037030020034188016a200141086a2900003703002003200129000037038001200341a0016a200341f0006a4130100f1a200341d0006a4200370300200341d8006a4200370300200341e0006a4100360200200341306a200341b8016a290300370300200341386a200341c0016a290300370300200341406b200341c8016a290300370300200341c8006a4200370300200341fbfcfbfe03360224200320032903b0013703282000200510ab01200341d0016a24000f0b000bfeb803021c7f127e230041b0066b22012400024002400240104841ff01714105470d0020014180800136021041888a04200141106a100220012802102206418180014f0d0020064104490d012001418c8a043602e0022001200641046b22043602e402418b8a042d00002105418a8a042d0000210341898a042d00002102024002400240027f0240027e024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024041888a042d0000220741fa006b0e10093b3b3b123b3b0111151e3b3b3b3b24000b02400240024002400240200741016b0e08130a14013f3f3f08000b0240200741256b0e091d3f123f3f3f183f24000b0240200741bc016b0e09203f3f3f3f2a113f17000b0240200741e9016b0e06292c3f3f3f1c000b0240200741396b0e021023000b0240200741c8006b0e03273f2b000b0240200741e3006b0e030b3f0f000b0240024002400240200741ee006b0e041e424201000b0240200741a2016b0e050642424224000b0240200741cd016b0e050742424205000b0240200741f3016b0e03294209000b20074118460d0e2007411e460d0120074132460d09200741c000460d20200741d200460d02200741d800460d27200741de00460d212007419801460d10200741ab01460d2f200741fb01460d0b200741e201460d1c200741da0147200241ff0171418c014772200341ff0171411f47200541ff017141f4004772722004410449720d41200141908a043602e002418c8a04280200220241087621084202211c0c420b200241ff0171220641cb00460d2f200641a601460d30200641c90147200341ff017141334772200541ff0171418d0147720d40200141106a200141e0026a104020012d003022074102460d4020012800142203410876210020012f0011200141136a2d00004110747221082001290028211d2001290020211f2001290018211e20012d001021024203211c0c410b200241ff017141880147200341ff0171411f4772200541ff017141ec0047720d3f200141106a200141e0026a104420012802602206418080808078460d3f20014180046a200141ec006a280200360200200120012902643703f803200129033822214280808080708321232001280214220341087621002001290330221ca7220741807e71210920012f001120012d0013411074722108201c422088a7210a200129035821242001280254210c2001280250210d20012903482122200129034021202001290328211d2001290320211f2001290318211e20012d001021022021a7210b4204211c0c400b200241ff0171411e47200341ff017141a9014772200541ff0171410e47720d3e200141106a200141e0026a104420012802602206418080808078460d3e20014180046a200141ec006a280200360200200120012902643703f803200129033822214280808080708321232001280214220341087621002001290330221ca7220741807e71210920012f001120012d0013411074722108201c422088a7210a200129035821242001280254210c2001280250210d20012903482122200129034021202001290328211d2001290320211f2001290318211e20012d001021022021a7210b4205211c0c3f0b200241ff017122024109460d2e200241dd0147200341ff017141db014772200541ff017141ca0147200441204972720d3d2006412c6b220641774b0d3d41948a04290200211e418c8a04290200212041a48a04290200211d419c8a04290200211f200141b48a043602e002200120063602e4022020a72202410876210841ac8a042902002222a7220741807e7121092020422888a721002020422088a721032022422088a7210a4219211c0c3e0b200241ff017122024128460d2e200241f90047200341ff017141c3014772200541ff017141bb0147200441204972720d3c200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024223211c0c3d0b200241ff017141a60147200341ff0171410f4772200541ff017141d40147720d3b200141086a200141e0026a106c20012802080d3b20014180056a20012802e40241386e2202200128020c220720022007491b106220070440034020012802e4022203450d3d200341214920012802e00222022d0000220041034b720d3d200341316b2205416f4b0d3d200141186a2209200241016a220341086a290000370300200141206a2204200341106a290000370300200141286a220a200341186a290000370300200120053602e4022001200241316a3602e00220012003290000370310200241296a290000211c2002290021211d200128028805220220012802800546044020014180056a2106230041206b220324000240200241016a22020440410420062802002208410174220b20022002200b491b2202200241044d1b220241386c210b20024193c9a41249410374211402402008450440200341003602180c010b200341083602182003200841386c36021c200320062802043602140b200341086a2014200b200341146a10662003280208450d01200328020c1a0b000b200328020c21082006200236020020062008360204200341206a240020012802880521020b200128028405200241386c6a2203201d37032020032001290310370300200320003a0030200341286a201c370300200341086a2009290300370300200341106a2004290300370300200341186a200a2903003703002001200241016a36028805200741016b22070d000b0b2001280280052202418080808078460d3b20012802e40222034120490d3b20012902840521222001200341206b3602e402200120012802e002220341206a3602e0022003350000211e2003290004211f200329000c211d2003290014211c200328001c210b200141106a200141e0026a104520012802102206418080808078460d3b201e422086202242208884211e20024108762108201ca7220741807e7121092006ad4220862123201c422088a7210a4208211c2022420888a72100200129021421202022a721030c3c0b200241ff017141e80047200341ff017141ed004772200541ff017141f3014720044120497272200641246b412049200641c4006b41204972720d3a418f8a042d00002107418d8a042f0000210541a48a04290200211d419c8a04290200211f41948a04290200211e41908a042802002103418c8a042d0000210241c48a04290200212241bc8a04290200212041b48a04290200212141ac8a04290200212620014188056a220041e88a04280200360200200141e08a0429020037038005200641f4006b416f4b0d3a20064184016b2208416f4b0d3a41dc8a04280200210641d48a04290200212441d08a04280200210c41cc8a04280200210d41f48a04290200212541ec8a0429020021272001418c8b043602e002200120083602e40241848b04290200212841fc8a042902002129200141106a200141e0026a10452001280210220f418080808078460d3a2005200741107472210820014180046a200028020036020020012001290380053703f8032021428080808070832123200341087621002026a7220741807e7121092026422088a7210a2001290214212a2021a7210b4209211c0c3b0b200241ff017141b30147200341ff0171411e4772200541ff017141e70147200441204972720d39200141ac8a043602e0022001200641246b3602e402418c8a04290200211d41948a04290200211c419c8a04290200212141a48a04290200212020014180066a200141e0026a2207106b2001280280062202418080808078460d3920014187066a2d0000210620012f0085062108200135028806211e20012d008406210320014180056a200710c6012001280280052205418080808078460d39200129028405211f200141106a200710452001280210418080808078460d3920082006411074722100200241087621082021428080808070832123201ca7220741807e7121092005ad422086201e84211e201c422088a7210a2001280218210d200129031021222021a7210b420a211c0c3a0b200241ff0171418c0147200341ff017141f3004772200541ff0171411647200441204972720d38200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102420b211c0c390b200241ff0171411547200341ff017141f4014772200541ff017141f60047200441204972722006417c71412446720d3741948a04290200211e418c8a04290200212041a48a04290200211d419c8a04290200211f200141b08a043602e0022001200641286b3602e40241ac8a04280200220741807e7121092020a7220241087621082020422888a721002020422088a72103420c211c0c380b200241ff0171410347200341ff017141b9014772200541ff0171419f0147200441204972720d36200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102420d211c0c370b200241ff0171412e47200341ff017141294772200541ff017141bd0147200441204972720d35200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102420e211c0c360b200241ff017141b30147200341ff0171412a4772200541ff017141f20147200441104972720d342001419c8a043602e0022001200641146b3602e402418c8a04290200221da722024108762108201d422888a7210041948a04290200211e420f211c201d422088a70c2f0b200241ff01712202418801460d26200241ca0147200341ff017141064772200541ff0171412447200441204972720d33200141a0046a41a48a0429020037030020014198046a419c8a0429020037030020014190046a41948a042902003703002001418c8a0429020037038804200641246b22024120490d33200141c0046a41c48a04290200370300200141b8046a41bc8a04290200370300200141b0046a41b48a04290200370300200141ac8a042902003703a80420024160714120460d33200141d0046a41d48a04290200370300200141d8046a41dc8a04290200370300200141e0046a41e48a04290200370300200141ec8a043602e0022001200641e4006b3602e402200141cc8a042902003703c804200141e8046a200141e0026a220210bd0120012802e8042205418080808078460d3320012902ec042121200141f4046a200210bd0120012802f4042204418080808078460d3320012802e4022203450d3320012902f80421262001200341016b3602e402200120012802e002220341016a3602e00220032d0000210e20014180056a200210c701200129038005221c4202510d33200141106a200210c8012001290310221d4202510d33200141cc056a2002103820012802cc050d3320012802e4022202450d33200141d4056a280200211220012802d00521112001200241016b3602e402200120012802e002220241016a3602e00220022d00000e022827330b200241ff017141960147200341ff017141b6014772200541ff0171411347720d32200141106a200141e0026a104020012d003022074102460d3220012800142203410876210020012f0011200141136a2d00004110747221082001290028211d2001290020211f2001290018211e20012d001021024211211c0c330b200241ff017141e60047200341ff017141034772200541ff0171419f0147720d31200141106a200141e0026a104020012d003022074102460d3120012800142203410876210020012f0011200141136a2d00004110747221082001290028211d2001290020211f2001290018211e20012d001021024212211c0c320b200241ff017122024129460d26200241ce0047200341ff01714181014772200541ff017141900147200441204972720d30200141ac8a043602e0022001200641246b3602e40241948a04290200211e418c8a04290200211c419c8a04290200211f41a48a04290200211d200141106a200141e0026a102e200129031050450d3020012903182220a7220741807e712109201ca722024108762108200141206a29030022214280808080708321232020422088a7210a201c422888a72100201c422088a721032001413c6a280200210c200141386a280200210d200141306a2903002122200141286a29030021202021a7210b4213211c0c310b200241ff017122024105460d26200241f100460d27200241e80147200341ff017141e0004772200541ff017141c50047200441204972720d2f200141ac8a043602e0022001200641246b3602e402418f8a042d00002106418d8a042f00002107418c8a042d0000210241908a04280200210341948a04290200211e419c8a04290200211f41a48a04290200211d200141106a200141e0026a10c801200129031022214202510d2f2007200641107472210820014180046a200141cc006a280200360200200120012902443703f8032003410876210020012903182226428080808070832123200141d8006a29030021252001290350212720012802402106200129033821242001280234210c2001280230210d20012903282122200129032021202021a721072026a7210b4214211c0c300b200241ff017141e60147200341ff017141a3014772200541ff0171413a47200441204972720d2e200141ac8a043602e0022001200641246b3602e40241948a04290200211e418c8a042902002120419c8a04290200211f41a48a04290200211d200141106a200141e0026a103820012802100d2e2001280214220741807e7121092020a7220241087621082020422888a721002020422088a72103200141186a280200210a4215211c0c2f0b200241ff0171220241c000460d27200241b40147200341ff017141f5004772200541ff017141f30147200441104972720d2d2001419c8a043602e0022001200641146b3602e402418c8a04290200221da722024108762108201d422888a7210041948a04290200211e422e211c201d422088a70c280b200241ff017141ec0047200341ff017141d1004772200541ff017141d4004720044104497272200641086b412049720d2c418c8a042802002107200141b08a043602e0022001200641286b3602e40241938a042d0000210641918a042f0000210541908a042d0000210241948a04280200210341988a04290200211e41a08a04290200211f41a88a04290200211d200141106a200141e0026a10c701200129031022214202510d2c2005200641107472210820014180046a200141c4006a2802003602002001200129023c3703f803200741807e71210920034108762100200141d0006a2903002125200129034821272001280238210620012903302124200128022c210c2001280228210d20012903202122200129031821202021a7210b4217211c0c2d0b200241ff0171411447200341ff017141c8004772200541ff017141800147720d2b200141106a200141e0026a10920120012802102202418180808078460d2b20012802e4022206411f4d0d2b20012f0015200141176a2d00004110747221002001350218211c20012d001421032001200641206b3602e402200120012802e002220641206a3602e0022002410876210820062900142220a7220741807e712109201c200635000042208684211e2020422088a7210a2006290004211f200629000c211d200628001c210b42180c240b200241ff017141ac0147200341ff017141c8014772200541ff0171411947720d2a421a211c0c2b0b200241ff017141c70147200341ff017141264772200541ff017141b70147200441204972720d29200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102421b211c0c2a0b200241ff017141e50147200341ff017141204772200541ff017141ac0147720d28421c211c0c290b200241ff017141ad0147200341ff017141f4014772200541ff017141e30147200441204972720d27200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102421d211c0c280b200241ff0171410347200341ff01714183014772200541ff017141850147200441204972720d26200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102421e211c0c270b200241ff0171220241da01460d21200241fc0147200341ff0171413d4772200541ff0171419a0147200441204972720d25200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102421f211c0c260b200241ff017141fe0047200341ff017141e0014772200541ff017141c40047200441204972720d24200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024220211c0c250b200241ff0171220241cf00460d20200241a80147200341ff017141d1014772200541ff017141e80147200441204972720d23200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024221211c0c240b200241ff017141fa0147200341ff017141fb004772200541ff017141c40147200441204972720d22200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024224211c0c230b200241ff0171412b47200341ff01714191014772200541ff017141d30147720d21200141106a200141e0026a103d20012d00100d21200141396a2900002221428080808070832123200141156a28000022034108762100200141316a290000221ca7220741807e712109200141126a2f0000200141146a2d0000411074722108201c422088a7210a200141c9006a2900002122200141c1006a2900002120200141296a290000211d200141216a290000211f200141196a290000211e20012d001121022021a7210b4225211c0c220b200241ff017141f10147200341ff017141c5004772200541ff017141ef0047200441204972720d20200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024227211c0c210b200241ff017141f00047200341ff0171411e4772200541ff017141c30147200441044972720d1f200141908a043602e0022001200641086b3602e402418c8a04280200220241087621084228211c0c200b200241ff017141be0147200341ff0171410f4772200541ff017141ae0147200441204972720d1e200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024229211c0c1f0b200241ff0171411247200341ff0171411b4772200541ff0171419f0147720d1d200141106a200141e0026a10920120012802102202418180808078460d1d2002410876210820012f0015200141176a2d00004110747221002001350218211e422a211c20012d00140c180b200241ff017141cd0047200341ff017141394772200541ff017141fc0147200441204972720d1c200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102422b211c0c1d0b200241ff017141b40147200341ff017141b9014772200541ff017141f60047200441204972720d1b2006417c7122024124462002412846720d1b41948a04290200211e418c8a04290200212041a48a04290200211d419c8a04290200211f41ac8a042802002107200141b48a043602e00220012006412c6b3602e402200741807e7121092020a7220241087621082020422888a721002020422088a7210341b08a04280200210a422c211c0c1c0b200241ff017141ec0147200341ff017141114772200541ff0171412347720d1a4230211c0c1b0b200241ff0171411147200341ff017141cd004772200541ff017141c50147200441204972720d19200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024231211c0c1a0b200241ff0171419c0147200341ff017141ab014772200541ff017141d30047720d18200141106a200141e0026a103d20012d00100d18200141396a2900002221428080808070832123200141156a28000022034108762100200141316a290000221ca7220741807e712109200141126a2f0000200141146a2d0000411074722108201c422088a7210a200141c9006a2900002122200141c1006a2900002120200141296a290000211d200141216a290000211f200141196a290000211e20012d001121022021a7210b4232211c0c190b200241ff0171200341ff0171419b014772200541ff0171418d0147720d17200141106a200141e0026a104220012903104200520d1720014180046a200141f4006a2802003602002001200141ec006a2902003703f8032001290318221ca722024108762108200141406b2903002221428080808070832123200141386a290300221da7220741807e712109201c422888a72100201c422088a72103201d422088a7210a200141206a290300211e20014180016a2903002125200141f8006a2903002127200141e8006a2802002106200141e0006a2903002124200141dc006a280200210c200141d8006a280200210d200141d0006a2903002122200141c8006a2903002120200141306a290300211d200141286a290300211f2021a7210b4233211c0c180b200241ff017141c10047200341ff01714180014772200541ff0171412447200441204972720d16200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024234211c0c170b200241ff017141f80047200341ff017141fc004772200541ff017141860147720d15200141106a200141e0026a103d20012d00100d15200141396a2900002221428080808070832123200141156a28000022034108762100200141316a290000221ca7220741807e712109200141126a2f0000200141146a2d0000411074722108201c422088a7210a200141c9006a2900002122200141c1006a2900002120200141296a290000211d200141216a290000211f200141196a290000211e20012d001121022021a7210b4235211c0c160b200241ff017141d90147200341ff017141ac014772200541ff0171411847720d14200141106a200141e0026a103e20012d001422034102460d142001290230221ca7220741807e71210920012f001120012d001341107472210820012f0015200141176a2d0000411074722100201c422088a7210a2001290228211d2001290220211f2001290218211e20012d001021024237211c0c150b200241ff017141c00147200341ff017141e2004772200541ff017141fd0147720d13200141106a200141e0026a103e20012d001422034102460d132001290230221ca7220741807e71210920012f001120012d001341107472210820012f0015200141176a2d0000411074722100201c422088a7210a2001290228211d2001290220211f2001290218211e20012d001021024239211c0c140b200241ff017141f10147200341ff0171412447720d12200541ff0171418a01460d100c120b200241ff017141b60147200341ff0171410c4772200541ff017141df0147200441204972720d11200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102423d211c0c120b200341ff0171413547200541ff017141f60047720d10200141106a200141e0026a104220012903104200520d1020014180046a200141f4006a2802003602002001200141ec006a2902003703f8032001290318221ca722024108762108200141406b2903002221428080808070832123200141386a290300221da7220741807e712109201c422888a72100201c422088a72103201d422088a7210a200141206a290300211e20014180016a2903002125200141f8006a2903002127200141e8006a2802002106200141e0006a2903002124200141dc006a280200210c200141d8006a280200210d200141d0006a2903002122200141c8006a2903002120200141306a290300211d200141286a290300211f2021a7210b4236211c0c110b200341ff017141c80047200541ff017141830147720d0f200141106a200141e0026a103820012802100d0f200128021422024108762108200141186a28020022034108762100423c211c0c100b200341ff017141c00047200541ff0171412c47720d0e200141106a200141e0026a104420012802602206418080808078460d0e20014180046a200141ec006a280200360200200120012902643703f803200129033822214280808080708321232001280214220341087621002001290330221ca7220741807e71210920012f001120012d0013411074722108201c422088a7210a200129035821242001280254210c2001280250210d20012903482122200129034021202001290328211d2001290320211f2001290318211e20012d001021022021a7210b4206211c0c0f0b200341ff0171413047200541ff017141e60147720d0d200141106a200141e0026a104420012802602206418080808078460d0d20014180046a200141ec006a280200360200200120012902643703f803200129033822214280808080708321232001280214220341087621002001290330221ca7220741807e71210920012f001120012d0013411074722108201c422088a7210a200129035821242001280254210c2001280250210d20012903482122200129034021202001290328211d2001290320211f2001290318211e20012d001021022021a7210b4207211c0c0e0b200341ff017141e10147200541ff017141970147722004412049720d0c200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d00002102422f211c0c0d0b20014180066a200141e0026a102e2001290380064200520d0b200141d8056a20014188066a4128100f1a4201212b0b201da7210d200141e8026a200141d8056a4128100f1a200141f0036a200141a0046a290300370300200141e8036a20014198046a290300370300200141e0036a20014190046a290300370300200141c0036a200141b0046a290300370300200141c8036a200141b8046a290300370300200141d0036a200141c0046a290300370300200141a0036a200141d0046a290300370300200141a8036a200141d8046a290300370300200141b0036a200141e0046a29030037030020012001290388043703d803200120012903a8043703b803200120012903c8043703980320014180046a2001412c6a280200360200200120012902243703f80320012903b005222c428080808070832123200128028c052203410876210020012903a805221da7220741807e71210920012f0089052001418b056a2d0000411074722108201d422088a7210a200141c8006a2903002128200141386a2903002125200128022021062001290318212420012903c005212220012903b805212020012903a005211d200129039805211f200129039005211e20012d00880521022001280250210f2001290254212a200128025c21102001290340212920012903302127202ca7210b0c0b0b200541ff0171200341ff017141d70047722004412049720d09200141ac8a043602e0022001200641246b3602e40241908a0428020022034108762100418d8a042f0000418f8a042d000041107472210841a48a04290200211d419c8a04290200211f41948a04290200211e418c8a042d000021024222211c0c0a0b200341ff0171412547200541ff017141e70147720d08200141106a200141e0026a103d20012d00100d08200141396a2900002221428080808070832123200141156a28000022034108762100200141316a290000221ca7220741807e712109200141126a2f0000200141146a2d0000411074722108201c422088a7210a200141c9006a2900002122200141c1006a2900002120200141296a290000211d200141216a290000211f200141196a290000211e20012d001121022021a7210b4226211c0c090b200341ff017141d50147200541ff0171411947722006410c6b412049200441074d72722006417c71412c46720d07418c8a042902002122419c8a04290200211e41948a04290200212041ac8a04290200211d41a48a04290200211f200141b88a043602e0022001200641306b3602e4022022a7220741807e7121092020a7220241087621082022422088a7210a2020422888a721002020422088a7210341b48a04280200210b422d0b211c0c070b200341ff017141c60047200541ff017141fe0047720d05200141106a200141e0026a10c90120012802102202418080808078460d052002410876210820012f0015200141176a2d00004110747221002001350218211e4216211c20012d00140b21030c050b200341ff0171413b47200541ff017141b20147722004410449720d03200141908a043602e0022001200641086b3602e402418c8a04280200220241087621084238211c0c040b200341ff0171410947200541ff017141910147720d02200141106a200141e0026a103e20012d001422034102460d022001290230221ca7220741807e71210920012f001120012d001341107472210820012f0015200141176a2d0000411074722100201c422088a7210a2001290228211d2001290220211f2001290218211e20012d00102102423a211c0c030b200141106a200141e0026a103e20012d001422034102460d012001290230221ca7220741807e71210920012f001120012d001341107472210820012f0015200141176a2d0000411074722100201c422088a7210a2001290228211d2001290220211f2001290218211e20012d00102102423b211c0c020b000b107e000b200141f4006a20014180046a280200360200200141b0016a200141e0036a290300370300200141b8016a200141e8036a290300370300200141c0016a200141f0036a290300370300200141d0016a200141c0036a290300370300200141d8016a200141c8036a290300370300200141e0016a200141d0036a290300370300200120012903f80337026c200120012903d8033703a801200120012903b8033703c80120014180026a200141b0036a290300370300200141f8016a200141a8036a290300370300200141f0016a200141a0036a290300370300200141ac026a20014194036a280000360000200120053602900220012021370294022001200436029c02200120263703a00220012001290398033703e80120012001280091033600a902200141b8026a200141e8026a4128100f1a20014190016a202837030020014180016a2025370300200141206a201e37030020012029370388012001202737037820012002ad42ff01832008410874ad200341ff0171200041087472ad42208684843703182001202b3703b0022001200e3a00a8022001201236028c022001201136028802200120103602a4012001202a37029c012001200f3602980120012006360268200120243703602001200c36025c2001200d360258200120223703502001202037034820012023200bad8437034020012009200741ff017172ad200aad422086843703382001201d3703302001201f3703282001201c370310200141106a210441002105410021024200211f410021084100210a23004190106b2200240020004280800137029c07200041888a0436029807410020004198076a2206101c02400240024002400240024002400240024002400240024002400240027f024002400240200028029c07220720002802a0072201490d0020002802980721032000200720016b22093602980720032001200120036a220320061000210120092000280298072207492001410f4f720d00200141e889046a2d000022014103462001411047722007411047200741104972720d00200341086a290000211c20002003290000221e3703d8042000201c3703e0040240027f02400240027f0240027e0240027f0240027f0240027e0240027f027f02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240027f024002400240024002400240024002400240024002400240410e2004290300222642027d221da7201d423c5a1b41016b0e3b0102030405064c4b4a491716154847464544434241403f143e133d3c3b3a393837363534333231302f2e2d2c2b122a292827262524232221201f1e000b20042802082101200041f0096a22021047411f210510970120014b044020004198076a220320021055200020013602c807200220031098012003200210990120002802980722054123460d1c200041f0046a200041a4076a2802003602002000200029029c073703e8040b410121010c1c0b200041c80b6a200441206a290200370300200041c00b6a200441186a290200370300200041b80b6a200441106a290200370300200020042902083703b00b200441286a2d0000210320004198076a2201104741f486042001109a01450440200041e0046a290300211c20002903d804211d2000428080013702f409200041888a043602f009201d201c200041f0096a2202105e20002802f409220820002802f8092206490d5d20002802f0092107200041003602f8092000200820066b3602f4092000200620076a3602f00920012002102520002802f809220820002802f4094b0d5d2007200620002802f009200810051a2000428080013702f409200041888a043602f00941f4860420012002109b0120002802f409220720002802f8092201490d5d20002802f0092106200041003602f8092000200720016b3602f4092000200120066a3602f009201d201c2002101f20002802f809220220002802f4094b0d5d2006200120002802f009200210051a201d42017c221d201c201d50ad7c221c84500d5d2000201d3703d8042000201c3703e0040b200041e8046a2206104720004198076a2207200041b00b6a104c200028029807220141234604402007200028029c0722022006104f200041a0076a290300211c200029039807211d200041f0096a2006105520072002109c01200041d8066a20002802a00a109d014115210141002107200220002802e0064f0d5e024020002802dc06200241c8006c6a2206290300221e42025204402003450d01201e500d60410021042006290308200641106a2903008450450440201d20002903c80754201c200041d0076a290300221d54201c201d511b450d1341032104410c21010b0c610b4200211c410021040c600b200041086a42014200200241ff00711013200041880a6a22012001290300200041106a290300427f8583370300200020002903800a2000290308427f85833703800a0c5c0b200028029c07220441807e71210720002902a007211c0c5e0b200441d0006a290300211c200441c8006a290300211d200041e8046a200441086a220241c000100f1a200041b80b6a20004190056a290300370300200041c00b6a20004198056a290300370300200041c80b6a200041a0056a290300370300200041f0066a200441206a290000370300200041e8066a200441186a290000370300200041e0066a200441106a29000037030020002000290388053703b00b200020042900083703d806201c201d84500440410f21050c590b413810652101200241086a290300211e200241106a290300211f200241186a290300212020022903002121200141286a2207201c3703002001201d370320200141186a2020370300200141106a201f370300200141086a201e37030020012021370300200141003a003020004198076a2202200041b00b6a220620014101109e0120002802980722054123470d5720002802a407450d5b20002802a007210420021047200041f0096a2208200041d8066a220920022001290320200729030010930120002802f00922054123470d0d20022009102720002d009807450d5b41012107200820004199076a41c000100f1a2004290300221e201d7c2220201e5422012001ad200441086a290300221e201c7c7c221f201e54201e201f511b0d0c2002200820062020201f109f0120002802980722054108470d572002200041900a6a20062004290310200441186a290300109f0120002802980722054108460d180c570b200441d0006a290300211c200441c8006a290300211d200041e8046a200441086a220241c000100f1a200041b80b6a20004190056a290300370300200041c00b6a20004198056a290300370300200041c80b6a200041a0056a290300370300200041f0066a200441206a290000370300200041e8066a200441186a290000370300200041e0066a200441106a29000037030020002000290388053703b00b200020042900083703d806201c201d84500440410f21050c550b413810652101200241086a290300211e200241106a290300211f200241186a290300212020022903002121200141286a2206201c3703002001201d370320200141186a2020370300200141106a201f370300200141086a201e37030020012021370300200141013a003020004198076a2202200041b00b6a220720014101109e0120002802980722054123470d52200041a4076a350200500d5a200041a0076a280200210320021047200041f0096a2208200041d8066a220420022001290320200629030010940120002802f00922054123470d0a20022004102720002d009807450d5a200820004199076a41c000100f1a2006290300211e200341086a290300211f2001290320211c2003290300211d20021047200041d80f6a20082007201d201c7d201f201e7d201c201d56ad7d20022001290320200629030010a00120002802d80f22054108470d092002200041900a6a20072003290310200341186a290300109f0120002802980722054108460d160c520b200441d0006a290300211c200441c8006a290300211d200041e8046a200441086a220241c000100f1a200041b80b6a20004190056a290300370300200041c00b6a20004198056a290300370300200041c80b6a200041a0056a290300370300200041f0066a200441206a290000370300200041e8066a200441186a290000370300200041e0066a200441106a29000037030020002000290388053703b00b200020042900083703d806201c201d84500440410f21050c500b413810652101200241086a290300211e200241106a290300211f200241186a290300212020022903002121200141286a201c3703002001201d370320200141186a2020370300200141106a201f370300200141086a201e37030020012021370300200141023a003020004198076a2202200041b00b6a220620014101109e0120002802980722054123470d0620002802a407450d5920002802a007210120021047200041f0096a2208200041d8066a22092002201d201c10940120002802f00922054123470d0520022009102720002d009807450d59200820004199076a41c000100f1a2002200820062001290300200141086a290300109f0120002802980722054108470d042001290310221e201d7c2220201e5422052005ad200141186a290300221e201c7c7c221f201e54201e201f511b0d0320021047200041d80f6a200041900a6a20062020201f2002201d201c10a00120002802d80f22054108460d1420002f00dd0f200041df0f6a2d000041107472210120002802e40f210720002802e00f210420002d00dc0f21030c4f0b200441d0006a290300211c200441c8006a290300211d200041e8046a200441086a220241c000100f1a200041b80b6a20004190056a290300370300200041c00b6a20004198056a290300370300200041c80b6a200041a0056a290300370300200041f0066a200441206a290000370300200041e8066a200441186a290000370300200041e0066a200441106a29000037030020002000290388053703b00b200020042900083703d806201c201d84500440410f21050c4d0b413810652101200241086a290300211e200241106a290300211f200241186a290300212020022903002121200141286a2203201c3703002001201d370320200141186a2020370300200141106a201f370300200141086a201e37030020012021370300200141033a003020004198076a2202200041b00b6a220720014101109e0120002802980722054123470d4a200041a4076a350200500d58200041a0076a280200210620021047200041f0096a2208200041d8066a220420022001290320200329030010930120002802f00922054123470d0120022004102720002d009807450d58200820004199076a41c000100f1a2002200820072006290300200641086a290300109f0120002802980722054108470d4a2002200041900a6a20072006290310221c2001290320221d7d200641186a29030020032903007d201c201d54ad7d109f0120002802980722054108460d120c4a0b2004410c6a2802002101200441106a2802002102200041b00f6a2004412c6a290200370300200041a80f6a200441246a290200370300200041a00f6a2004411c6a2902003703002000200441146a2902003703980f20004198076a20021062200028029c072108200241ffffffff0171220620002802980720002802a00722046b2205200520064b1b220704402008200441386c6a21050340200141306a2d00002104200141206a290300211c200141286a290300211d200541086a200141086a290300370300200541106a200141106a290300370300200541186a200141186a2903003703002001290300211e200541286a201d370300200541206a201c370300200541306a20043a00002005201e370300200541386a2105200141386a2101200741016b22070d000b0b20004198076a200041980f6a20082002109e012000280298072209412346044020002802a407210120002802a0072105200041b80f6a104720010440200041d8076a2104200041b8076a2103200041d00b6a210f2000419c076a210a20004199076a2112200041f4096a2107200241016a21062001410574210220004180086a2114200821010340200641016b2206450d5a200041f00f6a220b200141186a2209290000370300200041e80f6a220d200141106a220e290000370300200041e00f6a220c200141086a2211290000370300200020012900003703d80f200141286a290300211c200141206a290300211d200141306a2d00002115200741186a2009290200370200200741106a200e290200370200200741086a2011290200370200200720012902003702002000418080043602f00920004198076a2211200041f0096a2209102820002d009807220e4102460d5a200041e8046a201241c000100f1a0240200e450440200041e0066a220e200c290300221e370300200041e8066a2210200d290300221f370300200041f0066a2213200b2903002220370300200020002903d80f22213703d806200041880a6a2020370300200041800a6a201f370300200041f8096a201e370300200020213703f00920112009102720002d009807450d5c2009201241c000100f1a200a20002903d806370000200a41086a200e290300370000200a41106a2010290300370000200a41186a2013290300370000200041808004360298072000428080013702fc0e200041888a043602f80e4100200041f80e6a2210101c200a2010102520002802fc0e221620002802800f220e490d5c20002802f80e2113200041003602800f20002016200e6b3602fc0e2000200e20136a3602f80e20092010108f0120002802800f221020002802fc0e4b0d5c2013200e20002802f80e201010051a2011200941c000100f1a0c010b20004198076a200041e8046a41c000100f1a0b200041b00b6a20004198076a41c000100f1a02400240024002400240024002400240201541016b0e03010203000b20004198076a220e200041d80f6a200041b80f6a201d201c10930120002802980722094123470d502005290300221e201d7c2220201e5422092009ad200541086a290300221e201c7c7c221f201e54201e201f511b0d03200e200041b00b6a200041980f6a22112020201f109f0120002802980722094108470d50200e200f20112005290310200541186a290300109f0120002802980722094108470d50200320002900b80f370000200041b0076a200b290300370300200041a8076a200d290300370300200041a0076a200c290300370300200341086a200041c00f6a290000370000200341106a200041c80f6a290000370000200341186a200041d00f6a290000370000200020002903d80f37039807200420002903980f370200200441086a200041a00f6a290300370200200441106a200041a80f6a290300370200200441186a200041b00f6a2903003702002014201c3703002000201d3703f807200e10710c060b20004198076a220e200041d80f6a200041b80f6a201d201c10940120002802980722094123470d4f200841286a22092903002120200541086a29030021212008290320211e2005290300211f200e1047200041f0096a200041b00b6a200041980f6a201f201e7d202120207d201e201f56ad7d200e2008290320200929030010a00120002802f0092209410847044020002f00f509200041f7096a2d000041107472210120002802fc09210420002802f809210720002d00f4090c510b20004198076a200f200041980f6a2005290310200541186a290300109f0120002802980722094108460d040c4f0b20004198076a220e200041d80f6a200041b80f6a2211201d201c10940120002802980722094123470d4e200e200041b00b6a200041980f6a22102005290300200541086a290300109f0120002802980722094108470d4e2005290310221e201d7c2220201e5422092009ad200541186a290300221e201c7c7c221f201e54201e201f511b0d01200e200f20102020201f2011201d201c10a00120002802980722094108460440200320002900b80f370000200041b0076a200b290300370300200041a8076a200d290300370300200041a0076a200c290300370300200341086a200041c00f6a290000370000200341106a200041c80f6a290000370000200341186a200041d00f6a290000370000200020002903d80f37039807200420002903980f370200200441086a200041a00f6a290300370200200441106a200041a80f6a290300370200200441186a200041b00f6a2903003702002014201c3703002000201d3703f807200e10720c050b0c4e0b20004198076a220e200041d80f6a200041b80f6a201d201c10930120002802980722094123470d4d200e200041b00b6a200041980f6a22112005290300200541086a290300109f0120002802980722094108470d4d200e200f20112005290310221e2008290320221f7d200541186a290300200841286a2903007d201e201f54ad7d109f0120002802980722094108460d010c4d0b4109210941010c4d0b200320002900b80f370000200041b0076a200b290300370300200041a8076a200d290300370300200041a0076a200c290300370300200341086a200041c00f6a290000370000200341106a200041c80f6a290000370000200341186a200041d00f6a290000370000200020002903d80f37039807200420002903980f370200200441086a200041a00f6a290300370200200441106a200041a80f6a290300370200200441186a200041b00f6a2903003702002014201c3703002000201d3703f80720004198076a107b0c010b200320002900b80f370000200041b0076a200b290300370300200041a8076a200d290300370300200041a0076a200c290300370300200341086a200041c00f6a290000370000200341106a200041c80f6a290000370000200341186a200041d00f6a290000370000200020002903d80f37039807200420002903980f370200200441086a200041a00f6a290300370200200441106a200041a80f6a290300370200200441186a200041b00f6a2903003702002014201c3703002000201d3703f80720004198076a10790b200141386a2101200541206a2105200241206b22020d000b0b20002903d804200041e0046a2903001083014123210941000c490b0c460b200041fc096a350200211d20002902f4090c490b41012103410921050c4b0b20002f009d072000419f076a2d0000411074720c020b20002f00f509200041f7096a2d000041107472210120002802fc09210720002802f809210420002d00f40921030c490b20002f009d072000419f076a2d0000411074720b210120002802a407210720002802a007210420002d009c0721030c470b200041e40f6a350200211d20002902dc0f0c490b200041fc096a350200211d20002902f4090c480b410921050c4b0b20002f00f509200041f7096a2d000041107472210120002802fc09210420002802f809210320002d00f40921070c4a0b200041186a42014200200241ff00711013200041880a6a22012001290300200041206a29030084370300200020002903800a2000290318843703800a0c4b0b201e201c107c000b20004198076a22021059230041106b22012400200141808001360208200141888a043602040240200228020041808080807846044041888a044181023b0100410221040c010b2001410136020c41888a0441003a000020022802042002280208200141046a108801200128020c220441818001490d00000b0c5a0b230041206b22012400200141086a101b2001290308a7450440000b200141186a290300211c200041d8026a220220012903103703002002201c370308200141206a240020002903d802200041e0026a290300107c000b200441106a290300211c2004290308211d4101210120004199076a1047200041013a0098074108210541d082bdaf0120004198076a103b220241ff01714103460440201d201c101e201d201c107320002903d804200041e0046a29030010830141232105410021010b200020023a009c070c4d0b200041b4076a200441206a290200370200200041ac076a200441186a290200370200200041a4076a200441106a2902003702002000200429020837029c072000200041d8046a3602980741012101200041f1096a1047200041013a00f0094108210541d082bdaf01200041f0096a2203103b220641ff0171410346044041f683a1eb022000419c076a10a1012000428080013702ec04200041888a043602e804200041e8046a4101106f200041f8096a2201200041f0046a280200360200200020002902e8043703f009200341ce8204102c20002802f409220720012802002202490d4820002802f009210541002101200041003602f8092000200720026b3602f4092000200220056a3602f009200441086a2003102520002802f809220320002802f4094b0d482005200220002802f0092003100420002903d804200041e0046a290300108301412321050b0c4b0b200041b4076a200441206a290200370200200041ac076a200441186a290200370200200041a4076a200441106a2902003702002000200429020837029c072000200041d8046a3602980741012101200041f1096a1047200041013a00f0094108210541d082bdaf01200041f0096a2203103b220641ff0171410346044041bae696857a2000419c076a10a1012000428080013702ec04200041888a043602e804200041e8046a4101106f200041f8096a2201200041f0046a280200360200200020002902e8043703f009200341b18304102c20002802f409220720012802002202490d4720002802f009210541002101200041003602f8092000200720026b3602f4092000200220056a3602f009200441086a2003102520002802f809220320002802f4094b0d472005200220002802f0092003100420002903d804200041e0046a290300108301412321050b0c4a0b200041b8076a104720004180086a2003290300370300200041a0076a200041e0066a290300370300200041a8076a200041e8066a290300370300200041b0076a200041f0066a290300370300200041e0076a200041b80b6a290300370300200041e8076a200041c00b6a290300370300200041f0076a200041c80b6a290300370300200020012903203703f807200020002903d80637039807200020002903b00b3703d80720004198076a107b2003290300211d2001290320211c20002903d804200041e0046a29030010830141000c3a0b200041b8076a104720004180086a201c370300200041b0076a200041f0066a290300370300200041a8076a200041e8066a290300370300200041a0076a200041e0066a290300370300200041e0076a200041b80b6a290300370300200041e8076a200041c00b6a290300370300200041f0076a200041c80b6a2903003703002000201d3703f807200020002903d80637039807200020002903b00b3703d80720004198076a107220002903d804200041e0046a2903001083014123210541000c3b0b200041b8076a104720004180086a200141286a2205290300370300200041a0076a200041e0066a290300370300200041a8076a200041e8066a290300370300200041b0076a200041f0066a290300370300200041e0076a200041b80b6a290300370300200041e8076a200041c00b6a290300370300200041f0076a200041c80b6a290300370300200020012903203703f807200020002903d80637039807200020002903b00b3703d80720004198076a10792005290300211d2001290320211c20002903d804200041e0046a29030010830141000c3e0b200041b8076a104720004180086a201c370300200041b0076a200041f0066a290300370300200041a8076a200041e8066a290300370300200041a0076a200041e0066a290300370300200041e0076a200041b80b6a290300370300200041e8076a200041c00b6a290300370300200041f0076a200041c80b6a2903003703002000201d3703f807200020002903d80637039807200020002903b00b3703d80720004198076a107120002903d804200041e0046a2903001083014123210541000c400b200041b0076a200041880a6a290000370300200041a8076a200041800a6a290000370300200041a0076a200041f8096a290000370300200020002900f00937039807200020013602b8072000428080013702dc06200041888a043602d806200041d8066a4102106f200041f0046a2201200041e0066a280200360200200020002902d8063703e804200041e8046a220341ca8104102c200041b80b6a22022001280200360200200020002903e8043703b00b200041b00b6a20004198076a2205102c20002802b40b220720022802002202490d4120002802b00b210641002101200041003602f0042000200720026b3602ec042000200220066a3602e80420052003102520002802b8072003101c20002802f004220320002802ec044b0d412006200220002802e8042003100420002903d804200041e0046a290300108301412321050b200041a4076a200041f0046a280200360200200020002903e80437029c070c450b200041b4076a200441206a290200370200200041ac076a200441186a290200370200200041a4076a200441106a2902003702002000200429020837029c072000200041d8046a36029807200041f1096a1047200041013a00f009027f0240200041fc096a027f02400240024041e3abb1bb04200041f0096a103b41ff017141026b0e020200010b2000419c076a1009450d03200041013602f00941010c040b200041d0046a410f410010a20120002802d004210720002802d404220141a18904290000370000200141076a41a88904290000370000410f0c010b200041c8046a4111410010a20120002802c804210720002802cc04220141b08904290000370000200141106a41c089042d00003a0000200141086a41b8890429000037000041110b360200200041f8096a2001360200200020073602f409200041023602f00941010c010b200041033602f00920002903d804200041e0046a29030010830141000b210541002101230041106b22022400200241808001360208200241888a043602040240024002400240200041f0096a22032802002206410447044041888a0441003a00002006410346044041898a0441003a0000410221040c050b41898a0441013a0000200641016b0e020301020b41888a044181023b0100410221040c030b410221010b418a8a0420013a00002002410336020c200341086a2802002003410c6a280200200241046a1033200228020c220441818001490d01000b418a8a0441013a0000410321040b20052004108601000b2004410c6a280200210220042802082203103a210120004199076a1047200041013a009807200120004198076a2201103b220741ff0171410346047f20022003103a220847044020004280800137029c07200041888a043602980741f8880420032001102a200028029c07220420002802a0072206490d402000280298072105200041003602a0072000200420066b36029c072000200520066a3602980720022001101c20002802a0072204200028029c074b0d4020052006200028029807200410051a200020023602b80b200020083602b40b200020033602b00b2000428080013702ec04200041888a043602e804200041e8046a4102106f200041a0076a2202200041f0046a280200360200200020002902e804370398072001419c8604102c200041f8096a2203200228020036020020002000290398073703f009200041f0096a200041b00b6a107520002802f409220620032802002202490d4020002802f0092103200041003602a0072000200620026b36029c072000200220036a3602980720002802b00b2001101c20002802b40b2001101c20002802b80b2001101c20002802a0072201200028029c074b0d4020032002200028029807200110040b20002903d804200041e0046a29030010830141000541010b2007108101000b20042802082102200041f0096a22032004410c6a22064121100f1a4101210120004199076a22071047200041013a0098070240024020002d00f009044020034101722007104a0d010b0c010b2002200610a301220541ff01714103470d0020002903d804200041e0046a29030010830141002101410321050b20012005108101000b20042802082202103a21014101210520004199076a1047200041013a0098070240200120004198076a103b220141ff01714103470d0020022004410c6a10a301220141ff01714103470d0020002903d804200041e0046a29030010830141002105410321010b20052001108101000b20042802082202103a21014101210520004199076a1047200041013a0098070240200120004198076a103b220141ff01714103470d004102210120022004410c6a10a40141ff01714103470d0020002903d804200041e0046a29030010830141002105410321010b20052001108101000b2004280208103a2101230041106b22042400200441888a0436020441888a0441003a000020044280808180103702082001200441046a101c0c490b200441086a2201280200200141046a103c2101230041106b22042400200441888a0436020441888a0441003a000020044280808180103702082001200441046a10340c480b2000200041d8046a36029807200041a0076a200441086a41f000100f2102200041a00f6a200041c8076a290300370300200041a80f6a200041d0076a290300370300200041b00f6a200041d8076a290300370300200041900f6a200441206a290000370300200041880f6a200441186a290000370300200041800f6a200441106a2900003703002000200041c0076a2903003703980f200020042900083703f80e200041d00f6a200041f8076a290300370300200041c80f6a200041f0076a290300370300200041c00f6a200041e8076a2903003703002000200041e0076a2903003703b80f027f024020004180086a290300222020004188086a290300222184500440410f21050c010b200041f0096a2201200210270240024020002d00f0090440200041b20b6a200041f3096a2d00003a0000200020002f00f1093b01b00b200041f4096a280000210241082105200041f8096a290000211c200041800a6a350000211d200041e8046a2203200041840a6a412d100f1a200041c30b6a2003412d100f1a200041bf0b6a201d3e00002000201c3700b70b200020023600b30b200110472001200041d00b6a1049450d01410121070c030b4200211c411121050c010b104b211c200041f0096a2201200041f80e6a104c02400240024020002802f0092205412346044020002802f40921022001200041980f6a10a501024020002903f009500440200041d80f6a4100413410111a0c010b200041d80f6a200041f8096a4138100f1a0b200041f0096a22012002200041980f6a2205104f200041e8046a200141c000100f1a200041b40a6a290200211d20002802b00a21072001200041b80f6a220610a50120002903f009500d01200041800a6a350200211e20002903f8092122200041e4066a200041840a6a412c100f1a2000201e3e02e006200020223703d8062001200610a60120002802f009418080808078460d0220002802f809210420002802f4092103200041c0046a20051051200020002903c0043702980d200041b8046a20061051200020002903b8043702b80d200220044f0d3f2003200241c8006c6a220129030050044020014201370300200141086a410041c00010111a0b200020203703b80e200020213703c00e2000200141086a3602dc0d2000200041e8046a220a3602d80d2000200041d8066a22083602fc0d2000200041d80f6a220b3602f80d2000200041b80d6a36029c0e2000200041980d6a3602980e20004280808080103702f409200041053b01f0092000200041b80e6a3602fc09200041d80e6a220d2002200041d80d6a4102200041f80d6a4102200041980e6a4102200041f0096a2206201c10a7010240024020002802d80e22054123460440200041e40e6a280200210c200041e00e6a2802002101200041b0046a200041b80f6a22091051200620032004200820002802b00420002802b40410a80120002802f00922054123470d012000201d3702dc0e200020073602d80e2006200a41c000100f1a200d20022006200041980f6a220210a90120092003200410aa01200920081098012002200b109801200c0e024242020b20003502e40e221d42388620002802dc0e2207ad20003502e00e4220868442088884211c201d420888211f0c070b200041fc096a350200221e42388620002902f409221d42088884211c201e420888211f201da721070c060b20012903102123200141186a2903002122200141386a290300211d200141306a290300211e200141286a290300211c200141086a290300211f2001290320212420012903002126200041f0096a2202200041b80f6a10990120002802f00922054123470d0302402024202684201c201f8484500d0041b00110652201201f37030820012026370300200141003a001020012024370358200141013a0031200141e0006a201c37030020014189016a41013a0000200141e8006a41003a0000200120002903980f3700322001413a6a200041a00f6a290300370000200141c2006a200041a80f6a290300370000200141ca006a200041b00f6a2903003700002001418a016a20002903b80f37000020014192016a200041c00f6a2903003700002001419a016a200041c80f6a290300370000200141a2016a200041d00f6a29030037000020004190056a200041c80b6a29010037030020004188056a200041c00b6a29010037030020004180056a200041b80b6a290100370300200020002901b00b3703f804200041d8066a200041e8046a4130100f1a200041a80a6a4200370300200041b00a6a4200370300200041b80a6a4100360200200041880a6a200041f0066a290300370300200041900a6a200041f8066a290300370300200041980a6a20004180076a290300370300200041a00a6a420037030020004282808080b0cfbfef3f3703f809200020013602f409200041023602f009200020002903e8063703800a200041d80f6a200210ab0120002802d80f22054108460d00200041e40f6a350200221e42388620002902dc0f221d42088884211c201e420888211f201da721070c060b2022423886202342088884211c2022420888211f2022422088a721042023a72107200041900a6a22011047200041d80a6a22052021370300200041880a6a2202200041900f6a2203290300370300200041800a6a2206200041880f6a2208290300370300200041f8096a2209200041800f6a220a290300370300200041b80a6a220b200041a00f6a290300370300200041c00a6a220d200041a80f6a290300370300200041c80a6a220c200041b00f6a290300370300200020203703d00a200020002903f80e3703f009200020002903980f3703b00a200041f0096a220f107b200110472005202137030020022003290300370300200620082903003703002009200a290300370300200b200041c00f6a290300370300200d200041c80f6a290300370300200c200041d00f6a290300370300200020203703d00a200020002903f80e3703f009200020002903b80f3703b00a200f107220002903d804200041e0046a29030010830141000c060b20002802f4092207ad20002902f809221d42208684420888201d4218864280808080808080807f8384211c201d422888211f0c040b4200211c41002107411621050c030b4200211c411621050c010b200041fc096a350200221e42388620002902f409221d42088884211c201e420888211f201da721070b0b41010b21010c3e0b200041a0046a210323004190036b22012400200141086a200441086a220241c000100f1a200141f0006a200141306a290200370300200141f8006a200141386a29020037030020014180016a200141406b290200370300200141e0006a200241186a290000370300200141d8006a200241106a290000370300200141d0006a200241086a2900003703002001200129022837036820012002290000370348104b211c200141c0026a2202200141c8006a104c0240024020012802c0024123470d0020014188016a220520012802c4022206104d200141c0016a22072006104e20022006200141e8006a2206104f20014180026a2208200241c000100f1a20072005201c105041ff01714103470d002001200610512002200820012903c001200141c8016a29030020012903d001200141d8016a290300200141e8016a20012802002001280204105220012d00c002450d010b000b200129039002211c200320014198026a2903003703082003201c37030020014190036a240020002903a004200041a8046a290300107c000b20004190046a2103230041a0016b22012400200141106a200441086a220241086a290000370200200141186a200241106a290000370200200141206a200241186a2900003702002001200041d8046a36020420012002290000370208104b211c200141e0006a2202200141086a104c024020012802604123460440200141286a220620012802642205104d20022005104e20022006201c105041ff01714103460d010b000b2001290338211c2003200141406b2903003703082003201c370300200141a0016a240020002903900420004198046a290300107c000b2000200041d8046a36029807200041a0076a200441086a41f000100f2102200041a00f6a200041c8076a290300370300200041a80f6a200041d0076a290300370300200041b00f6a200041d8076a290300370300200041900f6a200441206a290000370300200041880f6a200441186a290000370300200041800f6a200441106a2900003703002000200041c0076a2903003703980f200020042900083703f80e200041d00f6a200041f8076a290300370300200041c80f6a200041f0076a290300370300200041c00f6a200041e8076a2903003703002000200041e0076a2903003703b80f027f0240024020004180086a290300221c20004188086a290300221f84500440410f21050c010b200041f0096a220120021027024020002d00f0090440200041b20b6a200041f3096a2d00003a0000200020002f00f1093b01b00b200041f4096a280000210241082105200041f8096a290000211d200041800a6a350000211e200041e8046a2203200041840a6a412d100f1a200041c30b6a2003412d100f1a200041bf0b6a201e3e00002000201d3700b70b200020023600b30b200110472001200041b00b6a1049450d01410121070c020b4200211c411121054200211f0c010b104b211d200041f0096a2201200041f80e6a104c0240027e20002802f0092205412346044020002802f40921022001200041980f6a220310a50102400240024020002903f009500d0020002802f809210620002902fc09211e200041e40f6a200041840a6a412c100f1a2000201e3702dc0f200020063602d80f2001200310a60120002802f009418080808078460d0020002902f409211e200041d8066a200041b80f6a22061055200120022006104f200041e8046a200141c000100f1a200041b40a6a290200212020002802b00a210420004188046a2003105120002000290388043702980d20004180046a2006105120002000290380043702b80d2002201e422088a722074f0d3e201ea72203200241c8006c6a220129030050450d01411921050c020b4200211c4119210542000c030b2000201c3703b80e2000201f3703c00e2000200141086a3602d80d2000200041e8046a3602dc0d2000200041d8066a3602fc0d2000200041d80f6a22063602f80d2000200041b80d6a36029c0e2000200041980d6a3602980e20004280808080103702f409200041043b01f0092000200041b80e6a3602fc09200041d80e6a2002200041d80d6a4102200041f80d6a4102200041980e6a4102200041f0096a2208201d10a70120002802d80e22054123460440200041f0036a42014200200241ff00711013200041e40e6a2802002109200041e00e6a28020021010240200041f00f6a290300200041f8036a2903008320002903e80f20002903f003834201858450450d00200041e8036a200041980f6a1051200820032007200620002802e80320002802ec0310a80120002802f00922054123460d0020002902f809211c20002802f40921070c020b200020203702dc0e200020043602d80e200041f0096a2206200041e8046a41c000100f1a200041d80e6a20022006200041b80f6a220210a901200041980f6a22062003200710aa012006200041d80f6a1098012002200041d8066a10980120090e023d3d040b20002902e00e211c20002802dc0e21070b201c428080808070830c010b20002802f409210720002902f809221c428080808070830b221d4218864280808080808080807f832007ad201c4220868442088884211c201d422888211f0c010b2001290204212020012802002107200141386a2903002121200141306a2903002122200141286a290300211d200141186a29030021232001290320211e20012903102124200128020c2104200041f0096a200041980f6a10990120002802f00922054123470440200041fc096a350200221e42388620002902f409221d42088884211c201e420888211f201da721070c010b2022202484202120238484500d0141b00110652201202337030820012024370300200141003a001020012022370358200141013a0031200141e0006a202137030020014189016a41013a0000200141e8006a41003a0000200120002903980f3700322001413a6a200041a00f6a290300370000200141c2006a200041a80f6a290300370000200141ca006a200041b00f6a2903003700002001418a016a20002903b80f37000020014192016a200041c00f6a2903003700002001419a016a200041c80f6a290300370000200141a2016a200041d00f6a29030037000020004190056a200041e80b6a29010037030020004188056a200041e00b6a29010037030020004180056a200041d80b6a290100370300200020002901d00b3703f804200041d8066a200041e8046a4130100f1a200041a00a6a4200370300200041a80a6a4200370300200041b00a6a4200370300200041b80a6a4100360200200041880a6a200041f0066a290300370300200041900a6a200041f8066a290300370300200041980a6a20004180076a29030037030020004282808080b0cfbfef3f3703f809200020013602f409200041023602f009200020002903e8063703800a200041d80f6a200041f0096a10ab0120002802d80f22054108460d01200041e40f6a350200221e42388620002902dc0f221d42088884211c201e420888211f201da721070b41010c010b200041900a6a22011047200041d80a6a2205201f370300200041880a6a2202200041900f6a2203290300370300200041800a6a2206200041880f6a2208290300370300200041f8096a2209200041800f6a220a290300370300200041b80a6a220b200041c00f6a290300370300200041c00a6a220d200041c80f6a290300370300200041c80a6a220c200041d00f6a2903003703002000201c3703d00a200020002903f80e3703f009200020002903b80f3703b00a200041f0096a220f1071200110472005201f37030020022003290300370300200620082903003703002009200a290300370300200b200041a00f6a290300370300200d200041a80f6a290300370300200c200041b00f6a2903003703002000201c3703d00a200020002903f80e3703f009200020002903980f3703b00a200f107920002903d804200041e0046a2903001083012020422088221f4238862007ad20204220868442088884211c201f420888211f41000b21010c3b0b200041d8036a210323004190036b22012400200141086a200441086a220241c000100f1a200141f0006a200141306a290200370300200141f8006a200141386a29020037030020014180016a200141406b290200370300200141e0006a200241186a290000370300200141d8006a200241106a290000370300200141d0006a200241086a2900003703002001200129022837036820012002290000370348104b211c200141c0026a2202200141c8006a104c0240024020012802c0024123470d0020014188016a220520012802c4022206104d200141c0016a22072006104e20022006200141e8006a2206104f20014180026a2208200241c000100f1a20072005201c105041ff01714103470d002001200610512002200820012903c001200141c8016a29030020012903d001200141d8016a290300200141e8016a20012802002001280204105220012d00c002450d010b000b200129038002211c200320014188026a2903003703082003201c37030020014190036a240020002903d803200041e0036a290300107c000b200041c8036a2103230041a0016b22012400200141106a200441086a220241086a290000370200200141186a200241106a290000370200200141206a200241186a2900003702002001200041d8046a36020420012002290000370208104b211c200141e0006a2202200141086a104c024020012802604123460440200141286a220620012802642205104d20022005104e20022006201c105041ff01714103460d010b000b2001290328211c2003200141306a2903003703082003201c370300200141a0016a240020002903c803200041d0036a290300107c000b200041b0036a2102230041d0006b220124002001413c6a200441086a220341186a290000370200200141346a200341106a2900003702002001412c6a200341086a290000370200200141f4860436022020012003290000370224200142808001370248200141888a0436024441a79eb8e601200141c4006a2206101c200141246a200610250240024020012802482207200128024c2203490d00200128024421052001200720036b220736024420052003200320056a2205200610002103200720012802442206492003410f4f720d00027e200341e889046a2d0000220341034604404210211c42000c010b20034110470d012001200636024820012005360244200141086a200141c4006a101d2001290308a70d01200141186a290300211f2001290310211c42010b211d2002201c3703082002201d370300200241106a201f370300200141d0006a24000c010b000b20002903b00320002903b803200041c0036a290300107f000b20004198076a220641017221022004290308211c200441106a290300211d230041206b22012400200142808001370204200141888a04360200201c201d2001105e024002402001280204220720012802082203490d00200128020021052001200720036b220736020020052003200320056a2203200110002105200720012802002208492005410f4f720d002002027f200541e889046a2d00002205410347044020054110472008412047720d02200141086a200341096a290000370300200141106a200341116a290000370300200141176a200341186a290000370000200120032900013703004101210420032d00000c010b4100210441100b3a0001200220043a0000200220012903003700022002410a6a200141086a290300370000200241126a200141106a290300370000200241196a200141176a290000370000200141206a24000c010b000b200041003a009807230041106b22012400200141808001360208200141888a04360204024020062d0000044041888a044181023b0100410221040c010b41888a0441003a00002001410136020c200641016a200141046a108b01200128020c220441818001490d00000b0c410b200041a0076a200441086a4130100f21012000200041d8046a36029807200041c0076a290300211c200041c8076a2802002102200041a8036a20011024027f20002802a803450440200041113602f00941010c010b200041f0096a201c20002802ac03200210ac0120002802f0094123470b2106230041106b22012400200141808001360208200141888a043602040240200041f0096a22022802002203412447044041888a0441003a00000240200341234604402001410236020c41898a0441003a00002002280204200141046a101c0c010b41898a0441013a00002001410236020c2002200141046a10360b200128020c220441818001490d01000b41888a044181023b0100410221040b0c410b20004198076a210523004180016b220124002001200041d8046a3602082001410c6a200441086a4128100f2106200141306a28020021022001412c6a28020021032001410036023c2001428080808080013702342001200610240240024020012802004101460440200220034b22060440200128020421002002200320061b21094100210241082104034020012000360278200141c086043602742001200336027c200141d8006a200141f4006a105d20012903584202510d03200141d0006a220a200141e8006a290300370300200141c8006a220b200141e0006a2903003703002001200129035837034020012802342002460440200141346a2107230041206b220624000240200241016a220204404104200728020022084101742204200220022004491b2202200241044d1b220241186c2104200241d6aad52a49410374210d02402008450440200641003602180c010b200641083602182006200841186c36021c200620072802043602140b200641086a200d2004200641146a10662006280208450d01200628020c1a0b000b200628020c21082007200236020020072008360204200641206a240020012802382104200128023c21020b2004200241186c6a22062001290340370300200641106a200a290300370300200641086a200b2903003703002001200241016a220236023c2009200341016a2203470d000b0b20052001290234370200200541086a2001413c6a2802003602000c020b200541003602082005428080808080013702000c010b000b20014180016a2400230041106b22022400200241808001360208200241888a04360204024020052802004180808080784704402002410136020c41888a0441003a000020052802042101200241046a200528020822031019024020030440200341186c2106034002402001290300500440200228020c220320022802084f0d04200228020420036a41003a00002002200341016a36020c0c010b200228020c220320022802084f0d03200228020420036a41013a00002002200341016a36020c200141086a290300200141106a290300200241046a1091010b200141186a2101200641186b22060d000b0b200228020c220641818001490d020b000b41888a044181023b0100410221060b41002006108601000b200041a0036a2106230041406a22022400200241206a200441086a220341086a290000370200200241286a200341106a290000370200200241306a200341186a2900003702002002200041d8046a220136021420022003290000370218200241086a200241186a102402400240024020022802084101470440410021040c010b200241386a200228020c105f200228023822044102460d01200228023c21010b2006200136020420062004360200200241406b24000c010b000b200020002903a00337029807230041106b22012400200141808001360208200141888a04360204024041898a04027f20004198076a22022802002203410247044041888a0441003a000041002003450d011a41898a0441013a00002001410236020c200241046a200141046a108201200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c3e0b20004198076a2102200428020821032004410c6a290200211c230041206b2201240002402003418080808078460440200141046a1059200141106a2001280208200128020c105a0c010b200141106a201ca7201c422088a7105a0b02402001280210412346044020022001290214370200200241086a2001411c6a280200360200200141206a24000c010b000b230041106b22012400200141808001360208200141888a043602040240200228020041808080807846044041888a044181023b0100410221040c010b2001410136020c41888a0441003a000020022802042002280208200141046a1061200128020c220441818001490d00000b0c3d0b20004188036a210223004190016b22012400200141186a200441086a220341086a290000370200200141206a200341106a290000370200200141286a200341186a2900003702002001200041d8046a36020c20012003290000370210200141cc006a200141106a220310542001280254210620012802502105200141d8006a2207200310552001200310512001280204210320012802002108200141306a22041056024020012802304123460440200420052006200720082003200141386a2802002001413c6a280200105720012d003022034102470d010b000b200141406b290300211c20022001290338370308200220034100473a0000200241106a201c37030020014190016a240020002d0088032101200029039003211c20004198036a290300211d230041106b22042400200441888a0436020441888a0441003a000020044280808180103702082001200441046a22011034201c201d2001101f0c3b0b20042802082102230041106b22012400200141046a200210582001280204418180808078460440000b20004198076a22022001290204370200200241086a2001410c6a280200360200200141106a2400230041106b22012400200141808001360208200141888a04360204024041898a04027f2002280200220341818080807847044041888a0441003a000041002003418080808078460d011a41898a0441013a00002001410236020c20022802042002280208200141046a108901200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c3b0b200041a0076a2102230041f0006b22012400200141206a200441086a220341186a290000370200200141186a200341106a290000370200200141106a200341086a290000370200200141d486043602042001200329000037020820014280800137022c200141888a0436022841bee593817e200141286a2203101c200141086a20031025024002400240200128022c220720012802302206490d00200128022821052001200720066b220736022820052006200520066a2205200310002106200720012802282208492006410f4f720d00200641e889046a2d000022064103460d0120064110470d002001200836026c200120053602682003200141e8006a1053200129032850450d0020012d00302103200241016a200141316a4137100f1a200220033a00000c020b000b20024100413410111a0b200141f0006a24002000410036029807230041106b22012400200141808001360208200141888a04360204024020004198076a2202280200044041888a044181023b0100410221040c010b2001410136020c41888a0441003a0000200241086a200141046a108a01200128020c220441818001490d00000b0c3a0b200041a0076a210223004180036b220124002001200041d8046a360214200141186a200441086a41c000100f2103200141f0006a200141d0006a290200370300200141e8006a200141c8006a290200370300200141e0006a200141406b2902003703002001200141386a290200370358200141086a200310240240024002402001280208450440200242808090bbbad6adf00d370330200242808090bbbad6adf00d37032020024200370300200241386a4200370300200241286a4200370300200241186a4200370300200241106a4200370300200241086a42003703000c010b200141b8016a2203200128020c2206200141d8006a2207104f200141f8006a2205200341c000100f1a20032006102020012d00e9014102460d0120014188026a220820034138100f1a20032006102220012903b801500d01200141c0026a2206200141c0016a41c000100f1a200120071051200128020421072001280200210420062008104b105041ff01714103470d012003200520012903c002200141c8026a29030020012903d002200141d8026a290300200141e8026a20042007105220012d00b8010d012002200541c000100f1a0b20014180036a24000c010b000b0c300b200041a0076a2102230041c0016b220124002001200041d8046a36020c200141106a200441086a41c000100f2103200141e8006a200141c8006a290200370300200141e0006a200141406b290200370300200141d8006a200141386a2902003703002001200141306a29020037035020012003102402402001280200450440200242808090bbbad6adf00d370330200242808090bbbad6adf00d37032020024200370300200241386a4200370300200241286a4200370300200241186a4200370300200241106a4200370300200241086a42003703000c010b200141f0006a22032001280204200141d0006a104f2002200341c000100f1a0b200141c0016a24000c2f0b230041c0016b22012400200141206a200441086a220241086a290000370200200141286a200241106a290000370200200141306a200241186a2900003702002001200041d8046a36021420012002290000370218200141086a200141186a10240240024020004198076a22022001280208047e200141f8006a200128020c10222001290378500d01200141386a20014180016a41c000100f1a200241186a200141f0006a290300370300200241106a200141e8006a2903003703002002200129036037030842010542000b370300200141c0016a24000c010b000b230041106b22012400200141808001360208200141888a04360204024041898a04027f2002290300221c420252044041888a0441003a00004100201c500d011a41898a0441013a00002001410236020c200241086a200141046a108e01200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c370b20004198076a2102230041f0016b22012400200141186a200441086a220341086a290000370200200141206a200341106a290000370200200141286a200341186a2900003702002001200041d8046a36020c200120032900003702102001200141106a10240240024002402001280200450440200242003703000c010b200141a8016a220320012802042206102020012d00d9014102460d01200141306a220520034138100f1a20032006102220012903a801500d01200141e8006a2203200141b0016a41c000100f1a20032005104b105041ff01714103470d01200241086a20034128100f1a200242013703000b200141f0016a24000c010b000b2002107d000b200041f0026a2102230041d0006b22012400200141206a200441086a220341086a290000370200200141286a200341106a290000370200200141306a200341186a2900003702002001200041d8046a36021420012003290000370218200141086a200141186a1024024002402001280208450d00200141386a200128020c105b2001290338221c4202510d00200141c8006a290300211d200220012903403703082002201c370300200241106a201d370300200141d0006a24000c010b000b20002903f00220002903f80220004180036a290300107f000b230041306b22012400200141186a200441086a220241086a290000370200200141206a200241106a290000370200200141286a200241186a2900003702002001200041d8046a36020c2001200229000037021020004198076a2202410172200141106a1027200141306a2400200041003a009807230041106b22012400200141808001360208200141888a04360204024041898a04027f20022d000045044041888a0441003a0000410020022d0001450d011a41898a0441013a00002001410236020c200241026a200141046a108f01200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c340b20004198076a210223004180016b22012400200141186a200441086a220341086a290000370200200141206a200341106a290000370200200141286a200341186a2900003702002001200041d8046a36020c200120032900003702102001200141106a10240240024002402001280200450440200242023703000c010b200141306a22032001280204105c20012903304203510d012002200341d000100f1a0b20014180016a24000c010b000b230041106b22012400200141808001360208200141888a04360204024041898a04027f2002290300221c420352044041888a0441003a00004100201c4202510d011a41898a0441013a00002001410236020c2002200141046a1070200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c330b20004198076a2102230041306b22012400200141186a200441086a220341086a290000370200200141206a200341106a290000370200200141286a200341186a2900003702002001200041d8046a36020c200120032900003702102001200141106a102402402001280200450440200242003703000c010b2002200128020410600b200141306a2400230041106b22012400200141808001360208200141888a04360204024041898a04027f2002290300221c420252044041888a0441003a00004100201c500d011a41898a0441013a00002001410236020c200241086a200141046a108d01200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c320b230041c0016b22012400200141206a200441086a220241086a290000370200200141286a200241106a290000370200200141306a200241186a2900003702002001200041d8046a36021420012002290000370218200141086a200141186a10240240024020004198076a22022001280208047e200141f8006a200128020c10222001290378500d01200141386a220320014180016a41c000100f1a200241086a20034128100f1a42010542000b370300200141c0016a24000c010b000b2002107d000b20004198076a2102230041306b22012400200141186a200441086a220341086a290000370200200141206a200341106a290000370200200141286a200341186a2900003702002001200041d8046a36020c200120032900003702102001200141106a102402402001280200450440200241023a00310c010b2002200128020410200b200141306a2400230041106b22012400200141808001360208200141888a04360204024041898a04027f20022d00312203410347044041888a0441003a0000410020034102460d011a41898a0441013a00002001410236020c2002200141046a109001200128020c220441818001490d02000b41888a0441013a000041010b3a0000410221040b0c300b230041306b22012400200141186a200441086a220241086a290000370200200141206a200241106a290000370200200141286a200241186a2900003702002001200041d8046a36020c200120022900003702102001200141106a102420012802042102200041e8026a2203200128020036020020032002360204200141306a240020002802e802210220002802ec022103230041106b22012400200141808001360208200141888a0436020441888a0441003a00000240200245044041898a0441003a0000410221040c010b41898a0441013a00002001410236020c2003200141046a101c200128020c220441818001490d00000b0c2f0b200041880a6a200441206a290300370300200041800a6a200441186a29030037030041082105200041f8096a200441106a290300370300200020042903083703f009200441286a290300211c4101210420004199076a1047200041013a00980741e8a6e49b7a20004198076a2202103b220741ff01714103470d262002200041f0096a104c0240027f024020002802980722054123460440200028029c0722011029450d0141130c020b200028029c072207410876210120002902a007211c0c290b20004198076a22022001104d2000201c3703c0072001200210ad01200041b0076a200041880a6a290300370300200041a8076a200041800a6a290300370300200041a0076a200041f8096a290300370300200020002903f009370398072000201c3703b8072000428080013702dc06200041888a043602d806200041d8066a4102106f200041f0046a2201200041e0066a280200360200200020002902d8063703e804200041e8046a220341d28304102c200041b80b6a22062001280200360200200020002903e8043703b00b200041b00b6a2002102c20002802b40b220520062802002201490d0120002802b00b210641002104200041003602f0042000200520016b3602ec042000200120066a3602e80420022003102520002903b8072003107820002802f004220720002802ec044b0d012006200120002802e8042007100420002903d804200041e0046a29030010830141230b21050c270b000b410821052000200041d8046a360298072000419c076a200441086a412c100f1a2004410c6a290200211c2004280208210141012106200041f1096a1047200041013a00f009024041e9a5de8879200041f0096a2203103b220b41ff01714103470d000240027f02402001418080808078460440200041e8046a1059200320002802ec0420002802f0041095010c010b200041f0096a201ca7201c422088a71095010b20002f00f509200041f7096a2d000041107472210a20002802fc09210820002802f809220220002802f00922054123470d001a20002d00f409210b2008450d01200041a8076a2109200841306c2104200221010340200141206a290300221c200141286a290300221d84500d02200041f0096a220720012009201c201d10940120002802f0092205412346044020004180056a200141186a290000221c370300200041f8046a200141106a290000221d370300200041f0046a200141086a290000221e37030020002001290000221f3703e804200041880a6a201c370300200041800a6a201d370300200041f8096a201e3703002000201f3703f0092000428080013702dc0f200041888a043602d80f200041d80f6a4102106f200041b80b6a2203200041e00f6a280200360200200020002902d80f3703b00b200041b00b6a220d41a58004102c200041e0066a22052003280200360200200020002903b00b3703d806200041d8066a2007102c20002802dc06220c20052802002203490d2220002802d8062105200041003602b80b2000200c20036b3602b40b2000200320056a3602b00b2007200d102520002802b80b220720002802b40b4b0d22200141306a21012005200320002802b00b20071004200441306b22040d010c030b0b20002f00f509200041f7096a2d000041107472210a20002802fc09210820002802f8090b210220002d00f409210b0c010b20002903d804200041e0046a29030010830141002106412321050b2000200a3b009d072000419f076a200a4110763a0000200020083602a407200020023602a0072000200b3a009c072000200536029807230041106b22012400200141808001360208200141888a04360204024020004198076a22022802002203412447044041888a0441003a00000240200341234604402001410236020c41898a0441003a0000200241086a2802002002410c6a280200200141046a10610c010b41898a0441013a00002001410236020c2002200141046a10360b200128020c220441818001490d01000b41888a044181023b0100410221040b0c2e0b200041c80b6a200441206a290300370300200041c00b6a200441186a29030037030041082101200041b80b6a200441106a290300370300200020042903083703b00b200441286a2802002102200041f0096a2004412c6a41cc00100f1a200041e8046a2203200041f4096a41c800100f1a200020023602d80f4101210720004199076a1047200041013a009807024041d082bdaf0120004198076a2202103b220541ff01714103470d002002200041d80f6a200041b00b6a200310ae01200028029807220141234704402000200029009d073703d8062000200041a4076a2800003600df0620002d009c0721050c010b200041d8076a200041a8056a290300370300200041d0076a200041a0056a290300370300200041c0076a20004190056a290300370300200041b8076a20004188056a290300370300200041a8076a200041f8046a290300370300200041e8076a200041b80b6a290300370300200041f0076a200041c00b6a290300370300200041f8076a200041c80b6a290300370300200020002903f0043703a007200020002802d80f36028008200020002903b00b3703e00720002000290398053703c80720002000290380053703b007200020002903e8043703980720004198076a107420002903d804200041e0046a29030010830141002107412321010b200041a4076a20002800df06360000200020002903d80637009d070c250b200441106a28020021022004410c6a280200210320004199076a1047200041013a00980741082105027f410141d082bdaf0120004198076a103b220841ff01714103470d001a2003200241c8006c6a21064100210141012107200321050340024020074101710d0003402001450d012001290330211c41002101201c50450d000b410a210541010c020b20052006470440410021072005410020052903004202521b2101200541c8006a21050c010b0b109701210720004280800137029c07200041888a043602980741c48604200720004198076a2205102a200028029c07220420002802a0072201490d1c2000280298072106200041003602a0072000200420016b36029c072000200120066a3602980720032002200510890120002802a0072205200028029c074b0d1c20062001200028029807200510051a200741016a2201450d1c41cef7ecc901200110af01200041f0096a105920020440200041e0076a210620002802f409210120002802f80921044100210503402003290300221c4202520440200420054d0d1f200341386a290300211d200341286a290300211e200341206a290300211f200341106a2903002120200341086a2903002121200341306a2903002122200341186a2903002123200041d8076a200341406b290300370300200041c0076a201e370300200041a8076a202037030020062001290000370000200641186a200141186a290000370000200641106a200141106a290000370000200641086a200141086a2900003700002000201d3703d0072000201f3703b807200020213703a0072000200736028008200020223703c807200020233703b0072000201c3703980720004198076a10740b200141206a2101200341c8006a21032002200541016a2205470d000b0b20002903d804200041e0046a2903001083014123210541000b2101200020083a009c070c200b200041880a6a200441206a290200370300200041800a6a200441186a29020037030041082105200041f8096a200441106a290200370300200020042902083703f009200441286a28020021022004412c6a28020021014101210420004199076a1047200041013a009807024041d082bdaf0120004198076a103b220741ff01714103470d00200141c0843d4b0440412021050c010b20004198076a200041f0096a104c027f024020002802980722054123460440200028029c07220310290d0141120c020b200028029c072207410876210120002902a007211c0c020b20004198076a22062003104e200041c8076a4200370300200041d4076a2002360200200041d0076a2001360200200042003703c0072003200610b001200041b0076a200041880a6a290300370300200041a8076a200041800a6a290300370300200041a0076a200041f8096a290300370300200041bc076a2001360200200020002903f00937039807200020023602b8072006107a20002903d804200041e0046a2903001083014100210441230b21050b0c220b41082105200041f0096a200441086a41f000100f1a20004180056a200441206a290000370300200041f8046a200441186a290000370300200041f0046a200441106a290000370300200020042900083703e8044101210420004199076a1047200041013a009807024041d082bdaf0120004198076a2202103b220741ff01714103470d002002200041e8046a104c20002802980722054123470440200028029c072207410876210120002902a007211c0c010b200028029c07200041900a6a220110b10120004180086a20004180056a290300370300200041f8076a200041f8046a290300370300200041f0076a200041f0046a290300370300200020002903e8043703e80720004198076a2202200141d000100f1a2002106e20002903d804200041e0046a29030010830141002104412321050b0c210b200041c80b6a200441206a290300370300200041c00b6a200441186a29030037030041082105200041b80b6a200441106a290300370300200020042903083703b00b200441286a290300211c200441306a290300211d200441386a290300211e200441406b290300211f200441c8006a2802002101200441cc006a28020021064101210420004199076a1047200041013a009807024041d082bdaf0120004198076a2202103b220741ff01714103470d002000104b2220370390052000201f370388052000201e370380052000201c3703f8042000201d3703f0042000201c3703e80420002001360298052002200041b00b6a104c024020002802980722054123460440200028029c07220210290d01411221050c020b200028029c072207410876210120002902a007211c0c010b200041f0096a22032002104d20004198076a22052002104e02402005200320201050220741ff017141034604402003200041e8046a10b201220741ff01714103460d010b410921050c010b2002200041f0096a10ad012002200041e8046a10b301200220004198076a220210b001200041b0076a200041c80b6a290300370300200041a8076a200041c00b6a290300370300200041a0076a200041b80b6a290300370300200041dc076a2006360200200041d8076a2001360200200041d0076a201f370300200041c8076a201e370300200041c0076a201d370300200020002903b00b370398072000201c3703b8072002107720002903d804200041e0046a29030010830141002104412321050b0c200b200041880a6a200441206a290200370300200041800a6a200441186a29020037030041082105200041f8096a200441106a290200370300200020042902083703f009200441286a2d000021014101210420004199076a1047200041013a009807024041a7c5d58d0120004198076a2202103b220741ff01714103470d002002200041f0096a104c200028029807220541234604402002200028029c072202104d41002107200141ff0171410047220320002d00c90745730440410b21050c020b200020033a00c807200220004198076a220310ad01200041a1076a200041f8096a290300370000200041a9076a200041800a6a290300370000200041b1076a200041880a6a290300370000200020013a009807200020002903f009370099072000428080013702dc06200041888a043602d806200041d8066a4102106f200041f0046a2201200041e0066a280200360200200020002902d8063703e804200041e8046a220241888104102c200041b80b6a22062001280200360200200020002903e8043703b00b200041b00b6a20034101722205102c20002802b40b220720062802002201490d1920002802b00b210341002104200041003602f0042000200720016b3602ec042000200120036a3602e80420052002102520002d0098072002103420002802f004220720002802ec044b0d192003200120002802e8042007100420002903d804200041e0046a290300108301412321050c010b200028029c072207410876210120002902a007211c0b0c1f0b200041880a6a200441206a290200370300200041800a6a200441186a29020037030041082105200041f8096a200441106a290200370300200020042902083703f009200441286a2d000021014101210420004199076a1047200041013a009807024041a7c5d58d0120004198076a2202103b220741ff01714103470d002002200041f0096a104c200028029807220541234604402002200028029c072202104d41002107200141ff0171410047220320002d00c80745730440410b21050c020b200020033a00c807200220004198076a220310ad01200041a1076a200041f8096a290300370000200041a9076a200041800a6a290300370000200041b1076a200041880a6a290300370000200020013a009807200020002903f009370099072000428080013702dc06200041888a043602d806200041d8066a4102106f200041f0046a2201200041e0066a280200360200200020002902d8063703e804200041e8046a220241eb8104102c200041b80b6a22062001280200360200200020002903e8043703b00b200041b00b6a20034101722205102c20002802b40b220720062802002201490d1820002802b00b210341002104200041003602f0042000200720016b3602ec042000200120036a3602e80420052002102520002d0098072002103420002802f004220720002802ec044b0d182003200120002802e8042007100420002903d804200041e0046a290300108301412321050c010b200028029c072207410876210120002902a007211c0b0c1e0b2000200041d8046a3602980741082101200041a0076a200441d002100f1a200041a00f6a200041e0086a290300370300200041a80f6a200041e8086a290300370300200041b00f6a200041f0086a290300370300200041900f6a200041d0086a290300370300200041880f6a200041c8086a290300370300200041800f6a200041c0086a2903003703002000200041d8086a22122903003703980f2000200041b8086a2903003703f80e200041d00f6a20004190096a290300370300200041c80f6a20004188096a290300370300200041c00f6a20004180096a2903003703002000200041f8086a22112903003703b80f200041b8096a2d00002102200041b4096a2802002106200041b0096a280200210a200041ac096a2802002116200041a8096a2802002108200041a4096a280200210b200041a0096a2802002118200041e8046a200041e8076a221041d000100f1a200041e8096a280200210f200041e0096a2903002121200041d8096a2903002122200041d0096a2903002123200041c8096a2903002120200041c0096a290300211c2000419c096a280200210d20004198096a280200211420002802ec09211941012107200041f1096a1047200041013a00f009024041f7f0d88904200041f0096a103b220541ff01714103470d00104b21240240200d41c0843d4b0440412021010c010b4200211e4200211d2000201c50220e047e420005200041e80b6a200f360200200041e00b6a2024370300200041d80b6a2021370300200041d00b6a2022370300200041c80b6a2020370300200041c00b6a2023370300200020203703b80b42010b3703b00b200041013b018807200041d8066a4100413010111a4201211c02400240024020020e020201000b420a211c200221014201211e0340200041b8026a201c4201200141017122031b201d420020031b201e201f1014200041c8026a201c201d201c201d1014200141034b2103200041d0026a290300211d200041c0026a290300211f20002903c802211c20002903b802211e2001410176210120030d000b200041a8026a201c201d201e201f1014200041b0026a290300211e20002903a802211c0c010b420a211c0b4110210102400240200041f80e6a220910b4010d00200041f0096a220141ee85f6b70210b50120002802f409210320002802f00921132000428080013702f409200041888a043602f00941d0860420092001109b0120002802f409221520002802f8092205490d1920002802f009210c200041003602f8092000201520056b3602f40920002005200c6a3602f0092003410020134101461b22032001101c20002802f809221320002802f4094b0d19200c200520002802f009201310051a2000428080013702f409200041888a043602f00941bc860420032001102a20002802f409221320002802f8092205490d1920002802f009210c200041003602f8092000201320056b3602f40920002005200c6a3602f00920092001102520002802f809220920002802f4094b0d19200c200520002802f009200910051a2003200041d8066a10ad012003201010b1012000428080013702f409200041888a043602f00941e0860420032001102a20002802f409220c20002802f8092205490d1920002802f0092109200041003602f8092000200c20056b3602f4092000200520096a3602f009201c201e2001101f20002802f809220c20002802f4094b0d192009200520002802f009200c10051a200041a00a6a4200370300200041880a6a4200370300200041ac0a6a2014360200200041a80a6a200d360200200042003703980a200042808090bbbad6adf00d3703800a200042003703f809200042808090bbbad6adf00d3703f009200020243703900a2003200110b001200041003602f0092003200110b601200e4504402003200041b80b6a10b3010b41092101200341016a2203450d0041ee85f6b702200310af01200041a0026a2008410010a20120002802a402200b2008100f210520004198026a2006410010a201200028029c02200a2006100f2110200041f0096a2209104620004190026a410d410010a2012000280290022103200028029402220141848004290000370000200141056a418980042900003700002000410d3602e00e200020013602dc0e200020033602d80e200041d80e6a22032005200810b70120004188026a4101410010a2012000280288022101200028028c02220541e1003a0000200041013602e006200020053602dc06200020013602d806200041d8066a220c2010200610b701200041d80f6a20122009200041f80e6a22012003200c2002103120004180026a2008410010a201200028028402200b2008100f2110200041f8016a2006410010a20120002802fc01200a2006100f211320091046200041f0016a4113410010a20120002802f001211220002802f4012205419180042900003700002005410f6a41a08004280000360000200541086a41998004290000370000200041133602c00e200020053602bc0e200020123602b80e200041b80e6a22122010200810b701200041e8016a4101410010a20120002802e801211020002802ec01220541f6003a0000200041013602e00e200020053602dc0e200020103602d80e20032013200610b701200c2011200920012012200320021031200041880a6a220c200041f00f6a290000370300200041800a6a221a200041e80f6a290000370300200041f8096a221b200041e00f6a290000370300200041980a6a2211200041e0066a290000370300200041a00a6a2210200041e8066a290000370300200041a80a6a2213200041f0066a290000370300200020002900d80f3703f009200020002900d8063703900a200110b40104402000428080013702dc0e200041888a043602d80e41f0860420012003109b0120002802dc0e221720002802e00e2205490d1a20002802d80e2115200041003602e00e2000201720056b3602dc0e2000200520156a3602d80e20092003108f0120002802e00e221720002802dc0e4b0d1a2015200520002802d80e201710051a2009418080042001200410ae0120002802f00922014123470d02200041800b6a200041f00f6a290000370300200041f80a6a200041e80f6a290000370300200041f00a6a200041e00f6a290000370300200041900b6a200041e0066a290000370300200041980b6a200041e8066a290000370300200041a00b6a200041f0066a290000370300200020002900d80f3703e80a200020002900d8063703880b200041900a6a200041800f6a2903003703002011200041880f6a2903003703002010200041900f6a290300370300200020002903f80e3703880a200041c00a6a200041b00f6a290300370300200041b80a6a200041a80f6a290300370300200041b00a6a2205200041a00f6a290300370300200020002903980f3703a80a200041e00a6a200041d00f6a290300370300200041d80a6a200041c80f6a290300370300200041d00a6a200041c00f6a290300370300200020002903b80f3703c80a200020023a00a80b200020063602840a2000200a3602800a200020163602fc09200020083602f8092000200b3602f409200020183602f00920004280800137029c0e200041888a043602980e200041980e6a4102106f200041e00e6a2201200041a00e6a280200360200200020002902980e3703d80e200341a98104102c200041c00e6a22022001280200360200200020002903d80e3703b80e2012200c102c20002802bc0e220620022802002201490d1a20002802b80e2102200041003602e00e2000200620016b3602dc0e2000200120026a3602d80e200c2003102520002d00a80b2003103420002802f40920002802f8092003103320002802800a20002802840a20031033201320031025200041c80a6a20031025200041e80a6a20031025200041880b6a2003102520002802e00e220320002802dc0e4b0d1a2002200120002802d80e20031004200e450440200041b40a6a20193602002005200f360200201320213703002010202237030020112023370300201b200041800f6a290300370300201a200041880f6a290300370300200c200041900f6a290300370300200020203703900a200020002903f80e3703f009200910770b200041d80a6a200041900f6a2202290300370300200041d00a6a2206200041880f6a2205290300370300200041c80a6a2207200041800f6a2203290300370300200020002903f80e3703c00a200041f0096a2201200041e8046a41d000100f1a2001106e200041c00a6a20032903003703002007200529030037030020062002290300370300200041b00a6a200441406b290300370300200041a80a6a200441386a290300370300200041980a6a200441286a290300370300200041900a6a200441206a290300370300200041800a6a2206200441106a29030037030041002107200041003602d80a200020002903f80e3703b80a200020263703f009200020042903083703f809200020042903303703a00a200020042903183703880a20011074200041880a6a200229030037030020062005290300370300200041f8096a2003290300370300200041940a6a200d360200200020002903f80e3703f009200020143602900a2001107a20002903d804200041e0046a290300108301412321010c030b411121010c020b200020002900d80f3703d80e2000200041df0f6a2800003600df0e410121050c020b200020002900f5093703d80e2000200041fc096a2800003600df0e20002d00f40921050b0b200041a4076a20002800df0e360000200020002903d80e37009d070c1e0b20004180056a200441206a290200370300200041f8046a200441186a290200370300200041f0046a200441106a290200370300200020042902083703e804200441286a2802002102104b211c20004198076a2203200041e8046a104c027f02400240200028029807220141234604402003200028029c07220410602000290398074200520d014111210141010c030b200028029c07220441807e71210520002902a007211c0c010b200041f0096a200041a0076a22034138100f1a4109210120002903980a221d20002903900a221e7c221f201d54047f410105201c201f540440412221010c020b200041b00b6a2206201e2004200210ac01024020002802b00b22024123460440200620002802b40b200310b80120002d00b00b0d012000201c3703980a200020002903f009221d20002903b80b221c20002903f809221e201c201e541b201c201d541b221c3703800a2004200041f0096a10b90120002903d804200041e0046a2903001083014123210141000c040b20002802b40b220441807e71210520002902b80b211c200221010c020b20002d00b10b0b21040b41010b21062000201c3703a00720002001360298072000200541807e71200441ff01717236029c07230041106b22012400200141808001360208200141888a04360204024020004198076a22022802002203412447044041888a0441003a00000240200341234604402001410236020c41898a0441003a00002002290308200141046a10780c010b41898a0441013a00002001410236020c2002200141046a10360b200128020c220441818001490d01000b41888a044181023b0100410221040b0c250b200041cc0b6a200441206a290200370200200041c40b6a200441186a290200370200200041bc0b6a200441106a290200370200200020042902083702b40b2000200041d8046a3602b00b104b211c20004198076a2206200041b40b6a2203104c0240024020002802980722014123460440200041e8046a2207200028029c072202104d200041f0096a22082002104e200620021060200041d8066a200220002903e804200041f0046a29030020002903f80420004180056a290300201c10ba01024020002802d80622014123460440410921014100210420082007201c1050220741ff01714103460d010c030b20002802dc06220741807e71210420002902e006211c0c020b20002903980750450440200041e8046a200041a0076a10b201220741ff01714103470d020b2002200041e8046a220110ad012002200041f0096a220210b001200041b0076a200341186a290000370300200041a8076a200341106a290000370300200041a0076a200341086a29000037030020002003290000370398072000428080013702dc06200041888a043602d806200041d8066a4102106f200041f8096a2203200041e0066a280200360200200020002902d8063703f009200241908304102c200041f0046a22062003280200360200200020002903f0093703e804200120004198076a2207102c20002802ec04220820062802002201490d1620002802e8042103200041003602f8092000200820016b3602f4092000200120036a3602f00920072002102520002802f809220720002802f4094b0d162003200120002802f0092007100420002903d804200041e0046a290300108301412321010c020b200028029c07220741807e71210420002902a007211c0b2004200741ff0171722107410121050b0c1d0b200441186a28020021022004411c6a2802002106200041f0066a200441386a290300370300200041e8066a200441306a290300370300200041e0066a200441286a2903003703002000200441206a2903003703d806027f0240200441106a2802002006470440411e21090c010b2004410c6a2802002108200441c4006a290200211d200441406b280200210c41002101200041003602c00f2000428080808080013702b80f200041d0016a101b20002802d001450d14200041e0016a290300211e20002903d801211f200041b00b6a10bb0120002d00b00b0440200041c0076a2203200041c90b6a290000370300200041b8076a200041c10b6a290000370300200041b0076a2205200041b90b6a290000370300200020002900b10b3703a807200041e8046a22071047200041f0096a220120004198076a22044130100f1a20004194f2c7eb7b36008805200041d4076a20074124100f2109200041a0076a200041880a6a290300370300200041a8076a200041900a6a2903003703002005200041980a6a29030037030020034200370300200041c8076a4200370300200041d0076a4100360200200020002903800a37039807200042003703b8072000428080013702f409200041888a043602f00920042001102520002802f409220720002802f8092203490d1520002802f0092105200041003602f8092000200720036b3602f4092000200320056a3602f009420042002001101f20002802f409220420002802f8092203490d1520002802f0092107200041003602f8092000200420036b3602f4092000200320076a3602f009200041f4076a2001103220092001102520002802f409220920002802f8092203490d1520002802f00921042000200920036b22093602f009410020054200200720042003200320046a2203200110032105200920002802f0092201492005410f4f720d15200145200541e889046a2d00002205411047200541024771720d152000200141016b3602f4092000200341016a22053602f0090240024020032d00000e020100170b200041f0096a1035450d1620002802f4091a0c160b20014105470d15200528000021010b02402006450d0041c0843d20016b22014100200141c0843d4d1b210f200041a8076a210d200621032002210120082107410021054108210b024003402001290300221c200141086a2214290300222084500440410f21090c040b20004198076a2204201c2020201f201e42c0843d4200410010bc0120002d0098070d01200420002903a007200d290300200fad420042c0843d4200410010bc0120002d0098070d01200d290300211c20002903a007212020002802b80f2005460440200041b80f6a2109230041206b220424000240200541016a2205044041042009280200220b410174220e20052005200e491b2205200541044d1b2205410474210e200541808080c0004941037421120240200b450440200441003602180c010b200441083602182004200b41047436021c200420092802043602140b200441086a2012200e200441146a10662004280208450d01200428020c1a0b000b200428020c210b200920053602002009200b360204200441206a240020002802bc0f210b20002802c00f21050b200b20054104746a2204201c370308200420203703002000200541016a22053602c00f20004198076a2007200041d8066a2001290300201429030010940120002802980722094123460440200141106a2101200741206a2107200341016b22030d010c030b0b200028029c07220141807e71210a20002902a007211c0c020b20002d0099072101410921090c010b200041c0076a220a4200370300200041c8076a4200370300200041b0076a200041f0066a290300370300200041a8076a200041e8066a290300370300200041a0076a200041e0066a290300370300200020002903d80637039807200042003703b807200041f0096a220120004198076a22034138100f1a200041c8016a2006106d20002802c801210920002802cc0120082006410574100f2104200041b00b6a200220061069200041e8046a20002802bc0f220520002802c00f22071069200041fc046a200041b80b6a280200360200200020002903b00b3702f404200041f0076a220b200041f8046a290200370300200041e8076a220d200041f0046a290200370300200041e0076a20002902e804370300200320014138100f1a20004184086a220f41f08fb7810636020020004180086a2006360200200041fc076a2004360200200041f8076a2009360200200041d8076a201d3703002000200c3602d407200041083602d00720002903c807211c2000428080013702f409200041888a043602f00920032001102520002802f409220c20002802f8092203490d1420002802f0092109200041003602f8092000200c20036b3602f4092000200320096a3602f00920002903b807200a2903002001101f20002802f409220c20002802f8092203490d1420002802f009210a200041003602f8092000200c20036b3602f40920002003200a6a3602f009200f20011032200420062001108801200b280200200041f4076a28020020011018200041e4076a280200200d28020020011018201da7201d422088a72001103320002802f409220b20002802f8092203490d1420002802f00921042000200b20036b220b3602f00941082009201c200a20042003200320046a2203200110032101200b20002802f0092209492001410f4f720d14200945200141e889046a2d00002201411047200141024771720d142000200941016b22013602ec042000200341016a3602e804024002400240024020032d00000e020001180b2001450d17200941026b21044181808080782101024020032d00010e020300180b2004450d172000200941036b22013602ec042000200341036a3602e8040240024020032d00020e020001190b2001450d182000200941046b3602ec042000200341046a3602e8042003310003221c4202560d1841808080807821010c020b200041f0096a200041e8046a10bd0120002802f0092201418080808078460d1720002902f409211c0c010b200041e8046a1035450d1641828080807821014201211c0b20002802ec0421040b20040d14410e210902400240200141ffffffff076a0e020016010b024020060440200041d8076a210b200041b8076a210d200041b00a6a2101200041900a6a211420004190086a210c20004180086a210f03402007450d182002290300221c20052903007c221e201c5422032003ad200241086a2203290300221c200541086a220a2903007c7c221d201c54201c201d511b4101460d1820004198076a22042008200041d8066a201e201d10930120002802980722094123470d0220141046200041f8096a200041e0066a290300370300200041800a6a200041e8066a290300370300200041880a6a200041f0066a29030037030020012008290000370000200141086a200841086a290000370000200141106a200841106a290000370000200141186a200841186a290000370000200020002903d8063703f0092003290300211c200a290300211d2002290300211e2005290300211f2004200041f0096a41e000100f1a200c201d370300200f201c3703002000201f370388082000201e3703f8072000428080013702dc0f200041888a043602d80f200041d80f6a4104106f200041f0046a2209200041e00f6a280200360200200020002902d80f3703e804200041e8046a220341b98504102c200041b80b6a220a2009280200360200200020002903e8043703b00b200041b00b6a220e2004102c2009200a280200360200200020002903b00b3703e8042003200d102c200a2009280200360200200020002903e8043703b00b200e200b102c20002802b40b220e200a2802002209490d1820002802b00b210a200041003602f0042000200e20096b3602ec0420002009200a6a3602e804200420031025200d20031025200b2003102520002903f807200f2903002003101f200029038808200c2903002003101f20002802f004220320002802ec044b0d18200a200920002802e80420031004200541106a2105200841206a2108200241106a2102200741016b2107200641016b22060d000b0b20002903d804200041e0046a290300108301412321094100210a41000c030b20002902a007211c200028029c0721010b200141807e71210a0b41010b21052000201c3702a00720002009360298072000200a41807e71200141ff01717236029c070c1d0b20044180016a2903002121200441f8006a2903002126200441e8006a290300211c200441f0006a290300211d200041e8046a200441086a41e000100f1a200041f0056a20004190056a290300370300200041f8056a20004198056a2903003703004118210520004180066a200041a0056a290300370300200041e0056a200441206a290000370300200041d8056a200441186a290000370300200041d0056a200441106a29000037030020002000290388053703e805200020042900083703c805200041a0066a200041c0056a29030037030020004198066a200041b8056a29030037030020004190066a200041b0056a290300370300200020002903a805370388062000201d3703b0062000201c3703a80620004198076a2203200041c8056a2206109901027f02402000280298074123460d00104b2122200041b8066a220910472003200041e8056a104c0240024002400240024002400240024002400240024020002802980722054123470d00200028029c072102200320004188066a104c20002802980722054123470d00200028029c072108200041f00b6a20061054200041fc0b6a20091054200041b00b6a220a20061055200041f0096a20091055200041c0016a20061051200020002903c0013702880c200041b8016a20091051200020002903b8013702900c200220002802f80b22144f0d1e411b210520002802f40b220e200241c8006c6a2209290300500d09200941186a290300200941206a29030084500d0a2000200941086a3602980f2000200a3602b80f2000200041880c6a3602d80f2000410036029c07200041033a0098072000200041a8066a3602a007200041d8066a2002200041980f6a4101200041b80f6a4101200041d80f6a41012003202210a70120002802d80622054123470d06200041e4066a280200450d1e200041e0066a280200210b2003105620002802980722054123470d01200041a4076a280200220120024d200120084d720d1e200041a0076a28020021012003200610a501024020002903980750450440200041a8016a200041b0076a290300200041b8076a290300200841ff007110154100210720002903a80142018350450d01411d21050c0a0b41002107411b21050c090b200041d0076a280200210320004198016a200210be01200041a0016a290300211c200029039801211e20004188016a200810be0120004190016a290300211f200029038801211d200041ac0c6a2003109d01200041f8006a20002802b00c220320002802b40c2206200210bf0120004180016a290300212020002903782123200041e8006a20032006200810bf01200041f0006a290300212420002903682125200041b00d6a4200370300200041900d6a4200370300200041f00c6a4200370300200041d00c6a4200370300200042003703a80d200042003703880d2000201f3703800d2000201d3703f80c200042003703e80c200042003703c80c2000200041b0066a2903003703c00c200020002903a8063703b80c2000200120024104746a220241086a2903003703e00c200020022903003703d80c200041d00d6a4200370300200041f00d6a4200370300200041900e6a4200370300200020203703a00d200020233703980d200042003703c80d200020253703b80d200020243703c00d200042003703e80d200042003703880e2000201c3703800e2000201e3703f80d2000200120084104746a22012903003703d80d2000200141086a2903003703e00d20004198076a2201200041b80c6a200041d80c6a10c001200029039807500d1e200041f0066a2205200041b8076a2202290300370300200041e8066a2209200041b0076a2203290300370300200041e0066a220a200041a8076a2206290300370300200020002903a0073703d8062001200041d8066a2204200041f80c6a10c001200029039807500d1e200041d00f6a2002290300370300200041c80f6a2003290300370300200041c00f6a2006290300370300200020002903a0073703b80f2001200041980d6a200041b80d6a10c101200029039807500d1e200041f00f6a220d2002290300370300200041e80f6a220c2003290300370300200041e00f6a220f2006290300370300200020002903a0073703d80f20054200370300200042003703e806200042003703e006200042c0843d3703d8062001200041d80f6a2212200410c101200029039807500d1e2005200229030037030020092003290300370300200a2006290300370300200020002903a0073703d8062001200041b80f6a200410c001200029039807500d1e200041d00e6a2002290300370300200041c80e6a2003290300370300200041c00e6a2006290300370300200020002903a0073703b80e2001200041d80d6a200041f80d6a10c001200029039807500d1e200d2002290300370300200c2003290300370300200f2006290300370300200020002903a0073703d80f20054200370300200042003703e806200042003703e006200042c0843d3703d80620012012200410c001200029039807500d1e200041f00e6a2002290300370300200041e80e6a2003290300370300200041e00e6a2006290300370300200020002903a0073703d80e417f2101200041d80e6a2105034020014103460d1f200141016a21012005290300211c200541086a2105201c500d000b200141034b0d1e200041b80e6a10c2012106200041d80e6a10c2012201450d1e200120064d0440200141c100490d03200041b00f6a200041f00e6a290300370300200041a80f6a200041e80e6a290300370300200041a00f6a200041e00e6a290300370300200020002903d80e3703980f200041980f6a2205200141016b410676220a4103746a220f290300211c200041b0076a22014200370300200041a8076a22024200370300200042003703a0072000201c79221d3703980720004198076a220d10c30121032001420037030020024200370300200041a0076a42003703002000420037039807200341067621022003413f712109200341ff014d04402009ad211c41042002200241044d1b20026b21042002410374200d6a2101034020012005290300201c86370300200541086a2105200141086a2101200441016b22040d000b0b200945200341bf014b72450440410020036b413f71ad211c41032002200241034d1b20026b2104200241037420006a41a0076a2101200041980f6a21050340200120012903002005290300201c887c370300200141086a2101200541086a2105200441016b22040d000b0b200041b00f6a200041b0076a2201290300370300200041a80f6a200041a8076a2202290300370300200041a00f6a200041a0076a220429030037030020002000290398073703980f20002903b80e211c2001420037030020024200370300200042003703a007200042c000201d7d3703980720004198076a220510c30121032001420037030020024200370300200442003703002000420037039807200341067621022003413f712109200341ff014d04402009ad211e41042002200241044d1b20026b2104200041b80e6a20024103746a2101034020052001290300201e88370300200541086a2105200141086a2101200441016b22040d000b0b200945200341bf014b72450440410020036b413f71ad211e41032002200241034d1b20026b2104200241037420006a41c00e6a210520004198076a21010340200120012903002005290300201e867c370300200541086a2105200141086a2101200441016b22040d000b0b200a41016a210d200641016b4106762203200a6b2102200041e0066a2201200029039807370300200141186a200041b0076a2211290300370300200141106a200041a8076a2210290300370300200141086a200041a0076a22132903003703002000201c201d423f832223863703d806200041d00f6a4200370300200041c80f6a4200370300200041c00f6a4200370300200042003703b80f200041d8066a2003410374200a41037422016b6a2106200a41026a210c200a20036b41056a2109200020016a41900f6a2903002124200f2903002120034020022203200d6a220141054f0d20427f211f0240200041d8066a220220014103746a2212290300221c20205a0d002003200a6a220541054f0d21200141026b220141044b0d21200141037420026a2101200041d8006a200541037420026a290300221e201c202042001017201e20202000290358221f7e7d211c0340200041c8006a201f42002024420010140240200041d0006a290300221e201c510440200129030020002903485a0d030c010b201c201e560d020b201f42017d211f201c201c20207c221c580d000b0b200341016b21022009200c2009200c491b4103742104200041f00f6a2205200041b00f6a290300370300200041e80f6a220f200041a80f6a290300370300200041e00f6a2215200041a00f6a290300370300200020002903980f3703d80f4200211c410021010340200041386a200041d80f6a20016a22162903004200201f4200101420162000290338221e201c7c221c370300200041406b290300201c201e54ad7c211c200141086a22014120470d000b201120052903003703002010200f29030037030020132015290300370300200020002903d80f370398072000201c3703b807200341064f0d202009200d2009200d491b41037421150240410520036b220f200c200c200f4b1b450d004200211c20004198076a210520062101034020012001290300221e201c200529030022257c221c7d370300201c202554201c201e56722216ad211c200141086a2101200541086a2105200441086b22040d000b2016450d000240200f200d200d200f4b1b450440410021050c010b41002101410021050340200120066a22042004290300221c200041980f6a20016a290300221e2005ad42ff01837c22257c2227370300201e202556201c2027567221052015200141086a2201470d000b0b201220122903002005ad7c370300201f42017d211f0b200341044f0d20200041b80f6a20034103746a201f370300200941016a2109200641086b210620030d000b20004198076a200041d8066a4128100f1a200041f00f6a4200370300200041e80f6a4200370300200041e00f6a4200370300200042003703d80f410021010340200041d80f6a20016a20004198076a20016a290300202388370300200141086a22014120470d000b0c040b200041b0076a4200370300200041a8076a4200370300200041a0076a420037030020004200370398070c050b200028029c07210120002902a007221c422088a72104201ca721070c090b20002802a407210420002802a0072107200028029c0721010c080b41182101200041b0076a200041d00e6a290300370300200041a8076a200041c80e6a290300370300200041a0076a200041c00e6a290300370300200020002903b80e3703980720002903d80e211c4200211e0340201c500d1c200041286a20004198076a20016a2202290300221f201e201c4200101720022000290328221d370300201f201c201d7e7d211e200141086b22014178470d000b200041900f6a200041b0076a290300370300200041880f6a200041a8076a290300370300200041800f6a200041a0076a29030037030020002000290398073703f80e0c010b0240201d500d004200201d7d423f83211c4101210103402000200141037422026a41d00f6a2203200329030020004198076a20026a290300201c8684370300200141044622020d014104200141016a20021b220141044d0d000b0b200041800f6a200041c00f6a290300370300200041880f6a200041c80f6a290300370300200041900f6a200041d00f6a290300370300200020002903b80f3703f80e0b200041b0076a200041900f6a290300370300200041a8076a200041880f6a290300370300200041a0076a200041800f6a290300370300200020002903f80e370398070b200041b00e6a200041b0076a29030037030041102101200041a80e6a200041a8076a290300370300200041a00e6a200041a0076a29030037030020002000290398073703980e02400340200141086a22024128460d01200041980e6a20016a2103200221012003290300500d000b4109210541012101410021040c050b200020002903a00e3703a00c200020002903980e3703980c200820144f0d18200e200841c8006c22016a2202290300500440411c21050c040b200820002802840c22034f0d18200120002802800c22066a220129030050044020014201370300200141086a410041c00010111a0b2000200141086a36029c0f2000200241086a3602980f2000200041f0096a22023602bc0f2000200041b00b6a22073602b80f2000200041900c6a3602dc0f2000200041880c6a3602d80f200042808080801037029c0720004184023b0198072000200041980c6a3602a407200041d8066a2008200041980f6a4102200041b80f6a4102200041d80f6a410220004198076a202210a70120002802d80622054123470d00200041e0066a2802002101200041e4066a2802002105200041c8056a220820071098012008200e201410aa01200041b8066a2207200210980120072006200310aa0120050e021818010b20002802e406210420002802e006210720002802dc0621010c030b200141386a2903002125200141306a2903002127200141286a2903002120200141086a2903002128200141186a2903002129200b41186a290300212a20012903202122200129030021232001290310212b200b2903102124200b350200212c200b35020c212d200b290204211c4200211d20004198076a20002903980c221e200041a00c6a290300221f42808090bbbad6adf00d420020002903a806200041b0066a290300410110bc0120002d0098070440200031009907211c410921050c040b20002903a007202654200041a8076a290300221d202154201d2021511b0440411a21050c040b20004198076a2203200041e8056a2201200041b8066a20002903a806200041b0066a290300109301027e02400240024002402000280298072205412346044020032001102720002d009807450d1c200041d8066a220120004199076a220241c000100f1a20032001200041c8056a2201201c422086202c84202d422086201c42208884109f0120002802980722054108470d012003200041f8066a2001202420002903a806221c7d202a200041b0066a2903007d201c202456ad7d109f0120002802980722054108470d02200320004188066a102720002d009807450d1c200041b00b6a2205200241c000100f1a41e00010652101201e20227c222120225422022002ad201f20207c7c221c202054201c2020511b0d0320012023201e7d370320200041b0076a220b200041d0066a22022900002220370300200041a8076a220d200041c8066a22062900002222370300200041a0076a220c200041c0066a2207290000222437030020002900b806211d200120002903c805370000200141086a200041d0056a2208290300370000200141106a200041d8056a2204290300370000200141186a200041e0056a2209290300370000200141286a2028201f7d201e202356ad7d3703002000201d37039807200141c8006a2020370300200141406b2022370300200141386a20243703002001201d370330200141d8006a201c370300200141d0006a2021370300200041f0096a220a2005200110c40120002802f00922054108470d0441e0001065220141286a20293703002001202b370320200b2002290000221d370300200d20062900002220370300200c2007290000222137030020002900b806211c200120002903c805370000200141086a2008290300370000200141106a2004290300370000200141186a20092903003700002001201c370330200141386a2021370300200141406b2020370300200141c8006a201d3703002000201c37039807200141d8006a2025370300200141d0006a2027370300200a200041d00b6a200110c40120002802f00922054108460440200041880a6a2002290000370300200041800a6a2006290000370300200041f8096a2007290000370300200041980a6a2008290300370300200041a00a6a2004290300370300200041a80a6a2009290300370300200020002900b8063703f009200020002903c8053703900a200041b0066a290300211c20002903a806211d200041b80a6a200041f0056a290300370300200041c00a6a200041f8056a290300370300200041c80a6a20004180066a290300370300200041d80a6a20004190066a290300370300200041e00a6a20004198066a290300370300200041e80a6a200041a0066a290300370300200020002903e8053703b00a20002000290388063703d00a2003200a418001100f1a200041b0086a2207201f370300200041a0086a2208201c3703002000201e3703a8082000201d3703980820004280800137029c0f200041888a043602980f200041980f6a4104106f200041e00f6a2201200041a00f6a280200360200200020002902980f3703d80f200041d80f6a220241c68004102c200041c00f6a22062001280200360200200020002903d80f3703b80f200041b80f6a2205200041b8076a2204102c20012006280200360200200020002903b80f3703d80f2002200041d8076a2209102c20062001280200360200200020002903d80f3703b80f2005200041f8076a220a102c20002802bc0f220b20062802002205490d1d20002802b80f210641002101200041003602e00f2000200b20056b3602dc0f2000200520066a3602d80f200320021025200420021025200920021025200a2002102520002903980820082903002002101f20002903a80820072903002002101f20002802e00f220220002802dc0f4b0d1d2006200520002802d80f20021004200041b0066a290300211d20002903a806211c20002903d804200041e0046a290300108301201d422088a70c0b0b200041fc096a3502000c050b200041a4076a350200211d200029029c07211c0c080b200041a4076a350200211d200029029c07211c0c070b200041a4076a350200211d200029029c07211c0c060b4200211d4201211c410921050c050b200041fc096a3502000b211d20002902f409211c0c030b410021040c010b41002101410021040b2001ad2007ad42208684211c2004ad211d0b4101210141000b2102200041b8076a201f370300200041a8076a201d42ffffffff0f832002ad422086843703002000201e3703b0072000201c3703a0072000200536029c0720002001360298070c1d0b20002f009d072000419f076a2d000041107472210120002802a407210420002802a007210720002d009c070b210341010b2105200020013b009d072000419f076a20014110763a0000200020043602a407200020073602a007200020033a009c0720002009360298070c190b200041a4076a350200211d200029029c070b211c201d42ffffffff0f83211d0b41010b21010c170b41010b2109200020013b009d072000419f076a20014110763a0000200020073602a407200020043602a007200020033a009c070c160b200041a4076a350200211d200029029c070b211c201d42ffffffff0f83211d0b41010b21010c110b20002f009d072000419f076a2d000041107472210120002802a407210420002802a007210320002d009c0721070b41010b2109200020013b009d072000419f076a20014110763a0000200020043602a407200020033602a007200020073a009c070c0f0b200041e8046a2201200041f0096a109801024020030d0020004198076a200110990120002802980722014123460d0020002902a007211c200028029c070c040b200041b1076a20004180056a290000370000200041a9076a200041f8046a290000370000200041a1076a200041f0046a290000370000200041c1076a200041b80b6a290300370000200041c9076a200041c00b6a290300370000200041d1076a200041c80b6a290300370000200020002900e80437009907200020033a009807200020002903b00b3700b9072000428080013702dc0f200041888a043602d80f200041d80f6a4103106f200041f8096a2202200041e00f6a280200360200200020002902d80f3703f009200041f0096a220141e78004102c200041e0066a22032002280200360200200020002903f0093703d806200041d8066a20004198076a4101722206102c20022003280200360200200020002903d8063703f0092001200041b9076a2207102c20002802f409220820022802002202490d0020002802f0092103200041003602f8092000200820026b3602f4092000200220036a3602f00920062001102520072001102520002d0098072001103420002802f809220720002802f4094b0d002003200220002802f0092007100420002903d804200041e0046a290300108301412321010c0a0b000b410021040b200441ff01712007720b2107410121050c060b200020063a009c070b2000200536029807200120004198076a108001000b200041b8076a201d370300200041a8076a201f420886201c4238888442ffffffff0f832004ad422086843703002000201e3703b0072000200536029c07200020013602980720002007ad42ff0183201c420886843703a0070c050b2000410036029807230041106b22012400200141808001360208200141888a04360204024020004198076a2202280200044041888a044181023b0100410221040c010b2001410136020c41888a0441003a0000200241086a200141046a108c01200128020c220441818001490d00000b0c080b200020013b009d072000419f076a20014110763a00002000201c3702a007200020073a009c072000200536029807200420004198076a108001000b200020053a009c072000200136029807200720004198076a108001000b2000201c3702a0072000200736029c0720002001360298070b200520004198076a108001000b230041106b22032400200341808001360208200341888a0436020441022102024020004198076a22062802002205410247044041888a0441003a0000024020054504402003410236020c41898a0441003a00002006290308200641106a290300200341046a2202101f200641186a290300200641206a2903002002101f0c010b41898a0441013a00002003410236020c200641046a200341046a10360b200328020c220241818001490d01000b41888a044181023b01000b20012002108601000b200041a8076a201d3703002000201c3703a0072000200536029c072000200136029807230041106b22032400200341808001360208200341888a0436020441022102024020004198076a22062802002205410247044041888a0441003a0000024020054504402003410236020c41898a0441003a00002006290308200641106a290300200341046a101f0c010b41898a0441013a00002003410236020c200641046a200341046a10360b200328020c220241818001490d01000b41888a044181023b01000b20012002108601000b2000200536029807200920004198076a108001000b200428020c2204418180014f0440000b0b41002004108601000b20062004108601000bb20101077f230041106b22022400200241086a2001106c4180808080782103024020022802080d00200228020c220441ffffffff004b0d002001280204220720044104742205490d00200220044101106a200228020021062002280204200128020022032005100f21082001200720056b3602042001200320056a36020041808080807821032006418080808078460d0020002008ad2004ad42208684370204200621030b20002003360200200241106a24000bf90102017f097e230041d0006b22022400200241386a200110d70102400240200229033822034202520440200241c8006a290300210420022903402105200241206a200110d701200229032022064202510d01200241306a290300210720022903282108200241086a200110d701200229030822094202520440200241186a290300210a2002290310210b20002008370320200020053703082000200937033020002006370318200020033703002000200b370338200041286a2007370300200041106a2004370300200041406b200a3703000c030b200042023703000c020b200042023703000c010b200042023703000b200241d0006a24000bab0202017f0a7e230041e0006b22022400200241c8006a200110d701024002400240200229034822034202520440200241d8006a290300210420022903502105200241306a200110d701200229033022064202510d01200241406b290300210720022903382108200241186a2001104320022802180d02200241286a29030021092002290320210a2002200110432002290300a7450440200241106a290300210b2002290308210c2000200a370330200020083703202000200537030820002006370318200020033703002000200c370340200041386a2009370300200041286a2007370300200041106a2004370300200041c8006a200b3703000c040b200042023703000c030b200042023703000c020b200042023703000c010b200042023703000b200241e0006a24000bd80202047f017e23004180026b22022400200241186a2001106c02400240200228021845044041082104200128020441c8006e2203200228021c220520032005491b22030440200341f1b89c0e4b0d03200341c8006c22044100480d03200241106a4108200410d00120022802102204450d030b2002410036022c2002200436022820022003360224024020050440200241c0016a2103200241f8006a21040340200241086a2001103f20022d00080d02420221060240024020022d00090e020100040b200241b8016a200110c70120022903b80122064202510d03200241306a200341c000100f1a0b2004200241306a41c000100f1a20022006370370200241246a200241f0006a10d901200541016b22050d000b0b20002002290224370200200041086a2002412c6a2802003602000c020b20004180808080783602000c010b20004180808080783602000b20024180026a24000f0b000ba90201037f230041306b220024000240104841ff01714105470d0020004180800136020c41888a042000410c6a22021002200028020c2201418180014f0d00024020014104490d0041888a042d0000419b01470d0041898a042d000041ae01470d00418a8a042d0000419d01470d00418b8a042d000041de0047200141046b412049720d00418c8a042d00002101200041256a41a48a042900003700002000411e6a419d8a04290000370000200041166a41958a042900003700002000410e6a418d8a04290000370000200020013a000d41ee85f6b702410010af0141cef7ecc901410010af0142e8074200101e42e80742001073200041013a000c4100200210a40141ff01714103470d014200420010830141888a0441003b010041004102108601000b107e000b000b1e0041fc8804200110820120002802002001101c200041046a2001108b010b310002402002044020012002102c0c010b200110cd010b20002001290200370200200041086a200141086a2802003602000ba90101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a22043602044100200141046a22051034200128020c220620012802084b0d00200520012802042006102d2001410036022c20012003360228200120043602242005200141246a102520022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100f1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100f1a0b2000200320026b3602042000200120026a36020041000b0b6101027f230041106b2203240002402001450440410821020c010b0240200141f1b89c0e4b0d00200141c8006c22024100480d00200341086a4108200210d001200328020822020d010b000b2000200236020420002001360200200341106a24000b3a01017f230041106b22032400200341086a20012002410010d301200328020c21012000200328020836020020002001360204200341106a24000b2c01017f02402000280200200028020822026b20014f0d0020002002200110d201418180808078460d00000b0bc60101037f230041206b22032400027f41002001200120026a22014b0d001a4104200028020022024101742204200120012004491b2201200141044d1b220141c8006c2104200141f2b89c0e49410374210502402002450440200341003602180c010b200341083602182003200241c8006c36021c200320002802043602140b200341086a20052004200341146a10662003280208450440200328020c210220002001360200200020023602044181808080780c010b200328020c0b2104200341206a240020040b2b0020020440200345044041848a042d00001a0b20012002106821010b20002002360204200020013602000b3a01017f230041106b22022400200241086a41082001410110d301200228020c21012000200228020836020020002001360204200241106a24000bef0101057f230041106b22022400200242808001370208200241888a043602042001200241046a2205101c024020022802082203200228020c2201490d00200228020421042002200320016b220636020420042001200120046a2201200510002103200620022802042204492003410f4f720d002000027f4100200341e889046a2d000022034103460d001a20034110470d012004412046044020002001290000370001200041196a200141186a290000370000200041116a200141106a290000370000200041096a200141086a29000037000041010c010b200041103a000141020b3a0000200241106a24000f0b000b3d01027f230041106b22012400200141086a41ee85f6b70210b501200128020821022000200128020c36020420002002410146360200200141106a24000b7a02017f037e230041206b22022400200241186a2001103f0240024020022d00180d00024020022d00190e020200010b2002200110434202420120022802001b2103200241106a2903002104200229030821050c010b420221030b2000200537030820002003370300200041106a2004370300200241206a24000b6601027f230041106b22022400200241046a200110c901024020022802042203418080808078470440200128020445044020002002290208370204200020033602000c020b20004180808080783602000c010b20004180808080783602000b200241106a24000b11002000200141c80041f2b89c0e10ee010b21002000280200200110820120002802042001101c200041086a2802002001101c0b120041c486042001108201200020011082010b2700200041106a2001108b01200041316a2001108b012000290300200041086a2903002001101f0b7901017f230041106b22022400024020002802002200413f4d04402001200041027410370c010b200041ffff004d0440200220004102744101723b010e20012002410e6a4102101a0c010b200041ffffffff034d044020004102744102722001101c0c010b20014103103720002001101c0b200241106a24000b2f01027f230041106b22002400200041086a410841d80010d001200028020822010440200041106a240020010f0b000b960502037f097e230041406a220824002000027f0240024002400240200128020022092d0030044020092d00310d01200841186a20022001280204220a290300200a41086a290300200a41106a290300200a41186a290300200a41286a20042005105220082d00180d022009290300220c200829032022127c220d200c5422042004ad200941086a290300220e200841286a29030022137c7c220c200e54200c200e511b0d03200841386a290300210e200841306a29030021112009200d3703002009200c37030820112009290310220b7c2210200b5422042004ad200e200941186a2204290300220b7c7c220f200b54200b200f511b0d03200920103703102004200f370300200841086a42014200200128020c41ff0071101320032008290308200329030084370300200341086a2203200841106a2903002003290300843703002002290300220b20067c2210200b5422032003ad200241086a290300220b20077c7c220f200b54200b200f511b0d04200220103703002002200f370308200d2006200d7c220d5622022002ad2007200c7c7c2206200c542006200c511b0d042009200d3703002009200637030802402001280208220129030050450440200d2001290308562006200141106a29030022075620062007511b0d010b20002012370308200041206a200e370300200041186a2011370300200041106a201337030041000c060b2000410c360204200041086a41013a000041010c050b2000410b360204200041086a41013a000041010c040b2000410b360204200041086a41023a000041010c030b200041086a20082d00193a00002000410936020441010c020b20004109360204200041086a41013a000041010c010b20004109360204200041086a41013a000041010b360200200841406b24000b9f0101017e200120024b04404101210102402003200020024105746a220029030022037c220720035422022002ad200041086a290300220320047c7c220420035420032004511b0d0020002007370300200020043703082000290310220320057c220520035422022002ad200041186a2202290300220320067c7c220420035420032004511b0d002000200537031020022004370300410321010b20010f0b000b9b06020a7e037f230041d0006b221224002000027f0240200128020022132d003004402002290300200241086a2903008450450d012000411936020441010c020b2000410b360204200041086a41013a000041010c010b201241286a200220012802042214290300201441086a290300201441106a290300201441186a290300201441286a20042005105220122d00280440200041086a20122d00293a00002000410936020441010c010b024002400240024020132903002208201229033022107c220d20085422042004ad201341086a2903002208201241386a29030022117c7c220c2008542008200c511b0d00201241c8006a290300210e201241406b290300210f2013200d3703002013200c370308200f2013290310220a7c2208200a5422042004ad200e201341186a220429030022097c7c220a2009542009200a511b0d00201320083703102004200a3703002006290300220a2002290300220858200641086a290300220b200241086a2903002209582009200b511b410120071b450d01200128020821052008200a852009200b85844200520d030c020b20004109360204200041086a41013a000041010c030b2006200837030020062009370308200128020821052008210a2009210b0b201241186a42014200200128020c41ff00711013200320032903002012290318427f8583370300200341086a22042004290300201241206a290300427f85833703000b02402008200a5422042009200b542009200b511b0d0020022008200a7d220837030020022009200b7d2004ad7d2209370308200a200d562202200b200c56200b200c511b0d002013200d200a7d3703002013200c200b7d2002ad7d370308200820052903305a2009200541386a29030022085a20082009511b450440201241086a42014200200128020c41ff00711013200320032903102012290308427f8583370310200341186a22012001290300201241106a290300427f85833703000b20002010370308200041206a200e370300200041186a200f370300200041106a201137030041000c010b20004109360204200041086a41003a000041010b360200201241d0006a24000bdb0502097e037f230041406a221124002000027f024002400240024002400240200128020022122d0030044020122d00310d01201141186a200220012802042213290300201341086a290300201341106a290300201341186a290300201341286a20042005105220112d00180d02201229030022092011290320220f7c220a20095422042004ad201241086a2903002209201141286a29030022107c7c220820095420082009511b0d03201141386a290300210c201141306a290300210d2012200a37030020122008370308200d201229031022097c220a20095422042004ad200c201241186a220429030022087c7c220920085420082009511b0d032012200a37031020042009370300201141086a42014200200128020c41ff0071101320032011290308200329032084370320200341286a2203201141106a2903002003290300843703002002290310220820067c220b20085422032003ad200241186a2203290300220e20077c7c2208200e542008200e511b0d042002200b37031020032008370300200a2006200a7c220a5622022002ad200720097c7c220620095420062009511b0d042012200a37031020042006370300200128020821012008200b8450450440200b20012903405a2008200141c8006a29030022075a20072008511b450d060b0240200129031850450440200a200141206a290300562006200141286a29030022075620062007511b0d010b2000200f370308200041206a200c370300200041186a200d370300200041106a201037030041000c080b2000410c360204200041086a41003a00000c060b2000410b360204200041086a41013a000041010c060b2000410b360204200041086a41023a00000c040b200041086a20112d00193a0000200041093602040c030b20004109360204200041086a41013a000041010c030b20004109360204200041086a41013a000041010c020b2000410c360204200041086a41023a00000b41010b360200201141406b24000bec05020c7e037f230041406a221424002000027f0240024002400240024002400240200128020022152d00300440201441186a200220012802042216290300201641086a290300201641106a290300201641186a290300201641286a20042005105220142d00180d0120152903002208201429032022117c220a20085422042004ad201541086a2903002208201441286a29030022127c7c220920085420082009511b0d02201441386a290300210e201441306a290300210f2015200a37030020152009370308200f201529031022087c220d20085422042004ad200e201541186a220429030022087c7c220c2008542008200c511b0d022015200d3703102004200c37030020022903102209200241186a290300220a845004402000411b3602040c080b2006290300220b200958200641086a2903002208200a582008200a5122041b410120071b450d032009200b852008200a8584500d042009200b542008200a5620041b0d060c050b2000410b360204200041086a41013a000041010c070b200041086a20142d00193a0000200041093602040c050b20004109360204200041086a41013a000041010c050b200620093703002006200a3703080b201441086a42014200200128020c41ff00711013200320032903202014290308427f8583370320200341286a22032003290300201441106a290300427f85833703002009210b200a21080b20022009200b7d2213370310200241186a200a20087d2009200b54ad7d2210370300200b200d5622022008200c562008200c511b0d002015200d200b7d370310201541186a200c20087d2002ad7d37030002402009200b852008200a8584504504402013200128020822012903405a2010200141c8006a29030022085a20082010511b450d010b20002011370308200041206a200e370300200041186a200f370300200041106a201237030041000c030b2000410c360204200041086a41023a00000c010b20004109360204200041086a41003a00000b41010b360200201441406b24000b3c01017f230041106b22022400200241086a2001105f200228020822014102460440000b2000200228020c36020420002001360200200241106a24000b7001017f230041306b220324002003412c6a200236020020032001360228200341c08604360224200341086a200341246a105d20032903084202510440000b20002003290308370300200041106a200341186a290300370300200041086a200341106a290300370300200341306a24000b960101027f230041206b2205240002402001200284500440200041c0843d3602040c010b41012106200541086a2003200442c0843d420020012002410110bc0120052d00080440200020052d00093a00010c010b41002106200541186a2903005020052903102201428080808010547145044041012106200041013a00010c010b200020013e02040b200020063a0000200541206a24000b9a0101017f230041406a22072400200741086a200642004280c8afa02542001014200741186a200542004280c8afa0254200101402402007290310420052200741206a290300220520072903087c2206200554720d00200741286a200120022003200420072903182006410110bc0120072d00280d00200729033021012000200741386a29030037030820002001370300200741406b24000f0b000b1800200020012002200320044280c2d72f4200410110bc010b18002000200120022003ad420042c0843d4200410010bc010be00f02027f0b7e230041c0076b22052400024002400240024002402001290310220b200141186a2903002207845004402004450d0220022003844200520d010c050b027e024002400240417f2007200b84420052200b42005220074200522007501b1b2206047f2006052001290300220d200256200141086a290300220820035620032008511b0d012002200d852003200885844200520b4101460d010b2002200b56200320075620032007511b450d01200141086a290300210c2001290300210e20037920027942407d20034200521ba722010440200541e0016a2002200320011013200541d0016a200b200720011013200541c0016a200e200c410020016b41ff00711015200541b0016a200e200c20011013200541c8016a290300200541d8016a29030084210720052903c00120052903d00184210b200541b8016a290300210c200541e8016a290300210320052903b001210e20052903e00121020b2003500d07200541a0016a200b200720034200101720054190016a20052903a0012208200541a8016a290300220a200342001014200720054198016a2903007d200b200529039001220d54ad7d2107200b200d7d210920054188016a2106034002400240200a4200520d0020054180016a2008200a200242001014200529038001200c582006290300220d2009582009200d511b450d002008210d0c010b200a200850ad7d210a200842017d220d210820072009200320097c220956ad7c2207500d010b0b200541f0006a200d200a200220031014200541e0006a200c200529037022087d220f200b200541f8006a2903007d2008200c56ad7d2207200342001017200541d0006a20052903602208200541e8006a29030022092003420010142007200541d8006a2903007d200f2005290350220754ad7d210c200f20077d210a200541c8006a210603400240024020094200520d00200541406b200820092002420010142005290340200e5820062903002207200a582007200a511b450d00200821070c010b2009200850ad7d2109200842017d22072108200c200a2003200a7c220a56ad7c220c500d010b0b200541306a20072009200220031014200541206a200e200529033022027d200f200541386a2903007d2002200e56ad7d200110152005290320210a200541286a2903000c020b2004044020042001290300370300200441186a200141186a290300370300200441106a200141106a290300370300200441086a200141086a2903003703000b20004200370300200041186a4200370300200041106a4200370300200041086a42003703000c050b2002200384500d05200541d0036a200b2007200220031017200541c0036a20052903d0032210200541d8036a29030022112002200310142007200541c8036a2903007d200b20052903c003220854ad7d2109200b20087d210b200141086a290300210c2001290300210e20037920027942407d20034200521ba722010440200541b0036a2002200320011013200541a0036a200b20092001101320054190036a200e200c410020016b41ff0071101520054180036a200e200c20011013200541a8036a29030020054198036a29030084210920052903a00320052903900384210b20054188036a290300210c200541b8036a2903002103200529038003210e20052903b00321020b2003500d05200541f0026a200b2009200342001017200541e0026a20052903f0022208200541f8026a290300220a2003420010142009200541e8026a2903007d200b20052903e002220d54ad7d2107200b200d7d2109200541d8026a2106034002400240200a4200520d00200541d0026a2008200a20024200101420052903d002200c582006290300220d2009582009200d511b450d002008210d0c010b200a200850ad7d210a200842017d220d210820072009200320097c220956ad7c2207500d010b0b200541c0026a200d200a200220031014200541b0026a200c20052903c00222087d220f200b200541c8026a2903007d2008200c56ad7d2207200342001017200541a0026a20052903b0022208200541b8026a29030022092003420010142007200541a8026a2903007d200f20052903a002220754ad7d210c200f20077d210a20054198026a210603400240024020094200520d0020054190026a20082009200242001014200529039002200e5820062903002207200a582007200a511b450d00200821070c010b2009200850ad7d2109200842017d22072108200c200a2003200a7c220a56ad7c220c500d010b0b20054180026a20072009200220031014200541f0016a200e20052903800222027d200f20054188026a2903007d2002200e56ad7d2001101520052903f001210a200541f8016a2903000b210220040440200442003703102004200a370300200441186a4200370300200420023703080b2000201037031020002007370300200041186a201137030020002009200d7c3703080c030b2001290300220a2108200141086a29030022092107230041206b2201240020012008200720022003101620012903102108200541106a2206200141186a29030037030820062008370300200141206a240020044200370310200441186a42003703002004200541186a290300370308200420052903103703000c010b2002200384500d02200141086a29030021092001290300210a0b2005200a200920022003101720004200370310200041186a42003703002000200541086a290300370308200020052903003703000b200541c0076a24000f0b000b5101017f230041106b22012400200142808001370208200141888a043602042000200141046a10cb01200128020c220020012802084b0440000b20012802042000102b2100200141106a240020004100470b4301017f230041206b22012400200141186a4200370300200141106a4200370300200141086a42003703002001420037030020002001104a2100200141206a240020000b8e0101057f230041106b22032400200342808001370208200341888a043602042002200341046a2207101c024020032802082204200328020c2205490d00200328020421062003410036020c2003200420056b3602082003200520066a360204200020012007101f200328020c220420032802084b0d00200620052003280204200410051a200341106a24000f0b000be40101057f200028020822042000280200460440230041206b220524000240200441016a220404404104200028020022064101742207200420042007491b2204200441044d1b220420026c21072004200349410374210802402006450440200541003602180c010b200541083602182005200620026c36021c200520002802043602140b200541086a20082007200541146a10662005280208450d01200528020c1a0b000b200528020c21062000200436020020002006360204200541206a2400200028020821040b2000280204200420026c6a20012002100f1a2000200441016a3602080bb00201057f230041a0016b220224002002200041f000100f220042808001370278200041888a04360274200041f4006a4103106f20004198016a2202200041fc006a280200360200200020002902743703900120004190016a22032001102c20004188016a2204200228020036020020002000290390013703800120004180016a2000102c200220042802003602002000200029038001370390012003200041406b2205102c0240200028029401220620022802002202490d00200028029001210420004100360298012000200620026b360294012000200220046a36029001200020031025200041206a200310252005200310252000290360200041e8006a2903002003101f20002802980122052000280294014b0d002004200220002802900120051004200041a0016a24000f0b000b0b84090500418480040bd50541626178204465706f7369742041626178205661726961626c6520446562742001a7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed00176ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6017406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b011ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e01dfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b58001c2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889018293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad90110dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb38801846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065010f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3017ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4019768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac00143f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751014fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e5478501cb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b01b62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e9548901cb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e40168b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384010fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc019501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857014a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac8780041fa85040bfe010100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403cd81e137a9eb3191f0b5aa20089a45817d7eb08f4af3fceebef224e09e3b1a82dcc6b6bc8a625a420eaba772e583916612debe72ca5d7011270fce1c01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041ba88040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041f888040b49f9372874510afc69014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b41433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e740041e889040b0f100102030405060708090a0b0c0d0e","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"lending_pool","version":"1.0.0","authors":["Konrad Wierzbik "],"description":"Abax Protocol Lending Pool contract","license":"BUSL-1.1"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"admin","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":120},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":43},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":196},"hash":{"displayName":["Hash"],"type":192},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":58}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":70}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":43}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":43}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":43}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":11}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":126}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":126}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":43}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":70}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":70}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":150}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":54}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":148}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":42}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":42}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":42}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":58}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":43}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"}],"lang_error":{"displayName":["ink","LangError"],"type":121},"messages":[{"args":[{"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"default":false,"docs":[],"label":"LendingPoolActions::choose_market_rule","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0xda8c1f74"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"use_as_collateral","type":{"displayName":["bool"],"type":70}}],"default":false,"docs":[],"label":"LendingPoolActions::set_as_collateral","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x71c9338d"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::deposit","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x1e881f6c"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::withdraw","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0x521ea90e"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::borrow","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x0409402c"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::repay","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":135},"selector":"0xd12830e6"},{"args":[{"label":"actions","type":{"displayName":["Vec"],"type":137}},{"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::multi_op","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0xa2a60fd4"},{"args":[{"label":"liquidated_account","type":{"displayName":["AccountId"],"type":9}},{"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":9}},{"label":"asset_to_take","type":{"displayName":["AccountId"],"type":9}},{"label":"amount_to_repay","type":{"displayName":["Balance"],"type":43}},{"label":"minimum_recieved_for_one_repaid_token_e18","type":{"displayName":["u128"],"type":43}},{"label":"data","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolActions::liquidate","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":141},"selector":"0xcd686df3"},{"args":[{"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"label":"assets","type":{"displayName":["Vec"],"type":144}},{"label":"amounts","type":{"displayName":["Vec"],"type":145}},{"label":"receiver_params","type":{"displayName":["Vec"],"type":134}}],"default":false,"docs":[],"label":"LendingPoolFlash::flash_loan","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x81b31ee7"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolMaintain::accumulate_interest","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0xf58c7316"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"guessed_index","type":{"displayName":["u32"],"type":0}}],"default":false,"docs":[],"label":"LendingPoolMaintain::adjust_rate_at_target","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":146},"selector":"0x3215f476"},{"args":[{"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolManage::set_price_feed_provider","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x0803b99f"},{"args":[{"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolManage::set_fee_reduction_provider","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0xfb2e29bd"},{"args":[{"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":43}}],"default":false,"docs":[],"label":"LendingPoolManage::set_flash_loan_fee_e6","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x02b32af2"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"a_token_code_hash","type":{"displayName":[],"type":10}},{"label":"v_token_code_hash","type":{"displayName":[],"type":10}},{"label":"name","type":{"displayName":["String"],"type":126}},{"label":"symbol","type":{"displayName":["String"],"type":126}},{"label":"decimals","type":{"displayName":["u8"],"type":11}},{"label":"asset_rules","type":{"displayName":["AssetRules"],"type":41}},{"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":54}},{"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":148}},{"label":"interest_rate_model","type":{"displayName":["Option"],"type":149}}],"default":false,"docs":[],"label":"LendingPoolManage::register_asset","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x63ca0624"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"active","type":{"displayName":["bool"],"type":70}}],"default":false,"docs":[],"label":"LendingPoolManage::set_reserve_is_active","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x1896b613"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"freeze","type":{"displayName":["bool"],"type":70}}],"default":false,"docs":[],"label":"LendingPoolManage::set_reserve_is_frozen","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x7a66039f"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"interest_rate_model","type":{"displayName":["InterestRateModelParams"],"type":150}}],"default":false,"docs":[],"label":"LendingPoolManage::set_interest_rate_model","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x984e8190"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":54}}],"default":false,"docs":[],"label":"LendingPoolManage::set_reserve_restrictions","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x65e86045"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":148}}],"default":false,"docs":[],"label":"LendingPoolManage::set_reserve_fees","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x39e6a33a"},{"args":[{"label":"market_rule","type":{"displayName":["MarketRule"],"type":39}}],"default":false,"docs":[],"label":"LendingPoolManage::add_market_rule","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0xc240467e"},{"args":[{"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}},{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"asset_rules","type":{"displayName":["AssetRules"],"type":41}}],"default":false,"docs":[],"label":"LendingPoolManage::modify_asset_rule","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x276c5154"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":151}},{"label":"to","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolManage::take_protocol_income","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":152},"selector":"0x01144880"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"debt_rate_e18","type":{"displayName":["u64"],"type":58}}],"default":false,"docs":[],"label":"LendingPoolManage::set_stablecoin_debt_rate_e18","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":122},"selector":"0x04dddbca"},{"args":[],"default":false,"docs":[],"label":"LendingPoolView::view_flash_loan_fee_e6","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0x03acc819"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_asset_id","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":157},"selector":"0x82c726b7"},{"args":[],"default":false,"docs":[],"label":"LendingPoolView::view_registered_assets","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":159},"selector":"0x7ee520ac"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_data","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":160},"selector":"0xc4adf4e3"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_unupdated_reserve_indexes","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":162},"selector":"0x2b038385"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_interest_rate_model","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":164},"selector":"0x83fc3d9a"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_restrictions","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":166},"selector":"0xe27ee044"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_tokens","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":168},"selector":"0x6ea8d1e8"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_decimal_multiplier","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0x98295700"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_indexes","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":162},"selector":"0xd179c3bb"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_reserve_fees","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":171},"selector":"0xeefa7bc4"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_unupdated_account_reserve_data","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x252b91d3"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_account_reserve_data","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":173},"selector":"0x650525e7"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_account_config","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":174},"selector":"0x40f1456f"},{"args":[{"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"default":false,"docs":[],"label":"LendingPoolView::view_market_rule","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":175},"selector":"0x5e701ec3"},{"args":[{"label":"account_address","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::get_account_free_collateral_coefficient","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":177},"selector":"0xbcbe0fae"},{"args":[{"label":"assets","type":{"displayName":["Option"],"type":151}}],"default":false,"docs":[],"label":"LendingPoolView::view_protocol_income","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":179},"selector":"0xa6121b9f"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolView::view_asset_tw_index","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":180},"selector":"0x844d39fc"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"from","type":{"displayName":["u32"],"type":0}},{"label":"to","type":{"displayName":["u32"],"type":0}}],"default":false,"docs":[],"label":"LendingPoolView::view_asset_tw_entries","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":182},"selector":"0x3ab4b976"},{"args":[{"label":"period","type":{"displayName":["u64"],"type":58}},{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"guessed_index","type":{"displayName":["u32"],"type":0}}],"default":false,"docs":[],"label":"LendingPoolView::view_tw_ur_from_period_longer_than","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":185},"selector":"0x6571d519"},{"args":[{"label":"counter","type":{"displayName":["u128"],"type":43}}],"default":false,"docs":[],"label":"AccountRegistrarView::view_counter_to_account","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":187},"selector":"0xc2b475f3"},{"args":[{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"AccountRegistrarView::view_account_to_counter","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":170},"selector":"0x6388e197"},{"args":[],"default":false,"docs":[],"label":"AccountRegistrarView::view_next_counter","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0x2dec1123"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolATokenInterface::total_deposit_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0x58114dc5"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}},{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolATokenInterface::account_deposit_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0xf39cab53"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}},{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}}],"default":false,"docs":[],"label":"LendingPoolATokenInterface::transfer_deposit_from_to","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":141},"selector":"0x48009b8d"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolVTokenInterface::total_debt_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0x89418024"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}},{"label":"account","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"LendingPoolVTokenInterface::account_debt_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":156},"selector":"0xe9787c86"},{"args":[{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":9}},{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":43}}],"default":false,"docs":[],"label":"LendingPoolVTokenInterface::transfer_debt_from_to","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":141},"selector":"0x714b3576"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":188},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":189},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":190},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":190},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":190},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":190},"selector":"0x71a64883"},{"args":[{"label":"set_code_hash","type":{"displayName":["Hash"],"type":192}}],"default":false,"docs":[],"label":"SetCodeHash::set_code_hash","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":193},"selector":"0xabb60cdf"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x3ab3a5a0","ty":9}},"root_key":"0x3ab3a5a0","ty":15}},"name":"price_feed_provider"},{"layout":{"root":{"layout":{"leaf":{"key":"0xf641682d","ty":9}},"root_key":"0xf641682d","ty":19}},"name":"fee_reduction_provider"},{"layout":{"root":{"layout":{"leaf":{"key":"0xee82fd26","ty":0}},"root_key":"0xee82fd26","ty":23}},"name":"next_asset_id"},{"layout":{"root":{"layout":{"leaf":{"key":"0x4af3fcee","ty":0}},"root_key":"0x4af3fcee","ty":27}},"name":"asset_to_id"},{"layout":{"root":{"layout":{"leaf":{"key":"0xcd81e137","ty":9}},"root_key":"0xcd81e137","ty":31}},"name":"id_to_asset"},{"layout":{"root":{"layout":{"leaf":{"key":"0xce3b3b19","ty":0}},"root_key":"0xce3b3b19","ty":35}},"name":"next_rule_id"},{"layout":{"root":{"layout":{"leaf":{"key":"0xf0b5aa20","ty":39}},"root_key":"0xf0b5aa20","ty":44}},"name":"market_rules"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0xca5d7011","ty":9}},"name":"a_token_address"},{"layout":{"leaf":{"key":"0xca5d7011","ty":9}},"name":"v_token_address"}],"name":"ReserveAbacusTokens"}},"root_key":"0xca5d7011","ty":48}},"name":"reserve_abacus_tokens"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"enum":{"dispatchKey":"0xdcc6b6bc","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xdcc6b6bc","ty":43}},"name":"0"}],"name":"Some"}}}},"name":"maximal_total_deposit"},{"layout":{"enum":{"dispatchKey":"0xdcc6b6bc","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xdcc6b6bc","ty":43}},"name":"0"}],"name":"Some"}}}},"name":"maximal_total_debt"},{"layout":{"leaf":{"key":"0xdcc6b6bc","ty":43}},"name":"minimal_collateral"},{"layout":{"leaf":{"key":"0xdcc6b6bc","ty":43}},"name":"minimal_debt"}],"name":"ReserveRestrictions"}},"root_key":"0xdcc6b6bc","ty":53}},"name":"reserve_restrictions"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x7d7eb08f","ty":43}},"name":"deposit_index_e18"},{"layout":{"leaf":{"key":"0x7d7eb08f","ty":43}},"name":"debt_index_e18"},{"layout":{"leaf":{"key":"0x7d7eb08f","ty":58}},"name":"update_timestamp"}],"name":"ReserveIndexes"}},"name":"indexes"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x7d7eb08f","ty":0}},"name":"deposit_fee_e6"},{"layout":{"leaf":{"key":"0x7d7eb08f","ty":0}},"name":"debt_fee_e6"},{"layout":{"leaf":{"key":"0x7d7eb08f","ty":43}},"name":"earned_fee"}],"name":"ReserveFees"}},"name":"fees"}],"name":"ReserveIndexesAndFees"}},"root_key":"0x7d7eb08f","ty":59}},"name":"reserve_indexes_and_fees"},{"layout":{"root":{"layout":{"leaf":{"key":"0x8a625a42","ty":43}},"root_key":"0x8a625a42","ty":66}},"name":"reserve_decimal_multiplier"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0xe5839166","ty":70}},"name":"activated"},{"layout":{"leaf":{"key":"0xe5839166","ty":70}},"name":"frozen"},{"layout":{"leaf":{"key":"0xe5839166","ty":43}},"name":"total_deposit"},{"layout":{"leaf":{"key":"0xe5839166","ty":58}},"name":"current_deposit_rate_e18"},{"layout":{"leaf":{"key":"0xe5839166","ty":43}},"name":"total_debt"},{"layout":{"leaf":{"key":"0xe5839166","ty":58}},"name":"current_debt_rate_e18"}],"name":"ReserveData"}},"root_key":"0xe5839166","ty":71}},"name":"reserve_datas"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x089a4581","ty":0}},"name":"value"}],"name":"TwIndex"}},"root_key":"0x089a4581","ty":76}},"name":"tw_ur_indexes"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0xa9eb3191","ty":58}},"name":"timestamp"},{"layout":{"leaf":{"key":"0xa9eb3191","ty":58}},"name":"accumulator"}],"name":"TwEntry"}},"root_key":"0xa9eb3191","ty":81}},"name":"tw_ur_entries"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x9e3b1a82","ty":0}},"name":"target_ur_e6"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"min_rate_at_target_e18"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"max_rate_at_target_e18"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"rate_at_target_ur_e18"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"rate_at_max_ur_e18"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"minimal_time_between_adjustments"},{"layout":{"leaf":{"key":"0x9e3b1a82","ty":58}},"name":"last_adjustment_timestamp"}],"name":"InterestRateModel"}},"root_key":"0x9e3b1a82","ty":87}},"name":"interest_rate_model"},{"layout":{"root":{"layout":{"leaf":{"key":"0x0eaba772","ty":92}},"root_key":"0x0eaba772","ty":95}},"name":"account_reserve_datas"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0xbef224e0","ty":43}},"name":"deposits"},{"layout":{"leaf":{"key":"0xbef224e0","ty":43}},"name":"collaterals"},{"layout":{"leaf":{"key":"0xbef224e0","ty":43}},"name":"borrows"},{"layout":{"leaf":{"key":"0xbef224e0","ty":0}},"name":"market_rule_id"}],"name":"AccountConfig"}},"root_key":"0xbef224e0","ty":99}},"name":"account_configs"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd89f1591","ty":43}},"root_key":"0xd89f1591","ty":104}},"name":"flash_loan_fee_e6"}],"name":"LendingPoolStorage"}},"name":"lending_pool"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0x12debe72","ty":9}},"root_key":"0x12debe72","ty":108}},"name":"counter_to_account"},{"layout":{"root":{"layout":{"leaf":{"key":"0x270fce1c","ty":43}},"root_key":"0x270fce1c","ty":112}},"name":"account_to_counter"},{"layout":{"leaf":{"key":"0x00000000","ty":43}},"name":"next_counter"}],"name":"AccountRegistrar"}},"name":"account_registrar"}],"name":"LendingPool"}},"root_key":"0x00000000","ty":116}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":16}],"path":["ink_storage","lazy","Lazy"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"L","type":17},{"name":"R","type":18}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":20}],"path":["ink_storage","lazy","Lazy"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"L","type":21},{"name":"R","type":22}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":24}],"path":["ink_storage","lazy","Lazy"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"L","type":25},{"name":"R","type":26}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":25,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":0},{"name":"KeyType","type":28}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"L","type":29},{"name":"R","type":30}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":9},{"name":"KeyType","type":32}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"L","type":33},{"name":"R","type":34}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":36}],"path":["ink_storage","lazy","Lazy"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"L","type":37},{"name":"R","type":38}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":37,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":38,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":39,"type":{"def":{"sequence":{"type":40}}}},{"id":40,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":41}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":41}],"path":["Option"]}},{"id":41,"type":{"def":{"composite":{"fields":[{"name":"collateral_coefficient_e6","type":42,"typeName":"Option"},{"name":"borrow_coefficient_e6","type":42,"typeName":"Option"},{"name":"penalty_e6","type":42,"typeName":"Option"}]}},"path":["abax_library","structs","asset_rules","AssetRules"]}},{"id":42,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":43}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":43}],"path":["Option"]}},{"id":43,"type":{"def":{"primitive":"u128"}}},{"id":44,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":39},{"name":"KeyType","type":45}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":45,"type":{"def":{"composite":{}},"params":[{"name":"L","type":46},{"name":"R","type":47}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":46,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":47,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":48,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":49},{"name":"KeyType","type":50}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":49,"type":{"def":{"composite":{"fields":[{"name":"a_token_address","type":9,"typeName":"AccountId"},{"name":"v_token_address","type":9,"typeName":"AccountId"}]}},"path":["abax_library","structs","reserve_abacus_tokens","ReserveAbacusTokens"]}},{"id":50,"type":{"def":{"composite":{}},"params":[{"name":"L","type":51},{"name":"R","type":52}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":51,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":52,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":53,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":54},{"name":"KeyType","type":55}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":54,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":42,"typeName":"Option"},{"name":"maximal_total_debt","type":42,"typeName":"Option"},{"name":"minimal_collateral","type":43,"typeName":"Balance"},{"name":"minimal_debt","type":43,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":55,"type":{"def":{"composite":{}},"params":[{"name":"L","type":56},{"name":"R","type":57}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":56,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":57,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":58,"type":{"def":{"primitive":"u64"}}},{"id":59,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":60},{"name":"KeyType","type":63}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":60,"type":{"def":{"composite":{"fields":[{"name":"indexes","type":61,"typeName":"ReserveIndexes"},{"name":"fees","type":62,"typeName":"ReserveFees"}]}},"path":["abax_library","structs","reserve_indexes_and_fees","ReserveIndexesAndFees"]}},{"id":61,"type":{"def":{"composite":{"fields":[{"name":"deposit_index_e18","type":43,"typeName":"u128"},{"name":"debt_index_e18","type":43,"typeName":"u128"},{"name":"update_timestamp","type":58,"typeName":"Timestamp"}]}},"path":["abax_library","structs","reserve_indexes_and_fees","ReserveIndexes"]}},{"id":62,"type":{"def":{"composite":{"fields":[{"name":"deposit_fee_e6","type":0,"typeName":"u32"},{"name":"debt_fee_e6","type":0,"typeName":"u32"},{"name":"earned_fee","type":43,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_indexes_and_fees","ReserveFees"]}},{"id":63,"type":{"def":{"composite":{}},"params":[{"name":"L","type":64},{"name":"R","type":65}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":64,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":65,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":66,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":43},{"name":"KeyType","type":67}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":67,"type":{"def":{"composite":{}},"params":[{"name":"L","type":68},{"name":"R","type":69}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":68,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":69,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":70,"type":{"def":{"primitive":"bool"}}},{"id":71,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":72},{"name":"KeyType","type":73}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":72,"type":{"def":{"composite":{"fields":[{"name":"activated","type":70,"typeName":"bool"},{"name":"frozen","type":70,"typeName":"bool"},{"name":"total_deposit","type":43,"typeName":"Balance"},{"name":"current_deposit_rate_e18","type":58,"typeName":"u64"},{"name":"total_debt","type":43,"typeName":"Balance"},{"name":"current_debt_rate_e18","type":58,"typeName":"u64"}]}},"path":["abax_library","structs","reserve_data","ReserveData"]}},{"id":73,"type":{"def":{"composite":{}},"params":[{"name":"L","type":74},{"name":"R","type":75}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":74,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":75,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":76,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":77},{"name":"KeyType","type":78}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":77,"type":{"def":{"composite":{"fields":[{"name":"value","type":0,"typeName":"u32"}]}},"path":["abax_library","structs","tw","TwIndex"]}},{"id":78,"type":{"def":{"composite":{}},"params":[{"name":"L","type":79},{"name":"R","type":80}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":79,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":80,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":81,"type":{"def":{"composite":{}},"params":[{"name":"K","type":82},{"name":"V","type":83},{"name":"KeyType","type":84}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":82,"type":{"def":{"tuple":[0,0]}}},{"id":83,"type":{"def":{"composite":{"fields":[{"name":"timestamp","type":58,"typeName":"Timestamp"},{"name":"accumulator","type":58,"typeName":"u64"}]}},"path":["abax_library","structs","tw","TwEntry"]}},{"id":84,"type":{"def":{"composite":{}},"params":[{"name":"L","type":85},{"name":"R","type":86}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":85,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":86,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":87,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":88},{"name":"KeyType","type":89}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":88,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":0,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"rate_at_target_ur_e18","type":58,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":58,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":58,"typeName":"u64"},{"name":"last_adjustment_timestamp","type":58,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModel"]}},{"id":89,"type":{"def":{"composite":{}},"params":[{"name":"L","type":90},{"name":"R","type":91}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":90,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":91,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":92,"type":{"def":{"sequence":{"type":93}}}},{"id":93,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":94}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":94}],"path":["Option"]}},{"id":94,"type":{"def":{"composite":{"fields":[{"name":"deposit","type":43,"typeName":"Balance"},{"name":"debt","type":43,"typeName":"Balance"},{"name":"applied_deposit_index_e18","type":43,"typeName":"u128"},{"name":"applied_debt_index_e18","type":43,"typeName":"u128"}]}},"path":["abax_library","structs","account_reserve_data","AccountReserveData"]}},{"id":95,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":92},{"name":"KeyType","type":96}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":96,"type":{"def":{"composite":{}},"params":[{"name":"L","type":97},{"name":"R","type":98}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":97,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":98,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":99,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":100},{"name":"KeyType","type":101}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":100,"type":{"def":{"composite":{"fields":[{"name":"deposits","type":43,"typeName":"Bitmap128"},{"name":"collaterals","type":43,"typeName":"Bitmap128"},{"name":"borrows","type":43,"typeName":"Bitmap128"},{"name":"market_rule_id","type":0,"typeName":"u32"}]}},"path":["abax_library","structs","account_config","AccountConfig"]}},{"id":101,"type":{"def":{"composite":{}},"params":[{"name":"L","type":102},{"name":"R","type":103}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":102,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":103,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":104,"type":{"def":{"composite":{}},"params":[{"name":"V","type":43},{"name":"KeyType","type":105}],"path":["ink_storage","lazy","Lazy"]}},{"id":105,"type":{"def":{"composite":{}},"params":[{"name":"L","type":106},{"name":"R","type":107}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":106,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":107,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":108,"type":{"def":{"composite":{}},"params":[{"name":"K","type":43},{"name":"V","type":9},{"name":"KeyType","type":109}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":109,"type":{"def":{"composite":{}},"params":[{"name":"L","type":110},{"name":"R","type":111}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":110,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":111,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":112,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":43},{"name":"KeyType","type":113}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":113,"type":{"def":{"composite":{}},"params":[{"name":"L","type":114},{"name":"R","type":115}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":114,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":115,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":116,"type":{"def":{"composite":{"fields":[{"name":"access","type":117,"typeName":",>>::Type"},{"name":"lending_pool","type":118,"typeName":",>>::Type"},{"name":"account_registrar","type":119,"typeName":",>>::Type"}]}},"path":["lending_pool","lending_pool","LendingPool"]}},{"id":117,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":118,"type":{"def":{"composite":{"fields":[{"name":"price_feed_provider","type":15,"typeName":"<::ink::storage::Lazy> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2243355402u32, ()>,>>::Type"},{"name":"fee_reduction_provider","type":19,"typeName":"<::ink::storage::Lazy> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2973045936u32, ()>,>>::Type"},{"name":"next_asset_id","type":23,"typeName":"<::ink::storage::Lazy> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2237726991u32, ()>,>>::Type"},{"name":"asset_to_id","type":27,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1688824587u32, ()>,>>::Type"},{"name":"id_to_asset","type":31,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n3939954493u32, ()>,>>::Type"},{"name":"next_rule_id","type":35,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n703277257u32, ()>,>>::Type"},{"name":"market_rules","type":44,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n4276827247u32, ()>,>>::Type"},{"name":"reserve_abacus_tokens","type":48,"typeName":"> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<4202749207u32, ()>,>>::Type"},{"name":"reserve_restrictions","type":53,"typeName":"> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2879247353u32, ()>,>>::Type"},{"name":"reserve_indexes_and_fees","type":59,"typeName":"> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<3680404393u32, ()>,>>::Type"},{"name":"reserve_decimal_multiplier","type":66,"typeName":"> as\n::ink::storage::traits::AutoStorableHint<::ink::storage::traits\n::ManualKey<1889413413u32, ()>,>>::Type"},{"name":"reserve_datas","type":71,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2235127083u32, ()>,>>::Type"},{"name":"tw_ur_indexes","type":76,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2367711663u32, ()>,>>::Type"},{"name":"tw_ur_entries","type":81,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n162514917u32, ()>,>>::Type"},{"name":"interest_rate_model","type":87,"typeName":"> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1245349405u32, ()>,>>::Type"},{"name":"account_reserve_datas","type":95,"typeName":">,::ink::\nstorage::traits::ManualKey<\nSTORAGE_KEY_LENDINGPOOLSTORAGE_ACCOUNT_RESERVE_DATAS>> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2992521879u32, ()>,>>::Type"},{"name":"account_configs","type":99,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1614063893u32, ()>,>>::Type"},{"name":"flash_loan_fee_e6","type":104,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3559927490u32, ()>,>>::Type"}]}},"path":["abax_contracts","lending_pool","implementation","storage","LendingPoolStorage"]}},{"id":119,"type":{"def":{"composite":{"fields":[{"name":"counter_to_account","type":108,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2859321869u32, ()>,>>::Type"},{"name":"account_to_counter","type":112,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1646532013u32, ()>,>>::Type"},{"name":"next_counter","type":43,"typeName":",>>::Type"}]}},"path":["abax_contracts","account_registrar","implementation","storage","account_registrar","AccountRegistrar"]}},{"id":120,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":121}],"path":["Result"]}},{"id":121,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":122,"type":{"def":{"variant":{"variants":[{"fields":[{"type":123}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":123},{"name":"E","type":121}],"path":["Result"]}},{"id":123,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":124}],"path":["Result"]}},{"id":124,"type":{"def":{"variant":{"variants":[{"fields":[{"type":125,"typeName":"PSP22Error"}],"index":0,"name":"PSP22Error"},{"fields":[{"type":127,"typeName":"AccessControlError"}],"index":1,"name":"AccessControlError"},{"fields":[{"type":128,"typeName":"MathError"}],"index":2,"name":"MathError"},{"fields":[{"type":129,"typeName":"AssetRulesError"}],"index":3,"name":"AssetRulesError"},{"fields":[{"type":130,"typeName":"ReserveDataError"}],"index":4,"name":"ReserveDataError"},{"fields":[{"type":131,"typeName":"ReserveRestrictionsError"}],"index":5,"name":"ReserveRestrictionsError"},{"fields":[{"type":132,"typeName":"PriceFeedError"}],"index":6,"name":"PriceFeedError"},{"fields":[{"type":133,"typeName":"FlashLoanReceiverError"}],"index":7,"name":"FlashLoanReceiverError"},{"index":8,"name":"AmountNotGreaterThanZero"},{"index":9,"name":"AlreadyRegistered"},{"index":10,"name":"AssetNotRegistered"},{"index":11,"name":"AssetIsProtocolStablecoin"},{"index":12,"name":"AssetIsNotProtocolStablecoin"},{"index":13,"name":"RuleBorrowDisable"},{"index":14,"name":"RuleCollateralDisable"},{"index":15,"name":"InsufficientCollateral"},{"index":16,"name":"InsufficientDebt"},{"index":17,"name":"Collaterized"},{"index":18,"name":"InsufficientDeposit"},{"index":19,"name":"MinimumRecieved"},{"index":20,"name":"NothingToRepay"},{"index":21,"name":"NothingToCompensateWith"},{"index":22,"name":"TakingNotACollateral"},{"index":23,"name":"VectorsInconsistentLengths"},{"index":24,"name":"MarketRuleInvalidId"},{"index":25,"name":"DepositFeeTooHigh"},{"fields":[{"type":11,"typeName":"u8"}],"index":26,"name":"TwEntryInvalidIndex"},{"index":27,"name":"TooEarlyToAdjustRate"}]}},"path":["abax_contracts","lending_pool","errors","LendingPoolError"]}},{"id":125,"type":{"def":{"variant":{"variants":[{"fields":[{"type":126,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":126,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":126,"type":{"def":{"primitive":"str"}}},{"id":127,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":128,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Underflow"},{"index":1,"name":"Overflow"},{"index":2,"name":"DivByZero"}]}},"path":["pendzl_lang","math","errors","MathError"]}},{"id":129,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidAssetRule"}]}},"path":["abax_library","structs","asset_rules","AssetRulesError"]}},{"id":130,"type":{"def":{"variant":{"variants":[{"index":0,"name":"AlreadySet"},{"index":1,"name":"Inactive"},{"index":2,"name":"Frozen"}]}},"path":["abax_library","structs","reserve_data","ReserveDataError"]}},{"id":131,"type":{"def":{"variant":{"variants":[{"index":0,"name":"MaxDebtReached"},{"index":1,"name":"MaxDepositReached"},{"index":2,"name":"MinimalDebt"},{"index":3,"name":"MinimalCollateral"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictionsError"]}},{"id":132,"type":{"def":{"variant":{"variants":[{"index":0,"name":"NoSuchAsset"},{"index":1,"name":"NoPriceFeed"}]}},"path":["abax_contracts","price_feed","errors","PriceFeedError"]}},{"id":133,"type":{"def":{"variant":{"variants":[{"fields":[{"type":128,"typeName":"MathError"}],"index":0,"name":"MathErorr"},{"fields":[{"type":126,"typeName":"String"}],"index":1,"name":"Custom"}]}},"path":["abax_contracts","flash_loan_receiver","errors","FlashLoanReceiverError"]}},{"id":134,"type":{"def":{"sequence":{"type":11}}}},{"id":135,"type":{"def":{"variant":{"variants":[{"fields":[{"type":136}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":136},{"name":"E","type":121}],"path":["Result"]}},{"id":136,"type":{"def":{"variant":{"variants":[{"fields":[{"type":43}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":43},{"name":"E","type":124}],"path":["Result"]}},{"id":137,"type":{"def":{"sequence":{"type":138}}}},{"id":138,"type":{"def":{"composite":{"fields":[{"name":"op","type":139,"typeName":"Operation"},{"name":"args","type":140,"typeName":"OperationArgs"}]}},"path":["abax_library","structs","multi_op","Action"]}},{"id":139,"type":{"def":{"variant":{"variants":[{"index":0,"name":"Deposit"},{"index":1,"name":"Withdraw"},{"index":2,"name":"Borrow"},{"index":3,"name":"Repay"}]}},"path":["abax_library","structs","multi_op","Operation"]}},{"id":140,"type":{"def":{"composite":{"fields":[{"name":"asset","type":9,"typeName":"AccountId"},{"name":"amount","type":43,"typeName":"Balance"}]}},"path":["abax_library","structs","multi_op","OperationArgs"]}},{"id":141,"type":{"def":{"variant":{"variants":[{"fields":[{"type":142}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":142},{"name":"E","type":121}],"path":["Result"]}},{"id":142,"type":{"def":{"variant":{"variants":[{"fields":[{"type":143}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":143},{"name":"E","type":124}],"path":["Result"]}},{"id":143,"type":{"def":{"tuple":[43,43]}}},{"id":144,"type":{"def":{"sequence":{"type":9}}}},{"id":145,"type":{"def":{"sequence":{"type":43}}}},{"id":146,"type":{"def":{"variant":{"variants":[{"fields":[{"type":147}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":147},{"name":"E","type":121}],"path":["Result"]}},{"id":147,"type":{"def":{"variant":{"variants":[{"fields":[{"type":58}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":58},{"name":"E","type":124}],"path":["Result"]}},{"id":148,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":0,"typeName":"u32"},{"name":"deposit_fee_e6","type":0,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":149,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":150}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":150}],"path":["Option"]}},{"id":150,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":0,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":58,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":58,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":58,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":151,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":144}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":144}],"path":["Option"]}},{"id":152,"type":{"def":{"variant":{"variants":[{"fields":[{"type":153}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":153},{"name":"E","type":121}],"path":["Result"]}},{"id":153,"type":{"def":{"variant":{"variants":[{"fields":[{"type":154}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":154},{"name":"E","type":124}],"path":["Result"]}},{"id":154,"type":{"def":{"sequence":{"type":155}}}},{"id":155,"type":{"def":{"tuple":[9,43]}}},{"id":156,"type":{"def":{"variant":{"variants":[{"fields":[{"type":43}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":43},{"name":"E","type":121}],"path":["Result"]}},{"id":157,"type":{"def":{"variant":{"variants":[{"fields":[{"type":158}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":158},{"name":"E","type":121}],"path":["Result"]}},{"id":158,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":159,"type":{"def":{"variant":{"variants":[{"fields":[{"type":144}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":144},{"name":"E","type":121}],"path":["Result"]}},{"id":160,"type":{"def":{"variant":{"variants":[{"fields":[{"type":161}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":161},{"name":"E","type":121}],"path":["Result"]}},{"id":161,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":72}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":72}],"path":["Option"]}},{"id":162,"type":{"def":{"variant":{"variants":[{"fields":[{"type":163}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":163},{"name":"E","type":121}],"path":["Result"]}},{"id":163,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":61}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":61}],"path":["Option"]}},{"id":164,"type":{"def":{"variant":{"variants":[{"fields":[{"type":165}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":165},{"name":"E","type":121}],"path":["Result"]}},{"id":165,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":88}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":88}],"path":["Option"]}},{"id":166,"type":{"def":{"variant":{"variants":[{"fields":[{"type":167}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":167},{"name":"E","type":121}],"path":["Result"]}},{"id":167,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":54}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":54}],"path":["Option"]}},{"id":168,"type":{"def":{"variant":{"variants":[{"fields":[{"type":169}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":169},{"name":"E","type":121}],"path":["Result"]}},{"id":169,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":49}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":49}],"path":["Option"]}},{"id":170,"type":{"def":{"variant":{"variants":[{"fields":[{"type":42}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":42},{"name":"E","type":121}],"path":["Result"]}},{"id":171,"type":{"def":{"variant":{"variants":[{"fields":[{"type":172}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":172},{"name":"E","type":121}],"path":["Result"]}},{"id":172,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":62}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":62}],"path":["Option"]}},{"id":173,"type":{"def":{"variant":{"variants":[{"fields":[{"type":94}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":94},{"name":"E","type":121}],"path":["Result"]}},{"id":174,"type":{"def":{"variant":{"variants":[{"fields":[{"type":100}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":100},{"name":"E","type":121}],"path":["Result"]}},{"id":175,"type":{"def":{"variant":{"variants":[{"fields":[{"type":176}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":176},{"name":"E","type":121}],"path":["Result"]}},{"id":176,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":39}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":39}],"path":["Option"]}},{"id":177,"type":{"def":{"variant":{"variants":[{"fields":[{"type":178}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":178},{"name":"E","type":121}],"path":["Result"]}},{"id":178,"type":{"def":{"tuple":[70,43]}}},{"id":179,"type":{"def":{"variant":{"variants":[{"fields":[{"type":154}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":154},{"name":"E","type":121}],"path":["Result"]}},{"id":180,"type":{"def":{"variant":{"variants":[{"fields":[{"type":181}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":181},{"name":"E","type":121}],"path":["Result"]}},{"id":181,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":77}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":77}],"path":["Option"]}},{"id":182,"type":{"def":{"variant":{"variants":[{"fields":[{"type":183}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":183},{"name":"E","type":121}],"path":["Result"]}},{"id":183,"type":{"def":{"sequence":{"type":184}}}},{"id":184,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":83}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":83}],"path":["Option"]}},{"id":185,"type":{"def":{"variant":{"variants":[{"fields":[{"type":186}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":186},{"name":"E","type":121}],"path":["Result"]}},{"id":186,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":124}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":124}],"path":["Result"]}},{"id":187,"type":{"def":{"variant":{"variants":[{"fields":[{"type":8}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":8},{"name":"E","type":121}],"path":["Result"]}},{"id":188,"type":{"def":{"variant":{"variants":[{"fields":[{"type":70}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":70},{"name":"E","type":121}],"path":["Result"]}},{"id":189,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":121}],"path":["Result"]}},{"id":190,"type":{"def":{"variant":{"variants":[{"fields":[{"type":191}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":191},{"name":"E","type":121}],"path":["Result"]}},{"id":191,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":127}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":127}],"path":["Result"]}},{"id":192,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":193,"type":{"def":{"variant":{"variants":[{"fields":[{"type":194}],"index":0,"name":"Ok"},{"fields":[{"type":121}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":194},{"name":"E","type":121}],"path":["Result"]}},{"id":194,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":195}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":195}],"path":["Result"]}},{"id":195,"type":{"def":{"variant":{"variants":[{"fields":[{"type":126,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"SetCodeHashFailed"},{"fields":[{"type":126,"typeName":"String"}],"index":2,"name":"PermissionError"}]}},"path":["pendzl_contracts","upgradeability","set_code_hash","SetCodeHashError"]}},{"id":196,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/lending_pool.json b/artifacts/lending_pool.json new file mode 100644 index 0000000..b165200 --- /dev/null +++ b/artifacts/lending_pool.json @@ -0,0 +1,8364 @@ +{ + "source": { + "hash": "0x9d0661fc3d611a2964851f42911c3c2735548ab4e0d599f49b246000f11f38c2", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "lending_pool", + "version": "1.0.0", + "authors": ["Konrad Wierzbik "], + "description": "Abax Protocol Lending Pool contract", + "license": "BUSL-1.1" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "admin", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 120 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 43 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 196 + }, + "hash": { + "displayName": ["Hash"], + "type": 192 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 58 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 43 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 11 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 126 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 126 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 43 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 150 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 54 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 148 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 42 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 42 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 42 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 58 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 121 + }, + "messages": [ + { + "args": [ + { + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::choose_market_rule", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0xda8c1f74" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "use_as_collateral", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::set_as_collateral", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x71c9338d" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::deposit", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x1e881f6c" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::withdraw", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0x521ea90e" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::borrow", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x0409402c" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::repay", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 135 + }, + "selector": "0xd12830e6" + }, + { + "args": [ + { + "label": "actions", + "type": { + "displayName": ["Vec"], + "type": 137 + } + }, + { + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::multi_op", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0xa2a60fd4" + }, + { + "args": [ + { + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount_to_repay", + "type": { + "displayName": ["Balance"], + "type": 43 + } + }, + { + "label": "minimum_recieved_for_one_repaid_token_e18", + "type": { + "displayName": ["u128"], + "type": 43 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolActions::liquidate", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 141 + }, + "selector": "0xcd686df3" + }, + { + "args": [ + { + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "assets", + "type": { + "displayName": ["Vec"], + "type": 144 + } + }, + { + "label": "amounts", + "type": { + "displayName": ["Vec"], + "type": 145 + } + }, + { + "label": "receiver_params", + "type": { + "displayName": ["Vec"], + "type": 134 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolFlash::flash_loan", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x81b31ee7" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolMaintain::accumulate_interest", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0xf58c7316" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "guessed_index", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolMaintain::adjust_rate_at_target", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 146 + }, + "selector": "0x3215f476" + }, + { + "args": [ + { + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_price_feed_provider", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x0803b99f" + }, + { + "args": [ + { + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_fee_reduction_provider", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0xfb2e29bd" + }, + { + "args": [ + { + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 43 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_flash_loan_fee_e6", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x02b32af2" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 126 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 126 + } + }, + { + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 11 + } + }, + { + "label": "asset_rules", + "type": { + "displayName": ["AssetRules"], + "type": 41 + } + }, + { + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 54 + } + }, + { + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 148 + } + }, + { + "label": "interest_rate_model", + "type": { + "displayName": ["Option"], + "type": 149 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::register_asset", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x63ca0624" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "active", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_reserve_is_active", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x1896b613" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "freeze", + "type": { + "displayName": ["bool"], + "type": 70 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_reserve_is_frozen", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x7a66039f" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "interest_rate_model", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 150 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_interest_rate_model", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x984e8190" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 54 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_reserve_restrictions", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x65e86045" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 148 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_reserve_fees", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x39e6a33a" + }, + { + "args": [ + { + "label": "market_rule", + "type": { + "displayName": ["MarketRule"], + "type": 39 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::add_market_rule", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0xc240467e" + }, + { + "args": [ + { + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + }, + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "asset_rules", + "type": { + "displayName": ["AssetRules"], + "type": 41 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::modify_asset_rule", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x276c5154" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 151 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::take_protocol_income", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 152 + }, + "selector": "0x01144880" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 58 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolManage::set_stablecoin_debt_rate_e18", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 122 + }, + "selector": "0x04dddbca" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "LendingPoolView::view_flash_loan_fee_e6", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0x03acc819" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_asset_id", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 157 + }, + "selector": "0x82c726b7" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "LendingPoolView::view_registered_assets", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 159 + }, + "selector": "0x7ee520ac" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_data", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 160 + }, + "selector": "0xc4adf4e3" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_unupdated_reserve_indexes", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 162 + }, + "selector": "0x2b038385" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_interest_rate_model", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 164 + }, + "selector": "0x83fc3d9a" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_restrictions", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 166 + }, + "selector": "0xe27ee044" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_tokens", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 168 + }, + "selector": "0x6ea8d1e8" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_decimal_multiplier", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0x98295700" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_indexes", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 162 + }, + "selector": "0xd179c3bb" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_reserve_fees", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 171 + }, + "selector": "0xeefa7bc4" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_unupdated_account_reserve_data", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x252b91d3" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_account_reserve_data", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 173 + }, + "selector": "0x650525e7" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_account_config", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 174 + }, + "selector": "0x40f1456f" + }, + { + "args": [ + { + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_market_rule", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 175 + }, + "selector": "0x5e701ec3" + }, + { + "args": [ + { + "label": "account_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::get_account_free_collateral_coefficient", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 177 + }, + "selector": "0xbcbe0fae" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Option"], + "type": 151 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_protocol_income", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 179 + }, + "selector": "0xa6121b9f" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_asset_tw_index", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 180 + }, + "selector": "0x844d39fc" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "from", + "type": { + "displayName": ["u32"], + "type": 0 + } + }, + { + "label": "to", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_asset_tw_entries", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 182 + }, + "selector": "0x3ab4b976" + }, + { + "args": [ + { + "label": "period", + "type": { + "displayName": ["u64"], + "type": 58 + } + }, + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "guessed_index", + "type": { + "displayName": ["u32"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolView::view_tw_ur_from_period_longer_than", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 185 + }, + "selector": "0x6571d519" + }, + { + "args": [ + { + "label": "counter", + "type": { + "displayName": ["u128"], + "type": 43 + } + } + ], + "default": false, + "docs": [], + "label": "AccountRegistrarView::view_counter_to_account", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 187 + }, + "selector": "0xc2b475f3" + }, + { + "args": [ + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "AccountRegistrarView::view_account_to_counter", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 170 + }, + "selector": "0x6388e197" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AccountRegistrarView::view_next_counter", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0x2dec1123" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolATokenInterface::total_deposit_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0x58114dc5" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolATokenInterface::account_deposit_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0xf39cab53" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolATokenInterface::transfer_deposit_from_to", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 141 + }, + "selector": "0x48009b8d" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolVTokenInterface::total_debt_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0x89418024" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolVTokenInterface::account_debt_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 156 + }, + "selector": "0xe9787c86" + }, + { + "args": [ + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 43 + } + } + ], + "default": false, + "docs": [], + "label": "LendingPoolVTokenInterface::transfer_debt_from_to", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 141 + }, + "selector": "0x714b3576" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 188 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 189 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 190 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 190 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 190 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 190 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "set_code_hash", + "type": { + "displayName": ["Hash"], + "type": 192 + } + } + ], + "default": false, + "docs": [], + "label": "SetCodeHash::set_code_hash", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 193 + }, + "selector": "0xabb60cdf" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x3ab3a5a0", + "ty": 9 + } + }, + "root_key": "0x3ab3a5a0", + "ty": 15 + } + }, + "name": "price_feed_provider" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf641682d", + "ty": 9 + } + }, + "root_key": "0xf641682d", + "ty": 19 + } + }, + "name": "fee_reduction_provider" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xee82fd26", + "ty": 0 + } + }, + "root_key": "0xee82fd26", + "ty": 23 + } + }, + "name": "next_asset_id" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x4af3fcee", + "ty": 0 + } + }, + "root_key": "0x4af3fcee", + "ty": 27 + } + }, + "name": "asset_to_id" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xcd81e137", + "ty": 9 + } + }, + "root_key": "0xcd81e137", + "ty": 31 + } + }, + "name": "id_to_asset" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xce3b3b19", + "ty": 0 + } + }, + "root_key": "0xce3b3b19", + "ty": 35 + } + }, + "name": "next_rule_id" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf0b5aa20", + "ty": 39 + } + }, + "root_key": "0xf0b5aa20", + "ty": 44 + } + }, + "name": "market_rules" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xca5d7011", + "ty": 9 + } + }, + "name": "a_token_address" + }, + { + "layout": { + "leaf": { + "key": "0xca5d7011", + "ty": 9 + } + }, + "name": "v_token_address" + } + ], + "name": "ReserveAbacusTokens" + } + }, + "root_key": "0xca5d7011", + "ty": 48 + } + }, + "name": "reserve_abacus_tokens" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "enum": { + "dispatchKey": "0xdcc6b6bc", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xdcc6b6bc", + "ty": 43 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "maximal_total_deposit" + }, + { + "layout": { + "enum": { + "dispatchKey": "0xdcc6b6bc", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xdcc6b6bc", + "ty": 43 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "name": "maximal_total_debt" + }, + { + "layout": { + "leaf": { + "key": "0xdcc6b6bc", + "ty": 43 + } + }, + "name": "minimal_collateral" + }, + { + "layout": { + "leaf": { + "key": "0xdcc6b6bc", + "ty": 43 + } + }, + "name": "minimal_debt" + } + ], + "name": "ReserveRestrictions" + } + }, + "root_key": "0xdcc6b6bc", + "ty": 53 + } + }, + "name": "reserve_restrictions" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 43 + } + }, + "name": "deposit_index_e18" + }, + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 43 + } + }, + "name": "debt_index_e18" + }, + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 58 + } + }, + "name": "update_timestamp" + } + ], + "name": "ReserveIndexes" + } + }, + "name": "indexes" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 0 + } + }, + "name": "deposit_fee_e6" + }, + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 0 + } + }, + "name": "debt_fee_e6" + }, + { + "layout": { + "leaf": { + "key": "0x7d7eb08f", + "ty": 43 + } + }, + "name": "earned_fee" + } + ], + "name": "ReserveFees" + } + }, + "name": "fees" + } + ], + "name": "ReserveIndexesAndFees" + } + }, + "root_key": "0x7d7eb08f", + "ty": 59 + } + }, + "name": "reserve_indexes_and_fees" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x8a625a42", + "ty": 43 + } + }, + "root_key": "0x8a625a42", + "ty": 66 + } + }, + "name": "reserve_decimal_multiplier" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 70 + } + }, + "name": "activated" + }, + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 70 + } + }, + "name": "frozen" + }, + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 43 + } + }, + "name": "total_deposit" + }, + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 58 + } + }, + "name": "current_deposit_rate_e18" + }, + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 43 + } + }, + "name": "total_debt" + }, + { + "layout": { + "leaf": { + "key": "0xe5839166", + "ty": 58 + } + }, + "name": "current_debt_rate_e18" + } + ], + "name": "ReserveData" + } + }, + "root_key": "0xe5839166", + "ty": 71 + } + }, + "name": "reserve_datas" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x089a4581", + "ty": 0 + } + }, + "name": "value" + } + ], + "name": "TwIndex" + } + }, + "root_key": "0x089a4581", + "ty": 76 + } + }, + "name": "tw_ur_indexes" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xa9eb3191", + "ty": 58 + } + }, + "name": "timestamp" + }, + { + "layout": { + "leaf": { + "key": "0xa9eb3191", + "ty": 58 + } + }, + "name": "accumulator" + } + ], + "name": "TwEntry" + } + }, + "root_key": "0xa9eb3191", + "ty": 81 + } + }, + "name": "tw_ur_entries" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 0 + } + }, + "name": "target_ur_e6" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "min_rate_at_target_e18" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "max_rate_at_target_e18" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "rate_at_target_ur_e18" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "rate_at_max_ur_e18" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "minimal_time_between_adjustments" + }, + { + "layout": { + "leaf": { + "key": "0x9e3b1a82", + "ty": 58 + } + }, + "name": "last_adjustment_timestamp" + } + ], + "name": "InterestRateModel" + } + }, + "root_key": "0x9e3b1a82", + "ty": 87 + } + }, + "name": "interest_rate_model" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x0eaba772", + "ty": 92 + } + }, + "root_key": "0x0eaba772", + "ty": 95 + } + }, + "name": "account_reserve_datas" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xbef224e0", + "ty": 43 + } + }, + "name": "deposits" + }, + { + "layout": { + "leaf": { + "key": "0xbef224e0", + "ty": 43 + } + }, + "name": "collaterals" + }, + { + "layout": { + "leaf": { + "key": "0xbef224e0", + "ty": 43 + } + }, + "name": "borrows" + }, + { + "layout": { + "leaf": { + "key": "0xbef224e0", + "ty": 0 + } + }, + "name": "market_rule_id" + } + ], + "name": "AccountConfig" + } + }, + "root_key": "0xbef224e0", + "ty": 99 + } + }, + "name": "account_configs" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd89f1591", + "ty": 43 + } + }, + "root_key": "0xd89f1591", + "ty": 104 + } + }, + "name": "flash_loan_fee_e6" + } + ], + "name": "LendingPoolStorage" + } + }, + "name": "lending_pool" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x12debe72", + "ty": 9 + } + }, + "root_key": "0x12debe72", + "ty": 108 + } + }, + "name": "counter_to_account" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x270fce1c", + "ty": 43 + } + }, + "root_key": "0x270fce1c", + "ty": 112 + } + }, + "name": "account_to_counter" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 43 + } + }, + "name": "next_counter" + } + ], + "name": "AccountRegistrar" + } + }, + "name": "account_registrar" + } + ], + "name": "LendingPool" + } + }, + "root_key": "0x00000000", + "ty": 116 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 16 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 17 + }, + { + "name": "R", + "type": 18 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 20 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 21 + }, + { + "name": "R", + "type": 22 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 24 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 25 + }, + { + "name": "R", + "type": 26 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 28 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 29 + }, + { + "name": "R", + "type": 30 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 32 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 33 + }, + { + "name": "R", + "type": 34 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 36 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 37 + }, + { + "name": "R", + "type": 38 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 39, + "type": { + "def": { + "sequence": { + "type": 40 + } + } + } + }, + { + "id": 40, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 41 + } + ], + "path": ["Option"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "collateral_coefficient_e6", + "type": 42, + "typeName": "Option" + }, + { + "name": "borrow_coefficient_e6", + "type": 42, + "typeName": "Option" + }, + { + "name": "penalty_e6", + "type": 42, + "typeName": "Option" + } + ] + } + }, + "path": ["abax_library", "structs", "asset_rules", "AssetRules"] + } + }, + { + "id": 42, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 43 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 43 + } + ], + "path": ["Option"] + } + }, + { + "id": 43, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 44, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 39 + }, + { + "name": "KeyType", + "type": 45 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 46 + }, + { + "name": "R", + "type": 47 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 46, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 47, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 48, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 49 + }, + { + "name": "KeyType", + "type": 50 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 49, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "a_token_address", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "v_token_address", + "type": 9, + "typeName": "AccountId" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_abacus_tokens", "ReserveAbacusTokens"] + } + }, + { + "id": 50, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 51 + }, + { + "name": "R", + "type": 52 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 51, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 52, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 53, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 54 + }, + { + "name": "KeyType", + "type": 55 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 54, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 42, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 42, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 43, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 43, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 55, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 56 + }, + { + "name": "R", + "type": 57 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 56, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 57, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 58, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 59, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 60 + }, + { + "name": "KeyType", + "type": 63 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 60, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "indexes", + "type": 61, + "typeName": "ReserveIndexes" + }, + { + "name": "fees", + "type": 62, + "typeName": "ReserveFees" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_indexes_and_fees", "ReserveIndexesAndFees"] + } + }, + { + "id": 61, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit_index_e18", + "type": 43, + "typeName": "u128" + }, + { + "name": "debt_index_e18", + "type": 43, + "typeName": "u128" + }, + { + "name": "update_timestamp", + "type": 58, + "typeName": "Timestamp" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_indexes_and_fees", "ReserveIndexes"] + } + }, + { + "id": 62, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "debt_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "earned_fee", + "type": 43, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_indexes_and_fees", "ReserveFees"] + } + }, + { + "id": 63, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 64 + }, + { + "name": "R", + "type": 65 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 64, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 65, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 66, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 43 + }, + { + "name": "KeyType", + "type": 67 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 67, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 68 + }, + { + "name": "R", + "type": 69 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 68, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 69, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 70, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 71, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 72 + }, + { + "name": "KeyType", + "type": 73 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 72, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "activated", + "type": 70, + "typeName": "bool" + }, + { + "name": "frozen", + "type": 70, + "typeName": "bool" + }, + { + "name": "total_deposit", + "type": 43, + "typeName": "Balance" + }, + { + "name": "current_deposit_rate_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "total_debt", + "type": 43, + "typeName": "Balance" + }, + { + "name": "current_debt_rate_e18", + "type": 58, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_data", "ReserveData"] + } + }, + { + "id": 73, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 74 + }, + { + "name": "R", + "type": 75 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 74, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 75, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 76, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 77 + }, + { + "name": "KeyType", + "type": 78 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 77, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_library", "structs", "tw", "TwIndex"] + } + }, + { + "id": 78, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 79 + }, + { + "name": "R", + "type": 80 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 79, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 80, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 81, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 82 + }, + { + "name": "V", + "type": 83 + }, + { + "name": "KeyType", + "type": 84 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 82, + "type": { + "def": { + "tuple": [0, 0] + } + } + }, + { + "id": 83, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "timestamp", + "type": 58, + "typeName": "Timestamp" + }, + { + "name": "accumulator", + "type": 58, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "tw", "TwEntry"] + } + }, + { + "id": 84, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 85 + }, + { + "name": "R", + "type": 86 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 85, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 86, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 87, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 88 + }, + { + "name": "KeyType", + "type": 89 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 88, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "rate_at_target_ur_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 58, + "typeName": "u64" + }, + { + "name": "last_adjustment_timestamp", + "type": 58, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModel"] + } + }, + { + "id": 89, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 90 + }, + { + "name": "R", + "type": 91 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 90, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 91, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 92, + "type": { + "def": { + "sequence": { + "type": 93 + } + } + } + }, + { + "id": 93, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 94 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 94 + } + ], + "path": ["Option"] + } + }, + { + "id": 94, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposit", + "type": 43, + "typeName": "Balance" + }, + { + "name": "debt", + "type": 43, + "typeName": "Balance" + }, + { + "name": "applied_deposit_index_e18", + "type": 43, + "typeName": "u128" + }, + { + "name": "applied_debt_index_e18", + "type": 43, + "typeName": "u128" + } + ] + } + }, + "path": ["abax_library", "structs", "account_reserve_data", "AccountReserveData"] + } + }, + { + "id": 95, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 92 + }, + { + "name": "KeyType", + "type": 96 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 96, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 97 + }, + { + "name": "R", + "type": 98 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 97, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 98, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 99, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 100 + }, + { + "name": "KeyType", + "type": 101 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 100, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "deposits", + "type": 43, + "typeName": "Bitmap128" + }, + { + "name": "collaterals", + "type": 43, + "typeName": "Bitmap128" + }, + { + "name": "borrows", + "type": 43, + "typeName": "Bitmap128" + }, + { + "name": "market_rule_id", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_library", "structs", "account_config", "AccountConfig"] + } + }, + { + "id": 101, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 102 + }, + { + "name": "R", + "type": 103 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 102, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 103, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 104, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 43 + }, + { + "name": "KeyType", + "type": 105 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 105, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 106 + }, + { + "name": "R", + "type": 107 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 106, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 107, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 108, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 43 + }, + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 109 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 109, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 110 + }, + { + "name": "R", + "type": 111 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 110, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 111, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 112, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 43 + }, + { + "name": "KeyType", + "type": 113 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 113, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 114 + }, + { + "name": "R", + "type": 115 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 114, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 115, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 116, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 117, + "typeName": ",>>::Type" + }, + { + "name": "lending_pool", + "type": 118, + "typeName": ",>>::Type" + }, + { + "name": "account_registrar", + "type": 119, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["lending_pool", "lending_pool", "LendingPool"] + } + }, + { + "id": 117, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 118, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "price_feed_provider", + "type": 15, + "typeName": "<::ink::storage::Lazy> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2243355402u32, ()>,>>::Type" + }, + { + "name": "fee_reduction_provider", + "type": 19, + "typeName": "<::ink::storage::Lazy> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2973045936u32, ()>,>>::Type" + }, + { + "name": "next_asset_id", + "type": 23, + "typeName": "<::ink::storage::Lazy> as::ink::\nstorage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2237726991u32, ()>,>>::Type" + }, + { + "name": "asset_to_id", + "type": 27, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n1688824587u32, ()>,>>::Type" + }, + { + "name": "id_to_asset", + "type": 31, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n3939954493u32, ()>,>>::Type" + }, + { + "name": "next_rule_id", + "type": 35, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n703277257u32, ()>,>>::Type" + }, + { + "name": "market_rules", + "type": 44, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n4276827247u32, ()>,>>::Type" + }, + { + "name": "reserve_abacus_tokens", + "type": 48, + "typeName": "> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<4202749207u32, ()>,>>::Type" + }, + { + "name": "reserve_restrictions", + "type": 53, + "typeName": "> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<2879247353u32, ()>,>>::Type" + }, + { + "name": "reserve_indexes_and_fees", + "type": 59, + "typeName": "> as::\nink::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<3680404393u32, ()>,>>::Type" + }, + { + "name": "reserve_decimal_multiplier", + "type": 66, + "typeName": "> as\n::ink::storage::traits::AutoStorableHint<::ink::storage::traits\n::ManualKey<1889413413u32, ()>,>>::Type" + }, + { + "name": "reserve_datas", + "type": 71, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2235127083u32, ()>,>>::Type" + }, + { + "name": "tw_ur_indexes", + "type": 76, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2367711663u32, ()>,>>::Type" + }, + { + "name": "tw_ur_entries", + "type": 81, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n162514917u32, ()>,>>::Type" + }, + { + "name": "interest_rate_model", + "type": 87, + "typeName": "> as::ink\n::storage::traits::AutoStorableHint<::ink::storage::traits::\nManualKey<1245349405u32, ()>,>>::Type" + }, + { + "name": "account_reserve_datas", + "type": 95, + "typeName": ">,::ink::\nstorage::traits::ManualKey<\nSTORAGE_KEY_LENDINGPOOLSTORAGE_ACCOUNT_RESERVE_DATAS>> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2992521879u32, ()>,>>::Type" + }, + { + "name": "account_configs", + "type": 99, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1614063893u32, ()>,>>::Type" + }, + { + "name": "flash_loan_fee_e6", + "type": 104, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3559927490u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "implementation", "storage", "LendingPoolStorage"] + } + }, + { + "id": 119, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "counter_to_account", + "type": 108, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2859321869u32, ()>,>>::Type" + }, + { + "name": "account_to_counter", + "type": 112, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1646532013u32, ()>,>>::Type" + }, + { + "name": "next_counter", + "type": 43, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["abax_contracts", "account_registrar", "implementation", "storage", "account_registrar", "AccountRegistrar"] + } + }, + { + "id": 120, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 121, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 122, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 123 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 123 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 123, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 124, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 125, + "typeName": "PSP22Error" + } + ], + "index": 0, + "name": "PSP22Error" + }, + { + "fields": [ + { + "type": 127, + "typeName": "AccessControlError" + } + ], + "index": 1, + "name": "AccessControlError" + }, + { + "fields": [ + { + "type": 128, + "typeName": "MathError" + } + ], + "index": 2, + "name": "MathError" + }, + { + "fields": [ + { + "type": 129, + "typeName": "AssetRulesError" + } + ], + "index": 3, + "name": "AssetRulesError" + }, + { + "fields": [ + { + "type": 130, + "typeName": "ReserveDataError" + } + ], + "index": 4, + "name": "ReserveDataError" + }, + { + "fields": [ + { + "type": 131, + "typeName": "ReserveRestrictionsError" + } + ], + "index": 5, + "name": "ReserveRestrictionsError" + }, + { + "fields": [ + { + "type": 132, + "typeName": "PriceFeedError" + } + ], + "index": 6, + "name": "PriceFeedError" + }, + { + "fields": [ + { + "type": 133, + "typeName": "FlashLoanReceiverError" + } + ], + "index": 7, + "name": "FlashLoanReceiverError" + }, + { + "index": 8, + "name": "AmountNotGreaterThanZero" + }, + { + "index": 9, + "name": "AlreadyRegistered" + }, + { + "index": 10, + "name": "AssetNotRegistered" + }, + { + "index": 11, + "name": "AssetIsProtocolStablecoin" + }, + { + "index": 12, + "name": "AssetIsNotProtocolStablecoin" + }, + { + "index": 13, + "name": "RuleBorrowDisable" + }, + { + "index": 14, + "name": "RuleCollateralDisable" + }, + { + "index": 15, + "name": "InsufficientCollateral" + }, + { + "index": 16, + "name": "InsufficientDebt" + }, + { + "index": 17, + "name": "Collaterized" + }, + { + "index": 18, + "name": "InsufficientDeposit" + }, + { + "index": 19, + "name": "MinimumRecieved" + }, + { + "index": 20, + "name": "NothingToRepay" + }, + { + "index": 21, + "name": "NothingToCompensateWith" + }, + { + "index": 22, + "name": "TakingNotACollateral" + }, + { + "index": 23, + "name": "VectorsInconsistentLengths" + }, + { + "index": 24, + "name": "MarketRuleInvalidId" + }, + { + "index": 25, + "name": "DepositFeeTooHigh" + }, + { + "fields": [ + { + "type": 11, + "typeName": "u8" + } + ], + "index": 26, + "name": "TwEntryInvalidIndex" + }, + { + "index": 27, + "name": "TooEarlyToAdjustRate" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "errors", "LendingPoolError"] + } + }, + { + "id": 125, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 126, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 126, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 126, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 127, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 128, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Underflow" + }, + { + "index": 1, + "name": "Overflow" + }, + { + "index": 2, + "name": "DivByZero" + } + ] + } + }, + "path": ["pendzl_lang", "math", "errors", "MathError"] + } + }, + { + "id": 129, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidAssetRule" + } + ] + } + }, + "path": ["abax_library", "structs", "asset_rules", "AssetRulesError"] + } + }, + { + "id": 130, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "AlreadySet" + }, + { + "index": 1, + "name": "Inactive" + }, + { + "index": 2, + "name": "Frozen" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_data", "ReserveDataError"] + } + }, + { + "id": 131, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "MaxDebtReached" + }, + { + "index": 1, + "name": "MaxDepositReached" + }, + { + "index": 2, + "name": "MinimalDebt" + }, + { + "index": 3, + "name": "MinimalCollateral" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictionsError"] + } + }, + { + "id": 132, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "NoSuchAsset" + }, + { + "index": 1, + "name": "NoPriceFeed" + } + ] + } + }, + "path": ["abax_contracts", "price_feed", "errors", "PriceFeedError"] + } + }, + { + "id": 133, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 128, + "typeName": "MathError" + } + ], + "index": 0, + "name": "MathErorr" + }, + { + "fields": [ + { + "type": 126, + "typeName": "String" + } + ], + "index": 1, + "name": "Custom" + } + ] + } + }, + "path": ["abax_contracts", "flash_loan_receiver", "errors", "FlashLoanReceiverError"] + } + }, + { + "id": 134, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 135, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 136 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 136 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 136, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 43 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 43 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 137, + "type": { + "def": { + "sequence": { + "type": 138 + } + } + } + }, + { + "id": 138, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "op", + "type": 139, + "typeName": "Operation" + }, + { + "name": "args", + "type": 140, + "typeName": "OperationArgs" + } + ] + } + }, + "path": ["abax_library", "structs", "multi_op", "Action"] + } + }, + { + "id": 139, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "Deposit" + }, + { + "index": 1, + "name": "Withdraw" + }, + { + "index": 2, + "name": "Borrow" + }, + { + "index": 3, + "name": "Repay" + } + ] + } + }, + "path": ["abax_library", "structs", "multi_op", "Operation"] + } + }, + { + "id": 140, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "asset", + "type": 9, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 43, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "multi_op", "OperationArgs"] + } + }, + { + "id": 141, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 142 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 142 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 142, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 143 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 143 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 143, + "type": { + "def": { + "tuple": [43, 43] + } + } + }, + { + "id": 144, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 145, + "type": { + "def": { + "sequence": { + "type": 43 + } + } + } + }, + { + "id": 146, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 147 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 147 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 147, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 58 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 58 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 148, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 149, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 150 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 150 + } + ], + "path": ["Option"] + } + }, + { + "id": 150, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 58, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 58, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 151, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 144 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 144 + } + ], + "path": ["Option"] + } + }, + { + "id": 152, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 153 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 153 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 153, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 154 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 154 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 154, + "type": { + "def": { + "sequence": { + "type": 155 + } + } + } + }, + { + "id": 155, + "type": { + "def": { + "tuple": [9, 43] + } + } + }, + { + "id": 156, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 43 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 43 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 157, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 158 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 158 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 158, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 159, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 144 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 144 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 160, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 161 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 161 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 161, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 72 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 72 + } + ], + "path": ["Option"] + } + }, + { + "id": 162, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 163 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 163 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 163, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 61 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 61 + } + ], + "path": ["Option"] + } + }, + { + "id": 164, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 165 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 165 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 165, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 88 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 88 + } + ], + "path": ["Option"] + } + }, + { + "id": 166, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 167 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 167 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 167, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 54 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 54 + } + ], + "path": ["Option"] + } + }, + { + "id": 168, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 169 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 169 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 169, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 49 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 49 + } + ], + "path": ["Option"] + } + }, + { + "id": 170, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 42 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 42 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 171, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 172 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 172 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 172, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 62 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 62 + } + ], + "path": ["Option"] + } + }, + { + "id": 173, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 94 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 94 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 174, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 100 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 100 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 175, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 176 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 176 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 176, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 39 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 39 + } + ], + "path": ["Option"] + } + }, + { + "id": 177, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 178 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 178 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 178, + "type": { + "def": { + "tuple": [70, 43] + } + } + }, + { + "id": 179, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 154 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 154 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 180, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 181 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 181 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 181, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 77 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 77 + } + ], + "path": ["Option"] + } + }, + { + "id": 182, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 183 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 183 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 183, + "type": { + "def": { + "sequence": { + "type": 184 + } + } + } + }, + { + "id": 184, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 83 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 83 + } + ], + "path": ["Option"] + } + }, + { + "id": 185, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 186 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 186 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 186, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 124 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 124 + } + ], + "path": ["Result"] + } + }, + { + "id": 187, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 8 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 8 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 188, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 70 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 70 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 189, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 190, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 191 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 191 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 191, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 127 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 127 + } + ], + "path": ["Result"] + } + }, + { + "id": 192, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 193, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 194 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 121 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 194 + }, + { + "name": "E", + "type": 121 + } + ], + "path": ["Result"] + } + }, + { + "id": 194, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 195 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 195 + } + ], + "path": ["Result"] + } + }, + { + "id": 195, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 126, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "SetCodeHashFailed" + }, + { + "fields": [ + { + "type": 126, + "typeName": "String" + } + ], + "index": 2, + "name": "PermissionError" + } + ] + } + }, + "path": ["pendzl_contracts", "upgradeability", "set_code_hash", "SetCodeHashError"] + } + }, + { + "id": 196, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/lending_pool.wasm b/artifacts/lending_pool.wasm new file mode 100644 index 0000000..e1c049c Binary files /dev/null and b/artifacts/lending_pool.wasm differ diff --git a/artifacts/price_feed_provider.contract b/artifacts/price_feed_provider.contract new file mode 100644 index 0000000..ce4e20c --- /dev/null +++ b/artifacts/price_feed_provider.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x41d6a4ccbe35e543e3d9c37bd93a133159480226151cd1b48667e9453751aae7","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001440b60027f7f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60017f017f60017f0060087f7f7e7f7f7f7f7f017f6000017f02ed010c057365616c310b6765745f73746f726167650006057365616c3005696e7075740000057365616c310463616c6c0009057365616c300d6465706f7369745f6576656e740005057365616c320b7365745f73746f726167650006057365616c310d636c6561725f73746f726167650001057365616c3110636f6e7461696e735f73746f726167650001057365616c300b7365616c5f72657475726e0002057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000203656e76066d656d6f727902010210032e2d030303030000000007000101000000080a020002050004040004000101010000000400020800020305000000070616037f01418080040b7f0041c083050b7f0041b483050b0711020463616c6c0024066465706c6f79002c0abb612d2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bb40201057f230041406a22022400200241146a200141086a2900003702002002411c6a200141106a290000370200200241246a200141186a2900003702002002418080043602082002200129000037020c200242808001370238200241b4830436023441ddafa7cb7e200241346a220410102002410c6a20041011024020022802382205200228023c2201490d00200228023421032002200520016b220536023420032001200120036a2203200410002101200520022802342206492001410f4f720d002000027e200141e780046a2d00002201410347044020014110470d02200220063602302002200336022c20042002412c6a101220022802342201418080808078460d0220022802300d0220022902380c010b418080808078210142100b37020420002001360200200241406b24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a4104101e200241106a24000b0a00200120004120101e0be80501087f230041106b22062400200641086a2001102502400240024020062802080d0020012802042205200628020c2202490d00024002402002450440410121030c010b20024100480d012006410120024101103320062802002203450d010b2003200128020022042002100b21032001200520026b3602042001200220046a3602002002450d02200241076b22014100200120024d1b2108200341036a417c7120036b210941002101034002400240024002400240024002400240024002400240200120036a2d0000220541187441187522074100480440200541f680046a2d000041026b0e03030102080b200920016b4103710d09200120084f0d080340200120036a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220420024f0d06200320046a2c000021040240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820044140480d050c080b200441607141a07f460d040c070b2004419f7f4a0d060c030b200141016a220420024f0d05200320046a2c000021040240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820044140480d020c080b200441f0006a41ff01714130490d010c070b2004418f7f4a0d060b200141026a220520024f0d05200320056a2c000041bf7f4a0d05200141036a220120024f0d05200120036a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200441404e0d030b200141026a220120024f0d02200120036a2c000041bf7f4c0d010c020b200120036a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c070b200120024f0d010340200120036a2c00004100480d022002200141016a2201470d000b0c050b200141016a21010b20012002490d000b0c020b000b20004180808080783602000c010b2000200236020820002002ad2003ad422086843702000b200641106a24000ba30101047f230041106b22012400200142808001370208200141b483043602042000200141046a22031014024020012802082204200128020c2200490d00200128020421022001200420006b220436020420022000200020026a2202200310002103200420012802042200490d00027f0240024020030e0400030301030b20004104472000410449720d0220022800000c010b41000b2100200141106a240020000f0b000b100041f88204200110362000200110100b1f00027f20002001101645044041012000418480041016450d011a0b41030b0b4f01017f230041306b22022400200220003602082002410c6a20014121100b1a41012101200241086a1037450440200241003a000c20022000360208200241086a103721010b200241306a240020010b8b0201047f230041306b22022400200241086a2001101802402002280208450440200228020c2103200220011019024020022d00000d000240024020022d000122040e020100020b200128020422054120490d012001200541206b36020420012001280200220141206a360200200241186a200141086a290000370300200241206a200141106a290000370300200241286a200141186a290000370300200220012900003703100b20002002290310370005200020043a0004200020033602002000411d6a200241286a290300370000200041156a200241206a2903003700002000410d6a200241186a2903003700000c020b200041023a00040c010b200041023a00040b200241306a24000b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b850101027f230041106b2201240020014180800136020c41b483042001410c6a1008200128020c2202418180014f2002411f4d72450440200041b58304290000370001200041096a41bd8304290000370000200041116a41c58304290000370000200041186a41cc8304290000370000200041b483042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1009200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b100020022001101d200220002001101e0b2401017f230041106b220224002002200136020c2002410c6a20001034200241106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100b1a200020043602080f0b000b000bec0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100103320042802082103200428020c0c020b2003280200210602402001200210262203450440410021030c010b200320062005100b1a0b20020c010b200420012002410010332004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b4401027f41b4830441003a000041012103200141ff0171410347044041b5830441013a000041022103200121020b200341b483046a20023a00002000200341016a1023000b130041b483044181023b0100410141021023000b5301037f230041106b22002400200042808001370208200041b483043602044100200041046a1010200028020c220120002802084b0440000b200028020422022001200120026a410010041a200041106a24000b0d00200041b4830420011007000bcb2f020d7f047e23004180026b22002400024002400240101b41ff01714105470d0020004180800136026841b48304200041e8006a100120002802682202418180014f0d00027f0240024020024104490d00200041b883043602f0012000200241046b22063602f40141b783042d0000210141b683042d0000210441b583042d0000210702400240024002400240024041b483042d0000220341ee006b0e0401060603000b0240024002400240024020034183016b0e05030a0a0a01000b20034139470440200341ca00460d04200341c101460d02200341ea01460d06200341d30147200741f70147722004410f47200141034772722006412049720d0a41002101200041f0006a220641cc8304290200370300200041f8006a220841d48304280200360200200041d883043602f0012000200241246b3602f401200041c4830429020037036841bb83042d0000210741b983042f0000210941c08304280200210241bc8304280200210541b883042d00002104200041186a200041f0016a101220002802182203418080808078460d0a200041c8016a2008280200360200200041c0016a2006290300370300200020002903683703b80120054108762106200029021c210d20092007411074720c0c0b2007413c47200441cd0047722001418201472006411f4d72720d09200041c0016a41cf8304290000370300200041c8016a41d783042d00003a0000200041c783042900003703b80141bf83042800002205410876210641c38304280000210241b983042f0000210841b883042d000021094101210141bb830428000022044108760c0b0b200741ee0147200441a5014772200141f80047720d08200041106a200041f0016a102520002802100d084101210520002802f401410576220220002802142201200120024b1b22040440200441ffffff1f4b0d0c200441057422024100480d0c41a483042d00001a2004418080802049200210262205450d0c0b41002102200041003602202000200536021c200020043602182001450d07034020002802f40122044120490d09200041f0006a220620002802f001220341086a290000370300200041f8006a2207200341106a29000037030020004180016a2208200341186a2900003703002000200441206b3602f4012000200341206a3602f0012000200329000037036820002802182002460440200041186a2104230041206b220324000240200241016a22020440410420042802002205410174220a20022002200a491b2202200241044d1b2202418080802049210a2002410574210b02402005450440200341003602180c010b200341013602182003200541057436021c200320042802043602140b200341086a200a200b200341146a101f2003280208450d01200328020c1a0b000b200328020c21052004200236020020042005360204200341206a2400200028021c2105200028022021020b200520024105746a22032000290368370000200341186a2008290300370000200341106a2007290300370000200341086a20062903003700002000200241016a2202360220200141016b22010d000b20002802182204418080808078460d080c090b200741d90147200441ac0147722001411847720d07200041e8006a200041f0016a101720002d006c22054102460d07200041c0016a200041fc006a290200370300200041c8016a20004184016a280200360200200020002902743703b80120002f006d200041ef006a2d00004110747221062000280270210220002d006821042000280288012103200035028c01210d4103210120002f006920002d006b411074720c090b200741da01472004413b4772200141b20147720d064104210120064104490d06200041bc83043602f00141b8830428020022044108760c080b200741c00147200441e2004772200141fd0147720d05200041e8006a200041f0016a101720002d006c22054102460d05200041c0016a200041fc006a290200370300200041c8016a20004184016a280200360200200020002902743703b80120002f006d200041ef006a2d00004110747221062000280270210220002d006821042000280288012103200035028c01210d4105210120002f006920002d006b411074720c070b200741cf0047200441094772200141910147720d04200041e8006a200041f0016a101720002d006c22054102460d04200041c0016a200041fc006a290200370300200041c8016a20004184016a280200360200200020002902743703b80120002f006d200041ef006a2d00004110747221062000280270210220002d006821042000280288012103200035028c01210d4106210120002f006920002d006b411074720c060b200741f101472004412447720d032001418a01460d010c030b200741a60147200441c8004772200141830147200641044972720d02410821012002417c714108460d0241b883042802002104200041c083043602f00120002002410c6b3602f40141bc83042802002205410876210620044108760c040b200041e8006a200041f0016a101720002d006c22054102460d01200041c0016a200041fc006a290200370300200041c8016a20004184016a280200360200200020002902743703b8014107210120002f006d200041ef006a2d00004110747221062000280270210220002d006821042000280288012103200035028c01210d20002f006920002d006b411074720c030b0c010b1021000b200541087621064102210120044108760b2107200041386a200041c8016a280200360200200041306a200041c0016a290300370200200020002903b8013702282000200336023c20002002360224200020083b011a200020093a0019200020013a00182000200541ff017120064108747222033602202000200441ff0171200741087472220436021c2000200d37024020004280800137026c200041b483043602684100200041e8006a22071010200028026c220820002802702205490d00200028026821062000200820056b220836026820062005200520066a200710002105200820002802682206492005410f4f720d002006200541e780046a2d00002205410346200541104772720d00200041206a21062000411c6a210502400240024002400240024002400240024002400240200141016b0e080102030405060708000b41012102200041e9006a101a200041013a006841d082bdaf01200041e8006a1015220641ff01714103460440200041f4006a200541086a290200370200200041fc006a200541106a29020037020020004184016a200541186a2902003702002000418080043602682000200529020037026c2000428080013702bc01200041b483043602b80141ddafa7cb7e200041b8016a22031010200041ec006a2003101120002802bc01220520002802c0012201490d0b20002802b801210441002102200041003602c0012000200520016b3602bc012000200120046a3602b801200da7200d422088a72003101c20002802c001220320002802bc014b0d0b2004200120002802b801200310041a10220b200220061020000b230041306b22022400200241186a200041186a410172220141086a290000370200200241206a200141106a290000370200200241286a200141186a2900003702002002200041b8016a36020c20022001290000370210200041e8006a2201200241106a100f200241306a24001022230041106b22002400200041808001360208200041b48304360204024041b58304027f2001280200220241818080807847044041b4830441003a000041002002418080808078460d011a41b5830441013a00002000410236020c20012802042001280208200041046a101c200028020c220141818001490d02000b41b4830441013a000041010b3a0000410221010b0c0b0b41002101200041003602502000428080808080013702482000410036025c20004280808080c000370254027f027f0240200204402002410574210441042108200041ed006a220741036a21090340200041d0016a200341186a290000370300200041c8016a200341106a290000370300200041c0016a200341086a290000370300200020032900003703b801200041e8006a200041b8016a100f2000280268220a418080808078460d02200020072800003602602000200928000036006320002d006c210b200341206a21032000280254200146047f200041d4006a2105230041206b220224000240200141016a220104404104200528020022064101742208200120012008491b2201200141044d1b2201410c6c2108200141abd5aad50049410274210c02402006450440200241003602180c010b2002410436021820022006410c6c36021c200220052802043602140b200241086a200c2008200241146a101f2002280208450d01200228020c1a0b000b200228020c21062005200136020020052006360204200241206a240020002802582108200028025c0520010b410c6c20086a2201200b3a00042001200a36020020012000280260360005200141086a20002800633600002000200028025c41016a220136025c200441206b22040d000b0b20004280800137026c200041b4830436026841b8c9adb602200041e8006a22031010200028026c220420002802702201490d0b200028026821022000200420016b220436026820022001200120026a2201200310002102200420002802682203492002410f4f720d0b200241e780046a2d000022024103462002411047722003412047720d0b20012d00002102200041f0006a200041dc006a28020036020020004198016a4200370300200041a0016a4200370300200041a8016a4200370300200041f9006a200129000137000020004181016a200141096a29000037000020004189016a200141116a29000037000020004190016a200141186a29000037000020002000290254370368200020023a0078200041003602b001200041f8d3a7ce033602742000428080013702f401200041b483043602f001200041f8006a200041f0016a2201101120002802f401220320002802f8012202490d0b20002802f0012104200041003602e8012000200320026b3602e4012000200220046a3602e001200042003703f801200042003703f001200041e0016a20014110101e20002802e401220320002802e8012202490d0b20002802e0012105200041003602f8012000200320026b3602f4012000200220056a3602f0012001200041f4006a4104101e200028026c2102200120002802702201101d200104402001410c6c2103200241086a21020340200241046b2802002002280200200041f0016a101c2002410c6a21022003410c6b22030d000b0b20002802f401220320002802f8012201490d0b20002802f00121022000200320016b22063602f001410020044200200520022001200120026a2201200041f0016a10022102200620002802f0012203492002410f4f720d0b200345200241e780046a2d00002202411047200241024771720d0b2000200341016b22023602e4012000200141016a22033602e001024020012d00000e02000b0c0b200041086a200041e0016a102520002802080d0b4108210120002802e4014105762202200028020c220420022004491b22030440200341ffffff1f4b0d0c200341057422014100480d0c41a483042d00001a4108200110262201450d0c0b41002102200041003602f801200020013602f401200020033602f0012004047f034020002802e4012205450d0d2000200541016b22063602e401200020002802e001220341016a22073602e0014200210d0240024020032d00000e0201000f0b20064108490d0e200541196b2205416f4b0d0e2007290000210e200020053602e4012000200341196a3602e001200341116a290000210f200329000921104201210d0b20002802f001200246047f200041f0016a2103230041206b220124000240200241016a220204404104200328020022054101742206200220022006491b2202200241044d1b220241057421062002418080802049410374210702402005450440200141003602180c010b200141083602182001200541057436021c200120032802043602140b200141086a20072006200141146a101f2001280208450d01200128020c1a0b000b200128020c21052003200236020020032005360204200141206a240020002802f401210120002802f8010520020b41057420016a2202200e3703082002200d37030020022010370310200241186a200f370300200020002802f80141016a22023602f801200441016b22040d000b20002802f0010520030b418280808078480d0b20002802e4010d0b024020002902f401220d422088a72201450d00200da7220220014105746a210603402002290300220d4202510d014101200da7450d031a200241186a290300210d2002290310210e200028025022032000280248460440200041c8006a2104230041206b220124000240200341016a220304404104200428020022054101742207200320032007491b2203200341044d1b22034104742107200341808080c00049410374210802402005450440200141003602180c010b200141083602182001200541047436021c200120042802043602140b200141086a20082007200141146a101f2001280208450d01200128020c1a0b000b200128020c21052004200336020020042005360204200141206a2400200028025021030b200028024c20034104746a2201200d3703082001200e3703002000200341016a360250200241206a22022006470d000b0b2000200028004d3602f0012000200041d0006a2800003600f30120002d004c210220002802482203418080808078460c020b41000b2102418080808078210341010b2101200041f0006a20002800f301360000200020002802f00136006d200020023a006c20002003360268230041106b22022400200241808001360208200241b483043602040240200041e8006a2200280200220341818080807847044041b4830441003a0000200341808080807846044041b5830441013a000041b6830420002d00043a0000410321000c020b2002410236020c41b5830441003a000020002802042103200241046a220420002802082200101d200420032000410474101e200228020c220041818001490d01000b41b483044181023b0100410221000b200120001023000b2005280200200541046a10162100230041106b22012400200141b4830436020041b4830441003a00002001428080818010370204200120003a000f20012001410f6a4101101e20012802082201418180014f0440000b0c090b200410132100230041106b22012400200141b4830436020441b4830441003a000020014280808180103702082000200141046a1010200128020c2201418180014f0440000b0c080b20041013210141012102200041e9006a101a200041013a006802402001200041e8006a1015220141ff01714103470d004102210120042006102741ff01714103470d00102241002102410321010b0c060b20041013210141012102200041e9006a101a200041013a006802402001200041e8006a1015220141ff01714103470d00200420061028220141ff01714103470d00102241002102410321010b0c050b200041b8016a220120064121100b1a41012102200041e9006a2203101a20002d00b8010440200141017220034120100e450d020b410021010c040b200410132101200041e9006a101a200041013a00682001200041e8006a22011015220641ff0171410346047f200320041013220747044020004280800137026c200041b48304360268200420011014200028026c220820002802702202490d0420002802682105200041003602702000200820026b36026c2000200220056a36026820032001101020002802702208200028026c4b0d04200520022000280268200810041a200020033602e801200020073602e401200020043602e0012000428080013702f401200041b483043602f001200041f0016a41021029200041f0006a2202200041f8016a280200360200200020002902f001370368200141c78004102a200041c0016a22032002280200360200200020002903683703b801200041b8016a200041e0016a102b20002802bc01220420032802002202490d0420002802b8012103200041003602702000200420026b36026c2000200220036a36026820002802e0012001101020002802e4012001101020002802e8012001101020002802702201200028026c4b0d04200320022000280268200110030b102241000541010b20061020000b200420061028220141ff01714103470d02102241002102410321010c020b2002450d0020032d00004101470d000b000b200220011020000b410020011023000ba40201037f230041206b22022400200241106a2001101941012103024020022d00100d000240024002400240024020022d0011220441037141016b0e03020301000b200441fc01714102762101410021030c040b20044104490d020c030b200241196a20043a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210320d0220022f011c220441ff014d0d0220044102762101410021030c020b200241196a20043a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410320d01200228021c220341027621012003418080044921030c010b200241086a2001101820022802080d00200228020c22014180808080044921030b2000200136020420002003360200200241206a24000bc50101017f027f41a883042d0000044041ac83042802000c010b3f00210241ac830441c0830536020041a8830441013a000041b08304200241107436020041c083050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a41b083042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d0241b0830420023602004100200020016a22022000490d011a0b41ac8304200236020020000b0f0b41000be80301067f230041c0016b220224004102210302402000200110164504402002200036024c200241d0006a20014121100b2106200242808001370208200241b48304360204200241cc006a2205200241046a2204102d200228020c220320022802084b0d01200228020422072003200320076a410010041a2002412a6a101a20022000360204200241086a20014121100b1a200241013a00292005200441c800100b1a20024280800137029801200241b483043602940120024194016a41041029200241b8016a22002002419c016a28020036020020022002290294013703b001200241b0016a220441818304102a200241a8016a22012000280200360200200220022903b0013703a001200241a0016a22032005102b20002001280200360200200220022903a0013703b00120032004200241d1006a410020022d00501b102e024020022d007104402003200241f2006a102a0c010b200241a0016a102f0b20022802a401220320022802a8012200490d0120022802a0012101200241003602b8012002200320006b3602b4012002200020016a3602b001200228024c200241b0016a22031010200620031030200241f1006a2003103020022802b801220320022802b4014b0d012001200020022802b00120031003410321030b200241c0016a240020030f0b000b8204010a7f23004190016b220224000240200020011015220641ff0171410346044020022000360200200241046a20014121100b1a200242808001370264200241b483043602602002200241e0006a2203102d2002280268220420022802644b0d012002280260200410051a20024104722205101a200241246a20014121100b21072002200036020020024280800137024c200241b48304360248200241c8006a41041029200241e8006a2200200241d0006a28020036020020022002290248370360200341a68004102a20024188016a22012000280200360200200220022903603703800120024180016a22082002102b200020012802003602002002200229038001370360200241d4006a2003200241256a410020022d00241b102e20022802582201200228025c2200490d0120022802542104200241003602682002200120006b22093602642002200020046a220a3602602005200310112002280268220b20022802644b0d0120032002280260200b1031200241003602880120022009360284012002200a36028001200320081011200020002002280288016a22004b200020014b720d01200241003602682002200120006b3602642002200020046a3602602002280200200310102007200310302005200310112002280268220120022802644b0d01200420002002280260200110030b20024190016a240020060f0b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a103420012001200228020c6a22014b0d0020002001360208200241106a24000f0b000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061011200228020c220120022802084b0d0020062002280204200110312002410036022c20022004360228200220053602242006200241246a10112003200228022c6a22012003490d0020002001360208200241306a24000f0b000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061036200228020c220120022802084b0d0020062002280204200110312002410036022c20022004360228200220053602242006200241246a10112003200228022c6a22012003490d0020002001360208200241306a24000f0b000bdc0401077f230041b0016b220024000240101b41ff01714105470d0020004180800136024041b48304200041406b2202100120002802402201418180014f0d00024020014104490d0041b483042d0000419b01470d0041b583042d000041ae01470d0041b683042d0000419d01470d0041b783042d000041de0047200141246b415f4b72200141c4006b41604f720d0041b883042d00002101200041f7006a220341f08304290200370000200041ef006a220441e88304290200370000200041e7006a220541e08304290200370000200041c8006a41c18304290000370300200041d0006a41c98304290000370300200041d7006a41d08304290000370000200041d8830429020037005f200041b98304290000370340200041016a22062002413f100b1a20022006413f100b1a2000419c016a200329000037000020004194016a220220042900003700002000418c016a220320052900003700002000200029005f37008401200041013a008301410020004183016a2204102741ff01714103470d012003200041096a2900003700002002200041116a2900003700002000419b016a200041186a290000370000200020013a00830120002000290001370084012000428080013702a801200041b483043602a40141b8c9adb602200041a4016a2203101020002802a801220520002802ac012201490d0120002802a4012102200041003602ac012000200520016b3602a8012000200120026a3602a40120042003101120002802ac01220320002802a8014b0d012002200120002802a401200310041a102241b4830441003b0100410041021023000b1021000b000b1c0041fc820420011036200028020020011010200041046a200110300b300002402002044020012002102a0c010b2001102f0b20002001290200370200200041086a200141086a2802003602000bb40101077f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a2204360204200141003a0024200141046a2205200141246a22064101101e200128020c220720012802084b0d0020052001280204200710312001410036022c200120033602282001200436022420052006101120022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b210020002d00004504402001410010350f0b200141011035200041016a200110110bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a100a200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100b1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100b1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100b1a0b2000200320026b3602042000200120026a36020041000b0b2b0020020440200345044041a483042d00001a0b20012002102621010b20002002360204200020013602000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410350c010b200041ffff004d0440200220004102744101723b010e20012002410e6a4102101e0c010b200041ffffffff034d04402000410274410272200110100c010b2001410310352000200110100b200241106a24000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b0b002000280200200110100b5001017f230041106b22012400200142808001370208200141b483043602042000200141046a102d200128020c220020012802084b0440000b2001280204200010062100200141106a24002000417f470b0bcf020400418080040b04ddd769e90041a580040bd1010100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403100102030405060708090a0b0c0d0e01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041b882040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041f882040b29f9372874510afc69014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"price_feed_provider","version":"1.0.0","authors":["Łukasz Łakomy","Konrad Wierzbik"],"description":"Abax Protocol PriceFeedProvider contract","license":"BUSL-1.1"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"oracle","type":{"displayName":["AccountId"],"type":9}},{"label":"admin","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":25},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":36},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":47},"hash":{"displayName":["Hash"],"type":46},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":42}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":39}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":36}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":36}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":36}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":11}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":19}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":19}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":36}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":39}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":39}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":41}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":43}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":45}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":44}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":44}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":44}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":42}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":36}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":26},"messages":[{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"label":"symbol","type":{"displayName":["String"],"type":19}}],"default":false,"docs":[],"label":"set_account_symbol","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0xd3f70f03"},{"args":[{"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"get_account_symbol","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":30},"selector":"0x393c4d82"},{"args":[{"label":"assets","type":{"displayName":["Vec"],"type":32}}],"default":false,"docs":[],"label":"PriceFeed::get_latest_prices","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":33},"selector":"0x87eea578"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":38},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":40},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":27},"selector":"0x71a64883"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"root":{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0xb864cb26","ty":9}},"name":"account_id"}],"name":"__ink_TraitCallBuilderOracleGetters"}},"root_key":"0xb864cb26","ty":15}},"name":"oracle"},{"layout":{"root":{"layout":{"leaf":{"key":"0xddd769e9","ty":19}},"root_key":"0xddd769e9","ty":20}},"name":"account_to_symbol"}],"name":"PriceFeedProvider"}},"root_key":"0x00000000","ty":23}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":16}],"path":["ink_storage","lazy","Lazy"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"L","type":17},{"name":"R","type":18}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":17,"type":{"def":{"composite":{}},"path":["ink_storage_traits","impls","AutoKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"primitive":"str"}}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":19},{"name":"KeyType","type":21}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"L","type":17},{"name":"R","type":22}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{"fields":[{"name":"access","type":24,"typeName":",>>::Type"},{"name":"oracle","type":15,"typeName":" as::ink::storage::traits::AutoStorableHint\n<::ink::storage::traits::ManualKey<650863800u32, ()>,>>::Type"},{"name":"account_to_symbol","type":20,"typeName":" as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<3916027869u32,\n()>,>>::Type"}]}},"path":["price_feed_provider","price_feed_provider","PriceFeedProvider"]}},{"id":24,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":26}],"path":["Result"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":27,"type":{"def":{"variant":{"variants":[{"fields":[{"type":28}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":28},{"name":"E","type":26}],"path":["Result"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":29}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":29}],"path":["Result"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"index":0,"name":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"fields":[{"type":31}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":31},{"name":"E","type":26}],"path":["Result"]}},{"id":31,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":19}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":19}],"path":["Option"]}},{"id":32,"type":{"def":{"sequence":{"type":9}}}},{"id":33,"type":{"def":{"variant":{"variants":[{"fields":[{"type":34}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":34},{"name":"E","type":26}],"path":["Result"]}},{"id":34,"type":{"def":{"variant":{"variants":[{"fields":[{"type":35}],"index":0,"name":"Ok"},{"fields":[{"type":37}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":35},{"name":"E","type":37}],"path":["Result"]}},{"id":35,"type":{"def":{"sequence":{"type":36}}}},{"id":36,"type":{"def":{"primitive":"u128"}}},{"id":37,"type":{"def":{"variant":{"variants":[{"index":0,"name":"NoSuchAsset"},{"index":1,"name":"NoPriceFeed"}]}},"path":["abax_contracts","price_feed","errors","PriceFeedError"]}},{"id":38,"type":{"def":{"variant":{"variants":[{"fields":[{"type":39}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":39},{"name":"E","type":26}],"path":["Result"]}},{"id":39,"type":{"def":{"primitive":"bool"}}},{"id":40,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":26}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":26}],"path":["Result"]}},{"id":41,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":0,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":42,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":42,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":42,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":42,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":42,"type":{"def":{"primitive":"u64"}}},{"id":43,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":44,"typeName":"Option"},{"name":"maximal_total_debt","type":44,"typeName":"Option"},{"name":"minimal_collateral","type":36,"typeName":"Balance"},{"name":"minimal_debt","type":36,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":36}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":36}],"path":["Option"]}},{"id":45,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":0,"typeName":"u32"},{"name":"deposit_fee_e6","type":0,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":46,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":47,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/price_feed_provider.json b/artifacts/price_feed_provider.json new file mode 100644 index 0000000..145214e --- /dev/null +++ b/artifacts/price_feed_provider.json @@ -0,0 +1,2426 @@ +{ + "source": { + "hash": "0x41d6a4ccbe35e543e3d9c37bd93a133159480226151cd1b48667e9453751aae7", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "price_feed_provider", + "version": "1.0.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"], + "description": "Abax Protocol PriceFeedProvider contract", + "license": "BUSL-1.1" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "oracle", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "admin", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 25 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 36 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 47 + }, + "hash": { + "displayName": ["Hash"], + "type": 46 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 42 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 39 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 36 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 36 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 11 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 19 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 19 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 36 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 39 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 39 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 41 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 43 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 45 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 44 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 42 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 36 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 26 + }, + "messages": [ + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 19 + } + } + ], + "default": false, + "docs": [], + "label": "set_account_symbol", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0xd3f70f03" + }, + { + "args": [ + { + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "get_account_symbol", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 30 + }, + "selector": "0x393c4d82" + }, + { + "args": [ + { + "label": "assets", + "type": { + "displayName": ["Vec"], + "type": 32 + } + } + ], + "default": false, + "docs": [], + "label": "PriceFeed::get_latest_prices", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 33 + }, + "selector": "0x87eea578" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 38 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 40 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 27 + }, + "selector": "0x71a64883" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xb864cb26", + "ty": 9 + } + }, + "name": "account_id" + } + ], + "name": "__ink_TraitCallBuilderOracleGetters" + } + }, + "root_key": "0xb864cb26", + "ty": 15 + } + }, + "name": "oracle" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xddd769e9", + "ty": 19 + } + }, + "root_key": "0xddd769e9", + "ty": 20 + } + }, + "name": "account_to_symbol" + } + ], + "name": "PriceFeedProvider" + } + }, + "root_key": "0x00000000", + "ty": 23 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 16 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 17 + }, + { + "name": "R", + "type": 18 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "path": ["ink_storage_traits", "impls", "AutoKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 19 + }, + { + "name": "KeyType", + "type": 21 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 17 + }, + { + "name": "R", + "type": 22 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 24, + "typeName": ",>>::Type" + }, + { + "name": "oracle", + "type": 15, + "typeName": " as::ink::storage::traits::AutoStorableHint\n<::ink::storage::traits::ManualKey<650863800u32, ()>,>>::Type" + }, + { + "name": "account_to_symbol", + "type": 20, + "typeName": " as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<3916027869u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["price_feed_provider", "price_feed_provider", "PriceFeedProvider"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 26, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 27, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 28 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 28 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 29 + } + ], + "path": ["Result"] + } + }, + { + "id": 29, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 30, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 31 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 31 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 19 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 19 + } + ], + "path": ["Option"] + } + }, + { + "id": 32, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 33, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 34 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 34 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 34, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 35 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 37 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 35 + }, + { + "name": "E", + "type": 37 + } + ], + "path": ["Result"] + } + }, + { + "id": 35, + "type": { + "def": { + "sequence": { + "type": 36 + } + } + } + }, + { + "id": 36, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 37, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "NoSuchAsset" + }, + { + "index": 1, + "name": "NoPriceFeed" + } + ] + } + }, + "path": ["abax_contracts", "price_feed", "errors", "PriceFeedError"] + } + }, + { + "id": 38, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 39 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 39 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 39, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 40, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 26 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 26 + } + ], + "path": ["Result"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 42, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 42, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 42, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 42, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 42, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 44, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 44, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 36, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 36, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 36 + } + ], + "path": ["Option"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 46, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/price_feed_provider.wasm b/artifacts/price_feed_provider.wasm new file mode 100644 index 0000000..ca40a43 Binary files /dev/null and b/artifacts/price_feed_provider.wasm differ diff --git a/artifacts/psp22_emitable.contract b/artifacts/psp22_emitable.contract new file mode 100644 index 0000000..ef32d01 --- /dev/null +++ b/artifacts/psp22_emitable.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x98413fd0c4f80a627f09ff719334b904b4600ba6b02f2e2b4b76e95f8761206a","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001350960027f7f0060037f7f7f0060017f0060047f7f7f7f0060037f7f7f017f60000060047f7f7f7f017f60057f7f7f7f7f006000017f02b10109057365616c310b6765745f73746f726167650006057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e740003057365616c320b7365745f73746f726167650006057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f72790201021003424104040404000102000200000201000208020200050005030705000300000202010000000000000000000000000301020000030000000000000101000700030101030616037f01418080040b7f0041d088050b7f0041cc88050b0711020463616c6c001d066465706c6f7900200ac39601412b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206102f200228020c220120022802084b0d00200620022802042001100d2002410036022c20022004360228200220053602242006200241246a102a2003200228022c6a22012003490d0020002001360208200241306a24000f0b000bc60101017f230041406a22032400200341186a4200370300200341106a4200370300200341086a4200370300200342003703000240200241214f0440200341386a4200370300200341306a4200370300200341286a42003703002003420037032020012002200341206a22011007200341202001412010480c010b200320022001200210480b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000bab0101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a220436020441ec8104200141046a22051033200128020c220620012802084b0d00200520012802042006100d2001410036022c20012003360228200120043602242005200141246a102a20022002200128022c6a22024b0d0020002002360208200141306a24000f0b000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206102a200228020c220120022802084b0d00200620022802042001100d2002410036022c20022004360228200220053602242006200241246a102a2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b7201047f230041106b220124002001410336020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a103120022002200128020c6a22024b0d0020002002360208200141106a24000f0b000bc10202027f017e230041e0006b22022400200241c8006a22034200370300200241406b4200370300200241386a420037030020024200370330200241d0006a2001200241306a412010452000027f20022802502201418180808078460440200020022f01303b0001200041036a20022d00323a0000200241186a2002413f6a2800002201360200200220022900372204370310200220022900433703002002200329000037000520022800332103200041106a2001360200200041086a2004370200200041146a2002290300370200200041196a2002290005370000200041046a200336020041000c010b200241186a200241dc006a28020022033602002002412c6a20033602002002200229025422043703102002200136022020022004370224200041046a200241206a418c8104411e103441010b3a0000200241e0006a24000bdf0101017f230041406a22022400200241046a20011011024020022d0004450440200241286a2001102c20022802284504402000200229000537000820004100360200200041286a2002290330370300200041306a200241386a290300370300200041106a2002410d6a290000370000200041186a200241156a290000370000200041206a2002411d6a2900003700000c020b2000200229022c370204200041013602002000410c6a200241346a2902003702000c010b20002002290208370204200041013602002000410c6a200241106a2902003702000b200241406b24000bad0202067f017e23004190016b22012400200141086a2205200041d00010081a200142808001370270200141bd880436026c200120053602782001200141286a220336027c200141ec006a1010200141e0006a2200200141f4006a2802003602002001200129026c37035820014180016a2206200141d8006a220241ab810410142006200141f8006a100c200020014188016a220428020036020020012001290280013703582002200141fc006a100c200420002802003602002001200129035837038001200220061015200141e8006a28020021002001280264210420012902582107200141003602602001200737025820052002102a20032002102a200141c8006a2002103220012802602203200128025c4b0440000b2004200020012802582003100220014190016a24000bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a2207102a200328020c220220032802084b0d02200720032802042002100d2003410036022c20032005360228200320063602242007200341246a102a2004200328022c6a22022004490d02200120023602080c010b2001100e0b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000bd30102067f017e230041206b22022400200241186a2206200141086a28020036020020022001290200370310230041106b22042400200241106a2201280208210320014100360208200441086a21052003200128020422074b0440000b2001200720036b36020420012001280200220120036a3602002005200336020420052001360200200428020c2101200241086a2203200428020836020020032001360204200441106a240020022903082108200041086a2006280200360200200020022903103702002000200837020c200241206a24000bc10101057f230041406a22012400200141808001360210200141bd880436020c230041106b2202240020022001410c6a2203280204220436020c20032802002002410c6a10052004200228020c2205490440000b20032005360204200241106a24002001200129020c370238200141146a200141386a101120012d00140440000b20002001290015370000200041186a2001412d6a290000370000200041106a200141256a290000370000200041086a2001411d6a290000370000200141406b24000b8d0102057f027e230041206b2200240020004200370308200042003703002000411036021c20002000360218230041106b220124002001200041186a2202280204220336020c20022802002001410c6a10062003200128020c2204490440000b20022004360204200141106a24002000290308210520002903002106200041206a2400410541042005200684501b0b0e000340200028020c22000d000b0b4d01027f230041106b220124002001410136020c2001410c6a2802002102410021012000280200044041bd880441013a0000410121010b200141bd88046a20013a00002002200141016a1044000b990201067f230041106b220224002002200036020c2002410c6a280200210741002100230041106b22022400200241808001360208200241bd880436020402400240024002400240024020012802002205410947044041bd880441003a000020054108460d044101210041be880441013a00004103210341bf880421060240024002400240200541016b0e0709070001050203060b410321000c080b410421000c070b410621000c060b410721000c050b4101210041bd880441013a00000c030b410521040b41bf880420043a00002002410336020c200141046a200241046a1037200228020c220341818001490d03000b410221000c010b4102210341be880421060b200620003a00002002200336020c0b200720031044000b5901037f230041206b22002400200042808001370218200041bd880436021441f08104200041146a1023200028021c220120002802184b0440000b200041086a200028021422022001200120026a41001043200041206a24000b210020002d00004504402001410010420f0b200141011042200041016a2001102a0b873102087f067e23004180036b220024000240024002400240024002400240027f024002400240024002400240101741ff01714105470d0020004180800136023841bd8804200041386a2201100120002802382202418180014f0d00200020023602bc01200041bd88043602b801200041003602a8022001200041b8016a200041a8026a410410450240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002402000280238220141818080807846044020002d00ab02210320002d00aa02210420002d00a9022101024020002d00a802220241fc016b0e030c2308000b20024116460d0120024134460d092002413d460d08200241cd00460d03200241d400460d04200241e500460d02200241f200460d0a2002419601460d06200241b201460d05200241db0147200141ff017141204772200441ff017141f90147200341ff017141f5014772720d22200041386a200041b8016a2201101120002d00380d1120004188026a2001102c2000280288020d1a20004198026a29030021082000290390022109200041c0016a2001103b20002802c0012201418180808078460d10200020002900c1013703a8022000200041c8016a2900003700af020c210b200028023c2102200020002902403702402000200236023c20002001360238200041386a10180c210b200141ff0171412d47200441ff017141f8014772200341ff017141c20147720d2041808080807821020c160b200141ff017141e80047200441ff017141384772200341ff0171412f47720d1f200041386a200041b8016a101120002d00380d09200041f0016a200041c2006a290100370300200041f8016a200041ca006a290100370300200041ff016a200041d1006a2900003700002000200029013a3703e80120002d0039210141818080807821020c150b200141ff017141c70047200441ff017141d9014772200341ff0171412147720d1e200041a8026a200041b8016a2201101120002d00a8020d0a200041386a2001101120002d0038450d0920004192026a200041c4006a2902003701002000200029023c37018a020c0b0b200141ff017141b30147200441ff017141c7014772200341ff017141ee0047720d1d200041a8026a200041b8016a2201101120002d00a8020d16200041386a2001101120002d00380d17200041c0016a2001102c20002802c0010d18200041d0016a290300210b20002903c801210c200041d8016a2001103b20002802d8012201418180808078460d0d200020002900d901370388022000200041e0016a29000037008f020c1b0b200141ff0171410f47200441ff0171411b4772200341ff017141bd0147720d1c200041386a200041b8016a101220002802380d0d200041f0016a200041c9006a290000370300200041f8016a200041d1006a290000370300200041ff016a200041d8006a2900003700002000200041c1006a2900003703e801200041e8006a2903002108200041e0006a290300210920002d0040210141858080807821020c120b200141ff017141d60147200441ff017141b5014772200341ff017141fa0047720d1b200041386a200041b8016a101220002802380d0d200041f0016a200041c9006a290000370300200041f8016a200041d1006a290000370300200041ff016a200041d8006a2900003700002000200041c1006a2900003703e801200041e8006a2903002108200041e0006a290300210920002d0040210141868080807821020c110b200141ff017141cb0147200441ff017141d7004772200341ff017141d50147720d1a200041386a200041b8016a101220002802380d0d200041f0016a200041c9006a290000370300200041f8016a200041d1006a290000370300200041ff016a200041d8006a2900003700002000200041c1006a2900003703e801200041e8006a2903002108200041e0006a290300210920002d0040210141878080807821020c100b200141ff0171412647200441ff0171411b4772200341ff017141d40147720d1941888080807821020c0f0b200141ff0171412047200441ff017141db004772200341ff017141e50147720d1841898080807821020c0e0b200141ff017141f10047200441ff017141b7014772200341ff017141820147720d17418a8080807821020c0d0b200141ff0171413c47200441ff017141f5004772200341ff017141d40147720d16200041386a200041b8016a101220002802380d0a200041f0016a200041c9006a290000370300200041f8016a200041d1006a290000370300200041ff016a200041d8006a2900003700002000200041c1006a2900003703e801200041e8006a2903002108200041e0006a290300210920002d00402101418b8080807821020c0c0b2000413c6a10180c150b2000419f026a2201200041c1026a29000037000020004198026a2202200041ba026a290100370300200041f0016a200041b2026a290100370300200041f8016a2002290300370300200041ff016a2001290000370000200020002901aa023703e801200041c1006a2900002108200041d5006a2800002103200041cd006a290000210a200041c9006a28000021042000290039210920002d00a902210141828080807821020c0a0b20004192026a200041b4026a290200370100200020002902ac0237018a020b200041406b20004192026a2901003703002000200029018a02370338200041386a10180c120b200041b0026a2202200041c2006a290100370300200041b8026a2205200041ca006a290100370300200041bf026a2203200041d1006a2900003700002000200029013a3703a80220002d0039210120002802c4012204418080808078460d10200041c8016a290200210a200041ff016a2003290000370000200041f8016a2005290300370300200041f0016a2002290300370300200020002903a8023703e80141838080807821020c070b2000200029003d3703a8022000200041c4006a2900003700af0220002d003c21010c0f0b20004190026a2205200041b2026a29010037030020004198026a200041ba026a2901003703002000419f026a2206200041c1026a290000370000200020002901aa023703880220002d00a902210120002802dc012202418080808078470d040c0d0b200041386a41047210180c0e0b200041386a41047210180c0d0b200041386a41047210180c0c0b200041386a41047210180c0b0b200041c1006a2900002108200041e0016a290200210d200041c9006a2800002104200041cd006a290000210a200041d5006a280000210320002900392109200041ff016a2006290000370000200041f8016a20004198026a290300370300200041f0016a200529030037030020002000290388023703e8012002418c80808078460d0a0b200041af016a2205200041ff016a290000370000200041a8016a2206200041f8016a290300370300200041a0016a2207200041f0016a290300370300200020002903e801370398012002418c80808078460d0920004180016a200b370300200041e0006a2008370300200041c1006a2007290300370000200041c9006a2006290300370000200041d0006a20052900003700002000200c37037820002009370358200020013a003820002000290398013700392000200d37028c01200020033602742000200a37026c200020043602682000200236028801200041003602b8012000428080013702ac02200041bd88043602a802200041b8016a200041a8026a2203102320002802ac02220520002802b0022201490d0020002802a80221042000200520016b22053602a80220042001200120046a20031000200520002802a802220149722001720d0002400240024002400240027f0240024002400240027f0240024002400240024002400240410420024180808080787322012001410c4f1b41016b0e0b0001020309040d0e0f1011050b230041406a22012400200141286a200041386a220241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041ff026a36021c20012002290000370220200141086a200141206a103f20012903082108200041186a2202200141106a29030037030820022008370300200141406b240020002903182108200041b8026a200041206a2903003703000c1b0b230041d0006b22012400200141106a200041386a220241c00010081a20012002200141306a104020012903002108200041286a2202200141086a29030037030820022008370300200141d0006a240020002903282108200041b8026a200041306a2903003703000c1a0b200041e0006a290300210820002903582109200041a0026a200041d0006a29030037030020004198026a200041c8006a29030037030020004190026a200041406b2903003703002000200029033837038802200020083703a0012000200937039801200041a8026a22011016200041e8016a200120004188026a20004198016a101e20002802e80122024108460d03200041c8016a200041f4016a280200360200200020002902ec013703c00141010c040b20004180016a29030021082000290378210920004190026a200041e0006a29030037030020004198026a200041e8006a290300370300200041a0026a200041f0006a29030037030020004180026a200041d0006a290300370300200041f8016a200041c8006a290300370300200041f0016a200041406b2903003703002000200029035837038802200020002903383703e801200020083703c801200020093703c001200041a8026a2201101620004198016a2204200041ff026a200041e8016a22032001200041c0016a2201101f20002802980122024108470d132004200320004188026a2001101e20002802980122024108460d040c130b200029035821082000200041e0006a2903003703f001200020083703e80120004188026a22021016230041e0006b2201240020012002200041386a22041040200041a8026a2203027f20012903002208200041e8016a22052903007c220a20085422062006ad200141086a290300220b200541086a2903007c7c2208200b542008200b511b4504402001200a37031020012008370318200141386a200241186a290000370300200141306a200241106a290000370300200141286a200241086a290000370300200141c8006a200441086a290000370300200141d0006a200441106a290000370300200141d8006a200441186a2900003703002001200229000037032020012004290000370340200141206a200141106a1028200341106a20083703002003200a37030841000c010b200341046a4101103e41010b360200200141e0006a240020002802a8020d0520002903b0022108200041f0026a200041b8026a2201290300370300200041c0026a200041a0026a290000370300200120004198026a290000370300200041b0026a20004190026a290000370300200041d0026a200041406b290300370300200041d8026a200041c8006a290300370300200041e0026a200041d0006a290300370300200020083703e80220002000290088023703a802200020002903383703c802200310130c060b230041106b220124002001102620012903002108200041086a2202200141086a29030037030820022008370300200141106a240020002903082108200041b8026a200041106a2903003703000c160b101b41000b2101200041b4026a200041c8016a280200360200200020002903c0013702ac020c150b101b4108210241000c0f0b200041e0006a290300210820002903582109200041e0026a200041d0006a290300370300200041d8026a200041c8006a290300370300200041d0026a200041406b290300370300200020002903383703c802200020083703f001200020093703e80120004188026a22021016230041406a22012400200141186a200241186a290000370300200141106a200241106a290000370300200141086a200241086a290000370300200141286a200041386a220441086a290000370300200141306a200441106a290000370300200141386a200441186a29000037030020012002290000370300200120042900003703202001200041e8016a1028200141406b2400200041f0026a2008370300200041c0026a200041a0026a290000370300200041b8026a20004198026a290000370300200041b0026a20004190026a290000370300200020093703e80220002000290088023703a802200041a8026a22011013101b200041083602a80241002001101a000b200041b8026a3502002109200041b0026a2903002108410120002802ac0222014108470d011a0b101b4108210141000b2102200041b4026a20093e0200200020083702ac02200020013602a8022002200041a8026a101a000b200029035821082000200041e0006a290300370390022000200837038802200041a8026a22011016200041e8016a200041ff026a2001200041386a20004188026a101f0c100b200041a8026a2101230041106b22002400200041a4820410240c100b200041a8026a2101230041106b2200240020004198820410240c0f0b41002104230041106b22022400230041206b22012400200142808001370214200141bd8804360210419c8204200141106a22061023024002402001280214220720012802182203490d00200128021021052001200720036b220736021020052003200320056a2203200610002105200720012802102206490d000240024020050e0400020201020b2001200636020c20012003360208200141106a200141086a1038027f20012802102205418180808078460440200128020c04404180808080782105413021064100210741b082040c020b20012d00142103200241013a00042002418380808078360200200241056a20033a00000c040b200128021c21072001280218210620012802140b21032002200736020c20022006360208200220033a000420022005360200200241076a20034118763a0000200220034108763b00050c020b2002418380808078360200200241003a00040c010b000b200141206a24000240024020022802002201418380808078470d0020022d0004450d00200241056a2d000021040c010b2001418380808078460d00200210250b200241106a2400200041003a00a802200020043a00a902230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141bd88043602040240200041a8026a22002d0000044041bd88044181023b0000410221002001410236020c0c010b41bd880441003a00002001410136020c200041016a200141046a1033200128020c220041818001490d00000b200220001044000b200041e0006a290300210820002903582109200041c0026a200041d0006a290300370300200041b8026a200041c8006a290300370300200041b0026a200041406b290300370300200020002903383703a80220002008370390022000200937038802200041e8016a4100200041a8026a20004188026a101e0c0c0b000b2000200029008d023703a802200020004194026a2900003700af0220002d008c0221010c060b200020002900ad02370388022000200041b4026a29000037008f0220002d00ac0221010c040b2000200029003d370388022000200041c4006a29000037008f0220002d003c21010c030b200020002900c501370388022000200041cc016a29000037008f0220002d00c40121010c020b200041e0016a200041a4016a2802003602002000200029029c013703d80141010b2101200041b4026a200041e0016a280200360200200020002903d8013702ac020c040b200041406b200029008f02370000200020013a00382000200029038802370039200041386a10180c010b200041406b20002900af02370000200020013a0038200020002903a802370039200041386a10180b20004101360238200041386a1019000b200020083703b002200041003602a802230041106b220124002001410036020c2001410c6a2802002102230041106b22012400200141808001360208200141bd88043602040240200041a8026a2200280200044041bd88044181023b0000410221002001410236020c0c010b2001410136020c41bd880441003a0000200041086a200141046a1032200128020c220041818001490d00000b200220001044000b200020023602a8022001200041a8026a101a000b20002802e801410846047f101b41000541010b200041e8016a101a000b02402000280200418380808078460440200028020441818080807846044020014180808080783602000c020b2001200041046a2202290200370200200141086a200241086a2802003602000c010b20014180808080783602002000280200418380808078470440200010250b0b200041106a2400230041106b220024002000410036020c2000410c6a2802002102230041106b22002400200041808001360208200041bd88043602040240200128020041818080807846044041bd88044181023b0000410221012000410236020c0c010b2000410136020c41bd880441003a00002001200041046a103c200028020c220141818001490d00000b200220011044000be60a02067f047e230041b0016b2204240002400240024020010440200441c8006a2106230041206b2205240020052001103f4108210702402005290300220c2003290300220d542209200541086a290300220a200341086a290300220b54200a200b511b4504402005200c200d7d3703102005200a200b7d2009ad7d3703182001200541106a10290c010b200642003702042006410c6a42003e0200410121070b20062007360200200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a102602402005290310220a20032903007c220c200a5422072007ad200541186a290300220a200341086a2903007c7c220b200a54200a200b511b4504402005200c3703202005200b370328200541086a200541206a103d200641083602000c010b20064101103e0b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b024020020440200441c8006a2106230041206b2205240020052002103f02402005290300220a20032903007c220c200a5422072007ad200541086a290300220a200341086a2903007c7c220b200a54200a200b511b4504402005200c3703102005200b3703182002200541106a1029200641083602000c010b20064101103e0b200541206a2400200428024822054108460d012000200429024c3702042000410c6a200441d4006a2802003602000c020b200441c8006a2106230041306b22052400200541106a102602402005290310220c2003290300220d542207200541186a290300220a200341086a290300220b54200a200b511b4504402005200c200d7d3703202005200a200b7d2007ad7d370328200541086a200541206a103d200641083602000c010b20064100103e0b200541306a2400200428024822054108460d002000200429024c3702042000410c6a200441d4006a2802003602000c010b4100210520010440200441206a200141186a290000370300200441186a200141106a290000370300200441106a200141086a29000037030020042001290000370308410121080b20020440200441406b200241186a290000370300200441386a200241106a290000370300200441306a200241086a29000037030020042002290000370328410121050b200341086a290300210a2003290300210b200441f1006a200441206a290300370000200441e9006a200441186a290300370000200441e1006a200441106a29030037000020044182016a200441306a22022903003701002004418a016a200441386a29030037010020044192016a200441406b290300370100200420042903083700592004200429032837017a2004200a3703502004200b370348200420053a0079200420083a00582004428080013702a801200441bd88043602a401200441a4016a10102002200441ac016a280200360200200420042902a401370328200441086a2202200441286a41cc810410140240200104402002200441d9006a100f20042d007921050c010b200441086a100e0b200441f9006a2102200441d8006a2103200441306a200441106a280200360200200420042902083703280240200541ff01710440200441286a200441fa006a100f0c010b200441286a100e0b41082105200441106a200441306a28020036020020042004290328370308200441286a2201200441086a1015200441386a2802002106200428023421072004290228210a200441003602302004200a37022820032001101c20022001101c200441c8006a2001103220042802302201200428022c4b0d01200720062004280228200110020b20002005360200200441b0016a24000f0b000b920402027f047e230041d0006b22052400230041e0006b2206240020062002200310402005027f2006290300220820042903002207542201200641086a2903002209200441086a290300220a542009200a511b4504402006200820077d220837031020062009200a7d2001ad7d2207370318200641386a200241186a290000370300200641306a200241106a290000370300200641286a200241086a290000370300200641c8006a200341086a290000370300200641d0006a200341106a290000370300200641d8006a200341186a2900003703002006200229000037032020062003290000370340200641206a200641106a1028200541106a20073703002005200837030841000c010b20054102360204200541106a42003e0200200541086a420037030041010b360200200641e0006a24000240200528020045044020052903082107200541c8006a200541106a2201290300370300200541186a200241186a2900003703002001200241106a29000037030041082104200541086a200241086a290000370300200541286a200341086a290000370300200541306a200341106a290000370300200541386a200341186a290000370300200520073703402005200229000037030020052003290000370320200510130c010b200541086a2903002107200528020421042000410c6a200541106a3502003e0200200020073702040b20002004360200200541d0006a24000be707020c7f027e230041406a2200240002400240024002400240101741ff01714105470d0020004180800136023041bd8804200041306a2203100120002802302201418180014f0d002000200136020c200041bd8804360208200041003602202003200041086a2204200041206a2206410410452000280230220141818080807846044020002d0020419b01470d0520002d002141ae01470d0520002d0022419d01470d0520002d002341de00470d05200041106a2004103a20002802102201418180808078470d02200041186a2d000021022000280214210520062004103a20002802202201418180808078470d03200320041038200028023022014181808080784704402000350031200041376a310000423086200041356a3300004220868484210c2000290238210d0c050b20003500192000411f6a3100004230862000411d6a3300004220868484210c2000290224210d2005418080808078460440200221010c050b2000412c6a280200210320002d003421012000200536023020002002ad42ff0183200c42088684370234200020013a0010230041106b22012400200141086a41a48204200041306a22041027200141106a2400200020033602382000200d370330230041106b22012400200141086a4198820420041027200141106a2400230041106b22052400200541086a2106200041106a2107230041106b22022400200241086a2108230041206b22012400200142808001370218200141bd8804360214419c8204200141146a220a1023024002402001280218220b200128021c2203490d00200128021421092001410036021c2001200b20036b3602182001200320096a3602142007200a1033200128021c220720012802184b0d00200141086a20092003200128021420071043200128020c21032008200128020836020020082003360204200141206a24000c010b000b200228020c21012006200228020836020020062001360204200241106a2400200541106a2400101b20004200370230230041106b220124002001410036020c2001410c6a280200210141bd8804200428020022023a000041be880420022004280204724100473a0000200141021044000b20002802342102200020002902383702382000200236023420002001360230200041306a10180c040b000b2000350011200041176a310000423086200041156a3300004220868484210c2000290218210d0c010b2000350021200041276a310000423086200041256a3300004220868484210c2000290228210d0b2000200c3e0031200041376a200c4230883c0000200041356a200c4220883d00002000200d370238200020013a0030200041306a10180b20004101360230200041306a1019000b6c01017f230041206b22022400200241003a000f200241106a20012002410f6a41011045024020022802102201418180808078460440200020022d000f3a00040c010b200020022902143702042000410c6a2002411c6a2802003602000b20002001360200200241206a24000b4601017f20012d00042104200141003a00042004450440200020012802002002200310450f0b2002200141056a2d00003a000020002001280200200241016a200341016b10450b2901017f230041106b220224002002200028020036020c20012002410c6a41041041200241106a24000be70401097f230041306b22022400200242808001370224200241bd88043602202001200241206a220410230240027f02400240024002402002280224220520022802282201490d00200228022021032002200520016b220536022020032001200120036a2201200410002103200520022802202204490d000240024020030e0400020201020b2002200436020c20022001360208200241206a200241086a10210240027f200228022041818080807846044020022d00240c010b200241106a200241206a41ba8304412a103420022802102201418180808078470d0120022d00140b21034195830421054181022106418080808078210141252104418080808078210a0240024020030e020100070b200241206a200241086a103a024020022802204181808080784604402002411c6a2002412c6a280200360200200220022902243702140c010b200241106a200241206a41e483044122103420022802102203418180808078470d050b2002280214220441ff01712103200441807e71210a2002411c6a2802002108200241186a28020021090b200228020c450d044130210441b082040c060b20022f0015200241176a2d0000411074722106200228021c21072002280218210420022d001421050c040b2000428380808098808080807f3702000c050b000b200228021422054108762106200228021c210720022802182104200321010c010b2000410c6a2008360200200041086a200936020020002003200a7236020420004183808080783602000c020b200541ff01712006410874720b21032000200736020c2000200436020820002003360204200020013602000b200241306a24000b180020002802004181808080784904402000410c6a10360b0bef0202077f017e230041206b22042400200441086a2102230041206b22012400200142808001370204200141bd880436020041a0820420011023024002402001280204220620012802082203490d00200128020021052001200620036b220636020020052003200320056a2203200110002105200620012802002207490d000240024020050e0400020201020b2001200736021c200120033602182001200141186a102b200128020045044020012903082108200241106a200141106a29030037030020022008370308200242013703000c030b200141086a290300210820012802042103200241146a200141106a3502003e02002002410c6a200837020020022003360208200242023703000c020b200242003703000c010b000b200141206a24002000027e200429030842017d220842015804402008a7410147044020042903102108200441186a2903000c020b200441106a10250b4200210842000b37030820002008370300200441206a24000bdb0101067f230041106b22042400200441086a2105230041206b22032400200342808001370218200341bd88043602142001200341146a220710230240024020032802182208200328021c2201490d00200328021421062003410036021c2003200820016b3602182003200120066a36021420022007103c200328021c220220032802184b0d00200341086a20062001200328021420021043200328020c21012005200328020836020020052001360204200341206a24000c010b000b200428020c21012000200428020836020020002001360204200441106a24000bfe0101077f230041106b220224002002200036020c200241a88204360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041bd8804360214200241086a200041146a220710300240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a360214200120071032200028021c220120002802184b0d00200041086a20062004200028021420011043200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000bfe0101077f230041106b220224002002200036020c200241ac8204360208230041106b22032400200341086a2105230041206b22002400200042808001370218200041bd8804360214200241086a200041146a2207102d0240024020002802182208200028021c2204490d00200028021421062000410036021c2000200820046b3602182000200420066a360214200120071032200028021c220120002802184b0d00200041086a20062004200028021420011043200028020c21012005200028020836020020052001360204200041206a24000c010b000b200328020c21002002200328020836020020022000360204200341106a2400200241106a24000b0a0020012000412010410bb30102017f017e230041206b22022400200241086a2001102c2000027f2002280208450440200128020404402000418080808078360204200041086a41b082043602002000410c6a423037020041010c020b200241186a290300210320002002290310370308200041106a200337030041000c010b200241106a2903002103200228020c2101200041106a200241186a3502003e0200200041086a20033703002000200136020441010b360200200241206a24000b890101017f230041206b220224002002420037030820024200370300200241106a20012002411010452000027f2002280210220141818080807846044020002002290300370308200041106a200229030837030041000c010b200041086a2002290214370200200041106a2002411c6a2802003602002000200136020441010b360200200241206a24000b110020002001102e200041046a2001102f0b0b002000280200200110230b0b0020002802002001102a0b1c0020002001102e200028020422002001102a200041206a2001102a0bbf0101037f230041106b220324002003200036020c230041106b2200240002402003410c6a28020022042802002202413f4d04402001200241027410420c010b200241ffff004d0440200020024102744101723b010a230041106b2202240020022000410a6a2f01003b010e20012002410e6a41021041200241106a24000c010b200241ffffffff034d04402000200241027441027236020c2000410c6a200110230c010b2001410310422004200110230b200041106a2400200341106a24000b3301017f230041106b22022400200220002903003703002002200041086a2903003703082001200241101041200241106a24000b2901017f230041106b22022400200220002d00003a000f20012002410f6a41011041200241106a24000b6501027f230041106b22042400200441086a41044110103520042802082205450440000b20052001290200370200200541086a200141086a2902003702002000200536020c20002003360208200020023602042000418080808078360200200441106a24000b3901017f230041106b22032400200341086a2001200241001039200328020c21012000200328020836020020002001360204200341106a24000b13002000280200220004402000410c6a10360b0b6501037f2000280204210420002802082103230041106b22002400230041106b220224002002200336020c2002410c6a200110312000418180808078360200200241106a24002000280200418180808078470440000b2001200420031041200041106a24000b5b01017f230041106b220224002002200110210240200228020022014181808080784604400c010b200020022900053700052000410c6a2002410c6a2800003600000b200020022d00043a000420002001360200200241106a24000b930201037f20020440200345044041bc88042d00001a0b230041106b2203240041c088052802004504403f00210441c4880541d0880536020041c08805410136020041c8880520044110743602000b200341086a21050240200141c488052802006a41016b410020016b71220120026a22042001490d0041c888052802002004490440200241ffff036a22042002490d01200441107640002201417f460d012001411074220120044180807c716a22042001490d0141c888052004360200200120026a22042001490d010b41c488052004360200410121060b200520013602042005200636020020032802082101200328020c2104200341106a24002004410020011b21010b20002002360204200020013602000b860702097f027e230041106b2205240020052001103b02402005280200220141818080807846044020052802042101200541086a28020021032005027f02402005410c6a2802002206450d00200641076b22024100200220064d1b2109200341036a417c7120036b210a41002102034002400240024002400240024002400240027e0240024002400240200220036a2d000022044118744118752208410048044042808080808020210b428080808010210c200441ba86046a2d000041026b0e030601020a0b200a20026b4103710d0a200220094f0d0b0340200220036a220441046a280200200428020072418081828478710d0c200241086a22022009490d000b0c0b0b4200210b200241016a220720064f0d05200320076a2c00002107024002400240200441e001470440200441ed01460d012008411f6a41ff0171410c490d022008417e71416e470d0520074140480d030c050b200741607141a07f460d020c040b2007419f7f4a0d030c010b200741404e0d020b4200210c200241026a220420064f0d08200320046a2c000041bf7f4c0d070c020b4200210b200241016a220720064f0d04200320076a2c000021070240024002400240200441f0016b0e050100000002000b2008410f6a41ff017141024b200741404e720d030c020b200741f0006a41ff017141304f0d020c010b2007418f7f4a0d010b200241026a220420064f0d04200320046a2c000041bf7f4a0d014200210c200241036a220420064f0d07200320046a2c000041bf7f4c0d06428080808080e0000c020b428080808080200c010b428080808080c0000b210b428080808010210c0c040b200241016a22042006490d014200210b0b4200210c0c020b200320046a2c000041bf7f4a0d010b200441016a21020c030b2005200b2002ad84200c8437020441010c050b200241016a21020c010b200220064f0d000340200220036a2c00004100480d012006200241016a2202470d000b0c020b20022006490d000b0b20052003360204200541086a200636020041000b36020002402005280200047e2001418080808078470d0120032101200621032005290204052006ad0b210b20004181808080783602002000410c6a200b3e020020002001ad2003ad422086843702040c020b2000418083043602042000418080808078360200200042153702080c010b2005290204210b2000200528020c36020c2000200b370204200020013602000b200541106a24000bc70702077f017e230041106b22032400230041206b22022400200241106a200110210240024002400240024002402002280210220441818080807846044020022d0014220441037141016b0e03020304010b200320022900153700052003410c6a2002411c6a280000360000200320022d00143a0004200320043602000c050b200441027621040c030b200241096a20043a0000200241013a000820022001360204200241003b010c200241106a200241046a2002410c6a4102102220022802102204418180808078470440200320022901163701062003410e6a2002411e6a2f01003b0100200320022f01143b0104200320043602000c040b20022f010c220441ff014d0440200341f481043602042003418080808078360200200342223702080c040b200441027621040c020b200241096a20043a0000200241013a0008200220013602042002410036020c200241106a200241046a2002410c6a4104102220022802102204418180808078470440200228021421052003200229021837020820032005360204200320043602000c030b200228020c220441ffff034d0440200341f481043602042003418080808078360200200342223702080c030b200441027621040c010b200441044f0440200341f481043602042003418080808078360200200342223702080c020b20024100360204200241106a2001200241046a4104104520022802102204418180808078470440200228021421052003200229021837020820032005360204200320043602000c020b2002280204220441ffffffff034b0d00200341f481043602042003418080808078360200200342223702080c010b2003418180808078360200200320043602040b200241206a24000240200328020041818080807846044020032802042106230041206b22052400200541106a2102230041206b220424000240200620012802044b0440200241e082043602042002418080808078360200200242203702080c010b200441086a20064101104620042802082107200441106a2001200428020c220120061045200428021022084181808080784604402002200736020420024181808080783602002002410c6a2006360200200241086a20013602000c010b200220042902143702042002410c6a2004411c6a280200360200200220083602000b200441206a240020052802102101200541086a2005411c6a28020022023602002005200529021422093703002000410c6a20023602002000200937020420002001360200200541206a24000c010b20002003290200370200200041086a200341086a2902003702000b200341106a24000b240020002802004180808080784604402001410010420f0b2001410110422000200110370bdd0101077f230041106b22032400200341086a2105230041206b22022400200242808001370218200241bd880436021441a08204200241146a220710230240024020022802182208200228021c2204490d00200228021421062002410036021c2002200820046b3602182002200420066a360214200120071032200228021c220120022802184b0d00200241086a20062004200228021420011043200228020c21012005200228020836020020052001360204200241206a24000c010b000b200328020c21012000200328020836020020002001360204200341106a24000b4e000240024002400240200141ff017141016b0e020102000b200041046a41868404410c10470c020b200041046a41928404410b10470c010b200041046a419d8404410c10470b200041003602000be90202057f027e230041206b220324002003200136021c200341ac8204360218230041206b22022400200242808001370204200241bd8804360200200341186a2002102d024002402002280204220120022802082204490d00200228020021052002200120046b220636020020052004200420056a2204200210002105200620022802002201490d000240024020050e0400020201020b2002200136021c200220043602182002200241186a102b200228020045044020022903082107200341106a200241106a29030037030020032007370308200342013703000c030b200241086a290300210720022802042101200341146a200241106a3502003e02002003410c6a200737020020032001360208200342023703000c020b200342003703000c010b000b200241206a2400200329030022084202510440000b2003290308210720004200200341106a29030020085022011b37030820004200200720011b370300200341206a24000be80302057f027e230041e0006b22032400200341186a200141186a290000370300200341106a200141106a290000370300200341086a200141086a290000370300200341286a200241086a290000370300200341306a200241106a290000370300200341386a200241186a2900003703002003200129000037030020032002290000370320200341a882043602582003200336025c200341406b2102230041206b22012400200142808001370204200141bd8804360200200341d8006a20011030024002402001280204220620012802082204490d00200128020021052001200620046b220636020020052004200420056a2204200110002105200620012802002207490d000240024020050e0400020201020b2001200736021c200120043602182001200141186a102b200128020045044020012903082108200241106a200141106a29030037030020022008370308200242013703000c030b200141086a290300210820012802042104200241146a200141106a3502003e02002002410c6a200837020020022004360208200242023703000c020b200242003703000c010b000b200141206a2400200329034022084202510440000b2003290348210920004200200341d0006a29030020085022011b37030820004200200920011b370300200341e0006a24000b3e01027f02402000280208220320026a22042003490d00200420002802044b0d00200028020020036a200420036b200120021048200020043602080f0b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b1d00200020012002200320041003220136020420002001417f473602000b0d00200041bd880420011004000b5a01017f2000027f2003200128020422044d04402002200320012802002202200310482001200420036b3602042001200220036a3602004181808080780c010b2000421e3702082000419c86043602044180808080780b3602000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001103520032802080c010b2003200420014101103920032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b7501047f230041106b22042400230041106b22032400200341086a200241001046200328020c2105200441086a2206200328020836020020062005360204200341106a240020042802082103200428020c2001200210082101200020023602082000200136020420002003360200200441106a24000b15002001200346044020002002200110081a0f0b000b0bfd070200418080040bba072f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e72730000000000010069000000980000002e00000000000100690000009300000030000000436f756c64206e6f74206465636f646520604163636f756e7449642e3060011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb00000000000000006f7574206f662072616e6765206465636f64696e6720436f6d706163743c7533323e000091c80e52d57ae5cdc629684fd1f34aae7c996051ffbbddfc496e7075742062756666657220686173207374696c6c2064617461206c656674206166746572206465636f64696e67214e6f7420656e6f756768206461746120746f206465636f646520766563746f72496e76616c696420757466382073657175656e6365756e65787065637465642066697273742062797465206465636f64696e67204f7074696f6e436f756c64206e6f74206465636f64652076617269616e74206279746520666f7220604f7074696f6e60436f756c64206e6f74206465636f646520604f7074696f6e3a3a536f6d65285429604d3a3a556e646572666c6f774d3a3a4f766572666c6f774d3a3a44697642795a65726f2f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d352e302e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e727300290201006a0000005d0000000e0000002f7573722f6c6f63616c2f636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e31322f7372632f636f6465632e7273000000a402010065000000770000000e0000004e6f7420656e6f756768206461746120746f2066696c6c2062756666657201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041fc87040b33020202020202020202020202020202020202020202020202020202020202030303030303030303030303030303030404040404","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"psp22_emitable","version":"0.1.1","authors":[""]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":18}},{"label":"symbol","type":{"displayName":["String"],"type":18}},{"label":"decimal","type":{"displayName":["u8"],"type":9}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":35},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":7},"balance":{"displayName":["Balance"],"type":0},"blockNumber":{"displayName":["BlockNumber"],"type":47},"chainExtension":{"displayName":["ChainExtension"],"type":48},"hash":{"displayName":["Hash"],"type":45},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":46}},"events":[{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":44}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":44}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":36},"messages":[{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":37},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":37},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"label":"spender","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":37},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":38}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":38}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":42},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":42},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0x7271b782"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"amount","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22Mintable::mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":39},"selector":"0xfc3c75d4"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":0}},"root_key":"0xc629684f","ty":1}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":0}},"root_key":"0xffbbddfc","ty":6}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":0}},"root_key":"0x7c996051","ty":13}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":18}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":19}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":18}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":24}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":9}},"root_key":"0xd57ae5cd","ty":28}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"}],"name":"PSP22EmitableContract"}},"root_key":"0x00000000","ty":32}},"types":[{"id":0,"type":{"def":{"primitive":"u128"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","Lazy"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":0},{"name":"KeyType","type":10}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":8,"type":{"def":{"array":{"len":32,"type":9}}}},{"id":9,"type":{"def":{"primitive":"u8"}}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"L","type":11},{"name":"R","type":12}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":15}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":14,"type":{"def":{"tuple":[7,7]}}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"L","type":16},{"name":"R","type":17}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"primitive":"str"}}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"V","type":20},{"name":"KeyType","type":21}],"path":["ink_storage","lazy","Lazy"]}},{"id":20,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":18}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":18}],"path":["Option"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"L","type":22},{"name":"R","type":23}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"V","type":20},{"name":"KeyType","type":25}],"path":["ink_storage","lazy","Lazy"]}},{"id":25,"type":{"def":{"composite":{}},"params":[{"name":"L","type":26},{"name":"R","type":27}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":29}],"path":["ink_storage","lazy","Lazy"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"L","type":30},{"name":"R","type":31}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":32,"type":{"def":{"composite":{"fields":[{"name":"psp22","type":33,"typeName":",>>::Type"},{"name":"metadata","type":34,"typeName":",>>::Type"}]}},"path":["psp22_emitable","psp22_emitable","PSP22EmitableContract"]}},{"id":33,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":1,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":6,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":13,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":34,"type":{"def":{"composite":{"fields":[{"name":"name","type":19,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":24,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":28,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":35,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":36}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":36}],"path":["Result"]}},{"id":36,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":37,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":36}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":36}],"path":["Result"]}},{"id":38,"type":{"def":{"sequence":{"type":9}}}},{"id":39,"type":{"def":{"variant":{"variants":[{"fields":[{"type":40}],"index":0,"name":"Ok"},{"fields":[{"type":36}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":40},{"name":"E","type":36}],"path":["Result"]}},{"id":40,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":41}],"path":["Result"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"fields":[{"type":18,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":18,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":42,"type":{"def":{"variant":{"variants":[{"fields":[{"type":20}],"index":0,"name":"Ok"},{"fields":[{"type":36}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":20},{"name":"E","type":36}],"path":["Result"]}},{"id":43,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":36}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":36}],"path":["Result"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":7}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":7}],"path":["Option"]}},{"id":45,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":46,"type":{"def":{"primitive":"u64"}}},{"id":47,"type":{"def":{"primitive":"u32"}}},{"id":48,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/psp22_emitable.json b/artifacts/psp22_emitable.json new file mode 100644 index 0000000..2a601fa --- /dev/null +++ b/artifacts/psp22_emitable.json @@ -0,0 +1,1607 @@ +{ + "source": { + "hash": "0x98413fd0c4f80a627f09ff719334b904b4600ba6b02f2e2b4b76e95f8761206a", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "psp22_emitable", + "version": "0.1.1", + "authors": [""] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 18 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 18 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 35 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 7 + }, + "balance": { + "displayName": ["Balance"], + "type": 0 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 47 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 48 + }, + "hash": { + "displayName": ["Hash"], + "type": 45 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 46 + } + }, + "events": [ + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 36 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 37 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 37 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 37 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 38 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 38 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 42 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 42 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0x7271b782" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Mintable::mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 39 + }, + "selector": "0xfc3c75d4" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 0 + } + }, + "root_key": "0xc629684f", + "ty": 1 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 0 + } + }, + "root_key": "0xffbbddfc", + "ty": 6 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 0 + } + }, + "root_key": "0x7c996051", + "ty": 13 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 18 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 19 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 18 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 24 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 9 + } + }, + "root_key": "0xd57ae5cd", + "ty": 28 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + } + ], + "name": "PSP22EmitableContract" + } + }, + "root_key": "0x00000000", + "ty": 32 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 10 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 8, + "type": { + "def": { + "array": { + "len": 32, + "type": 9 + } + } + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 11 + }, + { + "name": "R", + "type": 12 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 15 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 14, + "type": { + "def": { + "tuple": [7, 7] + } + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 16 + }, + { + "name": "R", + "type": 17 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 20 + }, + { + "name": "KeyType", + "type": 21 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 20, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 18 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 18 + } + ], + "path": ["Option"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 22 + }, + { + "name": "R", + "type": 23 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 20 + }, + { + "name": "KeyType", + "type": 25 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 26 + }, + { + "name": "R", + "type": 27 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 29 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 30 + }, + { + "name": "R", + "type": 31 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "psp22", + "type": 33, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 34, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["psp22_emitable", "psp22_emitable", "PSP22EmitableContract"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 1, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 6, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 13, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 19, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 24, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 28, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 35, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 36 + } + ], + "path": ["Result"] + } + }, + { + "id": 36, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 37, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 36 + } + ], + "path": ["Result"] + } + }, + { + "id": 38, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 39, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 40 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 40 + }, + { + "name": "E", + "type": 36 + } + ], + "path": ["Result"] + } + }, + { + "id": 40, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 41, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 18, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 18, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 42, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 20 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 20 + }, + { + "name": "E", + "type": 36 + } + ], + "path": ["Result"] + } + }, + { + "id": 43, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 36 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 36 + } + ], + "path": ["Result"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 7 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + } + ], + "path": ["Option"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 46, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 47, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 48, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/psp22_emitable.wasm b/artifacts/psp22_emitable.wasm new file mode 100644 index 0000000..ff14ffb Binary files /dev/null and b/artifacts/psp22_emitable.wasm differ diff --git a/artifacts/stable_token.contract b/artifacts/stable_token.contract new file mode 100644 index 0000000..92ea981 --- /dev/null +++ b/artifacts/stable_token.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x881cf10fdef680e4b87f90558ced996ec6661552886bc1c19e7981839f738d0f","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001510e60027f7f0060037f7f7f0060027f7f017f60037f7f7f017f60000060017f0060047f7f7f7f017f60017f017f60027e7e0060057f7f7f7e7e0060037f7e7e0060047f7f7f7f0060037e7e7f006000017f02e0010b057365616c310b6765745f73746f726167650006057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e74000b057365616c320b7365745f73746f726167650006057365616c310d636c6561725f73746f726167650002057365616c3110636f6e7461696e735f73746f726167650002057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f7279020102100342410303030300000107000202000000000005000c050d00000105000000040008040001010000040009090a02020000000400000a08010000010100030000000000070616037f01418080040b7f0041c084050b7f0041b484050b0711020463616c6c002f066465706c6f7900390afb8301412b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206100f200228020c220120022802084b0d0020062002280204200110102002410036022c20022004360228200220053602242006200241246a100f2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0a00200120004120102c0bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1009200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100a1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000ba30101047f230041106b22012400200142808001370208200141b484043602042000200141046a22031012024020012802082204200128020c2200490d00200128020421022001200420006b220436020420022000200020026a2202200310002103200420012802042200490d00027f0240024020030e0400030301030b20004104472000410449720d0220022800000c010b41000b2100200141106a240020000f0b000b100041b08304200110472000200110230b1f00027f2000200110144504404101200041c280041014450d011a0b41030b0b4f01017f230041306b22022400200220003602082002410c6a20014121100a1a41012101200241086a104a450440200241003a000c20022000360208200241086a104a21010b200241306a240020010bb90102027f017e230041206b22032400420121040240200128020422024120490d002001200241206b36020420012001280200220241206a360200200341086a200110162003290308a70d00200341186a2903002104200041286a200329031037030020002002290000370008200041306a2004370300200041206a200241186a290000370000200041186a200241106a290000370000200041106a200241086a290000370000420021040b20002004370300200341206a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000b8b0201047f230041306b22022400200241086a2001101802402002280208450440200228020c2103200220011019024020022d00000d000240024020022d000122040e020100020b200128020422054120490d012001200541206b36020420012001280200220141206a360200200241186a200141086a290000370300200241206a200141106a290000370300200241286a200141186a290000370300200220012900003703100b20002002290310370005200020043a0004200020033602002000411d6a200241286a290300370000200041156a200241206a2903003700002000410d6a200241186a2903003700000c020b200041023a00040c010b200041023a00040b200241306a24000b4601017f20012802042202410449047f4101052001200241046b36020420012001280200220141046a3602002001280000210241000b210120002002360204200020013602000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b9c0201057f23004180016b220124002001200041d000100a220042808001370258200041b48404360254200041d4006a4103101b200041f8006a2201200041dc006a28020036020020002000290254370370200041f0006a220241818004100e200041e8006a2203200128020036020020002000290370370360200041e0006a2000100e20012003280200360200200020002903603703702002200041206a2204100e02402000280274220520012802002201490d0020002802702103200041003602782000200520016b3602742000200120036a36027020002002100f20042002100f2000290340200041c8006a2903002002101c2000280278220420002802744b0d002003200120002802702004100220004180016a24000f0b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a104620012001200228020c6a22014b0d0020002001360208200241106a24000f0b000b2a01017f230041106b220324002003200137030820032000370300200220034110102c200341106a24000b850101027f230041106b2201240020014180800136020c41b484042001410c6a1007200128020c2202418180014f2002411f4d72450440200041b58404290000370001200041096a41bd8404290000370000200041116a41c58404290000370000200041186a41cc8404290000370000200041b484042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1008200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0ba30202047f017e230041206b22022400200242808001370218200241b484043602142001200241146a22041023024020022802182205200228021c2201490d00200228021421032002200520016b220536021420032001200120036a2201200410002104200520022802142203490d00024002400240024020040e0400040401040b2003450d012002200341016b22033602102002200141016a36020c02400240024020012d00000e020100040b200241146a2002410c6a103a20022802142201418080808078460d0320022802100d03200229021821060c010b20030d0241808080807821010b20002006370204200020013602000c020b20004181808080783602000c010b2000418280808078360200200041103a00040b200241206a24000f0b000bd00102047f027e230041306b22022400200242808001370228200241b484043602242001200241246a22041048024020022802282205200228022c2201490d00200228022421032002200520016b220536022420032001200120036a2201200410002103200520022802242204490d00027e0240024020030e0400030301030b2002200436022820022001360224200241086a200241246a10452002290308a70d0220022903102106200241186a2903000c010b42000b21072000200637030020002007370308200241306a24000f0b000bca0202037f017e230041f0006b22032400200341386a200141186a290000370300200341306a200141106a290000370300200341286a200141086a290000370300200341c8006a200241086a290000370300200341d0006a200241106a290000370300200341d8006a200241186a2900003703002003200129000037032020032002290000370340200342808001370268200341b48404360264200341206a200341e4006a22041049024020032802682205200328026c2201490d00200328026421022003200520016b220536026420022001200120026a2201200410002102200520032802642204490d002000027e0240024020020e0400030301030b2003200436026820032001360264200341086a200341e4006a10452003290308a70d0220032903102106200341186a2903000c010b42000b37030820002006370300200341f0006a24000f0b000bd40102057f027e230041306b22012400200142808001370228200141b4840436022441c6d3a0fb04200141246a22041023024020012802282205200128022c2202490d00200128022421032001200520026b220536022420032002200220036a2202200410002103200520012802242204490d00027e0240024020030e0400030301030b2001200436022820012002360224200141086a200141246a10452001290308a70d0020012903102106200141186a2903000c010b42000b21072000200637030020002007370308200141306a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a4104102c200241106a24000b3801017f230041106b22022400200241086a2001101920022d00092101200020022d00084101713a0000200020013a0001200241106a24000b4401027f41b4840441003a000041012103200141ff0171410347044041b5840441013a000041022103200121020b200341b484046a20023a00002000200341016a102a000b130041b484044181023b010041014102102a000b9b0201037f230041106b22022400200241808001360208200241b484043602040240024002400240024020012802002204410947044041b4840441003a00002004410846044041b5840441003a0000410221010c060b41b5840441013a000002400240024002400240200441016b0e0708000102060304070b41b6840441023a00000c080b4103210141b6840441033a00000c080b41b6840441043a00000c060b41b6840441063a00000c050b41b6840441073a00000c040b41b484044181023b0100410221010c040b410521030b41b6840420033a00002002410336020c200141086a2802002001410c6a280200200241046a102b200228020c220141818001490d02000b41b6840441013a00000b410321010b20002001102a000b4c01017f230041106b22022400200241b4840436020441b4840441003a0000200242808081801037020820002001200241046a101c200228020c2202418180014f0440000b41002002102a000b5301037f230041106b22002400200042808001370208200041b484043602044100200041046a1023200028020c220120002802084b0440000b200028020422022001200120026a410010031a200041106a24000b0d00200041b4840420011006000b2c01017f230041106b220324002003200136020c2003410c6a20021046200220002001102c200341106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100a1a200020043602080f0b000b000b2c0020002802004180808080784604402001410010430f0b200141011043200028020420002802082001102b0b2601017f230041106b22022400200220003a000f20012002410f6a4101102c200241106a24000bb434020e7f067e230041e0026b22002400024002400240024002400240027f02400240101e41ff01714105470d0020004180800136024841b48404200041c8006a100120002802482202418180014f0d000240024020024104490d00200041b884043602b8012000200241046b22073602bc0141b784042d0000210541b684042d0000210441b584042d00002103024002400240024002400240024002400240024041b484042d0000220141ee006b0e05050a0a0701000b024002400240024002400240024002400240200141ca006b0e040c121201000b0240200141fc016b0e03101206000b200141ea01460d0d20014134460d072001413d460d06200141d400460d02200141e500470440200141fa00460d112001418301460d0b2001419601460d05200141b201460d04200141c101460d0a200141db01460d022001411647200341ff0171412d4772200441f80147200541ff017141c2014772720d1241808080807821040c130b200341ff017141e80047200441384772200541ff0171412f472007411f4d72720d11200041f0016a41c88404290200370300200041f8016a41d08404290200370300200041c084042902003703e80141bc84042802002201410876210241b984042f000041bb84042d000041107472210641b884042d0000210341818080807821040c120b200341ff017141c70047200441d9014772200541ff0171412147200241c4006b41404f72720d10200041f0016a41c88404290200370300200041f8016a41d08404290200370300200041c084042902003703e80141bc84042802002201410876210241b984042f000041bb84042d000041107472210641e08404290200210f41d88404290200210e41f48404280200210741ec8404290200211041e88404280200210541b884042d0000210341828080807821040c110b200341ff0171412047200441f9014772200541ff017141f50147200741204972720d0f200041d0006a220441c88404290200370300200041d8006a220841d08404290200370300200041c08404290200370348200241346b2202416f4b0d0f41bb84042d0000210641b984042f0000210741bc8404280200210141b884042d00002103200041e884043602b801200020023602bc0141e08404290200210f41d88404290200210e200041b8026a200041b8016a103020002802b8022205418080808078460d0f20072006411074722106200041f0016a2004290300370300200041f8016a2008290300370300200020002903483703e8012001410876210220002902bc02211041838080807821040c100b200341ff017141b30147200441c7014772200541ff017141ee0047200741204972720d0e200041d0006a220841c88404290200370300200041d8006a220941d08404290200370300200041c08404290200370348200241c4006b2201415f4b2001411049720d0e41bb84042d0000210641b984042f0000210a41bc8404280200210141b884042d0000210341e08404290200210f41d88404290200210e41f48404280200210741ec8404290200211041e8840428020021052000418885043602b8012000200241d4006b3602bc0141808504290200211141f884042902002112200041b8026a200041b8016a103020002802b8022204418080808078460d0e200a2006411074722106200041f0016a2008290300370300200041f8016a2009290300370300200020002903483703e8012001410876210220002902bc0221130c0f0b200341ff0171410f472004411b4772200541ff017141bd0147720d0d200041c8006a200041b8016a101520002903484200520d0d200041f0016a200041e0006a290300370300200041f8016a200041e8006a2903003703002000200041d8006a2903003703e801200028025022034108762106200041d4006a28020022014108762102200041f8006a290300210f200041f0006a290300210e41858080807821040c0e0b200341ff017141d60147200441b5014772200541ff017141fa0047720d0c200041c8006a200041b8016a101520002903484200520d0c200041f0016a200041e0006a290300370300200041f8016a200041e8006a2903003703002000200041d8006a2903003703e801200028025022034108762106200041d4006a28020022014108762102200041f8006a290300210f200041f0006a290300210e41868080807821040c0d0b200341ff017141cb0147200441d7004772200541ff017141d50147720d0b200041c8006a200041b8016a101520002903484200520d0b200041f0016a200041e0006a290300370300200041f8016a200041e8006a2903003703002000200041d8006a2903003703e801200028025022034108762106200041d4006a28020022014108762102200041f8006a290300210f200041f0006a290300210e41878080807821040c0c0b200341ff01714126472004411b4772200541ff017141d40147720d0a41888080807821040c0b0b200341ff0171412047200441db004772200541ff017141e50147720d0941898080807821040c0a0b200341ff017141f10047200441b7014772200541ff017141820147720d08418a8080807821040c090b200341ff017141d90147200441ac014772200541ff0171411847720d07200041c8006a200041b8016a101720002d004c22014102460d07200041f0016a200041d8006a290200370300200041f8016a200041e0006a290200370300200020002902503703e80120002f004920002d004b41107472210620002f004d200041cf006a2d000041107472210220002d004821032000290268210e418b8080807821040c080b200341ff017141da01472004413b4772200541ff017141b20147200741044972720d06200041bc84043602b8012000200241086b3602bc0141b8840428020022034108762106418c8080807821040c070b200341ff017141c00147200441e2004772200541ff017141fd0147720d05200041c8006a200041b8016a101720002d004c22014102460d05200041f0016a200041d8006a290200370300200041f8016a200041e0006a290200370300200020002902503703e80120002f004920002d004b41107472210620002f004d200041cf006a2d000041107472210220002d004821032000290268210e418d8080807821040c060b200341ff017141cf0047200441094772200541ff017141910147720d04200041c8006a200041b8016a101720002d004c22014102460d04200041f0016a200041d8006a290200370300200041f8016a200041e0006a290200370300200020002902503703e80120002f004920002d004b41107472210620002f004d200041cf006a2d000041107472210220002d004821032000290268210e418e8080807821040c050b200341ff017141f10147200441244772200541ff0171418a0147720d03200041c8006a200041b8016a101720002d004c22014102460d03200041f0016a200041d8006a290200370300200041f8016a200041e0006a290200370300200020002902503703e80120002f004920002d004b41107472210620002f004d200041cf006a2d000041107472210220002d004821032000290268210e418f8080807821040c040b200341ff017141a60147200441c8004772200541ff017141830147200741044972722002417c71410846720d0241b884042802002103200041c084043602b80120002002410c6b3602bc012003410876210641bc84042802002201410876210241908080807821040c030b200341ff0171413c47200441f5004772200541ff017141d40147720d01200041c8006a200041b8016a101520002903484200520d01200041f0016a200041e0006a290300370300200041f8016a200041e8006a2903003703002000200041d8006a2903003703e801200028025022034108762106200041d4006a28020022014108762102200041f8006a290300210f200041f0006a290300210e41918080807821040c020b200341ff0171419d0147200441a5014772200541ff0171411047720d00200041c8006a200041b8016a101520002903484200520d00200041f0016a200041e0006a290300370300200041f8016a200041e8006a2903003703002000200041d8006a2903003703e801200028025022034108762106200041d4006a28020022014108762102200041f8006a290300210f200041f0006a290300210e41928080807821040c010b1026000b200041e0006a200041f8016a290300370300200041d8006a200041f0016a29030037030020004190016a2011370300200041f0006a200f370300200020002903e80137035020002012370388012000200e3703682000201337029c01200020043602980120002007360284012000201037027c200020053602782000200141ff0171200241087472220536024c2000200341ff017120064108747222013602482000428080013702ec01200041b484043602e8014100200041e8016a2206102320002802ec01220720002802f0012202490d0020002802e80121032000200720026b22073602e80120032002200220036a20061000200720002802e801220249722002720d00200041c8006a4104722103024002400240024002400240027f0240024002400240027f02400240024002400240024002400240024002400240024002400240024041042004418080808078732202200241134f1b41016b0e120001020311041516171805060708090a0b0c0d0b230041406a22012400200141286a200041c8006a220241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041b8016a36021c20012002290000370220200141086a200141206a10202001290308210e200041186a2202200141106a2903003703082002200e370300200141406b24002000290318200041206a2903001028000b230041d0006b22012400200141106a200041c8006a220241c000100a1a20012002200141306a10212001290300210e200041286a2202200141086a2903003703082002200e370300200141d0006a24002000290328200041306a2903001028000b200041d0026a200041e0006a290300370300200041c8026a200041d8006a290300370300200041c0026a200041d0006a290300370300200020002903483703b802200041e8016a2201101d200041b8016a2001200041b8026a200e200f103120002802b80122024108460d0b200041e0016a200041c4016a280200360200200020002902bc013703d80141010c0c0b200041d0016a200041e0006a290300370300200041c8016a200041d8006a290300370300200041c0016a200041d0006a290300370300200041c0026a200041e8006a220141086a290000370300200041c8026a200141106a290000370300200041d0026a200141186a290000370300200020002903483703b801200020012900003703b802200041e8016a2201101d200041d8016a2203200041b8016a2205200120122011103220002802d80122024108470d1820032005200041b8026a20122011103120002802d80122024108460d0c0c180b200041b8026a2201101d200041386a2001200041c8006a1021200e200029033822117c221020115422012001ad200041406b290300220e200f7c7c220f200e54200e200f511b0d0d20004180026a2201200041d0026a2202290000370300200041f8016a2203200041c8026a2205290000370300200041f0016a2204200041c0026a220629000037030020004190026a2207200041d0006a220829030037030020004198026a2209200041d8006a220a290300370300200041a0026a220b200041e0006a220c290300370300200020002900b8023703e8012000200029034837038802200041e8016a220d2010200f1033200041b0026a200f370300200120022900003703002003200529000037030020042006290000370300200720082903003703002009200a290300370300200b200c290300370300200020103703a802200020002900b8023703e8012000200029034837038802200d101a0c0e0b200041c8006a2201280200200141046a10142100230041106b22012400200141b4840436020041b4840441003a00002001428080818010370204200120003a000f20012001410f6a4101102c20012802082201418180014f0440000b0c1d0b200110112101230041106b22002400200041b4840436020441b4840441003a000020004280808180103702082001200041046a10230c1a0b20011011210541012102200041e9016a101d200041013a00e80102402005200041e8016a1013220041ff01714103470d004102210020012003103441ff01714103470d00102941002102410321000b0c160b20011011210541012102200041e9016a101d200041013a00e80102402005200041e8016a1013220041ff01714103470d00200120031035220041ff01714103470d00102941002102410321000b0c150b200041b8026a220520034121100a1a41012102200041e9016a2204101d20002d00b8020440200541017220044120100d450d100b410021000c100b200110112102200041e9016a101d200041013a00e8012002200041e8016a22021013220641ff0171410346047f20052001101122074704402000428080013702ec01200041b484043602e80120012002101220002802ec01220820002802f0012203490d1220002802e8012104200041003602f0012000200820036b3602ec012000200320046a3602e80120052002102320002802f001220820002802ec014b0d122004200320002802e801200810031a200020053602e001200020073602dc01200020013602d8012000428080013702bc01200041b484043602b801200041b8016a4102101b200041f0016a2201200041c0016a280200360200200020002902b8013703e801200241858104100e200041c0026a22032001280200360200200020002903e8013703b802200041b8026a200041d8016a103620002802bc02220520032802002201490d1220002802b8022103200041003602f0012000200520016b3602ec012000200120036a3602e80120002802d8012002102320002802dc012002102320002802e0012002102320002802f001220220002802ec014b0d122003200120002802e801200210020b102941000541010b20061025000b2000200041b8016a3602e801200041f0016a200041c8006a4130100a210120004198026a290300210e20004190026a290300210f200041b9026a101d200041013a00b80202404196e4ea6c200041b8026a22021013220341ff01714103460440200241002001200f200e10310c010b200041b8026a200310370b0c130b2000200041b8016a3602e801200041f0016a200041c8006a4130100a210120004198026a290300210e20004190026a290300210f200041b9026a101d200041013a00b802024041f6d7f2af06200041b8026a22021013220341ff01714103460440200220014100200f200e10310c010b200041b8026a200310370b0c120b230041106b22012400200110222001290300210e200041086a2202200141086a2903003703082002200e370300200141106a24002000290308200041106a2903001028000b102941000b2101200041f4016a200041e0016a280200360200200020002903d8013702ec010c100b10294108210241000c0c0b200041a0026a200041e0006a29030037030020004198026a200041d8006a29030037030020004190026a200041d0006a2903003703002000200029034837038802200041b8026a2202101d230041406a22012400200141186a200241186a290000370300200141106a200241106a290000370300200141086a200241086a290000370300200141286a200041c8006a220341086a290000370300200141306a200341106a290000370300200141386a200341186a29000037030020012002290000370300200120032900003703202001200e200f1033200141406b2400200041b0026a200f37030020004180026a200041d0026a290000370300200041f8016a200041c8026a290000370300200041f0016a200041c0026a2900003703002000200e3703a802200020002900b8023703e801200041e8016a2201101a1029200041083602e801410020011027000b200041b8016a41047241011038200041c8016a350200210f200041c0016a290300210e410120002802bc0122014108470d011a0b10294108210141000b2102200041f4016a200f3e02002000200e3702ec01200020013602e8012002200041e8016a1027000b200041e8016a2201101d200041b8026a2001200041c8006a200e200f10320c090b200041e8016a2101230041106b22002400200041046a41d1e7abf27a101f0c0b0b200041e8016a2101230041106b22002400200041046a419191bb9005101f0c0a0b027f230041106b22012400200142808001370208200141b4840436020441d5f595ef7c200141046a22031023024020012802082205200128020c2200490d00200128020421022001200520006b220536020420022000200020026a2200200310002102200520012802042203490d00027f0240024020020e0400030301030b20012003360208200120003602042001200141046a102420012d00000d0020012802080d0020012d00010c010b41000b2100200141106a240020000c010b000b2101230041106b22002400200041b4840436020441b4840441003a000020004280808180103702082001200041046a102e0c080b200120031035220041ff01714103470d00102941002102410321000b0c030b000b200041b0016a200041e4016a280200360200200020002902dc013703a80141010b2101200041f4016a200041b0016a280200360200200020002903a8013702ec010c020b200220001025000b20002802b802410846047f102941000541010b200041b8026a1027000b200020023602e8012001200041e8016a1027000b200028020c2201418180014f0440000b0c010b0240200028020441ffffffff076a41014d044020014180808080783602000c010b20012000290204370200200141086a2000410c6a2802003602000b200041106a2400230041106b22002400200041808001360208200041b484043602040240200128020041818080807846044041b484044181023b0100410221010c010b2000410136020c41b4840441003a00002001200041046a102d200028020c220141818001490d00000b0b41002001102a000bfe0201067f230041206b22022400200241106a200110194180808080782105024020022d00100d000240024002400240024020022d0011220341037141016b0e03010200030b200341044f0d04200241086a2001101820022802080d04200228020c22044180808080044f0d030c040b200241196a20033a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210440d0320022f011c220341ff014d0d03200341027621040c020b200241196a20033a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410440d02200228021c220341808004490d02200341027621040c010b200341fc017141027621040b200128020422062004490d002002200441011041200228020021032002280204200128020022052004100a21072001200620046b3602042001200420056a36020041808080807821052003418080808078460d0020002007ad2004ad42208684370204200321050b20002005360200200241206a24000b970802067f037e230041f0016b220524000240024002400240024020010440200541386a200110202005290338220c2003542206200541406b290300220b2004542004200b511b0d012001200c20037d200b20047d2006ad7d103c0c030b200541286a10222005290328220b20037c220d200b5422062006ad200541306a290300220b20047c7c220c200b54200b200c511b0d01200d200c103d0c020b200042003702042000410c6a42003e0200410121060c020b20054188016a4101103820052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b02400240024020020440200541186a200210202005290318220b20037c220d200b5422062006ad200541206a290300220b20047c7c220c200b54200b200c511b0d012002200d200c103c0c030b200541086a10222005290308220c2003542206200541106a290300220b2004542004200b511b0d01200c20037d200b20047d2006ad7d103d0c020b20054188016a4101103820052802880122064108460d012000200529028c013702042000410c6a20054194016a2802003602000c020b20054188016a4100103820052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b4100210620010440200541e0006a200141186a290000370300200541d8006a200141106a290000370300200541d0006a200141086a29000037030020052001290000370348410121070b2002044020054180016a200241186a290000370300200541f8006a200241106a290000370300200541f0006a200241086a29000037030020052002290000370368410121060b200541b1016a200541e0006a290300370000200541a9016a200541d8006a290300370000200541a1016a200541d0006a220a290300370000200541c2016a200541f0006a2209290300370100200541ca016a200541f8006a290300370100200541d2016a20054180016a2903003701002005200529034837009901200520052903683701ba0120052004370390012005200337038801200520063a00b901200520073a0098012005428080013702e801200541b484043602e401200541e4016a4103101b2009200541ec016a280200360200200520052902e401370368200541e8006a220841a28004100e200a2009280200360200200520052903683703482008200541c8006a220720054199016a410020011b103e20072008200541ba016a410020021b103e200528024c220620052802502201490d0120052802482102200541003602702005200620016b36026c2005200120026a36026820054198016a2008103f200541b9016a2008103f200320042008101c20052802702206200528026c4b0d0120022001200528026820061002410821060b20002006360200200541f0016a24000f0b000bf60202107f027e230041e0006b220524002005200120021021410821060240200529030022162003542207200541086a290300221520045420042015511b450440200541286a2208200141186a2209290000370300200541206a220a200141106a220b290000370300200541186a220c200141086a220d290000370300200541386a220e200241086a220f290000370300200541406b2210200241106a2211290000370300200541c8006a2212200241186a22132900003703002005200129000037031020052002290000370330200541106a2214201620037d2203201520047d2007ad7d22041033200541d8006a200437030020082009290000370300200a200b290000370300200c200d290000370300200e200f29000037030020102011290000370300201220132900003703002005200337035020052001290000370310200520022900003703302014101a0c010b200042003702042000410c6a42003e0200410221060b20002006360200200541e0006a24000b8e0101047f230041106b22032400200342808001370208200341b484043602042000200341046a22061049024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a360204200120022006101c200328020c220420032802084b0d00200520002003280204200410031a200341106a24000f0b000bd70301067f230041c0016b220224004102210302402000200110144504402002200036024c200241d0006a20014121100a2106200242808001370208200241b48404360204200241cc006a2205200241046a22041040200228020c220320022802084b0d01200228020422072003200320076a410010031a2002412a6a101d20022000360204200241086a20014121100a1a200241013a00292005200441c800100a1a20024280800137029801200241b484043602940120024194016a4104101b200241b8016a22002002419c016a28020036020020022002290294013703b001200241b0016a220441b98304100e200241a8016a22012000280200360200200220022903b0013703a001200241a0016a22032005103620002001280200360200200220022903a0013703b00120032004200241d1006a410020022d00501b103e20042003200241f2006a410020022d00711b103e20022802b401220320022802b8012200490d0120022802b0012101200241003602b8012002200320006b3602b4012002200020016a3602b001200228024c2004102320062004103f200241f1006a2004103f20022802b801220320022802b4014b0d012001200020022802b00120031002410321030b200241c0016a240020030f0b000b940301077f23004180016b220224000240200020011013220741ff01714103460440200220003602082002410c6a20014121100a1a200242808001370274200241b48404360270200241086a2205200241f0006a220410402002280278220320022802744b0d012002280270200310041a20054104722203101d2002412c6a20014121100a210820022000360208200242808001370258200241b48404360254200241d4006a4104101b200241f8006a2200200241dc006a28020036020020022002290254370370200441e48004100e200241e8006a2201200028020036020020022002290370370360200241e0006a2206200510362000200128020036020020022002290360370370200620042002412d6a410020022d002c1b103e20062003100e2002280264220520022802682200490d0120022802602101200241003602782002200520006b3602742002200020016a36027020022802082004102320082004103f20032004100f2002280278220320022802744b0d01200120002002280270200310020b20024180016a240020070f0b000ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061047200228020c220120022802084b0d0020062002280204200110102002410036022c20022004360228200220053602242006200241246a100f2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b4e000240024002400240200141ff017141016b0e020102000b200041046a41f08304411110420c020b200041046a41818404410f10420c010b200041046a41908404411110420b200041003602000b3501017f200041046a21020240200141ff0171450440200241d98304410c10420c010b200241e58304410b10420b200041003602000be104010a7f230041f0006b220024000240101e41ff01714105470d0020004180800136023c41b484042000413c6a22071001200028023c2202418180014f0d00024020024104490d00200041b884043602202000200241046b36022441b484042d0000419b01470d0041b584042d000041ae01470d0041b684042d0000419d01470d0041b784042d000041de00470d00200041e0006a2202200041206a2201103a20002802602203418080808078460d0020002d00642104200041286a2001103a2000280228418080808078460d0020002001102420002d00000d0020002d00012108200041cb006a200041306a22012802002205360000200041176a2209200536000020002000290228370043200041106a2205200041c4006a2902003703002000200041e5006a220628000036023c2000200641036a28000036003f2000200029023c370308200041376a2206200928000036000020012005290300370300200020002903083703282000413d6a101d200041e8006a2201200028000b360000200020043a0064200020033602602000200028020836006541d1e7abf27a2002103b200120062800003602002000200029002f370360419191bb90052002103b200042808001370264200041b4840436026041d5f595ef7c200210232000280264220420002802682201490d0120002802602103200041003602682000200420016b3602642000200120036a36026020082002102e2000280268220220002802644b0d01200320012000280260200210031a200041013a003c41002007103441ff01714103470d01102941b4840441003b010041004102102a000b1026000b000b9c0502097f017e230041106b22062400200641046a2001103002400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541a581046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000b8c0101047f230041106b22022400200242808001370208200241b484043602042000200241046a22041023024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a36020420012004102d200228020c220120022802084b0d00200320002002280204200110031a200241106a24000f0b000b8e0101047f230041106b22032400200342808001370208200341b484043602042000200341046a22061048024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a360204200120022006101c200328020c220420032802084b0d00200520002003280204200410031a200341106a24000f0b000b920101057f230041106b22022400200242808001370208200241b4840436020441c6d3a0fb04200241046a22061023024020022802082203200228020c2204490d00200228020421052002410036020c2002200320046b3602082002200420056a360204200020012006101c200228020c220320022802084b0d00200520042002280204200310031a200241106a24000f0b000bd30101057f230041306b22032400024002402002044020012002100e0c010b2001280204220420012802082202490d01200128020021052003410036020c2003200420026b22043602082003200220056a22053602044100200341046a2206102e200328020c220720032802084b0d0120062003280204200710102003410036022c20032004360228200320053602242006200341246a100f20022002200328022c6a22024b0d01200120023602080b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b210020002d00004504402001410010430f0b200141011043200041016a2001100f0b1c0041b4830420011047200028020020011023200041046a2001103f0be00101017f024002402001450440410121020c010b20014100480d01200245044041b084042d00001a0b027f41a484042d0000044041a884042802000c010b3f00210341a8840441c0840536020041a4840441013a000041ac8404200341107436020041c084050b2202200120026a22034b0d0141ac84042802002003490440200141ffff036a220341107640002202417f460d022002411074220220034180807c716a22032002490d0241ac84042003360200200120026a22032002490d020b41a8840420033602002002450d010b20002002360204200020013602000f0b000b4801027f230041106b22032400200341086a20024100104120032802082104200328020c20012002100a2101200020023602082000200136020420002004360200200341106a24000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100a1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100a1a0b2000200320026b3602042000200120026a36020041000b0b5502027f017e230041206b22022400200241086a20011016200241186a29030021042002280208210320002002290310370308200041106a200437030020002003200128020472410047ad370300200241206a24000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410430c010b200041ffff004d0440200220004102744101723b010e20012002410e6a4102102c0c010b200041ffffffff034d04402000410274410272200110230c010b2001410310432000200110230b200241106a24000b0b002000280200200110230b100041ac83042001104720002001100f0b190041a883042001104720002001100f200041206a2001100f0b5001017f230041106b22012400200142808001370208200141b484043602042000200141046a1040200128020c220020012802084b0440000b2001280204200010052100200141106a24002000417f470b0bce030400418080040b42011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb0041e380040bc2010100d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b01de670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc40301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041e782040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041a883040b797c996051ffbbddfcf9372874510afc69014178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b4d3a3a556e646572666c6f774d3a3a4f766572666c6f7741433a3a496e76616c696443616c6c657241433a3a4d697373696e67526f6c6541433a3a526f6c65526564756e64616e74","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"stable_token","version":"1.0.0","authors":["Konrad Wierzbik "],"description":"Abax Protocol Stable Token contract","license":"BUSL-1.1"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":29}},{"label":"symbol","type":{"displayName":["String"],"type":29}},{"label":"decimal","type":{"displayName":["u8"],"type":11}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":47},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":9},"balance":{"displayName":["Balance"],"type":15},"blockNumber":{"displayName":["BlockNumber"],"type":0},"chainExtension":{"displayName":["ChainExtension"],"type":68},"hash":{"displayName":["Hash"],"type":67},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":63}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":57}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":15}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":15}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":15}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":11}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":29}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":29}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":10}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":15}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":57}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":57}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":62}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":64}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":66}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":0}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":65}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":65}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":65}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":9}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":63}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":0}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":8}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":0}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":8}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":9}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":8}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":8}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":15}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":48},"messages":[{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":9}},{"label":"spender","type":{"displayName":["AccountId"],"type":9}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":50}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}},{"label":"data","type":{"displayName":["Vec"],"type":50}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":9}},{"label":"delta_value","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":54},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":54},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":55},"selector":"0x7271b782"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"address","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::has_role","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":56},"selector":"0xc1d9ac18"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::get_role_admin","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":58},"selector":"0x83da3bb2"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::grant_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0x4ac062fd"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::revoke_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0x6e4f0991"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"account","type":{"displayName":["Option"],"type":8}}],"default":false,"docs":[],"label":"AccessControl::renounce_role","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0xeaf1248a"},{"args":[{"label":"role","type":{"displayName":["RoleType"],"type":0}},{"label":"new_admin","type":{"displayName":["RoleType"],"type":0}}],"default":false,"docs":[],"label":"AccessControl::set_role_admin","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":59},"selector":"0x71a64883"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Mintable::mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0xfc3c75d4"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":9}},{"label":"amount","type":{"displayName":["Balance"],"type":15}}],"default":false,"docs":[],"label":"PSP22Burnable::burn","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x7a9da510"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xf9372874","ty":0}},"root_key":"0xf9372874","ty":1}},"name":"admin_roles"},{"layout":{"root":{"layout":{"leaf":{"key":"0x510afc69","ty":4}},"root_key":"0x510afc69","ty":6}},"name":"members"}],"name":"AccessControlData"}},"name":"access"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":15}},"root_key":"0xc629684f","ty":16}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":15}},"root_key":"0xffbbddfc","ty":20}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":15}},"root_key":"0x7c996051","ty":24}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":29}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":30}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":29}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":35}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":11}},"root_key":"0xd57ae5cd","ty":39}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"}],"name":"StableToken"}},"root_key":"0x00000000","ty":43}},"types":[{"id":0,"type":{"def":{"primitive":"u32"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":4},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"tuple":[0,8]}}},{"id":8,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":9}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":9}],"path":["Option"]}},{"id":9,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":10,"type":{"def":{"array":{"len":32,"type":11}}}},{"id":11,"type":{"def":{"primitive":"u8"}}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"primitive":"u128"}}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"V","type":15},{"name":"KeyType","type":17}],"path":["ink_storage","lazy","Lazy"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"L","type":18},{"name":"R","type":19}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"K","type":9},{"name":"V","type":15},{"name":"KeyType","type":21}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"L","type":22},{"name":"R","type":23}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"K","type":25},{"name":"V","type":15},{"name":"KeyType","type":26}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":25,"type":{"def":{"tuple":[9,9]}}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"L","type":27},{"name":"R","type":28}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":29,"type":{"def":{"primitive":"str"}}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"V","type":31},{"name":"KeyType","type":32}],"path":["ink_storage","lazy","Lazy"]}},{"id":31,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":29}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":29}],"path":["Option"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"L","type":33},{"name":"R","type":34}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"V","type":31},{"name":"KeyType","type":36}],"path":["ink_storage","lazy","Lazy"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"L","type":37},{"name":"R","type":38}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":37,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":38,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":39,"type":{"def":{"composite":{}},"params":[{"name":"V","type":11},{"name":"KeyType","type":40}],"path":["ink_storage","lazy","Lazy"]}},{"id":40,"type":{"def":{"composite":{}},"params":[{"name":"L","type":41},{"name":"R","type":42}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":41,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":42,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":43,"type":{"def":{"composite":{"fields":[{"name":"access","type":44,"typeName":",>>::Type"},{"name":"psp22","type":45,"typeName":",>>::Type"},{"name":"metadata","type":46,"typeName":",>>::Type"}]}},"path":["stable_token","stable_token","StableToken"]}},{"id":44,"type":{"def":{"composite":{"fields":[{"name":"admin_roles","type":1,"typeName":"> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type"},{"name":"members","type":6,"typeName":"), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","access_control","implementation","AccessControlData"]}},{"id":45,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":16,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":20,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":24,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":46,"type":{"def":{"composite":{"fields":[{"name":"name","type":30,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":35,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":39,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":48}],"path":["Result"]}},{"id":48,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"fields":[{"type":15}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":15},{"name":"E","type":48}],"path":["Result"]}},{"id":50,"type":{"def":{"sequence":{"type":11}}}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":52}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":52},{"name":"E","type":48}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":53}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":53}],"path":["Result"]}},{"id":53,"type":{"def":{"variant":{"variants":[{"fields":[{"type":29,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":29,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":54,"type":{"def":{"variant":{"variants":[{"fields":[{"type":31}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":31},{"name":"E","type":48}],"path":["Result"]}},{"id":55,"type":{"def":{"variant":{"variants":[{"fields":[{"type":11}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":11},{"name":"E","type":48}],"path":["Result"]}},{"id":56,"type":{"def":{"variant":{"variants":[{"fields":[{"type":57}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":57},{"name":"E","type":48}],"path":["Result"]}},{"id":57,"type":{"def":{"primitive":"bool"}}},{"id":58,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":48}],"path":["Result"]}},{"id":59,"type":{"def":{"variant":{"variants":[{"fields":[{"type":60}],"index":0,"name":"Ok"},{"fields":[{"type":48}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":60},{"name":"E","type":48}],"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":"InvalidCaller"},{"index":1,"name":"MissingRole"},{"index":2,"name":"RoleRedundant"}]}},"path":["pendzl_contracts","access","access_control","AccessControlError"]}},{"id":62,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":0,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":63,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":63,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":63,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":63,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":63,"type":{"def":{"primitive":"u64"}}},{"id":64,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":65,"typeName":"Option"},{"name":"maximal_total_debt","type":65,"typeName":"Option"},{"name":"minimal_collateral","type":15,"typeName":"Balance"},{"name":"minimal_debt","type":15,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"id":65,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":15}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":15}],"path":["Option"]}},{"id":66,"type":{"def":{"composite":{"fields":[{"name":"debt_fee_e6","type":0,"typeName":"u32"},{"name":"deposit_fee_e6","type":0,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":67,"type":{"def":{"composite":{"fields":[{"type":10,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":68,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/stable_token.json b/artifacts/stable_token.json new file mode 100644 index 0000000..bbccc5d --- /dev/null +++ b/artifacts/stable_token.json @@ -0,0 +1,3256 @@ +{ + "source": { + "hash": "0x881cf10fdef680e4b87f90558ced996ec6661552886bc1c19e7981839f738d0f", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "stable_token", + "version": "1.0.0", + "authors": ["Konrad Wierzbik "], + "description": "Abax Protocol Stable Token contract", + "license": "BUSL-1.1" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 11 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 47 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 9 + }, + "balance": { + "displayName": ["Balance"], + "type": 15 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 0 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 68 + }, + "hash": { + "displayName": ["Hash"], + "type": 67 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 63 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 57 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 15 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 11 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 29 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 10 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 15 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 57 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 57 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 62 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 64 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 66 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 0 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 65 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 65 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 65 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 63 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 8 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 48 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 50 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 50 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 54 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 54 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 55 + }, + "selector": "0x7271b782" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "address", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::has_role", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 56 + }, + "selector": "0xc1d9ac18" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::get_role_admin", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 58 + }, + "selector": "0x83da3bb2" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::grant_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 59 + }, + "selector": "0x4ac062fd" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::revoke_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 59 + }, + "selector": "0x6e4f0991" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "account", + "type": { + "displayName": ["Option"], + "type": 8 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::renounce_role", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 59 + }, + "selector": "0xeaf1248a" + }, + { + "args": [ + { + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + }, + { + "label": "new_admin", + "type": { + "displayName": ["RoleType"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AccessControl::set_role_admin", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 59 + }, + "selector": "0x71a64883" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Mintable::mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0xfc3c75d4" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 9 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 15 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Burnable::burn", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x7a9da510" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xf9372874", + "ty": 0 + } + }, + "root_key": "0xf9372874", + "ty": 1 + } + }, + "name": "admin_roles" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x510afc69", + "ty": 4 + } + }, + "root_key": "0x510afc69", + "ty": 6 + } + }, + "name": "members" + } + ], + "name": "AccessControlData" + } + }, + "name": "access" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 15 + } + }, + "root_key": "0xc629684f", + "ty": 16 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 15 + } + }, + "root_key": "0xffbbddfc", + "ty": 20 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 15 + } + }, + "root_key": "0x7c996051", + "ty": 24 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 29 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 30 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 29 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 35 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 11 + } + }, + "root_key": "0xd57ae5cd", + "ty": 39 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + } + ], + "name": "StableToken" + } + }, + "root_key": "0x00000000", + "ty": 43 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [0, 8] + } + } + }, + { + "id": 8, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 9 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + } + ], + "path": ["Option"] + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 10, + "type": { + "def": { + "array": { + "len": 32, + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 17 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 18 + }, + { + "name": "R", + "type": 19 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 9 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 21 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 22 + }, + { + "name": "R", + "type": 23 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 25 + }, + { + "name": "V", + "type": 15 + }, + { + "name": "KeyType", + "type": 26 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 25, + "type": { + "def": { + "tuple": [9, 9] + } + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 27 + }, + { + "name": "R", + "type": 28 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 31 + }, + { + "name": "KeyType", + "type": 32 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 29 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 29 + } + ], + "path": ["Option"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 33 + }, + { + "name": "R", + "type": 34 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 31 + }, + { + "name": "KeyType", + "type": 36 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 37 + }, + { + "name": "R", + "type": 38 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 11 + }, + { + "name": "KeyType", + "type": 40 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 41 + }, + { + "name": "R", + "type": 42 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 41, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 42, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "access", + "type": 44, + "typeName": ",>>::Type" + }, + { + "name": "psp22", + "type": 45, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 46, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["stable_token", "stable_token", "StableToken"] + } + }, + { + "id": 44, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "admin_roles", + "type": 1, + "typeName": "> as::ink::storage::traits\n::AutoStorableHint<::ink::storage::traits::ManualKey<\n2891666076u32, ()>,>>::Type" + }, + { + "name": "members", + "type": 6, + "typeName": "), (),::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1717912264u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "implementation", "AccessControlData"] + } + }, + { + "id": 45, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 16, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 20, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 24, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 46, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 30, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 35, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 39, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 15 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 50, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 52 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 52 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 52, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 53 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 53 + } + ], + "path": ["Result"] + } + }, + { + "id": 53, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 29, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 54, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 31 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 31 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 55, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 11 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 11 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 56, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 57 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 57 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 57, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 58, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 48 + } + ], + "path": ["Result"] + } + }, + { + "id": 59, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 60 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 48 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 60 + }, + { + "name": "E", + "type": 48 + } + ], + "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": "InvalidCaller" + }, + { + "index": 1, + "name": "MissingRole" + }, + { + "index": 2, + "name": "RoleRedundant" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "access_control", "AccessControlError"] + } + }, + { + "id": 62, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 63, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 63, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 63, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 63, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 63, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 64, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 65, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 65, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 15, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 15, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "id": 65, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 15 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 15 + } + ], + "path": ["Option"] + } + }, + { + "id": 66, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 0, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 0, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 67, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 10, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 68, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/stable_token.wasm b/artifacts/stable_token.wasm new file mode 100644 index 0000000..ca9c91f Binary files /dev/null and b/artifacts/stable_token.wasm differ diff --git a/artifacts/test_psp22.contract b/artifacts/test_psp22.contract new file mode 100644 index 0000000..a8f4993 --- /dev/null +++ b/artifacts/test_psp22.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x489c93b1740c0aeb3086949b8c9dfd2d3dc265120ebef0c33fca84463537f8d9","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001460c60027f7f0060037f7f7f0060017f0060037f7f7f017f60000060057f7f7f7e7e0060047f7f7f7f017f6000017f60027e7e0060037f7e7e0060047f7f7f7f0060037e7e7f0002b10109057365616c310b6765745f73746f726167650006057365616c3005696e7075740000057365616c300d6465706f7369745f6576656e74000a057365616c320b7365745f73746f726167650006057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f727902010210033b3a03030303000001000002000b020700000200020100000004080400000100000400050505090007020400090802010101010000030000000000000616037f01418080040b7f0041c083050b7f0041b483050b0711020463616c6c0027066465706c6f7900300ac9723a2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a2206100d200228020c220120022802084b0d00200620022802042001100e2002410036022c20022004360228200220053602242006200241246a100d2003200228022c6a22012003490d0020002001360208200241306a24000f0b000b0a0020012000412010380bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1007200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b20032001200210081a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000bb90102027f017e230041206b22032400420121040240200128020422024120490d002001200241206b36020420012001280200220241206a360200200341086a200110102003290308a70d00200341186a2903002104200041286a200329031037030020002002290000370008200041306a2004370300200041206a200241186a290000370000200041186a200241106a290000370000200041106a200241086a290000370000420021040b20002004370300200341206a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000b9c0201057f23004180016b220124002001200041d0001008220042808001370258200041b48304360254200041d4006a41031012200041f8006a2201200041dc006a28020036020020002000290254370370200041f0006a220241818004100c200041e8006a2203200128020036020020002000290370370360200041e0006a2000100c20012003280200360200200020002903603703702002200041206a2204100c02402000280274220520012802002201490d0020002802702103200041003602782000200520016b3602742000200120036a36027020002002100d20042002100d2000290340200041c8006a290300200210132000280278220420002802744b0d002003200120002802702004100220004180016a24000f0b000b7201037f230041106b220224002002200136020002402000280204220320002802082201490d00200028020021042002410036020c2002200320016b3602082002200120046a3602042002200241046a103e20012001200228020c6a22014b0d0020002001360208200241106a24000f0b000b2a01017f230041106b2203240020032001370308200320003703002002200341101038200341106a24000b850101027f230041106b2201240020014180800136020c41b483042001410c6a1005200128020c2202418180014f2002411f4d72450440200041b58304290000370001200041096a41bd8304290000370000200041116a41c58304290000370000200041186a41cc8304290000370000200041b483042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1006200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b2601017f230041106b220224002002200036020c20012002410c6a41041038200241106a24000b3801017f230041106b22022400200241086a2001103a20022d00092101200020022d00084101713a0000200020013a0001200241106a24000bd40102057f027e230041306b22012400200142808001370228200141b4830436022441c6d3a0fb04200141246a22041016024020012802282205200128022c2202490d00200128022421032001200520026b220536022420032002200220036a2202200410002103200520012802242204490d00027e0240024020030e0400030301030b2001200436022820012002360224200141086a200141246a103c2001290308a70d0020012903102106200141186a2903000c010b42000b21072000200637030020002007370308200141306a24000f0b000ba30202047f017e230041206b22022400200242808001370218200241b483043602142001200241146a22041016024020022802182205200228021c2201490d00200228021421032002200520016b220536021420032001200120036a2201200410002104200520022802142203490d00024002400240024020040e0400040401040b2003450d012002200341016b22033602102002200141016a36020c02400240024020012d00000e020100040b200241146a2002410c6a103120022802142201418080808078460d0320022802100d03200229021821060c010b20030d0241808080807821010b20002006370204200020013602000c020b20004181808080783602000c010b2000418280808078360200200041103a00040b200241206a24000f0b000b8a0301067f230041406a22012400200142808001370224200141b4830436022041d3cdc9ab79200141206a2206101602402001280224220420012802282203490d00200128022021022001200420036b220436022020022003200220036a2205200610002102200420012802202203490d00024002400240024020020e0400040401040b2003450d01200341016b21020240024020052d000022040e020100030b20024120490d02200141386a200541016a220241186a290000370300200141306a200241106a290000370300200141286a200241086a29000037030020012002290000370320200341216b21020b200141186a2203200141386a290300370300200141106a2205200141306a290300370300200141086a2206200141286a2903003703002001200129032037030020020d0120002001290300370001200041196a2003290300370000200041116a2005290300370000200041096a20062903003700000c020b410221040c010b200041103a0001410321040b200020043a0000200141406b24000f0b000bca0202037f017e230041f0006b22032400200341386a200141186a290000370300200341306a200141106a290000370300200341286a200141086a290000370300200341c8006a200241086a290000370300200341d0006a200241106a290000370300200341d8006a200241186a2900003703002003200129000037032020032002290000370340200342808001370268200341b48304360264200341206a200341e4006a2204103f024020032802682205200328026c2201490d00200328026421022003200520016b220536026420022001200120026a2201200410002102200520032802642204490d002000027e0240024020020e0400030301030b2003200436026820032001360264200341086a200341e4006a103c2003290308a70d0220032903102106200341186a2903000c010b42000b37030820002006370300200341f0006a24000f0b000bd00102047f027e230041306b22022400200242808001370228200241b483043602242001200241246a22041041024020022802282205200228022c2201490d00200228022421032002200520016b220536022420032001200120036a2201200410002103200520022802242204490d00027e0240024020030e0400030301030b2002200436022820022001360224200241086a200241246a103c2002290308a70d0220022903102106200241186a2903000c010b42000b21072000200637030020002007370308200241306a24000f0b000b3d01017f41b4830441003a000041012102200141ff0171044041b5830441013a0000410221020b200241b483046a41003a00002000200241016a1022000b9b0201037f230041106b22022400200241808001360208200241b483043602040240024002400240024020012802002204410947044041b4830441003a00002004410846044041b5830441003a0000410221010c060b41b5830441013a000002400240024002400240200441016b0e0708000102060304070b41b6830441023a00000c080b4103210141b6830441033a00000c080b41b6830441043a00000c060b41b6830441063a00000c050b41b6830441073a00000c040b41b483044181023b0100410221010c040b410521030b41b6830420033a00002002410336020c200141086a2802002001410c6a280200200241046a1024200228020c220141818001490d02000b41b6830441013a00000b410321010b200020011022000b130041b483044181023b0100410141021022000b4c01017f230041106b22022400200241b4830436020441b4830441003a0000200242808081801037020820002001200241046a1013200228020c2202418180014f0440000b410020021022000b5301037f230041106b22002400200042808001370208200041b483043602044100200041046a1016200028020c220120002802084b0440000b200028020422022001200120026a410010031a200041106a24000b0d00200041b4830420011004000b2c0020002802004180808080784604402001410010390f0b20014101103920002802042000280208200110240b2c01017f230041106b220324002003200136020c2003410c6a2002103e2002200020011038200341106a24000b210020002d00004504402001410010390f0b200141011039200041016a2001100d0b2601017f230041106b22022400200220003a000f20012002410f6a41011038200241106a24000bce28020e7f067e230041e0026b22002400024002400240027f02400240101541ff01714105470d0020004180800136024841b48304200041c8006a100120002802482205418180014f0d000240024020054104490d00200041b88304360290022000200541046b22063602940241b783042d0000210441b683042d0000210341b583042d0000210102400240024002400240024002400240024002400240024002400240024041b483042d0000220241cd006b0e03010f0b000b0240200241fc016b0e03070f06000b20024111460d0c024020024116470440200241db01460d0320024134460d0a2002413d460d09200241d400460d04200241de00460d0d200241e500460d01200241f200460d0b2002419601460d06200241b201460d052002412447200641204972200141cc0147200341ff017141ef01477272200441ff017141e70147720d10200541c4006b2201415f4b2001411049720d1041b883042d0000210141e08304290200210e41d88304290200210f41f48304280200210441ec8304290200211041e883042802002103200041c0016a41c18304290000370300200041c8016a41c98304290000370300200041cf016a41d0830429000037000020004188840436029002200041b983042900003703b80141808404290200211141f88304290200211241808080807821020c110b2001412d47200341ff017141f8014772200441ff017141c20147720d0f41818080807821020c100b200141e80047200341ff017141384772200441ff0171412f472006411f4d72720d0e200041c0016a41c18304290000370300200041c8016a41c98304290000370300200041cf016a41d08304290000370000200041b983042900003703b80141b883042d0000210141828080807821020c0f0b200141c70047200341ff017141d9014772200441ff0171412147200541c4006b41404f72720d0d200041c0016a41c18304290000370300200041c8016a41c98304290000370300200041cf016a41d08304290000370000200041b983042900003703b80141e08304290200210e41d88304290200210f41f48304280200210441ec8304290200211041e88304280200210341b883042d0000210141838080807821020c0e0b2001412047200341ff017141f9014772200441ff017141f50147200641204972720d0c200041d0006a220241c18304290000370300200041d8006a220641c98304290000370300200041df006a220741d08304290000370000200041b98304290000370348200541346b2203416f4b0d0c41b883042d00002101200041e8830436029002200020033602940241e08304290200210e41d88304290200210f200041c0026a20004190026a102820002802c0022203418080808078460d0c200041c0016a2002290300370300200041c8016a2006290300370300200041cf016a2007290000370000200020002903483703b80120002902c402211041848080807821020c0d0b200141b30147200341ff017141c7014772200441ff017141ee0047200641204972720d0b200041d0006a220641c18304290000370300200041d8006a220741c98304290000370300200041df006a220841d08304290000370000200041b98304290000370348200541c4006b2201415f4b2001411049720d0b41b883042d0000210141e08304290200210e41d88304290200210f41f48304280200210441ec8304290200211041e883042802002103200041888404360290022000200541d4006b3602940241808404290200211141f883042902002112200041c0026a20004190026a102820002802c0022202418080808078460d0b200041c0016a2006290300370300200041c8016a2007290300370300200041cf016a2008290000370000200020002903483703b80120002902c40221130c0c0b2001410f47200341ff0171411b4772200441ff017141bd0147720d0a200041c8006a20004190026a100f20002903484200520d0a200041c0016a200041d9006a290000370300200041c8016a200041e1006a290000370300200041cf016a200041e8006a2900003700002000200041d1006a2900003703b801200041f8006a290300210e200041f0006a290300210f20002d0050210141868080807821020c0b0b200141d60147200341ff017141b5014772200441ff017141fa0047720d09200041c8006a20004190026a100f20002903484200520d09200041c0016a200041d9006a290000370300200041c8016a200041e1006a290000370300200041cf016a200041e8006a2900003700002000200041d1006a2900003703b801200041f8006a290300210e200041f0006a290300210f20002d0050210141878080807821020c0a0b200141cb0147200341ff017141d7004772200441ff017141d50147720d08200041c8006a20004190026a100f20002903484200520d08200041c0016a200041d9006a290000370300200041c8016a200041e1006a290000370300200041cf016a200041e8006a2900003700002000200041d1006a2900003703b801200041f8006a290300210e200041f0006a290300210f20002d0050210141888080807821020c090b2001413c47200341ff017141f50047720d07200441ff017141d401460d060c070b2001412647200341ff0171411b4772200441ff017141d40147720d06418a8080807821020c070b2001412047200341ff017141db004772200441ff017141e50147720d05418b8080807821020c060b200141f10047200341ff017141b7014772200441ff017141820147720d04418c8080807821020c050b200141a40147200341ff0171413c4772200441ff0171418c0147720d03418d8080807821020c040b2001412247200341ff01714187014772200441ff017141d30047720d02418e8080807821020c030b200141f40147200341ff0171413e4772200441ff017141fd0147200641204972720d01200041c0016a41c18304290000370300200041c8016a41c98304290000370300200041cf016a41d08304290000370000200041d88304360290022000200541246b36029402200041b983042900003703b80141b883042d00002101418f8080807821020c020b200041c8006a20004190026a100f20002903484200520d00200041c0016a200041d9006a290000370300200041c8016a200041e1006a290000370300200041cf016a200041e8006a2900003700002000200041d1006a2900003703b801200041f8006a290300210e200041f0006a290300210f20002d0050210141898080807821020c010b101f000b200041e0006a200041cf016a290000370000200041d9006a200041c8016a290300370000200041d1006a200041c0016a29030037000020004190016a2011370300200041f0006a200e370300200020002903b80137004920002012370388012000200f3703682000201337029c01200020023602980120002004360284012000201037027c20002003360278200020013a00482000428080013702bc01200041b483043602b8014100200041b8016a2204101620002802bc01220520002802c0012201490d0020002802b80121032000200520016b22053602b80120032001200120036a20041000200520002802b801220149722001720d0002400240024002400240024002400240027f02400240027f02400240027f02400240024002400240024002400240024041052002418080808078732201200141104f1b41016b0e0f070001020304051011121314151617060b230041406a22012400200141286a200041c8006a220341086a290000370200200141306a200341106a290000370200200141386a200341186a290000370200200120004190026a36021c20012003290000370220200141086a200141206a101c2001290308210e200041186a2203200141106a2903003703082003200e370300200141406b24002000290318200041206a2903001020000b230041d0006b22012400200141106a200041c8006a220341c00010081a20012003200141306a101b2001290300210e200041286a2203200141086a2903003703082003200e370300200141d0006a24002000290328200041306a2903001020000b200041d8026a200041e0006a290300370300200041d0026a200041d8006a290300370300200041c8026a200041d0006a290300370300200020002903483703c002200041b8016a2201101420004190026a2001200041c0026a200f200e102920002802900222014108460d05200041b8026a2000419c026a28020036020020002000290294023703b00241010c060b200041a8026a200041e0006a290300370300200041a0026a200041d8006a29030037030020004198026a200041d0006a290300370300200041c8026a200041e8006a220141086a290000370300200041d0026a200141106a290000370300200041d8026a200141186a2900003703002000200029034837039002200020012900003703c002200041b8016a22011014200041b0026a220320004190026a2202200120122011102a20002802b00222014108470d1520032002200041c0026a20122011102920002802b00222014108460d060c150b200041b8016a22011014200041c0026a2001200041c8006a200f200e102b20002802c00222014108460d0620004198026a200041cc026a280200360200200020002902c4023703900241010c070b200041c0026a22011014200041386a2001200041c8006a101b200f200029033822117c221020115422012001ad200041406b290300220f200e7c7c220e200f54200e200f511b0d07200041d0016a2201200041d8026a2203290000370300200041c8016a2202200041d0026a2204290000370300200041c0016a2205200041c8026a2206290000370300200041e0016a2207200041d0006a2208290300370300200041e8016a2209200041d8006a220a290300370300200041f0016a220b200041e0006a220c290300370300200020002900c0023703b801200020002903483703d801200041b8016a220d2010200e102c20004180026a200e370300200120032900003703002002200429000037030020052006290000370300200720082903003703002009200a290300370300200b200c290300370300200020103703f801200020002900c0023703b801200020002903483703d801200d10110c080b200020004190026a3602b801200041c0026a200041c0016a200041c8006a41d0001008200041e0016a20004180026a29030020004188026a290300102b0c140b230041106b22012400200110182001290300210e200041086a2203200141086a2903003703082003200e370300200141106a24002000290308200041106a2903001020000b102141000b2102200041c4016a200041b8026a280200360200200020002903b0023702bc010c120b10214108210141000c0f0b102141000b2102200041c4016a20004198026a28020036020020002000290390023702bc010c0f0b20004190026a4104724101102d200041a0026a350200210f20004198026a290300210e410120002802940222024108470d011a0b10214108210241000b2101200041c4016a200f3e02002000200e3702bc01200020023602b8012001200041b8016a101e000b200041b8016a22011014200041c0026a2001200041c8006a200f200e102a0c0a0b200041d0016a200041e0006a290300370300200041c8016a200041d8006a290300370300200041c0016a200041d0006a290300370300200020002903483703b801200041c0026a4100200041b8016a200f200e10290c090b200041b8016a2100230041106b22012400200141046a41d1e7abf27a10190c0a0b200041b8016a2100230041106b22012400200141046a419191bb900510190c090b027f230041106b22002400200042808001370208200041b4830436020441d5f595ef7c200041046a22021016024020002802082204200028020c2201490d00200028020421032000200420016b220436020420032001200120036a2201200210002103200420002802042202490d00027f0240024020030e0400030301030b20002002360208200020013602042000200041046a101720002d00000d0020002802080d0020002d00010c010b41000b2101200041106a240020010c010b000b2101230041106b22002400200041b4830436020441b4830441003a000020004280808180103702082001200041046a1026200028020c2200418180014f0440000b410020001022000b200041b8016a22044101722102230041306b220124002001410f6a101a024020012d000f220341024f0440410021030c010b20022001290010370001200241196a200141286a290000370000200241116a200141206a290000370000200241096a200141186a2900003700000b200220033a0000200141306a2400200041003a00b801230041106b22002400200041808001360208200041b48304360204024020042d0000044041b483044181023b0100410221010c010b41b4830441003a00002000410136020c200441016a200041046a1025200028020c220141818001490d00000b410020011022000b41012101102e45044041c28004102f1021410021010b20012001101d000b41012101102e450440200041d1016a200041e0006a290300370000200041c9016a200041d8006a290300370000200041c1016a200041d0006a290300370000200020002903483700b901200041013a00b801200041b8016a102f1021410021010b20012001101d000b000b200041b0016a200041bc026a280200360200200020002902b4023703a80141010b2102200041c4016a200041b0016a280200360200200020002903a8013702bc010c010b20002802c002410846047f102141000541010b200041c0026a101e000b200020013602b8012002200041b8016a101e000b0240200128020441ffffffff076a41014d044020004180808080783602000c010b20002001290204370200200041086a2001410c6a2802003602000b200141106a2400230041106b22012400200141808001360208200141b483043602040240200028020041818080807846044041b483044181023b0100410221000c010b2001410136020c41b4830441003a00002000200141046a1023200128020c220041818001490d00000b410020001022000b980301067f230041206b22022400200241106a2001103a4180808080782105024020022d00100d000240024002400240024020022d0011220341037141016b0e03010200030b200341044f0d04200128020422034104490d042001280200220628000021042001200341046b3602042001200641046a36020020044180808080044f0d030c040b200241196a20033a0000200241013a001820022001360214200241003b011c200241146a2002411c6a4102103b0d0320022f011c220341ff014d0d03200341027621040c020b200241196a20033a0000200241013a0018200220013602142002410036021c200241146a2002411c6a4104103b0d02200228021c220341808004490d02200341027621040c010b200341fc017141027621040b200128020422062004490d00200241086a20044101103620022802082103200228020c200128020022052004100821072001200620046b3602042001200420056a36020041808080807821052003418080808078460d0020002007ad2004ad42208684370204200321050b20002005360200200241206a24000bc80802057f037e230041f0016b220524000240024002400240024020010440200541386a2001101c2005290338220b2003542206200541406b290300220a2004542004200a511b0d012001200b20037d200a20047d2006ad7d10320c030b200541286a10182005290328220a20037c220c200a5422062006ad200541306a290300220a20047c7c220b200a54200a200b511b0d01200c200b10330c020b200042003702042000410c6a42003e0200410121060c020b20054188016a4101102d20052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b02400240024020020440200541186a2002101c2005290318220a20037c220c200a5422062006ad200541206a290300220a20047c7c220b200a54200a200b511b0d012002200c200b10320c030b200541086a10182005290308220b2003542206200541106a290300220a2004542004200a511b0d01200b20037d200a20047d2006ad7d10330c020b20054188016a4101102d20052802880122064108460d012000200529028c013702042000410c6a20054194016a2802003602000c020b20054188016a4100102d20052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b4100210620010440200541e0006a200141186a290000370300200541d8006a200141106a290000370300200541d0006a200141086a29000037030020052001290000370348410121070b2002044020054180016a200241186a290000370300200541f8006a200241106a290000370300200541f0006a200241086a29000037030020052002290000370368410121060b200541b1016a200541e0006a290300370000200541a9016a200541d8006a290300370000200541a1016a200541d0006a2209290300370000200541c2016a200541f0006a2208290300370100200541ca016a200541f8006a290300370100200541d2016a20054180016a2903003701002005200529034837009901200520052903683701ba0120052004370390012005200337038801200520063a00b901200520073a0098012005428080013702e801200541b483043602e401200541e4016a410310122008200541ec016a280200360200200520052902e401370368200541e8006a41a28004100c2009200828020036020020052005290368370348200541ba016a2106024020010440200541c8006a20054199016a100c0c010b200541c8006a10340b200541f0006a200541d0006a28020036020020052005290348370368200541c8006a200541e8006a22072006410020021b1035200528024c220620052802502201490d0120052802482102200541003602702005200620016b36026c2005200120026a36026820054198016a20071025200541b9016a20071025200320042007101320052802702206200528026c4b0d0120022001200528026820061002410821060b20002006360200200541f0016a24000f0b000bf60202107f027e230041e0006b22052400200520012002101b410821060240200529030022162003542207200541086a290300221520045420042015511b450440200541286a2208200141186a2209290000370300200541206a220a200141106a220b290000370300200541186a220c200141086a220d290000370300200541386a220e200241086a220f290000370300200541406b2210200241106a2211290000370300200541c8006a2212200241186a22132900003703002005200129000037031020052002290000370330200541106a2214201620037d2203201520047d2007ad7d2204102c200541d8006a200437030020082009290000370300200a200b290000370300200c200d290000370300200e200f2900003703002010201129000037030020122013290000370300200520033703502005200129000037031020052002290000370330201410110c010b200042003702042000410c6a42003e0200410221060b20002006360200200541e0006a24000b9702010d7f230041d0006b22052400200541186a2206200141186a2207290000370300200541106a2208200141106a2209290000370300200541086a220a200141086a220b290000370300200541286a220c200241086a220d290000370300200541306a220e200241106a220f290000370300200541386a2210200241186a22112900003703002005200129000037030020052002290000370320200520032004102c200541c8006a20043703002006200729000037030020082009290000370300200a200b290000370300200c200d290000370300200e200f290000370300201020112900003703002005200337034020052001290000370300200520022900003703202005101120004108360200200541d0006a24000b8e0101047f230041106b22032400200342808001370208200341b483043602042000200341046a2206103f024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a3602042001200220061013200328020c220420032802084b0d00200520002003280204200410031a200341106a24000f0b000b3501017f200041046a21020240200141ff01714504402002418d8304410c10370c010b200241998304410b10370b200041003602000b6401037f230041f0006b220024002000410e6a22011014200041cf006a2202101a027f024020002d004f41024f0d002000412e6a2002412110081a20002d002e450d0020012000412f6a4120100b0d0041000c010b41010b2101200041f0006a240020010bd10201057f230041306b22012400200142808001370224200141b4830436022041d3cdc9ab79200141206a2205101602402001280224220320012802282202490d0020012802202104200141003602282001200320026b3602242001200220046a3602202000200510252001280228220320012802244b0d00200420022001280220200310031a200142808001370208200141b48304360204200141046a41021012200141286a22022001410c6a28020036020020012001290204370320200541ed8204100c200141186a2002280200360200200120012903203703102005200141106a200041016a410020002d00001b10352001280224220320012802282202490d0020012802202104200141003602282001200320026b3602242001200220046a3602202000200510252001280228220020012802244b0d0020042002200128022020001002200141306a24000f0b000bbe0402077f017e230041d0006b2200240002400240101541ff01714105470d0020004180800136022c41b483042000412c6a22021001200028022c2201418180014f0d00024020014104490d00200041b8830436020c2000200141046b36021041b483042d0000419b01470d0041b583042d000041ae01470d0041b683042d0000419d01470d0041b783042d000041de00470d00200041146a2000410c6a2201103120002802142204418080808078460d0020002d00182103200220011031200028022c2202418080808078460d0020002902302107200041086a2001101720002d00080d002000280210411f4b0d020b101f000b000b20002d00092105200028020c2101200041286a2000411c6a28000036000020002000280019360025200041c5006a200141186a2900003700002000413d6a200141106a290000370000200041356a200141086a2900003700002000200129000037002d200020033a00242000200436022041d1e7abf27a200041206a2201103d2000200737022420002002360220419191bb90052001103d230041106b22012400200142808001370208200141b4830436020441d5f595ef7c200141046a220310160240024020012802082206200128020c2202490d00200128020421042001410036020c2001200620026b3602082001200220046a360204200520031026200128020c220320012802084b0d00200420022001280204200310031a200141106a24000c010b000b200041013a002c2000412c6a102f102141b4830441003b0100410041021022000b9c0502097f017e230041106b22062400200641046a2001102802400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541e380046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000b8e0101047f230041106b22032400200342808001370208200341b483043602042000200341046a22061041024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a3602042001200220061013200328020c220420032802084b0d00200520002003280204200410031a200341106a24000f0b000b920101057f230041106b22022400200242808001370208200241b4830436020441c6d3a0fb04200241046a22061016024020022802082203200228020c2204490d00200228020421052002410036020c2002200320046b3602082002200420056a3602042000200120061013200228020c220320022802084b0d00200520042002280204200310031a200241106a24000f0b000ba90101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a22043602044100200141046a22051026200128020c220620012802084b0d00200520012802042006100e2001410036022c20012003360228200120043602242005200141246a100d20022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b300002402002044020012002100c0c010b200110340b20002001290200370200200041086a200141086a2802003602000be00101017f024002402001450440410121020c010b20014100480d01200245044041b083042d00001a0b027f41a483042d0000044041a883042802000c010b3f00210341a8830441c0830536020041a4830441013a000041ac8304200341107436020041c083050b2202200120026a22034b0d0141ac83042802002003490440200141ffff036a220341107640002202417f460d022002411074220220034180807c716a22032002490d0241ac83042003360200200120026a22032002490d020b41a8830420033602002002450d010b20002002360204200020013602000f0b000b4801027f230041106b22032400200341086a20024100103620032802082104200328020c2001200210082101200020023602082000200136020420002004360200200341106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a2001200210081a200020043602080f0b000b000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a200120002802002201200210081a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a20002802002201200210081a0b2000200320026b3602042000200120026a36020041000b0b5502027f017e230041206b22022400200241086a20011010200241186a29030021042002280208210320002002290310370308200041106a200437030020002003200128020472410047ad370300200241206a24000b8c0101047f230041106b22022400200242808001370208200241b483043602042000200241046a22041016024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a360204200120041023200228020c220120022802084b0d00200320002002280204200110031a200241106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410390c010b200041ffff004d0440200220004102744101723b010e20012002410e6a410210380c010b200041ffffffff034d04402000410274410272200110160c010b2001410310392000200110160b200241106a24000b190041e882042001104020002001100d200041206a2001100d0b0b002000280200200110160b100041e482042001104020002001100d0b0bd3020400418080040b42011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb0041e380040b800101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041a582040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041e482040b40ffbbddfc7c996051015c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c94d3a3a556e646572666c6f774d3a3a4f766572666c6f77","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"test_psp22","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":23}},{"label":"symbol","type":{"displayName":["String"],"type":23}},{"label":"decimal","type":{"displayName":["u8"],"type":2}},{"label":"owner","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":41},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":9},"blockNumber":{"displayName":["BlockNumber"],"type":54},"chainExtension":{"displayName":["ChainExtension"],"type":57},"hash":{"displayName":["Hash"],"type":55},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":56}},"events":[{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":54}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":54}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":54}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":54}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":4}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":4}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":54}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":4}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":4}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":4}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":9}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":0}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":9}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":4}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"}],"lang_error":{"displayName":["ink","LangError"],"type":42},"messages":[{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":0}},{"label":"to","type":{"displayName":["AccountId"],"type":0}},{"label":"value","type":{"displayName":["u128"],"type":9}}],"default":false,"docs":[],"label":"t_approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0x24ccefe7"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":46},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":46},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":0}},{"label":"spender","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":46},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":0}},{"label":"value","type":{"displayName":["Balance"],"type":9}},{"label":"data","type":{"displayName":["Vec"],"type":47}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":0}},{"label":"to","type":{"displayName":["AccountId"],"type":0}},{"label":"value","type":{"displayName":["Balance"],"type":9}},{"label":"data","type":{"displayName":["Vec"],"type":47}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"label":"value","type":{"displayName":["Balance"],"type":9}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"label":"delta_value","type":{"displayName":["Balance"],"type":9}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"label":"delta_value","type":{"displayName":["Balance"],"type":9}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0xfecb57d5"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":0}},{"label":"amount","type":{"displayName":["Balance"],"type":9}}],"default":false,"docs":[],"label":"PSP22Mintable::mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":43},"selector":"0xfc3c75d4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x7271b782"},{"args":[],"default":false,"docs":[],"label":"Ownable::owner","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":50},"selector":"0x4fa43c8c"},{"args":[],"default":false,"docs":[],"label":"Ownable::renounce_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x5e228753"},{"args":[{"label":"new_owner","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"Ownable::transfer_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x11f43efd"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd3667295","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd3667295","ty":0}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd3667295","ty":3}},"name":"owner"}],"name":"OwnableData"}},"name":"ownable"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":9}},"root_key":"0xc629684f","ty":10}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":9}},"root_key":"0xffbbddfc","ty":14}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":9}},"root_key":"0x7c996051","ty":18}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":23}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":24}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":23}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":29}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":2}},"root_key":"0xd57ae5cd","ty":33}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"}],"name":"TestPSP22Contract"}},"root_key":"0x00000000","ty":37}},"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":{"composite":{}},"params":[{"name":"V","type":4},{"name":"KeyType","type":5}],"path":["ink_storage","lazy","Lazy"]}},{"id":4,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"L","type":6},{"name":"R","type":8}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":7,"type":{"def":{"tuple":[]}}},{"id":8,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":9,"type":{"def":{"primitive":"u128"}}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":11}],"path":["ink_storage","lazy","Lazy"]}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"L","type":12},{"name":"R","type":13}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":9},{"name":"KeyType","type":15}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"L","type":16},{"name":"R","type":17}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"K","type":19},{"name":"V","type":9},{"name":"KeyType","type":20}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":19,"type":{"def":{"tuple":[0,0]}}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"L","type":21},{"name":"R","type":22}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":23,"type":{"def":{"primitive":"str"}}},{"id":24,"type":{"def":{"composite":{}},"params":[{"name":"V","type":25},{"name":"KeyType","type":26}],"path":["ink_storage","lazy","Lazy"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":23}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":23}],"path":["Option"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"L","type":27},{"name":"R","type":28}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"V","type":25},{"name":"KeyType","type":30}],"path":["ink_storage","lazy","Lazy"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"L","type":31},{"name":"R","type":32}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"V","type":2},{"name":"KeyType","type":34}],"path":["ink_storage","lazy","Lazy"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"L","type":35},{"name":"R","type":36}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":36,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"name":"ownable","type":38,"typeName":",>>::Type"},{"name":"psp22","type":39,"typeName":",>>::Type"},{"name":"metadata","type":40,"typeName":",>>::Type"}]}},"path":["test_psp22","test_psp22","TestPSP22Contract"]}},{"id":38,"type":{"def":{"composite":{"fields":[{"name":"owner","type":3,"typeName":"<::ink::storage::Lazy,::ink::storage::\ntraits::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1502786585u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","ownable","implementation","OwnableData"]}},{"id":39,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":10,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":14,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":18,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":40,"type":{"def":{"composite":{"fields":[{"name":"name","type":24,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":29,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":33,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":42}],"path":["Result"]}},{"id":42,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":43,"type":{"def":{"variant":{"variants":[{"fields":[{"type":44}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":44},{"name":"E","type":42}],"path":["Result"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":45}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":45}],"path":["Result"]}},{"id":45,"type":{"def":{"variant":{"variants":[{"fields":[{"type":23,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":23,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":42}],"path":["Result"]}},{"id":47,"type":{"def":{"sequence":{"type":2}}}},{"id":48,"type":{"def":{"variant":{"variants":[{"fields":[{"type":25}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":25},{"name":"E","type":42}],"path":["Result"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"fields":[{"type":2}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":2},{"name":"E","type":42}],"path":["Result"]}},{"id":50,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":42}],"path":["Result"]}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":52}],"index":0,"name":"Ok"},{"fields":[{"type":42}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":52},{"name":"E","type":42}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":53}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":53}],"path":["Result"]}},{"id":53,"type":{"def":{"variant":{"variants":[{"index":0,"name":"CallerIsNotOwner"}]}},"path":["pendzl_contracts","access","ownable","OwnableError"]}},{"id":54,"type":{"def":{"primitive":"u32"}}},{"id":55,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":56,"type":{"def":{"primitive":"u64"}}},{"id":57,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/test_psp22.json b/artifacts/test_psp22.json new file mode 100644 index 0000000..ecc9823 --- /dev/null +++ b/artifacts/test_psp22.json @@ -0,0 +1,2138 @@ +{ + "source": { + "hash": "0x489c93b1740c0aeb3086949b8c9dfd2d3dc265120ebef0c33fca84463537f8d9", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "test_psp22", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 23 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 23 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 2 + } + }, + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 41 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 0 + }, + "balance": { + "displayName": ["Balance"], + "type": 9 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 54 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 57 + }, + "hash": { + "displayName": ["Hash"], + "type": 55 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 56 + } + }, + "events": [ + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 54 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 54 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 54 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 54 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 54 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 4 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 42 + }, + "messages": [ + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "value", + "type": { + "displayName": ["u128"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "t_approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0x24ccefe7" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 46 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 46 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 46 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 47 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 47 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0xfecb57d5" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 9 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22Mintable::mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 43 + }, + "selector": "0xfc3c75d4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x7271b782" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "Ownable::owner", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 50 + }, + "selector": "0x4fa43c8c" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "Ownable::renounce_ownership", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x5e228753" + }, + { + "args": [ + { + "label": "new_owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "Ownable::transfer_ownership", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x11f43efd" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd3667295", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd3667295", + "ty": 0 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd3667295", + "ty": 3 + } + }, + "name": "owner" + } + ], + "name": "OwnableData" + } + }, + "name": "ownable" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 9 + } + }, + "root_key": "0xc629684f", + "ty": 10 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 9 + } + }, + "root_key": "0xffbbddfc", + "ty": 14 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 9 + } + }, + "root_key": "0x7c996051", + "ty": 18 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 23 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 24 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 23 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 29 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 2 + } + }, + "root_key": "0xd57ae5cd", + "ty": 33 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + } + ], + "name": "TestPSP22Contract" + } + }, + "root_key": "0x00000000", + "ty": 37 + } + }, + "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": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 5 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 6 + }, + { + "name": "R", + "type": 8 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 8, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 11 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 12 + }, + { + "name": "R", + "type": 13 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 15 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 16 + }, + { + "name": "R", + "type": 17 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 19 + }, + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 20 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 19, + "type": { + "def": { + "tuple": [0, 0] + } + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 21 + }, + { + "name": "R", + "type": 22 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 23, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 24, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 25 + }, + { + "name": "KeyType", + "type": 26 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 23 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 23 + } + ], + "path": ["Option"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 27 + }, + { + "name": "R", + "type": 28 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 25 + }, + { + "name": "KeyType", + "type": 30 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 31 + }, + { + "name": "R", + "type": 32 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 2 + }, + { + "name": "KeyType", + "type": 34 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 35 + }, + { + "name": "R", + "type": 36 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "ownable", + "type": 38, + "typeName": ",>>::Type" + }, + { + "name": "psp22", + "type": 39, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 40, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["test_psp22", "test_psp22", "TestPSP22Contract"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 3, + "typeName": "<::ink::storage::Lazy,::ink::storage::\ntraits::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1502786585u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "ownable", "implementation", "OwnableData"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 10, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 14, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 18, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 40, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 24, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 29, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 33, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 41, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 42, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 43, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 44 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 44 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 45 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 45 + } + ], + "path": ["Result"] + } + }, + { + "id": 45, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 23, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 23, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 46, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 47, + "type": { + "def": { + "sequence": { + "type": 2 + } + } + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 25 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 25 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 2 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 50, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 52 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 42 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 52 + }, + { + "name": "E", + "type": 42 + } + ], + "path": ["Result"] + } + }, + { + "id": 52, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 53 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 53 + } + ], + "path": ["Result"] + } + }, + { + "id": 53, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "CallerIsNotOwner" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "ownable", "OwnableError"] + } + }, + { + "id": 54, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 55, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 56, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 57, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/test_psp22.wasm b/artifacts/test_psp22.wasm new file mode 100644 index 0000000..163fc7e Binary files /dev/null and b/artifacts/test_psp22.wasm differ diff --git a/artifacts/test_reserves_minter.contract b/artifacts/test_reserves_minter.contract new file mode 100644 index 0000000..67db903 --- /dev/null +++ b/artifacts/test_reserves_minter.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x727d9007be848766ce284403b3bbfa6705d25fa4791db86f8d75e4757c19f3f2","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001450b60027f7f0060037f7f7f017f60037f7f7f0060047f7f7f7f0060027f7f017f60017f0060000060047f7f7f7f017f6000017f60087f7f7e7f7f7f7f7f017f60037e7e7f0002d7010b057365616c310b6765745f73746f726167650007057365616c3005696e7075740000057365616c310463616c6c0009057365616c300d6465706f7369745f6576656e740003057365616c320b7365745f73746f726167650007057365616c3110636f6e7461696e735f73746f726167650004057365616c300b7365616c5f72657475726e0002057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000203656e76066d656d6f72790201021003201f01010101000100000a020508050304040003060000000000000608050602000616037f01418080040b7f0041f082050b7f0041e882050b0711020463616c6c0023066465706c6f7900260aca441f2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bee0201047f230041106b22022400200220012802042205047f2001200541016b36020420012001280200220441016a36020020042d00000520010b3a000120022005453a000041012104024020022d00000d000240024002400240024020022d0001220341037141016b0e03020301000b200341fc01714102762103410021040c040b200341ff01714104490d020c030b200241096a20033a0000200241013a000820022001360204200241003b010c200241046a2002410c6a4102100f0d0220022f010c220141ff014d0d0220014102762103410021040c020b200241096a20033a0000200241013a0008200220013602042002410036020c200241046a2002410c6a4104100f0d01200228020c220141027621032001418080044921040c010b200128020422054104490d002001280200220428000021032001200541046b3602042001200441046a36020020034180808080044921040b2000200336020420002004360200200241106a24000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a2001200028020022012002100a1a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a200028020022012002100a1a0b2000200320026b3602042000200120026a36020041000b0b2401017f230041106b220224002002200136020c2002410c6a20001011200241106a24000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410280c010b200041ffff004d0440200220004102744101723b010e20012002410e6a410210130c010b200041ffffffff034d044020004102744102722001101f0c010b20014103102820002001101f0b200241106a24000b2a01017f230041106b2203240020032001370308200320003703002002200341101013200341106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a20012002100a1a200020043602080f0b000b000b850101027f230041106b2201240020014180800136020c41e882042001410c6a1007200128020c2202418180014f2002411f4d72450440200041e98204290000370001200041096a41f18204290000370000200041116a41f98204290000370000200041186a41808304290000370000200041e882042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1008200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b8a0301067f230041406a22012400200142808001370224200141e8820436022041d3cdc9ab79200141206a2206101f02402001280224220420012802282203490d00200128022021022001200420036b220436022020022003200220036a2205200610002102200420012802202203490d00024002400240024020020e0400040401040b2003450d01200341016b21020240024020052d000022040e020100030b20024120490d02200141386a200541016a220241186a290000370300200141306a200241106a290000370300200141286a200241086a29000037030020012002290000370320200341216b21020b200141186a2203200141386a290300370300200141106a2205200141306a290300370300200141086a2206200141286a2903003703002001200129032037030020020d0120002001290300370001200041196a2003290300370000200041116a2005290300370000200041096a20062903003700000c020b410221040c010b200041103a0001410321040b200020043a0000200141406b24000f0b000bec0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100101b20042802082103200428020c0c020b2003280200210602402001200210192203450440410021030c010b200320062005100a1a0b20020c010b2004200120024100101b2004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b100041d882042d00001a2000200110190bc50101017f027f41dc82042d0000044041e082042802000c010b3f00210241e0820441f0820536020041dc820441013a000041e48204200241107436020041f082050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a41e482042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d0241e4820420023602004100200020016a22022000490d011a0b41e08204200236020020000b0f0b41000bf60501087f230041106b22062400200641086a2001100e02400240024020062802080d0020012802042205200628020c2202490d00024002402002450440410121030c010b20024100480d012006410120024101101b20062802002203450d01200128020421050b200220054b0d012003200128020022042002100a21032001200520026b3602042001200220046a3602002002450d02200241076b22014100200120024d1b2108200341036a417c7120036b210941002101034002400240024002400240024002400240024002400240200120036a2d0000220541187441187522074100480440200541b480046a2d000041026b0e03030102080b200920016b4103710d09200120084f0d080340200120036a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220420024f0d06200320046a2c000021040240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820044140480d050c080b200441607141a07f460d040c070b2004419f7f4a0d060c030b200141016a220420024f0d05200320046a2c000021040240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820044140480d020c080b200441f0006a41ff01714130490d010c070b2004418f7f4a0d060b200141026a220520024f0d05200320056a2c000041bf7f4a0d05200141036a220120024f0d05200120036a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200441404e0d030b200141026a220120024f0d02200120036a2c000041bf7f4c0d010c020b200120036a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c070b200120024f0d010340200120036a2c00004100480d022002200141016a2201470d000b0c050b200141016a21010b20012002490d000b0c020b000b20004180808080783602000c010b2000200236020820002002ad2003ad422086843702000b200641106a24000b2b0020020440200345044041d882042d00001a0b20012002101921010b20002002360204200020013602000b130041e882044181023b0100410141021021000b3d01017f41e8820441003a000041012102200141ff0171044041e9820441013a0000410221020b200241e882046a41003a00002000200241016a1021000bb40101057f230041106b22022400200242808001370208200241e882043602044100200241046a2205101f024020022802082206200228020c2203490d00200228020421042002410036020c2002200620036b3602082002200320046a360204200520011010200104402001410574210103402000200241046a1020200041206a2100200141206b22010d000b0b200228020c220020022802084b0d00200420032002280204200010041a200241106a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a41041013200241106a24000b0a0020012000412010130b0d00200041e8820420011006000b210020002d00004504402001410010280f0b200141011028200041016a200110200bb22102117f057e230041b0026b220024000240024002400240101541ff01714105470d002000418080013602b80141e88204200041b8016a100120002802b8012201418180014f0d00024002400240024020014104490d00200041ec82043602382000200141046b220536023c41eb82042d0000210141ea82042d0000210241e982042d0000210441e882042d0000220641114704400240200641cf00470440200641de00460d01200641cf0147200441dd0147722002419a0147200141a2014772720d03200041106a200041386a100e20002802100d0341082105200028023c41306e22012000280214220320012003491b22040440200441aad5aa154b0d08200441306c22014100480d084108200110182205450d080b41002101200041003602602000200536025c20002004360258200304400340200028023c22044120492004417071412046720d05200041c0016a22082000280238220241086a290000370300200041c8016a2207200241106a290000370300200041d0016a2209200241186a2900003703002000200441306b36023c2000200241306a360238200020022900003703b801200241286a29000021112002290020211220002802582001460440200041d8006a2104230041206b220224000240200141016a220104404104200428020022064101742205200120012005491b2201200141044d1b220141306c2105200141abd5aa1549410374210b02402006450440200241003602180c010b200241083602182002200641306c36021c200220042802043602140b200241086a200b2005200241146a10172002280208450d01200228020c1a0b000b200228020c21062004200136020020042006360204200241206a2400200028025c2105200028026021010b2005200141306c6a220220002903b80137030020082903002113200729030021142009290300211520022012370320200241286a2011370300200241186a2015370300200241106a2014370300200241086a20133703002000200141016a2201360260200341016b22030d000b20002802582204418080808078460d040b200029025c21112004418380808078460d03200028023c4120490d03200041c0016a2000280238220141086a290000370300200041c8016a200141106a290000370300200041d0016a200141186a290000370300200020012900003703b8012011422088a721062011420888a721082011a721030c060b200441a401472002413c47722001418c0147720d0241808080807821040c030b200441224720024187014772200141d30047720d0141818080807821040c020b200441f401472005412049722002413e47200141fd014772720d0020004190016a41fc820429020037030020004198016a41848304290200370300200041f482042902003703880141ed8204350000221141f3820431000042308641f182043300004220868484421888a7210641ec82042d000021032011a7210841828080807821040c020b101c000b410021060b200041d0016a200041a0016a290300370300200041c8016a20004198016a290300370300200041c0016a20004190016a29030037030020002000290388013703b8010b200041306a200041d0016a290300370300200041286a200041c8016a290300370300200041206a200041c0016a290300370300200020002903b8013703182000428080013702bc01200041e882043602b8014100200041b8016a2205101f20002802bc01220720002802c0012201490d0020002802b80121022000200720016b22073602b80120022001200120026a2202200510002101200720002802b8012205492001410f4f720d00200141a580046a2d000022014103462001411047720d002000200536025c20002002360258200041086a200041d8006a100e20002802080d0041012105200028025c4105762201200028020c220720012007491b22010440200141ffffff1f4b0d01200141057422024100480d012001418080802049200210182205450d010b4100210220004100360290012000200536028c012000200136028801200704400340200028025c22094120490d02200041c0016a220b2000280258220141086a290000370300200041c8016a220a200141106a290000370300200041d0016a220d200141186a2900003703002000200941206b36025c2000200141206a360258200020012900003703b801200028028801200246044020004188016a2105230041206b220124000240200241016a22020440410420052802002209410174220c20022002200c491b2202200241044d1b2202418080802049210c2002410574210e02402009450440200141003602180c010b200141013602182001200941057436021c200120052802043602140b200141086a200c200e200141146a10172001280208450d01200128020c1a0b000b200128020c21092005200236020020052009360204200141206a2400200028028c01210520002802900121020b200520024105746a220120002903b801370000200141186a200d290300370000200141106a200a290300370000200141086a200b2903003700002000200241016a220236029001200741016b22070d000b20002802880121010b2001418080808078460d00200028025c200141818080807846720d00200029028c012211422088a7210d2011a7210c0240200441ffffffff076b41002004418380808078481b41016b0e03040302000b200041d4016a200041306a2903002211370200200041cc016a200041286a2903002212370200200041c4016a200041206a29030022133702002000200029031822143702bc01200041d0006a2011370300200041c8006a2012370300200041406b20133703002000418080043602b8012000201437033820004280800137028c01200041e882043602880141d4ffccf40420004188016a2201101f200041bc016a200110202000280290012202200028028c014b0d000240024020002802880120021005417f470440410a21030c010b200341ff01712008410874722102200641306c2106200041a0026a210f200041f0016a2105200041d8016a210e20004198016a2109200041e8006a210b20004198026a211003402006450440200041c4016a200041406b290300370200200041cc016a200041c8006a290300370200200041d4016a200041d0006a2903003702002000418080043602b801200020002903383702bc0120004280800137028c01200041e882043602880141d4ffccf40420004188016a2203101f200041bc016a20031020200028028c0122062000280290012202490d0420002802880121044100210120004100360290012000200620026b36028c012000200220046a36028801200041013a00582003200041d8006a410110132000280290012203200028028c014b0d0420042002200028028801200310041a200c200d101e410b21030c030b200b2002290300370300200b41186a200241186a290300370300200b41106a200241106a290300370300200b41086a200241086a290300370300200241286a290300211120022903202112200541186a200041d0006a290300370000200541106a200041c8006a290300370000200541086a200041406b2903003700002005200029033837000020004188016a2203200041d8006a4130100a1a200041c0016a200941086a290300370300200041c8016a200941106a290300370300200041d0016a200941186a29030037030020102011370300200020092903003703b801200e41106a4200370300200e41086a4200370300200e42003703002000201237039002200041003602a802200041fcf9d4a37d3602a00220004280800137028c01200041e8820436028801200041b8016a20031020200028028c0122082000280290012201490d03200028028801210420004100360290012000200820016b36028c012000200120046a360288014200420020031012200028028c0122082000280290012201490d03200028028801210720004100360290012000200820016b36028c012000200120076a360288012003200f410410132005200310202012201120031012200028028c01220a2000280290012201490d0320002802880121082000200a20016b220a36028801410020044200200720082001200120086a2201200310022103200a2000280288012207492003410f4f720d03200341a580046a2d000022034110472003410247710d032000200736025c200020013602582007450d032000200741016b220336025c2000200141016a220436025802400240024020012d00000e020001060b2003450d052000200741026b220a36025c2000200141026a3602584101210441082103024020012d00010e020200060b200a450d052000200741036b220a36025c2000200141036a3602584100210402400240027f0240024002400240024020012d000222030e0800090102030406070d0b20004188016a200041d8006a101a2000280288012208418080808078460d0c200029028c01211141000c040b410221030c070b410321030c060b410421030c050b20004188016a200041d8006a101a2000280288012208418080808078460d08200029028c01211141050b2103200028025c210a0c030b410621030c020b410721030c010b2003450d0420042d00001a0c040b200a0d03200241306a2102200641306b210620040d000b200841087621020b410121010b200020023b00bd01200041bf016a20024110763a0000200020113702c001200020083a00bc01200020033602b801230041106b22032400200341808001360208200341e8820436020402400240024002400240200041b8016a22042802002200410c47044041e8820441003a00002000410b46044041e9820441003a0000410221020c060b41e9820441013a000041032102024002404101200041086b2206200641034f1b41016b0e020001050b41ea820441013a000041002102024002400240024002400240200041016b0e0700010203080405090b41eb820441013a00000c0a0b41eb820441023a00000c090b41eb820441033a00000c080b4104210241eb820441043a00000c080b41eb820441063a00000c060b41eb820441073a00000c050b41ea820441023a00000c050b41e882044181023b0100410221020c040b410521020b41eb820420023a00002003410436020c200441086a2802002102200341046a22002004410c6a280200220410102000200220041013200328020c220241818001490d02000b41ea820441003b01000b410421020b200120021021000b000b410121021024450440200041c1016a2000290318370000200041c0016a2006411876ad3c0000200041be016a2006410876ad3d0000200041c9016a200041206a290300370000200041d1016a200041286a290300370000200041ba016a2006411874ad2008ad42ffffff0783843e0000200020033a00b901200041013a00b801200041b8016a1025200c200d101e410021020b20022002101d000b410121011024450440418480041025200c200d101e410021010b20012001101d000b200041b8016a22024101722104230041306b220324002003410f6a1016024020032d000f220141024f0440410021010c010b20042003290010370001200441196a200341286a290000370000200441116a200341206a290000370000200441096a200341186a2900003700000b200420013a0000200341306a2400200041003a00b801230041106b22012400200141808001360208200141e88204360204024020022d0000044041e882044181023b0100410221010c010b41e8820441003a00002001410136020c200241016a200141046a1022200128020c220141818001490d00000b410020011021000b6401037f230041f0006b220024002000410e6a22011014200041cf006a22021016027f024020002d004f41024f0d002000412e6a20024121100a1a20002d002e450d0020012000412f6a4120100d0d0041000c010b41010b2101200041f0006a240020010b8f0501077f230041306b22012400200142808001370208200141e8820436020441d3cdc9ab79200141046a2203101f024020012802082204200128020c2202490d00200128020421052001410036020c2001200420026b3602082001200220056a360204200020031022200128020c220420012802084b0d00200520022001280204200410041a20014102360224200142808001370208200141e88204360204200141246a220720031011200128020c2202418180014f0d002001410036020c20014180800120026b22053602082001200241e882046a220436020441b5820420031020200128020c220620012802084b0d0020032001280204200610272001410036022c200120053602282001200436022420032007102020022002200128022c6a22024b0d00024020002d000004402002418180014f0d022001410036020c20014180800120026b22053602082001200241e882046a2204360204200041016a20031020200128020c220620012802084b0d0220032001280204200610272001410036022c200120053602282001200436022420032007102020022002200128022c6a22024d0d010c020b2002418180014f0d012001410036020c20014180800120026b22053602082001200241e882046a2204360204200141003a0024200141046a2203200141246a220741011013200128020c220620012802084b0d0120032001280204200610272001410036022c200120053602282001200436022420032007102020022002200128022c6a22024b0d010b2002418180014f0d002001410036020c20014180800120026b3602082001200241e882046a3602042000200141046a1022200128020c220020012802084b0d0041e882042002200128020420001003200141306a24000f0b000ba90101027f230041306b2200240002400240101541ff01714105470d0020004180800136020c41e882042000410c6a1001200028020c2201418180014f0d00200141044f044041e882042d0000419b014741e982042d000041ae01477241ea82042d0000419d01477241eb82042d000041de004772450d020b101c000b000b2000410d6a1014200041013a000c2000410c6a102541014100101e41e8820441003b0100410041021021000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1009200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b200320012002100a1a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b0b85020400418080040b04d43f934e0041a580040b8f01100102030405060708090a0b0c0d0e01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010041f681040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041b482040b21015c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"test_reserves_minter","version":"0.2.0","authors":["Łukasz Łakomy","Konrad Wierzbik"]},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":17},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":0},"balance":{"displayName":["Balance"],"type":21},"blockNumber":{"displayName":["BlockNumber"],"type":31},"chainExtension":{"displayName":["ChainExtension"],"type":34},"hash":{"displayName":["Hash"],"type":32},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":33}},"events":[{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":31}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":31}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":31}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":31}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":4}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":4}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":31}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":4}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":0}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":4}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":4}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":21}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":0}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":0}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":21}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":4}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"}],"lang_error":{"displayName":["ink","LangError"],"type":18},"messages":[{"args":[{"label":"addreses_with_amounts","type":{"displayName":["Vec"],"type":19}},{"label":"to","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"mint","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0xcfdd9aa2"},{"args":[],"default":false,"docs":[],"label":"Ownable::owner","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":28},"selector":"0x4fa43c8c"},{"args":[],"default":false,"docs":[],"label":"Ownable::renounce_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x5e228753"},{"args":[{"label":"new_owner","type":{"displayName":["AccountId"],"type":0}}],"default":false,"docs":[],"label":"Ownable::transfer_ownership","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x11f43efd"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd3667295","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd3667295","ty":0}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd3667295","ty":3}},"name":"owner"}],"name":"OwnableData"}},"name":"ownable"},{"layout":{"leaf":{"key":"0x00000000","ty":9}},"name":"reserves_to_mint"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd43f934e","ty":10}},"root_key":"0xd43f934e","ty":11}},"name":"already_minted"}],"name":"TestReservesMinter"}},"root_key":"0x00000000","ty":15}},"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":{"composite":{}},"params":[{"name":"V","type":4},{"name":"KeyType","type":5}],"path":["ink_storage","lazy","Lazy"]}},{"id":4,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":0}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":0}],"path":["Option"]}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"L","type":6},{"name":"R","type":8}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":7,"type":{"def":{"tuple":[]}}},{"id":8,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":9,"type":{"def":{"sequence":{"type":0}}}},{"id":10,"type":{"def":{"primitive":"bool"}}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"K","type":0},{"name":"V","type":10},{"name":"KeyType","type":12}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"L","type":13},{"name":"R","type":14}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":13,"type":{"def":{"composite":{}},"path":["ink_storage_traits","impls","AutoKey"]}},{"id":14,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":7}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":15,"type":{"def":{"composite":{"fields":[{"name":"ownable","type":16,"typeName":",>>::Type"},{"name":"reserves_to_mint","type":9,"typeName":" as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<2312818774u32, ()>,>>::Type"},{"name":"already_minted","type":11,"typeName":" as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1318272980u32,\n()>,>>::Type"}]}},"path":["test_reserves_minter","test_psp22","TestReservesMinter"]}},{"id":16,"type":{"def":{"composite":{"fields":[{"name":"owner","type":3,"typeName":"<::ink::storage::Lazy,::ink::storage::\ntraits::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1502786585u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","access","ownable","implementation","OwnableData"]}},{"id":17,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":18}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":18}],"path":["Result"]}},{"id":18,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":19,"type":{"def":{"sequence":{"type":20}}}},{"id":20,"type":{"def":{"tuple":[0,21]}}},{"id":21,"type":{"def":{"primitive":"u128"}}},{"id":22,"type":{"def":{"variant":{"variants":[{"fields":[{"type":23}],"index":0,"name":"Ok"},{"fields":[{"type":18}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":23},{"name":"E","type":18}],"path":["Result"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":24}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":24}],"path":["Result"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":25,"typeName":"OwnableError"}],"index":0,"name":"OwnableError"},{"fields":[{"type":26,"typeName":"PSP22Error"}],"index":1,"name":"PSP22Error"},{"index":2,"name":"AlreadyMinted"}]}},"path":["test_reserves_minter","test_psp22","TestReservesMinterError"]}},{"id":25,"type":{"def":{"variant":{"variants":[{"index":0,"name":"CallerIsNotOwner"}]}},"path":["pendzl_contracts","access","ownable","OwnableError"]}},{"id":26,"type":{"def":{"variant":{"variants":[{"fields":[{"type":27,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":27,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":27,"type":{"def":{"primitive":"str"}}},{"id":28,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":18}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":18}],"path":["Result"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":30}],"index":0,"name":"Ok"},{"fields":[{"type":18}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":30},{"name":"E","type":18}],"path":["Result"]}},{"id":30,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":25}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":25}],"path":["Result"]}},{"id":31,"type":{"def":{"primitive":"u32"}}},{"id":32,"type":{"def":{"composite":{"fields":[{"type":1,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":33,"type":{"def":{"primitive":"u64"}}},{"id":34,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/test_reserves_minter.json b/artifacts/test_reserves_minter.json new file mode 100644 index 0000000..7e5e074 --- /dev/null +++ b/artifacts/test_reserves_minter.json @@ -0,0 +1,1185 @@ +{ + "source": { + "hash": "0x727d9007be848766ce284403b3bbfa6705d25fa4791db86f8d75e4757c19f3f2", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "test_reserves_minter", + "version": "0.2.0", + "authors": ["Łukasz Łakomy", "Konrad Wierzbik"] + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 17 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 0 + }, + "balance": { + "displayName": ["Balance"], + "type": 21 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 31 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 34 + }, + "hash": { + "displayName": ["Hash"], + "type": 32 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 33 + } + }, + "events": [ + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 31 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 31 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 31 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 31 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 4 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 31 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 4 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 21 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 21 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 4 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 18 + }, + "messages": [ + { + "args": [ + { + "label": "addreses_with_amounts", + "type": { + "displayName": ["Vec"], + "type": 19 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "mint", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0xcfdd9aa2" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "Ownable::owner", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 28 + }, + "selector": "0x4fa43c8c" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "Ownable::renounce_ownership", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x5e228753" + }, + { + "args": [ + { + "label": "new_owner", + "type": { + "displayName": ["AccountId"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "Ownable::transfer_ownership", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x11f43efd" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd3667295", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd3667295", + "ty": 0 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd3667295", + "ty": 3 + } + }, + "name": "owner" + } + ], + "name": "OwnableData" + } + }, + "name": "ownable" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 9 + } + }, + "name": "reserves_to_mint" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd43f934e", + "ty": 10 + } + }, + "root_key": "0xd43f934e", + "ty": 11 + } + }, + "name": "already_minted" + } + ], + "name": "TestReservesMinter" + } + }, + "root_key": "0x00000000", + "ty": 15 + } + }, + "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": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 4 + }, + { + "name": "KeyType", + "type": 5 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 0 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + } + ], + "path": ["Option"] + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 6 + }, + { + "name": "R", + "type": 8 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 7, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 8, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 9, + "type": { + "def": { + "sequence": { + "type": 0 + } + } + } + }, + { + "id": 10, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 10 + }, + { + "name": "KeyType", + "type": 12 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 13 + }, + { + "name": "R", + "type": 14 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "path": ["ink_storage_traits", "impls", "AutoKey"] + } + }, + { + "id": 14, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 7 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 15, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "ownable", + "type": 16, + "typeName": ",>>::Type" + }, + { + "name": "reserves_to_mint", + "type": 9, + "typeName": " as::ink::storage::traits::AutoStorableHint<::\nink::storage::traits::ManualKey<2312818774u32, ()>,>>::Type" + }, + { + "name": "already_minted", + "type": 11, + "typeName": " as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1318272980u32,\n()>,>>::Type" + } + ] + } + }, + "path": ["test_reserves_minter", "test_psp22", "TestReservesMinter"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 3, + "typeName": "<::ink::storage::Lazy,::ink::storage::\ntraits::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1502786585u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "ownable", "implementation", "OwnableData"] + } + }, + { + "id": 17, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 18 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 18 + } + ], + "path": ["Result"] + } + }, + { + "id": 18, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 19, + "type": { + "def": { + "sequence": { + "type": 20 + } + } + } + }, + { + "id": 20, + "type": { + "def": { + "tuple": [0, 21] + } + } + }, + { + "id": 21, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 22, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 23 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 18 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 23 + }, + { + "name": "E", + "type": 18 + } + ], + "path": ["Result"] + } + }, + { + "id": 23, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 24 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 24 + } + ], + "path": ["Result"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 25, + "typeName": "OwnableError" + } + ], + "index": 0, + "name": "OwnableError" + }, + { + "fields": [ + { + "type": 26, + "typeName": "PSP22Error" + } + ], + "index": 1, + "name": "PSP22Error" + }, + { + "index": 2, + "name": "AlreadyMinted" + } + ] + } + }, + "path": ["test_reserves_minter", "test_psp22", "TestReservesMinterError"] + } + }, + { + "id": 25, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "CallerIsNotOwner" + } + ] + } + }, + "path": ["pendzl_contracts", "access", "ownable", "OwnableError"] + } + }, + { + "id": 26, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 27, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 27, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 27, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 18 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 18 + } + ], + "path": ["Result"] + } + }, + { + "id": 29, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 30 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 18 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 30 + }, + { + "name": "E", + "type": 18 + } + ], + "path": ["Result"] + } + }, + { + "id": 30, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 25 + } + ], + "path": ["Result"] + } + }, + { + "id": 31, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 32, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 33, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 34, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/test_reserves_minter.wasm b/artifacts/test_reserves_minter.wasm new file mode 100644 index 0000000..ee62e90 Binary files /dev/null and b/artifacts/test_reserves_minter.wasm differ diff --git a/artifacts/v_token.contract b/artifacts/v_token.contract new file mode 100644 index 0000000..a21c1f4 --- /dev/null +++ b/artifacts/v_token.contract @@ -0,0 +1 @@ +{"source":{"hash":"0xa1b063ed23d600a7ca37f6340acec08f7352dd8834a2b3c79013c05f73cb0622","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d01000000017a1260037f7f7f017f60027f7f0060027f7f017f60037f7f7f0060017f0060047f7f7f7f017f60047f7f7f7f0060000060057f7f7f7f7f017f60017f017f60087f7f7e7f7f7f7f7f017f60037f7e7e0060037e7e7f006000017f60027e7e0060057f7f7f7e7e0060067f7f7f7f7e7e0060077f7f7f7f7f7f7f017f02be010a057365616c310b6765745f73746f726167650005057365616c3005696e7075740001057365616c310463616c6c000a057365616c300d6465706f7369745f6576656e740006057365616c320b7365745f73746f726167650005057365616c300b7365616c5f72657475726e0003057365616c300663616c6c65720001057365616c301176616c75655f7472616e736665727265640001057365616c300f686173685f626c616b65325f323536000303656e76066d656d6f727902010210035c5b000000000b01010c090104010301010401010101010104030104040d0201010103010907010e04010301070102010f1001070102020102020201110202020802020208020603030006030004000203020305030800060202000105040501700115150616037f01418080040b7f0041b09e050b7f0041a49e050b0711020463616c6c0033066465706c6f79003a091a010041010b143c4c3f40484945444a4641585455563d545d5f600ae3cd015b2b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0bb20101047f230041d0006b22032400200341808004360200200341046a200041c00010092100200342808001370248200341a49e0436024441d087b7ab78200341c4006a2205100e20002005100f024020032802482204200328024c2200490d00200328024421062003410036024c2003200420006b3602482003200020066a3602442001200220051010200328024c220420032802484b0d00200620002003280244200410041a200341d0006a24000f0b000b2601017f230041106b220224002002200036020c20012002410c6a4104104e200241106a24000b1100200020011016200041206a200110160b2a01017f230041106b220324002003200137030820032000370300200220034110104e200341106a24000b3a01027f230041106b22012400200141086a2000101220012d0009210020012d00082102200141106a2400410341032000200041034f1b20021b0b3c01017f200020012802042202047f2001200241016b36020420012001280200220141016a36020020012d00000520010b3a000120002002453a00000ba90101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a22043602044100200141046a22051014200128020c220620012802084b0d0020052001280204200610152001410036022c20012003360228200120043602242005200141246a101620022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b2601017f230041106b22022400200220003a000f20012002410f6a4101104e200241106a24000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1008200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b20032001200210091a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a00200120004120104e0ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061016200228020c220120022802084b0d0020062002280204200110152002410036022c20022004360228200220053602242006200241246a10162003200228022c6a22012003490d0020002001360208200241306a24000f0b000b7201047f230041106b220124002001410336020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a101920022002200128020c6a22024b0d0020002002360208200141106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d044020012000410274103e0c010b200041ffff004d0440200220004102744101723b010e20012002410e6a4102104e0c010b200041ffffffff034d044020004102744102722001100e0c010b20014103103e20002001100e0b200241106a24000bc30102047f027e23004180016b220224002002413e6a22032001101b0240024020022d003e41024704402002411d6a22042003412110091a20032001101b20022d003e4102460d01200241df006a22052003412110091a20022001101c2002290300a7450440200241106a290300210620022903082107200041106a2004412110091a2000200637030820002007370300200041316a2005412110091a0c030b200041023a00100c020b200041023a00100c010b200041023a00100b20024180016a24000bab0101037f230041106b22022400200241086a2001101241022103024020022d00080d000240024020022d00090e020001020b410021030c010b200128020422044120490d002001200441206b36020420012001280200220141206a36020020002001290000370001200041096a200141086a290000370000200041116a200141106a290000370000200041196a200141186a290000370000410121030b200020033a0000200241106a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000b1100200041206a200110162000200110160bb90102027f017e230041206b22032400420121040240200128020422024120490d002001200241206b36020420012001280200220241206a360200200341086a2001101c2003290308a70d00200341186a2903002104200041286a200329031037030020002002290000370008200041306a2004370300200041206a200241186a290000370000200041186a200241106a290000370000200041106a200241086a290000370000420021040b20002004370300200341206a24000bb00201057f230041306b2201240020014280800137020c200141a49e04360208200141086a1018200141286a200141106a28020036020020012001290208370320200141146a2202200141206a41b480041020200041316a2104024020002d001004402002200041116a10170c010b200141146a10130b200141286a2001411c6a28020036020020012001290214370320024020042d00000440200141206a200041326a10170c010b200141206a10130b02402001280224220320012802282202490d0020012802202105200141003602282001200320026b3602242001200220056a360220200041106a200141206a220310212004200310212000290300200041086a290300200310102001280228220020012802244b0d0020052002200128022020001003200141306a24000f0b000bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071016200328020c220220032802084b0d0220072003280204200210152003410036022c20032005360228200320063602242007200341246a10162004200328022c6a22022004490d02200120023602080c010b200110130b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b210020002d000045044020014100103e0f0b20014101103e200041016a200110160b8e0201067f23004180016b22012400200141086a2204200041d00010091a20014280800137025c200141a49e04360258200141d8006a1018200141f8006a2200200141e0006a28020036020020012001290258370370200141e4006a2202200141f0006a22034193800410202002200410172000200141ec006a280200360200200120012902643703702003200141286a2202101702402001280274220620002802002200490d0020012802702105200141003602782001200620006b3602742001200020056a3602702004200310162002200310162001290348200141d0006a290300200310102001280278220220012802744b0d002005200020012802702002100320014180016a24000f0b000b850101027f230041106b2201240020014180800136020c41a49e042001410c6a1006200128020c2202418180014f2002411f4d72450440200041a59e04290000370001200041096a41ad9e04290000370000200041116a41b59e04290000370000200041186a41bc9e04290000370000200041a49e042d00003a0000200141106a24000f0b000b5902017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a1007200028021c41114f0440000b2000290308210120002903002102200041206a2400410541042001200284501b0b0d00200020014120100c4100470ba30202047f017e230041206b22022400200242808001370218200241a49e043602142001200241146a2204100e024020022802182205200228021c2201490d00200228021421032002200520016b220536021420032001200120036a2201200410002104200520022802142203490d00024002400240024020040e0400040401040b2003450d012002200341016b22033602102002200141016a36020c02400240024020012d00000e020100040b200241146a2002410c6a103b20022802142201418080808078460d0320022802100d03200229021821060c010b20030d0241808080807821010b20002006370204200020013602000c020b20004181808080783602000c010b2000418280808078360200200041103a00040b200241206a24000f0b000b0a00200120004104104e0baa0102027f027e230041206b22022400200241186a200110120240027f0240024020022d00180d000240024020022d00190e020100020b2001102b450d0141010c030b20022001101c2002290300a7450d010b200041023602000c020b200241106a29030021042002290308210541000b210320012802040440200041023602000c010b200020053703082000410136020420002003360200200041106a20043703000b200241206a24000be30202047f027e23004190016b22032400200341186a200141186a290000370300200341106a200141106a290000370300200341086a200141086a290000370300200341286a200241086a290000370300200341306a200241106a290000370300200341386a200241186a2900003703002003200129000037030020032002290000370320200341808004360240200341c4006a200341c0001009210120034280800137028801200341a49e043602840141d087b7ab7820034184016a2205100e20012005100f02402003280288012204200328028c012201490d0020032802840121022003200420016b22063602840120022001200120026a220120051000210220062003280284012204492002410f4f720d00200241d480046a2d00002202410347044020024110472004411049722004411047720d01200141086a2900002108200129000021070b200020083703082000200737030020034190016a24000f0b000b3801017f230041106b22022400200241086a2001101220022d00092101200020022d00084101713a0000200020013a0001200241106a24000b3601027f230041106b22012400200141086a2000101220012d0009210020012d00082102200141106a24002002417f732000410146710b130041a49e044181023b0100410141021030000b9b0201037f230041106b22022400200241808001360208200241a49e043602040240024002400240024020012802002204410947044041a49e0441003a00002004410846044041a59e0441003a0000410221010c060b41a59e0441013a000002400240024002400240200441016b0e0708000102060304070b41a69e0441023a00000c080b4103210141a69e0441033a00000c080b41a69e0441043a00000c060b41a69e0441063a00000c050b41a69e0441073a00000c040b41a49e044181023b0100410221010c040b410521030b41a69e0420033a00002002410336020c200141086a2802002001410c6a280200200241046a1031200228020c220141818001490d02000b41a69e0441013a00000b410321010b200020011030000b4c01017f230041106b22022400200241a49e0436020441a49e0441003a0000200242808081801037020820002001200241046a1010200228020c2202418180014f0440000b410020021030000b950101057f230041106b22012400200142808001370208200141a49e043602044100200141046a2203100e024020012802082205200128020c2202490d00200128020421042001410036020c2001200520026b3602082001200220046a360204200020031016200041206a20031016200128020c220020012802084b0d00200420022001280204200010041a200141106a24000f0b000b0d00200041a49e0420011005000b2c01017f230041106b220324002003200136020c2003410c6a20021019200220002001104e200341106a24000b2c00200028020041808080807846044020014100103e0f0b20014101103e20002802042000280208200110310bc94202107f087e230041d0056b220024000240024002400240027f024002400240027f0240027f02400240024002400240102441ff01714105470d002000418080013602a80341a49e04200041a8036a100120002802a8032201418180014f0d000240024020014104490d00200041a89e04360298032000200141046b220636029c0341a79e042d0000210541a69e042d0000210341a59e042d000021020240024002400240024002400240024002400240024002400240024002400240024041a49e042d00002204413d6b0e050b11111101000b20044116460d0220044134460d0b200441cd00460d04200441d400460d06200441e500460d03200441f200460d0c200441fe01460d092004419601460d08200441b201460d07200441ce01460d01200441db01460d05200441fb0047200241ff017141fe014772200341ff017141de0147200541ff0171413f4772720d1020004190016a20004198036a10342000280290010d1041082103200028029c0341d8006e2201200028029401220420012004491b2202044020024197bad10b4b0d13200241d8006c22014100480d1341a09e042d00001a4108200110352203450d130b41002101200041003602b805200020033602b405200020023602b0052004450d0e200041b9036a2105200041b0036a21060340200041a8036a20004198036a101a20002d00b803220a4102460d112006290300211020002903a803211120004198016a200541c70010091a20002802b005200146047f200041b0056a2103230041206b220224000240200141016a22010440410420032802002209410174220b20012001200b491b2201200141044d1b220141d8006c210b20014198bad10b49410374210d02402009450440200241003602180c010b200241083602182002200941d8006c36021c200220032802043602140b200241086a200d200b200241146a104d2002280208450d01200228020c1a0b000b200228020c21092003200136020020032009360204200241206a240020002802b405210320002802b8050520010b41d8006c20036a22012010370308200120113703002001200a3a0010200141116a20004198016a41c70010091a200020002802b80541016a22013602b805200441016b22040d000b200020002800b5053602d0022000200041b8056a2800003600d30220002802b0052202418080808078460d1020002d00b40521030c0f0b200241ff0171410647200341ff017141ef014772200541ff017141d30047720d0f200041a8036a20004198036a101a20002d00b80322044102460d0f200028029c0322024120492002416071412046720d0f200028029803220741086a290000211020072900002111200728001c210520072900142115200728001021012000200241406a220236029c0320024110490d0f200041c4026a200041be036a2f01003b0100200041e0026a200041c9036a290000370300200041e8026a200041d1036a290000370300200041ef026a200041d8036a290000370000200020002800ad033602c802200020002801ba033602c002200020002900c1033703d8022000200741d0006a360298032000200041b0036a2800003600cb02200741c8006a29000021162007290040211720002d00a803210220002d00ac03210320002802b403210e20002d00b903210820002d00c003210620002f00a903210920002d00ab03210c200041e0046a200741206a220741086a290000370300200041e8046a200741106a290000370300200041f0046a200741186a290000370300200020072900003703d8042009200c411074722109200041e8036a290300211220002903e003211320002802fc03210c20002902f403211420002802f00321070c100b200241ff017141c60147200341ff017141d1014772200541ff017141fe0047720d0e410421040c0f0b200241ff0171412d47200341ff017141f8014772200541ff017141c20147720d0d410521040c0e0b200241ff017141e80047200341ff017141384772200541ff0171412f47200641204972720d0c200041c4026a41ad9e042f00003b0100200041e0026a41b89e04290200370300200041e8026a41c09e04290200370300200041c89e0436029803200041a99e042800003602c002200041b09e042902003703d80241af9e042d0000210641a89e042d00002108410621040c0d0b200241ff017141c70047200341ff017141d9014772200541ff0171412147200641204972720d0b200141c4006b220141604f0d0b41af9e042d0000210641a89e042d00002108200041c3036a41cb9e04280000360000200041b8036a220441c09e04290200370300200041c4026a41ad9e042f00003b0100200041b0036a220241b89e04290200370300200041c89e042802003602c0032000200136029c03200041e89e0436029803200041a99e042800003602c002200041b09e042902003703a80341d79e04290000211241cf9e04290000211341df9e04280000210741e39e04350000211041e79e043100002111200041ef026a200041bf036a290000370000200041e8026a2004290300370300200041e0026a2002290300370300200020002903a8033703d80220102011422086842114410721040c0c0b200241ff0171412047200341ff017141f9014772200541ff017141f50147200641204972720d0a200041b0036a220a41b19e04290000370300200041b8036a220b41b99e04290000370300200041bf036a220d41c09e04290000370000200041a99e042900003703a803200141346b2201416f4b0d0a41a89e042d00002106200041d89e04360298032000200136029c0341d09e04290200211241c89e04290200211320004198016a20004198036a10362000280298012207418080808078460d0a41082104200041e0026a200a290300370300200041e8026a200b290300370300200041ef026a200d290000370000200020002903a8033703d802200029029c0121140c0b0b200241ff017141b30147200341ff017141c7014772200541ff017141ee0047200641204972720d09200041b0036a220441b19e04290000370300200041b8036a220a41b99e04290000370300200041bf036a220b41c09e04290000370000200041a99e042900003703a803200141c4006b2206415f4b2006411049720d0941a89e042d0000210641d09e04290200211241c89e04290200211341e49e04280200210c41dc9e04290200211441d89e042802002107200041f89e04360298032000200141d4006b36029c0341f09e04290200211041e89e04290200211120004198016a20004198036a10362000280298012201418080808078460d09200041e0026a2004290300370300200041e8026a200a290300370300200041ef026a200b290000370000200020002903a8033703d802200029029c012115410921040c0a0b200241ff0171410f47200341ff0171411b4772200541ff017141bd0147720d08200041a8036a20004198036a101e20002903a8034200520d08200041e0026a200041b9036a290000370300200041e8026a200041c1036a290000370300200041ef026a200041c8036a2900003700002000200041b1036a2900003703d802200041d8036a2903002112200041d0036a290300211320002d00b0032106410a21040c090b200241ff017141d60147200341ff017141b5014772200541ff017141fa0047720d07200041a8036a20004198036a101e20002903a8034200520d07200041e0026a200041b9036a290000370300200041e8026a200041c1036a290000370300200041ef026a200041c8036a2900003700002000200041b1036a2900003703d802200041d8036a2903002112200041d0036a290300211320002d00b0032106410b21040c080b200241ff017141cb0147200341ff017141d70047720d06200541ff017141d501460d030c060b200241ff0171412647200341ff0171411b4772200541ff017141d40147720d05410d21040c060b200241ff0171412047200341ff017141db004772200541ff017141e50147720d04410e21040c050b200241ff017141f10047200341ff017141b7014772200541ff017141820147720d03410f21040c040b200041a8036a20004198036a101e20002903a8034200520d02200041e0026a200041b9036a290000370300200041e8026a200041c1036a290000370300200041ef026a200041c8036a2900003700002000200041b1036a2900003703d802200041d8036a2903002112200041d0036a290300211320002d00b0032106410c21040c030b200020002800b5053602d0022000200041b8056a2800003600d3020b200020002800d3023600cb02200020002802d0023602c80220024108762109410221040c010b102c000b200041a0016a20002800cb02360000200041ae016a200041c4026a2f01003b0100200041b9016a200041e0026a290300370000200041c1016a200041e8026a290300370000200041c8016a200041ef026a290000370000200041a8026a200041f0046a290300370300200041a0026a200041e8046a29030037030020004198026a200041e0046a290300370300200020002802c80236009d01200020002802c0023601aa01200020002903d8023700b101200020002903d80437039002200041b8026a2016370300200041f8016a2010370300200041d8016a20123703002000200241ff0171200941087472360298012000200e3602a401200020073602e001200020143702e4012000200c3602ec01200020013602800220002015370284022000200536028c02200020173703b002200020113703f001200020133703d001200020063a00b001200020083a00a901200020043a00a801200020033a009c012000428080013702ac03200041a49e043602a8034100200041a8036a2203100e20002802ac03220520002802b0032201490d0020002802a80321022000200520016b22063602a80320022001200120026a2201200310002105200620002802a8032202492005410f4f720d00200541d480046a2d000022054103462005411047722002416071412046200241204972720d0020012d00002105200041df036a200141386a290000370000200041d7036a200141306a290000370000200041cf036a200141286a290000370000200041b0036a200141096a290000370300200041b8036a200141116a290000370300200041bf036a200141186a290000370000200020012900203700c703200020012900013703a803200041d8046a22012003413f10091a200241c000470d00200041b0016a2102200041a9016a2103200041d9026a2001413f10091a200020053a00d80202400240024002400240024002400240024002400240027f024002400240024002400240024002404101200441026b2201200141ff0171410e4f1b41ff017141016b0e0d01090a020304050d0610111213000b20002802a0012102200028029c012101200041f0046a200041f0026a290000370300200041e8046a200041e8026a290000370300200041e0046a200041e0026a290000370300200020002900d8023703d804200041a8036a22041023200041d8046a200410250d0620020440200041d9036a2105200041b8036a2103200241d8006c2104034020012903002210200141086a290300221184504504402003200141106a412110091a2005200141316a412110091a200020113703b003200020103703a803200041a8036a101f0b200141d8006a2101200441d8006b22040d000b0b200041a8036a2202200041d8026a41c00010091a2002102f4100210441080c070b2000200041d8026a3602a803200041b0036a20004198016a41a80110091a200041d0046a2903002110200041c8046a2903002111200041b8036a290300211220002903b0032113200041c8056a200041f0026a290000370300200041c0056a200041e8026a290000370300200041b8056a200041e0026a290000370300200020002900d8023703b005200041d8046a22041023200041b0056a200410250d13200041a8046a210120004188046a21052012201384500d1a200041e8046a200041c0036a412110091a20004189056a200041e1036a412110091a200020123703e004200020133703d8042004101f0c1a0b200041386a210423004180026b2201240020014190016a2205200341186a29000037030020014188016a2206200341106a29000037030020014180016a2207200341086a29000037030020012003290000370378200141a0016a2208200041d8026a220241286a290000370300200141a8016a2209200241306a290000370300200141b0016a220c200241386a2900003703002001200229002037039801200141306a200241186a290000370300200141286a200241106a290000370300200141206a200241086a29000037030020012002290000370318200141c8006a2202200141086a2203413010091a2003200141f8006a220a41c00010091a2005200141f0006a2903003703002006200141e8006a2903003703002007200141e0006a2903003703002008420037030020094200370300200c4100360200200120012903583703782001420037039801200141b4016a200341c00010092107200141f4016a220841e9f1f1b37836020020014280800137024c200141a49e04360248200a2002101602400240200128024c220620012802502203490d0020012802482105200141003602502001200620036b36024c2001200320056a3602484200420020021010200128024c220920012802502203490d0020012802482106200141003602502001200920036b36024c2001200320066a36024820082002102720072002101d200128024c220820012802502203490d00200128024821072001200820036b2208360248410020054200200620072003200320076a2205200210022103200820012802482206492003410f4f720d00200341d480046a2d000022034110472003410247710d00200120063602fc01200120053602f8012002200141f8016a1028200128024822024102462002720d00200129035021102004200141d8006a2903003703082004201037030020014180026a24000c010b000b2000290338200041406b290300102e000b230041e0006b220124002001200041d8026a36021c200141086a200141206a200341c0001009200141406b102920012903082110200041c8006a2202200141106a29030037030820022010370300200141e0006a24002000290348200041d0006a290300102e000b200041b0036a200241c000100921022000200041d8026a22043602a803200041d0036a2903002111200041d8036a2903002110200041d8046a22031023200041d8006a200220031029410221012000290358201154200041e0006a290300221220105420102012511b0d15200041b0056a22052002200320112010103720002802b00522014108470d11200520042003200220112010103820002802b00522014108460d06200041a0036a200041bc056a280200360200200020002902b405370398030c150b200041b0036a200241e000100921022000200041d8026a22043602a803200041f0036a2903002111200041f8036a2903002110200041d8046a22031023200041e8006a200220031029410221012000290368201154200041f0006a290300221220105420102012511b0d12200041b0056a2205200041d0036a2206200320112010103720002802b00522014108470d11200520042002200620112010103820002802b00522014108460d06200041a0036a200041bc056a280200360200200020002902b405370398030c120b2000200041d8026a3602d80441082101200041e0046a200241301009210320004180056a290300211220004188056a2903002113200041b0056a2204102320004180016a20042003102920004188016a29030021102000290380012111200041f8006a4108103920002802782103200028027c220542cfec9593e78cdbb7f70037000041012104201120127c221220115422062006ad201020137c7c221120105420102011511b4101470d072003ad2005ad42208684211042082111410021010c080b200041086a410e103920002802082103200028020c220141848004290000370000200141066a418a80042900003700004101210441000b21022000410e3602b403200020013602b003200020033602ac03200020023602a8030c190b200041c1036a200041f0026a290000370000200041b9036a200041e8026a290000370000200041b1036a200041e0026a290000370000200020002900d8023700a903200041003a00a803230041106b22012400200141808001360208200141a49e043602040240200041a8036a22002d0000044041a49e044181023b0100410221000c010b41a49e0441003a00002001410136020c200041016a200141046a1016200128020c220041818001490d00000b410020001030000b200041286a2104230041c0016b2201240020014184016a200041d8026a220241386a290000370200200141fc006a200241306a290000370200200141f4006a200241286a2900003702002001200229002037026c200141b8016a200241186a290000370300200141b0016a200241106a290000370300200141a8016a200241086a290000370300200120022900003703a001200120014190016a413010092201418c016a220741898381a402360200200141386a200141186a290300370300200141406b200141206a290300370300200141c8006a200141286a290300370300200141d8006a4200370300200141e0006a4200370300200141e8006a4100360200200120012903103703302001420037035020014280800137029401200141a49e0436029001200141306a20014190016a220210160240024020012802940122062001280298012203490d00200128029001210520014100360298012001200620036b360294012001200320056a36029001420042002002101020012802940122082001280298012203490d00200128029001210620014100360298012001200820036b360294012001200320066a36029001200720021027200141ec006a2002101620012802940122082001280298012203490d0020012802900121072001200820036b220836029001410020054200200620072003200320076a220520021002210320082001280290012206492003410f4f720d00200341d480046a2d000022034110472003410247710d00200120063602042001200536020020022001102820012802900122024102462002720d0020012903980121102004200141a0016a29030037030820042010370300200141c0016a24000c010b000b2000290328200041306a290300102e000b200041a8036a2201200041d8026a41c00010091a2001102f4108210141000c0f0b200041a8036a2201200041d8026a41c00010091a2001102f4108210141000c0c0b200041d8046a220310232000428080013702ac03200041a49e043602a80341d087b7ab78200041a8036a2201100e20032001101620022001101620002802ac03220520002802b0032203490d0620002802a8032104200041003602b0032000200520036b3602ac032000200320046a3602a803201320122001101020002802b003220520002802ac034b0d062004200320002802a803200510041a200041f0036a2012370300200041c0036a200041f0046a290000370300200041b8036a200041e8046a290000370300200041b0036a200041e0046a290000370300200041d0036a200241086a290300370300200041d8036a200241106a290300370300200041e0036a200241186a290300370300200020133703e803200020002900d8043703a803200020022903003703c803200110222001200041d8026a41c00010091a2001102f200041083602a80341002001102d000b200041c0036a2204200041c8056a2205290000370300200041b8036a2206200041c0056a2207290000370300200041b0036a2208200041b8056a2209290000370300200041d0036a220c200241086a220a290000370300200041d8036a220b200241106a220d290000370300200041e0036a220e200241186a220f290000370300200020002900b0053703a803200020022900003703c803200041a8036a220320122011100d200041f0036a2011370300200420052900003703002006200729000037030020082009290000370300200c200a290300370300200b200d290300370300200e200f290300370300200020123703e803200020002900b0053703a803200020022903003703c803200310222003200041d8026a41c00010091a2003102f410021040b200041b4036a20113e0200200020103702ac030c110b200041b0036a20024130100921012000200041d8026a22023602a803200041d8036a2903002110200041d0036a2903002111200041d8046a22031023200041b0056a2003200120112010103720002802b005410846047f200041a8036a2201200241c00010091a2001102f41000541010b200041b0056a102d000b200041a8036a2101230041106b22002400200041046a41d1e7abf27a10260c110b200041a8036a2101230041106b22002400200041046a419191bb900510260c100b027f230041106b22012400200142808001370208200141a49e0436020441d5f595ef7c200141046a2203100e024020012802082204200128020c2200490d00200128020421022001200420006b220436020420022000200020026a2200200310002102200420012802042203490d00027f0240024020020e0400030301030b20012003360208200120003602042001200141046a102a20012d00000d0020012802080d0020012d00010c010b41000b2100200141106a240020000c010b000b2100230041106b22012400200141a49e0436020441a49e0441003a000020014280808180103702082000200141046a1014200128020c2201418180014f0440000b410020011030000b000b410e2102200041106a410e103941002104200028021021032000280214220141848004290000370000200141066a418a80042900003700000c070b200041a0036a200041bc056a280200360200200020002902b405370398030c030b200041a0036a200041bc056a280200360200200020002902b405370398030b41010b21040c060b41010b21040c040b200041186a2005200110292000290318201154200041206a290300221220105420102012511b0440410221040c010b200041d8046a2005200120112010103720002802d80422044108460d0120002802e404210220002802e004210120002802dc0421030b41010c010b200041a8036a2204200041d8026a41c00010091a2004102f4108210441000b2105200020023602b403200020013602b003200020033602ac03200020043602a8032005200041a8036a102d000b200041b4036a200041a0036a28020036020020002000290398033702ac030b200020013602a8030b2004200041a8036a102d000b0240200028020441ffffffff076a41014d044020014180808080783602000c010b20012000290204370200200141086a2000410c6a2802003602000b200041106a2400230041106b22002400200041808001360208200041a49e043602040240200128020041818080807846044041a49e044181023b0100410221010c010b2000410136020c41a49e0441003a00002001200041046a1032200028020c220141818001490d00000b410020011030000bbc0201047f230041106b2202240020022001101241012104024020022d00000d000240024002400240024020022d0001220341037141016b0e03020301000b200341fc01714102762103410021040c040b200341ff01714104490d020c030b200241096a20033a0000200241013a000820022001360204200241003b010c200241046a2002410c6a410210610d0220022f010c220141ff014d0d0220014102762103410021040c020b200241096a20033a0000200241013a0008200220013602042002410036020c200241046a2002410c6a410410610d01200228020c220141027621032001418080044921040c010b200128020422054104490d002001280200220428000021032001200541046b3602042001200441046a36020020034180808080044921040b2000200336020420002004360200200241106a24000bc50101017f027f41949e042d0000044041989e042802000c010b3f00210241989e0441b09e0536020041949e0441013a0000419c9e04200241107436020041b09e050b21020240027f4100200020026a41016b410020006b71220020016a22022000490d001a419c9e042802002002490440200141ffff036a220241107640002200417f460d022000411074220020024180807c716a22022000490d02419c9e0420023602004100200020016a22022000490d011a0b41989e04200236020020000b0f0b41000ba20101067f230041106b22022400200241086a200110344180808080782103024020022802080d0020012802042206200228020c2204490d002002200441011057200228020021052002280204200128020022032004100921072001200620046b3602042001200320046a36020041808080807821032005418080808078460d0020002007ad2004ad42208684370204200521030b20002003360200200241106a24000bf60202107f027e230041e0006b220524002005200120021029410821060240200529030022162003542207200541086a290300221520045420042015511b450440200541286a2208200141186a2209290000370300200541206a220a200141106a220b290000370300200541186a220c200141086a220d290000370300200541386a220e200241086a220f290000370300200541406b2210200241106a2211290000370300200541c8006a2212200241186a22132900003703002005200129000037031020052002290000370330200541106a2214201620037d2203201520047d2007ad7d2204100d200541d8006a200437030020082009290000370300200a200b290000370300200c200d290000370300200e200f2900003703002010201129000037030020122013290000370300200520033703502005200129000037031020052002290000370330201410220c010b200042003702042000410c6a42003e0200410221060b20002006360200200541e0006a24000b8314020a7f047e230041e0026b220624000240200245200345720d00200641e8006a200341186a290000370300200641e0006a200341106a290000370300200641d8006a200341086a29000037030020062003290000370350200641c8016a2207200141186a290000370300200641c0016a200141106a290000370300200641b8016a2209200141086a290000370300200620012900003703b001200641f0006a200641a0016a220f413010091a200641d8016a2208200141206a220141186a290000370300200641d0016a220a200141106a2900003703002007200141086a290000370300200641a8016a220b200241086a290000370300200641b0016a220c200241106a2900003703002009200241186a290000370300200620012900003703c001200620022900003703a001200641106a220d200f41c00010091a2008200d41e0001009210e200b20064188016a290300370300200c20064190016a290300370300200920064198016a290300370300200641c0026a2005370300200641b8026a200437030020074200370300200a4200370300200641c8026a220941f196d5b10736020020062006290380013703a001200642003703c001200641003602d002200642808001370214200641a49e04360210200f200d10162006280214220720062802182201490d0020062802102108200641003602182006200720016b3602142006200120086a36021042004200200d10102006280214220a20062802182201490d0020062802102107200641003602182006200a20016b3602142006200120076a3602102009200d1027200e200d101d20064198026a200d101620042005200d10102006280214220920062802182201490d002006280210210a2006200920016b22093602104100200842002007200a20012001200a6a2201200d1002210a20092006280210220849200a410f4f720d00200a41d480046a2d0000220a411047200a410247710d0020062008360274200620013602702008450d002006200841016b220a3602742006200141016a360270027f024002400240024020012d00000e020001050b200a450d042006200841026b220a3602742006200141026a3602700240024020012d00010e020001060b200841226b2208415f4b0d052001410a6a2900002212421886200129000222114228888421102001411a6a29000021132011422088a7210a2012422088a72109200129001221124101210e2011a70c040b200a450d042006200841036b220b3602742006200141036a360270410f21074100210e4100210c0240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024020012d00020e1c00010203040506071f08090a0b0c0d0e0f101112131415161718191a210b200b450d202006200841046b3602742006200141046a3602700240024002400240024002400240024020012d000322070e080007010203040506280b200641106a200641f0006a103b20062802102209418080808078460d2720063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a410021070c060b410221070c050b410321070c040b410421070c030b200641106a200641f0006a103b20062802102209418080808078460d2320063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a410521070c020b410621070c010b410721070b200941807e71210c0c1e0b200b450d1f2006200841046b3602742006200141046a36027020012d0003220941024b0d1f410821070c1a0b200641f0006a1011220941ff01714103460d1e410921070c190b200b450d1d2006200841046b3602742006200141046a36027020012d00030d1d410a21070c1a0b200b450d1c2006200841046b3602742006200141046a36027020012d0003220941024b0d1c410b21070c170b200b450d1b2006200841046b3602742006200141046a36027020012d0003220941034b0d1b410c21070c160b200b450d1a2006200841046b3602742006200141046a360270410d210720012d0003220c2109200c0e0218141a0b200b450d192006200841046b3602742006200141046a36027002400240024020012d00030e0200011c0b200641f0006a1011220a41ff01714103460d1b41808080807821090c010b200641106a200641f0006a103b20062802102209418080808078460d1a20063500152006411b6a310000423086200641196a3300004220868484211020062d0014210a0b200941807e71210c410e21070c170b411021070c150b411121070c140b411221070c130b411321070c120b411421070c110b411521070c100b411621070c0f0b411721070c0e0b411821070c0d0b411921070c0c0b411a21070c0b0b411b21070c0a0b411c21070c090b411d21070c080b411e21070c070b411f21070c060b412021070c050b200641086a200641f0006a102a20062d00080d0720062d00092109412121070c020b412221070c030b410121090b4100210c0c020b200641f0006a102b450d0320062802741a0c030b0b20062802742108200c200941ff0171720b210120080d002009ad422086201042808080f8ffffffff00834218888421112001ad2010422886200aad42ff018342208684842110024002400240200e0440201020118450450d010c020b2007410946044041012108200141ff0171450d030b2006411c6a20113e02002006201037021420062007360210200641ac016a4201370200200641013602a4012006419483043602a001200641013602dc022006200641d8026a3602a8012006200641106a3602d802410021082006410010392006410036027820062006290300370270200641f0006a200641a0016a103d0d03200020062902703702042000410c6a200641f8006a2802003602000c020b200641d2016a2002290000370100200641ea016a200241186a290000370100200641e2016a200241106a290000370100200641da016a200241086a290000370100200620103703a001200641013a00d101200641003a00b001200620113703a801200641a0016a101f0b201220138450450440200641d2016a2003290000370100200641ea016a200341186a290000370100200641e2016a200341106a290000370100200641da016a200341086a290000370100200620123703a001200641013a00d101200641003a00b001200620133703a801200641a0016a101f0b200641b1016a2002290000370000200641d2016a2003290000370100200641c9016a200241186a290000370000200641c1016a200241106a29000037000041082108200641b9016a200241086a290000370000200641da016a200341086a290000370100200641e2016a200341106a290000370100200641ea016a200341186a290000370100200641013a00d101200641013a00b001200620053703a801200620043703a001200641a0016a101f0b20002008360200200641e0026a24000f0b000b3701017f230041106b22022400200241086a200141001057200228020c21012000200228020836020020002001360204200241106a24000bf20402087f097e230041f0006b2200240002400240102441ff01714105470d0020004180800136023041a49e04200041306a100120002802302201418180014f0d00024020014104490d00200041a89e043602102000200141046b36021441a49e042d0000419b01470d0041a59e042d000041ae01470d0041a69e042d0000419d01470d0041a79e042d000041de00470d00200041186a200041106a2201103b20002802182202418080808078460d0020002d001c2103200041246a2001103b20002802242204418080808078460d0020002902282108200041086a2001102a20002d00080d00200028021422014120490d0020014160714120470d020b102c000b000b20002d000921052000280210220129000021092001290008210a2001290010210b2001290018210c2001290020210d2001290028210e2001290030210f20012900382110200041386a200041206a2800003600002000200028001d360035200020033a00342000200236023041d1e7abf27a200041306a220310622000200837023420002004360230419191bb900520031062230041106b22012400200142808001370208200141a49e0436020441d5f595ef7c200141046a2206100e0240024020012802082207200128020c2202490d00200128020421042001410036020c2001200720026b3602082001200220046a360204200520061014200128020c220520012802084b0d00200420022001280204200510041a200141106a24000c010b000b200020103703682000200f3703602000200e3703582000200d3703502000200c3703482000200b3703402000200a370338200020093703302003102f41a49e0441003b0100410041021030000b9c0502097f017e230041106b22062400200641046a2001103602400240200628020422094180808080784704402006290208220b422088a72202450d01200241076b22014100200120024d1b2108200ba7220441036a417c7120046b210a41002101034002400240024002400240024002400240024002400240200120046a2d0000220541187441187522074100480440200541db89046a2d000041026b0e03030102080b200a20016b4103710d09200120084f0d080340200120046a220541046a280200200528020072418081828478710d092008200141086a22014b0d000b0c080b200141016a220320024f0d06200320046a2c000021030240200541e001470440200541ed01460d012007411f6a41ff0171410c490d042007417e71416e470d0820034140480d050c080b200341607141a07f460d040c070b2003419f7f4a0d060c030b200141016a220320024f0d05200320046a2c000021030240024002400240200541f0016b0e050100000002000b2007410f6a41ff017141024b0d0820034140480d020c080b200341f0006a41ff01714130490d010c070b2003418f7f4a0d060b200141026a220520024f0d05200420056a2c000041bf7f4a0d05200141036a220120024f0d05200120046a2c000041bf7f4c0d040c050b200141016a22012002490d020c040b200341404e0d030b200141026a220120024f0d02200120046a2c000041bf7f4c0d010c020b200120046a2c000041bf7f4a0d010b200141016a21010c030b20004180808080783602000c060b200120024f0d010340200120046a2c00004100480d022002200141016a2201470d000b0c040b200141016a21010b20012002490d000b0c010b20004180808080783602000c010b2000200236020820002009ad200b422086843702000b200641106a24000ba30701027f230041106b22022400027f02400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002400240024002402000280200220341076b4100200341086b411b491b41016b0e1b0102030405060708090a0b0c0d0e0f101112131415161718191a1b000b2002200036020c200141a58304410a2002410c6a4102104b0c1b0b2002200041046a36020c200141af830441122002410c6a4103104b0c1a0b2002200041046a36020c200141c1830441092002410c6a4104104b0c190b2002200036020c200141ca8304410f2002410c6a4105104b0c180b2002200041046a36020c200141d9830441102002410c6a4106104b0c170b2002200041046a36020c200141e9830441182002410c6a4107104b0c160b2002200041046a36020c200141818404410e2002410c6a4108104b0c150b2002200041046a36020c2001418f840441162002410c6a4109104b0c140b200128021441a584044118200141186a28020028020c1100000c130b200128021441bd84044111200141186a28020028020c1100000c120b200128021441ce84044112200141186a28020028020c1100000c110b200128021441e084044119200141186a28020028020c1100000c100b200128021441f98404411c200141186a28020028020c1100000c0f0b2001280214419585044111200141186a28020028020c1100000c0e0b200128021441a685044115200141186a28020028020c1100000c0d0b200128021441bb85044116200141186a28020028020c1100000c0c0b200128021441d185044110200141186a28020028020c1100000c0b0b200128021441e18504410c200141186a28020028020c1100000c0a0b200128021441ed85044113200141186a28020028020c1100000c090b200128021441808604410f200141186a28020028020c1100000c080b2001280214418f8604410e200141186a28020028020c1100000c070b2001280214419d86044117200141186a28020028020c1100000c060b200128021441b486044114200141186a28020028020c1100000c050b200128021441c88604411a200141186a28020028020c1100000c040b200128021441e286044113200141186a28020028020c1100000c030b200128021441f586044111200141186a28020028020c1100000c020b2002200041046a36020c20014186870441132002410c6a410a104b0c010b2001280214419987044114200141186a28020028020c1100000b2101200241106a240020010b0c00200041c48704200110530b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000b10002000200141b89d0441c49d0410630b10002000200141d09d0441dc9d0410630bb70b02117f017e230041206b220224002000280200220028020821082000280204210b4101210e02402001280214220d4122200141186a280200221028021022111102000d00024002402008450d002008200b6a2112200b2107024003400240027f2007220a2c0000220041004e0440200041ff01712103200a41016a0c010b200a2d0001413f7121072000411f7121012000415f4d044020014106742007722103200a41026a0c010b200a2d0002413f7120074106747221072000417049044020072001410c74722103200a41036a0c010b2001411274418080f00071200a2d0003413f71200741067472722203418080c400460d01200a41046a0b2107024002400240024002400240024002400240200341096b0e050604010105000b2003450d0620034122460d01200341dc00460d020b2003410b74210641002101412121054121210c03400240200541017620016a220041027441dc96046a280200410b742205200646220f0440200021010c010b2000200c200520064b1b220c200041016a200120052006491b22016b21052001200c490d010b0b2001200f6a220641204b0d092006410274220541dc96046a280200411576210141d7052100027f024020064120460d00200541e096046a280200411576210020060d0041000c010b200541d896046a28020041ffffff00710b2105200041016b220f2106024020002001417f736a450d00200320056b210c41d7052001200141d7054f1b41d7056b21004100210503402000450d0b200c2005200141e097046a2d00006a2205490440200121060c020b200041016a2100200f200141016a2201470d000b0b0240024002400240200641017145044020034120490d04200341ff00490d03200341808004490d02200341808008490d01200341f083386b4190fc0b49200341b0c70c6b41d0ba2b4972200341cba60c6b4105492003419ef40b6b41e20b497272200341e1d70b6b419f1849200341a29d0b6b410e4972200341feffff0071419ef00a46200341e0ffff007141e0cd0a467272720d04200341baee0a6b4106490d040c030b200241046a200310420c0a0b200341db8b04412c41b38c0441c40141f78d0441c20310430d010c020b200341b99104412841899204419f0241a8940441af021043450d010b2002200336020820024180013a00040c070b200241046a200310420c060b20024180043b010e20024200370106200241dcc4003b01040c050b20024180043b010e20024200370106200241dcb8013b01040c040b20024180043b010e20024200370106200241dcdc013b01040c030b20024180043b010e20024200370106200241dce4013b01040c020b20024180043b010e20024200370106200241dce8013b01040c010b20024180043b010e20024200370106200241dce0003b01040b024020022d0004418001460d0020022d000f20022d000e6b41ff01714101460d00200420094b0d0302402004450d00200420084f044020042008470d050c010b2004200b6a2c00004140480d040b02402009450d00200820094d044020082009470d050c010b2009200b6a2c000041bf7f4c0d040b200d2004200b6a200920046b201028020c110000450440200241186a22062002410c6a2802003602002002200229020422133703102013a7210003400240200041ff017141800147044020022d001a220120022d001b4904402002200141016a3a001a2001410a4f0d08200241106a20016a2d000021010c020b027f41012003418001490d001a41022003418010490d001a41034104200341808004491b0b20096a21040c040b410021002006410036020020022802142101200242003703100b200d20012011110200450d000b0b0c060b2009200a6b20076a210920072012470d010b0b2004450d01200420084f044020042008460d030c010b2004200b6a2c000041bf7f4a0d020b000b410021040b200d2004200b6a200820046b201028020c1100000d00200d41222011110200210e0b200241206a2400200e0bf60101037f230041106b220241086a41003a0000200241003b010620022001410876410f7141dd87046a2d00003a000c20022001410c76410f7141dd87046a2d00003a000b20022001411076410f7141dd87046a2d00003a000a20022001411476410f7141dd87046a2d00003a000920014101726741027641026b2204200241066a6a220341d796042f00003b000020022001410476410f7141dd87046a2d00003a000d200341026a41d996042d00003a00002002410e6a22032001410f7141dd87046a2d00003a000020002002290106370000200241fd003a000f200041086a20032f01003b00002000410a3a000b200020043a000a0bb20201077f410121080240024002402002450d00200120024101746a210a20004180fe0371410876210b200041ff0171210d0340200141026a210c200720012d000122026a2109200b20012d000022014704402001200b4b0d0220092107200c2201200a460d020c010b2004200949200720094b720d03200320076a2101024003402002450d01200241016b210220012d00002107200141016a21012007200d470d000b410021080c030b20092107200c2201200a470d000b0b2006450d00200520066a2104200041ffff037121010340200541016a210020052d00002202411874411875220341004e047f20000520002004460d0320052d0001200341ff0071410874722102200541026a0b2105200120026b22014100480d012008410173210820042005470d000b0b20084101710f0b000b2800200128021441b8870441ad870420002802002d00001b410b200141186a28020028020c1100000b10002000200141e89d0441f89d0410630ba00301037f23004180016b2203240020002802002100027f0240024002400240200128021c22024110714504402002412071450d0120002d00002102410021000340200020036a41ff006a413041372002410f712204410a491b20046a3a0000200041016b2100200222044104762102200441104f0d000b20004180016a4181014f0d032001419188044102200020036a4180016a410020006b10470c050b20002d00002102410021000340200020036a41ff006a413041d7002002410f712204410a491b20046a3a0000200041016b2100200222044104762102200441104f0d000b0c010b02400240024020002d0000220241e4004f044020032002200241e4006e2202419c7f6c6a41ff0171410174419388046a2f00003b0025412421000c010b412621002002410a4f0d010b200020036a20024130723a00000c010b20032002410174419388046a2f00003b0025412521000b200141dc87044100200020036a412720006b10470c030b20004180016a418101490d010b000b2001419188044102200020036a4180016a410020006b10470b210020034180016a240020000bdc0301097f230041106b22082400200028021c2209410171220b20046a210502402009410471450440410021010c010b20020440200121062002210a0340200720062c000041bf7f4a6a2107200641016a2106200a41016b220a0d000b0b200520076a21050b412b418080c400200b1b210a02402000280200450440410121062000280214220520002802182200200a20012002105c0d01200520032004200028020c11000021060c010b2005200028020422074f0440410121062000280214220520002802182200200a20012002105c0d01200520032004200028020c11000021060c010b200941087104402000280210210c2000413036021020002d0020210d41012106200041013a0020200028021422092000280218220b200a20012002105c0d01200841086a2000200720056b105920082802082201418080c400460d01200828020c2102200920032004200b28020c1100000d01200120022009200b105a0d012000200d3a00202000200c360210410021060c010b20082000200720056b10594101210620082802002207418080c400460d00200828020421092000280214220520002802182200200a20012002105c0d00200520032004200028020c1100000d002007200920052000105a21060b200841106a240020060b1b00200128021441c582044110200141186a28020028020c1100000b3200200128021420002802002d0000220041027441889e046a280200410a20004101746b200141186a28020028020c1100000b6401017f230041106b22022400027f200028020022002802004180808080784604402002200041046a3602082001419c83044109200241086a4104104b0c010b2002200036020c200141b8810441062002410c6a410b104b0b2100200241106a240020000ba20201047f230041406a220524004101210702402000280214220620012002200041186a280200220228020c22011100000d000240200028021c22084104714504402006418e8804410120011100000d022003200020041102000d0220002802142106200028021828020c21010c010b2006418f8804410220011100000d01200541013a001b200541346a41f08704360200200520023602102005200636020c20052008360238200520002d00203a003c2005200028021036022c200520002902083702242005200029020037021c20052005411b6a36021420052005410c6a36023020032005411c6a20041102000d012005280230418c88044102200528023428020c1100000d010b200641dc87044101200111000021070b200541406b240020070ba40201017f230041106b22022400027f024002400240024002400240024002402000280200220028020041016b0e0701020304050607000b2002200041046a360208200141b881044106200241086a410b104b0c070b200128021441be81044113200141186a28020028020c1100000c060b200128021441d181044115200141186a28020028020c1100000c050b200128021441e681044114200141186a28020028020c1100000c040b200128021441fa81044111200141186a28020028020c1100000c030b2002200041046a36020c2001418b820441172002410c6a410b104b0c020b200128021441a282044116200141186a28020028020c1100000c010b200128021441b88204410d200141186a28020028020c1100000b2101200241106a240020010bea0101037f230041106b220424002000027f024002402001044020024100480d01027f20032802040440200341086a2802002205450440200441086a200120024100105120042802082103200428020c0c020b2003280200210602402001200210352203450440410021030c010b20032006200510091a0b20020c010b20042001200210522004280200210320042802040b21052003044020002003360204200041086a200536020041000c040b20002001360204200041086a20023602000c020b20004100360204200041086a20023602000c010b200041003602040b41010b360200200441106a24000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a2001200210091a200020043602080f0b000b000b4d01017f024020022000280200200028020822036b4b04402000200320021050418180808078470d01200028020821030b200028020420036a2001200210091a2000200220036a3602080f0b000bb70101027f230041206b22032400027f41002001200120026a22014b0d001a4108200028020022024101742204200120012004491b2201200141084d1b2201417f73411f76210402402002450440200341003602180c010b2003200236021c20034101360218200320002802043602140b200341086a20042001200341146a104d2003280208450440200328020c210220002001360200200020023602044181808080780c010b200328020c0b2104200341206a240020040b2b0020020440200345044041a09e042d00001a0b20012002103521010b20002002360204200020013602000b3901017f230041106b22032400200341086a2001200241001051200328020c21012000200328020836020020002001360204200341106a24000ba70401087f230041406a22032400200341346a2001360200200341033a003c2003412036022c2003410036023820032000360230200341003602242003410036021c027f02400240200228021022014504402002410c6a28020022004103742106200041ffffffff017121072002280204210a20022802002109200228020821024100210141002100034020012006460d02200120096a220441046a28020022050440200328023020042802002005200328023428020c1100000d040b200041016a2100200141086a21012002280200210420022802042105200241086a210220042003411c6a2005110200450d000b0c020b200241146a28020022074105742100200741ffffff3f7121072002410c6a2802002105200228020821062002280204210a20022802002209210203402000450d01200241046a28020022080440200328023020022802002008200328023428020c1100000d030b2003200128021036022c200320012d001c3a003c20032001280218360238200341106a2006200141086a105b2003200329031037021c200341086a20062001105b20032003290308370224200441016a2104200241086a2102200041206b210020012802142108200141206a2101200620084103746a22082802002003411c6a2008280204110200450d000b0c010b2007200a4904402003280230200920074103746a22002802002000280204200328023428020c1100000d010b41000c010b41010b2101200341406b240020010b0300010b0c00200020012002104f41000ba30201027f230041106b22022400024020002002410c6a027f0240024020014180014f04402002410036020c2001418010490d012001418080044f0d0220022001413f71418001723a000e20022001410c7641e001723a000c20022001410676413f71418001723a000d41030c030b2000280208220320002802004604402000200341011050418180808078470440000b200028020821030b2000200341016a360208200028020420036a20013a00000c030b20022001413f71418001723a000d2002200141067641c001723a000c41020c010b20022001413f71418001723a000f20022001410676413f71418001723a000e20022001410c76413f71418001723a000d2002200141127641077141f001723a000c41040b104f0b200241106a240041000b6f01027f230041106b22032400024002402001450440410121020c010b200141004e2204450d01027f2002450440200341086a20042001105220032802080c010b2003200420014101105120032802000b2202450d010b2000200236020420002001360200200341106a24000f0b000b0e0020002802001a03400c000b000b8b0101037f02400240024020012d0020220341016b0e03000100020b20022103410021020c010b20024101762103200241016a41017621020b200341016a2103200141186a2802002105200128021021042001280214210102400340200341016b2203450d01200120042005280210110200450d000b418080c40021040b20002002360204200020043602000b3201017f027f0340200120012004460d011a200441016a2104200220002003280210110200450d000b200441016b0b2001490b5501027f0240027f02400240200228020041016b0e020103000b200241046a0c010b200120022802044103746a2201280204410c470d0120012802000b2802002104410121030b20002004360204200020033602000b39000240027f2002418080c40047044041012000200220012802101102000d011a0b20030d0141000b0f0b200020032004200128020c1100000bcc0501107f230041406a22032400200341003b013c200320023602382003410036023420034281808080a00137022c2003200236022820034100360224200320023602202003200136021c2003410a3602182000280204210f2000280200210a2000280208210b200341306a210c027f0340024002400240024020032d003d0d00200328021c2108027f024020032802282205200328022022104b0d002003280224220120054b0d00200328022c2204200c6a41016b211102400340200120086a210020112d00002106027f0240200520016b220741084f0440024002402000200041036a417c712202460440200741086b210d410021020c010b200341106a20062000200220006b2202105e20032802104101460d012002200741086b220d4b0d030b200641818284086c210e0340200020026a220941046a280200200e732212417f73201241818284086b712009280200200e732209417f73200941818284086b7172418081828478710d03200241086a2202200d4d0d000b0c020b2003280214210241010c020b2003200620002007105e2003280204210220032802000c010b200341086a2006200020026a200720026b105e200328020c20026a210220032802084101460b4101470d012003200120026a41016a220136022402402001200449200120104b724504402008200120046b6a21002000200c2004100c450d010b200120054d0d010c030b0b2003280234210020032001360234200120006b0c020b200320053602240b200341013a003d024020032d003c044020032802382102200328023421000c010b2003280238220220032802342200460d020b200220006b0b2101200f28020c2102200b2d00000d010c020b41000c040b200a41888804410420021100000d010b200020086a2100200b2001047f200020016a41016b2d0000410a460541000b3a0000200a200020012002110000450d010b0b41010b2100200341406b240020000b5701027f024002402003450440410021030c010b200141ff017121054101210103402005200220046a2d0000460440200421030c030b2003200441016a2204470d000b0b410021010b20002003360204200020013602000b4e01027f20002802042102200028020021030240200028020822002d0000450d002003418888044104200228020c110000450d0041010f0b20002001410a463a00002003200120022802101102000b0c00200041f08704200110530b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a200120002802002201200210091a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a20002802002201200210091a0b2000200320026b3602042000200120026a36020041000b0b8c0101047f230041106b22022400200242808001370208200241a49e043602042000200241046a2204100e024020022802082205200228020c2200490d00200228020421032002410036020c2002200520006b3602082002200020036a360204200120041032200228020c220120022802084b0d00200320002002280204200110041a200241106a24000f0b000b3000200128021420002802002d0000410274220020036a280200200020026a280200200141186a28020028020c1100000b0bdd1d0300418080040bdb0ad0c36d854e6f744c656e64696e67506f6f6c011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb100102030405060708090a0b0c0d0e4d617844656274526561636865644d61784465706f736974526561636865644d696e696d616c446562744d696e696d616c436f6c6c61746572616c556e646572666c6f774f766572666c6f7744697642795a65726f437573746f6d496e73756666696369656e7442616c616e6365496e73756666696369656e74416c6c6f77616e63655a65726f526563697069656e74416464726573735a65726f53656e64657241646472657373536166655472616e73666572436865636b4661696c65645065726d6974496e76616c69645369676e61747572655065726d697445787069726564496e76616c6964417373657452756c65416c7265616479536574496e61637469766546726f7a656e496e76616c696443616c6c65724d697373696e67526f6c65526f6c65526564756e64616e740000dc030100000000004d61746845726f727250535032324572726f72416363657373436f6e74726f6c4572726f724d6174684572726f72417373657452756c65734572726f7252657365727665446174614572726f72526573657276655265737472696374696f6e734572726f725072696365466565644572726f72466c6173684c6f616e52656365697665724572726f72416d6f756e744e6f74477265617465725468616e5a65726f416c72656164795265676973746572656441737365744e6f74526567697374657265644173736574497350726f746f636f6c537461626c65636f696e417373657449734e6f7450726f746f636f6c537461626c65636f696e52756c65426f72726f7744697361626c6552756c65436f6c6c61746572616c44697361626c65496e73756666696369656e74436f6c6c61746572616c496e73756666696369656e7444656274436f6c6c61746572697a6564496e73756666696369656e744465706f7369744d696e696d756d52656369657665644e6f7468696e67546f52657061794e6f7468696e67546f436f6d70656e736174655769746854616b696e674e6f7441436f6c6c61746572616c566563746f7273496e636f6e73697374656e744c656e677468734d61726b657452756c65496e76616c696449644465706f736974466565546f6f486967685477456e747279496e76616c6964496e646578546f6f4561726c79546f41646a757374526174654e6f5375636841737365744e6f507269636546656564000d0000000c000000040000000e0000000f000000100000002930313233343536373839616263646566000000110000000c00000004000000120000001300000014000000202020202c0a28280a30783030303130323033303430353036303730383039313031313132313331343135313631373138313932303231323232333234323532363237323832393330333133323333333433353336333733383339343034313432343334343435343634373438343935303531353235333534353535363537353835393630363136323633363436353636363736383639373037313732373337343735373637373738373938303831383238333834383538363837383838393930393139323933393439353936393739383939010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100419d8b040b330202020202020202020202020202020202020202020202020202020202020303030303030303030303030303030304040404040041dc8b040bb7120601010301040205070702080809020a050b020e041001110212051311140115021702190d1c051d081f0124016a046b02af03b102bc02cf02d102d40cd509d602d702da01e005e102e704e802ee20f004f802fa03fb010c273b3e4e4f8f9e9e9f7b8b9396a2b2ba86b1060709363d3e56f3d0d1041418363756577faaaeafbd35e01287898e9e040d0e11122931343a4546494a4e4f64655cb6b71b1c07080a0b141736393aa8a9d8d909379091a8070a3b3e66698f92116f5fbfeeef5a62f4fcff53549a9b2e2f2728559da0a1a3a4a7a8adbabcc4060b0c151d3a3f4551a6a7cccda007191a22253e3fe7ecefffc5c604202325262833383a484a4c50535556585a5c5e606365666b73787d7f8aa4aaafb0c0d0aeaf6e6fbe935e227b0503042d036603012f2e80821d03310f1c0424091e052b0544040e2a80aa06240424042808340b4e43813709160a08183b45390363080930160521031b05014038044b052f040a070907402027040c0936033a051a07040c07504937330d33072e080a8126524b2b082a161a261c1417094e042409440d19070a0648082709750b423e2a063b050a0651060105100305808b621e48080a80a65e22450b0a060d133a060a362c041780b93c64530c48090a46451b4808530d49070a80f6460a1d03474937030e080a0639070a813619073b031c56010f320d839b66750b80c48a4c630d843010168faa8247a1b98239072a045c06260a460a28051382b05b654b0439071140050b020e97f80884d62a09a2e781330f011d060e0408818c89046b050d0309071092604709743c80f60a73087015467a140c140c570919808781470385420f1584501f060680d52b053e2101702d031a040281401f113a050181d02a82e680f7294c040a04028311444c3d80c23c06010455051b3402810e2c04640c560a80ae381d0d2c040907020e06809a83d80411030d0377045f060c04010f0c0438080a062808224e81540c1d03090736080e040907090780cb250a840600010305050606020706080709110a1c0b190c1a0d100e0c0f0410031212130916011704180119031a071b011c021f1620032b032d0b2e01300331023201a702a902aa04ab08fa02fb05fd02fe03ff09ad78798b8da23057588b8c901cdd0e0f4b4cfbfc2e2f3f5c5d5fe2848d8e9192a9b1babbc5c6c9cadee4e5ff00041112293134373a3b3d494a5d848e92a9b1b4babbc6cacecfe4e500040d0e11122931343a3b4546494a5e646584919b9dc9cecf0d11293a3b4549575b5c5e5f64658d91a9b4babbc5c9dfe4e5f00d11454964658084b2bcbebfd5d7f0f183858ba4a6bebfc5c7cfdadb4898bdcdc6cecf494e4f57595e5f898e8fb1b6b7bfc1c6c7d71116175b5cf6f7feff806d71dedf0e1f6e6f1c1d5f7d7eaeaf7fbbbc16171e1f46474e4f585a5c5e7e7fb5c5d4d5dcf0f1f572738f747596262e2fa7afb7bfc7cfd7df9a409798308f1fd2d4ceff4e4f5a5b07080f10272feeef6e6f373d3f42459091536775c8c9d0d1d8d9e7feff00205f2282df048244081b04061181ac0e80ab051f09811b03190801042f043404070301070607110a500f1207550703041c0a090308030703020303030c0405030b06010e15054e071b0757070206170c500443032d03010411060f0c3a041d255f206d046a2580c80582b0031a0682fd03590716091809140c140c6a060a061a0659072b05460a2c040c040103310b2c041a060b0380ac060a062f314d0380a4083c030f033c0738082b0582ff1118082f112d03210f210f808c048297190b158894052f053b07020e180980be22740c80d61a0c0580ff0580df0cf29d033709815c1480b80880cb050a183b030a06380846080c06740b1e035a0459098083181c0a16094c04808a06aba40c170431a10481da26070c050580a61081f50701202a064c04808d0480be031b030f0d5c757b00000003000083042000910560005d13a0001217201f0c20601fef2ca02b2a30202c6fa6e02c02a8602d1efb602e00fe20369eff6036fd01e136010a2137240de137ab0e61392f18a139301c6148f31ea14c40346150f06aa1514f6f21529dbca15200cf615365d1a15300da215400e0e155aee26157ece42159d0e8a1592000ee59f0017f5a00700007002d0101010201020101480b30151001650702060202010423011e1b5b0b3a09090118040109010301052b033c082a180120370101010408040103070a021d013a0101010204080109010a021a010202390104020402020303011e0203010b0239010405010204011402160601013a0101020104080107030a021e013b0101010c01090128010301370101030503010407020b021d013a01020102010301050207020b021c02390201010204080109010a021d0148010401020301010801510102070c08620102090b0749021b0101010101370e01050102050b0124090166040106010202021902040310040d01020206010f01000300031d021e021e02400201070801020b09012d030101750222017603040209010603db0202013a010107010101010208060a0201301f310430070101050128090c0220040202010338010102030101033a0802029803010d0107040106010302c6400001c32100038d016020000669020004010a200250020001030104011902050197021a120d012608190b2e0330010204020227014306020202020c0108012f01330101030202050201012a020801ee010201040100010010101000020001e201950500030102050428030401a502000400025003460b31047b01360f290102020a033104020207013d03240501083e010c0234090a0402015f0302010102060102019d010308150239020101010116010e070305c308020301011701510102060101020101020102eb010204060201021b025508020101026a0101010206010165030204010500090102f5010a0201010401900402020401200a280602040801090602032e0d010200070106010152160207010201027a06030101020107010148020301010100020b023405050101010001060f00053b0700013f0451010002002e0217000101030405080802071e0494030037043208010e011605010f000701110207010201056401a00700013d04000400076d07006080f000000d0000000b0000000d0000006d0101007a010100850101000900000008000000090000009e000100a7000100af0001000e000000110000000b000000110000006300010071000100820001008d000100550101005f010100670101","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"v_token","version":"1.0.0","authors":["Konrad Wierzbik "],"description":"Abax Protocol VToken contract","license":"BUSL-1.1"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[{"label":"name","type":{"displayName":["String"],"type":22}},{"label":"symbol","type":{"displayName":["String"],"type":22}},{"label":"decimal","type":{"displayName":["u8"],"type":9}},{"label":"lending_pool","type":{"displayName":["AccountId"],"type":7}},{"label":"underlying_asset","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":40},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":7},"balance":{"displayName":["Balance"],"type":0},"blockNumber":{"displayName":["BlockNumber"],"type":53},"chainExtension":{"displayName":["ChainExtension"],"type":61},"hash":{"displayName":["Hash"],"type":60},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":56}},"events":[{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Deposit","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Withdraw","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":53}}],"docs":["Emitted when a market rule is chosen."],"label":"MarketRuleChosen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889"},{"args":[{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"set","type":{"displayName":["bool"],"type":54}}],"docs":["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."],"label":"CollateralSet","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Borrow","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"on_behalf_of","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.","The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)."],"label":"Repay","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4"},{"args":[{"docs":[],"indexed":true,"label":"receiver","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"caller","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount","type":{"displayName":["u128"],"type":0}},{"docs":[],"indexed":false,"label":"fee","type":{"displayName":["u128"],"type":0}}],"docs":["Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.","The receiver pays back the `amount` and `fee` in the same transaction."],"label":"FlashLoan","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878"},{"args":[{"docs":[],"indexed":false,"label":"liquidator","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"liquidated_account","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset_to_repay","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":true,"label":"asset_to_take","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"amount_repaid","type":{"displayName":["Balance"],"type":0}},{"docs":[],"indexed":false,"label":"amount_taken","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.","The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.","","# Note","The data coresponding to asset_to_take, amount_repaid","and (asset_to_repay, liquidated_account)","and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)."],"label":"Liquidation","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a interest indexes are updated in reserve coreespoding to asset.","","# Note","This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated."],"label":"InterestsAccumulated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"decimals","type":{"displayName":["u8"],"type":9}},{"docs":[],"indexed":false,"label":"name","type":{"displayName":["String"],"type":22}},{"docs":[],"indexed":false,"label":"symbol","type":{"displayName":["String"],"type":22}},{"docs":[],"indexed":false,"label":"a_token_code_hash","type":{"displayName":[],"type":8}},{"docs":[],"indexed":false,"label":"v_token_code_hash","type":{"displayName":[],"type":8}},{"docs":[],"indexed":false,"label":"a_token_address","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"v_token_address","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when an asset is registered."],"label":"AssetRegistered","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580"},{"args":[{"docs":[],"indexed":false,"label":"price_feed_provider","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a price feed provider is changed."],"label":"PriceFeedProviderChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751"},{"args":[{"docs":[],"indexed":false,"label":"fee_reduction_provider","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a fee reduction provider is changed."],"label":"FeeReductionChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3"},{"args":[{"docs":[],"indexed":false,"label":"flash_loan_fee_e6","type":{"displayName":["u128"],"type":0}}],"docs":["Emitted when a flash loan fee is changed."],"label":"FlashLoanFeeChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"active","type":{"displayName":["bool"],"type":54}}],"docs":["Emitted when a reserve is activated."],"label":"ReserveActivated","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"frozen","type":{"displayName":["bool"],"type":54}}],"docs":["Emitted when a reserve is frozen."],"label":"ReserveFrozen","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"interest_rate_model_params","type":{"displayName":["InterestRateModelParams"],"type":55}}],"docs":["Emitted when a interest rate model is changed."],"label":"ReserveInterestRateModelChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"reserve_restrictions","type":{"displayName":["ReserveRestrictions"],"type":57}}],"docs":["Emitted when a reserve restrictions are changed."],"label":"ReserveRestrictionsChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"reserve_fees","type":{"displayName":["SetReserveFeesArgs"],"type":59}}],"docs":["Emitted when a reserve fees are changed."],"label":"ReserveFeesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065"},{"args":[{"docs":[],"indexed":true,"label":"market_rule_id","type":{"displayName":["RuleId"],"type":53}},{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"collateral_coefficient_e6","type":{"displayName":["Option"],"type":58}},{"docs":[],"indexed":false,"label":"borrow_coefficient_e6","type":{"displayName":["Option"],"type":58}},{"docs":[],"indexed":false,"label":"penalty_e6","type":{"displayName":["Option"],"type":58}}],"docs":["Emitted when an asset rules in an martket rule are changed."],"label":"AssetRulesChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a protocol income genareted in 'asset' is taken."],"label":"IncomeTaken","module_path":"abax_contracts::lending_pool::events","signature_topic":"0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0"},{"args":[{"docs":[],"indexed":true,"label":"asset","type":{"displayName":["AccountId"],"type":7}},{"docs":[],"indexed":false,"label":"debt_rate_e18","type":{"displayName":["u64"],"type":56}}],"docs":["Emitted when stablecoin debt rate is changed."],"label":"StablecoinDebtRateChanged","module_path":"abax_contracts::lending_pool::events","signature_topic":"0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785"},{"args":[{"docs":["The account that initiated the pause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when the contract is paused."],"label":"Paused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081"},{"args":[{"docs":["The account that initiated the unpause action."],"indexed":true,"label":"account","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when the contract is unpaused."],"label":"Unpaused","module_path":"pendzl_contracts::security::pausable","signature_topic":"0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41"},{"args":[{"docs":["The `RoleType` for which the admin role is changed. This is the role being modified."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":53}},{"docs":["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."],"indexed":false,"label":"previous","type":{"displayName":["RoleType"],"type":53}},{"docs":["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."],"indexed":false,"label":"new","type":{"displayName":["RoleType"],"type":53}}],"docs":["Emitted when the admin role for a specific role is changed.","","This event is triggered whenever a `role`'s admin role is updated.","It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`."],"label":"RoleAdminChanged","module_path":"pendzl_contracts::access::access_control","signature_topic":"0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403"},{"args":[{"docs":["The `RoleType` that is granted. This field identifies the specific role being assigned."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":53}},{"docs":["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."],"indexed":true,"label":"grantee","type":{"displayName":["Option"],"type":44}},{"docs":["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."],"indexed":true,"label":"grantor","type":{"displayName":["Option"],"type":44}}],"docs":["Emitted when a role is granted to an account.","","This event occurs when a new `role` is assigned to an `grantee`.","The `grantor` who assigned the role is also logged."],"label":"RoleGranted","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b"},{"args":[{"docs":["The `RoleType` that is revoked. Specifies the role being removed from the account."],"indexed":true,"label":"role","type":{"displayName":["RoleType"],"type":53}},{"docs":["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."],"indexed":true,"label":"account","type":{"displayName":["Option"],"type":44}},{"docs":["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."],"indexed":true,"label":"sender","type":{"displayName":["AccountId"],"type":7}}],"docs":["Emitted when a role is revoked from an account.","","This event is triggered when an existing `role` is removed from an `account`.","The `sender` who performed the revocation is also included."],"label":"RoleRevoked","module_path":"pendzl_contracts::access::access_control","signature_topic":"0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b"},{"args":[{"docs":["The new owner's account address. `None` if ownership is renounced."],"indexed":true,"label":"new","type":{"displayName":["Option"],"type":44}}],"docs":["Emitted when ownership of the contract is transferred."],"label":"OwnershipTransferred","module_path":"pendzl_contracts::access::ownable","signature_topic":"0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9"},{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":44}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":44}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":41},"messages":[{"args":[{"label":"transfer_event_data","type":{"displayName":["Vec"],"type":42}}],"default":false,"docs":[],"label":"AbacusToken::emit_transfer_events","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0x7bfede3f"},{"args":[{"label":"transfer_event_data","type":{"displayName":["TransferEventData"],"type":43}},{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"decrease_allowance_by","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"AbacusToken::emit_transfer_event_and_decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0x4106ef53"},{"args":[],"default":false,"docs":[],"label":"AbacusToken::get_lending_pool","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":48},"selector":"0xcec6d17e"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"label":"spender","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":49},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":50}}],"default":false,"docs":[" Transfers `value` amount of tokens from the caller's account to account `to`"," with additional `data` in unspecified format.",""," On success a `Transfer` event is emitted.",""," # Errors",""," Returns `InsufficientBalance` error if there are not enough tokens on"," the caller's account Balance.",""," !!!IMPORTANT!!!"," Returns `InsufficientAllowance` error if there are not enough tokens allowed"," for the caller to !!! TRANSFER TO `to` !!!"],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":50}}],"default":false,"docs":[" Transfers `value` tokens on the behalf of `from` to the account `to`"," with additional `data` in unspecified format.",""," This can be used to allow a contract to transfer tokens on ones behalf and/or"," to charge fees in sub-currencies, for example.",""," On success a `Transfer` and `Approval` events are emitted.",""," # Errors",""," !!!IMPORTANT!!!"," Returns `InsufficientAllowance` error if there are not enough tokens allowed"," for the caller to !!! TRANSFER TO `to` !!!.",""," Returns `InsufficientBalance` error if there are not enough tokens on"," the the account Balance of `from`."],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":45},"selector":"0xfecb57d5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":51},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":52},"selector":"0x7271b782"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":0}},"root_key":"0xc629684f","ty":1}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":0}},"root_key":"0xffbbddfc","ty":6}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":0}},"root_key":"0x7c996051","ty":13}},"name":"allowances"}],"name":"PSP22Data"}},"name":"psp22"},{"layout":{"struct":{"fields":[{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"lending_pool"},{"layout":{"leaf":{"key":"0x00000000","ty":7}},"name":"underlying_asset"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd0c36d85","ty":0}},"root_key":"0xd0c36d85","ty":18}},"name":"allowances"}],"name":"AbacusTokenStorage"}},"name":"abacus_token"},{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0xd1f34aae","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0xd1f34aae","ty":22}},"name":"0"}],"name":"Some"}}}},"root_key":"0xd1f34aae","ty":23}},"name":"name"},{"layout":{"root":{"layout":{"enum":{"dispatchKey":"0x91c80e52","name":"Option","variants":{"0":{"fields":[],"name":"None"},"1":{"fields":[{"layout":{"leaf":{"key":"0x91c80e52","ty":22}},"name":"0"}],"name":"Some"}}}},"root_key":"0x91c80e52","ty":28}},"name":"symbol"},{"layout":{"root":{"layout":{"leaf":{"key":"0xd57ae5cd","ty":9}},"root_key":"0xd57ae5cd","ty":32}},"name":"decimals"}],"name":"PSP22MetadataData"}},"name":"metadata"}],"name":"VToken"}},"root_key":"0x00000000","ty":36}},"types":[{"id":0,"type":{"def":{"primitive":"u128"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","Lazy"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":0},{"name":"KeyType","type":10}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":8,"type":{"def":{"array":{"len":32,"type":9}}}},{"id":9,"type":{"def":{"primitive":"u8"}}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"L","type":11},{"name":"R","type":12}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":15}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":14,"type":{"def":{"tuple":[7,7]}}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"L","type":16},{"name":"R","type":17}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":19}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":19,"type":{"def":{"composite":{}},"params":[{"name":"L","type":20},{"name":"R","type":21}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":20,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":21,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":22,"type":{"def":{"primitive":"str"}}},{"id":23,"type":{"def":{"composite":{}},"params":[{"name":"V","type":24},{"name":"KeyType","type":25}],"path":["ink_storage","lazy","Lazy"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":22}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":22}],"path":["Option"]}},{"id":25,"type":{"def":{"composite":{}},"params":[{"name":"L","type":26},{"name":"R","type":27}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":26,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":27,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":28,"type":{"def":{"composite":{}},"params":[{"name":"V","type":24},{"name":"KeyType","type":29}],"path":["ink_storage","lazy","Lazy"]}},{"id":29,"type":{"def":{"composite":{}},"params":[{"name":"L","type":30},{"name":"R","type":31}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":30,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":31,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":32,"type":{"def":{"composite":{}},"params":[{"name":"V","type":9},{"name":"KeyType","type":33}],"path":["ink_storage","lazy","Lazy"]}},{"id":33,"type":{"def":{"composite":{}},"params":[{"name":"L","type":34},{"name":"R","type":35}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":34,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":35,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":36,"type":{"def":{"composite":{"fields":[{"name":"psp22","type":37,"typeName":",>>::Type"},{"name":"abacus_token","type":38,"typeName":",>>::Type"},{"name":"metadata","type":39,"typeName":",>>::Type"}]}},"path":["v_token","v_token","VToken"]}},{"id":37,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":1,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":6,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":13,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":38,"type":{"def":{"composite":{"fields":[{"name":"lending_pool","type":7,"typeName":",>>::Type"},{"name":"underlying_asset","type":7,"typeName":",>>::Type"},{"name":"allowances","type":18,"typeName":"> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1070055618u32, ()>,>>::Type"}]}},"path":["abax_contracts","abacus_token","implementation","storage","AbacusTokenStorage"]}},{"id":39,"type":{"def":{"composite":{"fields":[{"name":"name","type":23,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type"},{"name":"symbol","type":28,"typeName":"<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type"},{"name":"decimals","type":32,"typeName":"<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","extensions","metadata","implementation","PSP22MetadataData"]}},{"id":40,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":41}],"path":["Result"]}},{"id":41,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":42,"type":{"def":{"sequence":{"type":43}}}},{"id":43,"type":{"def":{"composite":{"fields":[{"name":"from","type":44,"typeName":"Option"},{"name":"to","type":44,"typeName":"Option"},{"name":"amount","type":0,"typeName":"Balance"}]}},"path":["abax_contracts","abacus_token","structs","TransferEventData"]}},{"id":44,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":7}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":7}],"path":["Option"]}},{"id":45,"type":{"def":{"variant":{"variants":[{"fields":[{"type":46}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":46},{"name":"E","type":41}],"path":["Result"]}},{"id":46,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":47}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":47}],"path":["Result"]}},{"id":47,"type":{"def":{"variant":{"variants":[{"fields":[{"type":22,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":22,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":48,"type":{"def":{"variant":{"variants":[{"fields":[{"type":7}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":7},{"name":"E","type":41}],"path":["Result"]}},{"id":49,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":41}],"path":["Result"]}},{"id":50,"type":{"def":{"sequence":{"type":9}}}},{"id":51,"type":{"def":{"variant":{"variants":[{"fields":[{"type":24}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":24},{"name":"E","type":41}],"path":["Result"]}},{"id":52,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":41}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":41}],"path":["Result"]}},{"id":53,"type":{"def":{"primitive":"u32"}}},{"id":54,"type":{"def":{"primitive":"bool"}}},{"id":55,"type":{"def":{"composite":{"fields":[{"name":"target_ur_e6","type":53,"typeName":"u32"},{"name":"min_rate_at_target_e18","type":56,"typeName":"u64"},{"name":"max_rate_at_target_e18","type":56,"typeName":"u64"},{"name":"rate_at_max_ur_e18","type":56,"typeName":"u64"},{"name":"minimal_time_between_adjustments","type":56,"typeName":"u64"}]}},"path":["abax_library","structs","interest_rate_model","InterestRateModelParams"]}},{"id":56,"type":{"def":{"primitive":"u64"}}},{"id":57,"type":{"def":{"composite":{"fields":[{"name":"maximal_total_deposit","type":58,"typeName":"Option"},{"name":"maximal_total_debt","type":58,"typeName":"Option"},{"name":"minimal_collateral","type":0,"typeName":"Balance"},{"name":"minimal_debt","type":0,"typeName":"Balance"}]}},"path":["abax_library","structs","reserve_restrictions","ReserveRestrictions"]}},{"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":{"composite":{"fields":[{"name":"debt_fee_e6","type":53,"typeName":"u32"},{"name":"deposit_fee_e6","type":53,"typeName":"u32"}]}},"path":["abax_contracts","lending_pool","traits","lending_pool_manage","SetReserveFeesArgs"]}},{"id":60,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":61,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/v_token.json b/artifacts/v_token.json new file mode 100644 index 0000000..79a55f9 --- /dev/null +++ b/artifacts/v_token.json @@ -0,0 +1,2981 @@ +{ + "source": { + "hash": "0xa1b063ed23d600a7ca37f6340acec08f7352dd8834a2b3c79013c05f73cb0622", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "v_token", + "version": "1.0.0", + "authors": ["Konrad Wierzbik "], + "description": "Abax Protocol VToken contract", + "license": "BUSL-1.1" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [ + { + "label": "name", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "label": "decimal", + "type": { + "displayName": ["u8"], + "type": 9 + } + }, + { + "label": "lending_pool", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "underlying_asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 40 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 7 + }, + "balance": { + "displayName": ["Balance"], + "type": 0 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 53 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 61 + }, + "hash": { + "displayName": ["Hash"], + "type": 60 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 56 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a deposit of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Deposit", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0fec3602811bce8ef519cedac639ad86e69ab2aec83956f393e7a7b1d59e27bc" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a withdraw of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Withdraw", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9501416456eb96ab1e14aef68d4f7eb0d957c7c3a2c723f943ab3308429f4857" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 53 + } + } + ], + "docs": ["Emitted when a market rule is chosen."], + "label": "MarketRuleChosen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xc2f67a85fec07505f0a22d06212c1ba689ed73ba02ac2d8983e8b25dc5ffd889" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "set", + "type": { + "displayName": ["bool"], + "type": 54 + } + } + ], + "docs": ["Emitted when an `asset` is enabled or disabled as collateral by the `caller`."], + "label": "CollateralSet", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7406c0f2277b86f664d896a0104f866543c82958809fb0ccfa10c44d2babac1b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a borrow of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Borrow", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x68b9109b885e8a8edf4f3944e10c50bb2fc2148a57d290d552c994f93e86c384" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "on_behalf_of", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a repay of 'amount' in 'asset' is made by 'caller' on behalf of 'on_behalf_of'.", + "The data coresponding to asset and (asset, on_behalf_of) is updated (interests are accumulated)." + ], + "label": "Repay", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb7684ef3f1c086b7fce47dd8911c325780102a9aec8be9cd4e65db62aa795e4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "receiver", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "caller", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount", + "type": { + "displayName": ["u128"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "fee", + "type": { + "displayName": ["u128"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a flash loan of `amount` in `asset` is initiated by `caller` to the `receiver`.", + "The receiver pays back the `amount` and `fee` in the same transaction." + ], + "label": "FlashLoan", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4a0f52b5eeff44e7c1be269a52410bb70377ac9d6747005cbdf7fd9245eac878" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "liquidator", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "liquidated_account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_repay", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset_to_take", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_repaid", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "amount_taken", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": [ + "Emitted when a liquidation is made by 'liquidator' on 'liquidated_account'.", + "The liquidator takes 'amount_taken' of 'asset_to_take' and repays 'amount_repaid' of 'asset_to_repay'.", + "", + "# Note", + "The data coresponding to asset_to_take, amount_repaid", + "and (asset_to_repay, liquidated_account)", + "and (asset_to_take, liquidator) and (asset_to_take, liquidated_account) is updated (interests are accumulated)." + ], + "label": "Liquidation", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x76ba462a55808954755f62e0d6e94466af36b39ef9edb4bea8d9e83bd72c38e6" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": [ + "Emitted when a interest indexes are updated in reserve coreespoding to asset.", + "", + "# Note", + "This event is not emitted when Deposit, Withdraw, Borrow, Repay, Liquidation events are emitted eventhougth the interest indexes are updated." + ], + "label": "InterestsAccumulated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x9768a96ba816d5c186373d34d7571df094f74c6cecd38c6f06d35f9678a50ac0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "decimals", + "type": { + "displayName": ["u8"], + "type": 9 + } + }, + { + "docs": [], + "indexed": false, + "label": "name", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "docs": [], + "indexed": false, + "label": "symbol", + "type": { + "displayName": ["String"], + "type": 22 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_code_hash", + "type": { + "displayName": [], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_code_hash", + "type": { + "displayName": [], + "type": 8 + } + }, + { + "docs": [], + "indexed": false, + "label": "a_token_address", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "v_token_address", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when an asset is registered."], + "label": "AssetRegistered", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xdfdfdad540d764eb76ee8217018a03f6350f2c1a122ef93252371103d4f6b580" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "price_feed_provider", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a price feed provider is changed."], + "label": "PriceFeedProviderChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x43f92bb52801afce6a6190a96b5ef40283fce331461dcb6ca0811ab14da05751" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "fee_reduction_provider", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a fee reduction provider is changed."], + "label": "FeeReductionChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x0f1163fa6f83624da54bab4b3bc63527e9332d8694fd8f21edb4db3f562886a3" + }, + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "flash_loan_fee_e6", + "type": { + "displayName": ["u128"], + "type": 0 + } + } + ], + "docs": ["Emitted when a flash loan fee is changed."], + "label": "FlashLoanFeeChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x7ae8c2bb5c69af2484d1217a620b4f0ade84e5a0d2c6857501f71dd974a82ba4" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "active", + "type": { + "displayName": ["bool"], + "type": 54 + } + } + ], + "docs": ["Emitted when a reserve is activated."], + "label": "ReserveActivated", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x8293e9a17d04a3b9d2ed8bfdeef09bafd31239028a6f5fa6d7b45262e8b1cad9" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "frozen", + "type": { + "displayName": ["bool"], + "type": 54 + } + } + ], + "docs": ["Emitted when a reserve is frozen."], + "label": "ReserveFrozen", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x1ee11acc50b9c7c436cb8106f806cf35faf5067f048a3069866862f79181ee9e" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "interest_rate_model_params", + "type": { + "displayName": ["InterestRateModelParams"], + "type": 55 + } + } + ], + "docs": ["Emitted when a interest rate model is changed."], + "label": "ReserveInterestRateModelChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xb62ddd071d599731e66a725322b7529cb31ceeeaab0c94d9072f9d4926e95489" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_restrictions", + "type": { + "displayName": ["ReserveRestrictions"], + "type": 57 + } + } + ], + "docs": ["Emitted when a reserve restrictions are changed."], + "label": "ReserveRestrictionsChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xcb01d574ecfb3a85c06261a438bfceb4eb22b1e7e337994e63e857df2e003d0b" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "reserve_fees", + "type": { + "displayName": ["SetReserveFeesArgs"], + "type": 59 + } + } + ], + "docs": ["Emitted when a reserve fees are changed."], + "label": "ReserveFeesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x846d17a1ea55292cbbd707fac313f6d1c807c7c3653c3b56858e913a6668f065" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "market_rule_id", + "type": { + "displayName": ["RuleId"], + "type": 53 + } + }, + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "collateral_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 58 + } + }, + { + "docs": [], + "indexed": false, + "label": "borrow_coefficient_e6", + "type": { + "displayName": ["Option"], + "type": 58 + } + }, + { + "docs": [], + "indexed": false, + "label": "penalty_e6", + "type": { + "displayName": ["Option"], + "type": 58 + } + } + ], + "docs": ["Emitted when an asset rules in an martket rule are changed."], + "label": "AssetRulesChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x10dca875b9227d850bd11cb568b83b87cc968c08054efd454dcf3363a8dfb388" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when a protocol income genareted in 'asset' is taken."], + "label": "IncomeTaken", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0xa7766c3f17f457a0b8d61ed60e6e42c15783cdd5e741c7540e788ffddadf4ed0" + }, + { + "args": [ + { + "docs": [], + "indexed": true, + "label": "asset", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": [], + "indexed": false, + "label": "debt_rate_e18", + "type": { + "displayName": ["u64"], + "type": 56 + } + } + ], + "docs": ["Emitted when stablecoin debt rate is changed."], + "label": "StablecoinDebtRateChanged", + "module_path": "abax_contracts::lending_pool::events", + "signature_topic": "0x4fde6d40bee7fd565c8e00072d605f588ed45a773a363365b8a433f641e54785" + }, + { + "args": [ + { + "docs": ["The account that initiated the pause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when the contract is paused."], + "label": "Paused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0xcb560a184d13b48ac1ecc804d19fa57a64ef4facd0819dcac22a969c20fec081" + }, + { + "args": [ + { + "docs": ["The account that initiated the unpause action."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": ["Emitted when the contract is unpaused."], + "label": "Unpaused", + "module_path": "pendzl_contracts::security::pausable", + "signature_topic": "0x29f037cd7cf467977af6c1d02a3c4ab9c868bb6ce539c0d87ea507d594709d41" + }, + { + "args": [ + { + "docs": ["The `RoleType` for which the admin role is changed. This is the role being modified."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 53 + } + }, + { + "docs": ["The `RoleType` representing the previous admin role for the `role`. Indicates the admin role before the change."], + "indexed": false, + "label": "previous", + "type": { + "displayName": ["RoleType"], + "type": 53 + } + }, + { + "docs": ["The `RoleType` representing the new admin role set for the `role`. Indicates the updated admin role."], + "indexed": false, + "label": "new", + "type": { + "displayName": ["RoleType"], + "type": 53 + } + } + ], + "docs": [ + "Emitted when the admin role for a specific role is changed.", + "", + "This event is triggered whenever a `role`'s admin role is updated.", + "It logs the `role` being modified, the `previous` admin role, and the `new` admin role set for that `role`." + ], + "label": "RoleAdminChanged", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0xde670cace683976bfdc92b54b661961802f8322e8cead41fd76e5d7ca65dc403" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is granted. This field identifies the specific role being assigned."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 53 + } + }, + { + "docs": ["The `AccountId` of the account receiving the `role`. Represents the beneficiary of the role assignment."], + "indexed": true, + "label": "grantee", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The `AccountId` of the account that granted the `role`. This is the account responsible for the role assignment."], + "indexed": true, + "label": "grantor", + "type": { + "displayName": ["Option"], + "type": 44 + } + } + ], + "docs": [ + "Emitted when a role is granted to an account.", + "", + "This event occurs when a new `role` is assigned to an `grantee`.", + "The `grantor` who assigned the role is also logged." + ], + "label": "RoleGranted", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x4178b665aa7310f609a3da6698348eabe212f3b0bd0386791eeae4924095b76b" + }, + { + "args": [ + { + "docs": ["The `RoleType` that is revoked. Specifies the role being removed from the account."], + "indexed": true, + "label": "role", + "type": { + "displayName": ["RoleType"], + "type": 53 + } + }, + { + "docs": ["The `AccountId` of the account from which the `role` is being removed. Denotes the account losing the role."], + "indexed": true, + "label": "account", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The `AccountId` of the account that performed the role revocation. Indicates who initiated the removal of the role."], + "indexed": true, + "label": "sender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "docs": [ + "Emitted when a role is revoked from an account.", + "", + "This event is triggered when an existing `role` is removed from an `account`.", + "The `sender` who performed the revocation is also included." + ], + "label": "RoleRevoked", + "module_path": "pendzl_contracts::access::access_control", + "signature_topic": "0x00d57dbcb9a54f822039e86efe3513a9af40deb0e6a9ee6cecf39824f8d27e9b" + }, + { + "args": [ + { + "docs": ["The new owner's account address. `None` if ownership is renounced."], + "indexed": true, + "label": "new", + "type": { + "displayName": ["Option"], + "type": 44 + } + } + ], + "docs": ["Emitted when ownership of the contract is transferred."], + "label": "OwnershipTransferred", + "module_path": "pendzl_contracts::access::ownable", + "signature_topic": "0x5c626481ee232181dcfad24632520cc98608b23ed971378c0ad4504cab1b78c9" + }, + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 44 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 41 + }, + "messages": [ + { + "args": [ + { + "label": "transfer_event_data", + "type": { + "displayName": ["Vec"], + "type": 42 + } + } + ], + "default": false, + "docs": [], + "label": "AbacusToken::emit_transfer_events", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0x7bfede3f" + }, + { + "args": [ + { + "label": "transfer_event_data", + "type": { + "displayName": ["TransferEventData"], + "type": 43 + } + }, + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "decrease_allowance_by", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "AbacusToken::emit_transfer_event_and_decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0x4106ef53" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "AbacusToken::get_lending_pool", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 48 + }, + "selector": "0xcec6d17e" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 49 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 50 + } + } + ], + "default": false, + "docs": [ + " Transfers `value` amount of tokens from the caller's account to account `to`", + " with additional `data` in unspecified format.", + "", + " On success a `Transfer` event is emitted.", + "", + " # Errors", + "", + " Returns `InsufficientBalance` error if there are not enough tokens on", + " the caller's account Balance.", + "", + " !!!IMPORTANT!!!", + " Returns `InsufficientAllowance` error if there are not enough tokens allowed", + " for the caller to !!! TRANSFER TO `to` !!!" + ], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 50 + } + } + ], + "default": false, + "docs": [ + " Transfers `value` tokens on the behalf of `from` to the account `to`", + " with additional `data` in unspecified format.", + "", + " This can be used to allow a contract to transfer tokens on ones behalf and/or", + " to charge fees in sub-currencies, for example.", + "", + " On success a `Transfer` and `Approval` events are emitted.", + "", + " # Errors", + "", + " !!!IMPORTANT!!!", + " Returns `InsufficientAllowance` error if there are not enough tokens allowed", + " for the caller to !!! TRANSFER TO `to` !!!.", + "", + " Returns `InsufficientBalance` error if there are not enough tokens on", + " the the account Balance of `from`." + ], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 45 + }, + "selector": "0xfecb57d5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 51 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 52 + }, + "selector": "0x7271b782" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 0 + } + }, + "root_key": "0xc629684f", + "ty": 1 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 0 + } + }, + "root_key": "0xffbbddfc", + "ty": 6 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 0 + } + }, + "root_key": "0x7c996051", + "ty": 13 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "psp22" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 7 + } + }, + "name": "lending_pool" + }, + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 7 + } + }, + "name": "underlying_asset" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd0c36d85", + "ty": 0 + } + }, + "root_key": "0xd0c36d85", + "ty": 18 + } + }, + "name": "allowances" + } + ], + "name": "AbacusTokenStorage" + } + }, + "name": "abacus_token" + }, + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0xd1f34aae", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0xd1f34aae", + "ty": 22 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0xd1f34aae", + "ty": 23 + } + }, + "name": "name" + }, + { + "layout": { + "root": { + "layout": { + "enum": { + "dispatchKey": "0x91c80e52", + "name": "Option", + "variants": { + "0": { + "fields": [], + "name": "None" + }, + "1": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x91c80e52", + "ty": 22 + } + }, + "name": "0" + } + ], + "name": "Some" + } + } + } + }, + "root_key": "0x91c80e52", + "ty": 28 + } + }, + "name": "symbol" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xd57ae5cd", + "ty": 9 + } + }, + "root_key": "0xd57ae5cd", + "ty": 32 + } + }, + "name": "decimals" + } + ], + "name": "PSP22MetadataData" + } + }, + "name": "metadata" + } + ], + "name": "VToken" + } + }, + "root_key": "0x00000000", + "ty": 36 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 10 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 8, + "type": { + "def": { + "array": { + "len": 32, + "type": 9 + } + } + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 11 + }, + { + "name": "R", + "type": 12 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 15 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 14, + "type": { + "def": { + "tuple": [7, 7] + } + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 16 + }, + { + "name": "R", + "type": 17 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 19 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 20 + }, + { + "name": "R", + "type": 21 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 20, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 21, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 22, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 23, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 24 + }, + { + "name": "KeyType", + "type": 25 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 22 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 22 + } + ], + "path": ["Option"] + } + }, + { + "id": 25, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 26 + }, + { + "name": "R", + "type": 27 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 26, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 27, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 28, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 24 + }, + { + "name": "KeyType", + "type": 29 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 29, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 30 + }, + { + "name": "R", + "type": 31 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 30, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 31, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 9 + }, + { + "name": "KeyType", + "type": 33 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 33, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 34 + }, + { + "name": "R", + "type": 35 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 34, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 35, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 36, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "psp22", + "type": 37, + "typeName": ",>>::Type" + }, + { + "name": "abacus_token", + "type": 38, + "typeName": ",>>::Type" + }, + { + "name": "metadata", + "type": 39, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["v_token", "v_token", "VToken"] + } + }, + { + "id": 37, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 1, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 6, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 13, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 38, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "lending_pool", + "type": 7, + "typeName": ",>>::Type" + }, + { + "name": "underlying_asset", + "type": 7, + "typeName": ",>>::Type" + }, + { + "name": "allowances", + "type": 18, + "typeName": "> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n1070055618u32, ()>,>>::Type" + } + ] + } + }, + "path": ["abax_contracts", "abacus_token", "implementation", "storage", "AbacusTokenStorage"] + } + }, + { + "id": 39, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 23, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n3194321569u32, ()>,>>::Type" + }, + { + "name": "symbol", + "type": 28, + "typeName": "<::ink::storage::Lazy,::ink::storage::traits\n::ManualKey> as::ink::storage\n::traits::AutoStorableHint<::ink::storage::traits::ManualKey<\n4160644838u32, ()>,>>::Type" + }, + { + "name": "decimals", + "type": 32, + "typeName": "<::ink::storage::Lazy> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<506484671u32, ()\n>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "extensions", "metadata", "implementation", "PSP22MetadataData"] + } + }, + { + "id": 40, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 41, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 42, + "type": { + "def": { + "sequence": { + "type": 43 + } + } + } + }, + { + "id": 43, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "from", + "type": 44, + "typeName": "Option" + }, + { + "name": "to", + "type": 44, + "typeName": "Option" + }, + { + "name": "amount", + "type": 0, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_contracts", "abacus_token", "structs", "TransferEventData"] + } + }, + { + "id": 44, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 7 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + } + ], + "path": ["Option"] + } + }, + { + "id": 45, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 46 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 46 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 46, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 47 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 47 + } + ], + "path": ["Result"] + } + }, + { + "id": 47, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 22, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 22, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 48, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 7 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 49, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 50, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 51, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 24 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 24 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 52, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 41 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 41 + } + ], + "path": ["Result"] + } + }, + { + "id": 53, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 54, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 55, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "target_ur_e6", + "type": 53, + "typeName": "u32" + }, + { + "name": "min_rate_at_target_e18", + "type": 56, + "typeName": "u64" + }, + { + "name": "max_rate_at_target_e18", + "type": 56, + "typeName": "u64" + }, + { + "name": "rate_at_max_ur_e18", + "type": 56, + "typeName": "u64" + }, + { + "name": "minimal_time_between_adjustments", + "type": 56, + "typeName": "u64" + } + ] + } + }, + "path": ["abax_library", "structs", "interest_rate_model", "InterestRateModelParams"] + } + }, + { + "id": 56, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 57, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "maximal_total_deposit", + "type": 58, + "typeName": "Option" + }, + { + "name": "maximal_total_debt", + "type": 58, + "typeName": "Option" + }, + { + "name": "minimal_collateral", + "type": 0, + "typeName": "Balance" + }, + { + "name": "minimal_debt", + "type": 0, + "typeName": "Balance" + } + ] + } + }, + "path": ["abax_library", "structs", "reserve_restrictions", "ReserveRestrictions"] + } + }, + { + "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": { + "composite": { + "fields": [ + { + "name": "debt_fee_e6", + "type": 53, + "typeName": "u32" + }, + { + "name": "deposit_fee_e6", + "type": 53, + "typeName": "u32" + } + ] + } + }, + "path": ["abax_contracts", "lending_pool", "traits", "lending_pool_manage", "SetReserveFeesArgs"] + } + }, + { + "id": 60, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 61, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/v_token.wasm b/artifacts/v_token.wasm new file mode 100644 index 0000000..86ffdf1 Binary files /dev/null and b/artifacts/v_token.wasm differ diff --git a/artifacts/wazero.contract b/artifacts/wazero.contract new file mode 100644 index 0000000..78a05b9 --- /dev/null +++ b/artifacts/wazero.contract @@ -0,0 +1 @@ +{"source":{"hash":"0x9892e99d5d20728525e2ecdf032d4cc3d24cbc2b3db3d49e8df17996f1fdc50c","language":"ink! 5.0.0","compiler":"rustc 1.77.2","wasm":"0x0061736d0100000001460c60027f7f0060037f7f7f0060017f0060037f7f7f017f60000060047f7f7f7f017f60027e7e0060057f7f7f7e7e0060037f7e7e0060047f7f7f7f0060037e7e7f006000017f02c2010a057365616c310b6765745f73746f726167650005057365616c3005696e7075740000057365616c30087472616e736665720005057365616c300d6465706f7369745f6576656e740009057365616c320b7365745f73746f726167650005057365616c300b7365616c5f72657475726e0001057365616c300663616c6c65720000057365616c301176616c75655f7472616e736665727265640000057365616c300f686173685f626c616b65325f323536000103656e76066d656d6f7279020102100332310303030302000100000200000002010a020b020100010206000204040000010000040007070800010408060103000000000616037f01418080040b7f0041b081050b7f0041a481050b0711020463616c6c002a066465706c6f7900310ad45a312b01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b0b6f01017f0240200020014d04402000210303402002450d02200320012d00003a0000200141016a2101200341016a2103200241016b21020c000b000b200141016b2101200041016b210303402002450d01200220036a200120026a2d00003a0000200241016b21020c000b000b20000b2501017f037f2002200346047f200005200020036a20013a0000200341016a21030c010b0b0b3f01027f0340200245044041000f0b200241016b210220012d0000210320002d00002104200041016a2100200141016a210120032004460d000b200420036b0ba90101067f230041306b2201240002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b22033602082001200220046a22043602044100200141046a2205100e200128020c220620012802084b0d00200520012802042006100f2001410036022c20012003360228200120043602242005200141246a101020022002200128022c6a22024b0d0020002002360208200141306a24000f0b000b2601017f230041106b22022400200220003a000f20012002410f6a41011034200241106a24000bed0101077f230041406a22032400200341186a22044200370300200341106a22054200370300200341086a22064200370300200342003703000240200241214f0440200341386a22074200370300200341306a22084200370300200341286a220942003703002003420037032020012002200341206a1008200420072903003703002005200829030037030020062009290300370300200320032903203703000c010b20032001200210091a0b20002003290300370000200041186a200341186a290300370000200041106a200341106a290300370000200041086a200341086a290300370000200341406b24000b0a0020012000412010340ba90101057f230041306b2202240002402000280204220420002802082203490d00200028020021052002410036020c2002200420036b22043602082002200320056a22053602042001200241046a22061010200228020c220120022802084b0d00200620022802042001100f2002410036022c20022004360228200220053602242006200241246a10102003200228022c6a22012003490d0020002001360208200241306a24000f0b000b7201047f230041106b220124002001410336020002402000280204220320002802082202490d00200028020021042001410036020c2001200320026b3602082001200220046a3602042001200141046a101320022002200128020c6a22024b0d0020002002360208200141106a24000f0b000b7901017f230041106b22022400024020002802002200413f4d04402001200041027410290c010b200041ffff004d0440200220004102744101723b010e20012002410e6a410210340c010b200041ffffffff034d04402000410274410272200110250c010b2001410310292000200110250b200241106a24000bb90102027f017e230041206b22032400420121040240200128020422024120490d002001200241206b36020420012001280200220241206a360200200341086a200110152003290308a70d00200341186a2903002104200041286a200329031037030020002002290000370008200041306a2004370300200041206a200241186a290000370000200041186a200241106a290000370000200041106a200241086a290000370000420021040b20002004370300200341206a24000b5c02017f037e20012802042202411049047e4201052001200241106b36020420012001280200220141106a360200200141086a29000021032001290000210442000b21052000200437030820002005370300200041106a20033703000b8e0201067f23004180016b22012400200141086a2204200041d00010091a20014280800137025c200141a48104360258200141d8006a1012200141f8006a2200200141e0006a28020036020020012001290258370370200141e4006a2202200141f0006a22034181800410172002200410112000200141ec006a280200360200200120012902643703702003200141286a2202101102402001280274220620002802002200490d0020012802702105200141003602782001200620006b3602742001200020056a3602702004200310102002200310102001290348200141d0006a290300200310182001280278220220012802744b0d002005200020012802702002100320014180016a24000f0b000bd10101057f230041306b2203240002400240200204402001280204220520012802082204490d02200128020021062003410036020c2003200520046b22053602082003200420066a22063602042002200341046a22071010200328020c220220032802084b0d02200720032802042002100f2003410036022c20032005360228200320063602242007200341246a10102004200328022c6a22022004490d02200120023602080c010b2001100d0b20002001290200370200200041086a200141086a280200360200200341306a24000f0b000b2a01017f230041106b2203240020032001370308200320003703002002200341101034200341106a24000b850101027f230041106b2201240020014180800136020c41a481042001410c6a1006200128020c2202418180014f2002411f4d72450440200041a58104290000370001200041096a41ad8104290000370000200041116a41b58104290000370000200041186a41bc8104290000370000200041a481042d00003a0000200141106a24000f0b000b3602017f027e230041106b220024002000101b200041086a290300210120002903002102200041106a2400410541042001200284501b0b5802017f017e230041206b2201240020014200370308200142003703002001411036021c20012001411c6a1007200128021c41114f0440000b200129030021022000200129030837030820002002370300200141206a24000b4801027f230041106b22032400200341086a20024100103020032802082104200328020c2001200210092101200020023602082000200136020420002004360200200341106a24000bd00102047f027e230041306b22022400200242808001370228200241a481043602242001200241246a22041039024020022802282205200228022c2201490d00200228022421032002200520016b220536022420032001200120036a2201200410002103200520022802242204490d00027e0240024020030e0400030301030b2002200436022820022001360224200241086a200241246a10362002290308a70d0220022903102106200241186a2903000c010b42000b21072000200637030020002007370308200241306a24000f0b000bca0202037f017e230041f0006b22032400200341386a200141186a290000370300200341306a200141106a290000370300200341286a200141086a290000370300200341c8006a200241086a290000370300200341d0006a200241106a290000370300200341d8006a200241186a2900003703002003200129000037032020032002290000370340200342808001370268200341a48104360264200341206a200341e4006a22041037024020032802682205200328026c2201490d00200328026421022003200520016b220536026420022001200120026a2201200410002102200520032802642204490d002000027e0240024020020e0400030301030b2003200436026820032001360264200341086a200341e4006a10362003290308a70d0220032903102106200341186a2903000c010b42000b37030820002006370300200341f0006a24000f0b000bd40102057f027e230041306b22012400200142808001370228200141a4810436022441c6d3a0fb04200141246a22041025024020012802282205200128022c2202490d00200128022421032001200520026b220536022420032002200220036a2202200410002103200520012802242204490d00027e0240024020030e0400030301030b2001200436022820012002360224200141086a200141246a10362001290308a70d0020012903102106200141186a2903000c010b42000b21072000200637030020002007370308200141306a24000f0b000b4c01017f230041106b22022400200241a4810436020441a4810441003a0000200242808081801037020820002001200241046a1018200228020c2202418180014f0440000b410020021026000b9b0201037f230041106b22022400200241808001360208200241a481043602040240024002400240024020012802002204410947044041a4810441003a00002004410846044041a5810441003a0000410221010c060b41a5810441013a000002400240024002400240200441016b0e0708000102060304070b41a6810441023a00000c080b4103210141a6810441033a00000c080b41a6810441043a00000c060b41a6810441063a00000c050b41a6810441073a00000c040b41a481044181023b0100410221010c040b410521030b41a6810420033a00002002410336020c200141086a2802002001410c6a280200200241046a1027200228020c220141818001490d02000b41a6810441013a00000b410321010b200020011026000b9a0101027f230041106b22012400200141808001360208200141a48104360204024041a58104027f2000280200220241818080807847044041a4810441003a000041002002418080808078460d011a41a5810441013a00002001410236020c20002802042000280208200141046a1027200128020c220041818001490d02000b41a4810441013a000041010b3a0000410221000b410020001026000b130041a481044181023b0100410141021026000b5301037f230041106b22002400200042808001370208200041a481043602044100200041046a1025200028020c220120002802084b0440000b200028020422022001200120026a410010041a200041106a24000b2601017f230041106b220224002002200036020c20012002410c6a41041034200241106a24000b0d00200041a4810420011005000b2c01017f230041106b220324002003200136020c2003410c6a200210132002200020011034200341106a24000b210020002d00004504402001410010290f0b200141011029200041016a200110100b2d01017f2000280208220220002802044904402000200241016a360208200028020020026a20013a00000f0b000bb524020e7f097e23004190036b2200240020004180800136026041a48104200041e0006a100102400240027f027f0240024020002802602205418180014f0d000240024020054104490d00200041a881043602f0012000200541046b22063602f40141a781042d0000210241a681042d0000210441a581042d00002103024002400240024002400240024041a481042d0000220141164704400240200141344704402001413d470440200141cd00460d05200141d400460d07200141dd00470440200141e500460d05200141f200460d032001419601460d0a200141b201460d09200141db01460d07200141fe01460d0b200141f50147200341ff017141f1014772200441ff017141890147200241d8014772720d0c41808080807821020c0d0b200341ff0171418f0147200441ff017141ca0047722002413847200641104972720d0b200041b881043602f00141b08104290200221242388641a88104290200220e42088884210f20124208882110200ea7210141818080807821020c0c0b200341ff0171412647200441ff0171411b4772200241d40147720d0a41828080807821020c0b0b200341ff0171412047200441ff017141db004772200241e50147720d0941838080807821020c0a0b200341ff017141f10047200441ff017141b7014772200241820147720d0841848080807821020c090b200341ff0171412d47200441ff017141f8014772200241c20147720d0741858080807821020c080b200341ff017141e80047200441ff0171413847722002412f472006411f4d72720d06200041c8026a41c08104290200370300200041b881042902003703c00241b1810435000041b7810431000042308641b581043300004220868484211041a98104290000210f41a881042d0000210141868080807821020c070b200341ff017141c70047200441ff017141d90147722002412147200541c4006b41404f72720d05200041c8026a41c08104290200370300200041b881042902003703c00241b1810435000041b7810431000042308641b581043300004220868484211041d08104290200211241c88104290200210e41a98104290000210f41e48104280200210441dc8104290200211441d88104280200210341a881042d0000210141878080807821020c060b200341ff0171412047200441ff017141f9014772200241f50147200641204972720d04200041e8006a220241c08104290200370300200041b88104290200370360200541346b2203416f4b0d0441b58104330000211141b78104310000211341b18104350000211041a98104290000210f41a881042d00002101200041d881043602f001200020033602f40141d08104290200211241c88104290200210e200041a0026a200041f0016a102b20002802a0022203418080808078460d0420102013423086201142208684842110200041c8026a2002290300370300200020002903603703c00220002902a402211441888080807821020c050b200341ff017141b30147200441ff017141c7014772200241ee0047200641204972720d03200041e8006a220641c08104290200370300200041b88104290200370360200541c4006b2201415f4b2001411049720d0341b58104330000211041b78104310000211541b18104350000211641a98104290000210f41a881042d0000210141d08104290200211241c88104290200210e41e48104280200210441dc8104290200211441d881042802002103200041f881043602f0012000200541d4006b3602f40141f08104290200211341e881042902002111200041a0026a200041f0016a102b20002802a0022202418080808078460d0320162015423086201042208684842110200041c8026a2006290300370300200020002903603703c00220002902a40221150c040b200341ff0171410f47200441ff0171411b4772200241bd0147720d02200041e0006a200041f0016a101420002903604200520d02200041c8026a20004180016a2903003703002000200041f8006a2903003703c002200041f0006a290300220e4238862000290368221142088884210f200e420888211020004190016a290300211220004188016a290300210e2011a72101418a8080807821020c030b200341ff017141d60147200441ff017141b5014772200241fa0047720d01200041e0006a200041f0016a101420002903604200520d01200041c8026a20004180016a2903003703002000200041f8006a2903003703c002200041f0006a290300220e4238862000290368221142088884210f200e420888211020004190016a290300211220004188016a290300210e2011a72101418b8080807821020c020b200341ff017141cb0147200441ff017141d7004772200241d50147720d00200041e0006a200041f0016a101420002903604200520d00200041c8026a20004180016a2903003703002000200041f8006a2903003703c002200041f0006a290300220e4238862000290368221142088884210f200e420888211020004190016a290300211220004188016a290300210e2011a72101418c8080807821020c010b1023000b200041f8006a200041c8026a290300370300200041a8016a201337030020004188016a2012370300200020002903c002370370200020113703a0012000200e37038001200020153702b401200020023602b0012000200436029c012000201437029401200020033602900120002010420886200f42388884221037036820002001ad42ff0183200f42088684220f3703602000428080013702c402200041a481043602c0024100200041c0026a2204102520002802c402220520002802c8022201490d0020002802c00221032000200520016b22053602c00220032001200120036a20041000200520002802c002220449722004720d000240027f02400240024002400240024002400240024002400240024002400240410920024180808080787322012001410d4f1b41016b0e0c0c0102030405060708090a0b000b200041c0026a22021019200041086a101b41002101200041a0026a410020022000290308200041106a290300102c024020002802a00222024108470440200041f8016a200041ac026a280200360200200020002902a4023703f001410121010c010b10240b200041cc026a200041f8016a280200360200200020002903f0013702c4020c130b101a41ff01714105470d0e200041c0026a220041e08004410d101c20001022000b101a41ff01714105470d0d200041c0026a220041ed80044106101c20001022000b101a41ff01714105470d0c230041106b22002400200041a4810436020441a4810441003a00002000428080818010370208410c200041046a100e200028020c2200418180014f0440000b410020001026000b101a41ff01714105470d0b230041106b220124002001101f2001290300210e200041206a2202200141086a2903003703082002200e370300200141106a24002000290320200041286a2903001020000b101a41ff01714105470d0a230041406a22012400200141286a200041e0006a220241086a290000370200200141306a200241106a290000370200200141386a200241186a2900003702002001200041c0026a36021c20012002290000370220200141086a200141206a101d2001290308210e200041306a2202200141106a2903003703082002200e370300200141406b24002000290330200041386a2903001020000b101a41ff01714105470d09230041d0006b22012400200141106a200041e0006a220241c00010091a20012002200141306a101e2001290300210e200041406b2202200141086a2903003703082002200e370300200141d0006a24002000290340200041c8006a2903001020000b101a41ff01714105470d08200041b8026a200041f8006a290300370300200041b0026a200041f0006a290300370300200041a8026a200041e8006a290300370300200020002903603703a002200041c0026a22011019200041f0016a2001200041a0026a200e2012102c027f20002802f00122014108470440200041d8016a200041fc016a280200360200200020002902f4013703d00141010c010b102441000b2102200041cc026a200041d8016a280200360200200020002903d0013702c4020c0d0b101a41ff01714105470d07200041c0026a200041e0006a41c00010091a200041f8016a200041e8026a29030037030020004180026a200041f0026a29030037030020004188026a200041f8026a290300370300200041e8016a200041f8006a290300370300200041e0016a200041f0006a290300370300200041d8016a200041e8006a290300370300200020002903e0023703f001200020002903603703d001200041a0026a2201101920004190026a2202200041d0016a2203200120112013102d20002802900222014108470d0420022003200041f0016a20112013102c20002802900222014108470d0410244108210141000c050b101a41ff01714105470d06200041f8026a200041f8006a290300370300200041f0026a200041f0006a290300370300200041e8026a200041e8006a290300370300200020002903603703e002200041a0026a22021019230041406a22012400200141186a200241186a290000370300200141106a200241106a290000370300200141086a200241086a290000370300200141286a200041e0006a220341086a290000370300200141306a200341106a290000370300200141386a200341186a29000037030020012002290000370300200120032900003703202001200e2012102e200141406b240020004188036a2012370300200041d8026a200041b8026a290000370300200041d0026a200041b0026a290000370300200041c8026a200041a8026a2900003703002000200e37038003200020002900a0023703c002200041c0026a220110161024200041083602c002410020011021000b101a41ff01714105470d05200041a0026a22011019200041d0006a2001200041e0006a101e027f0240200e2000290350220f7c2211200f5422012001ad200041d8006a290300220f20127c7c220e200f54200e200f511b450440200041d8026a2201200041b8026a2202290000370300200041d0026a2203200041b0026a2204290000370300200041c8026a2205200041a8026a2206290000370300200041e8026a2207200041e8006a2208290300370300200041f0026a2209200041f0006a220a290300370300200041f8026a220b200041f8006a220c290300370300200020002900a0023703c002200020002903603703e002200041c0026a220d2011200e102e20004188036a200e370300200120022900003703002003200429000037030020052006290000370300200720082903003703002009200a290300370300200b200c2903003703002000201137038003200020002900a0023703c002200020002903603703e002200d10160c010b200041f0016a4104724101102f20004180026a350200210e200041f8016a290300210f410120002802f40122024108470d011a0b10244108210241000b2101200041cc026a200e3e02002000200f3702c4020c090b101a41ff01714105470d04200041c0026a22011019200041a0026a2001200041e0006a200e2012102d20002802a002410846047f102441000541010b200041a0026a1021000b101a41ff01714105460d020c030b200041c8016a2000419c026a28020036020020002000290294023703c00141010b2102200041cc026a200041c8016a280200360200200020002903c0013702c4020c060b200041a0026a22011019200041c0026a220220014100200f2010102c20002802c00222014108470d01200041d8026a200041b8026a290200370300200041d0026a200041b0026a290200370300200041c8026a200041a8026a290200370300200020002902a0023703c0022000428080013702f401200041a481043602f0012002200041f0016a2202101020002802f401220520002802f8012201490d0020002802f0012103200041003602f8012000200520016b3602f4012000200120036a3602f001200f20102002101820002802f801220220002802f4014b0d002003200120002802f00120021002044041002101200041186a411e4100103020002802182104200028021c220241c28004290000370000200241166a41d88004290000370000200241106a41d28004290000370000200241086a41ca8004290000370000411e0c030b10244108210141000c030b000b20002802c802210220002802c402210420002802cc020b210341010b2105200020033602cc02200020023602c802200020043602c402200020013602c0022005200041c0026a1021000b200020023602c0022001200041c0026a1021000b200020013602c0022002200041c0026a1021000ba00301067f230041206b220224004180808080782105024020012802042207450d00200128020022062d000021032001200741016b22043602042001200641016a36020002400240024002400240200341037141016b0e03010200030b2004410449200341044f720d04200628000121042001200741056b3602042001200641056a36020020044180808080044f0d030c040b200241196a20033a0000200241013a001820022001360214200241003b011c200241146a2002411c6a410210350d0320022f011c220341ff014d0d03200341027621040c020b200241196a20033a0000200241013a0018200220013602142002410036021c200241146a2002411c6a410410350d02200228021c220341808004490d02200341027621040c010b200341027621040b200128020422062004490d00200241086a20044101103020022802082103200228020c200128020022052004100921072001200620046b3602042001200420056a36020041808080807821052003418080808078460d0020002007ad2004ad42208684370204200321050b20002005360200200241206a24000bbb0802047f037e230041f0016b220524000240024002400240024020010440200541386a2001101d2005290338220a2003542206200541406b290300220920045420042009511b0d012001200a20037d200920047d2006ad7d10320c030b200541286a101f2005290328220920037c220b20095422062006ad200541306a290300220920047c7c220a2009542009200a511b0d01200b200a10330c020b200042003702042000410c6a42003e0200410121060c020b20054188016a4101102f20052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b02400240024020020440200541186a2002101d2005290318220920037c220b20095422062006ad200541206a290300220920047c7c220a2009542009200a511b0d012002200b200a10320c030b200541086a101f2005290308220a2003542206200541106a290300220920045420042009511b0d01200a20037d200920047d2006ad7d10330c020b20054188016a4101102f20052802880122064108460d012000200529028c013702042000410c6a20054194016a2802003602000c020b20054188016a4100102f20052802880122064108460d002000200529028c013702042000410c6a20054194016a2802003602000c010b4100210620010440200541e0006a200141186a290000370300200541d8006a200141106a290000370300200541d0006a200141086a29000037030020052001290000370348410121070b2002044020054180016a200241186a290000370300200541f8006a200241106a290000370300200541f0006a200241086a29000037030020052002290000370368410121060b200541b1016a200541e0006a290300370000200541a9016a200541d8006a290300370000200541a1016a200541d0006a290300370000200541c2016a200541f0006a2208290300370100200541ca016a200541f8006a290300370100200541d2016a20054180016a2903003701002005200529034837009901200520052903683701ba0120052004370390012005200337038801200520063a00b901200520073a0098012005428080013702e801200541a481043602e401200541e4016a10122008200541ec016a280200360200200520052902e401370368200541c8006a2207200541e8006a41a280041017024020010440200720054199016a10110c010b200541c8006a100d0b200541f0006a200541d0006a28020036020020052005290248370368024020020440200541e8006a200541ba016a10110c010b200541e8006a100d0b200528026c220620052802702201490d0120052802682102200541003602702005200620016b36026c2005200120026a36026820054198016a200541e8006a22071028200541b9016a20071028200320042007101820052802702206200528026c4b0d0120022001200528026820061003410821060b20002006360200200541f0016a24000f0b000bf60202107f027e230041e0006b22052400200520012002101e410821060240200529030022162003542207200541086a290300221520045420042015511b450440200541286a2208200141186a2209290000370300200541206a220a200141106a220b290000370300200541186a220c200141086a220d290000370300200541386a220e200241086a220f290000370300200541406b2210200241106a2211290000370300200541c8006a2212200241186a22132900003703002005200129000037031020052002290000370330200541106a2214201620037d2203201520047d2007ad7d2204102e200541d8006a200437030020082009290000370300200a200b290000370300200c200d290000370300200e200f2900003703002010201129000037030020122013290000370300200520033703502005200129000037031020052002290000370330201410160c010b200042003702042000410c6a42003e0200410221060b20002006360200200541e0006a24000b8e0101047f230041106b22032400200342808001370208200341a481043602042000200341046a22061037024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a3602042001200220061018200328020c220420032802084b0d00200520002003280204200410041a200341106a24000f0b000b3501017f200041046a21020240200141ff0171450440200241fc8004410c101c0c010b200241888104410b101c0b200041003602000be00101017f024002402001450440410121020c010b20014100480d01200245044041a081042d00001a0b027f419481042d00000440419881042802000c010b3f0021034198810441b081053602004194810441013a0000419c8104200341107436020041b081050b2202200120026a22034b0d01419c81042802002003490440200141ffff036a220341107640002202417f460d022002411074220220034180807c716a22032002490d02419c81042003360200200120026a22032002490d020b4198810420033602002002450d010b20002002360204200020013602000f0b000b900101017f230041106b2200240002400240101a41ff01714105470d0020004180800136020c41a481042000410c6a1001200028020c2200418180014f0d00200041044f044041a481042d0000419b014741a581042d000041ae01477241a681042d0000419d01477241a781042d000041de004772450d020b1023000b000b102441a4810441003b0100410041021026000b8e0101047f230041106b22032400200342808001370208200341a481043602042000200341046a22061039024020032802082204200328020c2200490d00200328020421052003410036020c2003200420006b3602082003200020056a3602042001200220061018200328020c220420032802084b0d00200520002003280204200410041a200341106a24000f0b000b920101057f230041106b22022400200242808001370208200241a4810436020441c6d3a0fb04200241046a22061025024020022802082203200228020c2204490d00200228020421052002410036020c2002200320046b3602082002200420056a3602042000200120061018200228020c220320022802084b0d00200520042002280204200310041a200241106a24000f0b000b4801027f024002402000280208220320026a22042003490d00200420002802044b0d00200420036b2002470d01200028020020036a2001200210091a200020043602080f0b000b000b8f0101017f20002d00042103200041003a0004027f0240200345044041012000280200220028020422032002490d021a200120002802002201200210091a0c010b2001200041056a2d00003a00004101200028020022002802042203200241016b2202490d011a200141016a20002802002201200210091a0b2000200320026b3602042000200120026a36020041000b0b5502027f017e230041206b22022400200241086a20011015200241186a29030021042002280208210320002002290310370308200041106a200437030020002003200128020472410047ad370300200241206a24000b190041f8800420011038200020011010200041206a200110100b0b002000280200200110250b100041f48004200110382000200110100b0b9c010100418080040b9301011a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d01b5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb5772617070656420415a45524f3a207769746864726177206661696c65645772617070656420415a45524f77415a45524f00ffbbddfc7c9960514d3a3a556e646572666c6f774d3a3a4f766572666c6f77","build_info":{"build_mode":"Release","cargo_contract_version":"4.1.1","rust_toolchain":"stable-x86_64-unknown-linux-gnu","wasm_opt_settings":{"keep_debug_symbols":false,"optimization_passes":"Z"}}},"contract":{"name":"wrapped-azero","version":"0.1.0","authors":["Cardinal"],"description":"Smart contract for AZERO coin wrapped as a PSP22 token","repository":"https://github.com/Cardinal-Cryptography/wAZERO","homepage":"https://github.com/Cardinal-Cryptography/wAZERO"},"image":"paritytech/contracts-verifiable:4.1.1","spec":{"constructors":[{"args":[],"default":false,"docs":[],"label":"new","payable":false,"returnType":{"displayName":["ink_primitives","ConstructorResult"],"type":20},"selector":"0x9bae9d5e"}],"docs":[],"environment":{"accountId":{"displayName":["AccountId"],"type":7},"balance":{"displayName":["Balance"],"type":0},"blockNumber":{"displayName":["BlockNumber"],"type":34},"chainExtension":{"displayName":["ChainExtension"],"type":35},"hash":{"displayName":["Hash"],"type":32},"maxEventTopics":4,"staticBufferSize":16384,"timestamp":{"displayName":["Timestamp"],"type":33}},"events":[{"args":[{"docs":["The account from which the tokens are transferred. `None` for minting operations."],"indexed":true,"label":"from","type":{"displayName":["Option"],"type":31}},{"docs":["The account to which the tokens are transferred. `None` for burning operations."],"indexed":true,"label":"to","type":{"displayName":["Option"],"type":31}},{"docs":["The amount of tokens transferred."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when tokens are transferred, including zero value transfers."],"label":"Transfer","module_path":"pendzl_contracts::token::psp22","signature_topic":"0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb"},{"args":[{"docs":["The account of the token owner."],"indexed":true,"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"docs":["The account of the authorized spender."],"indexed":true,"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"docs":["The new allowance amount."],"indexed":false,"label":"value","type":{"displayName":["Balance"],"type":0}}],"docs":["Emitted when the allowance of a `spender` for an `owner` is set or changed."],"label":"Approval","module_path":"pendzl_contracts::token::psp22","signature_topic":"0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d"}],"lang_error":{"displayName":["ink","LangError"],"type":21},"messages":[{"args":[],"default":false,"docs":[],"label":"WrappedAZERO::deposit","mutates":true,"payable":true,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0xf5f189d8"},{"args":[{"label":"value","type":{"displayName":["u128"],"type":0}}],"default":false,"docs":[],"label":"WrappedAZERO::withdraw","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0x5d8f4a38"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_name","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x3d261bd4"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_symbol","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":26},"selector":"0x34205be5"},{"args":[],"default":false,"docs":[],"label":"PSP22Metadata::token_decimals","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":28},"selector":"0x7271b782"},{"args":[],"default":false,"docs":[],"label":"PSP22::total_supply","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x162df8c2"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::balance_of","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x6568382f"},{"args":[{"label":"owner","type":{"displayName":["AccountId"],"type":7}},{"label":"spender","type":{"displayName":["AccountId"],"type":7}}],"default":false,"docs":[],"label":"PSP22::allowance","mutates":false,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":29},"selector":"0x4d47d921"},{"args":[{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":30}}],"default":false,"docs":[],"label":"PSP22::transfer","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0xdb20f9f5"},{"args":[{"label":"from","type":{"displayName":["AccountId"],"type":7}},{"label":"to","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}},{"label":"data","type":{"displayName":["Vec"],"type":30}}],"default":false,"docs":[],"label":"PSP22::transfer_from","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0x54b3c76e"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::approve","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0xb20f1bbd"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::increase_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0x96d6b57a"},{"args":[{"label":"spender","type":{"displayName":["AccountId"],"type":7}},{"label":"delta_value","type":{"displayName":["Balance"],"type":0}}],"default":false,"docs":[],"label":"PSP22::decrease_allowance","mutates":true,"payable":false,"returnType":{"displayName":["ink","MessageResult"],"type":22},"selector":"0xfecb57d5"}]},"storage":{"root":{"layout":{"struct":{"fields":[{"layout":{"struct":{"fields":[{"layout":{"root":{"layout":{"leaf":{"key":"0xc629684f","ty":0}},"root_key":"0xc629684f","ty":1}},"name":"total_supply"},{"layout":{"root":{"layout":{"leaf":{"key":"0xffbbddfc","ty":0}},"root_key":"0xffbbddfc","ty":6}},"name":"balances"},{"layout":{"root":{"layout":{"leaf":{"key":"0x7c996051","ty":0}},"root_key":"0x7c996051","ty":13}},"name":"allowances"}],"name":"PSP22Data"}},"name":"data"}],"name":"Wazero"}},"root_key":"0x00000000","ty":18}},"types":[{"id":0,"type":{"def":{"primitive":"u128"}}},{"id":1,"type":{"def":{"composite":{}},"params":[{"name":"V","type":0},{"name":"KeyType","type":2}],"path":["ink_storage","lazy","Lazy"]}},{"id":2,"type":{"def":{"composite":{}},"params":[{"name":"L","type":3},{"name":"R","type":5}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":3,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":4,"type":{"def":{"tuple":[]}}},{"id":5,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":6,"type":{"def":{"composite":{}},"params":[{"name":"K","type":7},{"name":"V","type":0},{"name":"KeyType","type":10}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":7,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","AccountId"]}},{"id":8,"type":{"def":{"array":{"len":32,"type":9}}}},{"id":9,"type":{"def":{"primitive":"u8"}}},{"id":10,"type":{"def":{"composite":{}},"params":[{"name":"L","type":11},{"name":"R","type":12}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":11,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":12,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":13,"type":{"def":{"composite":{}},"params":[{"name":"K","type":14},{"name":"V","type":0},{"name":"KeyType","type":15}],"path":["ink_storage","lazy","mapping","Mapping"]}},{"id":14,"type":{"def":{"tuple":[7,7]}}},{"id":15,"type":{"def":{"composite":{}},"params":[{"name":"L","type":16},{"name":"R","type":17}],"path":["ink_storage_traits","impls","ResolverKey"]}},{"id":16,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":17,"type":{"def":{"composite":{}},"params":[{"name":"ParentKey","type":4}],"path":["ink_storage_traits","impls","ManualKey"]}},{"id":18,"type":{"def":{"composite":{"fields":[{"name":"data","type":19,"typeName":",>>::Type"}]}},"path":["wrapped_azero","wazero","Wazero"]}},{"id":19,"type":{"def":{"composite":{"fields":[{"name":"total_supply","type":1,"typeName":"<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type"},{"name":"balances","type":6,"typeName":"> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type"},{"name":"allowances","type":13,"typeName":"> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type"}]}},"path":["pendzl_contracts","token","psp22","implementation","PSP22Data"]}},{"id":20,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":21}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":21}],"path":["Result"]}},{"id":21,"type":{"def":{"variant":{"variants":[{"index":1,"name":"CouldNotReadInput"}]}},"path":["ink_primitives","LangError"]}},{"id":22,"type":{"def":{"variant":{"variants":[{"fields":[{"type":23}],"index":0,"name":"Ok"},{"fields":[{"type":21}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":23},{"name":"E","type":21}],"path":["Result"]}},{"id":23,"type":{"def":{"variant":{"variants":[{"fields":[{"type":4}],"index":0,"name":"Ok"},{"fields":[{"type":24}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":4},{"name":"E","type":24}],"path":["Result"]}},{"id":24,"type":{"def":{"variant":{"variants":[{"fields":[{"type":25,"typeName":"String"}],"index":0,"name":"Custom"},{"index":1,"name":"InsufficientBalance"},{"index":2,"name":"InsufficientAllowance"},{"index":3,"name":"ZeroRecipientAddress"},{"index":4,"name":"ZeroSenderAddress"},{"fields":[{"type":25,"typeName":"String"}],"index":5,"name":"SafeTransferCheckFailed"},{"index":6,"name":"PermitInvalidSignature"},{"index":7,"name":"PermitExpired"}]}},"path":["pendzl_contracts","token","psp22","PSP22Error"]}},{"id":25,"type":{"def":{"primitive":"str"}}},{"id":26,"type":{"def":{"variant":{"variants":[{"fields":[{"type":27}],"index":0,"name":"Ok"},{"fields":[{"type":21}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":27},{"name":"E","type":21}],"path":["Result"]}},{"id":27,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":25}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":25}],"path":["Option"]}},{"id":28,"type":{"def":{"variant":{"variants":[{"fields":[{"type":9}],"index":0,"name":"Ok"},{"fields":[{"type":21}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":9},{"name":"E","type":21}],"path":["Result"]}},{"id":29,"type":{"def":{"variant":{"variants":[{"fields":[{"type":0}],"index":0,"name":"Ok"},{"fields":[{"type":21}],"index":1,"name":"Err"}]}},"params":[{"name":"T","type":0},{"name":"E","type":21}],"path":["Result"]}},{"id":30,"type":{"def":{"sequence":{"type":9}}}},{"id":31,"type":{"def":{"variant":{"variants":[{"index":0,"name":"None"},{"fields":[{"type":7}],"index":1,"name":"Some"}]}},"params":[{"name":"T","type":7}],"path":["Option"]}},{"id":32,"type":{"def":{"composite":{"fields":[{"type":8,"typeName":"[u8; 32]"}]}},"path":["ink_primitives","types","Hash"]}},{"id":33,"type":{"def":{"primitive":"u64"}}},{"id":34,"type":{"def":{"primitive":"u32"}}},{"id":35,"type":{"def":{"variant":{}},"path":["ink_env","types","NoChainExtension"]}}],"version":5} \ No newline at end of file diff --git a/artifacts/wazero.json b/artifacts/wazero.json new file mode 100644 index 0000000..80075c8 --- /dev/null +++ b/artifacts/wazero.json @@ -0,0 +1,1263 @@ +{ + "source": { + "hash": "0x9892e99d5d20728525e2ecdf032d4cc3d24cbc2b3db3d49e8df17996f1fdc50c", + "language": "ink! 5.0.0", + "compiler": "rustc 1.77.2", + "build_info": { + "build_mode": "Release", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "stable-x86_64-unknown-linux-gnu", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "wrapped-azero", + "version": "0.1.0", + "authors": ["Cardinal"], + "description": "Smart contract for AZERO coin wrapped as a PSP22 token", + "repository": "https://github.com/Cardinal-Cryptography/wAZERO", + "homepage": "https://github.com/Cardinal-Cryptography/wAZERO" + }, + "image": "paritytech/contracts-verifiable:4.1.1", + "spec": { + "constructors": [ + { + "args": [], + "default": false, + "docs": [], + "label": "new", + "payable": false, + "returnType": { + "displayName": ["ink_primitives", "ConstructorResult"], + "type": 20 + }, + "selector": "0x9bae9d5e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": ["AccountId"], + "type": 7 + }, + "balance": { + "displayName": ["Balance"], + "type": 0 + }, + "blockNumber": { + "displayName": ["BlockNumber"], + "type": 34 + }, + "chainExtension": { + "displayName": ["ChainExtension"], + "type": 35 + }, + "hash": { + "displayName": ["Hash"], + "type": 32 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": ["Timestamp"], + "type": 33 + } + }, + "events": [ + { + "args": [ + { + "docs": ["The account from which the tokens are transferred. `None` for minting operations."], + "indexed": true, + "label": "from", + "type": { + "displayName": ["Option"], + "type": 31 + } + }, + { + "docs": ["The account to which the tokens are transferred. `None` for burning operations."], + "indexed": true, + "label": "to", + "type": { + "displayName": ["Option"], + "type": 31 + } + }, + { + "docs": ["The amount of tokens transferred."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when tokens are transferred, including zero value transfers."], + "label": "Transfer", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb" + }, + { + "args": [ + { + "docs": ["The account of the token owner."], + "indexed": true, + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The account of the authorized spender."], + "indexed": true, + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "docs": ["The new allowance amount."], + "indexed": false, + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "docs": ["Emitted when the allowance of a `spender` for an `owner` is set or changed."], + "label": "Approval", + "module_path": "pendzl_contracts::token::psp22", + "signature_topic": "0x1a35e726f5feffda199144f6097b2ba23713e549bfcbe090c0981e3bcdfbcc1d" + } + ], + "lang_error": { + "displayName": ["ink", "LangError"], + "type": 21 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [], + "label": "WrappedAZERO::deposit", + "mutates": true, + "payable": true, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0xf5f189d8" + }, + { + "args": [ + { + "label": "value", + "type": { + "displayName": ["u128"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "WrappedAZERO::withdraw", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0x5d8f4a38" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_name", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 26 + }, + "selector": "0x3d261bd4" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_symbol", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 26 + }, + "selector": "0x34205be5" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22Metadata::token_decimals", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 28 + }, + "selector": "0x7271b782" + }, + { + "args": [], + "default": false, + "docs": [], + "label": "PSP22::total_supply", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x162df8c2" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::balance_of", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x6568382f" + }, + { + "args": [ + { + "label": "owner", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::allowance", + "mutates": false, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 29 + }, + "selector": "0x4d47d921" + }, + { + "args": [ + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 30 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0xdb20f9f5" + }, + { + "args": [ + { + "label": "from", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "to", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + }, + { + "label": "data", + "type": { + "displayName": ["Vec"], + "type": 30 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::transfer_from", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0x54b3c76e" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::approve", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0xb20f1bbd" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::increase_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0x96d6b57a" + }, + { + "args": [ + { + "label": "spender", + "type": { + "displayName": ["AccountId"], + "type": 7 + } + }, + { + "label": "delta_value", + "type": { + "displayName": ["Balance"], + "type": 0 + } + } + ], + "default": false, + "docs": [], + "label": "PSP22::decrease_allowance", + "mutates": true, + "payable": false, + "returnType": { + "displayName": ["ink", "MessageResult"], + "type": 22 + }, + "selector": "0xfecb57d5" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xc629684f", + "ty": 0 + } + }, + "root_key": "0xc629684f", + "ty": 1 + } + }, + "name": "total_supply" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0xffbbddfc", + "ty": 0 + } + }, + "root_key": "0xffbbddfc", + "ty": 6 + } + }, + "name": "balances" + }, + { + "layout": { + "root": { + "layout": { + "leaf": { + "key": "0x7c996051", + "ty": 0 + } + }, + "root_key": "0x7c996051", + "ty": 13 + } + }, + "name": "allowances" + } + ], + "name": "PSP22Data" + } + }, + "name": "data" + } + ], + "name": "Wazero" + } + }, + "root_key": "0x00000000", + "ty": 18 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 2 + } + ], + "path": ["ink_storage", "lazy", "Lazy"] + } + }, + { + "id": 2, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 3 + }, + { + "name": "R", + "type": 5 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 3, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 4, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 5, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 7 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 10 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 7, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "AccountId"] + } + }, + { + "id": 8, + "type": { + "def": { + "array": { + "len": 32, + "type": 9 + } + } + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 11 + }, + { + "name": "R", + "type": 12 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 11, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 12, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 13, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "K", + "type": 14 + }, + { + "name": "V", + "type": 0 + }, + { + "name": "KeyType", + "type": 15 + } + ], + "path": ["ink_storage", "lazy", "mapping", "Mapping"] + } + }, + { + "id": 14, + "type": { + "def": { + "tuple": [7, 7] + } + } + }, + { + "id": 15, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "L", + "type": 16 + }, + { + "name": "R", + "type": 17 + } + ], + "path": ["ink_storage_traits", "impls", "ResolverKey"] + } + }, + { + "id": 16, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 17, + "type": { + "def": { + "composite": {} + }, + "params": [ + { + "name": "ParentKey", + "type": 4 + } + ], + "path": ["ink_storage_traits", "impls", "ManualKey"] + } + }, + { + "id": 18, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "data", + "type": 19, + "typeName": ",>>::Type" + } + ] + } + }, + "path": ["wrapped_azero", "wazero", "Wazero"] + } + }, + { + "id": 19, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "total_supply", + "type": 1, + "typeName": "<::ink::storage::Lazy> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n2948691470u32, ()>,>>::Type" + }, + { + "name": "balances", + "type": 6, + "typeName": "> as::ink::storage::traits::\nAutoStorableHint<::ink::storage::traits::ManualKey<1170687700u32,\n()>,>>::Type" + }, + { + "name": "allowances", + "type": 13, + "typeName": "> as::ink::storage::\ntraits::AutoStorableHint<::ink::storage::traits::ManualKey<\n15709089u32, ()>,>>::Type" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "implementation", "PSP22Data"] + } + }, + { + "id": 20, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 21 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 21 + } + ], + "path": ["Result"] + } + }, + { + "id": 21, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": ["ink_primitives", "LangError"] + } + }, + { + "id": 22, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 23 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 21 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 23 + }, + { + "name": "E", + "type": 21 + } + ], + "path": ["Result"] + } + }, + { + "id": 23, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 4 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 24 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "E", + "type": 24 + } + ], + "path": ["Result"] + } + }, + { + "id": 24, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 25, + "typeName": "String" + } + ], + "index": 0, + "name": "Custom" + }, + { + "index": 1, + "name": "InsufficientBalance" + }, + { + "index": 2, + "name": "InsufficientAllowance" + }, + { + "index": 3, + "name": "ZeroRecipientAddress" + }, + { + "index": 4, + "name": "ZeroSenderAddress" + }, + { + "fields": [ + { + "type": 25, + "typeName": "String" + } + ], + "index": 5, + "name": "SafeTransferCheckFailed" + }, + { + "index": 6, + "name": "PermitInvalidSignature" + }, + { + "index": 7, + "name": "PermitExpired" + } + ] + } + }, + "path": ["pendzl_contracts", "token", "psp22", "PSP22Error"] + } + }, + { + "id": 25, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 26, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 27 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 21 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 27 + }, + { + "name": "E", + "type": 21 + } + ], + "path": ["Result"] + } + }, + { + "id": 27, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 25 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 25 + } + ], + "path": ["Option"] + } + }, + { + "id": 28, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 9 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 21 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 9 + }, + { + "name": "E", + "type": 21 + } + ], + "path": ["Result"] + } + }, + { + "id": 29, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 21 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 21 + } + ], + "path": ["Result"] + } + }, + { + "id": 30, + "type": { + "def": { + "sequence": { + "type": 9 + } + } + } + }, + { + "id": 31, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 0, + "name": "None" + }, + { + "fields": [ + { + "type": 7 + } + ], + "index": 1, + "name": "Some" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 7 + } + ], + "path": ["Option"] + } + }, + { + "id": 32, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 8, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": ["ink_primitives", "types", "Hash"] + } + }, + { + "id": 33, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 34, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 35, + "type": { + "def": { + "variant": {} + }, + "path": ["ink_env", "types", "NoChainExtension"] + } + } + ], + "version": 5 +} diff --git a/artifacts/wazero.wasm b/artifacts/wazero.wasm new file mode 100644 index 0000000..1b9693b Binary files /dev/null and b/artifacts/wazero.wasm differ diff --git a/generate_subscan_verify.sh b/generate_subscan_verify.sh index 6a8f959..b1b2bf7 100755 --- a/generate_subscan_verify.sh +++ b/generate_subscan_verify.sh @@ -10,6 +10,8 @@ cargo_toml_locations=( "$root_dir/src/contracts/abax_token/Cargo.toml", "$root_dir/src/contracts/abax_treasury/Cargo.toml" "$root_dir/src/contracts/abax_vester/Cargo.toml" + "$root_dir/src/contracts/test_purpose/initial_pool_config_proposal/Cargo.toml" + "$root_dir/src/contracts/test_purpose/configure_initial_market_proposal/Cargo.toml" ) for cargo_toml in "${cargo_toml_locations[@]}" diff --git a/runTests.sh b/runTests.sh index 60ac0cb..d94731a 100755 --- a/runTests.sh +++ b/runTests.sh @@ -22,7 +22,10 @@ script -efq $SCRIPT_DIR/mocha.testrun.log -c \ end_time=$(date +%s.%3N) elapsed=$(echo "scale=3; $end_time - $start_time" | bc) echo "Test execution took $elapsed seconds" -npx tsx $SCRIPT_DIR/scripts/fixupNodeLog.ts $SCRIPT_DIR/substrate-contracts-node.testrun.log kill $NODE_PID -rm -rf test-chain-state-tmp \ No newline at end of file +rm -rf test-chain-state-tmp + + +## remove all docker containers starting with name ink-verified +docker ps -a | grep ink-verified | awk '{print $1}' | xargs docker rm -f \ No newline at end of file diff --git a/scripts/fixupNodeLog.ts b/scripts/fixupNodeLog.ts deleted file mode 100755 index 1ebf352..0000000 --- a/scripts/fixupNodeLog.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { encodeAddress } from '@polkadot/util-crypto'; -import chalk from 'chalk'; -import fs from 'fs-extra'; -import { getArgvObj } from '@abaxfinance/utils'; - -const printHelp = () => { - console.log(chalk.yellow('Supply input file via') + chalk.green('--input ') + chalk.yellow('or as a first argument of the script')); - console.log(chalk.yellow('Supply output file via') + chalk.green('--output ') + chalk.yellow('or as a second argument of the script')); - console.log(`\nExample usages:`); - console.log(chalk.cyan('npx tsx ./ansiFileToHtml.ts --input ./myFile.txt --output ./outputFile.html')); - console.log(chalk.cyan('npx tsx ./ansiFileToHtml.ts ./myFile.txt ./outputFile.html')); -}; -(async (args: Record) => { - if (require.main !== module) return; - const inputFile = (args['input'] as string) ?? process.argv[2] ?? process.env.PWD; - if (!inputFile) throw 'could not determine input path'; - if (!inputFile || !fs.pathExistsSync(inputFile)) { - console.log(chalk.yellow('Invalid or missing arguments deposit!')); - printHelp(); - process.exit(127); - } - - const inputData = fs.readFileSync(inputFile, 'utf-8'); - const outputData = inputData.replace(/\[(.*)\]/g, (_, p1: string) => { - const dataArray = p1.split(', '); - if (dataArray.length === 32) { - return encodeAddress(Uint8Array.from(dataArray.map((s) => parseInt(s, 16))), 42).toString(); - } - return dataArray.join(''); - }); - fs.writeFileSync(`${inputFile.replace('.log', '')}.retouched.log`, outputData, 'utf-8'); - - process.exit(0); -})(getArgvObj()).catch((e) => { - console.log(e); - console.error(chalk.red(JSON.stringify(e, null, 2))); - process.exit(1); -}); diff --git a/scripts/mainnetDeployment/10_deployContracts.ts b/scripts/mainnetDeployment/10_deployContracts.ts index e9a3454..c0f7db6 100644 --- a/scripts/mainnetDeployment/10_deployContracts.ts +++ b/scripts/mainnetDeployment/10_deployContracts.ts @@ -22,6 +22,7 @@ import { VOTING_RULES, } from './00_constants'; import AbaxInflatorDeployer from 'typechain/deployers/abax_inflator'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; export interface StoredContractInfo { name: string; @@ -40,8 +41,6 @@ export const saveContractInfoToFileAsJson = async (contractInfos: StoredContract if (require.main !== module) return; const wsEndpoint = process.env.WS_ENDPOINT; if (!wsEndpoint) throw 'could not determine wsEndpoint'; - const seed = process.env.SEED; - if (!seed) throw 'could not determine seed'; const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); @@ -49,7 +48,7 @@ export const saveContractInfoToFileAsJson = async (contractInfos: StoredContract console.log(new Date(parseInt(timestamp.toString()))); const keyring = new Keyring(); - const deployer = keyring.createFromUri(seed, {}, 'sr25519'); // getSigners()[0]; + const deployer = keyring.createFromUri(SEED, {}, 'sr25519'); // getSigners()[0]; console.log('Deployer:', deployer.address); @@ -106,7 +105,7 @@ export const saveContractInfoToFileAsJson = async (contractInfos: StoredContract COST_TO_MINT_MILLIARD_TOKENS, ); console.log(`Deployed TGE at ${abaxTge.address}`); - console.log('TGE START TIME:', new Date(TGE_START_TIME), 'ISO:', new Date(TGE_START_TIME).toISOString()); + console.log('TGE START TIME:', new Date(TGE_START_TIME), 'ISO:', new Date(TGE_START_TIME).toISOString(), 'as number', TGE_START_TIME); //inflator is deployed const { result: inflatorResult, contract: inflator } = await new AbaxInflatorDeployer(api, deployer).new(governor.address, abaxToken.address, [ diff --git a/scripts/mainnetDeployment/20_initTGE.ts b/scripts/mainnetDeployment/20_initTGE.ts index c3091a6..0a5abdf 100644 --- a/scripts/mainnetDeployment/20_initTGE.ts +++ b/scripts/mainnetDeployment/20_initTGE.ts @@ -5,13 +5,13 @@ import chalk from 'chalk'; import AbaxTgeContract from 'typechain/contracts/abax_tge'; import { ABAX_TGE_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; (async () => { if (require.main !== module) return; const wsEndpoint = process.env.WS_ENDPOINT; if (!wsEndpoint) throw 'could not determine wsEndpoint'; - const seed = process.env.SEED; - if (!seed) throw 'could not determine seed'; + const seed = SEED; const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); diff --git a/scripts/mainnetDeployment/21_setBonus.ts b/scripts/mainnetDeployment/21_setBonus.ts index 4063b72..971f663 100644 --- a/scripts/mainnetDeployment/21_setBonus.ts +++ b/scripts/mainnetDeployment/21_setBonus.ts @@ -9,6 +9,7 @@ import { readFileSync } from 'fs-extra'; import { DEPLOYED_CONTRACTS_INFO_PATH, StoredContractInfo } from 'scripts/mainnetDeployment/10_deployContracts'; import { roleToSelectorId } from 'tests/misc'; import { BONUS_LIST } from './01_bonusList'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; const ABAX_TGE_ADDRESS = (JSON.parse(readFileSync(DEPLOYED_CONTRACTS_INFO_PATH, 'utf-8')) as StoredContractInfo[]).find( (contract) => contract.name === 'abax_tge', @@ -18,8 +19,7 @@ const ABAX_TGE_ADDRESS = (JSON.parse(readFileSync(DEPLOYED_CONTRACTS_INFO_PATH, if (require.main !== module) return; const wsEndpoint = process.env.WS_ENDPOINT; if (!wsEndpoint) throw 'could not determine wsEndpoint'; - const seed = process.env.SEED; - if (!seed) throw 'could not determine seed'; + const seed = SEED; const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); @@ -38,9 +38,14 @@ const ABAX_TGE_ADDRESS = (JSON.parse(readFileSync(DEPLOYED_CONTRACTS_INFO_PATH, let completedElements = 0; let lastLoggedProgress = -1; - for (const element of BONUS_LIST) { + // for (const element of BONUS_LIST) { + for (let i = 0; i < BONUS_LIST.length; i++) { + const element = BONUS_LIST[i]; const { address, xp } = element; - for (const account of address) { + // for (const account of address) { + for (let j = 0; j < address.length; j++) { + const account = address[j]; + console.log('processing i', i, 'j', j, 'account', account); await abaxTge.tx.setExpBonusMultiplierE3(account, xp); completedElements++; diff --git a/scripts/mainnetDeployment/22_distributeStakedrop.ts b/scripts/mainnetDeployment/22_distributeStakedrop.ts index ed8da6d..21fb183 100644 --- a/scripts/mainnetDeployment/22_distributeStakedrop.ts +++ b/scripts/mainnetDeployment/22_distributeStakedrop.ts @@ -10,13 +10,13 @@ import { expect } from 'chai'; import { ABAX_TGE_ADDRESS } from 'scripts/mainnetDeployment/utils'; import { roleToSelectorId } from 'tests/misc'; import { STAKEDROP_LIST } from './02_stakedropList'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; (async () => { if (require.main !== module) return; const wsEndpoint = process.env.WS_ENDPOINT; if (!wsEndpoint) throw 'could not determine wsEndpoint'; - const seed = process.env.SEED; - if (!seed) throw 'could not determine seed'; + const seed = SEED; const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); @@ -36,21 +36,28 @@ import { STAKEDROP_LIST } from './02_stakedropList'; let completedElements = 0; let lastLoggedProgress = -1; - for (const [staker, element] of allStakedropEntries) { - const { abaxReward, contributedAzero } = element; - await abaxTge.tx.stakedrop(abaxReward, ((BigInt(contributedAzero) * 4n) / 10n).toString(), staker); - - completedElements++; - const progress = Math.floor((completedElements / totalElements) * 100); - if (progress % 5 === 0 && progress !== lastLoggedProgress) { - console.log(`Progress: ${progress}%`); - lastLoggedProgress = progress; - } - } + // for (const [staker, element] of allStakedropEntries) { + // for (let i = 0; i < allStakedropEntries.length; i++) { + // const [staker, element] = allStakedropEntries[i]; + // console.log('processing i', i, 'staker', staker); + // const { abaxReward, contributedAzero } = element; + // const qrs = await abaxTge.query.stakedrop(abaxReward, 0, staker); + // qrs.value.unwrapRecursively(); + // await abaxTge.tx.stakedrop(abaxReward, 0, staker); + + // completedElements++; + // const progress = Math.floor((completedElements / totalElements) * 100); + // if (progress % 5 === 0 && progress !== lastLoggedProgress) { + // console.log(`Progress: ${progress}%`); + // lastLoggedProgress = progress; + // } + // } completedElements = 0; console.log('Checking the set values (abaxReward)'); - for (const [staker, element] of allStakedropEntries) { + for (let i = 0; i < allStakedropEntries.length; i++) { + const [staker, element] = allStakedropEntries[i]; + console.log('processing i', i, 'staker', staker); const { abaxReward } = element; const query = (await abaxTge.query.reservedFor(staker)).value!.ok!.toString(); @@ -70,7 +77,7 @@ import { STAKEDROP_LIST } from './02_stakedropList'; const { contributedAzero } = element; const query = (await abaxTge.query.contributedAmountBy(staker)).value!.ok!.toString(); - expect(query).to.be.equal(((BigInt(contributedAzero) * 4n) / 10n).toString()); + expect(query).to.be.equal('0'); completedElements++; const progress = Math.floor((completedElements / totalElements) * 100); diff --git a/scripts/mainnetDeployment/23_registerReferrers.ts b/scripts/mainnetDeployment/23_registerReferrers.ts index b97df7e..577c335 100644 --- a/scripts/mainnetDeployment/23_registerReferrers.ts +++ b/scripts/mainnetDeployment/23_registerReferrers.ts @@ -8,13 +8,13 @@ import { expect } from 'chai'; import { ABAX_TGE_ADDRESS } from 'scripts/mainnetDeployment/utils'; import { roleToSelectorId } from 'tests/misc'; import { REFERRER_LIST } from './03_referrerList'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; (async () => { if (require.main !== module) return; const wsEndpoint = process.env.WS_ENDPOINT; if (!wsEndpoint) throw 'could not determine wsEndpoint'; - const seed = process.env.SEED; - if (!seed) throw 'could not determine seed'; + const seed = SEED; const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); @@ -30,7 +30,10 @@ import { REFERRER_LIST } from './03_referrerList'; expect(hasRole.value.ok).to.be.equal(true); for (const referrer of REFERRER_LIST) { - await abaxTge.tx.registerReferrer(referrer); + const isReferrer = (await abaxTge.query.isReferrer(referrer)).value!.ok!; + if (!isReferrer) { + await abaxTge.tx.registerReferrer(referrer); + } } for (const referrer of REFERRER_LIST) { diff --git a/scripts/mainnetDeployment/24_collect.ts b/scripts/mainnetDeployment/24_collect.ts new file mode 100644 index 0000000..5b44577 --- /dev/null +++ b/scripts/mainnetDeployment/24_collect.ts @@ -0,0 +1,75 @@ +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; + +import AbaxTgeContract from 'typechain/contracts/abax_tge'; + +import { expect } from 'chai'; +import { ABAX_TGE_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import { roleToSelectorId } from 'tests/misc'; +import { REFERRER_LIST } from './03_referrerList'; +import { SEED } from 'scripts/mainnetDeployment/cfg_seed'; +import { FOUNDATION_ADDRESS, FOUNDERS_ADDRESS } from 'scripts/mainnetDeployment/00_constants'; +import AbaxTokenContract from 'typechain/contracts/abax_token'; + +(async () => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = SEED; + + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); // getSigners()[0]; + const abaxToken = new AbaxTokenContract('5DfSpEnVDLgyf4Gkwwgh8JSeNbCGE89Fo9QgtZ4LfTC6Rh95', signer, api); + + console.log(); + // const TREASURY_ADDR = '5CzYtzUeyyEJjErAXTSPscNcxk5eiNb1UdovoWt4yoUzVJZd'; + // const foundersBalancePre = await abaxToken.query.balanceOf(FOUNDERS_ADDRESS); + // const foundationBalancePre = await abaxToken.query.balanceOf(FOUNDATION_ADDRESS); + // const treasuryBalancePre = await abaxToken.query.balanceOf(TREASURY_ADDR); + + // console.log('foundersBalance', foundersBalancePre.value.ok?.toString()); + // console.log('foundationBalance', foundationBalancePre.value.ok?.toString()); + // console.log('treasuryBalance', treasuryBalancePre.value.ok?.toString()); + + const abaxTge = new AbaxTgeContract('5H6BtP9CYM4XUWpqqgAaVvha67SMxFqFveu66TKJ81Ljn1b1', signer, api); + + const qrs = await abaxTge.query.isReferrer(FOUNDATION_ADDRESS); + console.log('qrs', qrs.value.ok); + // console.log('QUERY 1'); + // const qrs1 = await abaxTge.query.collectReserved(FOUNDERS_ADDRESS); + // console.log('QUERY 2'); + // const qrs2 = await abaxTge.query.collectReserved(FOUNDATION_ADDRESS); + // console.log('QUERY 3'); + // const qrs3 = await abaxTge.query.collectReserved(TREASURY_ADDR); + + // cons + + // console.log('QUERY RESULTS'); + // console.log(qrs1.value); + // console.log(qrs2.value); + // console.log(qrs3.value); + // await abaxTge.tx.collectReserved(TREASURY_ADDR); + // // await abaxTge.tx.collectReserved(FOUNDERS_ADDRESS); + // // await abaxTge.tx.collectReserved(FOUNDATION_ADDRESS); + + // const foundersBalance = await abaxToken.query.balanceOf(FOUNDERS_ADDRESS); + // const foundationBalance = await abaxToken.query.balanceOf(FOUNDATION_ADDRESS); + // const treasuryBalance = await abaxToken.query.balanceOf(TREASURY_ADDR); + + // console.log('foundersBalance', foundersBalance.value.ok?.toString()); + // console.log('foundationBalance', foundationBalance.value.ok?.toString()); + // console.log('treasuryBalance', treasuryBalance.value.ok?.toString()); + + await api.disconnect(); + process.exit(0); +})().catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/mainnetDeployment/cfg_seed.ts b/scripts/mainnetDeployment/cfg_seed.ts new file mode 100644 index 0000000..28ec829 --- /dev/null +++ b/scripts/mainnetDeployment/cfg_seed.ts @@ -0,0 +1 @@ +export const SEED = ''; diff --git a/scripts/mainnetDeployment/results/10_executed_tx_results.json b/scripts/mainnetDeployment/results/10_executed_tx_results.json new file mode 100644 index 0000000..b74e135 --- /dev/null +++ b/scripts/mainnetDeployment/results/10_executed_tx_results.json @@ -0,0 +1,46 @@ +[ + { + "txHash": "0xb4feeb2b201b9a4242097a8a69ae37e53e665e4652551d88fee103da617557d6", + "blockHash": "0x74912669bcabbecc4ecf4dc1718688eeed5fd5d988bb93a132a64688d78b050a" + }, + { + "txHash": "0x619621939c87465e7aec8cc63eda4705d8c69db40c92110ac461761a87aaddfe", + "blockHash": "0x1a6b28dce3b5c118fff193eac9863a73a1b29641d5a815aea399d87a84802850" + }, + { + "txHash": "0x78c56a57c5e5cfe8592880ecfd06556a6d26bda2d1dfbe1bc67a68226ce2fb39", + "blockHash": "0x8d321f5bd0770977a66930b76bb28fd5df3cfd0dc723fab70ace5c3c12a0455f" + }, + { + "txHash": "0xc92994153e50089558d29cf7a54e81946958e36d4f06c478e931ce3414dfa3db", + "blockHash": "0x8c5f4e14c61dcd222512c23782a90d421b0292605ac96ed8e442a09605593d4c" + }, + { + "txHash": "0x57fca52dfa71db38a512d26d6c7adee06f5b931d7f027dde0b8da745e1299b88", + "blockHash": "0x2738bdab221562da6f7804ff066186b113667bf0bc5eb75be6d7dacd05dbb7ec" + }, + { + "txHash": "0xd5b6ce43d54a04280ca9650e7dce39f77a0c4d6ea76ea8de35ca9bfd35a5b9ba", + "blockHash": "0x48b54a3e1352bf15843612235e12f6da7aa5eb6524de4e447dcd533917a4cbfc" + }, + { + "txHash": "0x480b9dc854f0b5b87c4971a219935fb05f1d3ea22cc9dcfc4c46151dfbef7a58", + "blockHash": "0x19fecf09cc12633290f2b20669e111e672b633bf7597114bc5735f729e926e44" + }, + { + "txHash": "0x1572d57cfe9605725d4b4762d2c9283ed11971172d2a207ec3dba2538d5b26ff", + "blockHash": "0x845ab26550bb4fc61602030c31992362b7bd904188a4fb31d116ad38b459ec3d" + }, + { + "txHash": "0x1b4e9bb1c87c802fe2556dd2c0b0938aff88729d7ac61402e0bf52661d988605", + "blockHash": "0xd9815329b8c87f35a262d2edee71dc65ce9785cabd394ce3144961093f3dbe9e" + }, + { + "txHash": "0x6607896fa33abeda45fe211a343776e7cfde0b636e3dc54dc8c798268d847bea", + "blockHash": "0x8ab19d65f6d3eeb10ff82b25fca67d44c0cf0ca0960bdae28cd81c77a98de9e4" + }, + { + "txHash": "0x29a3080ebb797b9585a283f7eee175987d1352403d7f3199faf3806fcf77c6cf", + "blockHash": "0xd97495f602d168d303d8a4a22e5d1aa6472b66cb231b1be54f7e524f519324aa" + } +] diff --git a/scripts/mainnetDeployment/results/deployedContracts.json b/scripts/mainnetDeployment/results/deployedContracts.json index 7bab3ce..ee44aa6 100644 --- a/scripts/mainnetDeployment/results/deployedContracts.json +++ b/scripts/mainnetDeployment/results/deployedContracts.json @@ -23,7 +23,7 @@ "address": "5D7K6sh5yJSoVeo62765KCkqBqpLbL3zS6MFvaZfT9nn5YLC", "txHash": "0xfa621473d188bb29f7c957f4b291221ba8b3d28b915bbb85662cee368980a2a8", "blockHash": "0xdcb573de51d24d240cb06370c1042af9821ab9dada2e3583793f1f314cb51046", - "vestingFor": "abax_governor" + "vestingFor": "governor" }, { "name": "abax_vester", diff --git a/scripts/mainnetDeployment/run_all.sh b/scripts/mainnetDeployment/run_all.sh index d416577..7c33a71 100755 --- a/scripts/mainnetDeployment/run_all.sh +++ b/scripts/mainnetDeployment/run_all.sh @@ -5,6 +5,7 @@ set -e export WS_ENDPOINT="wss://ws.azero.dev" run_cmd() { + set -e echo "Running: $1" # filter output to not include CONTRACT: Unable to decode contract event: Unable to determine event eval $1 2>&1 | grep -v "CONTRACT: Unable to decode contract event: Unable to determine event" diff --git a/scripts/mainnetDeployment/utils.ts b/scripts/mainnetDeployment/utils.ts index 9696280..0dcdf3b 100644 --- a/scripts/mainnetDeployment/utils.ts +++ b/scripts/mainnetDeployment/utils.ts @@ -4,3 +4,7 @@ import { readFileSync } from 'fs-extra'; export const ABAX_TGE_ADDRESS = (JSON.parse(readFileSync(DEPLOYED_CONTRACTS_INFO_PATH, 'utf-8')) as StoredContractInfo[]).find( (contract) => contract.name === 'abax_tge', )!.address; + +export const GOVERNOR_ADDRESS = (JSON.parse(readFileSync(DEPLOYED_CONTRACTS_INFO_PATH, 'utf-8')) as StoredContractInfo[]).find( + (contract) => contract.name === 'abax_governor', +)!.address; diff --git a/scripts/proposals/00/deployAVTokens.ts b/scripts/proposals/00/deployAVTokens.ts new file mode 100644 index 0000000..21912e0 --- /dev/null +++ b/scripts/proposals/00/deployAVTokens.ts @@ -0,0 +1,51 @@ +import { getArgvObj } from '@abaxfinance/utils'; +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import ATokenDeployer from 'typechain/deployers/a_token'; +import BalanceViewerDeployer from 'typechain/deployers/balance_viewer'; +import VTokenDeployer from 'typechain/deployers/v_token'; + +(async (args: Record) => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + // PREREQUISITES + + const aTokenContractDeploymentRes = await new ATokenDeployer(api, signer).new('Abacus Deposit Token', 'AToken', 0, signer.address, signer.address); + const vTokenContractDeploymentRes = await new VTokenDeployer(api, signer).new('Abacus Debt Token', 'VToken', 0, signer.address, signer.address); + + const { codeHash: aTokenCodeHashHex } = (await api.query.contracts.contractInfoOf(aTokenContractDeploymentRes.contract.address)).toHuman() as { + codeHash: string; + }; + const { codeHash: vTokenCodeHashHex } = (await api.query.contracts.contractInfoOf(vTokenContractDeploymentRes.contract.address)).toHuman() as { + codeHash: string; + }; + + console.log(`aToken code hash: ${aTokenCodeHashHex}`); + console.log(`vToken code hash: ${vTokenCodeHashHex}`); + + console.log('aToken contract address:', aTokenContractDeploymentRes.contract.address.toString()); + console.log('vToken contract address:', vTokenContractDeploymentRes.contract.address.toString()); + + process.exit(0); +})(getArgvObj()).catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); + +// aToken code hash: 0x5adc19dea0f4a33458d689bdec40124691060f14d72623fbfe2914955009bc92 +// vToken code hash: 0xa1b063ed23d600a7ca37f6340acec08f7352dd8834a2b3c79013c05f73cb0622 +// aToken contract address: 5H1tNTUCv2pz9s3ZxPaPY5V3YujR9j2yHMFHr4xvAZshY9HC +// vToken contract address: 5Dztoa5wjanSqeetNUMvSp8JFmQBHUqqH7XPq9BsWGWUHTUL diff --git a/scripts/proposals/00/deployBalanceViewer.ts b/scripts/proposals/00/deployBalanceViewer.ts new file mode 100644 index 0000000..521c832 --- /dev/null +++ b/scripts/proposals/00/deployBalanceViewer.ts @@ -0,0 +1,32 @@ +import { getArgvObj } from '@abaxfinance/utils'; +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import BalanceViewerDeployer from 'typechain/deployers/balance_viewer'; + +const LENDING_POOL_ADDRESS = '<><><>'; + +(async (args: Record) => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + // PREREQUISITES + const balanceViewer = (await new BalanceViewerDeployer(api, signer).new(LENDING_POOL_ADDRESS)).contract; + console.log(`BalanceViewer address: ${balanceViewer.address}`); + + process.exit(0); +})(getArgvObj()).catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/proposals/00/deployLP.ts b/scripts/proposals/00/deployLP.ts new file mode 100644 index 0000000..264e9b2 --- /dev/null +++ b/scripts/proposals/00/deployLP.ts @@ -0,0 +1,31 @@ +import { getArgvObj } from '@abaxfinance/utils'; +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import { GOVERNOR_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import LendingPoolDeployer from 'typechain/deployers/lending_pool'; + +(async (args: Record) => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + // PREREQUISITES + const lendingPool = (await new LendingPoolDeployer(api, signer).new(GOVERNOR_ADDRESS)).contract; + console.log(`lendingPool address: ${lendingPool.address}`); + + process.exit(0); +})(getArgvObj()).catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/proposals/00/deployPriceFeedProviderAndConfigure.ts b/scripts/proposals/00/deployPriceFeedProviderAndConfigure.ts new file mode 100644 index 0000000..6665191 --- /dev/null +++ b/scripts/proposals/00/deployPriceFeedProviderAndConfigure.ts @@ -0,0 +1,77 @@ +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import { GOVERNOR_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import { roleToSelectorId } from 'tests/misc'; +import PriceFeedProviderDeployer from 'typechain/deployers/price_feed_provider'; + +const TOKEN_ADDRESSES_BY_SYMBOL = { + WAZERO: '5CtuFVgEUz13SFPVY6s2cZrnLDEkxQXc19aXrNARwEBeCXgg', + USDC: '5FYFojNCJVFR2bBNKfAePZCa72ZcVX5yeTv8K9bzeUo8D83Z', + WBTC: '5EEtCdKLyyhQnNQWWWPM1fMDx1WdVuiaoR9cA6CWttgyxtuJ', + WETH: '5EoFQd36196Duo6fPTz2MWHXRzwTJcyETHyCyaB3rb61Xo2u', + USDT: '5Et3dDcXUiThrBCot7g65k3oDSicGy4qC82cq9f911izKNtE', +}; + +const ORACLE_ADDRESS = '5F7wPCMXX65RmL8oiuAFNKu2ydhvgcissDZ3NWZ5X85n2WPG'; + +// Asset Query String +// Bitcoin BTC/USD +// Ether ETH/USD +// USDC USDC/USD +// USDT USDT/USD +// DOT DOT/USD +// SOL SOL/USD +// AVAX AVAX/USD +// EUR EUR/USD +// BNB BNB/USD +// DOGE DOGE/USD +// MATIC MATIC/USD +// DAI DAI/USD +// AZERO AZERO/USD + +const DIA_TOKEN_SYMBOL_BY_PSP22_SYMBOL = { + WBTC: 'BTC', + WETH: 'ETH', + USDC: 'USDC', + USDT: 'USDT', + WAZERO: 'AZERO', +}; + +(async () => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + // PREREQUISITES + + const priceFeedProvider = (await new PriceFeedProviderDeployer(api, signer).new(ORACLE_ADDRESS, signer.address)).contract; + console.log(`Price feed provider address: ${priceFeedProvider.address}`); + + const parametersAdminRoleId = roleToSelectorId('PARAMETERS_ADMIN'); + await priceFeedProvider.tx.grantRole(parametersAdminRoleId, signer.address); + + for (const [tokenSymbol, tokenAddress] of Object.entries(TOKEN_ADDRESSES_BY_SYMBOL)) { + await priceFeedProvider.tx.setAccountSymbol(tokenAddress, DIA_TOKEN_SYMBOL_BY_PSP22_SYMBOL[tokenSymbol] + '/USD'); + } + + await priceFeedProvider.tx.renounceRole(parametersAdminRoleId, signer.address); + + await priceFeedProvider.tx.grantRole(0, GOVERNOR_ADDRESS); + await priceFeedProvider.tx.renounceRole(0, signer.address); + + process.exit(0); +})().catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/proposals/01/01_proposal_prep.ts b/scripts/proposals/01/01_proposal_prep.ts new file mode 100644 index 0000000..aa5d5ba --- /dev/null +++ b/scripts/proposals/01/01_proposal_prep.ts @@ -0,0 +1,35 @@ +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import { FOUNDATION_ADDRESS } from 'scripts/mainnetDeployment/00_constants'; +import { LENDING_POOL_ADDRESS, PRICE_FEED_PROVIDER_ADDRESS } from 'scripts/proposals/01/consts'; +import InitialPoolConfigProposalDeployer from 'typechain/deployers/initial_pool_config_proposal'; + +const EMERGENCY_ADMIN = FOUNDATION_ADDRESS; + +(async () => { + if (require.main !== module) return; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + const initialConfigProposalContract = ( + await new InitialPoolConfigProposalDeployer(api, signer).new(LENDING_POOL_ADDRESS, PRICE_FEED_PROVIDER_ADDRESS, EMERGENCY_ADMIN) + ).contract; + + console.log(`Initial config proposal address: ${initialConfigProposalContract.address}`); + + process.exit(0); +})().catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/proposals/01/01_proposal_submit.ts b/scripts/proposals/01/01_proposal_submit.ts new file mode 100644 index 0000000..0ae9815 --- /dev/null +++ b/scripts/proposals/01/01_proposal_submit.ts @@ -0,0 +1,78 @@ +import { getArgvObj } from '@abaxfinance/utils'; +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import Keyring from '@polkadot/keyring'; +import chalk from 'chalk'; +import { isEqual } from 'lodash'; +import fetch from 'node-fetch'; +import { GOVERNOR_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import { LENDING_POOL_ADDRESS } from 'scripts/proposals/01/consts'; +import { tryPropose } from 'scripts/proposals/common'; +import { paramsToInputNumbers } from 'tests/paramsHexConversionUtils'; +import GovernorContract from 'typechain/contracts/governor'; +import InitialPoolConfigProposalContract from 'typechain/contracts/initial_pool_config_proposal'; +import LendingPoolContract from 'typechain/contracts/lending_pool'; +import { Transaction } from 'typechain/types-arguments/governor'; +import { GovernErrorBuilder } from 'typechain/types-returns/governor'; + +const INITIAL_POOL_CONFIG_PROPOSAL_ADDRESS = '5FSUbdCB2qpDCkpVDbvR8Kv6yV5TML7Y4Ax5eEVr3emfPHHU'; + +(async (args: Record) => { + if (require.main !== module) return; + const url = (args['url'] as string) ?? process.argv[2] ?? process.env.PWD; + if (!url) throw 'could not determine input path'; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + //fetch from url + const proposalMD = await fetch(url).then((res) => res.text()); + const governor = new GovernorContract(GOVERNOR_ADDRESS, signer, api); + + const proposalHash = (await governor.query.hashDescription(proposalMD)).value.ok!; + + console.log(`Proposal description hash: ${proposalHash}`); + + const initialConfigProposalContract = new InitialPoolConfigProposalContract(INITIAL_POOL_CONFIG_PROPOSAL_ADDRESS, signer, api); + + console.log(`Initial config proposal address: ${initialConfigProposalContract.address}`); + + const lendingPool = new LendingPoolContract(LENDING_POOL_ADDRESS, signer, api); + + const message = lendingPool.abi.findMessage('AccessControl::grant_role'); + const params = paramsToInputNumbers(message.toU8a([0, initialConfigProposalContract.address])); + + const transactions: Transaction[] = [ + { + callee: lendingPool.address, + selector: params.selector, + input: params.data, + transferredValue: 0, + }, + ]; + + const qres = await tryPropose(governor, signer, transactions, proposalHash.toString(), url); + + if (isEqual(GovernErrorBuilder.InsuficientVotes(), qres.err)) { + console.log('Insuficient votes'); + const vABAXBalance = await governor.query.balanceOf(signer.address); + console.log(`vABAX balance: ${vABAXBalance.value.unwrap().toString()}`); + process.exit(0); + } + const res = qres.unwrap(); + + console.log(`Proposal id: ${res.proposalId.toString()}`); + + process.exit(0); +})(getArgvObj()).catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); diff --git a/scripts/proposals/01/consts.ts b/scripts/proposals/01/consts.ts new file mode 100644 index 0000000..18cb83d --- /dev/null +++ b/scripts/proposals/01/consts.ts @@ -0,0 +1,2 @@ +export const LENDING_POOL_ADDRESS = '5HrFwSe1mTneQbArbUH93MFbbkqaSBhohpfnWDCDSQM6N7Jh'; +export const PRICE_FEED_PROVIDER_ADDRESS = '5GjvKx6ur4AFHftAgMLqZyVt6jvzcd6gMVsMBJpdCM4yhbDQ'; diff --git a/scripts/proposals/README.md b/scripts/proposals/README.md new file mode 100644 index 0000000..0154e78 --- /dev/null +++ b/scripts/proposals/README.md @@ -0,0 +1,84 @@ +## README: Submitting a Proposal to Governor and Using `template.ts` + +### Overview + +This guide outlines the process of submitting a proposal to the Abax Governor. The process involves interacting with smart contracts, preparing transactions, and ensuring that proposals meet the necessary requirements before submission. + +### Prerequisites + +Before you begin, ensure you have the following: + +- **Node.js** and **npm** installed. (version specified in .nvmrc) +- A valid **seed phrase** for signing transactions. + +### Instructions + +#### 2. **Install Dependencies** + +Install the necessary dependencies using package manager (npm/pnpm) + +#### 4. **Understanding `template.ts`** + +The `template.ts` script is a template for creating and submitting proposals to the Governor contract. It fetches a proposal's metadata, creates transactions, and submits them to the blockchain. + +Key sections of the script: + +- **Fetching Proposal Metadata:** The script fetches the proposal description from a URL. +- **Creating Transactions:** Transactions are crafted based on the proposal and sent to the Governor contract. +- **Proposal Submission:** The script checks for sufficient votes and submits the proposal if all conditions are met. + +#### 5. **Customizing Transactions** + +Implement the `createTransactions` function in `template.ts` to define the specific transactions you want to include in your proposal: + +```typescript +async function createTransactions(signer: KeyringPair, api: ApiPromise): Promise { + // Example: Granting a role in the lending pool + const lendingPool = new LendingPoolContract(LENDING_POOL_ADDRESS, signer, api); + const message = lendingPool.abi.findMessage('AccessControl::grant_role'); + const params = paramsToInputNumbers(message.toU8a([0, INITIAL_POOL_CONFIG_PROPOSAL_ADDRESS])); + + return [ + { + callee: lendingPool.address, + selector: params.selector, + input: params.data, + transferredValue: 0, + }, + ]; +} + +You might need to create a smart contract that will perform some actions. An example of such instance is available in `initial_pool_config_proposal` folder. +The example relies on governor to grant a role to the Proposal contract which then is able to perform actions on the Lending Pool contract - triggerable by anyone. + +``` + +Replace the example with your specific transaction logic. + +#### 6. **Run the Script** + +Once you have customized the script, execute it with the required arguments: + +```bash +WS_ENDPOINT="wss://ws.azero.dev" SEED="" npx tsx +``` + +Replace `` with the URL where your proposal description is hosted. + +#### 7. **Monitoring the Submission** + +The script will output important information such as the proposal description hash, proposal ID, and any errors encountered during submission. Ensure you review the output for confirmation of a successful submission. + +#### 8. **Handling Errors** + +If the script encounters insufficient votes, it will log this and exit. You may need to acquire additional votes or adjust the proposal before resubmitting. + +### Important Considerations + +- **Security:** Always review the smart contract code and the generated transactions to ensure they perform as intended. +- **Governance Rules:** Ensure that your proposal aligns with the governance model and has the required support within the community before submission. +- **Environment:** Test the script in a development environment before deploying on the mainnet to avoid costly mistakes. + +### Conclusion + +By following this guide, you should be able to effectively submit governance proposals to the Abax protocol using `template.ts`. Customize the transactions to meet your specific needs and ensure that all prerequisites are in place before executing the script. diff --git a/scripts/proposals/common.ts b/scripts/proposals/common.ts new file mode 100644 index 0000000..457c0fc --- /dev/null +++ b/scripts/proposals/common.ts @@ -0,0 +1,25 @@ +import { Result, ResultBuilder } from '@c-forge/typechain-types'; +import { KeyringPair } from '@polkadot/keyring/types'; +import BN from 'bn.js'; +import GovernorContract from 'typechain/contracts/governor'; +import { Transaction } from 'typechain/types-arguments/governor'; +import { GovernError } from 'typechain/types-returns/governor'; + +export async function tryPropose( + governor: GovernorContract, + proposer: KeyringPair, + transactions: Transaction[], + descriptionHash: string, + descriptionUrl: string, + earliestExecution: number | null = null, +): Promise> { + try { + const query = await governor.withSigner(proposer).query.propose({ descriptionUrl, descriptionHash, transactions, earliestExecution }); + query.value.unwrapRecursively(); + const tx = await governor.withSigner(proposer).tx.propose({ descriptionUrl, descriptionHash, transactions, earliestExecution }); + const event = tx.events?.find((e) => e.name.includes('ProposalCreated'))?.args; + return ResultBuilder.Ok({ proposalId: new BN(event.proposalId.toString()) }); + } catch (e: any) { + return ResultBuilder.Err(e); + } +} diff --git a/scripts/proposals/template.ts b/scripts/proposals/template.ts new file mode 100644 index 0000000..00c0a43 --- /dev/null +++ b/scripts/proposals/template.ts @@ -0,0 +1,73 @@ +import { getArgvObj } from '@abaxfinance/utils'; +import { getApiProviderWrapper } from '@c-forge/polkahat-network-helpers'; +import { ApiPromise } from '@polkadot/api'; +import Keyring from '@polkadot/keyring'; +import { KeyringPair } from '@polkadot/keyring/types'; +import chalk from 'chalk'; +import { isEqual } from 'lodash'; +import fetch from 'node-fetch'; +import { GOVERNOR_ADDRESS } from 'scripts/mainnetDeployment/utils'; +import { tryPropose } from 'scripts/proposals/common'; +import { paramsToInputNumbers } from 'tests/paramsHexConversionUtils'; +import GovernorContract from 'typechain/contracts/governor'; +import InitialPoolConfigProposalContract from 'typechain/contracts/initial_pool_config_proposal'; +import LendingPoolContract from 'typechain/contracts/lending_pool'; +import { Transaction } from 'typechain/types-arguments/governor'; +import { GovernErrorBuilder } from 'typechain/types-returns/governor'; + +const LENDING_POOL_ADDRESS = '5E6Z623CywgZ1tCSGcH5Aeqn588y95A8tPB6GxQBtwcbhs8d'; +const INITIAL_POOL_CONFIG_PROPOSAL_ADDRESS = '5GSagDBrTg1Eghqoj4xhSJWx14LLEitj7ki5QN1gikDMFTUL'; + +(async (args: Record) => { + if (require.main !== module) return; + const url = (args['url'] as string) ?? process.argv[2] ?? process.env.PWD; + if (!url) throw 'could not determine input path'; + const wsEndpoint = process.env.WS_ENDPOINT; + if (!wsEndpoint) throw 'could not determine wsEndpoint'; + const seed = process.env.SEED; + if (!seed) throw 'could not determine seed'; + const api = await getApiProviderWrapper(wsEndpoint).getAndWaitForReady(); + + const timestamp = await api.query.timestamp.now(); + console.log(new Date(parseInt(timestamp.toString()))); + + const keyring = new Keyring(); + const signer = keyring.createFromUri(seed, {}, 'sr25519'); + + //fetch from url + const proposalMD = await fetch(url).then((res) => res.text()); + const governor = new GovernorContract(GOVERNOR_ADDRESS, signer, api); + + const proposalHash = (await governor.query.hashDescription(proposalMD)).value.ok!; + + console.log(`Proposal description hash: ${proposalHash}`); + + const transactions: Transaction[] = await createTransactions(signer, api); + + if (transactions.length === 0) { + console.log('No transactions to propose'); + process.exit(0); + } + + const qres = await tryPropose(governor, signer, transactions, proposalHash.toString(), url); + + if (isEqual(GovernErrorBuilder.InsuficientVotes(), qres.err)) { + console.log('Insuficient votes'); + const vABAXBalance = await governor.query.balanceOf(signer.address); + console.log(`vABAX balance: ${vABAXBalance.value.unwrap().toString()}`); + process.exit(0); + } + const res = qres.unwrap(); + + console.log(`Proposal id: ${res.proposalId.toString()}`); + + process.exit(0); +})(getArgvObj()).catch((e) => { + console.log(e); + console.error(chalk.red(JSON.stringify(e, null, 2))); + process.exit(1); +}); +async function createTransactions(signer: KeyringPair, api: ApiPromise): Promise { + //TODO: Implement this function + return []; +} diff --git a/scripts/protocolDeploymentTest.ts b/scripts/protocolDeploymentTest.ts index 33482cc..eb266c0 100755 --- a/scripts/protocolDeploymentTest.ts +++ b/scripts/protocolDeploymentTest.ts @@ -22,7 +22,6 @@ import { roleToSelectorId } from 'tests/misc'; import ATokenContract from 'typechain/contracts/a_token'; import LendingPoolContract from 'typechain/contracts/lending_pool'; import PriceFeedProviderContract from 'typechain/contracts/price_feed_provider'; -import Psp22ForAuditContract from 'typechain/contracts/psp22_for_audit'; import VTokenContract from 'typechain/contracts/v_token'; import ATokenDeployer from 'typechain/deployers/a_token'; import AbaxTgeDeployer from 'typechain/deployers/abax_tge'; @@ -33,7 +32,6 @@ import GovernorDeployer from 'typechain/deployers/abax_governor'; import LendingPoolDeployer from 'typechain/deployers/lending_pool'; import PriceFeedProviderDeployer from 'typechain/deployers/price_feed_provider'; import Psp22EmitableDeployer from 'typechain/deployers/psp22_emitable'; -import Psp22ForAuditDeployer from 'typechain/deployers/psp22_for_audit'; import VTokenDeployer from 'typechain/deployers/v_token'; import VesterDeployer from 'typechain/deployers/abax_vester'; import WazeroDeployer from 'typechain/deployers/wazero'; diff --git a/src/contracts/abax_governor/subscan_verify.json b/src/contracts/abax_governor/subscan_verify.json deleted file mode 100644 index e06c99c..0000000 --- a/src/contracts/abax_governor/subscan_verify.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_governor\"\nversion = \"1.0.0\"\ndependencies = [\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc\"\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125\"\n\n[[package]]\nname = \"either\"\nversion = \"1.13.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d\"\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.1\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.155\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ccb76662d78edc9f9bf56360d6919bdacc8b7761227727e5082f128eeb90bbf5\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f8dccda732e04fa3baf2e17cf835bfe2601c7c2edafd64417c627dabae3a8cda\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.19\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.20\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04\"\ndependencies = [\n \"zerocopy\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"3.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284\"\ndependencies = [\n \"toml_edit 0.21.1\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.86\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.36\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.23\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.23\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.204\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.204\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.29.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.122\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da\"\ndependencies = [\n \"itoa\",\n \"memchr\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.6.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.72\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.63\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.63\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.21.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.40\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a5cbf750400958819fb6178eaa83bee5cd9c29a26a40cc241df8c70fdd46984\"\n\n[[package]]\nname = \"zerocopy\"\nversion = \"0.7.35\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0\"\ndependencies = [\n \"byteorder\",\n \"zerocopy-derive\",\n]\n\n[[package]]\nname = \"zerocopy-derive\"\nversion = \"0.7.35\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.8.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_governor\"\nversion = \"1.0.0\"\nauthors = [\"[your_name] <[your_email]>\"]\nedition = \"2021\"\n\n[dependencies]\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n \"chain-error\",\n] }\nink = { version = \"5.0.0\", default-features = false }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"psp22_impl\",\n \"psp22_vault_impl\",\n \"psp22_metadata_impl\",\n \"access_control_impl\",\n \"general_vest_impl\",\n \"provide_vest_schedule_info\",\n \"set_code_hash_impl\",\n] }\n\nethnum = { version = \"1.5\", default-features = false }\n\n\n[dev-dependencies]\n\n[lib]\npath = \"lib.rs\"\n\n[features]\ndefault = [\"std\"]\nstd = [\"ink/std\", \"scale/std\", \"scale-info/std\", \"pendzl/std\"]\nink-as-dependency = []\ne2e-tests = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "lib.rs":"#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\nmod modules;\n/// This is AbaxGovernor Contract implementation.\n/// It allows for staking PSP22 token (Abax token) in exchange for PSP22Vault shares (votes).\n/// The shares are non-transferrable.\n/// Withdrawing assets is possible only after unstake period - unstaking is handled by GeneralVest contract.\n///\n/// The contract allows for proposing and voting on proposals by implementing Govern trait.\n/// To create a proposal, the proposer must have enough votes (shares) to meet the minimum stake part.\n/// While proposal is created the proposer must deposit a part of his votes. This votes are returned when proposal is finalized unless the proposal is finalized with 'DefeatedWithSlash' status.\n/// One share is one vote.\n/// Proposal has 3 periods of voting: Intial, Flat and Final which influence the minimum votes to finalize.\n/// If proposal was finalized in Final phase, it's possible to force unstake an account that didn't vote on that proposal.\n///\n/// Contract is using pendzl Access Control to manage access to the messages\n\n#[pendzl::implementation(PSP22, PSP22Vault, PSP22Metadata, AccessControl, SetCodeHash)]\n#[ink::contract]\nmod abax_governor {\n pub use crate::modules::govern::{\n helpers::{\n finalization::minimum_to_finalize,\n hashes::{hash_description, hash_proposal},\n },\n storage::{\n govern_storage_item::GovernData, locked_shares_storage_item::LockedSharesData,\n unstake_storage_item::UnstakeData, vault_counter_storage_item::VaultCounterData,\n },\n traits::{\n AbaxGovern, AbaxGovernInternal, AbaxGovernManage, AbaxGovernView, GovernError,\n OpaqueTypes, Proposal, ProposalCreated, ProposalExecuted, ProposalFinalized,\n ProposalHash, ProposalId, ProposalState, ProposalStatus, UnstakePeriodChanged,\n UserVote, Vote, VoteCasted, VotingRules, VotingRulesChanged,\n },\n };\n use ink::codegen::TraitCallBuilder;\n pub use ink::{\n codegen::Env,\n env::DefaultEnvironment,\n prelude::string::{String, ToString},\n ToAccountId,\n };\n\n pub use pendzl::{\n contracts::{\n access_control::RoleType,\n general_vest::{\n ExternalTimeConstraint, GeneralVest, ProvideVestScheduleInfo, VestingSchedule,\n },\n psp22::{vault::PSP22VaultInternalDefaultImpl, *},\n },\n math::operations::mul_div,\n traits::Flush,\n };\n\n pub const EXECUTOR: RoleType = ink::selector_id!(\"EXECUTOR\");\n pub const PARAMETERS_ADMIN: RoleType = ink::selector_id!(\"PARAMETERS_ADMIN\"); // 368_001_360_u32\n\n #[derive(StorageFieldGetter)]\n #[ink(storage)]\n pub struct AbaxGovernor {\n // pendzl storage fields\n #[storage_field]\n access_control: AccessControlData,\n #[storage_field]\n psp22: PSP22Data,\n #[storage_field]\n vault: PSP22VaultData,\n #[storage_field]\n metadata: PSP22MetadataData,\n // non-pendzl storage fields\n #[storage_field]\n govern: GovernData,\n #[storage_field]\n counter: VaultCounterData,\n #[storage_field]\n lock: LockedSharesData,\n #[storage_field]\n unstake: UnstakeData,\n }\n\n #[overrider(PSP22VaultInternal)]\n fn _deposit(\n &mut self,\n caller: &AccountId,\n receiver: &AccountId,\n assets: &Balance,\n shares: &Balance,\n ) -> Result<(), PSP22Error> {\n self.counter.increase_counter(*shares);\n self.govern.set_last_stake_timestamp(receiver);\n self._deposit_default_impl(caller, receiver, assets, shares)?;\n\n Ok(())\n }\n\n #[overrider(PSP22VaultInternal)]\n fn _withdraw(\n &mut self,\n caller: &AccountId,\n receiver: &AccountId,\n owner: &AccountId,\n assets: &Balance,\n shares: &Balance,\n ) -> Result<(), PSP22Error> {\n if *caller != *owner && *caller != self.env().account_id() {\n self._decrease_allowance_from_to(owner, caller, shares)?;\n }\n\n self._burn_from(owner, shares)?;\n\n if self._balance_of(owner) == 0 {\n self.govern.remove_last_stake_timestamp(owner);\n }\n\n self.vault\n .asset()\n .call_mut()\n .approve(self.unstake.general_vester().to_account_id(), *assets)\n .call_v1()\n .invoke()?;\n\n match self\n .unstake\n .general_vester()\n .call_mut()\n .create_vest(\n *receiver,\n Some(self.vault.asset().to_account_id()),\n *assets,\n VestingSchedule::External(ExternalTimeConstraint {\n account: self.env().account_id(),\n fallback_values: (self.unstake.unstake_period(), 0),\n }),\n Vec::::new(),\n )\n .call_v1()\n .invoke()\n {\n Ok(_) => {}\n Err(_) => {\n return Err(PSP22Error::Custom(\n \"Failed during create vest call\".to_string(),\n ))\n }\n }\n\n ink::env::emit_event::(Withdraw {\n sender: *caller,\n receiver: *receiver,\n owner: *owner,\n assets: *assets,\n shares: *shares,\n });\n Ok(())\n }\n\n #[overrider(PSP22)]\n fn transfer(&mut self, to: AccountId, value: Balance, data: Vec) -> Result<(), PSP22Error> {\n Err(PSP22Error::Custom(\"Untransferrable\".to_string()))\n }\n\n #[overrider(PSP22)]\n fn transfer_from(\n &mut self,\n from: AccountId,\n to: AccountId,\n value: Balance,\n data: Vec,\n ) -> Result<(), PSP22Error> {\n Err(PSP22Error::Custom(\"Untransferrable\".to_string()))\n }\n\n impl AbaxGovernor {\n #[allow(clippy::too_many_arguments)]\n #[ink(constructor)]\n pub fn new(\n asset: AccountId,\n vester: AccountId,\n foundation: AccountId,\n parameters_admin: Option,\n unstake_period: Timestamp,\n name: String,\n symbol: String,\n rules: VotingRules,\n ) -> Result {\n _ensure_voting_rules_and_unstake_period_are_valid(&rules, unstake_period)?;\n\n let mut instance = Self {\n access_control: AccessControlData::new(Some(Self::env().account_id())),\n psp22: PSP22Data::default(),\n vault: PSP22VaultData::new(asset, None),\n metadata: PSP22MetadataData::new(Some(name), Some(symbol)),\n govern: GovernData::new(&rules),\n counter: VaultCounterData::default(),\n lock: LockedSharesData::default(),\n unstake: UnstakeData::new(vester, unstake_period),\n };\n\n if let Some(admin) = parameters_admin {\n instance._grant_role(PARAMETERS_ADMIN, Some(admin))?;\n }\n\n instance._grant_role(EXECUTOR, Some(foundation))?;\n Ok(instance)\n }\n }\n\n impl AbaxGovern for AbaxGovernor {\n #[ink(message)]\n fn propose(&mut self, proposal: Proposal) -> Result {\n self._propose(&self.env().caller(), &proposal)\n }\n\n #[ink(message)]\n fn finalize(&mut self, proposal_id: ProposalId) -> Result<(), GovernError> {\n self._finalize(&proposal_id)\n }\n\n #[ink(message)]\n fn execute(&mut self, proposal: Proposal) -> Result<(), GovernError> {\n self._ensure_has_role(EXECUTOR, Some(self.env().caller()))?;\n self._execute(&proposal)\n }\n\n #[ink(message)]\n fn vote(\n &mut self,\n proposal_id: ProposalId,\n vote: Vote,\n _reason: Vec,\n ) -> Result<(), GovernError> {\n self._cast_vote(&self.env().caller(), proposal_id, vote, _reason)\n }\n\n #[ink(message)]\n fn force_unstake(\n &mut self,\n account: AccountId,\n proposal_id: ProposalId,\n ) -> Result<(), GovernError> {\n self._force_unstake(&account, &proposal_id)?;\n Ok(())\n }\n }\n\n impl AbaxGovernManage for AbaxGovernor {\n #[ink(message)]\n fn change_voting_rules(&mut self, rules: VotingRules) -> Result<(), GovernError> {\n _ensure_voting_rules_and_unstake_period_are_valid(\n &rules,\n self.unstake.unstake_period(),\n )?;\n self._ensure_has_role(PARAMETERS_ADMIN, Some(self.env().caller()))?;\n self.govern.change_rule(&rules);\n ink::env::emit_event::(VotingRulesChanged {\n rules,\n });\n Ok(())\n }\n\n #[ink(message)]\n fn change_unstake_period(&mut self, period: Timestamp) -> Result<(), GovernError> {\n _ensure_voting_rules_and_unstake_period_are_valid(&self.rules(), period)?;\n self._ensure_has_role(PARAMETERS_ADMIN, Some(self.env().caller()))?;\n self.unstake.set_unstake_period(period);\n ink::env::emit_event::(\n UnstakePeriodChanged {\n unstake_period: period,\n },\n );\n Ok(())\n }\n }\n\n impl AbaxGovernView for AbaxGovernor {\n #[ink(message)]\n fn vester(&self) -> AccountId {\n self.unstake.general_vester().to_account_id()\n }\n\n #[ink(message)]\n fn hash(&self, proposal: Proposal) -> ProposalHash {\n hash_proposal(&proposal)\n }\n\n #[ink(message)]\n fn hash_description(&self, description: String) -> Hash {\n hash_description(&description)\n }\n\n #[ink(message)]\n fn hash_by_id(&self, proposal_id: ProposalId) -> Option {\n self.govern.proposal_id_to_hash(&proposal_id)\n }\n\n #[ink(message)]\n fn rules(&self) -> VotingRules {\n self.govern.rules()\n }\n\n #[ink(message)]\n fn status(&self, proposal_id: ProposalId) -> Option {\n self.govern.state_of(&proposal_id).map(|state| state.status)\n }\n\n #[ink(message)]\n fn minimum_to_finalize(&self, proposal_id: ProposalId) -> Option {\n let state = match self.govern.state_of(&proposal_id) {\n Some(state) => state,\n None => return None,\n };\n\n if state.status != ProposalStatus::Active {\n return None;\n }\n\n Some(\n minimum_to_finalize(\n &state,\n &self.rules(),\n ink::env::block_timestamp::(),\n self.counter.counter(),\n )\n .unwrap(),\n )\n }\n\n #[ink(message)]\n fn state(&self, proposal_id: ProposalId) -> Option {\n self.govern.state_of(&proposal_id)\n }\n\n #[ink(message)]\n fn vote_of_for(&self, account: AccountId, proposal_id: ProposalId) -> Option {\n self.govern.vote_of_for(&account, &proposal_id)\n }\n\n #[ink(message)]\n fn last_force_unstakes(&self, account: AccountId) -> Option {\n self.govern.last_force_unstake(&account)\n }\n\n #[ink(message)]\n fn last_stake_timestamp(&self, account: AccountId) -> Option {\n self.govern.last_stake_timestamp(&account)\n }\n\n #[ink(message)]\n fn active_proposals(&self) -> u32 {\n self.govern.active_proposals()\n }\n\n #[ink(message)]\n fn finalized_proposals(&self) -> u32 {\n self.govern.finalized_proposals()\n }\n\n #[ink(message)]\n fn executed_proposals(&self) -> u32 {\n self.govern.executed_proposals()\n }\n\n #[ink(message)]\n fn next_proposal_id(&self) -> ProposalId {\n self.govern.next_proposal_id()\n }\n #[ink(message)]\n fn description_url_by_proposal_id(&self, proposal_id: ProposalId) -> Option {\n self.govern.proposal_id_to_description_url(&proposal_id)\n }\n #[ink(message)]\n fn description_hash_by_proposal_id(&self, proposal_id: ProposalId) -> Option {\n self.govern.proposal_id_to_description_hash(&proposal_id)\n }\n }\n\n impl AbaxGovernInternal for AbaxGovernor {\n fn _propose(\n &mut self,\n proposer: &AccountId,\n proposal: &Proposal,\n ) -> Result {\n //check if the proposer has enough votes to create a proposal\n let total_votes = self._total_supply();\n let minimum_votes_to_propose = mul_div(\n total_votes,\n u128::from(self.govern.rules().minimum_stake_part_e3),\n 1000,\n Rounding::Down,\n )?;\n\n let proposer_votes = self._balance_of(proposer);\n if proposer_votes < minimum_votes_to_propose {\n return Err(GovernError::InsuficientVotes);\n }\n let proposal_hash = hash_proposal(proposal);\n\n // make a proposer deposit\n let proposer_deposit = mul_div(\n minimum_votes_to_propose,\n self.govern.rules().proposer_deposit_part_e3 as u128,\n 1000,\n Rounding::Down,\n )?;\n // create proposal\n let proposal_id = self.govern.register_new_proposal(\n proposer,\n &proposal_hash,\n proposal.earliest_execution,\n &proposal.description_url,\n &proposal.description_hash,\n total_votes,\n self.counter.counter(),\n )?;\n\n self.lock.lock(&proposal_id, proposer_deposit)?;\n\n self._transfer(proposer, &self.env().account_id(), &proposer_deposit)?;\n\n ink::env::emit_event::(ProposalCreated {\n proposal_id,\n proposal_hash,\n proposal: proposal.clone(),\n });\n Ok(proposal_id)\n }\n\n fn _cast_vote(\n &mut self,\n voter: &AccountId,\n proposal_id: ProposalId,\n vote: Vote,\n #[allow(unused_variables)] reason: Vec,\n ) -> Result<(), GovernError> {\n let voter_votes = {\n let balance = self._balance_of(voter);\n let locked = self.lock.locked(&proposal_id);\n let proposer = self\n .govern\n .state_of(&proposal_id)\n .ok_or(GovernError::ProposalDoesntExist)?\n .proposer;\n if self.env().caller() == proposer {\n balance.checked_add(locked).ok_or(MathError::Overflow)?\n } else {\n balance\n }\n };\n\n self.govern\n .update_vote_of_for(voter, &proposal_id, &vote, &voter_votes)?;\n\n ink::env::emit_event::(VoteCasted {\n account: *voter,\n proposal_id,\n vote,\n });\n\n Ok(())\n }\n\n fn _finalize(&mut self, proposal_id: &ProposalId) -> Result<(), GovernError> {\n let status = self.govern.finalize(proposal_id, self.counter.counter())?;\n\n // return the proposer deposit if proposal was not 'DefeatedWithSlash'\n if status != ProposalStatus::DefeatedWithSlash {\n let locked = self.lock.locked(proposal_id);\n self.lock.unlock(proposal_id, locked)?;\n self._transfer(\n &self.env().account_id(),\n &self.govern.state_of(proposal_id).unwrap().proposer,\n &locked,\n )?;\n }\n\n ink::env::emit_event::(ProposalFinalized {\n proposal_id: *proposal_id,\n status,\n });\n Ok(())\n }\n\n fn _execute(&mut self, proposal: &Proposal) -> Result<(), GovernError> {\n let proposal_hash = hash_proposal(proposal);\n\n let proposal_id = &self\n .govern\n .proposal_hash_to_id(&proposal_hash)\n .ok_or(GovernError::ProposalDoesntExist)?;\n\n self.govern.mark_as_executed(proposal_id)?;\n\n for tx in &proposal.transactions {\n self.flush();\n\n // let call = tx.clone().build_call();\n let call = ink::env::call::build_call::()\n .call_v1(tx.callee)\n .transferred_value(tx.transferred_value)\n .call_flags(ink::env::CallFlags::ALLOW_REENTRY)\n .exec_input(\n ink::env::call::ExecutionInput::new(tx.selector.into())\n .push_arg(OpaqueTypes(tx.input.clone())),\n )\n .returns::()\n .try_invoke();\n match call {\n Ok(contract_res) => match contract_res {\n Ok(_) => Ok(()),\n Err(e) => Err(GovernError::UnderlyingTransactionReverted(\n ink::prelude::format!(\"{:?}\", e),\n )),\n },\n Err(e) => match e {\n ink::env::Error::Decode(err) => {\n Err(GovernError::UnderlyingTransactionReverted(\n ink::prelude::format!(\"Decode Error: {:?}\", err),\n ))\n }\n _ => Err(GovernError::UnderlyingTransactionReverted(\n ink::prelude::format!(\"{:?}\", e),\n )),\n },\n }?;\n self.load();\n }\n\n ink::env::emit_event::(ProposalExecuted {\n proposal_id: *proposal_id,\n });\n\n Ok(())\n }\n\n fn _force_unstake(\n &mut self,\n account: &AccountId,\n proposal_id: &ProposalId,\n ) -> Result<(), GovernError> {\n self.govern.force_unstake(account, proposal_id)?;\n let balance = self._balance_of(account);\n let assets = self._preview_redeem(&balance)?;\n self._withdraw(\n &self.env().account_id(),\n account,\n account,\n &assets,\n &balance,\n )?;\n\n Ok(())\n }\n }\n\n impl ProvideVestScheduleInfo for AbaxGovernor {\n #[ink(message)]\n fn get_waiting_and_vesting_durations(&self) -> (Timestamp, Timestamp) {\n (self.unstake.unstake_period(), 0)\n }\n }\n\n fn _ensure_voting_rules_and_unstake_period_are_valid(\n rules: &VotingRules,\n unstake_period: Timestamp,\n ) -> Result<(), GovernError> {\n if rules\n .initial_period\n .checked_add(rules.flat_period)\n .ok_or(MathError::Overflow)?\n .checked_add(rules.final_period)\n .ok_or(MathError::Overflow)?\n > unstake_period\n {\n return Err(GovernError::UnstakeShorterThanVotingPeriod);\n }\n Ok(())\n }\n}\n", - "modules/govern/helpers/finalization.rs":"use pendzl::{\n math::errors::MathError,\n traits::{Balance, Timestamp},\n};\n\nuse crate::modules::govern::{\n helpers::mul_div::mul_div_r_down,\n traits::{ProposalState, VotingRules},\n};\n\npub fn minimum_to_finalize(\n state: &ProposalState,\n rules: &VotingRules,\n now: Timestamp,\n current_counter: u128,\n) -> Result {\n let initial_period_end = state\n .start\n .checked_add(rules.initial_period)\n .ok_or(MathError::Overflow)?;\n let flat_period_end = initial_period_end\n .checked_add(rules.flat_period)\n .ok_or(MathError::Overflow)?;\n let final_period_end = flat_period_end\n .checked_add(rules.final_period)\n .ok_or(MathError::Overflow)?;\n\n let counter_diff = current_counter.overflowing_sub(state.counter_at_start).0;\n let total_votes = state\n .votes_at_start\n .checked_add(counter_diff)\n .ok_or(MathError::Overflow)?;\n\n //print all of args and above\n\n let half_total_votes = total_votes.checked_div(2).ok_or(MathError::DivByZero)?;\n\n Ok(if now <= initial_period_end {\n let time_in_initial_period = initial_period_end\n .checked_sub(now)\n .ok_or(MathError::Underflow)? as u128;\n let over_half = mul_div_r_down(\n half_total_votes,\n time_in_initial_period,\n rules.initial_period as u128,\n )?;\n half_total_votes\n .checked_add(over_half)\n .ok_or(MathError::Overflow)?\n } else if now <= flat_period_end {\n half_total_votes\n } else if now <= final_period_end {\n let time_in_final_period = final_period_end\n .checked_sub(now)\n .ok_or(MathError::Underflow)? as u128;\n mul_div_r_down(\n half_total_votes,\n time_in_final_period,\n rules.final_period as u128,\n )?\n } else {\n 0\n })\n}\n", - "modules/govern/helpers/hashes.rs":"pub use ink::{\n env::hash::{HashOutput, Sha2x256},\n prelude::{string::String, vec::Vec},\n primitives::Hash,\n};\n\npub use crate::modules::govern::traits::Proposal;\n\npub fn hash_description(description: &String) -> Hash {\n let mut output = ::Type::default();\n ink::env::hash_bytes::(description.as_bytes(), &mut output);\n output.into()\n}\npub fn hash_proposal(proposal: &Proposal) -> Hash {\n let mut hash_data: Vec = Vec::new();\n\n hash_data.append(&mut scale::Encode::encode(&proposal));\n\n let mut output = ::Type::default();\n ink::env::hash_bytes::(&hash_data, &mut output);\n output.into()\n}\n", - "modules/govern/helpers/mod.rs":"pub mod finalization;\npub mod hashes;\npub mod mul_div;\n", - "modules/govern/helpers/mul_div.rs":"use ethnum::U256;\nuse pendzl::math::errors::MathError;\n\npub fn mul_div_r_down(x: u128, y: u128, denominator: u128) -> Result {\n if denominator == 0 {\n return Err(MathError::DivByZero);\n }\n\n if x == 0 || y == 0 {\n return Ok(0);\n }\n\n let x_u256 = U256::from(x);\n let y_u256 = U256::from(y);\n let denominator_u256 = U256::from(denominator);\n\n // this can not overflow\n let mul_u256 = x_u256.checked_mul(y_u256).unwrap();\n // denom is not 0\n let res_u256: U256 = mul_u256.checked_div(denominator_u256).unwrap();\n let res = match u128::try_from(res_u256) {\n Ok(v) => Ok(v),\n _ => Err(MathError::Overflow)?,\n }?;\n\n Ok(res)\n}\n", - "modules/govern/mod.rs":"pub mod helpers;\npub mod storage;\npub mod traits;\n", - "modules/govern/storage/govern_storage_item.rs":"use ink::{\n env::DefaultEnvironment, prelude::string::ToString, primitives::AccountId, storage::Mapping,\n};\nuse pendzl::{\n math::errors::MathError,\n traits::{Balance, Hash, String, Timestamp},\n};\n\nuse crate::modules::govern::{\n helpers::finalization::minimum_to_finalize,\n traits::{GovernError, ProposalId, ProposalState, ProposalStatus, UserVote, Vote, VotingRules},\n};\n\n#[derive(Debug)]\n#[pendzl::storage_item]\npub struct GovernData {\n #[lazy]\n rules: VotingRules,\n #[lazy]\n active_proposals: u32,\n #[lazy]\n finalized_proposals: u32,\n #[lazy]\n executed_proposals: u32,\n #[lazy]\n next_proposal_id: ProposalId,\n proposal_id_to_hash: Mapping,\n proposal_id_to_description_url: Mapping,\n proposal_id_to_description_hash: Mapping,\n proposal_hash_to_id: Mapping,\n state: Mapping,\n votes: Mapping<(AccountId, ProposalId), UserVote>,\n /// Last time when the user staked and had no stake before, when user has no stake it should be None.\n last_stake_timestamp: Mapping,\n /// Last proposal that account didnt vote and was in consequence force unstaked\n last_force_unstake: Mapping,\n}\n\nimpl GovernData {\n pub fn new(rules: &VotingRules) -> Self {\n let mut instance = Self {\n rules: Default::default(),\n active_proposals: Default::default(),\n finalized_proposals: Default::default(),\n executed_proposals: Default::default(),\n next_proposal_id: Default::default(),\n proposal_id_to_hash: Default::default(),\n proposal_id_to_description_url: Default::default(),\n proposal_id_to_description_hash: Default::default(),\n proposal_hash_to_id: Default::default(),\n state: Default::default(),\n votes: Default::default(),\n last_stake_timestamp: Default::default(),\n last_force_unstake: Default::default(),\n };\n instance.rules.set(rules);\n instance\n }\n\n pub fn set_last_stake_timestamp(&mut self, account: &AccountId) {\n let timestamp = ink::env::block_timestamp::();\n if self.last_stake_timestamp(account).is_some() {\n return;\n }\n self.last_stake_timestamp.insert(account, ×tamp);\n }\n pub fn remove_last_stake_timestamp(&mut self, account: &AccountId) {\n self.last_stake_timestamp.remove(account);\n }\n pub fn last_stake_timestamp(&self, account: &AccountId) -> Option {\n self.last_stake_timestamp.get(account)\n }\n pub fn last_force_unstake(&self, account: &AccountId) -> Option {\n self.last_force_unstake.get(account)\n }\n\n pub fn rules(&self) -> VotingRules {\n self.rules.get().unwrap_or_default()\n }\n\n pub fn change_rule(&mut self, rules: &VotingRules) {\n self.rules.set(rules);\n }\n\n pub fn active_proposals(&self) -> u32 {\n self.active_proposals.get().unwrap_or_default()\n }\n\n pub fn finalized_proposals(&self) -> u32 {\n self.finalized_proposals.get().unwrap_or_default()\n }\n\n pub fn executed_proposals(&self) -> u32 {\n self.executed_proposals.get().unwrap_or_default()\n }\n\n pub fn next_proposal_id(&self) -> ProposalId {\n self.next_proposal_id.get().unwrap_or_default()\n }\n\n pub fn proposal_id_to_hash(&self, proposal_id: &ProposalId) -> Option {\n self.proposal_id_to_hash.get(proposal_id)\n }\n\n pub fn proposal_hash_to_id(&self, proposal_hash: &Hash) -> Option {\n self.proposal_hash_to_id.get(proposal_hash)\n }\n pub fn proposal_id_to_description_url(&self, proposal_id: &ProposalId) -> Option {\n self.proposal_id_to_description_url.get(proposal_id)\n }\n pub fn proposal_id_to_description_hash(&self, proposal_id: &ProposalId) -> Option {\n self.proposal_id_to_description_hash.get(proposal_id)\n }\n\n #[allow(clippy::too_many_arguments)]\n pub fn register_new_proposal(\n &mut self,\n proposer: &AccountId,\n proposal_hash: &Hash,\n earliest_execution: Option,\n description_url: &String,\n description_hash: &Hash,\n votes_at_start: Balance,\n counter_at_start: u128,\n ) -> Result {\n if self.proposal_hash_to_id(proposal_hash).is_some() {\n return Err(GovernError::ProposalAlreadyExists);\n }\n\n let proposal_id = self.next_proposal_id();\n self.next_proposal_id\n .set(&(proposal_id.checked_add(1).ok_or(MathError::Overflow)?));\n\n self.proposal_id_to_hash.insert(proposal_id, proposal_hash);\n self.proposal_hash_to_id.insert(proposal_hash, &proposal_id);\n self.proposal_id_to_description_url\n .insert(proposal_id, &description_url.to_string());\n self.proposal_id_to_description_hash\n .insert(proposal_id, description_hash);\n\n self.state.insert(\n proposal_id,\n &ProposalState {\n status: ProposalStatus::Active,\n force_unstake_possible: false,\n proposer: *proposer,\n start: ink::env::block_timestamp::(),\n counter_at_start,\n votes_at_start,\n finalized: None,\n votes_for: 0,\n votes_against: 0,\n votes_against_with_slash: 0,\n earliest_execution,\n },\n );\n\n self.active_proposals.set(\n &(self\n .active_proposals()\n .checked_add(1)\n .ok_or(MathError::Overflow)?),\n );\n\n Ok(proposal_id)\n }\n\n pub fn finalize(\n &mut self,\n proposal_id: &ProposalId,\n current_counter: u128,\n ) -> Result {\n let mut state = self\n .state_of(proposal_id)\n .ok_or(GovernError::ProposalDoesntExist)?;\n\n if state.status != ProposalStatus::Active {\n return Err(GovernError::WrongStatus);\n }\n let now = ink::env::block_timestamp::();\n\n let minimum_to_finalize = minimum_to_finalize(&state, &self.rules(), now, current_counter)?;\n\n if state\n .votes_against\n .checked_add(state.votes_against_with_slash)\n .ok_or(MathError::Overflow)?\n < minimum_to_finalize\n && state.votes_for < minimum_to_finalize\n {\n return Err(GovernError::FinalizeCondition);\n }\n\n if state\n .votes_against\n .checked_add(state.votes_against_with_slash)\n .ok_or(MathError::Overflow)?\n >= state.votes_for\n {\n if state.votes_against_with_slash\n > state\n .votes_against\n .checked_add(state.votes_for)\n .ok_or(MathError::Overflow)?\n {\n state.status = ProposalStatus::DefeatedWithSlash;\n } else {\n state.status = ProposalStatus::Defeated;\n }\n } else if state.votes_for\n > state\n .votes_against\n .checked_add(state.votes_against_with_slash)\n .ok_or(MathError::Overflow)?\n {\n state.status = ProposalStatus::Succeeded;\n } else {\n state.status = ProposalStatus::Defeated;\n }\n\n let initital_plus_flat_duration = self\n .rules()\n .initial_period\n .checked_add(self.rules().flat_period)\n .ok_or(MathError::Overflow)?;\n\n let is_post_flat_period = now\n >= state\n .start\n .checked_add(initital_plus_flat_duration)\n .ok_or(MathError::Overflow)?;\n if is_post_flat_period {\n state.force_unstake_possible = true;\n }\n\n state.finalized = Some(now);\n\n self.state.insert(proposal_id, &state);\n self.active_proposals.set(\n &(self\n .active_proposals()\n .checked_sub(1)\n .ok_or(MathError::Overflow)?),\n );\n self.finalized_proposals.set(\n &(self\n .finalized_proposals()\n .checked_add(1)\n .ok_or(MathError::Overflow)?),\n );\n\n Ok(state.status)\n }\n\n pub fn mark_as_executed(&mut self, proposal_id: &ProposalId) -> Result<(), GovernError> {\n let mut state = self\n .state_of(proposal_id)\n .ok_or(GovernError::ProposalDoesntExist)?;\n if state.earliest_execution.unwrap_or_default()\n > ink::env::block_timestamp::()\n {\n return Err(GovernError::TooEarlyToExecuteProposal);\n }\n if state.status != ProposalStatus::Succeeded {\n return Err(GovernError::WrongStatus);\n }\n state.status = ProposalStatus::Executed;\n self.state.insert(proposal_id, &state);\n Ok(())\n }\n\n pub fn state_of(&self, proposal_id: &ProposalId) -> Option {\n self.state.get(proposal_id)\n }\n\n pub fn status_of(&self, proposal_id: &ProposalId) -> Option {\n self.state_of(proposal_id).map(|state| state.status)\n }\n\n pub fn vote_of_for(&self, account: &AccountId, proposal_id: &ProposalId) -> Option {\n self.votes.get((*account, *proposal_id))\n }\n\n pub fn update_vote_of_for(\n &mut self,\n account: &AccountId,\n proposal_id: &ProposalId,\n vote: &Vote,\n amount: &Balance,\n ) -> Result<(), GovernError> {\n if *amount == 0 {\n return Err(GovernError::InsuficientVotes);\n }\n let mut state = self\n .state_of(proposal_id)\n .ok_or(GovernError::ProposalDoesntExist)?;\n if state.status != ProposalStatus::Active {\n return Err(GovernError::WrongStatus);\n }\n\n let existing_user_vote = self.vote_of_for(account, proposal_id);\n match existing_user_vote {\n None => match vote {\n Vote::Agreed => {\n state.votes_for = state\n .votes_for\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?\n }\n Vote::Disagreed => {\n state.votes_against = state\n .votes_against\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?\n }\n Vote::DisagreedWithProposerSlashing => {\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?\n }\n },\n Some(old_vote) => match old_vote.vote {\n Vote::Agreed => match vote {\n Vote::Agreed => {\n state.votes_for = state\n .votes_for\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_for = state\n .votes_for\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::Disagreed => {\n state.votes_for = state\n .votes_for\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against = state\n .votes_against\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::DisagreedWithProposerSlashing => {\n state.votes_for = state\n .votes_for\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n },\n Vote::Disagreed => match vote {\n Vote::Agreed => {\n state.votes_against = state\n .votes_against\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_for = state\n .votes_for\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::Disagreed => {\n state.votes_against = state\n .votes_against\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against = state\n .votes_against\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::DisagreedWithProposerSlashing => {\n state.votes_against = state\n .votes_against\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n },\n Vote::DisagreedWithProposerSlashing => match vote {\n Vote::Agreed => {\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_for = state\n .votes_for\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::Disagreed => {\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against = state\n .votes_against\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n Vote::DisagreedWithProposerSlashing => {\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_sub(old_vote.amount)\n .ok_or(MathError::Underflow)?;\n state.votes_against_with_slash = state\n .votes_against_with_slash\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?;\n }\n },\n },\n }\n\n let new_vote = UserVote {\n vote: *vote,\n amount: *amount,\n };\n\n self.votes.insert((*account, *proposal_id), &new_vote);\n\n self.state.insert(proposal_id, &state);\n Ok(())\n }\n\n pub fn force_unstake(\n &mut self,\n account: &AccountId,\n proposal_id: &ProposalId,\n ) -> Result<(), GovernError> {\n let state = self\n .state_of(proposal_id)\n .ok_or(GovernError::ProposalDoesntExist)?;\n\n if !state.force_unstake_possible {\n return Err(GovernError::CantForceUnstake);\n }\n\n if state.finalized.unwrap_or_default()\n <= self.last_stake_timestamp(account).unwrap_or_default()\n {\n return Err(GovernError::CantForceUnstake);\n }\n if self.vote_of_for(account, proposal_id).is_some() {\n return Err(GovernError::CantForceUnstake);\n }\n\n if let Some(last_proposal_id) = self.last_force_unstake.get(account) {\n if last_proposal_id >= *proposal_id {\n return Err(GovernError::CantForceUnstake);\n }\n }\n self.last_force_unstake.insert(account, proposal_id);\n Ok(())\n }\n}\n", - "modules/govern/storage/locked_shares_storage_item.rs":"use ink::storage::Mapping;\nuse pendzl::{math::errors::MathError, traits::Balance};\n\nuse crate::modules::govern::traits::ProposalId;\n\n#[derive(Debug, Default)]\n#[pendzl::storage_item]\npub struct LockedSharesData {\n locked: Mapping,\n}\n\nimpl LockedSharesData {\n pub fn locked(&self, proposal_id: &ProposalId) -> Balance {\n self.locked.get(proposal_id).unwrap_or_default()\n }\n\n pub fn lock(&mut self, proposal_id: &ProposalId, amount: Balance) -> Result<(), MathError> {\n let mut locked = self.locked(proposal_id);\n locked = locked.checked_add(amount).ok_or(MathError::Overflow)?;\n self.locked.insert(proposal_id, &locked);\n Ok(())\n }\n\n pub fn unlock(&mut self, proposal_id: &ProposalId, amount: Balance) -> Result<(), MathError> {\n let mut locked = self.locked(proposal_id);\n locked = locked.checked_sub(amount).ok_or(MathError::Underflow)?;\n if locked > 0 {\n self.locked.insert(proposal_id, &locked);\n } else {\n self.locked.remove(proposal_id);\n }\n Ok(())\n }\n}\n", - "modules/govern/storage/mod.rs":"pub mod govern_storage_item;\npub mod locked_shares_storage_item;\npub mod unstake_storage_item;\npub mod vault_counter_storage_item;\n", - "modules/govern/storage/unstake_storage_item.rs":"use ink::{env::DefaultEnvironment, primitives::AccountId};\npub use pendzl::contracts::general_vest::GeneralVestRef;\nuse pendzl::traits::Timestamp;\n\nuse crate::modules::govern::traits::UnstakePeriodChanged;\n\n#[derive(Debug, Default)]\n#[pendzl::storage_item]\npub struct UnstakeData {\n #[lazy]\n general_vester: GeneralVestRef,\n #[lazy]\n unstake_period: Timestamp,\n}\n\nimpl UnstakeData {\n pub fn new(general_vester_address: AccountId, unstake_period: Timestamp) -> Self {\n let mut instance = Self::default();\n instance.set_general_vester(&general_vester_address);\n instance.set_unstake_period(unstake_period);\n ink::env::emit_event::(UnstakePeriodChanged {\n unstake_period,\n });\n instance\n }\n}\n\nimpl UnstakeData {\n pub fn general_vester(&self) -> GeneralVestRef {\n self.general_vester.get().unwrap()\n }\n\n pub fn unstake_period(&self) -> Timestamp {\n self.unstake_period.get().unwrap_or_default()\n }\n\n pub fn set_general_vester(&mut self, vester: &AccountId) {\n let vester: GeneralVestRef = (*vester).into();\n self.general_vester.set(&vester);\n }\n\n pub fn set_unstake_period(&mut self, period: Timestamp) {\n self.unstake_period.set(&period);\n }\n}\n", - "modules/govern/storage/vault_counter_storage_item.rs":"#[derive(Debug, Default)]\n#[pendzl::storage_item]\npub struct VaultCounterData {\n #[lazy]\n counter: u128,\n}\n\nimpl VaultCounterData {\n pub fn counter(&self) -> u128 {\n self.counter.get().unwrap_or_default()\n }\n\n pub fn increase_counter(&mut self, amount: u128) {\n let mut counter = self.counter();\n counter = counter.overflowing_add(amount).0;\n self.counter.set(&counter);\n }\n}\n", - "modules/govern/traits/errors.rs":"use pendzl::traits::String;\npub use pendzl::{\n contracts::{access_control::AccessControlError, psp22::PSP22Error},\n math::errors::MathError,\n};\n\n#[derive(scale::Encode, scale::Decode, Debug)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo))]\npub enum GovernError {\n MathError(MathError),\n PSP22Error(PSP22Error),\n InsuficientVotes,\n ProposalAlreadyExists,\n ProposalDoesntExist,\n WrongStatus,\n TooEarlyToExecuteProposal,\n FinalizeCondition,\n UnderlyingTransactionReverted(String),\n CantForceUnstake,\n AccessControlError(AccessControlError),\n UnstakeShorterThanVotingPeriod,\n}\n\nimpl From for GovernError {\n fn from(error: MathError) -> Self {\n GovernError::MathError(error)\n }\n}\n\nimpl From for GovernError {\n fn from(error: PSP22Error) -> Self {\n GovernError::PSP22Error(error)\n }\n}\n\nimpl From for GovernError {\n fn from(error: AccessControlError) -> Self {\n GovernError::AccessControlError(error)\n }\n}\n", - "modules/govern/traits/events.rs":"use pendzl::traits::{AccountId, Timestamp};\n\nuse super::{Proposal, ProposalHash, ProposalId, ProposalStatus, Vote, VotingRules};\n\n#[ink::event]\npub struct ProposalCreated {\n #[ink(topic)]\n pub proposal_id: ProposalId,\n #[ink(topic)]\n pub proposal_hash: ProposalHash,\n #[ink(topic)]\n pub proposal: Proposal,\n}\n\n#[ink::event]\npub struct ProposalFinalized {\n #[ink(topic)]\n pub proposal_id: ProposalId,\n #[ink(topic)]\n pub status: ProposalStatus,\n}\n\n#[ink::event]\npub struct ProposalExecuted {\n #[ink(topic)]\n pub proposal_id: ProposalId,\n}\n\n#[ink::event]\npub struct VoteCasted {\n #[ink(topic)]\n pub account: AccountId,\n #[ink(topic)]\n pub proposal_id: ProposalId,\n pub vote: Vote,\n}\n\n#[ink::event]\npub struct VotingRulesChanged {\n pub rules: VotingRules,\n}\n\n#[ink::event]\npub struct UnstakePeriodChanged {\n pub unstake_period: Timestamp,\n}\n", - "modules/govern/traits/govern.trait.rs":"pub type ProposalHash = Hash;\n\n#[ink::trait_definition]\npub trait AbaxGovern {\n /// Propose a `proposal`.\n ///\n /// On success emits `ProposalCreated` event.\n ///\n /// # Returns\n ///\n /// Returns `ProposalId` of the created proposal.\n ///\n /// # Errors\n /// Returns `ProposalAlreadyExists` if `propsal` with the same `proposal_description` exists,\n /// Returns `InsuficientVotes` if `caller` has insufficient amount of votes to create a proposal.\n #[ink(message)]\n fn propose(&mut self, proposal: Proposal) -> Result;\n\n /// Finilize `proposal_id` if the finalization conditions are met. \n ///\n /// On success emits `ProposalFinalized` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if proposal doesn't exist.\n /// Returns `WrongStatus` if proposal is not `Active``.\n /// Returns `FinalizeCondition` if finalize condition isn't met.\n #[ink(message)]\n fn finalize(&mut self, proposal_id: ProposalId) -> Result<(), GovernError>;\n\n /// Executes the `proposal` which was finalized with `Succeeded` status.\n ///\n /// On success emits `ProposalExecuted` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if proposal doesn't exist.\n /// Returns `WrongStatus` if proposal status is not `Succeeded`.\n /// Returns `UnderlyingTransactionReverted` if any of Transactions from the `proposal` fails.\n #[ink(message)]\n fn execute(&mut self, proposal: Proposal) -> Result<(), GovernError>;\n\n /// Cast vote in the name of `caller` on `proposa_id` for `vote` with `reason`.\n ///\n /// On Success emits `VoteCasted` event.\n ///\n /// # Errors\n /// Returns `InsuficientVotes` if `caller` has no votes.\n /// Returns `ProposalDoesntExist` if proposal doesn't exist.\n /// Returns `WrongStatus` if proposal status isn't `Active`.\n #[ink(message)]\n fn vote(\n &mut self,\n proposal_id: ProposalId,\n vote: Vote,\n reason: Vec,\n ) -> Result<(), GovernError>;\n\n /// Forcefully unstakes all tokens of `account` if:\n /// 1. proposal with `proposal_id` was finalized in Final phase\n /// 2. `account` has staked some tokens before the proposal was created.\n ///\n /// On success emits `ForcefullyUnstaked` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if proposal doesn't exist.\n /// Returns `WrongStatus` if proposal wasn't finalized in final phase.\n /// Returns `CantForceUnstake` if proposal doesnt allow for force unstake or the 'account' was already force unstaked for not voting on proposal with id >= 'proposal_id'.\n #[ink(message)]\n fn force_unstake(\n &mut self,\n account: AccountId,\n proposal_id: ProposalId,\n ) -> Result<(), GovernError>;\n}\n", - "modules/govern/traits/govern_internal.trait.rs":"pub trait AbaxGovernInternal {\n /// Creates new `proposal` with `proposal_id` and `description`\n ///\n /// On success emits `ProposalCreated` event.\n ///\n /// # Returns\n ///\n /// Returns `ProposalId` of the created proposal.\n ///\n /// # Errors\n /// Returns `ProposalAlreadyExists` if `propsal` with the same `proposal_description` exists,\n fn _propose(\n &mut self,\n proposer: &AccountId,\n proposal: &Proposal,\n ) -> Result;\n\n fn _cast_vote(\n &mut self,\n voter: &AccountId,\n proposal_id: ProposalId,\n vote: Vote,\n #[allow(unused_variables)] reason: Vec,\n ) -> Result<(), GovernError>;\n\n /// Finalizes proposal identified by `proposal_id`\n ///\n /// On success emits `ProposalFinalized` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if there is no proposal identified by `proposal_id.\n /// Returns `NotActive` if proposal identified by `proposal_id` isnt Active.\n /// Returns `FinalizeCondition` if finalization condition wasn`t met.\n /// Returns `TransferError` if proposal was finalized with `Succeeded`, `Defeated` and transfering deposit of native currency to the proposer failed.\n fn _finalize(&mut self, proposal_id: &ProposalId) -> Result<(), GovernError>;\n\n /// Executes the `proposal`\n ///\n /// On success emits `ProposalExecuted` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if there is no proposal identified by `proposal_id.\n /// Returns `WronfStatus` if proposal identified by `proposal_id` has different than Succeeded status.\n /// Returns `UnderlyingTransactionReverted` if any of Transactions from the `proposal` fails.\n fn _execute(&mut self, proposal: &Proposal) -> Result<(), GovernError>;\n\n /// Forcefully unstakes all tokens of `account` if:\n /// 1. proposal with `proposal_id` allows for force unstake\n /// 2. `account` has staked some tokens before the proposal was created.\n /// 3. `account` hasn't voted one the proposal.\n ///\n /// On success emits `ForcefullyUnstaked` event.\n ///\n /// # Errors\n /// Returns `ProposalDoesntExist` if proposal doesn't exist.\n /// Returns `WrongStatus` if proposal wasn't finalized in final phase.\n /// Returns `CantForceUnstake` if proposal doesnt allow for force unstake or the 'account' was already force unstaked for not voting on proposal with id >= 'proposal_id'.\n fn _force_unstake(\n &mut self,\n account: &AccountId,\n proposal_id: &ProposalId,\n ) -> Result<(), GovernError>;\n}\n", - "modules/govern/traits/govern_manage.trait.rs":"#[ink::trait_definition]\npub trait AbaxGovernManage {\n /// change `VotingRules` used for voting\n ///\n /// On Success emits `VotingRulesChanged` event.\n ///\n /// #Errors\n ///\n /// Returns `UnstakeShorterThanVotingPeriod` if the unstake period is shorter than the rules' total voting period.\n /// Returns `AccessControlError` if the `caller` has not access to the method.\n #[ink(message)]\n fn change_voting_rules(&mut self, rules: VotingRules) -> Result<(), GovernError>;\n\n /// change unstake period\n ///\n /// On Success emits `UnstakePeriodChanged` event.\n ///\n /// #Errors\n ///\n /// Returns `UnstakeShorterThanVotingPeriod` if the `period` is shorter than the total voting period.\n /// Returns `AccessControlError` if the `caller` has not access to the method.\n #[ink(message)]\n fn change_unstake_period(&mut self, period: Timestamp) -> Result<(), GovernError>;\n}\n", - "modules/govern/traits/govern_view.trait.rs":"#[ink::trait_definition]\npub trait AbaxGovernView {\n /// Returns account of the vester which is used to unstake tokens.\n #[ink(message)]\n fn vester(&self) -> AccountId;\n\n /// Returns hash of the `proposal`.\n #[ink(message)]\n fn hash(&self, proposal: Proposal) -> ProposalHash;\n\n /// Returns hash of the description.\n #[ink(message)]\n fn hash_description(&self, description: String) -> Hash;\n\n /// Returns hash of the `proposal.\n #[ink(message)]\n fn hash_by_id(&self, proposal_id: ProposalId) -> Option;\n\n /// Returns 'VotingRules' used for proposing and voting.\n #[ink(message)]\n fn rules(&self) -> VotingRules;\n\n /// Returns ProposalStatus of proposal with proposal_id (proposal Hash) if it exists.\n #[ink(message)]\n fn status(&self, proposal_id: ProposalId) -> Option;\n\n /// Returns minimum to finalize proposal at current timestamp\n #[ink(message)]\n fn minimum_to_finalize(&self, proposal_id: ProposalId) -> Option;\n\n /// Returns ProposalStatus of proposal with proposal_id (proposal Hash) if it exists.\n #[ink(message)]\n fn state(&self, proposal_id: ProposalId) -> Option;\n\n /// Returns `account` vote for proposal `proposal_id` if it exists.\n #[ink(message)]\n fn vote_of_for(&self, account: AccountId, proposal_id: ProposalId) -> Option;\n\n /// Returns `account` last proposalId that was used for force unstake.\n #[ink(message)]\n fn last_force_unstakes(&self, account: AccountId) -> Option;\n\n /// Returns last timestamp at which 'account' has staked while having empty stake.\n #[ink(message)]\n fn last_stake_timestamp(&self, account: AccountId) -> Option;\n\n /// Returns the number of active proposals.\n #[ink(message)]\n fn active_proposals(&self) -> u32;\n\n /// Returns the number of finalized proposals.\n #[ink(message)]\n fn finalized_proposals(&self) -> u32;\n\n /// Returns the number of executed proposals.\n #[ink(message)]\n fn executed_proposals(&self) -> u32;\n\n /// Returns the next proposal id.\n #[ink(message)]\n fn next_proposal_id(&self) -> ProposalId;\n\n /// Returns the `description_url` of the proposal with `proposal_id`.\n #[ink(message)]\n fn description_url_by_proposal_id(&self, proposal_id: ProposalId) -> Option;\n\n /// Returns the `description_hash` of the proposal with `proposal_id`.\n #[ink(message)]\n fn description_hash_by_proposal_id(&self, proposal_id: ProposalId) -> Option;\n}\n", - "modules/govern/traits/mod.rs":"pub mod errors;\npub mod events;\npub mod structs;\n\npub use errors::*;\npub use events::*;\npub use structs::*;\n\npub use pendzl::traits::String;\n\npub use ink::{prelude::vec::Vec, primitives::Hash};\n\ninclude!(\"govern.trait.rs\");\ninclude!(\"govern_manage.trait.rs\");\ninclude!(\"govern_view.trait.rs\");\ninclude!(\"govern_internal.trait.rs\");\n", - "modules/govern/traits/structs/mod.rs":"use ink::primitives::Hash;\npub use pendzl::traits::{AccountId, Balance, Timestamp};\n\npub type ProposalId = u32;\n\ninclude!(\"voting_rules.rs\");\ninclude!(\"proposal_state.rs\");\ninclude!(\"proposal_status.rs\");\ninclude!(\"proposal.rs\");\ninclude!(\"transaction.rs\");\ninclude!(\"user_vote.rs\");\ninclude!(\"vote.rs\");\n", - "modules/govern/traits/structs/proposal.rs":"use pendzl::traits::String;\n/// A Proposal is what can be proposed\n#[derive(Debug, Clone, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct Proposal {\n /// Proposed transaction for execution.\n pub transactions: Vec,\n pub description_hash: Hash,\n pub description_url: String,\n pub earliest_execution: Option,\n}\n", - "modules/govern/traits/structs/proposal_state.rs":"#[derive(Debug, Clone, Copy, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct ProposalState {\n /// proposal status\n pub status: ProposalStatus,\n /// if proposal was finalized in final phase, then it's possible to force unstake\n pub force_unstake_possible: bool,\n /// the proposer\n pub proposer: AccountId,\n /// time of proposition\n pub start: Timestamp,\n /// Stake::total_stake at start\n pub votes_at_start: Balance,\n /// Stake::counter_stake at start\n pub counter_at_start: Balance,\n /// time of proposal finalization. Some if proposal finalized. None if porposal is not finalized yet.\n pub finalized: Option,\n /// amount of votes to accept the proposal\n pub votes_for: Balance,\n /// amount of votes to reject proposal\n pub votes_against: Balance,\n /// amount of votes to reject proposal and slash the proposer\n pub votes_against_with_slash: Balance,\n /// earliest time when proposal can be executed\n pub earliest_execution: Option,\n}\n", - "modules/govern/traits/structs/proposal_status.rs":"#[derive(Debug, Clone, Copy, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout))]\npub enum ProposalStatus {\n /// VotingPeriod\n Active,\n /// Reejcted by DAO\n Defeated,\n /// Rejected by DAO. Proposer was slashed.\n DefeatedWithSlash,\n /// Accepted by DAO. Ready for execution.\n Succeeded,\n /// Executed\n Executed,\n}\n", - "modules/govern/traits/structs/transaction.rs":"pub use ink::prelude::vec::Vec;\n\n#[derive(Debug, Clone, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct Transaction {\n /// The `AccountId` of the contract that is called in this transaction.\n pub callee: AccountId,\n /// The selector bytes that identifies the function of the callee that should be called.\n pub selector: [u8; 4],\n /// The SCALE encoded parameters that are passed to the called function.\n pub input: Vec,\n /// The amount of chain balance that is transferred to the callee.\n pub transferred_value: Balance,\n}\n\n#[cfg_attr(\n feature = \"std\",\n derive(\n PartialEq,\n Eq,\n scale_info::TypeInfo,\n ink::storage::traits::StorageLayout\n )\n)]\n#[derive(Clone, Debug)]\npub struct OpaqueTypes(pub Vec);\n\nimpl scale::Encode for OpaqueTypes {\n #[inline]\n fn size_hint(&self) -> usize {\n self.0.len()\n }\n\n #[inline]\n fn encode_to(&self, output: &mut O) {\n output.write(&self.0);\n }\n}\n\nimpl scale::Decode for OpaqueTypes {\n #[inline]\n fn decode(input: &mut I) -> Result {\n let len = input.remaining_len()?;\n\n let mut bytes;\n\n if let Some(len) = len {\n bytes = ink::prelude::vec![0; len];\n input.read(&mut bytes[..len])?;\n } else {\n bytes = Vec::new();\n while let Ok(b) = input.read_byte() {\n bytes.push(b);\n }\n };\n\n Ok(OpaqueTypes(bytes))\n }\n}\n", - "modules/govern/traits/structs/user_vote.rs":"#[derive(Debug, Clone, Copy, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout))]\npub struct UserVote {\n /// chosen Vote by user\n pub vote: Vote,\n /// amount of votes\n pub amount: Balance,\n}\n", - "modules/govern/traits/structs/vote.rs":"#[derive(Debug, Clone, Copy, PartialEq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout))]\n/// Possibilities to choose during voting\npub enum Vote {\n /// Agree\n Agreed,\n /// Disagree\n Disagreed,\n /// Disagree and slash the proposal. Should be chosen if the proposition is made to hurt the DAO.\n DisagreedWithProposerSlashing,\n}\n", - "modules/govern/traits/structs/voting_rules.rs":"#[derive(Debug, Clone, Copy, PartialEq, scale::Encode, scale::Decode, Default)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\n\npub struct VotingRules {\n /// minimal part of proposer stake in total stake to propose.\n pub minimum_stake_part_e3: u16,\n /// part of total\n pub proposer_deposit_part_e3: u16,\n /// during initial period required amount to finalize proposal falls from 100% to 50% of total votes.\n pub initial_period: Timestamp,\n /// time after start of proposal during which the required amount to finalize proposal is flat at 50%.\n pub flat_period: Timestamp,\n /// time after flat_period during which the required amount to finalize proposal linearly falls to 0.\n pub final_period: Timestamp,\n}\n", - "modules/mod.rs":"pub mod govern;\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/abax_inflator/subscan_verify.json b/src/contracts/abax_inflator/subscan_verify.json deleted file mode 100644 index 237014e..0000000 --- a/src/contracts/abax_inflator/subscan_verify.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_inflator\"\nversion = \"1.0.0\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.0.99\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695\"\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"platforms\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125\"\n\n[[package]]\nname = \"either\"\nversion = \"1.12.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d\"\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.2.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.1\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.155\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ccb76662d78edc9f9bf56360d6919bdacc8b7761227727e5082f128eeb90bbf5\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f8dccda732e04fa3baf2e17cf835bfe2601c7c2edafd64417c627dabae3a8cda\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d0d8b92cd8358e8d229c11df9358decae64d137c5be540952c5ca7b25aea768\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.19\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"platforms\"\nversion = \"3.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7\"\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de\"\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"3.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284\"\ndependencies = [\n \"toml_edit 0.21.1\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.85\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.36\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.23\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.23\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.14\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.29.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.117\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3\"\ndependencies = [\n \"itoa\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.66\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.21.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.40\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03\"\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.8.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_inflator\"\nversion = \"1.0.0\"\nauthors = [\"\"]\nedition = \"2021\"\n\n[dependencies]\nink = { version = \"5.0.0\", default-features = false }\n\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n] }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\n\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"psp22_mintable\",\n \"access_control_impl\",\n] }\n\n\n[lib]\nname = \"abax_inflator\"\npath = \"lib.rs\"\n\n\n[features]\ndefault = [\"std\"]\nstd = [\n \"ink/std\",\n \"scale/std\",\n \"scale-info\",\n \"scale-info/std\",\n\n # These dependencies\n \"pendzl/std\",\n]\nink-as-dependency = []\ne2e-tests = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "lib.rs":"#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\nmod modules;\n\n#[pendzl::implementation(AccessControl)]\n#[ink::contract]\npub mod abax_treasury {\n use crate::modules::inflator::{\n errors::AbaxInflatorError,\n events::InflationDistributed,\n storage_fields::inflator::InflatorStorage,\n traits::{AbaxInflator, AbaxInflatorManage, AbaxInflatorView},\n };\n use ink::{codegen::TraitCallBuilder, env::DefaultEnvironment};\n pub use ink::{prelude::vec::Vec, ToAccountId};\n pub use pendzl::contracts::psp22::{PSP22Ref, PSP22};\n use pendzl::{\n contracts::psp22::mintable::{PSP22Mintable, PSP22MintableRef},\n math::operations::{mul_div, Rounding},\n };\n\n pub const PARAMETERS_ADMIN: RoleType = ink::selector_id!(\"PARAMETERS_ADMIN\"); // 368_001_360_u32\n\n #[ink(storage)]\n #[derive(pendzl::traits::StorageFieldGetter)]\n pub struct AbaxInflatorContract {\n #[storage_field]\n access: AccessControlData,\n #[storage_field]\n inflator: InflatorStorage,\n }\n\n impl AbaxInflatorContract {\n #[ink(constructor)]\n pub fn new(\n admin: AccountId,\n abax_token_account_id: AccountId,\n inflation_distribution: Vec<(AccountId, u16)>,\n ) -> Result {\n let instance = AbaxInflatorContract {\n access: AccessControlData::new(Some(admin)),\n inflator: InflatorStorage::new(&abax_token_account_id, &inflation_distribution)?,\n };\n\n Ok(instance)\n }\n }\n\n impl AbaxInflatorView for AbaxInflatorContract {\n #[ink(message)]\n fn abax_token_account_id(&self) -> AccountId {\n self.inflator.abax_token_account_id()\n }\n\n #[ink(message)]\n fn inflation_distribution(&self) -> Vec<(AccountId, u16)> {\n self.inflator.inflation_distribution()\n }\n }\n\n impl AbaxInflator for AbaxInflatorContract {\n #[ink(message)]\n fn inflate(&mut self, amount: Balance) -> Result<(), AbaxInflatorError> {\n let mut abax_token_mintable: PSP22MintableRef = self.abax_token_account_id().into();\n let total_parts = self.inflator.total_parts();\n let distribution = self.inflation_distribution();\n\n ink::env::debug_println!(\"total_parts: {:?}\", total_parts);\n\n for (account_id, part) in distribution.iter() {\n let amount = mul_div(amount, *part as u128, total_parts as u128, Rounding::Down)?;\n\n ink::env::debug_println!(\"account_id: {:?}, amount: {:?}\", account_id, amount);\n\n abax_token_mintable\n .call_mut()\n .mint(*account_id, amount)\n .call_v1()\n .invoke()?;\n }\n\n ink::env::emit_event::(\n InflationDistributed {},\n );\n\n Ok(())\n }\n }\n\n impl AbaxInflatorManage for AbaxInflatorContract {\n #[ink(message)]\n fn set_inflation_distribution(\n &mut self,\n inflation_distribution: Vec<(AccountId, u16)>,\n ) -> Result<(), AbaxInflatorError> {\n self._ensure_has_role(PARAMETERS_ADMIN, Some(self.env().caller()))?;\n\n self.inflator\n .set_inflation_distribution(&inflation_distribution)?;\n Ok(())\n }\n }\n}\n", - "modules/inflator/errors.rs":"use pendzl::{\n contracts::{access_control::AccessControlError, psp22::PSP22Error},\n math::errors::MathError,\n};\n\n#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo))]\npub enum AbaxInflatorError {\n MathError(MathError),\n PSP22Error(PSP22Error),\n AccessControlError(AccessControlError),\n WrongInflationDistribution,\n}\n\nimpl From for AbaxInflatorError {\n fn from(e: PSP22Error) -> Self {\n AbaxInflatorError::PSP22Error(e)\n }\n}\n\nimpl From for AbaxInflatorError {\n fn from(e: MathError) -> Self {\n AbaxInflatorError::MathError(e)\n }\n}\n\nimpl From for AbaxInflatorError {\n fn from(e: AccessControlError) -> Self {\n AbaxInflatorError::AccessControlError(e)\n }\n}\n", - "modules/inflator/events.rs":"pub use ink::{prelude::vec::Vec, primitives::AccountId};\n\n#[ink::event]\npub struct InflationDistributionChanged {\n pub distribution: Vec<(AccountId, u16)>,\n}\n\n#[ink::event]\npub struct InflationDistributed {}\n", - "modules/inflator/mod.rs":"pub mod errors;\npub mod events;\npub mod storage_fields;\npub mod traits;\n", - "modules/inflator/storage_fields/inflator.rs":"use ink::{env::DefaultEnvironment, prelude::vec::Vec};\nuse pendzl::{math::errors::MathError, traits::AccountId};\n\nuse crate::modules::inflator::events::InflationDistributionChanged;\nuse ink::prelude::borrow::ToOwned;\n\n#[derive(Debug)]\n#[pendzl::storage_item]\npub struct InflatorStorage {\n abax_token_account_id: AccountId,\n inflation_distribution: Vec<(AccountId, u16)>,\n total_parts: u16,\n}\n\nimpl InflatorStorage {\n pub fn new(\n abax_token_account_id: &AccountId,\n inflation_distribution: &[(AccountId, u16)],\n ) -> Result {\n let mut instance = InflatorStorage {\n abax_token_account_id: *abax_token_account_id,\n inflation_distribution: inflation_distribution.to_owned(),\n total_parts: 0,\n };\n let mut new_total_parts: u16 = 0;\n for (_, part) in inflation_distribution.iter() {\n new_total_parts = new_total_parts\n .checked_add(*part)\n .ok_or(MathError::Overflow)?;\n }\n instance.total_parts = new_total_parts;\n\n ink::env::emit_event::(\n InflationDistributionChanged {\n distribution: inflation_distribution.to_vec(),\n },\n );\n\n Ok(instance)\n }\n\n pub fn abax_token_account_id(&self) -> AccountId {\n self.abax_token_account_id\n }\n\n pub fn inflation_distribution(&self) -> Vec<(AccountId, u16)> {\n self.inflation_distribution.clone()\n }\n\n pub fn total_parts(&self) -> u16 {\n self.total_parts\n }\n\n pub fn set_inflation_distribution(\n &mut self,\n inflation_distribution: &[(AccountId, u16)],\n ) -> Result<(), MathError> {\n self.inflation_distribution = inflation_distribution.to_owned();\n let mut new_total_parts: u16 = 0;\n for (_, part) in inflation_distribution.iter() {\n new_total_parts = new_total_parts\n .checked_add(*part)\n .ok_or(MathError::Overflow)?;\n }\n\n self.total_parts = new_total_parts;\n\n ink::env::emit_event::(\n InflationDistributionChanged {\n distribution: inflation_distribution.to_vec(),\n },\n );\n Ok(())\n }\n}\n", - "modules/inflator/storage_fields/mod.rs":"pub mod inflator;\n", - "modules/inflator/traits.rs":"use super::errors::AbaxInflatorError;\nuse ink::prelude::vec::Vec;\nuse pendzl::traits::{AccountId, Balance};\n\n#[ink::trait_definition]\n/// Trait defining the functions for the Abax Inflator module.\npub trait AbaxInflator {\n /// Inflates the tokens and distributes them according to the inflation distribution.\n #[ink(message)]\n fn inflate(&mut self, amount: Balance) -> Result<(), AbaxInflatorError>;\n}\n\n#[ink::trait_definition]\npub trait AbaxInflatorView {\n /// Returns Abax Token Acccount Id\n #[ink(message)]\n fn abax_token_account_id(&self) -> AccountId;\n\n /// Returns Inflation Distribution. i.e Accounts and their respective inflation part.\n #[ink(message)]\n fn inflation_distribution(&self) -> Vec<(AccountId, u16)>;\n}\n\n#[ink::trait_definition]\npub trait AbaxInflatorManage {\n /// Sets the inflation distribution.\n #[ink(message)]\n fn set_inflation_distribution(\n &mut self,\n inflation_distribution: Vec<(AccountId, u16)>,\n ) -> Result<(), AbaxInflatorError>;\n}\n", - "modules/mod.rs":"pub mod inflator;\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/abax_tge/subscan_verify.json b/src/contracts/abax_tge/subscan_verify.json deleted file mode 100644 index f55f128..0000000 --- a/src/contracts/abax_tge/subscan_verify.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_tge\"\nversion = \"1.0.0\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"primitive-types\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.0.83\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crunchy\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7\"\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"platforms\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.16\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d\"\n\n[[package]]\nname = \"either\"\nversion = \"1.9.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7\"\n\n[[package]]\nname = \"fixed-hash\"\nversion = \"0.8.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534\"\ndependencies = [\n \"byteorder\",\n \"rand\",\n \"rustc-hex\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-codec\"\nversion = \"0.6.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f\"\ndependencies = [\n \"parity-scale-codec\",\n]\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.152\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.25\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bb2cfee0de9bd869589fb9a015e155946d1be5ff415cb844c2caccc6cc4b5db9\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.25\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"adf157a4dc5a29b7b464aa8fe7edeff30076e07e13646a1c3874f58477dc99f8\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b\"\ndependencies = [\n \"proc-macro-crate 2.0.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.14\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1f200d8d83c44a45b21764d1916299752ca035d15ecd46faca3e9a2a2bf6ad06\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"platforms\"\nversion = \"3.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c\"\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de\"\n\n[[package]]\nname = \"primitive-types\"\nversion = \"0.12.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2\"\ndependencies = [\n \"fixed-hash\",\n \"impl-codec\",\n \"scale-info\",\n \"uint\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8\"\ndependencies = [\n \"toml_edit 0.20.7\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.78\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.35\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc-hex\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.21\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.16\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2ef2175c2907e7c8bc0a9c3f86aeb5ec1f3b275300ad58a44d0c3ae379a5e52e\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"abf2c68b89cafb3b8d918dd07b42be0da66ff202cf1155c5739a4e0c1ea0dc19\"\ndependencies = [\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.16\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.16\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.197\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.14\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.197\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.26.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.114\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0\"\ndependencies = [\n \"itoa\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.48\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.56\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.56\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.20.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"uint\"\nversion = \"0.9.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52\"\ndependencies = [\n \"byteorder\",\n \"crunchy\",\n \"hex\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.10.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.34\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53be06678ed9e83edb1745eb72efc0bbcd7b5c3c35711a860906aed827a13d61\"\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.48\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_tge\"\nversion = \"1.0.0\"\nauthors = [\"\"]\nedition = \"2021\"\n\n[dependencies]\nink = { version = \"5.0.0\", default-features = false }\n\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n \"chain-error\",\n] }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\n# These dependencies\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"psp22\",\n \"general_vest\",\n \"psp22_mintable\",\n \"access_control_impl\",\n \"set_code_hash_impl\",\n] }\n\n\nprimitive-types = { version = \"0.12.1\", default-features = false, features = [\n \"codec\",\n] }\n\n[lib]\nname = \"abax_tge\"\npath = \"lib.rs\"\n\n\n[features]\ndefault = [\"std\"]\nstd = [\n \"ink/std\",\n \"scale/std\",\n \"scale-info/std\",\n # These dependencies\n \"pendzl/std\",\n \"primitive-types/std\",\n \"primitive-types/scale-info\",\n]\nink-as-dependency = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "constants.rs":"use pendzl::traits::Timestamp;\n\n// NUMBERS\n/// One thousand.\npub const E3_U128: u128 = 10_u128.pow(3);\n/// One million.\npub const E6_U128: u128 = 10_u128.pow(6);\n/// Hundred million.\npub const E8_U128: u128 = 10_u128.pow(8);\n/// One milliard\npub const E12_U128: u128 = 10_u128.pow(12);\n\n// TIME\n/// A duration of one hour in milliseconds.\npub const ONE_HOUR: Timestamp = 60 * 60 * 1000;\n/// A duration of one day in milliseconds.\npub const ONE_DAY: Timestamp = 24 * ONE_HOUR;\n/// A duration of one year in milliseconds.\npub const ONE_YEAR: Timestamp = 365 * ONE_DAY;\n/// A duration of the vesting period for contributors and founders - 4 years.\npub const VEST_DURATION: Timestamp = ONE_YEAR * 4;\n\n// ALLOCATION - parts of 1000\n/// A part of all tokens generated by Abax TGE Contract that is allocated to founders - 20%.\npub const PART_OF_FOUNDERS_E3: u16 = 200;\n/// A part of all tokens generated by Abax TGE Contract that is allocated to foundation - 2%.\npub const PART_OD_FOUNDATION_E3: u16 = 20;\n\n// ALLOCATION - instant release parts of 1000\n/// A part of founders allocation that is instantly released - 20%\npub const INSTANT_FOUNDERS_RELEASE_E3: u16 = 200;\n/// A part of contributors allocation that is instantly released - 40%\npub const INSTANT_CONTRIBUTOR_RELEASE_E3: u16 = 400;\n\n/// A ratio of all allocation to contributors allocation; contributors have 20% resulating in ratio 5\npub const ALL_TO_PUBLIC_RATIO: u128 = 5; // 5:1\n\n// BONUS\n/// A bonus for using a referral code - 1% (total bonus is capped at 10%)\npub const BONUS_FOR_REFERRER_USE_E3: u16 = 10;\n/// A maximal additional part received as bonus - 10%.\npub const BONUS_MAX_E3: u16 = 100;\n/// An amount of tokens that must be contributed to get a 1% contribution bonus. 1000 Tokens\npub const BONUS_DENOMINATOR: u128 = 1000 * 10_u128.pow(6);\n\n/// A part of the contribution that is additionally reserved for referrer.\npub const REWARD_FOR_REFERER_E3: u16 = 20;\n", - "lib.rs":"// SPDX-License-Identifier: MIT\n#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\nmod constants;\nmod modules;\n\n/// A contract repsonsible for generating the Abax Token.\n#[pendzl::implementation(AccessControl, SetCodeHash)]\n#[ink::contract]\npub mod abax_tge_contract {\n pub use crate::{\n constants::{\n ALL_TO_PUBLIC_RATIO, BONUS_DENOMINATOR, BONUS_FOR_REFERRER_USE_E3, BONUS_MAX_E3,\n E12_U128, E3_U128, E6_U128, E8_U128, INSTANT_CONTRIBUTOR_RELEASE_E3,\n INSTANT_FOUNDERS_RELEASE_E3, PART_OD_FOUNDATION_E3, PART_OF_FOUNDERS_E3,\n REWARD_FOR_REFERER_E3, VEST_DURATION,\n },\n modules::tge::{\n errors::TGEError,\n events::{BonusMultiplierSet, Contribution, PhaseChanged, Stakedrop},\n storage_fields::public_contribution::PublicContributionStorage,\n traits::{AbaxTGE, AbaxTGEView, AbaxToken, AbaxTokenRef},\n },\n };\n pub use ink::{\n codegen::{Env, TraitCallBuilder},\n prelude::{vec, vec::Vec},\n ToAccountId,\n };\n pub use pendzl::{\n contracts::{\n general_vest::{GeneralVest, GeneralVestRef, VestingSchedule},\n psp22::{PSP22Ref, PSP22},\n },\n math::{\n errors::MathError,\n operations::{mul_div, Rounding},\n },\n };\n\n /// A role type for access to stakedrop function - 4_193_574_647_u32.\n pub const STAKEDROP_ADMIN: RoleType = ink::selector_id!(\"STAKEDROP_ADMIN\");\n /// A role type for access to set_exp_bonus_multiplier_e3 function\n pub const REFERRER_ADMIN: RoleType = ink::selector_id!(\"REFERRER_ADMIN\");\n /// A role type for access to set_exp_bonus_multiplier_e3 function\n pub const BONUS_ADMIN: RoleType = ink::selector_id!(\"BONUS_ADMIN\");\n\n pub const MINIMUM_AMOUNT: Balance = 25_000_000_000_000; // 1 USDC in phase one\n\n pub enum Generate {\n // used to generate for referrers\n Reserve,\n // used to generate for contributors\n Distribute,\n }\n\n #[ink(storage)]\n #[derive(StorageFieldGetter)]\n pub struct TGEContract {\n #[storage_field]\n access_control: AccessControlData,\n #[storage_field]\n tge: PublicContributionStorage,\n }\n\n impl TGEContract {\n #[allow(clippy::too_many_arguments)]\n #[ink(constructor)]\n pub fn new(\n start_time: Timestamp,\n phase_two_duration: Timestamp,\n generated_token_address: AccountId,\n contribution_token_address: AccountId,\n vester_address: AccountId,\n founders_address: AccountId,\n foundation_address: AccountId,\n strategic_reserves_address: AccountId,\n phase_one_token_cap: u128,\n cost_to_mint_milliard_tokens: u128,\n ) -> Self {\n Self {\n access_control: AccessControlData::new(Some(Self::env().caller())),\n tge: PublicContributionStorage::new(\n start_time,\n phase_two_duration,\n generated_token_address,\n contribution_token_address,\n vester_address,\n founders_address,\n foundation_address,\n strategic_reserves_address,\n phase_one_token_cap,\n cost_to_mint_milliard_tokens,\n ),\n }\n }\n }\n\n impl AbaxTGE for TGEContract {\n #[ink(message)]\n fn init(&mut self) -> Result<(), TGEError> {\n if self.tge.total_amount_minted() > 0 {\n return Err(TGEError::AlreadyInitialized);\n }\n\n self.generate_to_self(mul_div(\n 80,\n self.tge.phase_one_token_cap,\n 100,\n Rounding::Down,\n )?)?;\n self.tge.reserve_tokens(\n self.tge.founders_address,\n mul_div(20, self.tge.phase_one_token_cap, 100, Rounding::Down)?,\n )?;\n self.tge.reserve_tokens(\n self.tge.foundation_address,\n mul_div(2, self.tge.phase_one_token_cap, 100, Rounding::Down)?,\n )?;\n self.tge.reserve_tokens(\n self.tge.strategic_reserves_address,\n mul_div(58, self.tge.phase_one_token_cap, 100, Rounding::Down)?,\n )?;\n Ok(())\n }\n\n // creates tokens for the contributor (amount + bonus)\n // 40% of the tokens are instantly transfered to the contributor\n // the rest is scheduled to be vested over 4 years\n // takes into account the exp bonus, contribution bonus and refferer bonus\n // if refferer is passed generates tokens for the referer\n // updates the base created and bonus created amounts\n #[ink(message)]\n fn contribute(\n &mut self,\n to_create: Balance,\n receiver: AccountId,\n referrer: Option,\n ) -> Result {\n self._ensure_has_started()?;\n self._ensure_is_not_finished()?;\n _ensure_minimum_amount(to_create)?;\n self._ensure_caller_is_not_contract()?;\n self._ensure_referrer_is_registered(referrer)?;\n\n let contributor = self.env().caller();\n\n let cost = self.calculate_cost(to_create)?;\n\n self.tge\n .contribution_token\n .call_mut()\n .transfer_from(\n contributor,\n self.tge.strategic_reserves_address,\n cost,\n vec![],\n )\n .call_v1()\n .invoke()?;\n self.tge.increase_contributed_amount(contributor, cost)?;\n\n let bonus = self.calculate_bonus_and_update_created_base_and_bonus(\n contributor,\n to_create,\n referrer,\n )?;\n\n self.generate_tokens(\n receiver,\n to_create.checked_add(bonus).ok_or(MathError::Overflow)?,\n Generate::Distribute,\n )?;\n\n if let Some(r) = referrer {\n let referer_reward = mul_denom_e3(to_create, REWARD_FOR_REFERER_E3 as u128)?;\n self.generate_tokens(r, referer_reward, Generate::Reserve)?;\n }\n\n self.env().emit_event(Contribution {\n contributor,\n receiver,\n to_create,\n referrer,\n });\n\n Ok(cost)\n }\n\n // reserves amount.checked_add(bonus).ok_or(MathError::Overflow)? of tokens for the receiver\n // updates the contributed amount of the by the fee_paid\n // updates the base created and bonus created amounts\n #[ink(message)]\n fn stakedrop(\n &mut self,\n amount: Balance,\n fee_paid: Balance,\n receiver: AccountId,\n ) -> Result<(), TGEError> {\n self._ensure_has_role(STAKEDROP_ADMIN, Some(self.env().caller()))?;\n self._ensure_has_not_started()?;\n self.tge.increase_contributed_amount(receiver, fee_paid)?;\n\n let bonus =\n self.calculate_bonus_and_update_created_base_and_bonus(receiver, amount, None)?;\n\n let amount_plus_bonus = amount.checked_add(bonus).ok_or(MathError::Overflow)?;\n self.generate_to_self(amount_plus_bonus)?;\n self.tge.reserve_tokens(receiver, amount_plus_bonus)?;\n\n self.env().emit_event(Stakedrop {\n receiver,\n amount,\n fee_paid,\n });\n Ok(())\n }\n\n // collects reserved tokens for the caller\n // distributes the reserved tokens to the caller according to the rules (instnant / vesting)\n // deletes the reserved tokens\n #[ink(message)]\n fn collect_reserved(&mut self, account: AccountId) -> Result {\n self._ensure_has_started()?;\n\n let reserved_amount = self.tge.collect_reserved_tokens(account)?;\n\n if account == self.tge.strategic_reserves_address\n || account == self.tge.foundation_address\n {\n self.distribute(account, reserved_amount, E3_U128 as u16)?;\n } else if account == self.tge.founders_address {\n self.distribute(account, reserved_amount, INSTANT_FOUNDERS_RELEASE_E3)?;\n } else {\n self.distribute(account, reserved_amount, INSTANT_CONTRIBUTOR_RELEASE_E3)?;\n }\n Ok(reserved_amount)\n }\n\n #[ink(message)]\n fn set_exp_bonus_multiplier_e3(\n &mut self,\n contributor: AccountId,\n bonus_multiplier_e3: u16,\n ) -> Result<(), TGEError> {\n self._ensure_has_role(BONUS_ADMIN, Some(self.env().caller()))?;\n self.tge\n .set_exp_bonus_multiplier_of_e3(&contributor, &bonus_multiplier_e3);\n self.env().emit_event(BonusMultiplierSet {\n account: contributor,\n multiplier: bonus_multiplier_e3,\n });\n Ok(())\n }\n\n #[ink(message)]\n fn register_referrer(&mut self, referrer: AccountId) -> Result<(), TGEError> {\n self._ensure_has_role(REFERRER_ADMIN, Some(self.env().caller()))?;\n self.tge.add_referrer(&referrer);\n Ok(())\n }\n }\n\n impl AbaxTGEView for TGEContract {\n //returns a tuple with all of the TGE state properties that are not mappings\n #[ink(message)]\n fn tge_parameters(\n &self,\n ) -> (\n u64,\n Option,\n u64,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n u128,\n u128,\n ) {\n (\n self.tge.start_time,\n self.tge.phase_two_start_time,\n self.tge.phase_two_duration,\n self.tge.generated_token_address,\n self.tge.contribution_token.to_account_id(),\n self.tge.vester.to_account_id(),\n self.tge.founders_address,\n self.tge.foundation_address,\n self.tge.strategic_reserves_address,\n self.tge.phase_one_token_cap,\n self.tge.cost_to_mint_milliard_tokens,\n )\n }\n\n #[ink(message)]\n fn total_amount_minted(&self) -> Balance {\n self.tge.total_amount_minted()\n }\n\n #[ink(message)]\n fn exp_bonus_multiplier_of_e3(&self, account: AccountId) -> u16 {\n self.tge.exp_bonus_multiplier_of_e3(&account)\n }\n\n #[ink(message)]\n fn contribution_bonus_multiplier_of_e3(&self, account: AccountId) -> u16 {\n self.get_contribution_bonus_multiplier_e3(account)\n }\n #[ink(message)]\n fn is_referrer(&self, account: AccountId) -> bool {\n self.tge.is_referrer(&account)\n }\n\n #[ink(message)]\n fn reserved_for(&self, account: AccountId) -> Balance {\n self.tge.reserved_tokens(&account)\n }\n\n #[ink(message)]\n fn contributed_amount_by(&self, account: AccountId) -> Balance {\n self.tge.contributed_amount_by(&account)\n }\n\n #[ink(message)]\n fn generated_base_amount_by(&self, account: AccountId) -> Balance {\n self.tge.base_amount_created(&account)\n }\n\n #[ink(message)]\n fn generated_bonus_amount_by(&self, account: AccountId) -> Balance {\n self.tge.bonus_amount_created(&account)\n }\n\n #[ink(message)]\n fn calculate_cost(&self, to_create: Balance) -> Balance {\n self.calculate_cost(to_create).unwrap_or(0)\n }\n }\n\n fn _ensure_minimum_amount(to_create: u128) -> Result<(), TGEError> {\n if to_create < MINIMUM_AMOUNT {\n return Err(TGEError::AmountLessThanMinimum);\n }\n Ok(())\n }\n\n impl TGEContract {\n fn _ensure_has_started(&self) -> Result<(), TGEError> {\n if self.env().block_timestamp() < self.tge.start_time {\n return Err(TGEError::TGENotStarted);\n }\n if self.tge.total_amount_minted() == 0 {\n return Err(TGEError::TGENotStarted);\n }\n Ok(())\n }\n\n fn _ensure_has_not_started(&self) -> Result<(), TGEError> {\n if self.env().block_timestamp() >= self.tge.start_time {\n return Err(TGEError::TGEStarted);\n }\n Ok(())\n }\n\n fn _ensure_is_not_finished(&self) -> Result<(), TGEError> {\n if let Some(phase_two_start_time) = self.tge.phase_two_start_time {\n let phase_two_end = phase_two_start_time\n .checked_add(self.tge.phase_two_duration)\n .ok_or(MathError::Overflow)?;\n if self.env().block_timestamp() > phase_two_end {\n return Err(TGEError::TGEEnded);\n }\n }\n Ok(())\n }\n\n fn _ensure_caller_is_not_contract(&self) -> Result<(), TGEError> {\n if self.env().is_contract(&self.env().caller()) {\n Err(TGEError::ContributionViaContract)\n } else {\n Ok(())\n }\n }\n\n fn _ensure_referrer_is_registered(\n &self,\n referrer: Option,\n ) -> Result<(), TGEError> {\n if let Some(referrer) = referrer {\n if !self.tge.is_referrer(&referrer) {\n return Err(TGEError::InvalidReferrer);\n }\n }\n Ok(())\n }\n\n fn _is_phase_one(&self) -> bool {\n self.tge.phase_two_start_time.is_none()\n }\n }\n impl TGEContract {\n // return bonus multiplier awarded for contribution\n fn get_contribution_bonus_multiplier_e3(&self, contributor: AccountId) -> u16 {\n let amount_contributed = self.tge.contributed_amount_by(&contributor);\n // if overflow happens return maximal bonus\n u16::try_from(\n mul_div(amount_contributed, 10, BONUS_DENOMINATOR, Rounding::Down).unwrap_or(100),\n )\n .unwrap_or(100)\n }\n\n /// returns the bonus amount of tokens based on the base_amount and zealy exp bonus, contribution bonus and refferer\n /// updates the base amount received and the bonus amount received\n fn calculate_bonus_and_update_created_base_and_bonus(\n &mut self,\n contributor: AccountId,\n to_create: u128,\n referrer: Option,\n ) -> Result {\n let mut bonus_multiplier_e3 = self\n .tge\n .exp_bonus_multiplier_of_e3(&contributor)\n .checked_add(self.get_contribution_bonus_multiplier_e3(contributor))\n .ok_or(MathError::Overflow)?;\n\n if referrer.is_some() {\n bonus_multiplier_e3 = bonus_multiplier_e3\n .checked_add(BONUS_FOR_REFERRER_USE_E3)\n .ok_or(MathError::Overflow)?;\n }\n\n if bonus_multiplier_e3 > BONUS_MAX_E3 {\n bonus_multiplier_e3 = BONUS_MAX_E3;\n }\n\n self.tge\n .increase_base_amount_created(&contributor, to_create)?;\n let received_base = self.tge.base_amount_created(&contributor);\n\n let eligible_bonus = mul_denom_e3(received_base, bonus_multiplier_e3 as u128)?;\n let bonus_already_received = self.tge.bonus_amount_created(&contributor);\n // it may happen that the previously one used refferers code and now one is not using one.\n // This may result in a bonus_already_received being greater than eligible_bonus\n let bonus = eligible_bonus.saturating_sub(bonus_already_received);\n self.tge\n .increase_bonus_amount_created(&contributor, bonus)?;\n\n Ok(bonus)\n }\n\n // Calculates the cost of creating tokens (doesn't include bonuses)\n // During phase 1\n // The cost is amount_to_create * phase_one_cost_per_milliard_tokens / 10^12\n // During phase 2\n // The cost is\n // amount_to_create * effective_cost_per_milliard / 10^12\n // where effective cost per milliard tokens is equal to the cost before and cost after the minting\n // the cost is given by phase_one_cost_per_milliard_tokens * (total_amount_minted * phase_one_token_cap)\n fn calculate_cost(&self, to_create: Balance) -> Result {\n let mut amount_phase1 = 0;\n let mut amount_phase2 = 0;\n let total_amount_minted = self.tge.total_amount_minted();\n\n if total_amount_minted >= self.tge.phase_one_token_cap {\n amount_phase2 = to_create;\n } else if total_amount_minted\n .checked_add(to_create)\n .ok_or(MathError::Overflow)?\n <= self.tge.phase_one_token_cap\n {\n amount_phase1 = to_create;\n } else {\n amount_phase1 = self\n .tge\n .phase_one_token_cap\n .checked_sub(total_amount_minted)\n .ok_or(MathError::Underflow)?;\n amount_phase2 = to_create\n .checked_sub(amount_phase1)\n .ok_or(MathError::Underflow)?;\n }\n\n let cost_phase1: Balance =\n mul_denom_e12(amount_phase1, self.tge.cost_to_mint_milliard_tokens)?;\n\n let cost_phase2: Balance = {\n if amount_phase2 == 0 {\n 0\n } else {\n // take into account that during 2nd phase contributor also generates tokens to founders foundation and strategic reserves to keep 20/20/2/58 ratio.\n let effective_tokens = amount_phase2\n .checked_mul(ALL_TO_PUBLIC_RATIO)\n .ok_or(MathError::Overflow)?;\n\n let averaged_amount =\n if self.tge.total_amount_minted() <= self.tge.phase_one_token_cap {\n self.tge\n .phase_one_token_cap\n .checked_add(effective_tokens / 2)\n .ok_or(MathError::Overflow)?\n } else {\n self.tge\n .total_amount_minted()\n .checked_add(effective_tokens / 2)\n .ok_or(MathError::Overflow)?\n };\n\n let effective_cost_per_milliard = mul_div(\n self.tge.cost_to_mint_milliard_tokens,\n averaged_amount,\n self.tge.phase_one_token_cap,\n Rounding::Up,\n )?;\n\n mul_denom_e12(amount_phase2, effective_cost_per_milliard)?\n }\n };\n\n Ok(cost_phase1\n .checked_add(cost_phase2)\n .ok_or(MathError::Overflow)?)\n }\n\n // Generates tokens\n // it approperiatly distributes/resereves tokens to \"to\"\n // if in phase_two it additionally mints tokens to self and reserves tokens for founders,foundation and strategic reserves\n fn generate_tokens(\n &mut self,\n to: AccountId,\n amount: Balance,\n gen: Generate,\n ) -> Result<(), TGEError> {\n let total_amount_minted = self.tge.total_amount_minted();\n let total_amount_minted_plus_amount = total_amount_minted\n .checked_add(amount)\n .ok_or(MathError::Overflow)?;\n\n if total_amount_minted < self.tge.phase_one_token_cap\n && total_amount_minted_plus_amount >= self.tge.phase_one_token_cap\n {\n self.tge.phase_two_start_time = Some(self.env().block_timestamp());\n self.env().emit_event(PhaseChanged {});\n }\n\n let mut amount_phase1 = 0;\n let mut amount_phase2 = 0;\n\n if total_amount_minted >= self.tge.phase_one_token_cap {\n amount_phase2 = amount;\n } else if total_amount_minted_plus_amount <= self.tge.phase_one_token_cap {\n amount_phase1 = amount;\n } else {\n amount_phase1 = self\n .tge\n .phase_one_token_cap\n .checked_sub(total_amount_minted)\n .ok_or(MathError::Underflow)?;\n amount_phase2 = amount\n .checked_sub(amount_phase1)\n .ok_or(MathError::Underflow)?;\n }\n\n // in phase 2 whenever a token is generated during contribution appropariate amount of tokens is created for foundation, founders, strategic reserves to keep the 20/20/2/58 ratio.\n let amount_to_mint_phase2 = ALL_TO_PUBLIC_RATIO\n .checked_mul(amount_phase2)\n .ok_or(MathError::Overflow)?;\n let amount_to_mint = amount_phase1\n .checked_add(amount_to_mint_phase2)\n .ok_or(MathError::Overflow)?;\n\n self.generate_to_self(amount_to_mint)?;\n\n match gen {\n Generate::Reserve => {\n self.tge.reserve_tokens(to, amount)?;\n }\n Generate::Distribute => {\n self.distribute(to, amount, INSTANT_CONTRIBUTOR_RELEASE_E3)?;\n }\n }\n\n if amount_phase2 > 0 {\n let founders_amount =\n mul_denom_e3(amount_to_mint_phase2, PART_OF_FOUNDERS_E3 as u128)?;\n self.tge\n .reserve_tokens(self.tge.founders_address, founders_amount)?;\n let foundation_amount =\n mul_denom_e3(amount_to_mint_phase2, PART_OD_FOUNDATION_E3 as u128)?;\n self.tge\n .reserve_tokens(self.tge.foundation_address, foundation_amount)?;\n let strategic_reserves_amount = amount_to_mint_phase2\n .checked_sub(\n founders_amount\n .checked_add(foundation_amount)\n .ok_or(MathError::Overflow)?\n .checked_add(amount_phase2)\n .ok_or(MathError::Overflow)?,\n )\n .ok_or(MathError::Underflow)?;\n self.tge.reserve_tokens(\n self.tge.strategic_reserves_address,\n strategic_reserves_amount,\n )?;\n }\n\n Ok(())\n }\n\n fn generate_to_self(&mut self, amount: Balance) -> Result<(), TGEError> {\n let mut abax: AbaxTokenRef = self.tge.generated_token_address.into();\n\n abax.call_mut()\n .generate(self.env().account_id(), amount)\n .call_v1()\n .invoke()?;\n self.tge.increase_total_amount_minted(amount)?;\n Ok(())\n }\n\n /// Distributes tokens to \"to\"\n /// instant_e3 / E3 part of the amount is instantly transfered to \"to\"\n /// the rest is scheduled to be vested\n fn distribute(\n &self,\n to: AccountId,\n amount: Balance,\n instant_e3: u16,\n ) -> Result<(), TGEError> {\n let amount_to_transfer = mul_denom_e3(amount, instant_e3 as u128)?;\n let amount_to_vest = amount\n .checked_sub(amount_to_transfer)\n .ok_or(MathError::Underflow)?;\n\n let mut psp22: PSP22Ref = self.tge.generated_token_address.into();\n psp22\n .call_mut()\n .transfer(to, amount_to_transfer, Vec::::new())\n .call_v1()\n .invoke()?;\n\n if amount_to_vest > 0 {\n self.schedule_vest(to, amount_to_vest)?;\n }\n\n Ok(())\n }\n\n // creates a vesting schedule for \"to\" with \"amount\" of tokens\n fn schedule_vest(&self, to: AccountId, amount: Balance) -> Result<(), TGEError> {\n let mut general_vest: GeneralVestRef = self.tge.vester.to_account_id().into();\n let mut psp22: PSP22Ref = self.tge.generated_token_address.into();\n\n psp22\n .call_mut()\n .approve(self.tge.vester.to_account_id(), amount)\n .call_v1()\n .invoke()?;\n general_vest\n .call_mut()\n .create_vest(\n to,\n Some(psp22.to_account_id()),\n amount,\n VestingSchedule::Constant(0, VEST_DURATION),\n vec![],\n )\n .call_v1()\n .invoke()?;\n Ok(())\n }\n }\n fn mul_denom_e12(a: u128, b: u128) -> Result {\n mul_div(a, b, E12_U128, Rounding::Down)\n }\n\n fn mul_denom_e3(a: u128, b: u128) -> Result {\n mul_div(a, b, E3_U128, Rounding::Down)\n }\n}\n", - "modules/mod.rs":"pub mod tge;\n", - "modules/tge/errors.rs":"use pendzl::{\n contracts::{\n access_control::AccessControlError, general_vest::VestingError, psp22::PSP22Error,\n },\n math::errors::MathError,\n};\n\n#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo))]\npub enum TGEError {\n PSP22Error(PSP22Error),\n\n MathError(MathError),\n AccessControlError(AccessControlError),\n CreateVestFailed(VestingError),\n AmountLessThanMinimum,\n TGENotStarted,\n TGEStarted,\n TGEEnded,\n Phase1TokenCapReached,\n ContributionViaContract,\n InvalidReferrer,\n NoReservedTokens,\n AlreadyInitialized,\n}\n\nimpl From for TGEError {\n fn from(e: PSP22Error) -> Self {\n TGEError::PSP22Error(e)\n }\n}\n\nimpl From for TGEError {\n fn from(e: MathError) -> Self {\n TGEError::MathError(e)\n }\n}\n\nimpl From for TGEError {\n fn from(e: VestingError) -> Self {\n TGEError::CreateVestFailed(e)\n }\n}\n\nimpl From for TGEError {\n fn from(error: AccessControlError) -> Self {\n TGEError::AccessControlError(error)\n }\n}\n", - "modules/tge/events.rs":"pub use ink::primitives::AccountId;\npub use pendzl::traits::Balance;\n#[ink::event]\npub struct Contribution {\n #[ink(topic)]\n pub contributor: AccountId,\n pub receiver: AccountId,\n pub to_create: Balance,\n pub referrer: Option,\n}\n#[ink::event]\npub struct Stakedrop {\n #[ink(topic)]\n pub receiver: AccountId,\n pub amount: Balance,\n pub fee_paid: Balance,\n}\n\n#[ink::event]\npub struct BonusMultiplierSet {\n #[ink(topic)]\n pub account: AccountId,\n pub multiplier: u16,\n}\n\n#[ink::event]\npub struct PhaseChanged {}\n", - "modules/tge/mod.rs":"pub mod errors;\npub mod events;\npub mod storage_fields;\npub mod structs;\npub mod traits;\n", - "modules/tge/storage_fields/mod.rs":"pub mod public_contribution;\n", - "modules/tge/storage_fields/public_contribution.rs":"use ink::storage::Mapping;\nuse pendzl::{\n contracts::{general_vest::GeneralVestRef, psp22::PSP22Ref},\n math::errors::MathError,\n traits::{AccountId, Balance, Timestamp},\n};\n\nuse crate::modules::tge::errors::TGEError;\n\n#[derive(Debug)]\n#[pendzl::storage_item]\npub struct PublicContributionStorage {\n // after thet timestamp accounts can start to contribute.\n pub start_time: Timestamp,\n // The timestamp at which phase one was concluded and phase two started.\n pub phase_two_start_time: Option,\n // The duration of phase two.\n pub phase_two_duration: Timestamp,\n // token that is generated by the TGE.\n pub generated_token_address: AccountId,\n // token that is contributed by the public.\n pub contribution_token: PSP22Ref,\n // contract used to create vesting schedules.\n pub vester: GeneralVestRef,\n // account of the founders.\n pub founders_address: AccountId,\n // account of the foundation.\n pub foundation_address: AccountId,\n // account of the strategic reserves.\n pub strategic_reserves_address: AccountId,\n\n // total amount of tokens created in phase one and stakedrop.\n pub phase_one_token_cap: Balance,\n // cost to mint 1 milliard tokens (in absolute units) [ in contribution_token]\n pub cost_to_mint_milliard_tokens: u128,\n // total amount of distributed tokens.\n total_amount_minted: Balance,\n // bonus multiplier based on the Zealy EXP.\n exp_bonus_multiplier_e3_by_address: Mapping,\n // amount of tokens contributed by each account.\n contributed_amount_by_account: Mapping,\n /// amount of tokens received by each account - doesnt include bonus.\n base_created_by_account: Mapping,\n /// amount of bonus tokens received by each account.\n bonus_created_by_account: Mapping,\n // reserved tokens for beneficiaries of referals / foundation / strategic reserves / founders.\n reserved_tokens: Mapping,\n // contains referrers.\n referrers: Mapping,\n}\n\nimpl PublicContributionStorage {\n #[allow(clippy::too_many_arguments)]\n pub fn new(\n start_time: Timestamp,\n phase_two_duration: Timestamp,\n generated_token_address: AccountId,\n contribution_token_address: AccountId,\n vester_address: AccountId,\n founders_address: AccountId,\n foundation_address: AccountId,\n strategic_reserves_address: AccountId,\n phase_one_token_cap: u128,\n cost_to_mint_milliard_tokens: u128,\n ) -> Self {\n Self {\n start_time,\n phase_two_start_time: None,\n phase_two_duration,\n generated_token_address,\n contribution_token: contribution_token_address.into(),\n vester: vester_address.into(),\n phase_one_token_cap,\n founders_address,\n foundation_address,\n strategic_reserves_address,\n cost_to_mint_milliard_tokens,\n total_amount_minted: 0,\n exp_bonus_multiplier_e3_by_address: Default::default(),\n contributed_amount_by_account: Default::default(),\n base_created_by_account: Default::default(),\n bonus_created_by_account: Default::default(),\n reserved_tokens: Default::default(),\n referrers: Default::default(),\n }\n }\n\n pub fn total_amount_minted(&self) -> Balance {\n self.total_amount_minted\n }\n\n pub fn increase_total_amount_minted(&mut self, amount: Balance) -> Result<(), MathError> {\n self.total_amount_minted = self\n .total_amount_minted\n .checked_add(amount)\n .ok_or(MathError::Overflow)?;\n Ok(())\n }\n\n pub fn increase_base_amount_created(\n &mut self,\n account: &AccountId,\n amount: Balance,\n ) -> Result<(), MathError> {\n let received_base_amount = self\n .base_created_by_account\n .get(account)\n .unwrap_or_default();\n self.base_created_by_account.insert(\n account,\n &(received_base_amount\n .checked_add(amount)\n .ok_or(MathError::Overflow)?),\n );\n Ok(())\n }\n\n pub fn base_amount_created(&self, account: &AccountId) -> Balance {\n self.base_created_by_account\n .get(account)\n .unwrap_or_default()\n }\n\n pub fn increase_bonus_amount_created(\n &mut self,\n account: &AccountId,\n amount: Balance,\n ) -> Result<(), MathError> {\n let received_bonus_amount = self\n .bonus_created_by_account\n .get(account)\n .unwrap_or_default();\n self.bonus_created_by_account.insert(\n account,\n &(received_bonus_amount\n .checked_add(amount)\n .ok_or(MathError::Overflow)?),\n );\n Ok(())\n }\n\n pub fn bonus_amount_created(&self, account: &AccountId) -> Balance {\n self.bonus_created_by_account\n .get(account)\n .unwrap_or_default()\n }\n\n pub fn contributed_amount_by(&self, account: &AccountId) -> Balance {\n self.contributed_amount_by_account\n .get(account)\n .unwrap_or_default()\n }\n\n pub fn increase_contributed_amount(\n &mut self,\n account: AccountId,\n amount: Balance,\n ) -> Result<(), MathError> {\n let contributed_amount = self\n .contributed_amount_by_account\n .get(account)\n .unwrap_or_default();\n self.contributed_amount_by_account.insert(\n account,\n &(contributed_amount\n .checked_add(amount)\n .ok_or(MathError::Overflow)?),\n );\n Ok(())\n }\n\n pub fn reserved_tokens(&self, account: &AccountId) -> Balance {\n self.reserved_tokens.get(account).unwrap_or(0)\n }\n\n pub fn reserve_tokens(&mut self, account: AccountId, amount: Balance) -> Result<(), MathError> {\n let reserved_amount = self.reserved_tokens.get(account).unwrap_or_default();\n self.reserved_tokens.insert(\n account,\n &(reserved_amount\n .checked_add(amount)\n .ok_or(MathError::Overflow)?),\n );\n Ok(())\n }\n\n pub fn collect_reserved_tokens(&mut self, account: AccountId) -> Result {\n self.reserved_tokens\n .take(account)\n .ok_or(TGEError::NoReservedTokens)\n }\n\n pub fn set_exp_bonus_multiplier_of_e3(\n &mut self,\n account: &AccountId,\n bonus_multiplier_e3: &u16,\n ) {\n self.exp_bonus_multiplier_e3_by_address\n .insert(account, bonus_multiplier_e3);\n }\n\n pub fn exp_bonus_multiplier_of_e3(&self, account: &AccountId) -> u16 {\n self.exp_bonus_multiplier_e3_by_address\n .get(account)\n .unwrap_or_default()\n }\n\n pub fn add_referrer(&mut self, account: &AccountId) {\n self.referrers.insert(account, &());\n }\n\n pub fn remove_referrer(&mut self, account: &AccountId) {\n self.referrers.take(account);\n }\n\n pub fn is_referrer(&self, account: &AccountId) -> bool {\n self.referrers.contains(account)\n }\n}\n", - "modules/tge/structs.rs":"use pendzl::traits::Timestamp;\n\n#[derive(Debug, Copy, Clone, scale::Encode, scale::Decode)]\npub struct TokenAllocationDistribution {\n pub public_contribution: Allocation,\n pub founders: Allocation,\n pub foundation: Allocation,\n pub strategic_reserves: Allocation,\n}\n\n#[derive(Debug, Copy, Clone, scale::Encode, scale::Decode)]\npub struct Allocation {\n pub instant_release_percentage_e3: u16,\n pub vesting_params: Option,\n}\n\n#[derive(Debug, Copy, Clone, scale::Encode, scale::Decode)]\npub struct VestingParams {\n pub amount_to_release_percentage_e3: u16,\n pub duration: Timestamp,\n}\n", - "modules/tge/traits.rs":"use pendzl::{\n contracts::psp22::PSP22Error,\n traits::{AccountId, Balance},\n};\n\nuse crate::modules::tge::errors::TGEError;\n\n#[ink::trait_definition]\n/// Trait defining the functions for the TGE module.\npub trait AbaxTGE {\n /// Initializes the TGE.\n /// Reserves tokens for foundation, strategic reserves and founders.\n ///\n /// # Errors\n ///\n /// Returns \"AlreadyInitialized\" if the TGE has already been initialized.\n #[ink(message)]\n fn init(&mut self) -> Result<(), TGEError>;\n /// Contribute function for the TGE module.\n ///\n /// # Arguments\n ///\n /// * `to_create` - The amount of tokens to create.\n /// * `receiver` - The account ID of the receiver.\n /// * `referrer` - An optional account ID of the referrer.\n ///\n /// # Returns\n ///\n /// Returns the amount of tokens created as a result of the contribution, or an error if the contribution fails.\n #[ink(message)]\n fn contribute(\n &mut self,\n to_create: Balance,\n receiver: AccountId,\n referrer: Option,\n ) -> Result;\n\n /// Stakedrop function for the TGE module.\n ///\n /// # Arguments\n ///\n /// * `to_create` - The amount of tokens to create.\n /// * `fee_paid` - The fee paid for the stakedrop.\n /// * `receiver` - The account ID of the receiver.\n ///\n /// # Returns\n ///\n /// Returns `Ok(())` if the stakedrop is successful, or an error if the stakedrop fails.\n #[ink(message)]\n fn stakedrop(\n &mut self,\n to_create: Balance,\n fee_paid: Balance,\n receiver: AccountId,\n ) -> Result<(), TGEError>;\n\n /// Collect reserved tokens for account and distributes them to account..\n ///\n /// # Returns\n ///\n /// Returns the amount of reserved tokens collected, or an error if the collection fails.\n #[ink(message)]\n fn collect_reserved(&mut self, account: AccountId) -> Result;\n\n #[ink(message)]\n fn set_exp_bonus_multiplier_e3(\n &mut self,\n contributor: AccountId,\n bonus_multiplier_e3: u16,\n ) -> Result<(), TGEError>;\n\n #[ink(message)]\n fn register_referrer(&mut self, referrer: AccountId) -> Result<(), TGEError>;\n}\n\n#[ink::trait_definition]\npub trait AbaxTGEView {\n #[ink(message)]\n fn tge_parameters(\n &self,\n ) -> (\n u64,\n Option,\n u64,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n AccountId,\n u128,\n u128,\n );\n #[ink(message)]\n fn total_amount_minted(&self) -> Balance;\n\n #[ink(message)]\n fn exp_bonus_multiplier_of_e3(&self, contributor: AccountId) -> u16;\n\n #[ink(message)]\n fn contribution_bonus_multiplier_of_e3(&self, contributor: AccountId) -> u16;\n\n #[ink(message)]\n fn is_referrer(&self, contributor: AccountId) -> bool;\n\n #[ink(message)]\n fn reserved_for(&self, account: AccountId) -> Balance;\n\n #[ink(message)]\n fn contributed_amount_by(&self, account: AccountId) -> Balance;\n\n #[ink(message)]\n fn generated_base_amount_by(&self, account: AccountId) -> Balance;\n\n #[ink(message)]\n fn generated_bonus_amount_by(&self, account: AccountId) -> Balance;\n\n #[ink(message)]\n fn calculate_cost(&self, to_create: Balance) -> Balance;\n}\n\nuse ink::{contract_ref, env::DefaultEnvironment};\npub type AbaxTokenRef = contract_ref!(AbaxToken, DefaultEnvironment);\n\n#[ink::trait_definition]\npub trait AbaxToken {\n #[ink(message)]\n fn generate(&mut self, to: AccountId, amount: Balance) -> Result<(), PSP22Error>;\n\n #[ink(message)]\n fn inflation_rate_per_milisecond(&self) -> Balance;\n\n #[ink(message)]\n fn cap(&self) -> Balance;\n}\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/abax_token/subscan_verify.json b/src/contracts/abax_token/subscan_verify.json deleted file mode 100644 index f36a956..0000000 --- a/src/contracts/abax_token/subscan_verify.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_token\"\nversion = \"1.0.0\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.0.98\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f\"\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"platforms\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125\"\n\n[[package]]\nname = \"either\"\nversion = \"1.12.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d\"\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.2.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.1\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.155\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.26\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"833222afbfe72868ac8f9770c91a33673f0d5fefc37c9dbe94aa3548b571623f\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.26\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"39f0dea92dbea3271557cc2e1848723967bba81f722f95026860974ec9283f08\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.19\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"platforms\"\nversion = \"3.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7\"\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de\"\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"3.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284\"\ndependencies = [\n \"toml_edit 0.21.1\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.85\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.36\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.23\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.23\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.14\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.29.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.117\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3\"\ndependencies = [\n \"itoa\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.66\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.21.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.40\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03\"\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.8.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_token\"\nversion = \"1.0.0\"\nauthors = [\"\"]\nedition = \"2021\"\n\n[dependencies]\nink = { version = \"5.0.0\", default-features = false }\n\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n \"chain-error\",\n] }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\n\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"psp22_impl\",\n \"psp22_metadata_impl\",\n \"psp22_mintable\",\n \"access_control_impl\",\n \"set_code_hash_impl\",\n] }\n\n\n[lib]\nname = \"abax_token\"\npath = \"lib.rs\"\n\n\n[features]\ndefault = [\"std\"]\nstd = [\n \"ink/std\",\n \"scale/std\",\n \"scale-info\",\n \"scale-info/std\",\n\n # These dependencies\n \"pendzl/std\",\n]\nink-as-dependency = []\ne2e-tests = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "lib.rs":"#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\nmod modules;\n\n#[pendzl::implementation(PSP22, PSP22Metadata, AccessControl, SetCodeHash)]\n#[ink::contract]\npub mod abax_token {\n pub use crate::modules::capped_inflation::{\n capped_infaltion_storage_field::CappedInflation, reserved::Reserved, traits::AbaxToken,\n };\n pub use ink::prelude::string::String;\n pub use pendzl::contracts::psp22::{\n mintable::PSP22Mintable, PSP22Error, PSP22Internal, PSP22InternalDefaultImpl,\n };\n use pendzl::math::errors::MathError;\n\n #[ink(event)]\n pub struct CapUpdated {\n #[ink(topic)]\n cap: Balance,\n }\n\n const YEAR: u128 = 365 * 24 * 60 * 60 * 1000;\n const TEN_YEARS: u128 = 10 * YEAR;\n const MINTER: RoleType = ink::selector_id!(\"MINTER\");\n const GENERATOR: RoleType = ink::selector_id!(\"GENERATOR\");\n\n #[ink(storage)]\n #[derive(Default, StorageFieldGetter)]\n pub struct AbaxTokenContract {\n #[storage_field]\n access: AccessControlData,\n #[storage_field]\n psp22: PSP22Data,\n #[storage_field]\n metadata: PSP22MetadataData,\n #[storage_field]\n capped_inflation: CappedInflation,\n #[storage_field]\n upgradeable: Reserved,\n }\n\n #[overrider(PSP22Internal)]\n pub fn _mint_to(&mut self, to: &AccountId, amount: &Balance) -> Result<(), PSP22Error> {\n if (self\n ._total_supply()\n .checked_add(*amount)\n .ok_or(MathError::Overflow)?)\n > self.capped_inflation.cap()\n {\n return Err(PSP22Error::Custom(\"CapReached\".into()));\n }\n self._mint_to_default_impl(to, amount)\n }\n\n impl AbaxTokenContract {\n #[ink(constructor)]\n pub fn new(name: String, symbol: String, decimal: u8) -> Result {\n let mut instance = Self::default();\n instance.metadata.name.set(&name.into());\n instance.metadata.symbol.set(&symbol.into());\n instance.metadata.decimals.set(&decimal);\n\n instance._grant_role(0, Some(Self::env().caller()))?;\n\n Ok(instance)\n }\n\n pub fn _inflate_cap(&mut self) -> Result<(), MathError> {\n self.capped_inflation\n .inflate(self.env().block_timestamp())?;\n self.env().emit_event(CapUpdated {\n cap: self.capped_inflation.cap(),\n });\n Ok(())\n }\n }\n\n impl AbaxToken for AbaxTokenContract {\n // mints amount of tokens to the to `to`\n // inflates the cap\n // increases the cap by the `amount`\n // increases the inflation rate by the 10% of the `amount` per year\n #[ink(message)]\n fn generate(&mut self, to: AccountId, amount: Balance) -> Result<(), PSP22Error> {\n self._ensure_has_role(GENERATOR, Some(self.env().caller()))?;\n self._inflate_cap()?;\n let delta_inflation = amount.checked_div(TEN_YEARS).ok_or(MathError::DivByZero)?;\n self.capped_inflation\n .increase_inflation_rate_per_milisecond(delta_inflation)?;\n self.capped_inflation.increase_cap(amount)?;\n self._mint_to(&to, &amount)\n }\n\n #[ink(message)]\n fn inflation_rate_per_milisecond(&self) -> Balance {\n self.capped_inflation.inflation_rate_per_milisecond()\n }\n\n #[ink(message)]\n fn cap(&self) -> Balance {\n self.capped_inflation.cap()\n }\n }\n\n impl PSP22Mintable for AbaxTokenContract {\n #[ink(message)]\n fn mint(&mut self, to: AccountId, amount: Balance) -> Result<(), PSP22Error> {\n self._ensure_has_role(MINTER, Some(self.env().caller()))?;\n self._inflate_cap()?;\n self._mint_to(&to, &amount)\n }\n }\n}\n", - "modules/capped_inflation/capped_infaltion_storage_field.rs":"use pendzl::{\n math::errors::MathError,\n traits::{Balance, Timestamp},\n};\n\n#[derive(Default, Debug)]\n#[pendzl::storage_item]\npub struct CappedInflation {\n #[lazy]\n cap: Balance,\n #[lazy]\n inflation_rate_per_milisecond: Balance,\n #[lazy]\n last_cap_update: Timestamp,\n}\n\nimpl CappedInflation {\n pub fn cap(&self) -> Balance {\n self.cap.get().unwrap_or(0)\n }\n\n pub fn increase_cap(&mut self, amount: Balance) -> Result<(), MathError> {\n let cap = self.cap.get().unwrap_or(0);\n self.cap\n .set(&(cap.checked_add(amount).ok_or(MathError::Overflow)?));\n Ok(())\n }\n\n pub fn inflation_rate_per_milisecond(&self) -> Balance {\n self.inflation_rate_per_milisecond.get().unwrap_or(0)\n }\n\n pub fn set_inflation_rate_per_milisecond(&mut self, rate: Balance) {\n self.inflation_rate_per_milisecond.set(&rate);\n }\n\n pub fn increase_inflation_rate_per_milisecond(\n &mut self,\n rate: Balance,\n ) -> Result<(), MathError> {\n let inflation_rate = self.inflation_rate_per_milisecond.get().unwrap_or(0);\n self.inflation_rate_per_milisecond.set(\n &(inflation_rate\n .checked_add(rate)\n .ok_or(MathError::Overflow)?),\n );\n Ok(())\n }\n\n pub fn last_cap_update(&self) -> Timestamp {\n self.last_cap_update.get().unwrap_or(0)\n }\n\n pub fn inflate(&mut self, now: Timestamp) -> Result<(), MathError> {\n if now < self.last_cap_update() {\n panic!(\"Invalid timestamp\");\n }\n let time_diff = now\n .checked_sub(self.last_cap_update.get().unwrap_or(0))\n .ok_or(MathError::Underflow)? as u128;\n let increase_cap_by = self\n .inflation_rate_per_milisecond()\n .checked_mul(time_diff)\n .ok_or(MathError::Overflow)?;\n self.increase_cap(increase_cap_by)?;\n\n self.last_cap_update.set(&now);\n Ok(())\n }\n}\n", - "modules/capped_inflation/mod.rs":"pub mod capped_infaltion_storage_field;\npub mod reserved;\npub mod traits;\n", - "modules/capped_inflation/reserved.rs":"#[derive(Default, Debug)]\n#[pendzl::storage_item]\npub struct Reserved {\n #[lazy]\n pub version: u8,\n}\n", - "modules/capped_inflation/traits.rs":"use pendzl::traits::{AccountId, Balance};\n\nuse pendzl::contracts::psp22::PSP22Error;\n\n#[ink::trait_definition]\npub trait AbaxToken {\n #[ink(message)]\n fn generate(&mut self, to: AccountId, amount: Balance) -> Result<(), PSP22Error>;\n\n #[ink(message)]\n fn inflation_rate_per_milisecond(&self) -> Balance;\n\n #[ink(message)]\n fn cap(&self) -> Balance;\n}\n", - "modules/mod.rs":"pub mod capped_inflation;\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/abax_treasury/subscan_verify.json b/src/contracts/abax_treasury/subscan_verify.json deleted file mode 100644 index f4bf7b5..0000000 --- a/src/contracts/abax_treasury/subscan_verify.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_treasury\"\nversion = \"1.0.0\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.0.98\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f\"\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"platforms\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125\"\n\n[[package]]\nname = \"either\"\nversion = \"1.12.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d\"\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.2.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.1\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.155\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.26\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"833222afbfe72868ac8f9770c91a33673f0d5fefc37c9dbe94aa3548b571623f\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.26\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"39f0dea92dbea3271557cc2e1848723967bba81f722f95026860974ec9283f08\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.19\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"platforms\"\nversion = \"3.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7\"\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de\"\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"3.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284\"\ndependencies = [\n \"toml_edit 0.21.1\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.85\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.36\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.23\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.23\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.14\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.203\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.29.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.117\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3\"\ndependencies = [\n \"itoa\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.66\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.61\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.21.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.40\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.10\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03\"\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.8.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.66\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_treasury\"\nversion = \"1.0.0\"\nauthors = [\"\"]\nedition = \"2021\"\n\n[dependencies]\nink = { version = \"5.0.0\", default-features = false }\n\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n] }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\n\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"psp22\",\n \"general_vest\",\n \"access_control_impl\",\n \"set_code_hash_impl\",\n\n] }\n\n\n[lib]\nname = \"abax_treasury\"\npath = \"lib.rs\"\n\n\n[features]\ndefault = [\"std\"]\nstd = [\n \"ink/std\",\n \"scale/std\",\n \"scale-info\",\n \"scale-info/std\",\n\n # These dependencies\n \"pendzl/std\",\n]\nink-as-dependency = []\ne2e-tests = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "lib.rs":"#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\nmod modules;\n\n#[pendzl::implementation(AccessControl, SetCodeHash)]\n#[ink::contract]\npub mod abax_treasury {\n pub use crate::modules::treasury::{\n errors::AbaxTreasuryError,\n events::{OrderCancelled, OrderCreated, OrderExecuted, VesterChanged},\n storage_fields::operations::OrdersStorage,\n structs::{Operation, Order, OrderId},\n traits::{AbaxTreasury, AbaxTreasuryView},\n };\n use ink::codegen::TraitCallBuilder;\n pub use ink::{prelude::vec::Vec, ToAccountId};\n pub use pendzl::contracts::{\n general_vest::{GeneralVest, GeneralVestRef},\n psp22::{PSP22Ref, PSP22},\n };\n use pendzl::math::errors::MathError;\n\n pub const PARAMETERS_ADMIN: RoleType = ink::selector_id!(\"PARAMETERS_ADMIN\"); // 368_001_360_u32\n pub const SPENDER: RoleType = ink::selector_id!(\"SPENDER\"); // 3_684_413_446_u32\n pub const EXECUTOR: RoleType = ink::selector_id!(\"EXECUTOR\"); // 3_551_554_066_u32\n pub const CANCELLER: RoleType = ink::selector_id!(\"CANCELLER\"); //4_141_332_106_u32\n pub const RESCUER: RoleType = ink::selector_id!(\"RESCUER\"); //\n\n const SIXTY_DAYS: Timestamp = 60 * 24 * 60 * 60 * 1000;\n\n #[ink(storage)]\n #[derive(pendzl::traits::StorageFieldGetter)]\n pub struct AbaxTreasuryContract {\n #[storage_field]\n access: AccessControlData,\n #[storage_field]\n orders: OrdersStorage,\n }\n\n impl AbaxTreasuryContract {\n #[ink(constructor)]\n pub fn new(\n governor: AccountId,\n foundation: AccountId,\n vester: AccountId,\n ) -> Result {\n let mut instance = AbaxTreasuryContract {\n access: AccessControlData::new(Some(governor)),\n orders: OrdersStorage::new(&vester),\n };\n\n instance._grant_role(SPENDER, Some(governor))?;\n instance._grant_role(EXECUTOR, Some(foundation))?;\n instance._grant_role(CANCELLER, Some(foundation))?;\n instance._grant_role(RESCUER, Some(foundation))?;\n\n Ok(instance)\n }\n }\n\n impl AbaxTreasury for AbaxTreasuryContract {\n #[ink(message)]\n fn set_vester(&mut self, vester: AccountId) -> Result<(), AbaxTreasuryError> {\n let caller = self.env().caller();\n self._ensure_has_role(PARAMETERS_ADMIN, Some(caller))?;\n\n self.orders.set_vester(&vester);\n self.env()\n .emit_event::(VesterChanged { vester });\n\n Ok(())\n }\n\n #[ink(message)]\n fn create_order(\n &mut self,\n earliest_execution: Timestamp,\n latest_execution: Timestamp,\n operations: Vec,\n ) -> Result {\n let caller = self.env().caller();\n self._ensure_has_role(SPENDER, Some(caller))?;\n\n let order_id =\n self.orders\n .insert_order(earliest_execution, latest_execution, &operations)?;\n self.env().emit_event::(OrderCreated {\n id: order_id,\n earliest_execution,\n latest_execution,\n operations,\n });\n\n Ok(order_id)\n }\n\n #[ink(message)]\n fn rescue_order(\n &mut self,\n earliest_execution: Timestamp,\n latest_execution: Timestamp,\n operations: Vec,\n ) -> Result {\n let caller = self.env().caller();\n self._ensure_has_role(RESCUER, Some(caller))?;\n\n if earliest_execution\n < self\n .env()\n .block_timestamp()\n .checked_add(SIXTY_DAYS)\n .ok_or(MathError::Overflow)?\n {\n return Err(AbaxTreasuryError::WrongEarliestExecution);\n }\n\n let order_id =\n self.orders\n .insert_order(earliest_execution, latest_execution, &operations)?;\n self.env().emit_event::(OrderCreated {\n id: order_id,\n earliest_execution,\n latest_execution,\n operations,\n });\n\n Ok(order_id)\n }\n\n #[ink(message)]\n fn execute_order(&mut self, id: OrderId) -> Result<(), AbaxTreasuryError> {\n let caller = self.env().caller();\n self._ensure_has_role(EXECUTOR, Some(caller))?;\n\n let order = self.orders.remove_order(id)?;\n\n let now = self.env().block_timestamp();\n if now < order.earliest_execution {\n return Err(AbaxTreasuryError::ToEarlyToExecute);\n }\n\n if now > order.latest_execution {\n return Err(AbaxTreasuryError::ToLateToExecute);\n }\n\n for operation in order.operations {\n match operation {\n Operation::PSP22Transfer(transfer) => {\n let mut psp22: PSP22Ref = transfer.asset.into();\n psp22\n .call_mut()\n .transfer(transfer.to, transfer.amount, Vec::::new())\n .call_v1()\n .invoke()?;\n }\n Operation::NativeTransfer(transfer) => {\n match self.env().transfer(transfer.to, transfer.amount) {\n Ok(_) => {}\n Err(_) => return Err(AbaxTreasuryError::NativeTransferFailed),\n }\n }\n Operation::Vest(vest) => {\n let mut vester: GeneralVestRef = self.orders.vester();\n\n if let Some(asset) = vest.asset {\n let mut psp22: PSP22Ref = asset.into();\n\n psp22\n .call_mut()\n .approve(vester.to_account_id(), vest.amount)\n .call_v1()\n .invoke()?;\n\n vester\n .call_mut()\n .create_vest(\n vest.receiver,\n Some(asset),\n vest.amount,\n vest.schedule,\n Vec::::new(),\n )\n .call_v1()\n .invoke()?;\n } else {\n vester\n .call_mut()\n .create_vest(\n vest.receiver,\n None,\n vest.amount,\n vest.schedule,\n Vec::::new(),\n )\n .call_v1()\n .invoke()?;\n }\n }\n }\n }\n\n self.env().emit_event::(OrderExecuted { id });\n\n Ok(())\n }\n\n #[ink(message)]\n fn cancel_order(&mut self, id: OrderId) -> Result<(), AbaxTreasuryError> {\n let caller = self.env().caller();\n self._ensure_has_role(CANCELLER, Some(caller))?;\n\n self.orders.remove_order(id)?;\n self.env()\n .emit_event::(OrderCancelled { id });\n\n Ok(())\n }\n }\n\n impl AbaxTreasuryView for AbaxTreasuryContract {\n #[ink(message)]\n fn vester(&self) -> AccountId {\n self.orders.vester().to_account_id()\n }\n\n #[ink(message)]\n fn next_order_id(&self) -> OrderId {\n self.orders.next_order_id()\n }\n\n #[ink(message)]\n fn order(&self, id: OrderId) -> Option {\n self.orders.order(id)\n }\n }\n}\n", - "modules/mod.rs":"pub mod treasury;\n", - "modules/treasury/errors.rs":"use pendzl::{\n contracts::{\n access_control::AccessControlError, general_vest::VestingError, psp22::PSP22Error,\n },\n math::errors::MathError,\n};\n\n#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)]\n#[cfg_attr(feature = \"std\", derive(scale_info::TypeInfo))]\npub enum AbaxTreasuryError {\n PSP22Error(PSP22Error),\n MathError(MathError),\n AccessControlError(AccessControlError),\n VestingError(VestingError),\n\n /// The order with the given ID does not exist - haven't been created or have been already executed or canceled.\n NoSuchOrder,\n ToEarlyToExecute,\n ToLateToExecute,\n NativeTransferFailed,\n WrongEarliestExecution,\n}\n\nimpl From for AbaxTreasuryError {\n fn from(e: PSP22Error) -> Self {\n AbaxTreasuryError::PSP22Error(e)\n }\n}\n\nimpl From for AbaxTreasuryError {\n fn from(e: MathError) -> Self {\n AbaxTreasuryError::MathError(e)\n }\n}\n\nimpl From for AbaxTreasuryError {\n fn from(e: VestingError) -> Self {\n AbaxTreasuryError::VestingError(e)\n }\n}\n\nimpl From for AbaxTreasuryError {\n fn from(e: AccessControlError) -> Self {\n AbaxTreasuryError::AccessControlError(e)\n }\n}\n", - "modules/treasury/events.rs":"pub use ink::{prelude::vec::Vec, primitives::AccountId};\n\nuse super::structs::Operation;\n\n#[ink::event]\npub struct VesterChanged {\n #[ink(topic)]\n pub vester: AccountId,\n}\n\n#[ink::event]\npub struct OrderCreated {\n #[ink(topic)]\n pub id: u32,\n pub earliest_execution: u64,\n pub latest_execution: u64,\n pub operations: Vec,\n}\n\n#[ink::event]\npub struct OrderExecuted {\n #[ink(topic)]\n pub id: u32,\n}\n\n#[ink::event]\npub struct OrderCancelled {\n #[ink(topic)]\n pub id: u32,\n}\n", - "modules/treasury/mod.rs":"pub mod errors;\npub mod events;\npub mod storage_fields;\npub mod structs;\npub mod traits;\n", - "modules/treasury/storage_fields/mod.rs":"pub mod operations;\n", - "modules/treasury/storage_fields/operations.rs":"use ink::{env::DefaultEnvironment, storage::Mapping};\nuse pendzl::{\n contracts::general_vest::GeneralVestRef,\n math::errors::MathError,\n traits::{AccountId, Timestamp},\n};\n\nuse crate::modules::treasury::{\n errors::AbaxTreasuryError,\n events::VesterChanged,\n structs::{Operation, Order},\n};\n\n#[derive(Debug)]\n#[pendzl::storage_item]\npub struct OrdersStorage {\n #[lazy]\n vester: GeneralVestRef,\n #[lazy]\n next_order_id: u32,\n orders: Mapping,\n}\n\nimpl OrdersStorage {\n pub fn new(vester: &AccountId) -> Self {\n let mut instance = OrdersStorage {\n vester: Default::default(),\n next_order_id: Default::default(),\n orders: Mapping::new(),\n };\n\n instance.set_vester(vester);\n ink::env::emit_event::(VesterChanged {\n vester: *vester,\n });\n\n instance\n }\n\n pub fn vester(&self) -> GeneralVestRef {\n self.vester.get().unwrap()\n }\n\n pub fn set_vester(&mut self, vester: &AccountId) {\n let vester: GeneralVestRef = (*vester).into();\n self.vester.set(&vester);\n }\n\n pub fn next_order_id(&self) -> u32 {\n self.next_order_id.get().unwrap_or(0)\n }\n\n pub fn order(&self, id: u32) -> Option {\n self.orders.get(id)\n }\n\n pub fn insert_order(\n &mut self,\n earliest_execution: Timestamp,\n latest_execution: Timestamp,\n operations: &[Operation],\n ) -> Result {\n let order_id = self.next_order_id();\n\n self.orders.insert(\n order_id,\n &Order {\n earliest_execution,\n latest_execution,\n operations: operations.to_vec(),\n },\n );\n\n self.next_order_id\n .set(&(order_id.checked_add(1).ok_or(MathError::Overflow)?));\n Ok(order_id)\n }\n\n pub fn remove_order(&mut self, id: u32) -> Result {\n if let Some(order) = self.orders.take(id) {\n Ok(order)\n } else {\n Err(AbaxTreasuryError::NoSuchOrder)\n }\n }\n}\n", - "modules/treasury/structs.rs":"use ink::{prelude::vec::Vec, primitives::AccountId};\nuse pendzl::{\n contracts::general_vest::VestingSchedule,\n traits::{Balance, Timestamp},\n};\n\npub type OrderId = u32;\n\n#[derive(Debug, Clone, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct Order {\n pub earliest_execution: Timestamp,\n pub latest_execution: Timestamp,\n pub operations: Vec,\n}\n\n#[derive(Debug, Clone, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub enum Operation {\n NativeTransfer(NativeTransfer),\n PSP22Transfer(PSP22Transfer),\n Vest(Vest),\n}\n\n#[derive(Debug, Clone, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct Vest {\n pub receiver: AccountId,\n pub asset: Option,\n pub amount: Balance,\n pub schedule: VestingSchedule,\n}\n\n#[derive(Debug, Clone, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct PSP22Transfer {\n pub asset: AccountId,\n pub to: AccountId,\n pub amount: Balance,\n}\n\n#[derive(Debug, Clone, scale::Encode, scale::Decode)]\n#[cfg_attr(\n feature = \"std\",\n derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout)\n)]\npub struct NativeTransfer {\n pub to: AccountId,\n pub amount: Balance,\n}\n", - "modules/treasury/traits.rs":"use super::{\n errors::AbaxTreasuryError,\n structs::{Operation, Order, OrderId},\n};\nuse ink::prelude::vec::Vec;\nuse pendzl::traits::{AccountId, Timestamp};\n\n#[ink::trait_definition]\n/// Trait defining the functions for the Abax Treasury module.\npub trait AbaxTreasury {\n /// sets a new vester for the treasury module.\n ///\n /// On success Emits a 'VesterChanged' event.\n ///\n /// # Errors\n ///\n /// Returns 'AccessControlError' if the caller is not allowed to set vester.\n #[ink(message)]\n fn set_vester(&mut self, vester: AccountId) -> Result<(), AbaxTreasuryError>;\n\n /// Sumbits new order for execution.\n ///\n /// On success Emits 'OrderCreated' event.\n ///\n /// # Errors\n ///\n /// Returns 'AccessControlError' if the caller is not allowed to submit orders.\n\n #[ink(message)]\n fn create_order(\n &mut self,\n earliest_execution: Timestamp,\n latest_execution: Timestamp,\n operation: Vec,\n ) -> Result;\n\n /// Sumbits new order for execution.\n ///\n /// On success Emits 'OrderCreated' event.\n ///\n /// # Errors\n ///\n /// Returns 'AccessControlError' if the caller is not allowed to submit orders.\n /// Returns 'WrongErliestExecution' if the earliest execution time is earlier than 60 days in future.\n\n #[ink(message)]\n fn rescue_order(\n &mut self,\n earliest_execution: Timestamp,\n latest_execution: Timestamp,\n operation: Vec,\n ) -> Result;\n\n /// Executes the order with the given ID.\n ///\n /// On success Emits 'OrderExecuted' event.\n ///\n /// # Errors\n ///\n /// Returns 'NoSuchOrder' if the order with the given ID does not exist.\n /// Returns 'OrderAlreadyExecuted' if the order with the given ID has already been executed.\n /// Returns 'AccessControlError' if the caller is not allowed to execute orders.\n #[ink(message)]\n fn execute_order(&mut self, id: OrderId) -> Result<(), AbaxTreasuryError>;\n\n /// Cancels the order with the given ID.\n ///\n /// On success Emits 'OrderCancelled' event.\n ///\n /// # Errors\n ///\n /// Returns 'NoSuchOrder' if the order with the given ID does not exist.\n /// Returns 'OrderAlreadyExecuted' if the order with the given ID has already been executed.\n /// Returns 'AccessControlError' if the caller is not allowed to cancel orders.\n #[ink(message)]\n fn cancel_order(&mut self, id: OrderId) -> Result<(), AbaxTreasuryError>;\n}\n\n#[ink::trait_definition]\npub trait AbaxTreasuryView {\n /// Returns the account ID of the current vester.\n #[ink(message)]\n fn vester(&self) -> AccountId;\n\n /// Returns the next order ID.\n #[ink(message)]\n fn next_order_id(&self) -> OrderId;\n\n /// Returns the order with the given ID.\n #[ink(message)]\n fn order(&self, id: OrderId) -> Option;\n}\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/abax_vester/subscan_verify.json b/src/contracts/abax_vester/subscan_verify.json deleted file mode 100644 index 4a792a1..0000000 --- a/src/contracts/abax_vester/subscan_verify.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "contracts":{ - "Cargo.lock":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 3\n\n[[package]]\nname = \"abax_vester\"\nversion = \"1.0.0\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"aead\"\nversion = \"0.5.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0\"\ndependencies = [\n \"crypto-common\",\n \"generic-array\",\n]\n\n[[package]]\nname = \"array-init\"\nversion = \"2.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc\"\n\n[[package]]\nname = \"arrayref\"\nversion = \"0.3.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a\"\n\n[[package]]\nname = \"arrayvec\"\nversion = \"0.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711\"\n\n[[package]]\nname = \"autocfg\"\nversion = \"1.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0\"\n\n[[package]]\nname = \"bitflags\"\nversion = \"1.3.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a\"\n\n[[package]]\nname = \"bitvec\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c\"\ndependencies = [\n \"funty\",\n \"radium\",\n \"tap\",\n \"wyz\",\n]\n\n[[package]]\nname = \"blake2\"\nversion = \"0.10.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe\"\ndependencies = [\n \"digest\",\n]\n\n[[package]]\nname = \"block-buffer\"\nversion = \"0.10.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71\"\ndependencies = [\n \"generic-array\",\n]\n\n[[package]]\nname = \"byte-slice-cast\"\nversion = \"1.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c\"\n\n[[package]]\nname = \"byteorder\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b\"\n\n[[package]]\nname = \"camino\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo-platform\"\nversion = \"0.1.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"cargo_metadata\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8\"\ndependencies = [\n \"camino\",\n \"cargo-platform\",\n \"semver 0.11.0\",\n \"semver-parser\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"cc\"\nversion = \"1.1.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc\"\n\n[[package]]\nname = \"cfg-if\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd\"\n\n[[package]]\nname = \"const_env\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e\"\ndependencies = [\n \"const_env_impl\",\n]\n\n[[package]]\nname = \"const_env_impl\"\nversion = \"0.1.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"const_format\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673\"\ndependencies = [\n \"const_format_proc_macros\",\n]\n\n[[package]]\nname = \"const_format_proc_macros\"\nversion = \"0.2.32\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"cpufeatures\"\nversion = \"0.2.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504\"\ndependencies = [\n \"libc\",\n]\n\n[[package]]\nname = \"crypto-common\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3\"\ndependencies = [\n \"generic-array\",\n \"rand_core\",\n \"typenum\",\n]\n\n[[package]]\nname = \"curve25519-dalek\"\nversion = \"4.1.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"curve25519-dalek-derive\",\n \"digest\",\n \"fiat-crypto\",\n \"rustc_version\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"curve25519-dalek-derive\"\nversion = \"0.1.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"darling\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850\"\ndependencies = [\n \"darling_core\",\n \"darling_macro\",\n]\n\n[[package]]\nname = \"darling_core\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0\"\ndependencies = [\n \"fnv\",\n \"ident_case\",\n \"proc-macro2\",\n \"quote\",\n \"strsim\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"darling_macro\"\nversion = \"0.14.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e\"\ndependencies = [\n \"darling_core\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"derive_more\"\nversion = \"0.99.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"digest\"\nversion = \"0.10.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292\"\ndependencies = [\n \"block-buffer\",\n \"crypto-common\",\n \"subtle\",\n]\n\n[[package]]\nname = \"dyn-clone\"\nversion = \"1.0.17\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125\"\n\n[[package]]\nname = \"either\"\nversion = \"1.13.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0\"\n\n[[package]]\nname = \"equivalent\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5\"\n\n[[package]]\nname = \"ethnum\"\nversion = \"1.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c\"\n\n[[package]]\nname = \"fiat-crypto\"\nversion = \"0.2.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d\"\n\n[[package]]\nname = \"fnv\"\nversion = \"1.0.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1\"\n\n[[package]]\nname = \"fs2\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213\"\ndependencies = [\n \"libc\",\n \"winapi\",\n]\n\n[[package]]\nname = \"funty\"\nversion = \"2.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c\"\n\n[[package]]\nname = \"generic-array\"\nversion = \"0.14.7\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a\"\ndependencies = [\n \"typenum\",\n \"version_check\",\n]\n\n[[package]]\nname = \"getrandom\"\nversion = \"0.2.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7\"\ndependencies = [\n \"cfg-if\",\n \"libc\",\n \"wasi\",\n]\n\n[[package]]\nname = \"getrandom_or_panic\"\nversion = \"0.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9\"\ndependencies = [\n \"rand\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"hashbrown\"\nversion = \"0.14.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1\"\n\n[[package]]\nname = \"heck\"\nversion = \"0.3.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c\"\ndependencies = [\n \"unicode-segmentation\",\n]\n\n[[package]]\nname = \"heck\"\nversion = \"0.4.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8\"\n\n[[package]]\nname = \"hex\"\nversion = \"0.4.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70\"\n\n[[package]]\nname = \"ident_case\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39\"\n\n[[package]]\nname = \"impl-serde\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"impl-trait-for-tuples\"\nversion = \"0.2.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"indexmap\"\nversion = \"2.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0\"\ndependencies = [\n \"equivalent\",\n \"hashbrown\",\n]\n\n[[package]]\nname = \"ink\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7\"\ndependencies = [\n \"derive_more\",\n \"ink_env\",\n \"ink_macro\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_allocator\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_codegen\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"either\",\n \"heck 0.4.1\",\n \"impl-serde\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"itertools 0.12.1\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_engine\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa\"\ndependencies = [\n \"blake2\",\n \"derive_more\",\n \"ink_primitives 5.0.0\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n]\n\n[[package]]\nname = \"ink_env\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296\"\ndependencies = [\n \"blake2\",\n \"cfg-if\",\n \"const_env\",\n \"derive_more\",\n \"ink_allocator\",\n \"ink_engine\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"num-traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"paste\",\n \"rlibc\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"schnorrkel\",\n \"secp256k1\",\n \"sha2\",\n \"sha3\",\n \"static_assertions\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"itertools 0.10.5\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_ir\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2\"\ndependencies = [\n \"blake2\",\n \"either\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"itertools 0.12.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ink_macro\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3\"\ndependencies = [\n \"ink_codegen\",\n \"ink_ir 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n \"synstructure 0.13.1\",\n]\n\n[[package]]\nname = \"ink_metadata\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6\"\ndependencies = [\n \"derive_more\",\n \"impl-serde\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"linkme\",\n \"parity-scale-codec\",\n \"scale-info\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_prelude\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9\"\ndependencies = [\n \"cfg-if\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"4.3.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 4.3.0\",\n \"parity-scale-codec\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_primitives\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d\"\ndependencies = [\n \"derive_more\",\n \"ink_prelude 5.0.0\",\n \"parity-scale-codec\",\n \"scale-decode\",\n \"scale-encode\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"ink_storage\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9\"\ndependencies = [\n \"array-init\",\n \"cfg-if\",\n \"derive_more\",\n \"ink_env\",\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"ink_storage_traits\",\n \"pallet-contracts-uapi-next\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"ink_storage_traits\"\nversion = \"5.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d\"\ndependencies = [\n \"ink_metadata\",\n \"ink_prelude 5.0.0\",\n \"ink_primitives 5.0.0\",\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.10.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itertools\"\nversion = \"0.12.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569\"\ndependencies = [\n \"either\",\n]\n\n[[package]]\nname = \"itoa\"\nversion = \"1.0.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b\"\n\n[[package]]\nname = \"keccak\"\nversion = \"0.1.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654\"\ndependencies = [\n \"cpufeatures\",\n]\n\n[[package]]\nname = \"libc\"\nversion = \"0.2.155\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c\"\n\n[[package]]\nname = \"linkme\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ccb76662d78edc9f9bf56360d6919bdacc8b7761227727e5082f128eeb90bbf5\"\ndependencies = [\n \"linkme-impl\",\n]\n\n[[package]]\nname = \"linkme-impl\"\nversion = \"0.3.27\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f8dccda732e04fa3baf2e17cf835bfe2601c7c2edafd64417c627dabae3a8cda\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"memchr\"\nversion = \"2.7.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3\"\n\n[[package]]\nname = \"merlin\"\nversion = \"3.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d\"\ndependencies = [\n \"byteorder\",\n \"keccak\",\n \"rand_core\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"num-traits\"\nversion = \"0.2.19\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\"\ndependencies = [\n \"autocfg\",\n]\n\n[[package]]\nname = \"once_cell\"\nversion = \"1.19.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92\"\n\n[[package]]\nname = \"pallet-contracts-uapi-next\"\nversion = \"6.0.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9\"\ndependencies = [\n \"bitflags\",\n \"paste\",\n \"polkavm-derive\",\n]\n\n[[package]]\nname = \"parity-scale-codec\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee\"\ndependencies = [\n \"arrayvec\",\n \"bitvec\",\n \"byte-slice-cast\",\n \"impl-trait-for-tuples\",\n \"parity-scale-codec-derive\",\n \"serde\",\n]\n\n[[package]]\nname = \"parity-scale-codec-derive\"\nversion = \"3.6.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"paste\"\nversion = \"1.0.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\"\n\n[[package]]\nname = \"pendzl\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7c79ba487736e2475e44ec917040cd87dc4ba9f27fddb8c95f4bf130b4ac6a65\"\ndependencies = [\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_contracts\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_contracts\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ab692839aad45923200968ff94a3c64595f6a17f1059ae3d0e363a80a4837699\"\ndependencies = [\n \"hex\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"pendzl_lang\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"df579ab11b77f1efacff5f4dea408927c264ad903de994b929206f3885832be7\"\ndependencies = [\n \"const_format\",\n \"ethnum\",\n \"ink\",\n \"parity-scale-codec\",\n \"pendzl_lang_macro\",\n \"scale-info\",\n \"xxhash-rust\",\n]\n\n[[package]]\nname = \"pendzl_lang_codegen\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3217fddc39db986a85aff5da5448bd2d6c296d93e51a8d267cbe26cb47f8dc5e\"\ndependencies = [\n \"blake2\",\n \"cargo_metadata\",\n \"fs2\",\n \"heck 0.3.3\",\n \"ink_ir 4.3.0\",\n \"ink_primitives 4.3.0\",\n \"proc-macro2\",\n \"quote\",\n \"serde\",\n \"serde_json\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n \"unwrap\",\n]\n\n[[package]]\nname = \"pendzl_lang_macro\"\nversion = \"1.0.1-v1calls\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"680746c3225b7b0fadd7aa78a6fca44589ba16591a6a6889488110f5033888eb\"\ndependencies = [\n \"pendzl_lang_codegen\",\n \"proc-macro2\",\n \"syn 1.0.109\",\n \"synstructure 0.12.6\",\n]\n\n[[package]]\nname = \"pest\"\nversion = \"2.7.11\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95\"\ndependencies = [\n \"memchr\",\n \"thiserror\",\n \"ucd-trie\",\n]\n\n[[package]]\nname = \"polkavm-common\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c\"\n\n[[package]]\nname = \"polkavm-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8\"\ndependencies = [\n \"polkavm-derive-impl\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"polkavm-derive-impl\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d\"\ndependencies = [\n \"polkavm-common\",\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"ppv-lite86\"\nversion = \"0.2.20\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04\"\ndependencies = [\n \"zerocopy\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"1.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919\"\ndependencies = [\n \"once_cell\",\n \"toml_edit 0.19.15\",\n]\n\n[[package]]\nname = \"proc-macro-crate\"\nversion = \"3.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284\"\ndependencies = [\n \"toml_edit 0.21.1\",\n]\n\n[[package]]\nname = \"proc-macro2\"\nversion = \"1.0.86\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77\"\ndependencies = [\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"quote\"\nversion = \"1.0.36\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7\"\ndependencies = [\n \"proc-macro2\",\n]\n\n[[package]]\nname = \"radium\"\nversion = \"0.7.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09\"\n\n[[package]]\nname = \"rand\"\nversion = \"0.8.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404\"\ndependencies = [\n \"libc\",\n \"rand_chacha\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_chacha\"\nversion = \"0.3.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88\"\ndependencies = [\n \"ppv-lite86\",\n \"rand_core\",\n]\n\n[[package]]\nname = \"rand_core\"\nversion = \"0.6.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c\"\ndependencies = [\n \"getrandom\",\n]\n\n[[package]]\nname = \"rlibc\"\nversion = \"1.0.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe\"\n\n[[package]]\nname = \"rustc_version\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366\"\ndependencies = [\n \"semver 1.0.23\",\n]\n\n[[package]]\nname = \"ryu\"\nversion = \"1.0.18\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f\"\n\n[[package]]\nname = \"scale-bits\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89\"\ndependencies = [\n \"parity-scale-codec\",\n \"scale-info\",\n]\n\n[[package]]\nname = \"scale-decode\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-bits\",\n \"scale-decode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-decode-derive\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-encode\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5\"\ndependencies = [\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-encode-derive\",\n \"scale-info\",\n \"smallvec\",\n]\n\n[[package]]\nname = \"scale-encode-derive\"\nversion = \"0.5.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25\"\ndependencies = [\n \"darling\",\n \"proc-macro-crate 1.3.1\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"scale-info\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024\"\ndependencies = [\n \"bitvec\",\n \"cfg-if\",\n \"derive_more\",\n \"parity-scale-codec\",\n \"scale-info-derive\",\n \"schemars\",\n \"serde\",\n]\n\n[[package]]\nname = \"scale-info-derive\"\nversion = \"2.11.3\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62\"\ndependencies = [\n \"proc-macro-crate 3.1.0\",\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n]\n\n[[package]]\nname = \"schemars\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92\"\ndependencies = [\n \"dyn-clone\",\n \"schemars_derive\",\n \"serde\",\n \"serde_json\",\n]\n\n[[package]]\nname = \"schemars_derive\"\nversion = \"0.8.21\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"serde_derive_internals\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"schnorrkel\"\nversion = \"0.11.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0\"\ndependencies = [\n \"aead\",\n \"arrayref\",\n \"arrayvec\",\n \"curve25519-dalek\",\n \"getrandom_or_panic\",\n \"merlin\",\n \"rand_core\",\n \"serde_bytes\",\n \"sha2\",\n \"subtle\",\n \"zeroize\",\n]\n\n[[package]]\nname = \"secp256k1\"\nversion = \"0.28.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10\"\ndependencies = [\n \"secp256k1-sys\",\n]\n\n[[package]]\nname = \"secp256k1-sys\"\nversion = \"0.9.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb\"\ndependencies = [\n \"cc\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"0.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6\"\ndependencies = [\n \"semver-parser\",\n \"serde\",\n]\n\n[[package]]\nname = \"semver\"\nversion = \"1.0.23\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b\"\n\n[[package]]\nname = \"semver-parser\"\nversion = \"0.10.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7\"\ndependencies = [\n \"pest\",\n]\n\n[[package]]\nname = \"serde\"\nversion = \"1.0.204\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12\"\ndependencies = [\n \"serde_derive\",\n]\n\n[[package]]\nname = \"serde_bytes\"\nversion = \"0.11.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a\"\ndependencies = [\n \"serde\",\n]\n\n[[package]]\nname = \"serde_derive\"\nversion = \"1.0.204\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"serde_derive_internals\"\nversion = \"0.29.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"serde_json\"\nversion = \"1.0.122\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da\"\ndependencies = [\n \"itoa\",\n \"memchr\",\n \"ryu\",\n \"serde\",\n]\n\n[[package]]\nname = \"sha2\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8\"\ndependencies = [\n \"cfg-if\",\n \"cpufeatures\",\n \"digest\",\n]\n\n[[package]]\nname = \"sha3\"\nversion = \"0.10.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60\"\ndependencies = [\n \"digest\",\n \"keccak\",\n]\n\n[[package]]\nname = \"smallvec\"\nversion = \"1.13.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67\"\n\n[[package]]\nname = \"static_assertions\"\nversion = \"1.1.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f\"\n\n[[package]]\nname = \"strsim\"\nversion = \"0.10.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623\"\n\n[[package]]\nname = \"subtle\"\nversion = \"2.6.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292\"\n\n[[package]]\nname = \"syn\"\nversion = \"1.0.109\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"syn\"\nversion = \"2.0.72\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"unicode-ident\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.12.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 1.0.109\",\n \"unicode-xid\",\n]\n\n[[package]]\nname = \"synstructure\"\nversion = \"0.13.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"tap\"\nversion = \"1.0.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369\"\n\n[[package]]\nname = \"thiserror\"\nversion = \"1.0.63\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724\"\ndependencies = [\n \"thiserror-impl\",\n]\n\n[[package]]\nname = \"thiserror-impl\"\nversion = \"1.0.63\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"toml_datetime\"\nversion = \"0.6.8\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41\"\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.19.15\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"toml_edit\"\nversion = \"0.21.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1\"\ndependencies = [\n \"indexmap\",\n \"toml_datetime\",\n \"winnow\",\n]\n\n[[package]]\nname = \"typenum\"\nversion = \"1.17.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825\"\n\n[[package]]\nname = \"ucd-trie\"\nversion = \"0.1.6\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9\"\n\n[[package]]\nname = \"unicode-ident\"\nversion = \"1.0.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b\"\n\n[[package]]\nname = \"unicode-segmentation\"\nversion = \"1.11.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202\"\n\n[[package]]\nname = \"unicode-xid\"\nversion = \"0.2.4\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c\"\n\n[[package]]\nname = \"unwrap\"\nversion = \"1.2.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f\"\n\n[[package]]\nname = \"version_check\"\nversion = \"0.9.5\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a\"\n\n[[package]]\nname = \"wasi\"\nversion = \"0.11.0+wasi-snapshot-preview1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423\"\n\n[[package]]\nname = \"winapi\"\nversion = \"0.3.9\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419\"\ndependencies = [\n \"winapi-i686-pc-windows-gnu\",\n \"winapi-x86_64-pc-windows-gnu\",\n]\n\n[[package]]\nname = \"winapi-i686-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6\"\n\n[[package]]\nname = \"winapi-x86_64-pc-windows-gnu\"\nversion = \"0.4.0\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f\"\n\n[[package]]\nname = \"winnow\"\nversion = \"0.5.40\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876\"\ndependencies = [\n \"memchr\",\n]\n\n[[package]]\nname = \"wyz\"\nversion = \"0.5.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed\"\ndependencies = [\n \"tap\",\n]\n\n[[package]]\nname = \"xxhash-rust\"\nversion = \"0.8.12\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"6a5cbf750400958819fb6178eaa83bee5cd9c29a26a40cc241df8c70fdd46984\"\n\n[[package]]\nname = \"zerocopy\"\nversion = \"0.7.35\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0\"\ndependencies = [\n \"byteorder\",\n \"zerocopy-derive\",\n]\n\n[[package]]\nname = \"zerocopy-derive\"\nversion = \"0.7.35\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n\n[[package]]\nname = \"zeroize\"\nversion = \"1.8.1\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde\"\ndependencies = [\n \"zeroize_derive\",\n]\n\n[[package]]\nname = \"zeroize_derive\"\nversion = \"1.4.2\"\nsource = \"registry+https://github.com/rust-lang/crates.io-index\"\nchecksum = \"ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69\"\ndependencies = [\n \"proc-macro2\",\n \"quote\",\n \"syn 2.0.72\",\n]\n", - "Cargo.toml":"[package]\nname = \"abax_vester\"\nversion = \"1.0.0\"\nauthors = [\n \"Konrad Wierzbik \",\n]\nedition = \"2021\"\n\n[dependencies]\nink = { version = \"5.0.0\", default-features = false }\n\nscale = { package = \"parity-scale-codec\", version = \"3.6.9\", default-features = false, features = [\n \"derive\",\n] }\nscale-info = { version = \"2.11\", default-features = false, features = [\n \"derive\",\n], optional = true }\n\n# These dependencies\npendzl = { version = \"=1.0.1-v1calls\", default-features = false, features = [\n \"general_vest_impl\",\n] }\n[lib]\npath = \"lib.rs\"\n\n\n[features]\ndefault = [\"std\"]\nstd = [\n \"ink/std\",\n \"scale/std\",\n \"scale-info/std\",\n # These dependencies\n \"pendzl/std\",\n]\nink-as-dependency = []\n\n[profile.dev]\ncodegen-units = 16\npanic = \"abort\"\nlto = false\n[profile.release]\npanic = \"abort\"\nlto = false\n", - "lib.rs":"// SPDX-License-Identifier: MIT\n#![cfg_attr(not(feature = \"std\"), no_std, no_main)]\n\n#[pendzl::implementation(GeneralVest)]\n#[ink::contract]\npub mod abax_vester {\n #[ink(storage)]\n #[derive(Default, StorageFieldGetter)]\n pub struct Vester {\n #[storage_field]\n vesting: GeneralVestData,\n }\n\n impl Vester {\n #[ink(constructor)]\n pub fn new() -> Self {\n Default::default()\n }\n }\n}\n" - }, - "manifest-path":"Cargo.toml" -} diff --git a/src/contracts/test_purpose/add_market_rule_proposal/.gitignore b/src/contracts/proposals/configure_initial_market_proposal/.gitignore similarity index 100% rename from src/contracts/test_purpose/add_market_rule_proposal/.gitignore rename to src/contracts/proposals/configure_initial_market_proposal/.gitignore diff --git a/src/contracts/test_purpose/register_asset_proposal/Cargo.toml b/src/contracts/proposals/configure_initial_market_proposal/Cargo.toml similarity index 65% rename from src/contracts/test_purpose/register_asset_proposal/Cargo.toml rename to src/contracts/proposals/configure_initial_market_proposal/Cargo.toml index 2949225..d3949dd 100755 --- a/src/contracts/test_purpose/register_asset_proposal/Cargo.toml +++ b/src/contracts/proposals/configure_initial_market_proposal/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "register_asset_proposal" +name = "configure_initial_market_proposal" version = "0.1.0" authors = [""] edition = "2021" @@ -16,15 +16,19 @@ scale-info = { version = "2.11", default-features = false, features = [ pendzl = { version = "1.0.1-v1calls", default-features = false, features = [ "psp22", - "psp22_burnable", - "psp22_mintable", - "ownable", - "pausable", + "psp22_metadata", "access_control", ] } +hex-literal = { version = "0.3.4", default-features = false } +hex = { version = "0.4.3", default-features = false, features = ["alloc"] } + + +abax_contracts = { version = "1.0.0", default-features = false } +abax_library = { version = "1.0.0", default-features = false } + [lib] -name = "register_asset_proposal" +name = "configure_initial_market_proposal" path = "lib.rs" [features] @@ -34,6 +38,8 @@ std = [ "scale/std", "scale-info", "scale-info/std", + + "abax_contracts/std", "pendzl/std", ] ink-as-dependency = [] diff --git a/src/contracts/proposals/configure_initial_market_proposal/lib.rs b/src/contracts/proposals/configure_initial_market_proposal/lib.rs new file mode 100755 index 0000000..6fe39ee --- /dev/null +++ b/src/contracts/proposals/configure_initial_market_proposal/lib.rs @@ -0,0 +1,398 @@ +#![cfg_attr(not(feature = "std"), no_std, no_main)] + +use abax_contracts::lending_pool::LendingPoolError; +#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] +#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] +pub enum ProposalError { + LendingPoolError(LendingPoolError), + ProposalAlreadyExecuted, +} + +impl From for ProposalError { + fn from(error: LendingPoolError) -> Self { + ProposalError::LendingPoolError(error) + } +} + +#[ink::contract] +mod configure_initial_market_proposal { + use crate::ProposalError; + use abax_contracts::lending_pool::SetReserveFeesArgs; + use abax_library::structs::{AssetRules, InterestRateModelParams, ReserveRestrictions}; + + use abax_contracts::lending_pool::{LendingPoolManage, LendingPoolManageRef}; + use ink::{ + codegen::TraitCallBuilder, + prelude::{vec, vec::Vec}, + ToAccountId, + }; + use pendzl::contracts::{ + access_control::{AccessControl, AccessControlRef}, + psp22::metadata::{PSP22Metadata, PSP22MetadataRef}, + }; + + struct TokenToDeploy { + address: AccountId, + fees: SetReserveFeesArgs, + interest_rate_model_params: InterestRateModelParams, + default_rule: AssetRules, + restrictions: ReserveRestrictions, + } + + // 0.01 % / 365 * 24 * 60 * 60 * E18 + const ONE_PERCENT_APR_E18: u64 = 3_170_979; + const ONE_SEC: u64 = 1000; + const ONE_MIN: u64 = ONE_SEC * (60); + const ONE_HOUR: u64 = ONE_MIN * (60); + + const DEFAULT_INTEREST_RATE_MODEL: InterestRateModelParams = InterestRateModelParams { + target_ur_e6: 900_000, //90% + min_rate_at_target_e18: 2 * ONE_PERCENT_APR_E18, + max_rate_at_target_e18: 10 * ONE_PERCENT_APR_E18, + + rate_at_max_ur_e18: 100 * ONE_PERCENT_APR_E18, + minimal_time_between_adjustments: ONE_HOUR, + }; + + #[derive(Debug, scale::Encode, scale::Decode)] + #[cfg_attr( + feature = "std", + derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) + )] + pub struct ViewParams { + pub lending_pool: AccountId, + pub a_token_code_hash: [u8; 32], + pub v_token_code_hash: [u8; 32], + pub usdt_address: AccountId, + pub usdc_address: AccountId, + pub weth_address: AccountId, + pub wbtc_address: AccountId, + pub wazero_address: AccountId, + pub price_feed_provider: AccountId, + } + + #[ink(storage)] + pub struct Proposal { + execute_action_counter: u8, + lending_pool: LendingPoolManageRef, + a_token_code_hash: [u8; 32], + v_token_code_hash: [u8; 32], + usdt_address: AccountId, + usdc_address: AccountId, + weth_address: AccountId, + wbtc_address: AccountId, + wazero_address: AccountId, + price_feed_provider: AccountId, + } + + impl Proposal { + #[ink(constructor)] + pub fn new( + lending_pool: AccountId, + a_token_code_hash: [u8; 32], + v_token_code_hash: [u8; 32], + usdt_address: AccountId, + usdc_address: AccountId, + weth_address: AccountId, + wbtc_address: AccountId, + wazero_address: AccountId, + price_feed_provider: AccountId, + ) -> Self { + Self { + lending_pool: LendingPoolManageRef::from(lending_pool), + execute_action_counter: 0, + a_token_code_hash, + v_token_code_hash, + usdt_address, + usdc_address, + weth_address, + wbtc_address, + wazero_address, + price_feed_provider, + } + } + + #[ink(message)] + pub fn get_execute_action_counter(&self) -> u8 { + self.execute_action_counter + } + + #[ink(message)] + pub fn get_params(&self) -> ViewParams { + ViewParams { + lending_pool: self.lending_pool.to_account_id(), + a_token_code_hash: self.a_token_code_hash, + v_token_code_hash: self.v_token_code_hash, + usdt_address: self.usdt_address, + usdc_address: self.usdc_address, + weth_address: self.weth_address, + wbtc_address: self.wbtc_address, + wazero_address: self.wazero_address, + price_feed_provider: self.price_feed_provider, + } + } + + #[ink(message)] + pub fn execute(&mut self) -> Result<(), ProposalError> { + match self.execute_action_counter { + 0 => { + self._execute_step0()?; + } + 1 => { + self._execute_step1()?; + } + 2..=6 => { + let asset_to_register_index = + self.execute_action_counter.checked_sub(2).unwrap(); + self._execute_step2(asset_to_register_index)?; + } + 7 => { + self._execute_step3()?; + } + 8 => { + self._execute_step4()?; + } + _ => { + return Err(ProposalError::ProposalAlreadyExecuted); + } + } + + self.execute_action_counter = self.execute_action_counter.checked_add(1).unwrap(); + + Ok(()) + } + + fn _execute_step0(&self) -> Result<(), ProposalError> { + let mut lending_pool_access_control = + AccessControlRef::from(self.lending_pool.to_account_id()); + + lending_pool_access_control + .call_mut() + .grant_role( + ink::selector_id!("ASSET_LISTING_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke() + .unwrap(); + + lending_pool_access_control + .call_mut() + .grant_role( + ink::selector_id!("PARAMETERS_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke() + .unwrap(); + + lending_pool_access_control + .call_mut() + .renounce_role(0, Some(Self::env().account_id())) + .call_v1() + .invoke() + .unwrap(); + + Ok(()) + } + + fn _execute_step1(&mut self) -> Result<(), ProposalError> { + self.lending_pool + .call_mut() + .add_market_rule(vec![]) + .call_v1() + .invoke() + .unwrap(); + Ok(()) + } + + fn _execute_step2(&mut self, asset_to_register_index: u8) -> Result<(), ProposalError> { + let tokens_to_register = self._get_tokens_to_register(); + + let token_to_register = &tokens_to_register[asset_to_register_index as usize]; + + let token_psp22_ref = PSP22MetadataRef::from(token_to_register.address); + + let token_name = token_psp22_ref + .call() + .token_name() + .call_v1() + .invoke() + .unwrap(); + let token_symbol = token_psp22_ref + .call() + .token_symbol() + .call_v1() + .invoke() + .unwrap(); + let token_decimals = token_psp22_ref.call().token_decimals().call_v1().invoke(); + + self.lending_pool + .call_mut() + .register_asset( + token_to_register.address, + self.a_token_code_hash, + self.v_token_code_hash, + token_name, + token_symbol, + token_decimals, + token_to_register.default_rule, + token_to_register.restrictions, + token_to_register.fees, + Some(token_to_register.interest_rate_model_params), + ) + .call_v1() + .invoke() + .unwrap(); + + Ok(()) + } + + fn _execute_step3(&mut self) -> Result<(), ProposalError> { + self.lending_pool + .call_mut() + .set_price_feed_provider(self.price_feed_provider) + .call_v1() + .invoke() + .unwrap(); + Ok(()) + } + + fn _execute_step4(&mut self) -> Result<(), ProposalError> { + let mut lending_pool_access_control = + AccessControlRef::from(self.lending_pool.to_account_id()); + + lending_pool_access_control + .call_mut() + .renounce_role( + ink::selector_id!("ASSET_LISTING_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke() + .unwrap(); + + lending_pool_access_control + .call_mut() + .renounce_role( + ink::selector_id!("PARAMETERS_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke() + .unwrap(); + + Ok(()) + } + + fn _get_tokens_to_register(&self) -> Vec { + vec![ + TokenToDeploy { + // "USDT" + // address: hex_literal::hex!("5Et3dDcXUiThrBCot7g65k3oDSicGy4qC82cq9f911izKNtE"), + address: self.usdt_address, + fees: SetReserveFeesArgs { + deposit_fee_e6: 0, + debt_fee_e6: 0, + }, + interest_rate_model_params: DEFAULT_INTEREST_RATE_MODEL, + default_rule: AssetRules { + collateral_coefficient_e6: Some(950_000), + borrow_coefficient_e6: Some(1_050_000), + penalty_e6: Some(25_000), + }, + restrictions: ReserveRestrictions { + maximal_total_deposit: None, + maximal_total_debt: None, + minimal_collateral: 2_000, + minimal_debt: 1_000, + }, + }, + TokenToDeploy { + // "USDC" + // address: hex_literal::hex!("5FYFojNCJVFR2bBNKfAePZCa72ZcVX5yeTv8K9bzeUo8D83Z"), + address: self.usdc_address, + fees: SetReserveFeesArgs { + deposit_fee_e6: 0, + debt_fee_e6: 0, + }, + interest_rate_model_params: DEFAULT_INTEREST_RATE_MODEL, + default_rule: AssetRules { + collateral_coefficient_e6: Some(950_000), + borrow_coefficient_e6: Some(1_050_000), + penalty_e6: Some(25_000), + }, + restrictions: ReserveRestrictions { + maximal_total_deposit: None, + maximal_total_debt: None, + minimal_collateral: 2_000, + minimal_debt: 1_000, + }, + }, + TokenToDeploy { + // "WETH" + // address: hex_literal::hex!("5EoFQd36196Duo6fPTz2MWHXRzwTJcyETHyCyaB3rb61Xo2u"), + address: self.weth_address, + fees: SetReserveFeesArgs { + deposit_fee_e6: 0, + debt_fee_e6: 0, + }, + interest_rate_model_params: DEFAULT_INTEREST_RATE_MODEL, + default_rule: AssetRules { + collateral_coefficient_e6: Some(750_000), + borrow_coefficient_e6: Some(1_250_000), + penalty_e6: Some(125_000), + }, + restrictions: ReserveRestrictions { + maximal_total_deposit: None, + maximal_total_debt: None, + minimal_collateral: 2_000, + minimal_debt: 1_000, + }, + }, + TokenToDeploy { + // "WBTC" + // address: hex_literal::hex!("5EEtCdKLyyhQnNQWWWPM1fMDx1WdVuiaoR9cA6CWttgyxtuJ"), + address: self.wbtc_address, + fees: SetReserveFeesArgs { + deposit_fee_e6: 0, + debt_fee_e6: 0, + }, + interest_rate_model_params: DEFAULT_INTEREST_RATE_MODEL, + default_rule: AssetRules { + collateral_coefficient_e6: Some(750_000), + borrow_coefficient_e6: Some(1_250_000), + penalty_e6: Some(125_000), + }, + restrictions: ReserveRestrictions { + maximal_total_deposit: None, + maximal_total_debt: None, + minimal_collateral: 2_000, + minimal_debt: 1_000, + }, + }, + TokenToDeploy { + // "WAZERO" + // address: hex_literal::hex!("5CtuFVgEUz13SFPVY6s2cZrnLDEkxQXc19aXrNARwEBeCXgg"), + address: self.wazero_address, + fees: SetReserveFeesArgs { + deposit_fee_e6: 0, + debt_fee_e6: 0, + }, + interest_rate_model_params: DEFAULT_INTEREST_RATE_MODEL, + default_rule: AssetRules { + collateral_coefficient_e6: Some(630_000), + borrow_coefficient_e6: Some(1_420_000), + penalty_e6: Some(200_000), + }, + restrictions: ReserveRestrictions { + maximal_total_deposit: None, + maximal_total_debt: None, + minimal_collateral: 2_000, + minimal_debt: 1_000, + }, + }, + ] + } + } +} diff --git a/src/contracts/test_purpose/deploy_lp_proposal/.gitignore b/src/contracts/proposals/initial_pool_config_proposal/.gitignore similarity index 100% rename from src/contracts/test_purpose/deploy_lp_proposal/.gitignore rename to src/contracts/proposals/initial_pool_config_proposal/.gitignore diff --git a/src/contracts/test_purpose/add_market_rule_proposal/Cargo.toml b/src/contracts/proposals/initial_pool_config_proposal/Cargo.toml similarity index 64% rename from src/contracts/test_purpose/add_market_rule_proposal/Cargo.toml rename to src/contracts/proposals/initial_pool_config_proposal/Cargo.toml index caa60ab..27dcea5 100755 --- a/src/contracts/test_purpose/add_market_rule_proposal/Cargo.toml +++ b/src/contracts/proposals/initial_pool_config_proposal/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "add_market_rule_proposal" +name = "initial_pool_config_proposal" version = "0.1.0" authors = [""] edition = "2021" @@ -16,15 +16,19 @@ scale-info = { version = "2.11", default-features = false, features = [ pendzl = { version = "1.0.1-v1calls", default-features = false, features = [ "psp22", - "psp22_burnable", - "psp22_mintable", - "ownable", - "pausable", + "psp22_metadata", "access_control", ] } +hex-literal = { version = "0.3.4", default-features = false } +hex = { version = "0.4.3", default-features = false, features = ["alloc"] } + + +abax_contracts = { version = "1.0.0", default-features = false } +abax_library = { version = "1.0.0", default-features = false } + [lib] -name = "add_market_rule_proposal" +name = "initial_pool_config_proposal" path = "lib.rs" [features] @@ -34,6 +38,9 @@ std = [ "scale/std", "scale-info", "scale-info/std", + + "abax_contracts/std", + "abax_library/std", "pendzl/std", ] ink-as-dependency = [] diff --git a/src/contracts/proposals/initial_pool_config_proposal/lib.rs b/src/contracts/proposals/initial_pool_config_proposal/lib.rs new file mode 100755 index 0000000..cc9f8c1 --- /dev/null +++ b/src/contracts/proposals/initial_pool_config_proposal/lib.rs @@ -0,0 +1,180 @@ +#![cfg_attr(not(feature = "std"), no_std, no_main)] + +use abax_contracts::lending_pool::LendingPoolError; + +#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] +#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] +pub enum ProposalError { + LendingPoolError(LendingPoolError), + AccessControlError(pendzl::contracts::access_control::AccessControlError), + ProposalAlreadyExecuted, +} + +impl From for ProposalError { + fn from(error: LendingPoolError) -> Self { + ProposalError::LendingPoolError(error) + } +} + +impl From for ProposalError { + fn from(error: pendzl::contracts::access_control::AccessControlError) -> Self { + ProposalError::AccessControlError(error) + } +} +#[ink::contract] +mod initial_pool_config_proposal { + use abax_contracts::lending_pool::{LendingPoolManage, LendingPoolManageRef}; + use ink::{codegen::TraitCallBuilder, prelude::vec, ToAccountId}; + use pendzl::contracts::access_control::{AccessControl, AccessControlRef}; + + use crate::ProposalError; + + #[derive(Debug, scale::Encode, scale::Decode)] + #[cfg_attr( + feature = "std", + derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) + )] + pub struct ViewParams { + pub lending_pool: AccountId, + pub emergency_admin: AccountId, + pub price_feed_provider: AccountId, + } + + #[ink(storage)] + pub struct Proposal { + execute_action_counter: u8, + lending_pool: LendingPoolManageRef, + emergency_admin: AccountId, + price_feed_provider: AccountId, + } + + impl Proposal { + #[ink(constructor)] + pub fn new( + lending_pool: AccountId, + emergency_admin: AccountId, + price_feed_provider: AccountId, + ) -> Self { + Self { + lending_pool: LendingPoolManageRef::from(lending_pool), + execute_action_counter: 0, + emergency_admin, + price_feed_provider, + } + } + + #[ink(message)] + pub fn get_execute_action_counter(&self) -> u8 { + self.execute_action_counter + } + + #[ink(message)] + pub fn get_params(&self) -> ViewParams { + ViewParams { + lending_pool: self.lending_pool.to_account_id(), + emergency_admin: self.emergency_admin, + price_feed_provider: self.price_feed_provider, + } + } + + #[ink(message)] + pub fn execute(&mut self) -> Result<(), ProposalError> { + match self.execute_action_counter { + 0 => { + self._execute_step0()?; + } + 1 => { + self._execute_step1()?; + } + 2 => { + self._execute_step2()?; + } + 3 => { + self._execute_step3()?; + } + 4 => { + self._execute_step4()?; + } + _ => { + return Err(ProposalError::ProposalAlreadyExecuted); + } + } + + self.execute_action_counter = self.execute_action_counter.checked_add(1).unwrap(); + + Ok(()) + } + + fn _execute_step0(&self) -> Result<(), ProposalError> { + let mut lending_pool_access_control = + AccessControlRef::from(self.lending_pool.to_account_id()); + + lending_pool_access_control + .call_mut() + .grant_role( + ink::selector_id!("EMERGENCY_ADMIN"), + Some(self.emergency_admin), + ) + .call_v1() + .invoke()?; + + Ok(()) + } + + fn _execute_step1(&self) -> Result<(), ProposalError> { + let mut lending_pool_access_control = + AccessControlRef::from(self.lending_pool.to_account_id()); + + lending_pool_access_control + .call_mut() + .grant_role( + ink::selector_id!("PARAMETERS_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke()?; + + lending_pool_access_control + .call_mut() + .renounce_role(0, Some(Self::env().account_id())) + .call_v1() + .invoke()?; + + Ok(()) + } + + fn _execute_step2(&mut self) -> Result<(), ProposalError> { + self.lending_pool + .call_mut() + .set_price_feed_provider(self.price_feed_provider) + .call_v1() + .invoke()?; + Ok(()) + } + + fn _execute_step3(&mut self) -> Result<(), ProposalError> { + self.lending_pool + .call_mut() + .add_market_rule(vec![]) + .call_v1() + .invoke()?; + Ok(()) + } + + fn _execute_step4(&mut self) -> Result<(), ProposalError> { + let mut lending_pool_access_control = + AccessControlRef::from(self.lending_pool.to_account_id()); + + lending_pool_access_control + .call_mut() + .renounce_role( + ink::selector_id!("PARAMETERS_ADMIN"), + Some(self.env().account_id()), + ) + .call_v1() + .invoke()?; + + Ok(()) + } + } +} diff --git a/src/contracts/test_purpose/add_market_rule_proposal/lending_pool_error.rs b/src/contracts/test_purpose/add_market_rule_proposal/lending_pool_error.rs deleted file mode 100644 index 60494cc..0000000 --- a/src/contracts/test_purpose/add_market_rule_proposal/lending_pool_error.rs +++ /dev/null @@ -1,179 +0,0 @@ -use pendzl::{ - contracts::{access_control::AccessControlError, psp22::PSP22Error}, - math::errors::MathError, - traits::String, -}; - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum AssetRulesError { - /// returned if the asset_rule to be set is invalid. - InvalidAssetRule, -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum ReserveDataError { - /// returned if activating, disactivating, freezing, unfreezing action is redundant. - AlreadySet, - /// returned if reserve is inactive - Inactive, - /// returned if reserve is frozen - Frozen, -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum FlashLoanReceiverError { - MathErorr(MathError), - Custom(String), -} - -impl From for FlashLoanReceiverError { - fn from(error: MathError) -> Self { - FlashLoanReceiverError::MathErorr(error) - } -} -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum PriceFeedError { - /// The asset is not supported by the price feed. - NoSuchAsset, - /// The price feed is not available. - NoPriceFeed, -} - -use ink::prelude::format; - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum ReserveRestrictionsError { - /// returned if after the action total debt of an asset is freater than the maximal total debt restriocion. - MaxDebtReached, - /// returned if after the action total deposit of an asset is grreater then the maximal total deposit restriction. - MaxDepositReached, - /// returned if after the action minimal debt restricion would be no satisfied. - MinimalDebt, - /// returned if after the action minimal collaetral restricion would be no satisfied. - MinimalCollateral, -} - -/// Possible errors returned by `LendingPool` messages. -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum LendingPoolError { - PSP22Error(PSP22Error), - AccessControlError(AccessControlError), - - MathError(MathError), - - AssetRulesError(AssetRulesError), - ReserveDataError(ReserveDataError), - ReserveRestrictionsError(ReserveRestrictionsError), - - PriceFeedError(PriceFeedError), - FlashLoanReceiverError(FlashLoanReceiverError), - - /// returned if the `amount` argument is zero. - AmountNotGreaterThanZero, - /// returned if asset that is alerady registered is tried to be registered again. - AlreadyRegistered, - /// returned if an asset that is not registered is passed as an argument to message. - AssetNotRegistered, - /// returned if Abax native Stable Tokens AccountId is passed as argument to the message where these tokens are not supported. - AssetIsProtocolStablecoin, - /// returned if an operation reserved only to abax stable tokens is calles on normal asset. - AssetIsNotProtocolStablecoin, - /// returned if one tries to borrow an asset that id not allowed to be borrowed based on the market rule chosen by one. - RuleBorrowDisable, - /// returned if one tries to use as colalteral an asset that id not allowed to be borrowed based on the market rule chosen by one. - RuleCollateralDisable, - /// returned if after the action account would become undercollaterized - InsufficientCollateral, - /// returned if one is trying to transfer a debt one doesn't have. - InsufficientDebt, - /// returned if one is trying to liquidate collaterized account. - Collaterized, - /// returned if one is trying to transfer or withdraw a deposit one doesn't have. - InsufficientDeposit, - /// returned if the liquidation would result in not enough recompensation per repaid token. - MinimumRecieved, - /// returned if there is nothing to be repaid (in an asset) during repay liquidation. - NothingToRepay, - /// returned if there is nothing (in an asset) to to recompensate the liquidation. - NothingToCompensateWith, - /// returned if a liquidator tries to take an asset that is not a collateral as a compensation. - TakingNotACollateral, - /// returned if a pair of vectors used during the operation has inconsistent lengths. - VectorsInconsistentLengths, - /// returned if passed 'market_rule_id' that is not used. - MarketRuleInvalidId, - /// returned if the fee is too high (greater then 1 = 10^6). - DepositFeeTooHigh, - /// returned if the calculated to be used tw entry's index is invalid - points to a non existing entry or the entry's value is too recent. - TwEntryInvalidIndex(u8), - /// returned if the attempt to adjust the rate is made earlier then the minimal time between adjustments. - TooEarlyToAdjustRate, -} - -impl From for LendingPoolError { - fn from(error: AssetRulesError) -> Self { - LendingPoolError::AssetRulesError(error) - } -} -impl From for LendingPoolError { - fn from(error: ReserveDataError) -> Self { - LendingPoolError::ReserveDataError(error) - } -} - -impl From for LendingPoolError { - fn from(error: ReserveRestrictionsError) -> Self { - LendingPoolError::ReserveRestrictionsError(error) - } -} - -impl From for LendingPoolError { - fn from(error: MathError) -> Self { - LendingPoolError::MathError(error) - } -} - -impl From for LendingPoolError { - fn from(error: PSP22Error) -> Self { - LendingPoolError::PSP22Error(error) - } -} - -impl From for LendingPoolError { - fn from(error: PriceFeedError) -> Self { - LendingPoolError::PriceFeedError(error) - } -} - -impl From for LendingPoolError { - fn from(error: AccessControlError) -> Self { - LendingPoolError::AccessControlError(error) - } -} - -impl From for PSP22Error { - fn from(error: LendingPoolError) -> Self { - match error { - LendingPoolError::MathError(MathError::Underflow) => PSP22Error::InsufficientBalance, - e => PSP22Error::Custom(format!("{e:?}")), - } - } -} - -impl From for LendingPoolError { - fn from(flash_error: FlashLoanReceiverError) -> Self { - LendingPoolError::FlashLoanReceiverError(flash_error) - } -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum MultiOpError { - OperationError(u32, LendingPoolError), -} diff --git a/src/contracts/test_purpose/add_market_rule_proposal/lib.rs b/src/contracts/test_purpose/add_market_rule_proposal/lib.rs deleted file mode 100755 index be93322..0000000 --- a/src/contracts/test_purpose/add_market_rule_proposal/lib.rs +++ /dev/null @@ -1,68 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -use ink::{contract_ref, env::DefaultEnvironment, prelude::vec::Vec}; -use lending_pool_error::LendingPoolError; - -pub type LendingPoolManageRef = contract_ref!(LendingPoolManage, DefaultEnvironment); - -/// Defines rules on which asset can be borrowed and used as collateral. -#[derive(Debug, Default, scale::Encode, scale::Decode, Clone, Copy)] -#[cfg_attr( - feature = "std", - derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) -)] -pub struct AssetRules { - /// used while veryfing collateralization. If None then can not be used as collateral. - pub collateral_coefficient_e6: Option, - /// used while veryfing collateralization. If None then can not be borrowed. - pub borrow_coefficient_e6: Option, - /// penalty when liquidated, 1e6 == 100%. - pub penalty_e6: Option, -} - -/// type used to represent market rule -pub type MarketRule = Vec>; - -/// Trait containing `AccessControl` messages used to manage 'LendingPool' parameters. Used by **managers**. -#[ink::trait_definition] -pub trait LendingPoolManage { - /// adds new market rule at next martket rule id - /// - /// * `market_rule` - list of asset rules for that market rule - /// - /// # Errors - /// * `AccessControl::MisingRole` returned if the caller is not a STABLECOIN_RATE_ADMIN. - /// * `InvalidAssetRule` returned if the `market_rule` contains invalid AssetRule. - #[ink(message)] - fn add_market_rule(&mut self, market_rule: MarketRule) -> Result<(), LendingPoolError>; -} -mod lending_pool_error; - -#[ink::contract] -mod add_market_rule_proposal { - use crate::*; - #[ink(storage)] - pub struct Proposal { - lending_pool: LendingPoolManageRef, - market_rule: MarketRule, - } - - impl Proposal { - #[ink(constructor)] - pub fn new( - lending_pool: AccountId, - //params - market_rule: MarketRule, - ) -> Self { - Self { - lending_pool: LendingPoolManageRef::from(lending_pool), - market_rule, - } - } - - #[ink(message)] - pub fn execute(&mut self) -> Result<(), LendingPoolError> { - self.lending_pool.add_market_rule(self.market_rule.clone()) - } - } -} diff --git a/src/contracts/test_purpose/deploy_lp_proposal/Cargo.toml b/src/contracts/test_purpose/deploy_lp_proposal/Cargo.toml deleted file mode 100755 index 2caa383..0000000 --- a/src/contracts/test_purpose/deploy_lp_proposal/Cargo.toml +++ /dev/null @@ -1,47 +0,0 @@ -[package] -name = "deploy_lp_proposal" -version = "0.1.0" -authors = [""] -edition = "2021" - -[dependencies] -ink = { version = "5.0.0", default-features = false } - -scale = { package = "parity-scale-codec", version = "3.6.9", default-features = false, features = [ - "derive", -] } -scale-info = { version = "2.11", default-features = false, features = [ - "derive", -], optional = true } - -pendzl = { version = "1.0.1-v1calls", default-features = false, features = [ - "psp22", - "psp22_burnable", - "psp22_mintable", - "ownable", - "pausable", - "access_control", -] } - -[lib] -name = "deploy_lp_proposal" -path = "lib.rs" - -[features] -default = ["std"] -std = [ - "ink/std", - "scale/std", - "scale-info", - "scale-info/std", - "pendzl/std", -] -ink-as-dependency = [] - -[profile.dev] -codegen-units = 16 -panic = "abort" -lto = false -[profile.release] -panic = "abort" -lto = false diff --git a/src/contracts/test_purpose/deploy_lp_proposal/lib.rs b/src/contracts/test_purpose/deploy_lp_proposal/lib.rs deleted file mode 100755 index fbd2894..0000000 --- a/src/contracts/test_purpose/deploy_lp_proposal/lib.rs +++ /dev/null @@ -1,80 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -use ink::{ - contract_ref, - env::{call::ExecutionInput, DefaultEnvironment}, - prelude::{ - string::{String, ToString}, - vec::Vec, - }, - primitives::{AccountId, Hash}, - ToAccountId, -}; - -pub type DummyRef = contract_ref!(Dummy, DefaultEnvironment); - -#[ink::trait_definition] -pub trait Dummy { - #[ink(message)] - fn dummy(&self); -} - -#[ink::event] -pub struct LendingPoolDeployed { - #[ink(topic)] - lending_pool: AccountId, -} - -#[ink::contract] -mod deploy_lp_proposal { - use ink::{codegen::TraitCallBuilder, env::call::ExecutionInput}; - use pendzl::contracts::access_control::{AccessControl, AccessControlRef}; - - use crate::*; - #[ink(storage)] - pub struct Proposal { - lending_pool_code_hash: [u8; 32], - governor_address: AccountId, - } - - impl Proposal { - #[ink(constructor)] - pub fn new(lending_pool_code_hash: [u8; 32], governor_address: AccountId) -> Self { - Self { - lending_pool_code_hash, - governor_address, - } - } - - #[ink(message)] - pub fn execute(&mut self) { - let create_params = ink::env::call::build_create::() - .instantiate_v1() - .code_hash(Hash::from(self.lending_pool_code_hash)) - .gas_limit(10_000_000_000) - .endowment(0) - .exec_input(ExecutionInput::new(ink::env::call::Selector::new( - ink::selector_bytes!("new"), - ))) - .returns::() - .salt_bytes(self.lending_pool_code_hash) - .params(); - - let contract = Self::env() - .instantiate_contract_v1(&create_params) - .unwrap_or_else(|error| panic!("Contract pallet error: {:?}", error)) - .unwrap_or_else(|error| panic!("LangError: {:?}", error)); - - self.env().emit_event(LendingPoolDeployed { - lending_pool: contract.to_account_id(), - }); - - AccessControlRef::from(contract.to_account_id()) - .call_mut() - .grant_role(0, Some(self.governor_address)) - .call_v1() - .invoke() - .unwrap(); - } - } -} diff --git a/src/contracts/test_purpose/register_asset_proposal/.gitignore b/src/contracts/test_purpose/register_asset_proposal/.gitignore deleted file mode 100755 index 8de8f87..0000000 --- a/src/contracts/test_purpose/register_asset_proposal/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -# Ignore build artifacts from the local tests sub-crate. -/target/ - -# Ignore backup files creates by cargo fmt. -**/*.rs.bk - -# Remove Cargo.lock when creating an executable, leave it for libraries -# More information here http://doc.crates.io/guide.html#cargotoml-vs-cargolock -Cargo.lock diff --git a/src/contracts/test_purpose/register_asset_proposal/lending_pool_error.rs b/src/contracts/test_purpose/register_asset_proposal/lending_pool_error.rs deleted file mode 100644 index 60494cc..0000000 --- a/src/contracts/test_purpose/register_asset_proposal/lending_pool_error.rs +++ /dev/null @@ -1,179 +0,0 @@ -use pendzl::{ - contracts::{access_control::AccessControlError, psp22::PSP22Error}, - math::errors::MathError, - traits::String, -}; - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum AssetRulesError { - /// returned if the asset_rule to be set is invalid. - InvalidAssetRule, -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum ReserveDataError { - /// returned if activating, disactivating, freezing, unfreezing action is redundant. - AlreadySet, - /// returned if reserve is inactive - Inactive, - /// returned if reserve is frozen - Frozen, -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum FlashLoanReceiverError { - MathErorr(MathError), - Custom(String), -} - -impl From for FlashLoanReceiverError { - fn from(error: MathError) -> Self { - FlashLoanReceiverError::MathErorr(error) - } -} -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum PriceFeedError { - /// The asset is not supported by the price feed. - NoSuchAsset, - /// The price feed is not available. - NoPriceFeed, -} - -use ink::prelude::format; - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum ReserveRestrictionsError { - /// returned if after the action total debt of an asset is freater than the maximal total debt restriocion. - MaxDebtReached, - /// returned if after the action total deposit of an asset is grreater then the maximal total deposit restriction. - MaxDepositReached, - /// returned if after the action minimal debt restricion would be no satisfied. - MinimalDebt, - /// returned if after the action minimal collaetral restricion would be no satisfied. - MinimalCollateral, -} - -/// Possible errors returned by `LendingPool` messages. -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum LendingPoolError { - PSP22Error(PSP22Error), - AccessControlError(AccessControlError), - - MathError(MathError), - - AssetRulesError(AssetRulesError), - ReserveDataError(ReserveDataError), - ReserveRestrictionsError(ReserveRestrictionsError), - - PriceFeedError(PriceFeedError), - FlashLoanReceiverError(FlashLoanReceiverError), - - /// returned if the `amount` argument is zero. - AmountNotGreaterThanZero, - /// returned if asset that is alerady registered is tried to be registered again. - AlreadyRegistered, - /// returned if an asset that is not registered is passed as an argument to message. - AssetNotRegistered, - /// returned if Abax native Stable Tokens AccountId is passed as argument to the message where these tokens are not supported. - AssetIsProtocolStablecoin, - /// returned if an operation reserved only to abax stable tokens is calles on normal asset. - AssetIsNotProtocolStablecoin, - /// returned if one tries to borrow an asset that id not allowed to be borrowed based on the market rule chosen by one. - RuleBorrowDisable, - /// returned if one tries to use as colalteral an asset that id not allowed to be borrowed based on the market rule chosen by one. - RuleCollateralDisable, - /// returned if after the action account would become undercollaterized - InsufficientCollateral, - /// returned if one is trying to transfer a debt one doesn't have. - InsufficientDebt, - /// returned if one is trying to liquidate collaterized account. - Collaterized, - /// returned if one is trying to transfer or withdraw a deposit one doesn't have. - InsufficientDeposit, - /// returned if the liquidation would result in not enough recompensation per repaid token. - MinimumRecieved, - /// returned if there is nothing to be repaid (in an asset) during repay liquidation. - NothingToRepay, - /// returned if there is nothing (in an asset) to to recompensate the liquidation. - NothingToCompensateWith, - /// returned if a liquidator tries to take an asset that is not a collateral as a compensation. - TakingNotACollateral, - /// returned if a pair of vectors used during the operation has inconsistent lengths. - VectorsInconsistentLengths, - /// returned if passed 'market_rule_id' that is not used. - MarketRuleInvalidId, - /// returned if the fee is too high (greater then 1 = 10^6). - DepositFeeTooHigh, - /// returned if the calculated to be used tw entry's index is invalid - points to a non existing entry or the entry's value is too recent. - TwEntryInvalidIndex(u8), - /// returned if the attempt to adjust the rate is made earlier then the minimal time between adjustments. - TooEarlyToAdjustRate, -} - -impl From for LendingPoolError { - fn from(error: AssetRulesError) -> Self { - LendingPoolError::AssetRulesError(error) - } -} -impl From for LendingPoolError { - fn from(error: ReserveDataError) -> Self { - LendingPoolError::ReserveDataError(error) - } -} - -impl From for LendingPoolError { - fn from(error: ReserveRestrictionsError) -> Self { - LendingPoolError::ReserveRestrictionsError(error) - } -} - -impl From for LendingPoolError { - fn from(error: MathError) -> Self { - LendingPoolError::MathError(error) - } -} - -impl From for LendingPoolError { - fn from(error: PSP22Error) -> Self { - LendingPoolError::PSP22Error(error) - } -} - -impl From for LendingPoolError { - fn from(error: PriceFeedError) -> Self { - LendingPoolError::PriceFeedError(error) - } -} - -impl From for LendingPoolError { - fn from(error: AccessControlError) -> Self { - LendingPoolError::AccessControlError(error) - } -} - -impl From for PSP22Error { - fn from(error: LendingPoolError) -> Self { - match error { - LendingPoolError::MathError(MathError::Underflow) => PSP22Error::InsufficientBalance, - e => PSP22Error::Custom(format!("{e:?}")), - } - } -} - -impl From for LendingPoolError { - fn from(flash_error: FlashLoanReceiverError) -> Self { - LendingPoolError::FlashLoanReceiverError(flash_error) - } -} - -#[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] -#[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] -pub enum MultiOpError { - OperationError(u32, LendingPoolError), -} diff --git a/src/contracts/test_purpose/register_asset_proposal/lib.rs b/src/contracts/test_purpose/register_asset_proposal/lib.rs deleted file mode 100755 index 817ddd0..0000000 --- a/src/contracts/test_purpose/register_asset_proposal/lib.rs +++ /dev/null @@ -1,179 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] -use ink::prelude::string::{String, ToString}; - -use ink::{contract_ref, env::DefaultEnvironment, prelude::vec::Vec, primitives::AccountId}; -use lending_pool_error::LendingPoolError; -use pendzl::traits::Balance; - -pub type LendingPoolManageRef = contract_ref!(LendingPoolManage, DefaultEnvironment); - -/// Stores restrictions made on the reserve -#[derive(Debug, scale::Encode, scale::Decode, Default, Copy, Clone)] -#[cfg_attr( - feature = "std", - derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) -)] -pub struct ReserveRestrictions { - /// maximal allowed total deposit - pub maximal_total_deposit: Option, - /// maximal allowad total debt - pub maximal_total_debt: Option, - /// minimal collateral that can be used by each account. - /// if account's collateral drops below this value (during withdraw) then it will be automatically turned off (as collateral). - /// it may happen during liquidation that accounts collateral will drop below this value. - pub minimal_collateral: Balance, - /// minimal debt that can be taken and maintained by each account. - /// At any time account's debt can not bee smaller than minimal debt. - pub minimal_debt: Balance, -} - -/// used to manage interest rate model -#[derive(Debug, Default, scale::Encode, scale::Decode, Clone, Copy)] -#[cfg_attr( - feature = "std", - derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) -)] -pub struct InterestRateModelParams { - pub target_ur_e6: u32, - pub min_rate_at_target_e18: u64, - pub max_rate_at_target_e18: u64, - - pub rate_at_max_ur_e18: u64, - - pub minimal_time_between_adjustments: u64, -} - -#[derive(Debug, Default, scale::Encode, scale::Decode, Clone, Copy)] -#[cfg_attr( - feature = "std", - derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) -)] -pub struct SetReserveFeesArgs { - /// fee is used to accumulate accounts debt interest. The real rate is the current_borrow_rate * (1+fee). 10^6 =100% - pub debt_fee_e6: u32, - /// fee is used to accumulate accounts deposit interest. The real rate is the current_deposit_rate * (1-fee). 10^6 =100% - pub deposit_fee_e6: u32, -} - -/// Defines rules on which asset can be borrowed and used as collateral. -#[derive(Debug, Default, scale::Encode, scale::Decode, Clone, Copy)] -#[cfg_attr( - feature = "std", - derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) -)] -pub struct AssetRules { - /// used while veryfing collateralization. If None then can not be used as collateral. - pub collateral_coefficient_e6: Option, - /// used while veryfing collateralization. If None then can not be borrowed. - pub borrow_coefficient_e6: Option, - /// penalty when liquidated, 1e6 == 100%. - pub penalty_e6: Option, -} - -/// Trait containing `AccessControl` messages used to manage 'LendingPool' parameters. Used by **managers**. -#[ink::trait_definition] -pub trait LendingPoolManage { - /// Registers new asset in the `LendingPool`'s storage and instaniates 'AToken' and 'VToken' for the reserve. - /// - /// * `asset` - `AccountId` of the registered asset - /// * `a_token_code_hash` - code hash that will be used to initialize `AToken` - /// * `v_token_code_hash` - code hash that will be used to initialize `vToken` - /// * `name` - name of the `asset`. It will be used to create names for `AToken` and `VToken`. - /// * `symbol` - symbol of the `asset`. It will be used to create sumbol for `AToken` and `VToken`. - /// * `decimals` - a decimal denominator of an asset (number already multiplied by 10^N where N is number of decimals) - /// * `asset_rules' - `asset`'s AssetRules that will be used in default market rule (id = 0). - /// * `maximal_total_deposit` - maximal allowed total deposit. None for uncapped. - /// * `maximal_total_debt` - maximal allowed total debt. None for uncapped. - /// * `minimal_collateral` - the required minimal deposit of the asset by account to turn asset to be collateral. - /// * `minimal_debt` - the minimal possible debt that can be taken by account. - /// * `interest_rate_model` - check InterestRateModelParams - /// * `income_for_suppliers_part_e6` - indicates which part of an income should suppliers be paid - in E6 notation (multiplied by 10^6) - /// - /// # Errors - /// * `AccessControl::MisingRole` returned if the caller is not a ASSET_LISTING_ADMIN. - /// * `AlreadyRegistered` returned if asset was already registered. - /// * `InvalidAssetRule` returned if asset rule is invalid. - #[ink(message)] - #[allow(clippy::too_many_arguments)] - fn register_asset( - &mut self, - asset: AccountId, - a_token_code_hash: [u8; 32], - v_token_code_hash: [u8; 32], - name: String, - symbol: String, - decimals: u8, - asset_rules: AssetRules, - reserve_restrictions: ReserveRestrictions, - fees: SetReserveFeesArgs, - interest_rate_model_params: Option, - ) -> Result<(), LendingPoolError>; -} -mod lending_pool_error; - -#[ink::contract] -mod register_asset_proposal { - use crate::*; - #[ink(storage)] - pub struct Proposal { - lending_pool: LendingPoolManageRef, - asset: AccountId, - a_token_code_hash: [u8; 32], - v_token_code_hash: [u8; 32], - name: String, - symbol: String, - decimals: u8, - asset_rules: AssetRules, - reserve_restrictions: ReserveRestrictions, - fees: SetReserveFeesArgs, - interest_rate_model_params: Option, - } - - impl Proposal { - #[ink(constructor)] - pub fn new( - lending_pool: AccountId, - //register asset params - asset: AccountId, - a_token_code_hash: [u8; 32], - v_token_code_hash: [u8; 32], - name: String, - symbol: String, - decimals: u8, - asset_rules: AssetRules, - reserve_restrictions: ReserveRestrictions, - fees: SetReserveFeesArgs, - interest_rate_model_params: Option, - ) -> Self { - Self { - lending_pool: LendingPoolManageRef::from(lending_pool), - asset, - a_token_code_hash, - v_token_code_hash, - name, - symbol, - decimals, - asset_rules, - reserve_restrictions, - fees, - interest_rate_model_params, - } - } - - #[ink(message)] - pub fn execute(&mut self) -> Result<(), LendingPoolError> { - self.lending_pool.register_asset( - self.asset, - self.a_token_code_hash, - self.v_token_code_hash, - self.name.clone(), - self.symbol.clone(), - self.decimals, - self.asset_rules, - self.reserve_restrictions, - self.fees, - self.interest_rate_model_params, - ) - } - } -} diff --git a/src/contracts/test_purpose/vester/Cargo.lock b/src/contracts/test_purpose/vester/Cargo.lock deleted file mode 100644 index 275da76..0000000 --- a/src/contracts/test_purpose/vester/Cargo.lock +++ /dev/null @@ -1,1522 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "aead" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" -dependencies = [ - "crypto-common", - "generic-array", -] - -[[package]] -name = "array-init" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc" - -[[package]] -name = "arrayref" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a" - -[[package]] -name = "arrayvec" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" - -[[package]] -name = "autocfg" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "byte-slice-cast" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "camino" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "081e3f0755c1f380c2d010481b6fa2e02973586d5f2b24eebb7a2a1d98b143d8" -dependencies = [ - "camino", - "cargo-platform", - "semver 0.11.0", - "semver-parser", - "serde", - "serde_json", -] - -[[package]] -name = "cc" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc" - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "const_env" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e9e4f72c6e3398ca6da372abd9affd8f89781fe728869bbf986206e9af9627e" -dependencies = [ - "const_env_impl", -] - -[[package]] -name = "const_env_impl" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a4f51209740b5e1589e702b3044cdd4562cef41b6da404904192ffffb852d62" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "const_format" -version = "0.2.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673" -dependencies = [ - "const_format_proc_macros", -] - -[[package]] -name = "const_format_proc_macros" -version = "0.2.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500" -dependencies = [ - "proc-macro2", - "quote", - "unicode-xid", -] - -[[package]] -name = "cpufeatures" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" -dependencies = [ - "libc", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "rand_core", - "typenum", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "digest", - "fiat-crypto", - "rustc_version", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_more" -version = "0.99.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "crypto-common", - "subtle", -] - -[[package]] -name = "dyn-clone" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" - -[[package]] -name = "either" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "ethnum" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c" - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "getrandom_or_panic" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9" -dependencies = [ - "rand", - "rand_core", -] - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "impl-serde" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" -dependencies = [ - "serde", -] - -[[package]] -name = "impl-trait-for-tuples" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "indexmap" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" -dependencies = [ - "equivalent", - "hashbrown", -] - -[[package]] -name = "ink" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d4a862aedbfda93175ddf75c9aaa2ae4c4b39ee5cee06c16d50bccce05bf5c7" -dependencies = [ - "derive_more", - "ink_env", - "ink_macro", - "ink_metadata", - "ink_prelude 5.0.0", - "ink_primitives 5.0.0", - "ink_storage", - "pallet-contracts-uapi-next", - "parity-scale-codec", - "scale-info", -] - -[[package]] -name = "ink_allocator" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cee56055bac6d928d425e944c5f3b69baa33c9635822fd1c00cd4afc70fde3e" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "ink_codegen" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a1f8473fa09e0f9b6f3cb3f8d18c07c14ebf9ea1f7cdfee270f009d45ee8e9" -dependencies = [ - "blake2", - "derive_more", - "either", - "heck 0.4.1", - "impl-serde", - "ink_ir 5.0.0", - "ink_primitives 5.0.0", - "itertools 0.12.1", - "parity-scale-codec", - "proc-macro2", - "quote", - "serde", - "serde_json", - "syn 2.0.72", -] - -[[package]] -name = "ink_engine" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f357e2e867f4e222ffc4015a6e61d1073548de89f70a4e36a8b0385562777fa" -dependencies = [ - "blake2", - "derive_more", - "ink_primitives 5.0.0", - "pallet-contracts-uapi-next", - "parity-scale-codec", - "secp256k1", - "sha2", - "sha3", -] - -[[package]] -name = "ink_env" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42cec50b7e4f8406aab25801b015d3802a52d76cfbe48ce11cfb4200fa88e296" -dependencies = [ - "blake2", - "cfg-if", - "const_env", - "derive_more", - "ink_allocator", - "ink_engine", - "ink_prelude 5.0.0", - "ink_primitives 5.0.0", - "ink_storage_traits", - "num-traits", - "pallet-contracts-uapi-next", - "parity-scale-codec", - "paste", - "rlibc", - "scale-decode", - "scale-encode", - "scale-info", - "schnorrkel", - "secp256k1", - "sha2", - "sha3", - "static_assertions", -] - -[[package]] -name = "ink_ir" -version = "4.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b529c941518e8f450395fab9fe8ebba0a7acbb18778fc7e0a87f6248286ec72" -dependencies = [ - "blake2", - "either", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "ink_ir" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b1ad2975551c4ed800af971289ed6d2c68ac41ffc03a42010b3e01d7360dfb2" -dependencies = [ - "blake2", - "either", - "impl-serde", - "ink_prelude 5.0.0", - "itertools 0.12.1", - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "ink_macro" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aee1a546f37eae3b3cd223832d31702033c5369dcfa3405899587c110a7908d3" -dependencies = [ - "ink_codegen", - "ink_ir 5.0.0", - "ink_primitives 5.0.0", - "parity-scale-codec", - "proc-macro2", - "quote", - "syn 2.0.72", - "synstructure 0.13.1", -] - -[[package]] -name = "ink_metadata" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a98fcc0ff9292ff68c7ee7b84c93533c9ff13859ec3b148faa822e2da9954fe6" -dependencies = [ - "derive_more", - "impl-serde", - "ink_prelude 5.0.0", - "ink_primitives 5.0.0", - "linkme", - "parity-scale-codec", - "scale-info", - "schemars", - "serde", -] - -[[package]] -name = "ink_prelude" -version = "4.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8cfdf91d2b442f08efb34dd3780fd6fbd3d033f63b42f62684fe47534948ef6" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "ink_prelude" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea1734d058c80aa72e59c8ae75624fd8a51791efba21469f273156c0f4cad5c9" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "ink_primitives" -version = "4.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6414bcad12ebf0c3abbbb192a09e4d06e22f662cf3e19545204e1b0684be12a1" -dependencies = [ - "derive_more", - "ink_prelude 4.3.0", - "parity-scale-codec", - "xxhash-rust", -] - -[[package]] -name = "ink_primitives" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec35ef7f45e67a53b6142d7e7f18e6d9292d76c3a2a1da14cf8423e481813d" -dependencies = [ - "derive_more", - "ink_prelude 5.0.0", - "parity-scale-codec", - "scale-decode", - "scale-encode", - "scale-info", - "xxhash-rust", -] - -[[package]] -name = "ink_storage" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbdb04cad74df858c05bc9cb6f30bbf12da33c3e2cb7ca211749c001fa761aa9" -dependencies = [ - "array-init", - "cfg-if", - "derive_more", - "ink_env", - "ink_metadata", - "ink_prelude 5.0.0", - "ink_primitives 5.0.0", - "ink_storage_traits", - "pallet-contracts-uapi-next", - "parity-scale-codec", - "scale-info", -] - -[[package]] -name = "ink_storage_traits" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ce49e3d2935fc1ec3e73117119712b187d3123339f6a31624e92f75fa2293d" -dependencies = [ - "ink_metadata", - "ink_prelude 5.0.0", - "ink_primitives 5.0.0", - "parity-scale-codec", - "scale-info", -] - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" - -[[package]] -name = "keccak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", -] - -[[package]] -name = "libc" -version = "0.2.155" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" - -[[package]] -name = "linkme" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb76662d78edc9f9bf56360d6919bdacc8b7761227727e5082f128eeb90bbf5" -dependencies = [ - "linkme-impl", -] - -[[package]] -name = "linkme-impl" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dccda732e04fa3baf2e17cf835bfe2601c7c2edafd64417c627dabae3a8cda" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "merlin" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" -dependencies = [ - "byteorder", - "keccak", - "rand_core", - "zeroize", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "pallet-contracts-uapi-next" -version = "6.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd549c16296ea5b2eb7c65c56aba548b286c1be4d7675b424ff6ccb8319c97a9" -dependencies = [ - "bitflags", - "paste", - "polkavm-derive", -] - -[[package]] -name = "parity-scale-codec" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" -dependencies = [ - "arrayvec", - "bitvec", - "byte-slice-cast", - "impl-trait-for-tuples", - "parity-scale-codec-derive", - "serde", -] - -[[package]] -name = "parity-scale-codec-derive" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" -dependencies = [ - "proc-macro-crate 3.1.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pendzl" -version = "0.2.4-v1calls3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c8914ef9cbcf2cc1bd9c5c417942c6bd26b6f3dd68cae383ed5debdca44a00e" -dependencies = [ - "ink", - "parity-scale-codec", - "pendzl_contracts", - "pendzl_lang", - "scale-info", -] - -[[package]] -name = "pendzl_contracts" -version = "0.2.4-v1calls2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f6eec9aa722ed5de1604dcbe5708ff3c3908bd29d50aad3453db92c5074031" -dependencies = [ - "hex", - "ink", - "parity-scale-codec", - "pendzl_lang", - "scale-info", -] - -[[package]] -name = "pendzl_lang" -version = "0.2.4-v1calls2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "359fc63b2466b17ab534b6971c1f79f84d5c099011d5bebd39454fbdab42436f" -dependencies = [ - "const_format", - "ethnum", - "ink", - "parity-scale-codec", - "pendzl_lang_macro", - "scale-info", - "xxhash-rust", -] - -[[package]] -name = "pendzl_lang_codegen" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19a031624046b6bb73ffd1c384b91e798437b52b9821e42e84443d0f7635169d" -dependencies = [ - "blake2", - "cargo_metadata", - "fs2", - "heck 0.3.3", - "ink_ir 4.3.0", - "ink_primitives 4.3.0", - "proc-macro2", - "quote", - "serde", - "serde_json", - "syn 1.0.109", - "synstructure 0.12.6", - "unwrap", -] - -[[package]] -name = "pendzl_lang_macro" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "172553c2fd78263c0281e85dfd2859b256458da221045bb162f39d146be78c02" -dependencies = [ - "pendzl_lang_codegen", - "proc-macro2", - "syn 1.0.109", - "synstructure 0.12.6", -] - -[[package]] -name = "pest" -version = "2.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95" -dependencies = [ - "memchr", - "thiserror", - "ucd-trie", -] - -[[package]] -name = "polkavm-common" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c" - -[[package]] -name = "polkavm-derive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6380dbe1fb03ecc74ad55d841cfc75480222d153ba69ddcb00977866cbdabdb8" -dependencies = [ - "polkavm-derive-impl", - "syn 2.0.72", -] - -[[package]] -name = "polkavm-derive-impl" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc8211b3365bbafb2fb32057d68b0e1ca55d079f5cf6f9da9b98079b94b3987d" -dependencies = [ - "polkavm-common", - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "ppv-lite86" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" -dependencies = [ - "once_cell", - "toml_edit 0.19.15", -] - -[[package]] -name = "proc-macro-crate" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" -dependencies = [ - "toml_edit 0.21.1", -] - -[[package]] -name = "proc-macro2" -version = "1.0.86" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rlibc" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc874b127765f014d792f16763a81245ab80500e2ad921ed4ee9e82481ee08fe" - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver 1.0.23", -] - -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "scale-bits" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "036575c29af9b6e4866ffb7fa055dbf623fe7a9cc159b33786de6013a6969d89" -dependencies = [ - "parity-scale-codec", - "scale-info", -] - -[[package]] -name = "scale-decode" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7caaf753f8ed1ab4752c6afb20174f03598c664724e0e32628e161c21000ff76" -dependencies = [ - "derive_more", - "parity-scale-codec", - "scale-bits", - "scale-decode-derive", - "scale-info", - "smallvec", -] - -[[package]] -name = "scale-decode-derive" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3475108a1b62c7efd1b5c65974f30109a598b2f45f23c9ae030acb9686966db" -dependencies = [ - "darling", - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "scale-encode" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d70cb4b29360105483fac1ed567ff95d65224a14dd275b6303ed0a654c78de5" -dependencies = [ - "derive_more", - "parity-scale-codec", - "scale-encode-derive", - "scale-info", - "smallvec", -] - -[[package]] -name = "scale-encode-derive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "995491f110efdc6bea96d6a746140e32bfceb4ea47510750a5467295a4707a25" -dependencies = [ - "darling", - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "scale-info" -version = "2.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024" -dependencies = [ - "bitvec", - "cfg-if", - "derive_more", - "parity-scale-codec", - "scale-info-derive", - "schemars", - "serde", -] - -[[package]] -name = "scale-info-derive" -version = "2.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62" -dependencies = [ - "proc-macro-crate 3.1.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "schemars" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" -dependencies = [ - "dyn-clone", - "schemars_derive", - "serde", - "serde_json", -] - -[[package]] -name = "schemars_derive" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals", - "syn 2.0.72", -] - -[[package]] -name = "schnorrkel" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0" -dependencies = [ - "aead", - "arrayref", - "arrayvec", - "curve25519-dalek", - "getrandom_or_panic", - "merlin", - "rand_core", - "serde_bytes", - "sha2", - "subtle", - "zeroize", -] - -[[package]] -name = "secp256k1" -version = "0.28.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" -dependencies = [ - "secp256k1-sys", -] - -[[package]] -name = "secp256k1-sys" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb" -dependencies = [ - "cc", -] - -[[package]] -name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser", - "serde", -] - -[[package]] -name = "semver" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" - -[[package]] -name = "semver-parser" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" -dependencies = [ - "pest", -] - -[[package]] -name = "serde" -version = "1.0.204" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_bytes" -version = "0.11.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_derive" -version = "1.0.204" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "serde_derive_internals" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "serde_json" -version = "1.0.122" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da" -dependencies = [ - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "sha3" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" -dependencies = [ - "digest", - "keccak", -] - -[[package]] -name = "smallvec" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "subtle" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.72" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "synstructure" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "unicode-xid", -] - -[[package]] -name = "synstructure" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "thiserror" -version = "1.0.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "toml_datetime" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" - -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap", - "toml_datetime", - "winnow", -] - -[[package]] -name = "toml_edit" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" -dependencies = [ - "indexmap", - "toml_datetime", - "winnow", -] - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "ucd-trie" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" - -[[package]] -name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" - -[[package]] -name = "unicode-segmentation" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" - -[[package]] -name = "unicode-xid" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" - -[[package]] -name = "unwrap" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e33648dd74328e622c7be51f3b40a303c63f93e6fa5f08778b6203a4c25c20f" - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "vester" -version = "0.1.0-beta" -dependencies = [ - "ink", - "parity-scale-codec", - "pendzl", - "scale-info", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "xxhash-rust" -version = "0.8.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a5cbf750400958819fb6178eaa83bee5cd9c29a26a40cc241df8c70fdd46984" - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -] - -[[package]] -name = "zeroize" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.72", -]