From 5d9247f82fc6bea0ad1c88188d7bc31da32a3d64 Mon Sep 17 00:00:00 2001 From: ThatBen Date: Wed, 19 Feb 2025 12:36:29 +0100 Subject: [PATCH] Updates marketplace contracts --- .../CodexContractsContainerRecipe.cs | 1 - .../CodexContractsPlugin/Marketplace/Marketplace.cs | 9 ++++++++- .../MarketTests/ContractSuccessfulTest.cs | 1 - 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ProjectPlugins/CodexContractsPlugin/CodexContractsContainerRecipe.cs b/ProjectPlugins/CodexContractsPlugin/CodexContractsContainerRecipe.cs index 077f386b..66adf592 100644 --- a/ProjectPlugins/CodexContractsPlugin/CodexContractsContainerRecipe.cs +++ b/ProjectPlugins/CodexContractsPlugin/CodexContractsContainerRecipe.cs @@ -1,7 +1,6 @@ using GethPlugin; using KubernetesWorkflow; using KubernetesWorkflow.Recipe; -using Logging; namespace CodexContractsPlugin { diff --git a/ProjectPlugins/CodexContractsPlugin/Marketplace/Marketplace.cs b/ProjectPlugins/CodexContractsPlugin/Marketplace/Marketplace.cs index 1702c0fb..dea67146 100644 --- a/ProjectPlugins/CodexContractsPlugin/Marketplace/Marketplace.cs +++ b/ProjectPlugins/CodexContractsPlugin/Marketplace/Marketplace.cs @@ -15,7 +15,7 @@ namespace CodexContractsPlugin.Marketplace public class MarketplaceDeploymentBase : ContractDeploymentMessage { - public static string BYTECODE = "0x60c06040523480156200001157600080fd5b506040516200464c3803806200464c8339810160408190526200003491620004cc565b602083015180516040850151516001805460ff191660ff90921691909117905582906000819003620000795760405163015536c760e51b815260040160405180910390fd5b60805261010043116200009f576040516338f5f66160e11b815260040160405180910390fd5b81516002908155602083015160035560408301516004805460ff191660ff9092169190911790556060830151839190600590620000dd908262000677565b50608091909101516004909101805460ff191660ff928316179055600780546001600160a01b0319166001600160a01b0393841617905590841660a052845151606491161115905062000143576040516302bd816360e41b815260040160405180910390fd5b606483600001516040015160ff16111562000171576040516354e5e0ab60e11b815260040160405180910390fd5b825160408101516020909101516064916200018c9162000743565b60ff161115620001af576040516317ff9d0f60e21b815260040160405180910390fd5b82518051600e805460208085015160408087015160609788015160ff90811663010000000263ff0000001992821662010000029290921663ffff0000199482166101000261ffff1990971698821698909817959095179290921695909517178355808801518051600f9081559181015160105593840151601180549190931660ff1991909116179091559282015186939192919060129062000252908262000677565b50608091909101516004909101805460ff1990811660ff938416179091556040939093015151600692909201805490931691161790555062000775915050565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715620002cd57620002cd62000292565b60405290565b604051606081016001600160401b0381118282101715620002cd57620002cd62000292565b604051608081016001600160401b0381118282101715620002cd57620002cd62000292565b604051601f8201601f191681016001600160401b038111828210171562000348576200034862000292565b604052919050565b805160ff811681146200036257600080fd5b919050565b600060a082840312156200037a57600080fd5b62000384620002a8565b90508151815260208083015181830152620003a26040840162000350565b604083015260608301516001600160401b0380821115620003c257600080fd5b818501915085601f830112620003d757600080fd5b815181811115620003ec57620003ec62000292565b62000400601f8201601f191685016200031d565b915080825286848285010111156200041757600080fd5b60005b81811015620004375783810185015183820186015284016200041a565b50600084828401015250806060850152505050620004586080830162000350565b608082015292915050565b6000602082840312156200047657600080fd5b604051602081016001600160401b03811182821017156200049b576200049b62000292565b604052905080620004ac8362000350565b905292915050565b80516001600160a01b03811681146200036257600080fd5b600080600060608486031215620004e257600080fd5b83516001600160401b0380821115620004fa57600080fd5b9085019081870360c08112156200051057600080fd5b6200051a620002d3565b60808212156200052957600080fd5b62000533620002f8565b9150620005408462000350565b8252620005506020850162000350565b6020830152620005636040850162000350565b6040830152620005766060850162000350565b6060830152908152608083015190828211156200059257600080fd5b620005a08983860162000367565b6020820152620005b48960a0860162000463565b60408201529550620005cd9250505060208501620004b4565b9150620005dd60408501620004b4565b90509250925092565b600181811c90821680620005fb57607f821691505b6020821081036200061c57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000672576000816000526020600020601f850160051c810160208610156200064d5750805b601f850160051c820191505b818110156200066e5782815560010162000659565b5050505b505050565b81516001600160401b0381111562000693576200069362000292565b620006ab81620006a48454620005e6565b8462000622565b602080601f831160018114620006e35760008415620006ca5750858301515b600019600386901b1c1916600185901b1785556200066e565b600085815260208120601f198616915b828110156200071457888601518255948401946001909101908401620006f3565b5085821015620007335787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60ff81811683821602908116908181146200076e57634e487b7160e01b600052601160045260246000fd5b5092915050565b60805160a051613e79620007d36000396000818161048e01528181610782015281816118ad015281816124cb0152818161257b015281816126ed0152818161279d01526129a6015260008181612e9a01526130760152613e796000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80636c70bee9116100f9578063c0cc4add11610097578063e8aa0a0711610071578063e8aa0a0714610439578063f752196b1461044c578063fb1e61ca1461046c578063fc0c546a1461048c57600080fd5b8063c0cc4add14610400578063c5d4335114610413578063e61636821461042657600080fd5b8063a29c29a4116100d3578063a29c29a41461039a578063a3a0807e146103ad578063b396dc79146103c0578063be5cdc48146103e057600080fd5b80636c70bee91461036a5780636e2b54ee1461037f5780639777b72c1461039257600080fd5b80634641dce61161016657806359cc89ed1161014057806359cc89ed146102eb5780635da73835146102fe57806362d48e13146103135780636b00c8cf1461032657600080fd5b80634641dce6146102905780634802f44b146102b557806351a76642146102d857600080fd5b80630aefaabe116101a25780630aefaabe1461022457806326d6f83414610237578063329b5a0b1461025a578063458d2bf11461027d57600080fd5b806302fa8e65146101c957806305b90773146101ef57806308695fcd1461020f575b600080fd5b6101dc6101d736600461328f565b6104b2565b6040519081526020015b60405180910390f35b6102026101fd36600461328f565b610529565b6040516101e691906132be565b61022261021d3660046132d8565b610615565b005b61022261023236600461330f565b61084d565b6101dc61024536600461328f565b60009081526017602052604090206004015490565b6101dc61026836600461328f565b60009081526016602052604090206005015490565b6101dc61028b36600461328f565b6109d8565b6102a361029e36600461328f565b6109f1565b60405160ff90911681526020016101e6565b6102c86102c33660046132d8565b610a04565b60405190151581526020016101e6565b6101dc6102e636600461328f565b610a8d565b6102226102f9366004613364565b610add565b610306610ed2565b6040516101e6919061339b565b6102226103213660046132d8565b610ef9565b61035261033436600461328f565b6000908152601760205260409020600501546001600160a01b031690565b6040516001600160a01b0390911681526020016101e6565b610372610fe0565b6040516101e69190613425565b61022261038d36600461328f565b611191565b61030661119e565b6102226103a836600461328f565b6111bd565b6102c86103bb36600461328f565b61120f565b6103d36103ce36600461328f565b611244565b6040516101e6919061359a565b6103f36103ee36600461328f565b61140f565b6040516101e691906135cc565b6102c861040e36600461328f565b6114dd565b6102226104213660046135e0565b6114f0565b610222610434366004613610565b611947565b61022261044736600461364c565b611d5e565b6101dc61045a36600461328f565b60009081526009602052604090205490565b61047f61047a36600461328f565b611e72565b6040516101e6919061367a565b7f0000000000000000000000000000000000000000000000000000000000000000610352565b600081815260166020526040812060040154816104ce84610529565b905060008160048111156104e4576104e46132a8565b1480610501575060018160048111156104ff576104ff6132a8565b145b1561050d575092915050565b6105218261051c6001426136a3565b612008565b949350505050565b60008181526015602052604081205482906001600160a01b031661056057604051635eeb253d60e11b815260040160405180910390fd5b600083815260166020526040812090815460ff166004811115610585576105856132a8565b1480156105a2575060008481526016602052604090206005015442115b156105b157600292505061060f565b6001815460ff1660048111156105c9576105c96132a8565b14806105ea57506000815460ff1660048111156105e8576105e86132a8565b145b80156105f95750806004015442115b1561060857600392505061060f565b5460ff1691505b50919050565b60016106208361140f565b6006811115610631576106316132a8565b14610668576040517fae9dcffd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106728282612020565b6000828152601760209081526040808320600180820154855260158452828520600e54845160e0810186529282015467ffffffffffffffff90811684526002830154968401969096526003820154948301949094526004810154606083015260058101546080830152600681015460a0830152600781015490941660c08201529093916064916201000090910460ff169061070c906121de565b61071691906136b6565b61072091906136e3565b600e54909150600090606490610740906301000000900460ff16846136b6565b61074a91906136e3565b9050806018600101600082825461076191906136f7565b909155505060405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af11580156107d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f7919061370a565b6108035761080361372c565b8184600401600082825461081791906136a3565b9091555050600e5460008781526009602052604090205461010090910460ff161161084557610845866121f4565b505050505050565b826000808281526017602052604090205460ff166006811115610872576108726132a8565b0361089057604051638b41ec7f60e01b815260040160405180910390fd5b600084815260176020526040902060058101546001600160a01b031633146108e4576040517f57a6f4e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006108ef8661140f565b90506004816006811115610905576109056132a8565b0361093c576040517fc2cbf77700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002816006811115610950576109506132a8565b0361096a5761096582600101548787876123c8565b610845565b600581600681111561097e5761097e6132a8565b03610993576109658260010154878787612605565b60038160068111156109a7576109a76132a8565b036109b6576109653387612831565b60018160068111156109ca576109ca6132a8565b0361084557610845866121f4565b60006109eb826109e6612853565b61285e565b92915050565b60006109eb826109ff612853565b612872565b604080516020808201859052818301849052825180830384018152606090920190925280519101206000903390610a3a816128e6565b8015610a635750600154600082815260208190526040902060ff90911690610a6190612913565b105b8015610a8457506000818152602081905260409020610a82908361291d565b155b95945050505050565b6000818152601760209081526040808320600181015484526015909252822060115461010090610ac09060ff1682613742565b6004830154610ad39161ffff16906136b6565b61052191906136e3565b60008381526015602052604090205483906001600160a01b0316610b1457604051635eeb253d60e11b815260040160405180910390fd5b6000848152601560205260409020600181015467ffffffffffffffff168410610b69576040517f3b920b8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051602080820188905281830187905282518083038401815260609092018352815191810191909120600081815291829052919020610baa903361291d565b610be0576040517fd651ce1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000818152601760209081526040808320600181018a905560038101899055898452601690925282209091610c148461140f565b6006811115610c2557610c256132a8565b14158015610c4d57506006610c398461140f565b6006811115610c4a57610c4a6132a8565b14155b15610c84576040517fff556acf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600860205260409020429055610c9f8387611d5e565b60058201805473ffffffffffffffffffffffffffffffffffffffff19163317905542600283015560018181018054600090610cdb9084906136f7565b92505081905550610cf088836002015461293f565b816002016000828254610d0391906136a3565b90915550506040805160e081018252600186015467ffffffffffffffff9081168252600287015460208301526003870154928201929092526004860154606082015260058601546080820152600686015460a0820152600786015490911660c08201526000908190610d74906121de565b90506006610d818661140f565b6006811115610d9257610d926132a8565b03610dc557600e54606490610daa9060ff16836136b6565b610db491906136e3565b610dbe90826136a3565b9150610dc9565b8091505b610dd3338361295e565b8160186000016000828254610de891906136f7565b9091555050600484018190556005840154610e0c906001600160a01b031686612a32565b835460ff191660011784556040518981528a907ff530852268993f91008f1a1e0b09b5c813acd4188481f1fa83c33c7182e814b49060200160405180910390a26001808701549084015467ffffffffffffffff909116148015610e8457506000835460ff166004811115610e8257610e826132a8565b145b15610ec657825460ff191660011783554260038401556040518a907f85e1543bf2f84fe80c6badbce3648c8539ad1df4d2b3d822938ca0538be727e690600090a25b50505050505050505050565b336000908152600d60205260409020606090610ef490610ef190612a54565b90565b905090565b610f038282610a04565b610f39576040517f424a04ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051602080820185905281830184905282518083038401815260609092018352815191810191909120600081815291829052919020610f7a9033612a61565b50600154600082815260208190526040902060ff90911690610f9b90612913565b03610fdb57827f3bef2ebab8cc92e0edda5decf18232f0606a18405ef674b51ea9d1e0e3839b4183604051610fd291815260200190565b60405180910390a25b505050565b6110546040805160e081019091526000606082018181526080830182905260a0830182905260c0830191909152819081526040805160a08101825260008082526020828101829052928201819052606080830152608082015291019081526040805160208181019092526000815291015290565b6040805160e081018252600e805460ff8082166060808601918252610100840483166080870152620100008404831660a0808801919091526301000000909404831660c087015290855285519283018652600f805484526010546020858101919091526011549093169684019690965260128054959694959287019492918401916110de9061375d565b80601f016020809104026020016040519081016040528092919081815260200182805461110a9061375d565b80156111575780601f1061112c57610100808354040283529160200191611157565b820191906000526020600020905b81548152906001019060200180831161113a57829003601f168201915b50505091835250506004919091015460ff908116602092830152918352604080518083019091526006949094015490911683520152919050565b61119b81336114f0565b50565b336000908152600c60205260409020606090610ef490610ef190612a54565b806000808281526017602052604090205460ff1660068111156111e2576111e26132a8565b0361120057604051638b41ec7f60e01b815260040160405180910390fd5b61120b82333361084d565b5050565b600080600061122584611220612853565b612a76565b9092509050818015610521575060045460ff9081169116109392505050565b61124c613195565b816000808281526017602052604090205460ff166006811115611271576112716132a8565b0361128f57604051638b41ec7f60e01b815260040160405180910390fd5b60008381526017602052604090206112a5613195565b600180830154600090815260156020908152604091829020825160a0808201855282546001600160a01b03168252845160e0810186529583015467ffffffffffffffff9081168752600284015487860152600384015487870152600484015460608801526005840154608088015260068401549187019190915260078301541660c08601529182019390935281518083018352600884018054929493850192829082906113519061375d565b80601f016020809104026020016040519081016040528092919081815260200182805461137d9061375d565b80156113ca5780601f1061139f576101008083540402835291602001916113ca565b820191906000526020600020905b8154815290600101906020018083116113ad57829003601f168201915b505050918352505060019190910154602091820152908252600a83015482820152600b9092015460409091015290825260039092015491810191909152915050919050565b6000818152601760205260408120600181015482036114315750600092915050565b60006114408260010154610529565b90506004825460ff16600681111561145a5761145a6132a8565b03611469575060049392505050565b600281600481111561147d5761147d6132a8565b0361148c575060059392505050565b60038160048111156114a0576114a06132a8565b036114af575060029392505050565b60048160048111156114c3576114c36132a8565b036114d2575060039392505050565b505460ff1692915050565b60006109eb826114eb612853565b612b25565b60008281526015602052604090205482906001600160a01b031661152757604051635eeb253d60e11b815260040160405180910390fd5b6000838152601560209081526040808320601690925290912081546001600160a01b0316331461156a576040516334c69e3160e11b815260040160405180910390fd5b600061157586610529565b9050600281600481111561158b5761158b6132a8565b141580156115ab575060048160048111156115a8576115a86132a8565b14155b80156115c9575060038160048111156115c6576115c66132a8565b14155b15611600576040517fc00b5b5700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816002015460000361163e576040517fbd8bdd9400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002816004811115611652576116526132a8565b036116dc57815460ff1916600217825560405186907ff903f4774c7bd27355f9d7fcbc382b079b164a697a44ac5d95267a4c3cb3bb2290600090a26116af866116aa8860009081526016602052604090206005015490565b61293f565b82600101546116be91906136b6565b8260020160008282546116d191906136f7565b909155506118539050565b60048160048111156116f0576116f06132a8565b03611847576040805160a0808201835285546001600160a01b03168252825160e081018452600187015467ffffffffffffffff90811682526002880154602083810191909152600389015483870152600489015460608401526005890154608084015260068901549383019390935260078801541660c0820152908201528151808301835260088601805461183d948893908501929091829082906117949061375d565b80601f01602080910402602001604051908101604052809291908181526020018280546117c09061375d565b801561180d5780601f106117e25761010080835404028352916020019161180d565b820191906000526020600020905b8154815290600101906020018083116117f057829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050612b55565b6002830155611853565b815460ff191660031782555b8254611868906001600160a01b031687612b8e565b6002820154601980548291906000906118829084906136f7565b909155505060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156118f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061191a919061370a565b61193757604051637c2ccffd60e11b815260040160405180910390fd5b5050600060029091015550505050565b600061195a61195583613906565b612bb0565b90503361196a60208401846139f5565b6001600160a01b031614611991576040516334c69e3160e11b815260040160405180910390fd5b6000818152601560205260409020546001600160a01b0316156119e0576040517ffc7d069000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61012082013515806119fb5750606082013561012083013510155b15611a32576040517fdf63f61a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611a426040830160208401613a12565b67ffffffffffffffff16600003611a85576040517f535ed2be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611a956040830160208401613a12565b67ffffffffffffffff16611ab0610100840160e08501613a12565b67ffffffffffffffff161115611af2576040517fb9551ab100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6060820135600003611b30576040517f090a5ecd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6080820135600003611b6e576040517f6aba7aae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60c0820135600003611bac576040517ffb7df0c700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60a0820135600003611bea576040517f47ba51c700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611bf8610100830183613a2f565b611c029080613a4f565b9050600003611c3d576040517f86f8cf9b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526015602052604090208290611c578282613be4565b50611c6890506060830135426136f7565b600082815260166020526040902060040155611c89610120830135426136f7565b600082815260166020908152604090912060050191909155611cb790611cb1908401846139f5565b82612be0565b6000611cca611cc584613906565b612b55565b6000838152601660205260408120600201829055601880549293508392909190611cf59084906136f7565b90915550611d059050338261295e565b7f5fdb86c365a247a4d97dcbcc5c3abde9d6e3e2de26273f3fda8eef5073b9a96c82846020016016600086815260200190815260200160002060050154604051611d5193929190613cdc565b60405180910390a1505050565b6000828152601760209081526040808320600101548084526015909252909120546001600160a01b0316611da557604051635eeb253d60e11b815260040160405180910390fd5b600083815260176020908152604080832060018101548452601583528184208251600380825260808201909452919490939092908201606080368337019050509050611df8611df3876109d8565b612c02565b81600081518110611e0b57611e0b613d58565b60209081029190910101526009820154611e2490612c13565b81600181518110611e3757611e37613d58565b602002602001018181525050826003015481600281518110611e5b57611e5b613d58565b602002602001018181525050610845868683612c1f565b611e7a6131b5565b60008281526015602052604090205482906001600160a01b0316611eb157604051635eeb253d60e11b815260040160405180910390fd5b600083815260156020908152604091829020825160a0808201855282546001600160a01b03168252845160e081018652600184015467ffffffffffffffff90811682526002850154828701526003850154828801526004850154606083015260058501546080830152600685015492820192909252600784015490911660c08201529281019290925282518084018452600882018054939492939285019282908290611f5c9061375d565b80601f0160208091040260200160405190810160405280929190818152602001828054611f889061375d565b8015611fd55780601f10611faa57610100808354040283529160200191611fd5565b820191906000526020600020905b815481529060010190602001808311611fb857829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050915050919050565b60008183106120175781612019565b825b9392505050565b600061202b82612db2565b9050428110612066576040517f6b4b1a4e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035461207390826136f7565b42106120ab576040517fde55698e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a6020908152604080832085845290915290205460ff16156120fe576040517efab7d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6121088383612b25565b61213e576040517fd3ffa66b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600b6020908152604080832085845290915290205460ff1615612192576040517f98e7e55100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600b602090815260408083208584528252808320805460ff19166001908117909155868452600990925282208054919290916121d49084906136f7565b9091555050505050565b600081602001518260a001516109eb91906136b6565b6000818152601760209081526040808320600181015480855260169093529220600283015461222490839061293f565b81600201600082825461223791906136f7565b90915550506005830154612254906001600160a01b031685612831565b600084815260208190526040812090818161226f828261325d565b5050845460ff1916600617855550506000600284018190556004840181905560058401805473ffffffffffffffffffffffffffffffffffffffff1916905560018281018054919290916122c39084906136a3565b9091555050600383015460405190815282907f1d31c9f8dea6e179f6a050db117595feea8937029ea51f5168a4780be7e8f5529060200160405180910390a2600084815260096020526040812055600082815260156020526040812060018084015490820154919291612340919067ffffffffffffffff166136a3565b600783015490915067ffffffffffffffff168111801561237557506001835460ff166004811115612373576123736132a8565b145b1561084557825460ff191660041783556123906001426136a3565b600484015560405184907f4769361a442504ecaf038f35e119bcccdd5e42096b24c09e3c17fd17c6684c0290600090a2505050505050565b60008481526015602052604090205484906001600160a01b03166123ff57604051635eeb253d60e11b815260040160405180910390fd5b600085815260166020908152604080832060158352818420815460ff19166003178255888552601790935292208154612441906001600160a01b031689612b8e565b6005810154612459906001600160a01b031688612831565b600061246989836002015461293f565b600483015490915061247b81836136f7565b6019805460009061248d9084906136f7565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038981166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015612514573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612538919061370a565b61255557604051637c2ccffd60e11b815260040160405180910390fd5b60405163a9059cbb60e01b81526001600160a01b038881166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156125c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125e8919061370a565b610ec657604051637c2ccffd60e11b815260040160405180910390fd5b60008481526015602052604090205484906001600160a01b031661263c57604051635eeb253d60e11b815260040160405180910390fd5b60008481526017602052604090206005810154612662906001600160a01b031686612831565b600061268b8783600201546126868a60009081526016602052604090206005015490565b612dc5565b600483015490915061269d81836136f7565b601980546000906126af9084906136f7565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015612736573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061275a919061370a565b61277757604051637c2ccffd60e11b815260040160405180910390fd5b60405163a9059cbb60e01b81526001600160a01b038681166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156127e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061280a919061370a565b61282757604051637c2ccffd60e11b815260040160405180910390fd5b5050505050505050565b6001600160a01b0382166000908152600d60205260409020610fdb9082612e87565b6000610ef442612e93565b600061201961286d8484612872565b612ebf565b60008061288161010043613d6e565b6006549091506000906101009061289b9060ff16866136b6565b6128a59190613d6e565b905060006128b561010087613d6e565b90506000610100826128c785876136f7565b6128d191906136f7565b6128db9190613d6e565b979650505050505050565b60008060008381526017602052604090205460ff16600681111561290c5761290c6132a8565b1492915050565b60006109eb825490565b6001600160a01b03811660009081526001830160205260408120541515612019565b6000828152601660205260408120600401546120199084908490612dc5565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b038381166004830152306024830181905260448301849052917f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303816000875af11580156129f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a15919061370a565b610fdb57604051637c2ccffd60e11b815260040160405180910390fd5b6001600160a01b0382166000908152600d60205260409020610fdb9082612f19565b6060600061201983612f25565b6000612019836001600160a01b038416612f81565b6000806000612a848561140f565b60008681526008602052604081205491925090612aa090612e93565b90506001826006811115612ab657612ab66132a8565b141580612aca5750612ac88582612fd0565b155b15612add57600080935093505050612b1e565b612ae78686612872565b92506000612af484612ebf565b90506000612b0188610a8d565b9050801580612b175750612b158183613d6e565b155b9550505050505b9250929050565b6000806000612b348585612a76565b9092509050818015610a84575060045460ff90811691161015949350505050565b6000612b648260200151612fda565b602083015160408101519051612b84919067ffffffffffffffff166136b6565b6109eb91906136b6565b6001600160a01b0382166000908152600c60205260409020610fdb9082612e87565b600081604051602001612bc3919061367a565b604051602081830303815290604052805190602001209050919050565b6001600160a01b0382166000908152600c60205260409020610fdb9082612f19565b600060ff1982168161052182612ff0565b60008061201983612ff0565b6000838152600a6020526040812090612c36612853565b815260208101919091526040016000205460ff1615612c81576040517f3edef7db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007546040517f94c8919d0000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906394c8919d90612ccc9085908590600401613d82565b602060405180830381865afa158015612ce9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0d919061370a565b612d43576040517ffcd03a4700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a60205260408120600191612d5c612853565b815260200190815260200160002060006101000a81548160ff0219169083151502179055507f3b989d183b84b02259d7c14b34a9c9eb0fccb4c355a920d25e581e25aef4993d83604051611d5191815260200190565b60006109eb612dc083613062565b61306f565b6000838152601560205260408120828410612e0c576040517f56607cb000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805160e081018252600183015467ffffffffffffffff9081168252600284015460208301526003840154928201929092526004830154606082015260058301546080820152600683015460a0820152600783015490911660c0820152612e7390612fda565b612e7d85856136a3565b610a8491906136b6565b6000612019838361309b565b60006109eb7f0000000000000000000000000000000000000000000000000000000000000000836136e3565b60008060ff8316612ed16001436136a3565b612edb91906136a3565b4090506000819003612eef57612eef61372c565b60408051602081018390520160405160208183030381529060405280519060200120915050919050565b60006120198383612f81565b606081600001805480602002602001604051908101604052809291908181526020018280548015612f7557602002820191906000526020600020905b815481526020019060010190808311612f61575b50505050509050919050565b6000818152600183016020526040812054612fc8575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556109eb565b5060006109eb565b6000818311612019565b6000816020015182608001516109eb91906136b6565b7fff00000000000000000000000000000000000000000000000000000000000000811660015b602081101561060f57600891821c916130309082906136b6565b83901b7fff00000000000000000000000000000000000000000000000000000000000000169190911790600101613016565b60006109eb8260016136f7565b60006109eb7f0000000000000000000000000000000000000000000000000000000000000000836136b6565b600081815260018301602052604081205480156131845760006130bf6001836136a3565b85549091506000906130d3906001906136a3565b90508181146131385760008660000182815481106130f3576130f3613d58565b906000526020600020015490508087600001848154811061311657613116613d58565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061314957613149613e2d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506109eb565b60009150506109eb565b5092915050565b60405180604001604052806131a86131b5565b8152602001600081525090565b6040518060a0016040528060006001600160a01b031681526020016132246040518060e00160405280600067ffffffffffffffff1681526020016000815260200160008152602001600081526020016000815260200160008152602001600067ffffffffffffffff1681525090565b8152602001613249604051806040016040528060608152602001600080191681525090565b815260006020820181905260409091015290565b508054600082559060005260206000209081019061119b91905b8082111561328b5760008155600101613277565b5090565b6000602082840312156132a157600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60208101600583106132d2576132d26132a8565b91905290565b600080604083850312156132eb57600080fd5b50508035926020909101359150565b6001600160a01b038116811461119b57600080fd5b60008060006060848603121561332457600080fd5b833592506020840135613336816132fa565b91506040840135613346816132fa565b809150509250925092565b6000610100828403121561060f57600080fd5b6000806000610140848603121561337a57600080fd5b83359250602084013591506133928560408601613351565b90509250925092565b6020808252825182820181905260009190848201906040850190845b818110156133d3578351835292840192918401916001016133b7565b50909695505050505050565b6000815180845260005b81811015613405576020818501810151868301820152016133e9565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000825160ff8082511660208501528060208301511660408501528060408301511660608501528060608301511660808501526020850151915060c060a0850152815160e0850152602082015161010085015280604083015116610120850152606082015160a06101408601526134a46101808601826133df565b608093909301518216610160860152506040850151805160ff1660c08601529195945050505050565b60008151604084526134e260408501826133df565b602093840151949093019390935250919050565b60006101606001600160a01b038351168452602083015167ffffffffffffffff808251166020870152602082015160408701526040820151606087015260608201516080870152608082015160a087015260a082015160c08701528060c08301511660e08701525050604083015181610100860152613577828601826134cd565b915050606083015161012085015260808301516101408501528091505092915050565b6020815260008251604060208401526135b660608401826134f6565b9050602084015160408401528091505092915050565b60208101600783106132d2576132d26132a8565b600080604083850312156135f357600080fd5b823591506020830135613605816132fa565b809150509250929050565b60006020828403121561362257600080fd5b813567ffffffffffffffff81111561363957600080fd5b8201610160818503121561201957600080fd5b600080610120838503121561366057600080fd5b823591506136718460208501613351565b90509250929050565b60208152600061201960208301846134f6565b634e487b7160e01b600052601160045260246000fd5b818103818111156109eb576109eb61368d565b80820281158282048414176109eb576109eb61368d565b634e487b7160e01b600052601260045260246000fd5b6000826136f2576136f26136cd565b500490565b808201808211156109eb576109eb61368d565b60006020828403121561371c57600080fd5b8151801515811461201957600080fd5b634e487b7160e01b600052600160045260246000fd5b61ffff82811682821603908082111561318e5761318e61368d565b600181811c9082168061377157607f821691505b60208210810361060f57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156137ca576137ca613791565b60405290565b60405160a0810167ffffffffffffffff811182821017156137ca576137ca613791565b60405160e0810167ffffffffffffffff811182821017156137ca576137ca613791565b604051601f8201601f1916810167ffffffffffffffff8111828210171561383f5761383f613791565b604052919050565b67ffffffffffffffff8116811461119b57600080fd5b60006040828403121561386f57600080fd5b6138776137a7565b9050813567ffffffffffffffff8082111561389157600080fd5b818401915084601f8301126138a557600080fd5b81356020828211156138b9576138b9613791565b6138cb601f8301601f19168201613816565b925081835286818386010111156138e157600080fd5b8181850182850137600081838501015282855280860135818601525050505092915050565b600081360361016081121561391a57600080fd5b6139226137d0565b833561392d816132fa565b815260e0601f198301121561394157600080fd5b6139496137f3565b9150602084013561395981613847565b8083525060408401356020830152606084013560408301526080840135606083015260a0840135608083015260c084013560a083015260e084013561399d81613847565b60c083015260208101919091526101008301359067ffffffffffffffff8211156139c657600080fd5b6139d23683860161385d565b604082015261012084013560608201526101409093013560808401525090919050565b600060208284031215613a0757600080fd5b8135612019816132fa565b600060208284031215613a2457600080fd5b813561201981613847565b60008235603e19833603018112613a4557600080fd5b9190910192915050565b6000808335601e19843603018112613a6657600080fd5b83018035915067ffffffffffffffff821115613a8157600080fd5b602001915036819003821315612b1e57600080fd5b600081356109eb81613847565b601f821115610fdb576000816000526020600020601f850160051c81016020861015613acc5750805b601f850160051c820191505b8181101561084557828155600101613ad8565b8135601e19833603018112613aff57600080fd5b8201803567ffffffffffffffff811115613b1857600080fd5b60208136038184011315613b2b57600080fd5b613b3f82613b39865461375d565b86613aa3565b6000601f831160018114613b755760008415613b5d57508482018301355b600019600386901b1c1916600185901b178655613bd2565b600086815260209020601f19851690835b82811015613ba7578785018601358255938501936001909101908501613b86565b5085821015613bc65760001960f88760031b161c198585890101351681555b505060018460011b0186555b50508085013560018501555050505050565b8135613bef816132fa565b6001600160a01b03811673ffffffffffffffffffffffffffffffffffffffff19835416178255506020820135613c2481613847565b60018201805467ffffffffffffffff191667ffffffffffffffff83161790555060408201356002820155606082013560038201556080820135600482015560a0820135600582015560c08201356006820155613ca8613c8560e08401613a96565b6007830167ffffffffffffffff821667ffffffffffffffff198254161781555050565b613cc2613cb9610100840184613a2f565b60088301613aeb565b610120820135600a820155610140820135600b8201555050565b83815261012081018335613cef81613847565b67ffffffffffffffff8082166020850152602086013560408501526040860135606085015260608601356080850152608086013560a085015260a086013560c085015260c08601359150613d4282613847565b1660e08301526101009091019190915292915050565b634e487b7160e01b600052603260045260246000fd5b600082613d7d57613d7d6136cd565b500690565b82358152602080840135908201526000610120828101613db2604085016040880180358252602090810135910152565b613dcc608085016080880180358252602090810135910152565b613de660c0850160c0880180358252602090810135910152565b61010084019190915283519081905261014083019060209081860160005b82811015613e2057815185529383019390830190600101613e04565b5092979650505050505050565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a333dccbc440621ab116493d2283a7df8df74d8bc6ba9458ae8feff651d221e264736f6c63430008170033"; + public static string BYTECODE = "0x60c06040523480156200001157600080fd5b506040516200468a3803806200468a8339810160408190526200003491620004b0565b602083015180516040850151516001805460ff191660ff90921691909117905582906000819003620000795760405163015536c760e51b815260040160405180910390fd5b60805261010043116200009f576040516338f5f66160e11b815260040160405180910390fd5b81516002908155602083015160035560408301516004805460ff191660ff9092169190911790556060830151839190600590620000dd908262000666565b50608091909101516004909101805460ff191660ff928316179055600780546001600160a01b0319166001600160a01b0393841617905590841660a052845151606491161115905062000143576040516302bd816360e41b815260040160405180910390fd5b606483600001516040015160ff16111562000171576040516354e5e0ab60e11b815260040160405180910390fd5b825160408101516020909101516064916200018c9162000732565b60ff161115620001af576040516317ff9d0f60e21b815260040160405180910390fd5b82518051600e805460208085015160408087015160609788015160ff90811663010000000263ff0000001992821662010000029290921663ffff0000199482166101000261ffff1990971698821698909817959095179290921695909517178355808801518051600f9081559181015160105593840151601180549190931660ff1991909116179091559282015186939192919060129062000252908262000666565b50608091909101516004909101805460ff92831660ff19918216179091556040840151516006840180549190931691161790556060909101516007909101555062000764915050565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715620002d657620002d66200029b565b60405290565b604051608081016001600160401b0381118282101715620002d657620002d66200029b565b604051601f8201601f191681016001600160401b03811182821017156200032c576200032c6200029b565b604052919050565b805160ff811681146200034657600080fd5b919050565b600060a082840312156200035e57600080fd5b62000368620002b1565b90508151815260208083015181830152620003866040840162000334565b604083015260608301516001600160401b0380821115620003a657600080fd5b818501915085601f830112620003bb57600080fd5b815181811115620003d057620003d06200029b565b620003e4601f8201601f1916850162000301565b91508082528684828501011115620003fb57600080fd5b60005b818110156200041b578381018501518382018601528401620003fe565b506000848284010152508060608501525050506200043c6080830162000334565b608082015292915050565b6000602082840312156200045a57600080fd5b604051602081016001600160401b03811182821017156200047f576200047f6200029b565b604052905080620004908362000334565b905292915050565b80516001600160a01b03811681146200034657600080fd5b600080600060608486031215620004c657600080fd5b83516001600160401b0380821115620004de57600080fd5b9085019081870360e0811215620004f457600080fd5b620004fe620002dc565b60808212156200050d57600080fd5b62000517620002dc565b9150620005248462000334565b8252620005346020850162000334565b6020830152620005476040850162000334565b60408301526200055a6060850162000334565b6060830152908152608083015190828211156200057657600080fd5b62000584898386016200034b565b6020820152620005988960a0860162000447565b604082015260c0840151606082015280965050505050620005bc6020850162000498565b9150620005cc6040850162000498565b90509250925092565b600181811c90821680620005ea57607f821691505b6020821081036200060b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000661576000816000526020600020601f850160051c810160208610156200063c5750805b601f850160051c820191505b818110156200065d5782815560010162000648565b5050505b505050565b81516001600160401b038111156200068257620006826200029b565b6200069a81620006938454620005d5565b8462000611565b602080601f831160018114620006d25760008415620006b95750858301515b600019600386901b1c1916600185901b1785556200065d565b600085815260208120601f198616915b828110156200070357888601518255948401946001909101908401620006e2565b5085821015620007225787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60ff81811683821602908116908181146200075d57634e487b7160e01b600052601160045260246000fd5b5092915050565b60805160a051613ec8620007c26000396000818161048e015281816107820152818161184f015281816124ad0152818161255d015281816126cf0152818161277f0152612988015260008181612e7c01526130580152613ec86000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80636c70bee9116100f9578063c0cc4add11610097578063e8aa0a0711610071578063e8aa0a0714610439578063f752196b1461044c578063fb1e61ca1461046c578063fc0c546a1461048c57600080fd5b8063c0cc4add14610400578063c5d4335114610413578063e61636821461042657600080fd5b8063a29c29a4116100d3578063a29c29a41461039a578063a3a0807e146103ad578063b396dc79146103c0578063be5cdc48146103e057600080fd5b80636c70bee91461036a5780636e2b54ee1461037f5780639777b72c1461039257600080fd5b80634641dce61161016657806359cc89ed1161014057806359cc89ed146102eb5780635da73835146102fe57806362d48e13146103135780636b00c8cf1461032657600080fd5b80634641dce6146102905780634802f44b146102b557806351a76642146102d857600080fd5b80630aefaabe116101a25780630aefaabe1461022457806326d6f83414610237578063329b5a0b1461025a578063458d2bf11461027d57600080fd5b806302fa8e65146101c957806305b90773146101ef57806308695fcd1461020f575b600080fd5b6101dc6101d73660046132d3565b6104b2565b6040519081526020015b60405180910390f35b6102026101fd3660046132d3565b610529565b6040516101e69190613302565b61022261021d36600461331c565b610615565b005b610222610232366004613353565b61084d565b6101dc6102453660046132d3565b60009081526018602052604090206004015490565b6101dc6102683660046132d3565b60009081526017602052604090206005015490565b6101dc61028b3660046132d3565b6109d8565b6102a361029e3660046132d3565b6109f1565b60405160ff90911681526020016101e6565b6102c86102c336600461331c565b610a04565b60405190151581526020016101e6565b6101dc6102e63660046132d3565b610a8d565b6102226102f93660046133a8565b610add565b610306610ed2565b6040516101e691906133df565b61022261032136600461331c565b610ef9565b6103526103343660046132d3565b6000908152601860205260409020600501546001600160a01b031690565b6040516001600160a01b0390911681526020016101e6565b610372610fe0565b6040516101e69190613469565b61022261038d3660046132d3565b611133565b610306611140565b6102226103a83660046132d3565b61115f565b6102c86103bb3660046132d3565b6111b1565b6103d36103ce3660046132d3565b6111e6565b6040516101e691906135e9565b6103f36103ee3660046132d3565b6113b1565b6040516101e6919061361b565b6102c861040e3660046132d3565b61147f565b61022261042136600461362f565b611492565b61022261043436600461365f565b6118e9565b61022261044736600461369b565b611d40565b6101dc61045a3660046132d3565b60009081526009602052604090205490565b61047f61047a3660046132d3565b611e54565b6040516101e691906136c9565b7f0000000000000000000000000000000000000000000000000000000000000000610352565b600081815260176020526040812060040154816104ce84610529565b905060008160048111156104e4576104e46132ec565b1480610501575060018160048111156104ff576104ff6132ec565b145b1561050d575092915050565b6105218261051c6001426136f2565b611fea565b949350505050565b60008181526016602052604081205482906001600160a01b031661056057604051635eeb253d60e11b815260040160405180910390fd5b600083815260176020526040812090815460ff166004811115610585576105856132ec565b1480156105a2575060008481526017602052604090206005015442115b156105b157600292505061060f565b6001815460ff1660048111156105c9576105c96132ec565b14806105ea57506000815460ff1660048111156105e8576105e86132ec565b145b80156105f95750806004015442115b1561060857600392505061060f565b5460ff1691505b50919050565b6001610620836113b1565b6006811115610631576106316132ec565b14610668576040517fae9dcffd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106728282612002565b6000828152601860209081526040808320600180820154855260168452828520600e54845160e0810186529282015467ffffffffffffffff90811684526002830154968401969096526003820154948301949094526004810154606083015260058101546080830152600681015460a0830152600781015490941660c08201529093916064916201000090910460ff169061070c906121c0565b6107169190613705565b6107209190613732565b600e54909150600090606490610740906301000000900460ff1684613705565b61074a9190613732565b905080601960010160008282546107619190613746565b909155505060405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af11580156107d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f79190613759565b6108035761080361377b565b8184600401600082825461081791906136f2565b9091555050600e5460008781526009602052604090205461010090910460ff161161084557610845866121d6565b505050505050565b826000808281526018602052604090205460ff166006811115610872576108726132ec565b0361089057604051638b41ec7f60e01b815260040160405180910390fd5b600084815260186020526040902060058101546001600160a01b031633146108e4576040517f57a6f4e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006108ef866113b1565b90506004816006811115610905576109056132ec565b0361093c576040517fc2cbf77700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002816006811115610950576109506132ec565b0361096a5761096582600101548787876123aa565b610845565b600581600681111561097e5761097e6132ec565b036109935761096582600101548787876125e7565b60038160068111156109a7576109a76132ec565b036109b6576109653387612813565b60018160068111156109ca576109ca6132ec565b0361084557610845866121d6565b60006109eb826109e6612835565b612840565b92915050565b60006109eb826109ff612835565b612854565b604080516020808201859052818301849052825180830384018152606090920190925280519101206000903390610a3a816128c8565b8015610a635750600154600082815260208190526040902060ff90911690610a61906128f5565b105b8015610a8457506000818152602081905260409020610a8290836128ff565b155b95945050505050565b6000818152601860209081526040808320600181015484526016909252822060115461010090610ac09060ff1682613791565b6004830154610ad39161ffff1690613705565b6105219190613732565b60008381526016602052604090205483906001600160a01b0316610b1457604051635eeb253d60e11b815260040160405180910390fd5b6000848152601660205260409020600181015467ffffffffffffffff168410610b69576040517f3b920b8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051602080820188905281830187905282518083038401815260609092018352815191810191909120600081815291829052919020610baa90336128ff565b610be0576040517fd651ce1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000818152601860209081526040808320600181018a905560038101899055898452601790925282209091610c14846113b1565b6006811115610c2557610c256132ec565b14158015610c4d57506006610c39846113b1565b6006811115610c4a57610c4a6132ec565b14155b15610c84576040517fff556acf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600860205260409020429055610c9f8387611d40565b60058201805473ffffffffffffffffffffffffffffffffffffffff19163317905542600283015560018181018054600090610cdb908490613746565b92505081905550610cf0888360020154612921565b816002016000828254610d0391906136f2565b90915550506040805160e081018252600186015467ffffffffffffffff9081168252600287015460208301526003870154928201929092526004860154606082015260058601546080820152600686015460a0820152600786015490911660c08201526000908190610d74906121c0565b90506006610d81866113b1565b6006811115610d9257610d926132ec565b03610dc557600e54606490610daa9060ff1683613705565b610db49190613732565b610dbe90826136f2565b9150610dc9565b8091505b610dd33383612940565b8160196000016000828254610de89190613746565b9091555050600484018190556005840154610e0c906001600160a01b031686612a14565b835460ff191660011784556040518981528a907ff530852268993f91008f1a1e0b09b5c813acd4188481f1fa83c33c7182e814b49060200160405180910390a26001808701549084015467ffffffffffffffff909116148015610e8457506000835460ff166004811115610e8257610e826132ec565b145b15610ec657825460ff191660011783554260038401556040518a907f85e1543bf2f84fe80c6badbce3648c8539ad1df4d2b3d822938ca0538be727e690600090a25b50505050505050505050565b336000908152600d60205260409020606090610ef490610ef190612a36565b90565b905090565b610f038282610a04565b610f39576040517f424a04ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051602080820185905281830184905282518083038401815260609092018352815191810191909120600081815291829052919020610f7a9033612a43565b50600154600082815260208190526040902060ff90911690610f9b906128f5565b03610fdb57827f3bef2ebab8cc92e0edda5decf18232f0606a18405ef674b51ea9d1e0e3839b4183604051610fd291815260200190565b60405180910390a25b505050565b610fe8613177565b604080516101008082018352600e805460ff80821660808601908152938204811660a080870191909152620100008304821660c08701526301000000909204811660e086015292845284519081018552600f8054825260105460208381019190915260115490941695820195909552601280549495929493860193919291606084019190611075906137ac565b80601f01602080910402602001604051908101604052809291908181526020018280546110a1906137ac565b80156110ee5780601f106110c3576101008083540402835291602001916110ee565b820191906000526020600020905b8154815290600101906020018083116110d157829003601f168201915b50505091835250506004919091015460ff9081166020928301529183526040805180830182526006860154909316835290830191909152600790920154910152919050565b61113d8133611492565b50565b336000908152600c60205260409020606090610ef490610ef190612a36565b806000808281526018602052604090205460ff166006811115611184576111846132ec565b036111a257604051638b41ec7f60e01b815260040160405180910390fd5b6111ad82333361084d565b5050565b60008060006111c7846111c2612835565b612a58565b9092509050818015610521575060045460ff9081169116109392505050565b6111ee6131ea565b816000808281526018602052604090205460ff166006811115611213576112136132ec565b0361123157604051638b41ec7f60e01b815260040160405180910390fd5b60008381526018602052604090206112476131ea565b600180830154600090815260166020908152604091829020825160a0808201855282546001600160a01b03168252845160e0810186529583015467ffffffffffffffff9081168752600284015487860152600384015487870152600484015460608801526005840154608088015260068401549187019190915260078301541660c08601529182019390935281518083018352600884018054929493850192829082906112f3906137ac565b80601f016020809104026020016040519081016040528092919081815260200182805461131f906137ac565b801561136c5780601f106113415761010080835404028352916020019161136c565b820191906000526020600020905b81548152906001019060200180831161134f57829003601f168201915b505050918352505060019190910154602091820152908252600a83015482820152600b9092015460409091015290825260039092015491810191909152915050919050565b6000818152601860205260408120600181015482036113d35750600092915050565b60006113e28260010154610529565b90506004825460ff1660068111156113fc576113fc6132ec565b0361140b575060049392505050565b600281600481111561141f5761141f6132ec565b0361142e575060059392505050565b6003816004811115611442576114426132ec565b03611451575060029392505050565b6004816004811115611465576114656132ec565b03611474575060039392505050565b505460ff1692915050565b60006109eb8261148d612835565b612b07565b60008281526016602052604090205482906001600160a01b03166114c957604051635eeb253d60e11b815260040160405180910390fd5b6000838152601660209081526040808320601790925290912081546001600160a01b0316331461150c576040516334c69e3160e11b815260040160405180910390fd5b600061151786610529565b9050600281600481111561152d5761152d6132ec565b1415801561154d5750600481600481111561154a5761154a6132ec565b14155b801561156b57506003816004811115611568576115686132ec565b14155b156115a2576040517fc00b5b5700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81600201546000036115e0576040517fbd8bdd9400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60028160048111156115f4576115f46132ec565b0361167e57815460ff1916600217825560405186907ff903f4774c7bd27355f9d7fcbc382b079b164a697a44ac5d95267a4c3cb3bb2290600090a26116518661164c8860009081526017602052604090206005015490565b612921565b82600101546116609190613705565b8260020160008282546116739190613746565b909155506117f59050565b6004816004811115611692576116926132ec565b036117e9576040805160a0808201835285546001600160a01b03168252825160e081018452600187015467ffffffffffffffff90811682526002880154602083810191909152600389015483870152600489015460608401526005890154608084015260068901549383019390935260078801541660c082015290820152815180830183526008860180546117df94889390850192909182908290611736906137ac565b80601f0160208091040260200160405190810160405280929190818152602001828054611762906137ac565b80156117af5780601f10611784576101008083540402835291602001916117af565b820191906000526020600020905b81548152906001019060200180831161179257829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050612b37565b60028301556117f5565b815460ff191660031782555b825461180a906001600160a01b031687612b70565b6002820154601a8054829190600090611824908490613746565b909155505060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611898573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118bc9190613759565b6118d957604051637c2ccffd60e11b815260040160405180910390fd5b5050600060029091015550505050565b60006118fc6118f783613955565b612b92565b90503361190c6020840184613a44565b6001600160a01b031614611933576040516334c69e3160e11b815260040160405180910390fd5b6000818152601660205260409020546001600160a01b031615611982576040517ffc7d069000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610120820135158061199d5750606082013561012083013510155b156119d4576040517fdf63f61a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119e46040830160208401613a61565b67ffffffffffffffff16600003611a27576040517f535ed2be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611a376040830160208401613a61565b67ffffffffffffffff16611a52610100840160e08501613a61565b67ffffffffffffffff161115611a94576040517fb9551ab100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6060820135600003611ad2576040517f090a5ecd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6080820135600003611b10576040517f6aba7aae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60c0820135600003611b4e576040517ffb7df0c700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60a0820135600003611b8c576040517f47ba51c700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b9a610100830183613a7e565b611ba49080613a9e565b9050600003611bdf576040517f86f8cf9b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60155460608301351115611c1f576040517f1267b3f200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526016602052604090208290611c398282613c33565b50611c4a9050606083013542613746565b600082815260176020526040902060040155611c6b61012083013542613746565b600082815260176020908152604090912060050191909155611c9990611c9390840184613a44565b82612bc2565b6000611cac611ca784613955565b612b37565b6000838152601760205260408120600201829055601980549293508392909190611cd7908490613746565b90915550611ce790503382612940565b7f5fdb86c365a247a4d97dcbcc5c3abde9d6e3e2de26273f3fda8eef5073b9a96c82846020016017600086815260200190815260200160002060050154604051611d3393929190613d2b565b60405180910390a1505050565b6000828152601860209081526040808320600101548084526016909252909120546001600160a01b0316611d8757604051635eeb253d60e11b815260040160405180910390fd5b600083815260186020908152604080832060018101548452601683528184208251600380825260808201909452919490939092908201606080368337019050509050611dda611dd5876109d8565b612be4565b81600081518110611ded57611ded613da7565b60209081029190910101526009820154611e0690612bf5565b81600181518110611e1957611e19613da7565b602002602001018181525050826003015481600281518110611e3d57611e3d613da7565b602002602001018181525050610845868683612c01565b611e5c6131f9565b60008281526016602052604090205482906001600160a01b0316611e9357604051635eeb253d60e11b815260040160405180910390fd5b600083815260166020908152604091829020825160a0808201855282546001600160a01b03168252845160e081018652600184015467ffffffffffffffff90811682526002850154828701526003850154828801526004850154606083015260058501546080830152600685015492820192909252600784015490911660c08201529281019290925282518084018452600882018054939492939285019282908290611f3e906137ac565b80601f0160208091040260200160405190810160405280929190818152602001828054611f6a906137ac565b8015611fb75780601f10611f8c57610100808354040283529160200191611fb7565b820191906000526020600020905b815481529060010190602001808311611f9a57829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050915050919050565b6000818310611ff95781611ffb565b825b9392505050565b600061200d82612d94565b9050428110612048576040517f6b4b1a4e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003546120559082613746565b421061208d576040517fde55698e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a6020908152604080832085845290915290205460ff16156120e0576040517efab7d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6120ea8383612b07565b612120576040517fd3ffa66b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600b6020908152604080832085845290915290205460ff1615612174576040517f98e7e55100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600b602090815260408083208584528252808320805460ff19166001908117909155868452600990925282208054919290916121b6908490613746565b9091555050505050565b600081602001518260a001516109eb9190613705565b60008181526018602090815260408083206001810154808552601790935292206002830154612206908390612921565b8160020160008282546122199190613746565b90915550506005830154612236906001600160a01b031685612813565b600084815260208190526040812090818161225182826132a1565b5050845460ff1916600617855550506000600284018190556004840181905560058401805473ffffffffffffffffffffffffffffffffffffffff1916905560018281018054919290916122a59084906136f2565b9091555050600383015460405190815282907f1d31c9f8dea6e179f6a050db117595feea8937029ea51f5168a4780be7e8f5529060200160405180910390a2600084815260096020526040812055600082815260166020526040812060018084015490820154919291612322919067ffffffffffffffff166136f2565b600783015490915067ffffffffffffffff168111801561235757506001835460ff166004811115612355576123556132ec565b145b1561084557825460ff191660041783556123726001426136f2565b600484015560405184907f4769361a442504ecaf038f35e119bcccdd5e42096b24c09e3c17fd17c6684c0290600090a2505050505050565b60008481526016602052604090205484906001600160a01b03166123e157604051635eeb253d60e11b815260040160405180910390fd5b600085815260176020908152604080832060168352818420815460ff19166003178255888552601890935292208154612423906001600160a01b031689612b70565b600581015461243b906001600160a01b031688612813565b600061244b898360020154612921565b600483015490915061245d8183613746565b601a805460009061246f908490613746565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038981166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156124f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251a9190613759565b61253757604051637c2ccffd60e11b815260040160405180910390fd5b60405163a9059cbb60e01b81526001600160a01b038881166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156125a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ca9190613759565b610ec657604051637c2ccffd60e11b815260040160405180910390fd5b60008481526016602052604090205484906001600160a01b031661261e57604051635eeb253d60e11b815260040160405180910390fd5b60008481526018602052604090206005810154612644906001600160a01b031686612813565b600061266d8783600201546126688a60009081526017602052604090206005015490565b612da7565b600483015490915061267f8183613746565b601a8054600090612691908490613746565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015612718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061273c9190613759565b61275957604051637c2ccffd60e11b815260040160405180910390fd5b60405163a9059cbb60e01b81526001600160a01b038681166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156127c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ec9190613759565b61280957604051637c2ccffd60e11b815260040160405180910390fd5b5050505050505050565b6001600160a01b0382166000908152600d60205260409020610fdb9082612e69565b6000610ef442612e75565b6000611ffb61284f8484612854565b612ea1565b60008061286361010043613dbd565b6006549091506000906101009061287d9060ff1686613705565b6128879190613dbd565b9050600061289761010087613dbd565b90506000610100826128a98587613746565b6128b39190613746565b6128bd9190613dbd565b979650505050505050565b60008060008381526018602052604090205460ff1660068111156128ee576128ee6132ec565b1492915050565b60006109eb825490565b6001600160a01b03811660009081526001830160205260408120541515611ffb565b600082815260176020526040812060040154611ffb9084908490612da7565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b038381166004830152306024830181905260448301849052917f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303816000875af11580156129d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129f79190613759565b610fdb57604051637c2ccffd60e11b815260040160405180910390fd5b6001600160a01b0382166000908152600d60205260409020610fdb9082612efb565b60606000611ffb83612f07565b6000611ffb836001600160a01b038416612f63565b6000806000612a66856113b1565b60008681526008602052604081205491925090612a8290612e75565b90506001826006811115612a9857612a986132ec565b141580612aac5750612aaa8582612fb2565b155b15612abf57600080935093505050612b00565b612ac98686612854565b92506000612ad684612ea1565b90506000612ae388610a8d565b9050801580612af95750612af78183613dbd565b155b9550505050505b9250929050565b6000806000612b168585612a58565b9092509050818015610a84575060045460ff90811691161015949350505050565b6000612b468260200151612fbc565b602083015160408101519051612b66919067ffffffffffffffff16613705565b6109eb9190613705565b6001600160a01b0382166000908152600c60205260409020610fdb9082612e69565b600081604051602001612ba591906136c9565b604051602081830303815290604052805190602001209050919050565b6001600160a01b0382166000908152600c60205260409020610fdb9082612efb565b600060ff1982168161052182612fd2565b600080611ffb83612fd2565b6000838152600a6020526040812090612c18612835565b815260208101919091526040016000205460ff1615612c63576040517f3edef7db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007546040517f94c8919d0000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906394c8919d90612cae9085908590600401613dd1565b602060405180830381865afa158015612ccb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cef9190613759565b612d25576040517ffcd03a4700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a60205260408120600191612d3e612835565b815260200190815260200160002060006101000a81548160ff0219169083151502179055507f3b989d183b84b02259d7c14b34a9c9eb0fccb4c355a920d25e581e25aef4993d83604051611d3391815260200190565b60006109eb612da283613044565b613051565b6000838152601660205260408120828410612dee576040517f56607cb000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805160e081018252600183015467ffffffffffffffff9081168252600284015460208301526003840154928201929092526004830154606082015260058301546080820152600683015460a0820152600783015490911660c0820152612e5590612fbc565b612e5f85856136f2565b610a849190613705565b6000611ffb838361307d565b60006109eb7f000000000000000000000000000000000000000000000000000000000000000083613732565b60008060ff8316612eb36001436136f2565b612ebd91906136f2565b4090506000819003612ed157612ed161377b565b60408051602081018390520160405160208183030381529060405280519060200120915050919050565b6000611ffb8383612f63565b606081600001805480602002602001604051908101604052809291908181526020018280548015612f5757602002820191906000526020600020905b815481526020019060010190808311612f43575b50505050509050919050565b6000818152600183016020526040812054612faa575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556109eb565b5060006109eb565b6000818311611ffb565b6000816020015182608001516109eb9190613705565b7fff00000000000000000000000000000000000000000000000000000000000000811660015b602081101561060f57600891821c91613012908290613705565b83901b7fff00000000000000000000000000000000000000000000000000000000000000169190911790600101612ff8565b60006109eb826001613746565b60006109eb7f000000000000000000000000000000000000000000000000000000000000000083613705565b600081815260018301602052604081205480156131665760006130a16001836136f2565b85549091506000906130b5906001906136f2565b905081811461311a5760008660000182815481106130d5576130d5613da7565b90600052602060002001549050808760000184815481106130f8576130f8613da7565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061312b5761312b613e7c565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506109eb565b60009150506109eb565b5092915050565b60408051610100810182526000608080830182815260a080850184905260c0850184905260e08501849052908452845190810185528281526020808201849052818601849052606080830152918101839052818401528351908101845290815290918201905b8152602001600081525090565b60405180604001604052806131dd5b6040518060a0016040528060006001600160a01b031681526020016132686040518060e00160405280600067ffffffffffffffff1681526020016000815260200160008152602001600081526020016000815260200160008152602001600067ffffffffffffffff1681525090565b815260200161328d604051806040016040528060608152602001600080191681525090565b815260006020820181905260409091015290565b508054600082559060005260206000209081019061113d91905b808211156132cf57600081556001016132bb565b5090565b6000602082840312156132e557600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6020810160058310613316576133166132ec565b91905290565b6000806040838503121561332f57600080fd5b50508035926020909101359150565b6001600160a01b038116811461113d57600080fd5b60008060006060848603121561336857600080fd5b83359250602084013561337a8161333e565b9150604084013561338a8161333e565b809150509250925092565b6000610100828403121561060f57600080fd5b600080600061014084860312156133be57600080fd5b83359250602084013591506133d68560408601613395565b90509250925092565b6020808252825182820181905260009190848201906040850190845b81811015613417578351835292840192918401916001016133fb565b50909695505050505050565b6000815180845260005b818110156134495760208185018101518683018201520161342d565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000825160ff8082511660208501528060208301511660408501528060408301511660608501528060608301511660808501526020850151915060e060a08501528151610100850152602082015161012085015280604083015116610140850152606082015160a06101608601526134e96101a0860182613423565b60809390930151919091166101808501525060408401515160ff1660c084015260609093015160e0909201919091525090565b60008151604084526135316040850182613423565b602093840151949093019390935250919050565b60006101606001600160a01b038351168452602083015167ffffffffffffffff808251166020870152602082015160408701526040820151606087015260608201516080870152608082015160a087015260a082015160c08701528060c08301511660e087015250506040830151816101008601526135c68286018261351c565b915050606083015161012085015260808301516101408501528091505092915050565b6020815260008251604060208401526136056060840182613545565b9050602084015160408401528091505092915050565b6020810160078310613316576133166132ec565b6000806040838503121561364257600080fd5b8235915060208301356136548161333e565b809150509250929050565b60006020828403121561367157600080fd5b813567ffffffffffffffff81111561368857600080fd5b82016101608185031215611ffb57600080fd5b60008061012083850312156136af57600080fd5b823591506136c08460208501613395565b90509250929050565b602081526000611ffb6020830184613545565b634e487b7160e01b600052601160045260246000fd5b818103818111156109eb576109eb6136dc565b80820281158282048414176109eb576109eb6136dc565b634e487b7160e01b600052601260045260246000fd5b6000826137415761374161371c565b500490565b808201808211156109eb576109eb6136dc565b60006020828403121561376b57600080fd5b81518015158114611ffb57600080fd5b634e487b7160e01b600052600160045260246000fd5b61ffff828116828216039080821115613170576131706136dc565b600181811c908216806137c057607f821691505b60208210810361060f57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715613819576138196137e0565b60405290565b60405160a0810167ffffffffffffffff81118282101715613819576138196137e0565b60405160e0810167ffffffffffffffff81118282101715613819576138196137e0565b604051601f8201601f1916810167ffffffffffffffff8111828210171561388e5761388e6137e0565b604052919050565b67ffffffffffffffff8116811461113d57600080fd5b6000604082840312156138be57600080fd5b6138c66137f6565b9050813567ffffffffffffffff808211156138e057600080fd5b818401915084601f8301126138f457600080fd5b8135602082821115613908576139086137e0565b61391a601f8301601f19168201613865565b9250818352868183860101111561393057600080fd5b8181850182850137600081838501015282855280860135818601525050505092915050565b600081360361016081121561396957600080fd5b61397161381f565b833561397c8161333e565b815260e0601f198301121561399057600080fd5b613998613842565b915060208401356139a881613896565b8083525060408401356020830152606084013560408301526080840135606083015260a0840135608083015260c084013560a083015260e08401356139ec81613896565b60c083015260208101919091526101008301359067ffffffffffffffff821115613a1557600080fd5b613a21368386016138ac565b604082015261012084013560608201526101409093013560808401525090919050565b600060208284031215613a5657600080fd5b8135611ffb8161333e565b600060208284031215613a7357600080fd5b8135611ffb81613896565b60008235603e19833603018112613a9457600080fd5b9190910192915050565b6000808335601e19843603018112613ab557600080fd5b83018035915067ffffffffffffffff821115613ad057600080fd5b602001915036819003821315612b0057600080fd5b600081356109eb81613896565b601f821115610fdb576000816000526020600020601f850160051c81016020861015613b1b5750805b601f850160051c820191505b8181101561084557828155600101613b27565b8135601e19833603018112613b4e57600080fd5b8201803567ffffffffffffffff811115613b6757600080fd5b60208136038184011315613b7a57600080fd5b613b8e82613b8886546137ac565b86613af2565b6000601f831160018114613bc45760008415613bac57508482018301355b600019600386901b1c1916600185901b178655613c21565b600086815260209020601f19851690835b82811015613bf6578785018601358255938501936001909101908501613bd5565b5085821015613c155760001960f88760031b161c198585890101351681555b505060018460011b0186555b50508085013560018501555050505050565b8135613c3e8161333e565b6001600160a01b03811673ffffffffffffffffffffffffffffffffffffffff19835416178255506020820135613c7381613896565b60018201805467ffffffffffffffff191667ffffffffffffffff83161790555060408201356002820155606082013560038201556080820135600482015560a0820135600582015560c08201356006820155613cf7613cd460e08401613ae5565b6007830167ffffffffffffffff821667ffffffffffffffff198254161781555050565b613d11613d08610100840184613a7e565b60088301613b3a565b610120820135600a820155610140820135600b8201555050565b83815261012081018335613d3e81613896565b67ffffffffffffffff8082166020850152602086013560408501526040860135606085015260608601356080850152608086013560a085015260a086013560c085015260c08601359150613d9182613896565b1660e08301526101009091019190915292915050565b634e487b7160e01b600052603260045260246000fd5b600082613dcc57613dcc61371c565b500690565b82358152602080840135908201526000610120828101613e01604085016040880180358252602090810135910152565b613e1b608085016080880180358252602090810135910152565b613e3560c0850160c0880180358252602090810135910152565b61010084019190915283519081905261014083019060209081860160005b82811015613e6f57815185529383019390830190600101613e53565b5092979650505050505050565b634e487b7160e01b600052603160045260246000fdfea26469706673582212201d887035f7a6439e91ed5b3d5b05614871300c525708ad77111dbb77f53ace0d64736f6c63430008170033"; public MarketplaceDeploymentBase() : base(BYTECODE) { } public MarketplaceDeploymentBase(string byteCode) : base(byteCode) { } [Parameter("tuple", "config", 1)] @@ -104,6 +104,11 @@ namespace CodexContractsPlugin.Marketplace public class MarketplaceAlreadypaidErrorBase : IErrorDTO { } + public partial class MarketplaceDurationexceedslimitError : MarketplaceDurationexceedslimitErrorBase { } + [Error("Marketplace_DurationExceedsLimit")] + public class MarketplaceDurationexceedslimitErrorBase : IErrorDTO + { + } public partial class MarketplaceInsufficientcollateralError : MarketplaceInsufficientcollateralErrorBase { } [Error("Marketplace_InsufficientCollateral")] public class MarketplaceInsufficientcollateralErrorBase : IErrorDTO @@ -718,6 +723,8 @@ namespace CodexContractsPlugin.Marketplace public virtual ProofConfig Proofs { get; set; } [Parameter("tuple", "reservations", 3)] public virtual SlotReservationsConfig Reservations { get; set; } + [Parameter("uint256", "requestDurationLimit", 4)] + public virtual BigInteger RequestDurationLimit { get; set; } } public partial class Ask : AskBase { } diff --git a/Tests/CodexReleaseTests/MarketTests/ContractSuccessfulTest.cs b/Tests/CodexReleaseTests/MarketTests/ContractSuccessfulTest.cs index f669751c..70f31531 100644 --- a/Tests/CodexReleaseTests/MarketTests/ContractSuccessfulTest.cs +++ b/Tests/CodexReleaseTests/MarketTests/ContractSuccessfulTest.cs @@ -1,6 +1,5 @@ using CodexContractsPlugin; using CodexPlugin; -using GethPlugin; using NUnit.Framework; using Utils;