be1d662c-639e-4a84-a41b-e7016403bc1d
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 30990 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 94951 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 94952 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 94953 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 94954 | capability.graph | complete | 1 / 3 | 1 week ago |
| 94955 | detector.run | complete | 1 / 3 | 1 week ago |
| 94956 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1200618] OpenAI Codex v0.77.0 (research preview)
[codex:1200618] --------
[codex:1200618] workdir: /tmp/codex-multi-a35abjqu
[codex:1200618] model: gpt-5.2-codex
[codex:1200618] provider: openai
[codex:1200618] approval: never
[codex:1200618] sandbox: read-only
[codex:1200618] reasoning effort: xhigh
[codex:1200618] reasoning summaries: auto
[codex:1200618] session id: 019b76ef-e1af-71b2-a5b2-d545df82dcba
[codex:1200618] --------
[codex:1200618] user
[codex:1200618] You are a profit-focused exploit hunter analyzing EVM bytecode. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1200618]
[codex:1200618] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:1200618]
[codex:1200618] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1200618] - Gas inefficiency, code quality, or best practices
[codex:1200618] - Theoretical vulnerabilities without a clear extraction path
[codex:1200618] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:1200618] - Issues requiring social engineering or off-chain coordination
[codex:1200618]
[codex:1200618] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:1200618] - CALL/DELEGATECALL with controllable destination or calldata
[codex:1200618] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:1200618] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:1200618] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:1200618] - External calls before state updates (reentrancy)
[codex:1200618] - SELFDESTRUCT with controllable beneficiary
[codex:1200618] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:1200618]
[codex:1200618] For each finding, you MUST explain:
[codex:1200618] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:1200618] 2. The concrete sequence of transactions to extract value
[codex:1200618] 3. Why you believe this is exploitable (not just suspicious)
[codex:1200618]
[codex:1200618] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:1200618] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:1200618]
[codex:1200618] Output MUST be valid JSON matching the provided schema.
[codex:1200618] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1200618] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1200618] mcp startup: no servers
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Reading file contents**
[codex:1200618] exec
[codex:1200618] /bin/bash -lc ls in /tmp/codex-multi-a35abjqu succeeded in 5ms:
[codex:1200618] BYTECODE_BUNDLE.txt
[codex:1200618] codex-output-schema.json
[codex:1200618] exec
[codex:1200618] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-a35abjqu succeeded in 5ms:
[codex:1200618] Runtime bytecode bundle for best-effort auditing.
[codex:1200618] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:1200618]
[codex:1200618] FILE: runtime_bytecode.hex
[codex:1200618] 0x6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c80630a83a4e91461022b5780630def103814610226578063222b15fb146102215780632b585db41461021c5780633291ce3014610217578063485cc955146102125780634dca69711461020d5780634f1ef2861461020857806352d1902d146102035780635c975abb146101fe57806366148096146101f95780636af6400d146101f45780637a9e5e4b146101ef5780637fec8d38146101ea5780638fb36037146101e557806396e2af56146101e0578063a39ed3f9146101db578063aaf10f42146101d6578063ad3cb1cc146101d1578063b4613b52146101cc578063b899f904146101c7578063bf7e214f146101c2578063c0a03720146101bd578063c879c6d8146101b8578063c8bc5fb0146101b3578063ca75ecbf146101ae578063cc9e3e89146101a9578063cefddc63146101a4578063d552a16e1461019f578063d93765fc1461019a578063e282dcdd14610195578063ee9592b9146101905763fb0f97a80361000e57611828565b6117e0565b611569565b611443565b6113b0565b611389565b61134e565b6112af565b611185565b6110be565b611081565b61104b565b610e8c565b610e47565b610e01565b610d5f565b610c5f565b610c14565b610bc1565b610afe565b610a7f565b610a53565b610a23565b6109f3565b610988565b61080f565b61063a565b610514565b610464565b6103e0565b610393565b610283565b610246565b6001600160a01b0381160361024157565b600080fd5b346102415760203660031901126102415760043561026381610230565b60018060a01b031660005260066020526020604060002054604051908152f35b34610241576040366003190112610241577fd58da2325ce084e36b92ea4c1a90706ffa665d07ec064f887de9dbb8f15f49956024356004356102c482610230565b6102ce36336120c8565b6102d7826121e8565b8061031a57600180546001600160a01b0319166001600160a01b0384161790555b604080519182526001600160a01b03909216602082015290819081015b0390a1005b6001810361034357600a80546001600160a01b0319166001600160a01b0384161790555b6102f8565b6002810361036b57600280546001600160a01b0319166001600160a01b0384161790556102f8565b6005810361033e57600380546001600160a01b0319166001600160a01b0384161790556102f8565b346102415760203660031901126102415760206103d66004356103b581610230565b6001600160a01b031660009081526006602052604090205460019081161490565b6040519015158152f35b346102415760403660031901126102415760206001600f61042c60043561040681610230565b6024356000526007855260406000209060018060a01b0316600052602052604060002090565b541614604051908152f35b9181601f84011215610241578235916001600160401b038311610241576020838186019501011161024157565b346102415760e03660031901126102415760443561048181610230565b6001600160401b0390608435828111610241576104a2903690600401610437565b60a492919235848111610241576104bd903690600401610437565b93909260c435958611610241576104db610019963690600401610437565b50506064359060243560043561193a565b60409060031901126102415760043561050481610230565b9060243561051181610230565b90565b3461024157610522366104ec565b90600080516020613c7983398151915254916001600160401b0360ff8460401c1615931680159081610632575b6001149081610628575b15908161061f575b5061060d57600080516020613c79833981519152805467ffffffffffffffff1916600117905561059591836105e857611a96565b61059b57005b600080516020613c79833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2908060208101610315565b600080516020613c79833981519152805460ff60401b1916600160401b179055611a96565b60405163f92ee8a960e01b8152600490fd5b90501538610561565b303b159150610559565b84915061054f565b34610241576040366003190112610241577f14c31aacfac9e1b12448ca6d440a799c047f0eb36ac5145aa2f18dd4796373f560243560043561067b82610230565b61068536336120c8565b61068e826121e8565b606082901b6bffffffffffffffffffffffff19168117600955604080519182526001600160a01b0390921660208201529081908101610315565b634e487b7160e01b600052604160045260246000fd5b60a081019081106001600160401b038211176106f957604052565b6106c8565b606081019081106001600160401b038211176106f957604052565b6001600160401b0381116106f957604052565b602081019081106001600160401b038211176106f957604052565b604081019081106001600160401b038211176106f957604052565b90601f801991011681019081106001600160401b038211176106f957604052565b6040519060c082018281106001600160401b038211176106f957604052565b6001600160401b0381116106f957601f01601f191660200190565b9291926107c9826107a2565b916107d76040519384610762565b829481845281830111610241578281602093846000960137010152565b9080601f8301121561024157816020610511933591016107bd565b604036600319011261024157600480359061082982610230565b6024356001600160401b0381116102415761084790369083016107f4565b6001600160a01b037f00000000000000000000000092feada957bbeb17868f9f59aed548e50191283d8116308114908115610961575b5061095057906020839261089136336120c8565b6040516352d1902d60e01b8152938491829088165afa6000928161091f575b506108e2575050604051634c9c8ce360e01b81526001600160a01b0390921690820190815281906020010390fd5b0390fd5b8383600080516020613c1983398151915284036109035761001983836135c9565b604051632a87526960e21b815290810184815281906020010390fd5b61094291935060203d602011610949575b61093a8183610762565b810190611e33565b91386108b0565b503d610930565b60405163703e46dd60e11b81528390fd5b905081600080516020613c19833981519152541614153861087d565b600091031261024157565b34610241576000366003190112610241577f00000000000000000000000092feada957bbeb17868f9f59aed548e50191283d6001600160a01b031630036109e1576020604051600080516020613c198339815191528152f35b60405163703e46dd60e11b8152600490fd5b3461024157600036600319011261024157602060ff600080516020613c3983398151915254166040519015158152f35b34610241576020366003190112610241576020610a41600435611b1f565b6040516001600160a01b039091168152f35b346102415760203660031901126102415760043560005260056020526020604060002054604051908152f35b3461024157602036600319011261024157600435610a9c81610230565b600080516020613bf9833981519152546001600160a01b03919082163303610ae757803b15610ace5761001990612700565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b3461024157600036600319011261024157610b1936336120c8565b600080516020613c39833981519152805460ff811615610b835750805460ff811615610b715760ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b604051638dfc202b60e01b8152600490fd5b600190610b8e612228565b60ff19161790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b3461024157600036600319011261024157600080516020613bf98339815191525460a01c60ff1615610c0b576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610bf8565b3461024157606036600319011261024157610c40602435610c3481610230565b60443590600435612759565b604080519283526001600160a01b0391909116602083015290f35b0390f35b6060366003190112610241576024356001600160401b03811161024157610d4f610d1e610c93610c5b933690600401610437565b60449291923590610ca382610230565b610cab612228565b610cb3611b91565b6001815293602085017f0000000000000000000000000000000000000000000000000000000000000001815260408601906004358252610d15610d04600954906001600160401b0382169160601c90565b6001600160a01b031660808a015250565b5190519061291b565b604081015160e08301526080810151610120830152606081015161014083015251339081901515612a46565b612a46565b6040519081529081906020820190565b3461024157600036600319011261024157600080516020613c19833981519152546040516001600160a01b039091168152602090f35b60405190610da28261072c565b60008252565b60005b838110610dbb5750506000910152565b8181015183820152602001610dab565b90602091610de481518092818552858086019101610da8565b601f01601f1916010190565b906020610511928181520190610dcb565b3461024157600036600319011261024157610c5b604051610e2181610747565b60058152640352e302e360dc1b6020820152604051918291602083526020830190610dcb565b34610241576020610e83610e5a366104ec565b6001600160a01b0391821660009081526008855260408082209290931681526020919091522090565b54604051908152f35b60c036600319011261024157600435610ea481610230565b602435610eb081610230565b6001600160401b039060443582811161024157610ed19036906004016107f4565b926064359260a43590811161024157610eee903690600401610437565b9091610ef86121f8565b610f00612228565b841561103957610c5b95610f7f610f8d610ffc97610f1c611b91565b60038152977f000000000000000000000000000000000000000000000000000000000000000160208a01526040890194608435865260e08a0152610f6e600954906001600160401b0382169160601c90565b6001600160a01b031660808b015293565b816101008a01523390612b99565b6001600160a01b031660a0870190815294610fa6611c14565b948061101c575b505060608401516101208701526080840151610140870152935192939192610ff192906001600160a01b03165b91610fe58651151590565b15611013575090612cd1565b610d4a339251151590565b610d4f6001600080516020613c5983398151915255565b90505190612cd1565b610ff19495508161103291610fda930190611c42565b9493610fad565b6040516333962ed760e11b8152600490fd5b3461024157600036600319011261024157600080516020613bf9833981519152546040516001600160a01b039091168152602090f35b346102415760203660031901126102415760043561109e81610230565b60018060a01b031660005260046020526020604060002054604051908152f35b7ff15a0a3784dea9b4fe33bc98e2450745e262d310237b2868ea8ef56967ff3ecb6110e8366104ec565b6001600160a01b03828116600081815260086020908152604080832094861683529390529182205491949391611149918161114f575b50604080516001600160a01b0394851681529490931660208501529183019190915281906060820190565b0390a180f35b61115a828587612d19565b5086526008602090815260408088206001600160a01b0387166000908152925290208690553861111e565b346102415760408060031936011261024157600435906001600160401b038083116102415736602384011215610241578260040135908111610241576024830192602436918360051b010111610241576024356111e236336120c8565b60005b8281106111ee57005b806111fc6001928588611ce0565b3561120681610230565b828060a01b031660005260066020528285600020557fd431031d4b71a56115ead459a63b443f7d0ccd495e8e8c525ec48869d491763d8361124883878a611ce0565b3561125281610230565b87516001600160a01b039190911681526020810191909152604090a1016111e5565b6001600160401b0381116106f95760051b60200190565b8015150361024157565b604435906112a28261128b565b565b35906112a28261128b565b34610241576060366003190112610241576004356112cc81610230565b602435906001600160401b03821161024157366023830112156102415781600401356112f781611274565b926113056040519485610762565b8184526020916024602086019160051b8301019136831161024157602401905b82821061133f576100198587611339611295565b91611cf5565b81358152908301908301611325565b346102415760003660031901126102415760206040517f00000000000000000000000000000000000000000000000000000000000000018152f35b34610241576000366003190112610241576009546001600160401b0381169060601c610c40565b34610241576040366003190112610241577f68bbe15866d95911bf2d5bf03cc2906f69a78d75d7816463608c73dcfa0aa56160406004356113f081610230565b6024356113fc8161128b565b61140636336120c8565b80156114395760ff6001925b60018060a01b031692836000526004602052168360002055825191825215156020820152a1005b60ff600092611412565b3461024157606036600319011261024157600161146c6044356000526005602052604060002090565b54600a5491149061148d906001600160a01b03165b6001600160a01b031690565b6040516303f77f1160e21b815260248035600483015260009082015291906020908184604481845afa93841561153057600094611535575b508160049160405192838092631fd4d46f60e11b82525afa90811561153057610c5b92600092611513575b505060405193849384604091949392606082019515158252151560208201520152565b6115299250803d106109495761093a8183610762565b38806114f0565b611e27565b600491945061155a8391823d8411611562575b6115528183610762565b810190611e12565b9491506114c5565b503d611548565b346102415760803660031901126102415760046024356044356064356001600160401b038111610241576115a09036908501610437565b6115ab9491946121f8565b6115b3612228565b6115bc83612e05565b6009546001600160401b0381169060601c93908335036117cf57600a54859061ffff9061161a906115f5906001600160a01b0316611481565b604095865194858094819363108f78a560e21b835260009e8f988995168d8501611f9c565b03925af180156115305787889089926117a5575b611639929350611fd1565b805161164d906001600160a01b0316611481565b6001600160a01b039586160361179657611665611ffd565b6116726020830151611dd1565b51036117875761168190612eba565b9490156117785760808501516001600160a01b03163091160361176a57818401517f00000000000000000000000000000000000000000000000000000000000000010361175c5760608401510361174f57505060016116e96116e4835160ff1690565b612045565b6116f281611bf4565b036117235760ff6117099260101c1615159061248e565b6117206001600080516020613c5983398151915255565b80f35b60a081015161010082015161174a9350611745916001600160a01b0316612fd6565b61308b565b611709565b5163322ebb2560e11b8152fd5b50516305bd96c560e51b8152fd5b50516396ce0f8f60e01b8152fd5b505051632d5b5e8f60e21b8152fd5b50505163cc71abe960e01b8152fd5b505051631fc8836160e21b8152fd5b5050506117c6611639913d808a833e6117be8183610762565b810190611e91565b9192508261162e565b6040516315bc118960e21b81528390fd5b34610241576040366003190112610241576020610e8360243561180281610230565b6004356000526007835260406000209060018060a01b0316600052602052604060002090565b60603660031901126102415760043561184081610230565b60243561184c81610230565b604435916118586121f8565b611860612228565b8215611039576001600160a01b0382161561192857611917610ffc9261190f6118fc610c5b9661188e611b91565b60048152957f000000000000000000000000000000000000000000000000000000000000000160208801526009546118e9906001600160401b0381169060601c6001600160a01b031660808a01526040890196908752613191565b60e0880152816101008801523390612b99565b6001600160a01b031660a0850181905290565b905190612cd1565b62030d406101208201523333612b83565b6040516304fe14e360e51b8152600490fd5b6119fc61198797989294959861194e6121f8565b611956612228565b6119ee6119c96119d08a8d6119a161196c611b91565b9e8f998060c01c916001600160401b03808360801c16921690565b5097909a60208b019b60408c01998a528c52810190612253565b96929b919361012083999299019c60e08401996101408501998a528a528d52829060ff169052565b5160ff1690565b99519651985194519351948d8c6040519b8c9a60208c019e8f6122c3565b03601f198101835282610762565b519020611a13836000526005602052604060002090565b5403611a8457606085018290526001600160a01b031660a0850152611a6d94611a6893611a6293611a4d92919061010088015236916107bd565b60c08501526000526005602052604060002090565b60019055565b61260f565b6112a26001600080516020613c5983398151915255565b60405163617ef7b160e01b8152600490fd5b90611b0290611aa4836121e8565b611aac61359a565b611ab461359a565b600080516020613c39833981519152805460ff19169055611ad361359a565b611adb61359a565b6001600080516020613c5983398151915255611af561359a565b611afd61359a565b612700565b60018060a01b03166001600160601b0360a01b6001541617600155565b80611b3457506001546001600160a01b031690565b60018103611b525750600a54610511906001600160a01b0316611481565b60028103611b705750600254610511906001600160a01b0316611481565b600514611b7c57600090565b600354610511906001600160a01b0316611481565b6040519061016082018281106001600160401b038211176106f957604052606061014083600080825280602083015280604083015280848301528060808301528060a08301528360c08301528360e0830152806101008301526101208201520152565b60051115611bfe57565b634e487b7160e01b600052602160045260246000fd5b60405190611c21826106de565b60606080836000815260006020820152600060408201526000838201520152565b906020828203126102415781356001600160401b039283821161024157019060a0828203126102415760405192611c78846106de565b8235611c838161128b565b84526020830135611c9381610230565b60208501526040830135604085015260608301356060850152608083013590811161024157611cc292016107f4565b608082015290565b634e487b7160e01b600052603260045260246000fd5b9190811015611cf05760051b0190565b611cca565b90929192611d0336336120c8565b813b15611dbf5760005b8151811015611db857807fb7e2e36d837b3e9a99d8c3de2eed62d21e4b1550a939fe020796d059a023800a86611d4560019486611dfe565b5160008215611db0575060ff855b16611d8388611d6c846000526007602052604060002090565b9060018060a01b0316600052602052604060002090565b55604080516001600160a01b0389168152602081019290925291151591810191909152606090a101611d0d565b60ff90611d53565b5050509050565b60405163aefe72b960e01b8152600490fd5b805115611cf05760200190565b805160011015611cf05760400190565b805160021015611cf05760600190565b8051821015611cf05760209160051b010190565b9081602091031261024157516105118161128b565b6040513d6000823e3d90fd5b90816020910312610241575190565b90929192611e4f816107a2565b91611e5d6040519384610762565b8294828452828201116102415760206112a2930190610da8565b9080601f8301121561024157815161051192602001611e42565b9091606082840312610241578151611ea88161128b565b9260209081840151906001600160401b039182811161024157850181601f8201121561024157818185611edd93519101611e42565b946040810151908382116102415701916060838303126102415760405193611f04856106fe565b8351611f0f81610230565b8552808401518281116102415784019083601f8301121561024157815191611f3683611274565b92611f446040519485610762565b808452828085019160051b830101918683116102415783809101915b838310611f8c5750505050850152604083015190811161024157611f849201611e77565b604082015290565b8251815291810191849101611f60565b9192608093819260008552602085015260606040850152816060850152848401376000828201840152601f01601f1916010190565b15611fd95750565b60405162461bcd60e51b8152602060048201529081906108de906024830190610dcb565b602360405161200b816106fe565b8181526265732960e81b604060208301927f4d65737361676552656c617928627974657333322c75696e743235362c627974845201522090565b60ff166005811015611bfe5790565b60041161024157600090600490565b6001600160e01b0319903581811693926004811061208057505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b600080516020613bf98339815191528054612101906001600160a01b03166120f86120f286612054565b90612063565b908430916131e7565b901561210e575b50505050565b63ffffffff16156121c857600080516020613bf9833981519152805460ff60a01b1916600160a01b17905561215090611481908190546001600160a01b031690565b91823b156102415761217c9260009283604051809681958294634a63ebf760e11b84526004840161208f565b03925af18015611530576121af575b50600080516020613bf9833981519152805460ff60a01b1916905538808080612108565b806121bc6121c292610719565b8061097d565b3861218b565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b6001600160a01b03161561192857565b600080516020613c5983398151915260028154146122165760029055565b604051633ee5aeb560e01b8152600490fd5b60ff600080516020613c39833981519152541661224157565b60405163d93c066560e01b8152600490fd5b919060a08382031261024157823560ff8116810361024157926020810135926001600160401b0391604081013583811161024157846122939183016107f4565b93606082013584811161024157816122ac9184016107f4565b9360808301359081116102415761051192016107f4565b919489969194612337989460959d9c9a9760209c9760ff60f81b9060f81b168652600186015260218501526001600160601b03199060601b1660418401526055830152607582015261231d825180938a8d85019101610da8565b019188830137019185830160008152815194859201610da8565b0161234b8251809360208685019101610da8565b010190565b6040519061235d82610747565b600b82526a139bdd10dbdb9d1c9858dd60aa1b6020830152565b906020828203126102415781516001600160401b038111610241576105119201611e77565b919261051195936123bf928452602084015260a0604084015260a0830190610dcb565b9260608201526080818403910152610dcb565b60009060033d116123df57565b905060046000803e60005160e01c90565b600060443d1061051157604051600319913d83016004833e81516001600160401b03918282113d60248401111761244d57818401948551938411612455573d8501016020848701011161244d575061051192910160200190610762565b949350505050565b50949350505050565b3d15612489573d9061246f826107a2565b9161247d6040519384610762565b82523d6000602084013e565b606090565b919061249f60e08401516014015190565b925a610120820151909190853b156125f257600060208301519160408401519760c0850198838a51936060880151966124f46101408a0151604051998a9889978895634ca748cd60e11b87526004870161239c565b03936001600160a01b031690f190816125cf575b506125b85760016125176123d2565b6308c379a014612569575b61252d575050509050565b61253561245e565b9261254e5761254593945161335e565b80388080611db8565b604051639bbd0cb960e01b8152806108de8560048301610df0565b836125726123f0565b8061257f575b5050612522565b600092509061259c57612595908484895161335e565b8338612578565b60405162461bcd60e51b81529081906108de9060048301610df0565b9091506112a29293506125c9610d95565b506134c5565b6125eb903d806000833e6125e38183610762565b810190612377565b5038612508565b5091506112a292935060c082015191612609612350565b9261335e565b60e0810151601401515a90803b156126ec57600060208401519160408501519060c086015191836060880151956126626101408a015160405198899788968795634ca748cd60e11b87526004870161239c565b03926001600160a01b031687f190816126d1575b506126c5576126836123d2565b6308c379a0146126b2575b6108de61269961245e565b604051639bbd0cb960e01b815291829160048301610df0565b6126ba6123f0565b8061259c575061268e565b6112a2916125c9610d95565b6126e5903d806000833e6125e38183610762565b5038612676565b50906112a29160c082015191612609612350565b600080516020613bf983398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60025460408051631f227e3d60e11b815260048101939093526001600160a01b0393841660248401526044830194909452909391839185916064918391165afa80156115305760009384916127c4575b509183156127b45750565b5163f495120360e01b8152600490fd5b9390508284813d8311612800575b6127dc8183610762565b810103126127fd575060208351930151926127f684610230565b92386127a9565b80fd5b503d6127d2565b6040519060c082018281106001600160401b038211176106f957604052600060a083828152826020820152606060408201526060808201528260808201520152565b3590600582101561024157565b906020828203126102415781356001600160401b0392838211610241570160c08183031261024157612886610783565b92612890826112a4565b845261289e60208301612849565b6020850152604082013581811161024157836128bb9184016107f4565b604085015260608201359081116102415760a0926128da9183016107f4565b606084015260808101356080840152013560a082015290565b634e487b7160e01b600052601160045260246000fd5b9190820180921161291657565b6128f3565b9493949291909261292a612807565b5083146129d75761293d91810190612856565b9260a08401516129c5576001602085015161295781611bf4565b61296081611bf4565b036129b3576129a78161297f611d6c946129af94608089015191612759565b61298c8296923385612c82565b506001600160a01b0316600090815260086020526040902090565b918254612909565b9055565b604051636d90b03760e01b8152600490fd5b604051630dc77f3360e31b8152600490fd5b6040516372a1395760e11b8152600490fd5b9081526001600160a01b03918216602082015291811660408301526060820192909252918116608083015290911660a082015261010060c08201819052610511939192612a3891840190610dcb565b9160e0818403910152610dcb565b612a5f9094939194612a59835160ff1690565b9061366d565b936040820192835160208401908151146129d7576080840180519094906001600160a01b031615612b7157612b22976119ee84612b52937f469059a9fd182ad3741bdd67b925e15056d35262609ea83393db7e8fb5a05ab1976001612ad9612b5e9960018060a01b03166000526004602052604060002090565b5403612b6957955b51995191612b10612b018c85610120860151919060801b9060c01b171790565b9b8260e0850195865192613682565b9951999c8d9a6001600160a01b031690565b60a08301519097906001600160a01b031693610140610100850151915194015194604051998a9860208a016129e9565b60405191829182610df0565b0390a36112a26136fc565b508195612ae1565b6040516396ce0f8f60e01b8152600490fd5b9291612a5f612b93825160ff1690565b60ff1690565b6001600160a01b03929183821690829082612be75750505050803410612bd557612bc69160015416613838565b6001546001600160a01b031690565b604051633fb9715160e11b8152600490fd5b90919392959450612c0583612bfc3085613753565b923090856137db565b612c0f3083613753565b8382018092116129165710612bd5576001600160a01b0316600090815260066020526040902054600190811614612c44575050565b813b1561024157600091602483926040519485938492630852cd8d60e31b845260048401525af1801561153057612c79575b50565b6112a290610719565b9291836001600160a01b038116612c9e575090503410612bd557565b612cc090612cb983612cb03084613753565b953090846137db565b3090613753565b9082018092116129165710612bd557565b612cfe600f91600193600052600760205260406000209060018060a01b0316600052602052604060002090565b541603612d0757565b60405163068260cd60e11b8152600490fd5b92919083612d273082613753565b8311612d92576001600160a01b039080821680612d4b57505050906112a291613a29565b82600197939754161480612d8a575b15612d7d575050612d7382612d789495600154166139fc565b613a29565b600090565b6112a29392919550613860565b506001612d5a565b604051634206674760e11b8152600490fd5b92919083612db23082613753565b8311612d92576001600160a01b039080821680612dd657505050906112a291613a29565b82600197939754161480612dfd5715612d7d575050612d7382612d789495600154166139fc565b506000612d5a565b80600052600560205260016040600020541015612e2e5760005260056020526001604060002055565b604051639808755560e01b8152600490fd5b9060e082820312610241578151926020830151612e5c81610230565b926040810151612e6b81610230565b926060820151926080830151612e8081610230565b9260a0810151926001600160401b03938481116102415781612ea3918401611e77565b9360c0830151908111610241576105119201611e77565b90612ec3611b91565b91604081019083612ee1612edd8451600060f0911a161590565b1590565b612fcd576119ee612fc292612fa160ff60c0612f67612f9998612f34612f1b6020809801612f0f8151611dde565b5160608c015251611dee565b518060c01c916001600160401b03808360801c16921690565b6101208b015260408a015286890152612f568151878082518301019101612377565b809152858082518301019101612e40565b6101408d015295909a01949094526101008d01939093526001600160a01b0392831660a08d0152821660808c01529097565b1660ff168852565b604051948593169083016014916001600160601b03199060601b1681520190565b60e083015260019190565b50505060009190565b6001600160a01b038116600090815260066020526040902054600190811614612ffd575050565b6001600160a01b0316803b15610241576040516340c10f1960e01b815230600482015260248101929092526000908290818381604481015b03925af1801561153057612c795750565b94919261307d93610511979592875260018060a01b031660208701526040860152606085015260c0608085015260c0840190610dcb565b9160a0818403910152610dcb565b60e081015160140151905a90610140810192835151151580613187575b1561314e5760a0820180519094906001600160a01b0316916130d261010085019382855191612da4565b50606084015195516001600160a01b03918216911692519060208501519360c08601519351823b15610241576112a298613128600096928793604051998a9889978896632344e65560e01b885260048801613046565b03925af161313b575b505b6125c9610d95565b806121bc61314892610719565b38613131565b60a0820180516101008401516112a2965061318293613175926001600160a01b0316612d19565b6001600160a01b03169052565b613133565b50803b15156130a8565b60405160609190911b6bffffffffffffffffffffffff1916602082015261051181603481016119ee565b919082604091031261024157602082516131d48161128b565b92015163ffffffff811681036102415790565b6000809195949581948297604051906020968783019363b700961360e01b855260018060a01b03809216602485015216604483015263ffffffff60e01b16606482015260648152613237816106de565b51915afa9061324461245e565b91613250575b50509190565b81519491929091906040861061327c57505080613272939483010191016131bb565b91905b388061324a565b9291909481811015613291575b505050613275565b6132a19350820181019101611e12565b388080613289565b9190820391821161291657565b9491936132ee916132fc94610511989660018060a01b038093168952602089015216604087015260e0606087015260e0860190610dcb565b908482036080860152610dcb565b91600160a082015260c0818403910152610dcb565b9491936132ee9161334994610511989660018060a01b038093168952602089015216604087015260e0606087015260e0860190610dcb565b91600060a082015260c0818403910152610dcb565b909180156134bd575a8103908111612916575b6020830151604084015190916001600160401b0316608082901b67ffffffffffffffff60801b1660c084901b6001600160c01b03191617179484516133b69060ff1690565b60a0860180519096919591906001600160a01b031661010082019485519661012084019081519260c086019a8b519a60e088019b8c51908a6101408b01988951946040519b8c9860208a019a61340c998c613a64565b0393601f199485810182526134219082610762565b5190209360608101948551613440906000526005602052604060002090565b555160ff169051918851905190604051968794602086019461346195613adf565b0390810183526134719083610762565b5195516001600160a01b0316925193516014015194516040519586956134979587613311565b037f13d3a5b2d6aaada5c31b5654f99c2ab9587cf9a53ee4b2e25b6c68a8dfaa447291a3565b506000613371565b90801561358f576134da613514915a906132a9565b60208301516001600160401b031660408401516001600160401b0316916001600160401b0380809216931691169060801b9060c01b171790565b606082015160a0830151919290917f13d3a5b2d6aaada5c31b5654f99c2ab9587cf9a53ee4b2e25b6c68a8dfaa447291906001600160a01b031661358a6101008301519260c061356960e08301516014015190565b910151613574610d95565b9061357d610d95565b92604051968796876132b6565b0390a3565b5061351460006134da565b60ff600080516020613c798339815191525460401c16156135b757565b604051631afcd79f60e31b8152600490fd5b90813b1561364c57600080516020613c1983398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a280511561363157612c7691613b25565b50503461363a57565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b9060ff16906136795790565b600160401b1790565b600054939192906000198514612916576136f69260a8926001870160005560405195869360208501983060601b8a526034860152605485015260748401526001600160601b03199060601b1660948301526136e68151809260208686019101610da8565b8101036088810184520182610762565b51902090565b600a54604051906001600160a01b03166137158261072c565b60008252803b1561024157613035600092918392604051948580948193630121b06960e71b8352306004840152604060248401526044830190610dcb565b6001600160a01b0390811690811580156137be575b156137735750503190565b6040516370a0823160e01b815292166004830152602090829060249082905afa908115611530576000916137a5575090565b610511915060203d6020116109495761093a8183610762565b5073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8214613768565b6040516323b872dd60e01b602082019081526001600160a01b03938416602483015293909216604483015260648201939093526112a2926000928392839061382681608481016119ee565b51925af161383261245e565b90613b43565b600080916112a293604051906020820191630d0e30db60e41b83526004815261382681610747565b9190632b6653dc4614806139d6575b15613993576040516370a0823160e01b80825230600483015290936020936001600160a01b03821693908587602481885afa9687156115305760009761395d575b5060405163a9059cbb60e01b8188019081526001600160a01b0390931660248201526044810191909152859392600092839283906138f181606481016119ee565b51925af1506138fe61245e565b5060405190815230600482015291829060249082905afa91821561153057600092613940575b5050101561392e57565b60405163554a766760e11b8152600490fd5b6139569250803d106109495761093a8183610762565b3880613924565b60009283809399506119ee6138f16139848b9998958a3d8c116109495761093a8183610762565b9b9550505050925092936138b0565b60405163a9059cbb60e01b602082019081526001600160a01b03909216602482015260448101929092526112a292600092839290839061382681606481016119ee565b506001600160a01b03831673a614f803b6fd780986a42c78ec9c7f77e6ded13c1461386f565b600080916112a293826040516020810192632e1a7d4d60e01b8452602482015260248152613826816106fe565b906112a291604051613a3a8161072c565b60008080948194828095525af1613a4f61245e565b5060405191613a5d8361072c565b8252613b43565b9492909160959a99989796949260ff60f81b9060f81b168652600186015260218501526001600160601b03199060601b16604184015260558301526075820152613ab78251809360208985019101610da8565b01613acb8251809360208885019101610da8565b016123378251809360208785019101610da8565b93906105119593613b179360ff613b0993168752602087015260a0604087015260a0860190610dcb565b908482036060860152610dcb565b916080818403910152610dcb565b60008061051193602081519101845af4613b3d61245e565b91613b95565b15908115613b65575b50613b5357565b60405163323faf8760e01b8152600490fd5b8051801515925082613b7a575b505038613b4c565b613b8d9250602080918301019101611e12565b153880613b72565b90613bbc5750805115613baa57805190602001fd5b60405163d6bda27560e01b8152600490fd5b81511580613bef575b613bcd575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b15613bc556fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbccd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220c2b5c846722aeeaf95d2d630aa28623bc88a85980043a0c67024310e3b005be264736f6c63430008190033
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Evaluating bytecode for exploit indicators**
[codex:1200618] exec
[codex:1200618] /bin/bash -lc "python - <<'PY'
[codex:1200618] import binascii, re
[codex:1200618] from pathlib import Path
[codex:1200618] hexdata=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:1200618] # extract hex after 0x
[codex:1200618] m=re.search(r'0x([0-9a-fA-F]+)', hexdata)
[codex:1200618] if not m:
[codex:1200618] print('no hex')
[codex:1200618] raise SystemExit
[codex:1200618] hexstr=m.group(1)
[codex:1200618] code=bytes.fromhex(hexstr)
[codex:1200618] print('len', len(code))
[codex:1200618] # map opcodes
[codex:1200618] opnames = {}
[codex:1200618] # Build simple mapping
[codex:1200618] opnames.update({
[codex:1200618] 0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:1200618] 0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
[codex:1200618] 0x20:'SHA3',
[codex:1200618] 0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
[codex:1200618] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:1200618] 0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
[codex:1200618] 0x5f:'PUSH0',
[codex:1200618] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:1200618] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:1200618] })
[codex:1200618] # prepare push size map
[codex:1200618]
[codex:1200618] def iter_opcodes(code):
[codex:1200618] i=0
[codex:1200618] while i < len(code):
[codex:1200618] op=code[i]
[codex:1200618] start=i
[codex:1200618] i+=1
[codex:1200618] if 0x60 <= op <= 0x7f:
[codex:1200618] n=op-0x5f
[codex:1200618] data=code[i:i+n]
[codex:1200618] i+=n
[codex:1200618] yield start, op, data
[codex:1200618] else:
[codex:1200618] yield start, op, None
[codex:1200618]
[codex:1200618] # find offsets of interesting opcodes
[codex:1200618] interesting = {'CALL', 'DELEGATECALL', 'SELFDESTRUCT', 'CALLCODE'}
[codex:1200618] occ = {name:[] for name in interesting}
[codex:1200618] for off, op, data in iter_opcodes(code):
[codex:1200618] name = opnames.get(op)
[codex:1200618] if name in interesting:
[codex:1200618] occ[name].append(off)
[codex:1200618]
[codex:1200618] print('CALL', len(occ['CALL']))
[codex:1200618] print('DELEGATECALL', len(occ['DELEGATECALL']))
[codex:1200618] print('CALLCODE', len(occ['CALLCODE']))
[codex:1200618] print('SELFDESTRUCT', len(occ['SELFDESTRUCT']))
[codex:1200618] print('first delegatecall offsets', occ['DELEGATECALL'][:10])
[codex:1200618] print('first selfdestruct offsets', occ['SELFDESTRUCT'][:10])
[codex:1200618]
[codex:1200618] # Also list nearby bytes around selfdestruct or delegatecall for context
[codex:1200618]
[codex:1200618] def context(off, span=20):
[codex:1200618] start=max(0, off-span)
[codex:1200618] end=min(len(code), off+span)
[codex:1200618] return code[start:end].hex()
[codex:1200618]
[codex:1200618] for name in ['DELEGATECALL','SELFDESTRUCT']:
[codex:1200618] for off in occ[name][:5]:
[codex:1200618] print(name, off, context(off))
[codex:1200618] PY" in /tmp/codex-multi-a35abjqu succeeded in 38ms:
[codex:1200618] len 15566
[codex:1200618] CALL 11
[codex:1200618] DELEGATECALL 1
[codex:1200618] CALLCODE 0
[codex:1200618] SELFDESTRUCT 0
[codex:1200618] first delegatecall offsets [15157]
[codex:1200618] first selfdestruct offsets []
[codex:1200618] DELEGATECALL 15157 610dcb565b60008061051193602081519101845af4613b3d61245e565b91613b95565b1590811561
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Analyzing delegatecall and disassembling bytecode**
[codex:1200618] exec
[codex:1200618] /bin/bash -lc "python - <<'PY'
[codex:1200618] import re
[codex:1200618] from pathlib import Path
[codex:1200618] hexdata=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:1200618] hexstr=re.search(r'0x([0-9a-fA-F]+)', hexdata).group(1)
[codex:1200618] code=bytes.fromhex(hexstr)
[codex:1200618] # opcode names
[codex:1200618] opnames = {}
[codex:1200618] opnames.update({
[codex:1200618] 0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:1200618] 0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
[codex:1200618] 0x20:'SHA3',
[codex:1200618] 0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
[codex:1200618] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:1200618] 0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
[codex:1200618] 0x5f:'PUSH0',
[codex:1200618] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:1200618] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:1200618] })
[codex:1200618]
[codex:1200618] def disasm(start, count=60):
[codex:1200618] i=start
[codex:1200618] out=[]
[codex:1200618] while i < len(code) and len(out) < count:
[codex:1200618] op=code[i]; name=opnames.get(op, f'OP{op:02x}')
[codex:1200618] i+=1
[codex:1200618] if 0x60 <= op <= 0x7f:
[codex:1200618] n=op-0x5f
[codex:1200618] data=code[i:i+n]
[codex:1200618] i+=n
[codex:1200618] out.append((i-n-1, name, data.hex()))
[codex:1200618] else:
[codex:1200618] out.append((i-1, name, None))
[codex:1200618] return out
[codex:1200618]
[codex:1200618] # find delegatecall offset
[codex:1200618] # locate any op == 0xf4
[codex:1200618] ops = [(i, op) for i, op in enumerate(code) if op==0xf4]
[codex:1200618] print('delegatecall offsets', ops)
[codex:1200618] for off,_ in ops:
[codex:1200618] start=max(0, off-40)
[codex:1200618] dis=disasm(start, 80)
[codex:1200618] print('--- disasm around', off)
[codex:1200618] for o,name,data in dis:
[codex:1200618] marker = '>>' if o==off else ' '
[codex:1200618] if data is None:
[codex:1200618] print(f\"{marker} {o:04x}: {name}\")
[codex:1200618] else:
[codex:1200618] print(f\"{marker} {o:04x}: {name} 0x{data}\")
[codex:1200618] PY" in /tmp/codex-multi-a35abjqu succeeded in 35ms:
[codex:1200618] delegatecall offsets [(164, 244), (1482, 244), (2117, 244), (3791, 244), (5872, 244), (7360, 244), (8849, 244), (8874, 244), (8897, 244), (9425, 244), (10167, 244), (10425, 244), (10456, 244), (10581, 244), (10590, 244), (15157, 244)]
[codex:1200618] --- disasm around 164
[codex:1200618] 007c: MSTORE
[codex:1200618] 007d: OPd1
[codex:1200618] 007e: OP90
[codex:1200618] 007f: OP2d
[codex:1200618] 0080: EQ
[codex:1200618] 0081: OP61 0x0203
[codex:1200618] 0084: JUMPI
[codex:1200618] 0085: OP80
[codex:1200618] 0086: OP63 0x5c975abb
[codex:1200618] 008b: EQ
[codex:1200618] 008c: OP61 0x01fe
[codex:1200618] 008f: JUMPI
[codex:1200618] 0090: OP80
[codex:1200618] 0091: OP63 0x66148096
[codex:1200618] 0096: EQ
[codex:1200618] 0097: OP61 0x01f9
[codex:1200618] 009a: JUMPI
[codex:1200618] 009b: OP80
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Investigating DELEGATECALL instructions**
[codex:1200618] exec
[codex:1200618] /bin/bash -lc "python - <<'PY'
[codex:1200618] import re
[codex:1200618] from pathlib import Path
[codex:1200618] hexdata=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:1200618] hexstr=re.search(r'0x([0-9a-fA-F]+)', hexdata).group(1)
[codex:1200618] code=bytes.fromhex(hexstr)
[codex:1200618] # opcode names
[codex:1200618] opnames = {}
[codex:1200618] opnames.update({
[codex:1200618] 0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:1200618] 0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
[codex:1200618] 0x20:'SHA3',
[codex:1200618] 0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
[codex:1200618] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:1200618] 0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
[codex:1200618] 0x5f:'PUSH0',
[codex:1200618] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:1200618] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:1200618] })
[codex:1200618]
[codex:1200618] def disasm_range(start, end):
[codex:1200618] i=start
[codex:1200618] out=[]
[codex:1200618] while i < end:
[codex:1200618] op=code[i]; name=opnames.get(op, f'OP{op:02x}')
[codex:1200618] i+=1
[codex:1200618] if 0x60 <= op <= 0x7f:
[codex:1200618] n=op-0x5f
[codex:1200618] data=code[i:i+n]
[codex:1200618] i+=n
[codex:1200618] out.append((i-n-1, name, data.hex()))
[codex:1200618] else:
[codex:1200618] out.append((i-1, name, None))
[codex:1200618] return out
[codex:1200618]
[codex:1200618] start=0x3a80
[codex:1200618] end=0x3ba0
[codex:1200618] for o,name,data in disasm_range(start,end):
[codex:1200618] marker = '>>' if o==0x3b35 else ' '
[codex:1200618] if data is None:
[codex:1200618] print(f\"{marker} {o:04x}: {name}\")
[codex:1200618] else:
[codex:1200618] print(f\"{marker} {o:04x}: {name} 0x{data}\")
[codex:1200618] PY" in /tmp/codex-multi-a35abjqu succeeded in 28ms:
[codex:1200618] 3a80: OP86
[codex:1200618] 3a81: ADD
[codex:1200618] 3a82: MSTORE
[codex:1200618] 3a83: OP60 0x21
[codex:1200618] 3a85: OP85
[codex:1200618] 3a86: ADD
[codex:1200618] 3a87: MSTORE
[codex:1200618] 3a88: OP60 0x01
[codex:1200618] 3a8a: OP60 0x01
[codex:1200618] 3a8c: OP60 0x60
[codex:1200618] 3a8e: SHL
[codex:1200618] 3a8f: SUB
[codex:1200618] 3a90: NOT
[codex:1200618] 3a91: OP90
[codex:1200618] 3a92: OP60 0x60
[codex:1200618] 3a94: SHL
[codex:1200618] 3a95: AND
[codex:1200618] 3a96: OP60 0x41
[codex:1200618] 3a98: OP84
[codex:1200618] 3a99: ADD
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Analyzing delegatecall usage and security risks**
[codex:1200618]
[codex:1200618] I'm examining the delegatecall at 0x3b35 in detail, trying to decode stack and memory usage to identify the target address and see if it’s attacker-controllable without authorization. I’m exploring if this contract is a proxy pattern calling an implementation address from storage, and looking for unguarded upgrade or execution functions that may lead to exploits, but the complexity and missing definitive evidence make me lean toward no concrete exploit findings.
[codex:1200618] exec
[codex:1200618] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-a35abjqu succeeded in 5ms:
[codex:1200618] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1200618]
[codex:1200618] thinking
[codex:1200618] **Preparing JSON vulnerability report**
[codex:1200618] codex
[codex:1200618] {"no_findings":true,"summary":"Bytecode-only review did not reveal a concrete, attacker-controlled value-extraction path (no clear unprotected SELFDESTRUCT or arbitrary CALL/DELEGATECALL with provably attacker-controlled target/privilege bypass).","findings":[]}
[codex:1200618] tokens used
[codex:1200618] 42,514
[codex:1200618] {"no_findings":true,"summary":"Bytecode-only review did not reveal a concrete, attacker-controlled value-extraction path (no clear unprotected SELFDESTRUCT or arbitrary CALL/DELEGATECALL with provably attacker-controlled target/privilege bypass).","findings":[]}
{
"codex": {
"ran_at": "2026-01-01T00:25:14.356432+00:00",
"returncode": 0
},
"summary": "Bytecode-only review did not reveal a concrete, attacker-controlled value-extraction path (no clear unprotected SELFDESTRUCT or arbitrary CALL/DELEGATECALL with provably attacker-controlled target/privilege bypass).",
"raw_final": {
"summary": "Bytecode-only review did not reveal a concrete, attacker-controlled value-extraction path (no clear unprotected SELFDESTRUCT or arbitrary CALL/DELEGATECALL with provably attacker-controlled target/privilege bypass).",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x001b 0000000d: JUMPI 0000000e: JUMPDEST 0000000f: CALLDATASIZE 00000010: ISZERO 00000011: PUSH2 0x0019 00000014: JUMPI 00000015: PUSH1 0x00 00000017: DUP1 00000018: REVERT 00000019: JUMPDEST 0000001a: STOP 0000001b: JUMPDEST 0000001c: PUSH1 0x00 0000001e: CALLDATALOAD 0000001f: PUSH1 0xe0 00000021: SHR 00000022: DUP1 00000023: PUSH4 0x0a83a4e9 00000028: EQ 00000029: PUSH2 0x022b 0000002c: JUMPI 0000002d: DUP1 0000002e: PUSH4 0x0def1038 00000033: EQ 00000034: PUSH2 0x0226 00000037: JUMPI 00000038: DUP1 00000039: PUSH4 0x222b15fb 0000003e: EQ 0000003f: PUSH2 0x0221 00000042: JUMPI 00000043: DUP1 00000044: PUSH4 0x2b585db4 00000049: EQ 0000004a: PUSH2 0x021c 0000004d: JUMPI 0000004e: DUP1 0000004f: PUSH4 0x3291ce30 00000054: EQ 00000055: PUSH2 0x0217 00000058: JUMPI 00000059: DUP1 0000005a: PUSH4 0x485cc955 0000005f: EQ 00000060: PUSH2 0x0212 00000063: JUMPI 00000064: DUP1 00000065: PUSH4 0x4dca6971 0000006a: EQ 0000006b: PUSH2 0x020d 0000006e: JUMPI 0000006f: DUP1 00000070: PUSH4 0x4f1ef286 00000075: EQ 00000076: PUSH2 0x0208 00000079: JUMPI 0000007a: DUP1 0000007b: PUSH4 0x52d1902d 00000080: EQ 00000081: PUSH2 0x0203 00000084: JUMPI 00000085: DUP1 00000086: PUSH4 0x5c975abb 0000008b: EQ 0000008c: PUSH2 0x01fe 0000008f: JUMPI 00000090: DUP1 00000091: PUSH4 0x66148096 00000096: EQ 00000097: PUSH2 0x01f9 0000009a: JUMPI 0000009b: DUP1 0000009c: PUSH4 0x6af6400d 000000a1: EQ 000000a2: PUSH2 0x01f4 000000a5: JUMPI 000000a6: DUP1 000000a7: PUSH4 0x7a9e5e4b 000000ac: EQ 000000ad: PUSH2 0x01ef 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x7fec8d38 000000b7: EQ 000000b8: PUSH2 0x01ea 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0x8fb36037 000000c2: EQ 000000c3: PUSH2 0x01e5 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0x96e2af56 000000cd: EQ 000000ce: PUSH2 0x01e0 000000d1: JUMPI 000000d2: DUP1 000000d3: PUSH4 0xa39ed3f9 000000d8: EQ 000000d9: PUSH2 0x01db 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0xaaf10f42 000000e3: EQ 000000e4: PUSH2 0x01d6 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0xad3cb1cc 000000ee: EQ 000000ef: PUSH2 0x01d1 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0xb4613b52 000000f9: EQ 000000fa: PUSH2 0x01cc 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0xb899f904 00000104: EQ 00000105: PUSH2 0x01c7 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0xbf7e214f 0000010f: EQ 00000110: PUSH2 0x01c2 00000113: JUMPI 00000114: DUP1 00000115: PUSH4 0xc0a03720 0000011a: EQ 0000011b: PUSH2 0x01bd 0000011e: JUMPI 0000011f: DUP1 00000120: PUSH4 0xc879c6d8 00000125: EQ 00000126: PUSH2 0x01b8 00000129: JUMPI 0000012a: DUP1 0000012b: PUSH4 0xc8bc5fb0 00000130: EQ 00000131: PUSH2 0x01b3 00000134: JUMPI 00000135: DUP1 00000136: PUSH4 0xca75ecbf 0000013b: EQ 0000013c: PUSH2 0x01ae 0000013f: JUMPI 00000140: DUP1 00000141: PUSH4 0xcc9e3e89 00000146: EQ 00000147: PUSH2 0x01a9 0000014a: JUMPI 0000014b: DUP1 0000014c: PUSH4 0xcefddc63 00000151: EQ 00000152: PUSH2 0x01a4 00000155: JUMPI 00000156: DUP1 00000157: PUSH4 0xd552a16e 0000015c: EQ 0000015d: PUSH2 0x019f 00000160: JUMPI 00000161: DUP1 00000162: PUSH4 0xd93765fc 00000167: EQ 00000168: PUSH2 0x019a 0000016b: JUMPI 0000016c: DUP1 0000016d: PUSH4 0xe282dcdd 00000172: EQ 00000173: PUSH2 0x0195 00000176: JUMPI 00000177: DUP1 00000178: PUSH4 0xee9592b9 0000017d: EQ 0000017e: PUSH2 0x0190 00000181: JUMPI 00000182: PUSH4 0xfb0f97a8 00000187: SUB 00000188: PUSH2 0x000e 0000018b: JUMPI 0000018c: PUSH2 0x1828 0000018f: JUMP 00000190: JUMPDEST 00000191: PUSH2 0x17e0 00000194: JUMP 00000195: JUMPDEST 00000196: PUSH2 0x1569 00000199: JUMP 0000019a: JUMPDEST 0000019b: PUSH2 0x1443 0000019e: JUMP 0000019f: JUMPDEST 000001a0: PUSH2 0x13b0 000001a3: JUMP 000001a4: JUMPDEST 000001a5: PUSH2 0x1389 000001a8: JUMP 000001a9: JUMPDEST 000001aa: PUSH2 0x134e 000001ad: JUMP 000001ae: JUMPDEST 000001af: PUSH2 0x12af 000001b2: JUMP 000001b3: JUMPDEST 000001b4: PUSH2 0x1185 000001b7: JUMP 000001b8: JUMPDEST 000001b9: PUSH2 0x10be 000001bc: JUMP 000001bd: JUMPDEST 000001be: PUSH2 0x1081 000001c1: JUMP 000001c2: JUMPDEST 000001c3: PUSH2 0x104b 000001c6: JUMP 000001c7: JUMPDEST 000001c8: PUSH2 0x0e8c 000001cb: JUMP 000001cc: JUMPDEST 000001cd: PUSH2 0x0e47 000001d0: JUMP 000001d1: JUMPDEST 000001d2: PUSH2 0x0e01 000001d5: JUMP 000001d6: JUMPDEST 000001d7: PUSH2 0x0d5f 000001da: JUMP 000001db: JUMPDEST 000001dc: PUSH2 0x0c5f 000001df: JUMP 000001e0: JUMPDEST 000001e1: PUSH2 0x0c14 000001e4: JUMP 000001e5: JUMPDEST 000001e6: PUSH2 0x0bc1 000001e9: JUMP 000001ea: JUMPDEST 000001eb: PUSH2 0x0afe 000001ee: JUMP 000001ef: JUMPDEST 000001f0: PUSH2 0x0a7f 000001f3: JUMP 000001f4: JUMPDEST 000001f5: PUSH2 0x0a53 000001f8: JUMP 000001f9: JUMPDEST 000001fa: PUSH2 0x0a23 000001fd: JUMP 000001fe: JUMPDEST 000001ff: PUSH2 0x09f3 00000202: JUMP 00000203: JUMPDEST 00000204: PUSH2 0x0988 00000207: JUMP 00000208: JUMPDEST 00000209: PUSH2 0x080f 0000020c: JUMP 0000020d: JUMPDEST 0000020e: PUSH2 0x063a 00000211: JUMP 00000212: JUMPDEST 00000213: PUSH2 0x0514 00000216: JUMP 00000217: JUMPDEST 00000218: PUSH2 0x0464 0000021b: JUMP 0000021c: JUMPDEST 0000021d: PUSH2 0x03e0 00000220: JUMP 00000221: JUMPDEST 00000222: PUSH2 0x0393 00000225: JUMP 00000226: JUMPDEST 00000227: PUSH2 0x0283 0000022a: JUMP 0000022b: JUMPDEST 0000022c: PUSH2 0x0246 0000022f: JUMP 00000230: JUMPDEST 00000231: PUSH1 0x01 00000233: PUSH1 0x01 00000235: PUSH1 0xa0 00000237: SHL 00000238: SUB 00000239: DUP2 0000023a: AND 0000023b: SUB 0000023c: PUSH2 0x0241 0000023f: JUMPI 00000240: JUMP 00000241: JUMPDEST 00000242: PUSH1 0x00 00000244: DUP1 00000245: REVERT 00000246: JUMPDEST 00000247: CALLVALUE 00000248: PUSH2 0x0241 0000024b: JUMPI 0000024c: PUSH1 0x20 0000024e: CALLDATASIZE 0000024f: PUSH1 0x03 00000251: NOT 00000252: ADD 00000253: SLT 00000254: PUSH2 0x0241 00000257: JUMPI 00000258: PUSH1 0x04 0000025a: CALLDATALOAD 0000025b: PUSH2 0x0263 0000025e: DUP2 0000025f: PUSH2 0x0230 00000262: JUMP 00000263: JUMPDEST 00000264: PUSH1 0x01 00000266: DUP1 00000267: PUSH1 0xa0 00000269: SHL 0000026a: SUB 0000026b: AND 0000026c: PUSH1 0x00 0000026e: MSTORE 0000026f: PUSH1 0x06 00000271: PUSH1 0x20 00000273: MSTORE 00000274: PUSH1 0x20 00000276: PUSH1 0x40 00000278: PUSH1 0x00 0000027a: KECCAK256 0000027b: SLOAD 0000027c: PUSH1 0x40 0000027e: MLOAD 0000027f: SWAP1 00000280: DUP2 00000281: MSTORE 00000282: RETURN 00000283: JUMPDEST 00000284: CALLVALUE 00000285: PUSH2 0x0241 00000288: JUMPI 00000289: PUSH1 0x40 0000028b: CALLDATASIZE 0000028c: PUSH1 0x03 0000028e: NOT 0000028f: ADD 00000290: SLT 00000291: PUSH2 0x0241 00000294: JUMPI 00000295: PUSH32 0xd58da2325ce084e36b92ea4c1a90706ffa665d07ec064f887de9dbb8f15f4995 000002b6: PUSH1 0x24 000002b8: CALLDATALOAD 000002b9: PUSH1 0x04 000002bb: CALLDATALOAD 000002bc: PUSH2 0x02c4 000002bf: DUP3 000002c0: PUSH2 0x0230 000002c3: JUMP 000002c4: JUMPDEST 000002c5: PUSH2 0x02ce 000002c8: CALLDATASIZE 000002c9: CALLER 000002ca: PUSH2 0x20c8 000002cd: JUMP 000002ce: JUMPDEST 000002cf: PUSH2 0x02d7 000002d2: DUP3 000002d3: PUSH2 0x21e8 000002d6: JUMP 000002d7: JUMPDEST 000002d8: DUP1 000002d9: PUSH2 0x031a 000002dc: JUMPI 000002dd: PUSH1 0x01 000002df: DUP1 000002e0: SLOAD 000002e1: PUSH1 0x01 000002e3: PUSH1 0x01 000002e5: PUSH1 0xa0 000002e7: SHL 000002e8: SUB 000002e9: NOT 000002ea: AND 000002eb: PUSH1 0x01 000002ed: PUSH1 0x01 000002ef: PUSH1 0xa0 000002f1: SHL 000002f2: SUB 000002f3: DUP5 000002f4: AND 000002f5: OR 000002f6: SWAP1 000002f7: SSTORE 000002f8: JUMPDEST 000002f9: PUSH1 0x40 000002fb: DUP1 000002fc: MLOAD 000002fd: SWAP2 000002fe: DUP3 000002ff: MSTORE 00000300: PUSH1 0x01 00000302: PUSH1 0x01 00000304: PUSH1 0xa0 00000306: SHL 00000307: SUB 00000308: SWAP1 00000309: SWAP3 0000030a: AND 0000030b: PUSH1 0x20 0000030d: DUP3 0000030e: ADD 0000030f: MSTORE 00000310: SWAP1 00000311: DUP2 00000312: SWAP1 00000313: DUP2 00000314: ADD 00000315: JUMPDEST 00000316: SUB 00000317: SWAP1 00000318: LOG1 00000319: STOP 0000031a: JUMPDEST 0000031b: PUSH1 0x01 0000031d: DUP2 0000031e: SUB 0000031f: PUSH2 0x0343 00000322: JUMPI 00000323: PUSH1 0x0a 00000325: DUP1 00000326: SLOAD 00000327: PUSH1 0x01 00000329: PUSH1 0x01 0000032b: PUSH1 0xa0 0000032d: SHL 0000032e: SUB 0000032f: NOT 00000330: AND 00000331: PUSH1 0x01 00000333: PUSH1 0x01 00000335: PUSH1 0xa0 00000337: SHL 00000338: SUB 00000339: DUP5 0000033a: AND 0000033b: OR 0000033c: SWAP1 0000033d: SSTORE 0000033e: JUMPDEST 0000033f: PUSH2 0x02f8 00000342: JUMP 00000343: JUMPDEST 00000344: PUSH1 0x02 00000346: DUP2 00000347: SUB 00000348: PUSH2 0x036b 0000034b: JUMPI 0000034c: PUSH1 0x02 0000034e: DUP1 0000034f: SLOAD 00000350: PUSH1 0x01 00000352: PUSH1 0x01 00000354: PUSH1 0xa0 00000356: SHL 00000357: SUB 00000358: NOT 00000359: AND 0000035a: PUSH1 0x01 0000035c: PUSH1 0x01 0000035e: PUSH1 0xa0 00000360: SHL 00000361: SUB 00000362: DUP5 00000363: AND 00000364: OR 00000365: SWAP1 00000366: SSTORE 00000367: PUSH2 0x02f8 0000036a: JUMP 0000036b: JUMPDEST 0000036c: PUSH1 0x05 0000036e: DUP2 0000036f: SUB 00000370: PUSH2 0x033e 00000373: JUMPI 00000374: PUSH1 0x03 00000376: DUP1 00000377: SLOAD 00000378: PUSH1 0x01 0000037a: PUSH1 0x01 0000037c: PUSH1 0xa0 0000037e: SHL 0000037f: SUB 00000380: NOT 00000381: AND 00000382: PUSH1 0x01 00000384: PUSH1 0x01 00000386: PUSH1 0xa0 00000388: SHL 00000389: SUB 0000038a: DUP5 0000038b: AND 0000038c: OR 0000038d: SWAP1 0000038e: SSTORE 0000038f: PUSH2 0x02f8 00000392: JUMP 00000393: JUMPDEST 00000394: CALLVALUE 00000395: PUSH2 0x0241 00000398: JUMPI 00000399: PUSH1 0x20 0000039b: CALLDATASIZE 0000039c: PUSH1 0x03 0000039e: NOT 0000039f: ADD 000003a0: SLT 000003a1: PUSH2 0x0241 000003a4: JUMPI 000003a5: PUSH1 0x20 000003a7: PUSH2 0x03d6 000003aa: PUSH1 0x04 000003ac: CALLDATALOAD 000003ad: PUSH2 0x03b5 000003b0: DUP2 000003b1: PUSH2 0x0230 000003b4: JUMP 000003b5: JUMPDEST 000003b6: PUSH1 0x01 000003b8: PUSH1 0x01 000003ba: PUSH1 0xa0 000003bc: SHL 000003bd: SUB 000003be: AND 000003bf: PUSH1 0x00 000003c1: SWAP1 000003c2: DUP2 000003c3: MSTORE 000003c4: PUSH1 0x06 000003c6: PUSH1 0x20 000003c8: MSTORE 000003c9: PUSH1 0x40 000003cb: SWAP1 000003cc: KECCAK256 000003cd: SLOAD 000003ce: PUSH1 0x01 000003d0: SWAP1 000003d1: DUP2 000003d2: AND 000003d3: EQ 000003d4: SWAP1 000003d5: JUMP 000003d6: JUMPDEST 000003d7: PUSH1 0x40 000003d9: MLOAD 000003da: SWAP1 000003db: ISZERO 000003dc: ISZERO 000003dd: DUP2 000003de: MSTORE 000003df: RETURN 000003e0: JUMPDEST 000003e1: CALLVALUE 000003e2: PUSH2 0x0241 000003e5: JUMPI 000003e6: PUSH1 0x40 000003e8: CALLDATASIZE 000003e9: PUSH1 0x03 000003eb: NOT 000003ec: ADD 000003ed: SLT 000003ee: PUSH2 0x0241 000003f1: JUMPI 000003f2: PUSH1 0x20 000003f4: PUSH1 0x01 000003f6: PUSH1 0x0f 000003f8: PUSH2 0x042c 000003fb: PUSH1 0x04 000003fd: CALLDATALOAD 000003fe: PUSH2 0x0406 00000401: DUP2 00000402: PUSH2 0x0230 00000405: JUMP 00000406: JUMPDEST 00000407: PUSH1 0x24 00000409: CALLDATALOAD 0000040a: PUSH1 0x00 0000040c: MSTORE 0000040d: PUSH1 0x07 0000040f: DUP6 00000410: MSTORE 00000411: PUSH1 0x40 00000413: PUSH1 0x00 00000415: KECCAK256 00000416: SWAP1 00000417: PUSH1 0x01 00000419: DUP1 0000041a: PUSH1 0xa0 0000041c: SHL 0000041d: SUB 0000041e: AND 0000041f: PUSH1 0x00 00000421: MSTORE 00000422: PUSH1 0x20 00000424: MSTORE 00000425: PUSH1 0x40 00000427: PUSH1 0x00 00000429: KECCAK256 0000042a: SWAP1 0000042b: JUMP 0000042c: JUMPDEST 0000042d: SLOAD 0000042e: AND 0000042f: EQ 00000430: PUSH1 0x40 00000432: MLOAD 00000433: SWAP1 00000434: DUP2 00000435: MSTORE 00000436: RETURN 00000437: JUMPDEST 00000438: SWAP2 00000439: DUP2 0000043a: PUSH1 0x1f 0000043c: DUP5 0000043d: ADD 0000043e: SLT 0000043f: ISZERO 00000440: PUSH2 0x0241 00000443: JUMPI 00000444: DUP3 00000445: CALLDATALOAD 00000446: SWAP2 00000447: PUSH1 0x01 00000449: PUSH1 0x01 0000044b: PUSH1 0x40 0000044d: SHL 0000044e: SUB 0000044f: DUP4 00000450: GT 00000451: PUSH2 0x0241 00000454: JUMPI 00000455: PUSH1 0x20 00000457: DUP4 00000458: DUP2 00000459: DUP7 0000045a: ADD 0000045b: SWAP6 0000045c: ADD 0000045d: ADD 0000045e: GT 0000045f: PUSH2 0x0241 00000462: JUMPI 00000463: JUMP 00000464: JUMPDEST 00000465: CALLVALUE 00000466: PUSH2 0x0241 00000469: JUMPI 0000046a: PUSH1 0xe0 0000046c: CALLDATASIZE 0000046d: PUSH1 0x03 0000046f: NOT 00000470: ADD 00000471: SLT 00000472: PUSH2 0x0241 00000475: JUMPI 00000476: PUSH1 0x44 00000478: CALLDATALOAD 00000479: PUSH2 0x0481 0000047c: DUP2 0000047d: PUSH2 0x0230 00000480: JUMP 00000481: JUMPDEST 00000482: PUSH1 0x01 00000484: PUSH1 0x01 00000486: PUSH1 0x40 00000488: SHL 00000489: SUB 0000048a: SWAP1 0000048b: PUSH1 0x84 0000048d: CALLDATALOAD 0000048e: DUP3 0000048f: DUP2 00000490: GT 00000491: PUSH2 0x0241 00000494: JUMPI 00000495: PUSH2 0x04a2 00000498: SWAP1 00000499: CALLDATASIZE 0000049a: SWAP1 0000049b: PUSH1 0x04 0000049d: ADD 0000049e: PUSH2 0x0437 000004a1: JUMP 000004a2: JUMPDEST 000004a3: PUSH1 0xa4 000004a5: SWAP3 000004a6: SWAP2 000004a7: SWAP3 000004a8: CALLDATALOAD 000004a9: DUP5 000004aa: DUP2 000004ab: GT 000004ac: PUSH2 0x0241 000004af: JUMPI 000004b0: PUSH2 0x04bd 000004b3: SWAP1 000004b4: CALLDATASIZE 000004b5: SWAP1 000004b6: PUSH1 0x04 000004b8: ADD 000004b9: PUSH2 0x0437 000004bc: JUMP 000004bd: JUMPDEST 000004be: SWAP4 000004bf: SWAP1 000004c0: SWAP3 000004c1: PUSH1 0xc4 000004c3: CALLDATALOAD 000004c4: SWAP6 000004c5: DUP7 000004c6: GT 000004c7: PUSH2 0x0241 000004ca: JUMPI 000004cb: PUSH2 0x04db 000004ce: PUSH2 0x0019 000004d1: SWAP7 000004d2: CALLDATASIZE 000004d3: SWAP1 000004d4: PUSH1 0x04 000004d6: ADD 000004d7: PUSH2 0x0437 000004da: JUMP 000004db: JUMPDEST 000004dc: POP 000004dd: POP 000004de: PUSH1 0x64 000004e0: CALLDATALOAD 000004e1: SWAP1 000004e2: PUSH1 0x24 000004e4: CALLDATALOAD 000004e5: PUSH1 0x04 000004e7: CALLDATALOAD 000004e8: PUSH2 0x193a 000004eb: JUMP 000004ec: JUMPDEST 000004ed: PUSH1 0x40 000004ef: SWAP1 000004f0: PUSH1 0x03 000004f2: NOT 000004f3: ADD 000004f4: SLT 000004f5: PUSH2 0x0241 000004f8: JUMPI 000004f9: PUSH1 0x04 000004fb: CALLDATALOAD 000004fc: PUSH2 0x0504 000004ff: DUP2 00000500: PUSH2 0x0230 00000503: JUMP 00000504: JUMPDEST 00000505: SWAP1 00000506: PUSH1 0x24 00000508: CALLDATALOAD 00000509: PUSH2 0x0511 0000050c: DUP2 0000050d: PUSH2 0x0230 00000510: JUMP 00000511: JUMPDEST 00000512: SWAP1 00000513: JUMP 00000514: JUMPDEST 00000515: CALLVALUE 00000516: PUSH2 0x0241 00000519: JUMPI 0000051a: PUSH2 0x0522 0000051d: CALLDATASIZE 0000051e: PUSH2 0x04ec 00000521: JUMP 00000522: JUMPDEST 00000523: SWAP1 00000524: PUSH1 0x00 00000526: DUP1 00000527: MLOAD 00000528: PUSH1 0x20 0000052a: PUSH2 0x3c79 0000052d: DUP4 0000052e: CODECOPY 0000052f: DUP2 00000530: MLOAD 00000531: SWAP2 00000532: MSTORE 00000533: SLOAD 00000534: SWAP2 00000535: PUSH1 0x01 00000537: PUSH1 0x01 00000539: PUSH1 0x40 0000053b: SHL 0000053c: SUB 0000053d: PUSH1 0xff 0000053f: DUP5 00000540: PUSH1 0x40 00000542: SHR 00000543: AND 00000544: ISZERO 00000545: SWAP4 00000546: AND 00000547: DUP1 00000548: ISZERO 00000549: SWAP1 0000054a: DUP2 0000054b: PUSH2 0x0632 0000054e: JUMPI 0000054f: JUMPDEST 00000550: PUSH1 0x01 00000552: EQ 00000553: SWAP1 00000554: DUP2 00000555: PUSH2 0x0628 00000558: JUMPI 00000559: JUMPDEST 0000055a: ISZERO 0000055b: SWAP1 0000055c: DUP2 0000055d: PUSH2 0x061f 00000560: JUMPI 00000561: JUMPDEST 00000562: POP 00000563: PUSH2 0x060d 00000566: JUMPI 00000567: PUSH1 0x00 00000569: DUP1 0000056a: MLOAD 0000056b: PUSH1 0x20 0000056d: PUSH2 0x3c79 00000570: DUP4 00000571: CODECOPY 00000572: DUP2 00000573: MLOAD 00000574: SWAP2 00000575: MSTORE 00000576: DUP1 00000577: SLOAD 00000578: PUSH8 0xffffffffffffffff 00000581: NOT 00000582: AND 00000583: PUSH1 0x01 00000585: OR 00000586: SWAP1 00000587: SSTORE 00000588: PUSH2 0x0595 0000058b: SWAP2 0000058c: DUP4 0000058d: PUSH2 0x05e8 00000590: JUMPI 00000591: PUSH2 0x1a96 00000594: JUMP 00000595: JUMPDEST 00000596: PUSH2 0x059b 00000599: JUMPI 0000059a: STOP 0000059b: JUMPDEST 0000059c: PUSH1 0x00 0000059e: DUP1 0000059f: MLOAD 000005a0: PUSH1 0x20 000005a2: PUSH2 0x3c79 000005a5: DUP4 000005a6: CODECOPY 000005a7: DUP2 000005a8: MLOAD 000005a9: SWAP2 000005aa: MSTORE 000005ab: DUP1 000005ac: SLOAD 000005ad: PUSH1 0xff 000005af: PUSH1 0x40 000005b1: SHL 000005b2: NOT 000005b3: AND 000005b4: SWAP1 000005b5: SSTORE 000005b6: PUSH1 0x40 000005b8: MLOAD 000005b9: PUSH1 0x01 000005bb: DUP2 000005bc: MSTORE 000005bd: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 000005de: SWAP1 000005df: DUP1 000005e0: PUSH1 0x20 000005e2: DUP2 000005e3: ADD 000005e4: PUSH2 0x0315 000005e7: JUMP 000005e8: JUMPDEST 000005e9: PUSH1 0x00 000005eb: DUP1 000005ec: MLOAD 000005ed: PUSH1 0x20 000005ef: PUSH2 0x3c79 000005f2: DUP4 000005f3: CODECOPY 000005f4: DUP2 000005f5: MLOAD 000005f6: SWAP2 000005f7: MSTORE 000005f8: DUP1 000005f9: SLOAD 000005fa: PUSH1 0xff 000005fc: PUSH1 0x40 000005fe: SHL 000005ff: NOT 00000600: AND 00000601: PUSH1 0x01 00000603: PUSH1 0x40 00000605: SHL 00000606: OR 00000607: SWAP1 00000608: SSTORE 00000609: PUSH2 0x1a96 0000060c: JUMP 0000060d: JUMPDEST 0000060e: PUSH1 0x40 00000610: MLOAD 00000611: PUSH4 0xf92ee8a9 00000616: PUSH1 0xe0 00000618: SHL 00000619: DUP2 0000061a: MSTORE 0000061b: PUSH1 0x04 0000061d: SWAP1 0000061e: REVERT 0000061f: JUMPDEST 00000620: SWAP1 00000621: POP 00000622: ISZERO 00000623: CODESIZE 00000624: PUSH2 0x0561 00000627: JUMP 00000628: JUMPDEST 00000629: ADDRESS 0000062a: EXTCODESIZE 0000062b: ISZERO 0000062c: SWAP2 0000062d: POP 0000062e: PUSH2 0x0559 00000631: JUMP 00000632: JUMPDEST 00000633: DUP5 00000634: SWAP2 00000635: POP 00000636: PUSH2 0x054f 00000639: JUMP 0000063a: JUMPDEST 0000063b: CALLVALUE 0000063c: PUSH2 0x0241 0000063f: JUMPI 00000640: PUSH1 0x40 00000642: CALLDATASIZE 00000643: PUSH1 0x03 00000645: NOT 00000646: ADD 00000647: SLT 00000648: PUSH2 0x0241 0000064b: JUMPI 0000064c: PUSH32 0x14c31aacfac9e1b12448ca6d440a799c047f0eb36ac5145aa2f18dd4796373f5 0000066d: PUSH1 0x24 0000066f: CALLDATALOAD 00000670: PUSH1 0x04 00000672: CALLDATALOAD 00000673: PUSH2 0x067b 00000676: DUP3 00000677: PUSH2 0x0230 0000067a: JUMP 0000067b: JUMPDEST 0000067c: PUSH2 0x0685 0000067f: CALLDATASIZE 00000680: CALLER 00000681: PUSH2 0x20c8 00000684: JUMP 00000685: JUMPDEST 00000686: PUSH2 0x068e 00000689: DUP3 0000068a: PUSH2 0x21e8 0000068d: JUMP 0000068e: JUMPDEST 0000068f: PUSH1 0x60 00000691: DUP3 00000692: SWAP1 00000693: SHL 00000694: PUSH12 0xffffffffffffffffffffffff 000006a1: NOT 000006a2: AND 000006a3: DUP2 000006a4: OR 000006a5: PUSH1 0x09 000006a7: SSTORE 000006a8: PUSH1 0x40 000006aa: DUP1 000006ab: MLOAD 000006ac: SWAP2 000006ad: DUP3 000006ae: MSTORE 000006af: PUSH1 0x01 000006b1: PUSH1 0x01 000006b3: PUSH1 0xa0 000006b5: SHL 000006b6: SUB 000006b7: SWAP1 000006b8: SWAP3 000006b9: AND 000006ba: PUSH1 0x20 000006bc: DUP3 000006bd: ADD 000006be: MSTORE 000006bf: SWAP1 000006c0: DUP2 000006c1: SWAP1 000006c2: DUP2 000006c3: ADD 000006c4: PUSH2 0x0315 000006c7: JUMP 000006c8: JUMPDEST 000006c9: PUSH4 0x4e487b71 000006ce: PUSH1 0xe0 000006d0: SHL 000006d1: PUSH1 0x00 000006d3: MSTORE 000006d4: PUSH1 0x41 000006d6: PUSH1 0x04 000006d8: MSTORE 000006d9: PUSH1 0x24 000006db: PUSH1 0x00 000006dd: REVERT 000006de: JUMPDEST 000006df: PUSH1 0xa0 000006e1: DUP2 000006e2: ADD 000006e3: SWAP1 000006e4: DUP2 000006e5: LT 000006e6: PUSH1 0x01 000006e8: PUSH1 0x01 000006ea: PUSH1 0x40 000006ec: SHL 000006ed: SUB 000006ee: DUP3 000006ef: GT 000006f0: OR 000006f1: PUSH2 0x06f9 000006f4: JUMPI 000006f5: PUSH1 0x40 000006f7: MSTORE 000006f8: JUMP 000006f9: JUMPDEST 000006fa: PUSH2 0x06c8 000006fd: JUMP 000006fe: JUMPDEST 000006ff: PUSH1 0x60 00000701: DUP2 00000702: ADD 00000703: SWAP1 00000704: DUP2 00000705: LT 00000706: PUSH1 0x01 00000708: PUSH1 0x01 0000070a: PUSH1 0x40 0000070c: SHL 0000070d: SUB 0000070e: DUP3 0000070f: GT 00000710: OR 00000711: PUSH2 0x06f9 00000714: JUMPI 00000715: PUSH1 0x40 00000717: MSTORE 00000718: JUMP 00000719: JUMPDEST 0000071a: PUSH1 0x01 0000071c: PUSH1 0x01 0000071e: PUSH1 0x40 00000720: SHL 00000721: SUB 00000722: DUP2 00000723: GT 00000724: PUSH2 0x06f9 00000727: JUMPI 00000728: PUSH1 0x40 0000072a: MSTORE 0000072b: JUMP 0000072c: JUMPDEST 0000072d: PUSH1 0x20 0000072f: DUP2 00000730: ADD 00000731: SWAP1 00000732: DUP2 00000733: LT 00000734: PUSH1 0x01 00000736: PUSH1 0x01 00000738: PUSH1 0x40 0000073a: SHL 0000073b: SUB 0000073c: DUP3 0000073d: GT 0000073e: OR 0000073f: PUSH2 0x06f9 00000742: JUMPI 00000743: PUSH1 0x40 00000745: MSTORE 00000746: JUMP 00000747: JUMPDEST 00000748: PUSH1 0x40 0000074a: DUP2 0000074b: ADD 0000074c: SWAP1 0000074d: DUP2 0000074e: LT 0000074f: PUSH1 0x01 00000751: PUSH1 0x01 00000753: PUSH1 0x40 00000755: SHL 00000756: SUB 00000757: DUP3 00000758: GT 00000759: OR 0000075a: PUSH2 0x06f9 0000075d: JUMPI 0000075e: PUSH1 0x40 00000760: MSTORE 00000761: JUMP 00000762: JUMPDEST 00000763: SWAP1 00000764: PUSH1 0x1f 00000766: DUP1 00000767: NOT 00000768: SWAP2 00000769: ADD 0000076a: AND 0000076b: DUP2 0000076c: ADD 0000076d: SWAP1 0000076e: DUP2 0000076f: LT 00000770: PUSH1 0x01 00000772: PUSH1 0x01 00000774: PUSH1 0x40 00000776: SHL 00000777: SUB 00000778: DUP3 00000779: GT 0000077a: OR 0000077b: PUSH2 0x06f9 0000077e: JUMPI 0000077f: PUSH1 0x40 00000781: MSTORE 00000782: JUMP 00000783: JUMPDEST 00000784: PUSH1 0x40 00000786: MLOAD 00000787: SWAP1 00000788: PUSH1 0xc0 0000078a: DUP3 0000078b: ADD 0000078c: DUP3 0000078d: DUP2 0000078e: LT 0000078f: PUSH1 0x01 00000791: PUSH1 0x01 00000793: PUSH1 0x40 00000795: SHL 00000796: SUB 00000797: DUP3 00000798: GT 00000799: OR 0000079a: PUSH2 0x06f9 0000079d: JUMPI 0000079e: PUSH1 0x40 000007a0: MSTORE 000007a1: JUMP 000007a2: JUMPDEST 000007a3: PUSH1 0x01 000007a5: PUSH1 0x01 000007a7: PUSH1 0x40 000007a9: SHL 000007aa: SUB 000007ab: DUP2 000007ac: GT 000007ad: PUSH2 0x06f9 000007b0: JUMPI 000007b1: PUSH1 0x1f 000007b3: ADD 000007b4: PUSH1 0x1f 000007b6: NOT 000007b7: AND 000007b8: PUSH1 0x20 000007ba: ADD 000007bb: SWAP1 000007bc: JUMP 000007bd: JUMPDEST 000007be: SWAP3 000007bf: SWAP2 000007c0: SWAP3 000007c1: PUSH2 0x07c9 000007c4: DUP3 000007c5: PUSH2 0x07a2 000007c8: JUMP 000007c9: JUMPDEST 000007ca: SWAP2 000007cb: PUSH2 0x07d7 000007ce: PUSH1 0x40 000007d0: MLOAD 000007d1: SWAP4 000007d2: DUP5 000007d3: PUSH2 0x0762 000007d6: JUMP 000007d7: JUMPDEST 000007d8: DUP3 000007d9: SWAP5 000007da: DUP2 000007db: DUP5 000007dc: MSTORE 000007dd: DUP2 000007de: DUP4 000007df: ADD 000007e0: GT 000007e1: PUSH2 0x0241 000007e4: JUMPI 000007e5: DUP3 000007e6: DUP2 000007e7: PUSH1 0x20 000007e9: SWAP4 000007ea: DUP5 000007eb: PUSH1 0x00 000007ed: SWAP7 000007ee: ADD 000007ef: CALLDATACOPY 000007f0: ADD 000007f1: ADD 000007f2: MSTORE 000007f3: JUMP 000007f4: JUMPDEST 000007f5: SWAP1 000007f6: DUP1 000007f7: PUSH1 0x1f 000007f9: DUP4 000007fa: ADD 000007fb: SLT 000007fc: ISZERO 000007fd: PUSH2 0x0241 00000800: JUMPI 00000801: DUP2 00000802: PUSH1 0x20 00000804: PUSH2 0x0511 00000807: SWAP4 00000808: CALLDATALOAD 00000809: SWAP2 0000080a: ADD 0000080b: PUSH2 0x07bd 0000080e: JUMP 0000080f: JUMPDEST 00000810: PUSH1 0x40 00000812: CALLDATASIZE 00000813: PUSH1 0x03 00000815: NOT 00000816: ADD 00000817: SLT 00000818: PUSH2 0x0241 0000081b: JUMPI 0000081c: PUSH1 0x04 0000081e: DUP1 0000081f: CALLDATALOAD 00000820: SWAP1 00000821: PUSH2 0x0829 00000824: DUP3 00000825: PUSH2 0x0230 00000828: JUMP 00000829: JUMPDEST 0000082a: PUSH1 0x24 0000082c: CALLDATALOAD 0000082d: PUSH1 0x01 0000082f: PUSH1 0x01 00000831: PUSH1 0x40 00000833: SHL 00000834: SUB 00000835: DUP2 00000836: GT 00000837: PUSH2 0x0241 0000083a: JUMPI 0000083b: PUSH2 0x0847 0000083e: SWAP1 0000083f: CALLDATASIZE 00000840: SWAP1 00000841: DUP4 00000842: ADD 00000843: PUSH2 0x07f4 00000846: JUMP 00000847: JUMPDEST 00000848: PUSH1 0x01 0000084a: PUSH1 0x01 0000084c: PUSH1 0xa0 0000084e: SHL 0000084f: SUB 00000850: PUSH32 0x00000000000000000000000092feada957bbeb17868f9f59aed548e50191283d 00000871: DUP2 00000872: AND 00000873: ADDRESS 00000874: DUP2 00000875: EQ 00000876: SWAP1 00000877: DUP2 00000878: ISZERO 00000879: PUSH2 0x0961 0000087c: JUMPI 0000087d: JUMPDEST 0000087e: POP 0000087f: PUSH2 0x0950 00000882: JUMPI 00000883: SWAP1 00000884: PUSH1 0x20 00000886: DUP4 00000887: SWAP3 00000888: PUSH2 0x0891 0000088b: CALLDATASIZE 0000088c: CALLER 0000088d: PUSH2 0x20c8 00000890: JUMP 00000891: JUMPDEST 00000892: PUSH1 0x40 00000894: MLOAD 00000895: PUSH4 0x52d1902d 0000089a: PUSH1 0xe0 0000089c: SHL 0000089d: DUP2 0000089e: MSTORE 0000089f: SWAP4 000008a0: DUP5 000008a1: SWAP2 000008a2: DUP3 000008a3: SWAP1 000008a4: DUP9 000008a5: AND 000008a6: GAS 000008a7: STATICCALL 000008a8: PUSH1 0x00 000008aa: SWAP3 000008ab: DUP2 000008ac: PUSH2 0x091f 000008af: JUMPI 000008b0: JUMPDEST 000008b1: POP 000008b2: PUSH2 0x08e2 000008b5: JUMPI 000008b6: POP 000008b7: POP 000008b8: PUSH1 0x40 000008ba: MLOAD 000008bb: PUSH4 0x4c9c8ce3 000008c0: PUSH1 0xe0 000008c2: SHL 000008c3: DUP2 000008c4: MSTORE 000008c5: PUSH1 0x01 000008c7: PUSH1 0x01 000008c9: PUSH1 0xa0 000008cb: SHL 000008cc: SUB 000008cd: SWAP1 000008ce: SWAP3 000008cf: AND 000008d0: SWAP1 000008d1: DUP3 000008d2: ADD 000008d3: SWAP1 000008d4: DUP2 000008d5: MSTORE 000008d6: DUP2 000008d7: SWAP1 000008d8: PUSH1 0x20 000008da: ADD 000008db: SUB 000008dc: SWAP1 000008dd: REVERT 000008de: JUMPDEST 000008df: SUB 000008e0: SWAP1 000008e1: REVERT 000008e2: JUMPDEST 000008e3: DUP4 000008e4: DUP4 000008e5: PUSH1 0x00 000008e7: DUP1 000008e8: MLOAD 000008e9: PUSH1 0x20 000008eb: PUSH2 0x3c19 000008ee: DUP4 000008ef: CODECOPY 000008f0: DUP2 000008f1: MLOAD 000008f2: SWAP2 000008f3: MSTORE 000008f4: DUP5 000008f5: SUB 000008f6: PUSH2 0x0903 000008f9: JUMPI 000008fa: PUSH2 0x0019 000008fd: DUP4 000008fe: DUP4 000008ff: PUSH2 0x35c9 00000902: JUMP 00000903: JUMPDEST 00000904: PUSH1 0x40 00000906: MLOAD 00000907: PUSH4 0x2a875269 0000090c: PUSH1 0xe2 0000090e: SHL 0000090f: DUP2 00000910: MSTORE 00000911: SWAP1 00000912: DUP2 00000913: ADD 00000914: DUP5 00000915: DUP2 00000916: MSTORE 00000917: DUP2 00000918: SWAP1 00000919: PUSH1 0x20 0000091b: ADD 0000091c: SUB 0000091d: SWAP1 0000091e: REVERT 0000091f: JUMPDEST 00000920: PUSH2 0x0942 00000923: SWAP2 00000924: SWAP4 00000925: POP 00000926: PUSH1 0x20 00000928: RETURNDATASIZE 00000929: PUSH1 0x20 0000092b: GT 0000092c: PUSH2 0x0949 0000092f: JUMPI 00000930: JUMPDEST 00000931: PUSH2 0x093a 00000934: DUP2 00000935: DUP4 00000936: PUSH2 0x0762 00000939: JUMP 0000093a: JUMPDEST 0000093b: DUP2 0000093c: ADD 0000093d: SWAP1 0000093e: PUSH2 0x1e33 00000941: JUMP 00000942: JUMPDEST 00000943: SWAP2 00000944: CODESIZE 00000945: PUSH2 0x08b0 00000948: JUMP 00000949: JUMPDEST 0000094a: POP 0000094b: RETURNDATASIZE 0000094c: PUSH2 0x0930 0000094f: JUMP 00000950: JUMPDEST 00000951: PUSH1 0x40 00000953: MLOAD 00000954: PUSH4 0x703e46dd 00000959: PUSH1 0xe1 0000095b: SHL 0000095c: DUP2 0000095d: MSTORE 0000095e: DUP4 0000095f: SWAP1 00000960: REVERT 00000961: JUMPDEST 00000962: SWAP1 00000963: POP 00000964: DUP2 00000965: PUSH1 0x00 00000967: DUP1 00000968: MLOAD 00000969: PUSH1 0x20 0000096b: PUSH2 0x3c19 0000096e: DUP4 0000096f: CODECOPY 00000970: DUP2 00000971: MLOAD 00000972: SWAP2 00000973: MSTORE 00000974: SLOAD 00000975: AND 00000976: EQ 00000977: ISZERO 00000978: CODESIZE 00000979: PUSH2 0x087d 0000097c: JUMP 0000097d: JUMPDEST 0000097e: PUSH1 0x00 00000980: SWAP2 00000981: SUB 00000982: SLT 00000983: PUSH2 0x0241 00000986: JUMPI 00000987: JUMP 00000988: JUMPDEST 00000989: CALLVALUE 0000098a: PUSH2 0x0241 0000098d: JUMPI 0000098e: PUSH1 0x00 00000990: CALLDATASIZE 00000991: PUSH1 0x03 00000993: NOT 00000994: ADD 00000995: SLT 00000996: PUSH2 0x0241 00000999: JUMPI 0000099a: PUSH32 0x00000000000000000000000092feada957bbeb17868f9f59aed548e50191283d 000009bb: PUSH1 0x01 000009bd: PUSH1 0x01 000009bf: PUSH1 0xa0 000009c1: SHL 000009c2: SUB 000009c3: AND 000009c4: ADDRESS 000009c5: SUB 000009c6: PUSH2 0x09e1 000009c9: JUMPI 000009ca: PUSH1 0x20 000009cc: PUSH1 0x40 000009ce: MLOAD 000009cf: PUSH1 0x00 000009d1: DUP1 000009d2: MLOAD 000009d3: PUSH1 0x20 000009d5: PUSH2 0x3c19 000009d8: DUP4 000009d9: CODECOPY 000009da: DUP2 000009db: MLOAD 000009dc: SWAP2 000009dd: MSTORE 000009de: DUP2 000009df: MSTORE 000009e0: RETURN 000009e1: JUMPDEST 000009e2: PUSH1 0x40 000009e4: MLOAD 000009e5: PUSH4 0x703e46dd 000009ea: PUSH1 0xe1 000009ec: SHL 000009ed: DUP2 000009ee: MSTORE 000009ef: PUSH1 0x04 000009f1: SWAP1 000009f2: REVERT 000009f3: JUMPDEST 000009f4: CALLVALUE 000009f5: PUSH2 0x0241 000009f8: JUMPI 000009f9: PUSH1 0x00 000009fb: CALLDATASIZE 000009fc: PUSH1 0x03 000009fe: NOT 000009ff: ADD 00000a00: SLT 00000a01: PUSH2 0x0241 00000a04: JUMPI 00000a05: PUSH1 0x20 00000a07: PUSH1 0xff 00000a09: PUSH1 0x00 00000a0b: DUP1 00000a0c: MLOAD 00000a0d: PUSH1 0x20 00000a0f: PUSH2 0x3c39 00000a12: DUP4 00000a13: CODECOPY 00000a14: DUP2 00000a15: MLOAD 00000a16: SWAP2 00000a17: MSTORE 00000a18: SLOAD 00000a19: AND 00000a1a: PUSH1 0x40 00000a1c: MLOAD 00000a1d: SWAP1 00000a1e: ISZERO 00000a1f: ISZERO 00000a20: DUP2 00000a21: MSTORE 00000a22: RETURN 00000a23: JUMPDEST 00000a24: CALLVALUE 00000a25: PUSH2 0x0241 00000a28: JUMPI 00000a29: PUSH1 0x20 00000a2b: CALLDATASIZE 00000a2c: PUSH1 0x03 00000a2e: NOT 00000a2f: ADD 00000a30: SLT 00000a31: PUSH2 0x0241 00000a34: JUMPI 00000a35: PUSH1 0x20 00000a37: PUSH2 0x0a41 00000a3a: PUSH1 0x04 00000a3c: CALLDATALOAD 00000a3d: PUSH2 0x1b1f 00000a40: JUMP 00000a41: JUMPDEST 00000a42: PUSH1 0x40 00000a44: MLOAD 00000a45: PUSH1 0x01 00000a47: PUSH1 0x01 00000a49: PUSH1 0xa0 00000a4b: SHL 00000a4c: SUB 00000a4d: SWAP1 00000a4e: SWAP2 00000a4f: AND 00000a50: DUP2 00000a51: MSTORE 00000a52: RETURN 00000a53: JUMPDEST 00000a54: CALLVALUE 00000a55: PUSH2 0x0241 00000a58: JUMPI 00000a59: PUSH1 0x20 00000a5b: CALLDATASIZE 00000a5c: PUSH1 0x03 00000a5e: NOT 00000a5f: ADD 00000a60: SLT 00000a61: PUSH2 0x0241 00000a64: JUMPI 00000a65: PUSH1 0x04 00000a67: CALLDATALOAD 00000a68: PUSH1 0x00 00000a6a: MSTORE 00000a6b: PUSH1 0x05 00000a6d: PUSH1 0x20 00000a6f: MSTORE 00000a70: PUSH1 0x20 00000a72: PUSH1 0x40 00000a74: PUSH1 0x00 00000a76: KECCAK256 00000a77: SLOAD 00000a78: PUSH1 0x40 00000a7a: MLOAD 00000a7b: SWAP1 00000a7c: DUP2 00000a7d: MSTORE 00000a7e: RETURN 00000a7f: JUMPDEST 00000a80: CALLVALUE 00000a81: PUSH2 0x0241 00000a84: JUMPI 00000a85: PUSH1 0x20 00000a87: CALLDATASIZE 00000a88: PUSH1 0x03 00000a8a: NOT 00000a8b: ADD 00000a8c: SLT 00000a8d: PUSH2 0x0241 00000a90: JUMPI 00000a91: PUSH1 0x04 00000a93: CALLDATALOAD 00000a94: PUSH2 0x0a9c 00000a97: DUP2 00000a98: PUSH2 0x0230 00000a9b: JUMP 00000a9c: JUMPDEST 00000a9d: PUSH1 0x00 00000a9f: DUP1 00000aa0: MLOAD 00000aa1: PUSH1 0x20 00000aa3: PUSH2 0x3bf9 00000aa6: DUP4 00000aa7: CODECOPY 00000aa8: DUP2 00000aa9: MLOAD 00000aaa: SWAP2 00000aab: MSTORE 00000aac: SLOAD 00000aad: PUSH1 0x01 00000aaf: PUSH1 0x01 00000ab1: PUSH1 0xa0 00000ab3: SHL 00000ab4: SUB 00000ab5: SWAP2 00000ab6: SWAP1 00000ab7: DUP3 00000ab8: AND 00000ab9: CALLER 00000aba: SUB 00000abb: PUSH2 0x0ae7 00000abe: JUMPI 00000abf: DUP1 00000ac0: EXTCODESIZE 00000ac1: ISZERO 00000ac2: PUSH2 0x0ace 00000ac5: JUMPI 00000ac6: PUSH2 0x0019 00000ac9: SWAP1 00000aca: PUSH2 0x2700 00000acd: JUMP 00000ace: JUMPDEST 00000acf: PUSH1 0x40 00000ad1: MLOAD 00000ad2: PUSH4 0x61798f2f 00000ad7: PUSH1 0xe1 00000ad9: SHL 00000ada: DUP2 00000adb: MSTORE 00000adc: SWAP2 00000add: AND 00000ade: PUSH1 0x04 00000ae0: DUP3 00000ae1: ADD 00000ae2: MSTORE 00000ae3: PUSH1 0x24 00000ae5: SWAP1 00000ae6: REVERT 00000ae7: JUMPDEST 00000ae8: PUSH1 0x40 00000aea: MLOAD 00000aeb: PUSH3 0xd1953b 00000aef: PUSH1 0xe3 00000af1: SHL 00000af2: DUP2 00000af3: MSTORE 00000af4: CALLER 00000af5: PUSH1 0x04 00000af7: DUP3 00000af8: ADD 00000af9: MSTORE 00000afa: PUSH1 0x24 00000afc: SWAP1 00000afd: REVERT 00000afe: JUMPDEST 00000aff: CALLVALUE 00000b00: PUSH2 0x0241 00000b03: JUMPI 00000b04: PUSH1 0x00 00000b06: CALLDATASIZE 00000b07: PUSH1 0x03 00000b09: NOT 00000b0a: ADD 00000b0b: SLT 00000b0c: PUSH2 0x0241 00000b0f: JUMPI 00000b10: PUSH2 0x0b19 00000b13: CALLDATASIZE 00000b14: CALLER 00000b15: PUSH2 0x20c8 00000b18: JUMP 00000b19: JUMPDEST 00000b1a: PUSH1 0x00 00000b1c: DUP1 00000b1d: MLOAD 00000b1e: PUSH1 0x20 00000b20: PUSH2 0x3c39 00000b23: DUP4 00000b24: CODECOPY 00000b25: DUP2 00000b26: MLOAD 00000b27: SWAP2 00000b28: MSTORE 00000b29: DUP1 00000b2a: SLOAD 00000b2b: PUSH1 0xff 00000b2d: DUP2 00000b2e: AND 00000b2f: ISZERO 00000b30: PUSH2 0x0b83 00000b33: JUMPI 00000b34: POP 00000b35: DUP1 00000b36: SLOAD 00000b37: PUSH1 0xff 00000b39: DUP2 00000b3a: AND 00000b3b: ISZERO 00000b3c: PUSH2 0x0b71 00000b3f: JUMPI 00000b40: PUSH1 0xff 00000b42: NOT 00000b43: AND 00000b44: SWAP1 00000b45: SSTORE 00000b46: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 00000b67: PUSH1 0x20 00000b69: PUSH1 0x40 00000b6b: MLOAD 00000b6c: CALLER 00000b6d: DUP2 00000b6e: MSTORE 00000b6f: LOG1 00000b70: STOP 00000b71: JUMPDEST 00000b72: PUSH1 0x40 00000b74: MLOAD 00000b75: PUSH4 0x8dfc202b 00000b7a: PUSH1 0xe0 00000b7c: SHL 00000b7d: DUP2 00000b7e: MSTORE 00000b7f: PUSH1 0x04 00000b81: SWAP1 00000b82: REVERT 00000b83: JUMPDEST 00000b84: PUSH1 0x01 00000b86: SWAP1 00000b87: PUSH2 0x0b8e 00000b8a: PUSH2 0x2228 00000b8d: JUMP 00000b8e: JUMPDEST 00000b8f: PUSH1 0xff 00000b91: NOT 00000b92: AND 00000b93: OR 00000b94: SWAP1 00000b95: SSTORE 00000b96: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 00000bb7: PUSH1 0x20 00000bb9: PUSH1 0x40 00000bbb: MLOAD 00000bbc: CALLER 00000bbd: DUP2 00000bbe: MSTORE 00000bbf: LOG1 00000bc0: STOP 00000bc1: JUMPDEST 00000bc2: CALLVALUE 00000bc3: PUSH2 0x0241 00000bc6: JUMPI 00000bc7: PUSH1 0x00 00000bc9: CALLDATASIZE 00000bca: PUSH1 0x03 00000bcc: NOT 00000bcd: ADD 00000bce: SLT 00000bcf: PUSH2 0x0241 00000bd2: JUMPI 00000bd3: PUSH1 0x00 00000bd5: DUP1 00000bd6: MLOAD 00000bd7: PUSH1 0x20 00000bd9: PUSH2 0x3bf9 00000bdc: DUP4 00000bdd: CODECOPY 00000bde: DUP2 00000bdf: MLOAD 00000be0: SWAP2 00000be1: MSTORE 00000be2: SLOAD 00000be3: PUSH1 0xa0 00000be5: SHR 00000be6: PUSH1 0xff 00000be8: AND 00000be9: ISZERO 00000bea: PUSH2 0x0c0b 00000bed: JUMPI 00000bee: PUSH1 0x20 00000bf0: PUSH4 0x8fb36037 00000bf5: PUSH1 0xe0 00000bf7: SHL 00000bf8: JUMPDEST 00000bf9: PUSH1 0x40 00000bfb: MLOAD 00000bfc: PUSH1 0x01 00000bfe: PUSH1 0x01 00000c00: PUSH1 0xe0 00000c02: SHL 00000c03: SUB 00000c04: NOT 00000c05: SWAP1 00000c06: SWAP2 00000c07: AND 00000c08: DUP2 00000c09: MSTORE 00000c0a: RETURN 00000c0b: JUMPDEST 00000c0c: PUSH1 0x20 00000c0e: PUSH1 0x00 00000c10: PUSH2 0x0bf8 00000c13: JUMP 00000c14: JUMPDEST 00000c15: CALLVALUE 00000c16: PUSH2 0x0241 00000c19: JUMPI 00000c1a: PUSH1 0x60 00000c1c: CALLDATASIZE 00000c1d: PUSH1 0x03 00000c1f: NOT 00000c20: ADD 00000c21: SLT 00000c22: PUSH2 0x0241 00000c25: JUMPI 00000c26: PUSH2 0x0c40 00000c29: PUSH1 0x24 00000c2b: CALLDATALOAD 00000c2c: PUSH2 0x0c34 00000c2f: DUP2 00000c30: PUSH2 0x0230 00000c33: JUMP 00000c34: JUMPDEST 00000c35: PUSH1 0x44 00000c37: CALLDATALOAD 00000c38: SWAP1 00000c39: PUSH1 0x04 00000c3b: CALLDATALOAD 00000c3c: PUSH2 0x2759 00000c3f: JUMP 00000c40: JUMPDEST 00000c41: PUSH1 0x40 00000c43: DUP1 00000c44: MLOAD 00000c45: SWAP3 00000c46: DUP4 00000c47: MSTORE 00000c48: PUSH1 0x01 00000c4a: PUSH1 0x01 00000c4c: PUSH1 0xa0 00000c4e: SHL 00000c4f: SUB 00000c50: SWAP2 00000c51: SWAP1 00000c52: SWAP2 00000c53: AND 00000c54: PUSH1 0x20 00000c56: DUP4 00000c57: ADD 00000c58: MSTORE 00000c59: SWAP1 00000c5a: RETURN 00000c5b: JUMPDEST 00000c5c: SUB 00000c5d: SWAP1 00000c5e: RETURN 00000c5f: JUMPDEST 00000c60: PUSH1 0x60 00000c62: CALLDATASIZE 00000c63: PUSH1 0x03 00000c65: NOT 00000c66: ADD 00000c67: SLT 00000c68: PUSH2 0x0241 00000c6b: JUMPI 00000c6c: PUSH1 0x24 00000c6e: CALLDATALOAD 00000c6f: PUSH1 0x01 00000c71: PUSH1 0x01 00000c73: PUSH1 0x40 00000c75: SHL 00000c76: SUB 00000c77: DUP2 00000c78: GT 00000c79: PUSH2 0x0241 00000c7c: JUMPI 00000c7d: PUSH2 0x0d4f 00000c80: PUSH2 0x0d1e 00000c83: PUSH2 0x0c93 00000c86: PUSH2 0x0c5b 00000c89: SWAP4 00000c8a: CALLDATASIZE 00000c8b: SWAP1 00000c8c: PUSH1 0x04 00000c8e: ADD 00000c8f: PUSH2 0x0437 00000c92: JUMP 00000c93: JUMPDEST 00000c94: PUSH1 0x44 00000c96: SWAP3 00000c97: SWAP2 00000c98: SWAP3 00000c99: CALLDATALOAD 00000c9a: SWAP1 00000c9b: PUSH2 0x0ca3 00000c9e: DUP3 00000c9f: PUSH2 0x0230 00000ca2: JUMP 00000ca3: JUMPDEST 00000ca4: PUSH2 0x0cab 00000ca7: PUSH2 0x2228 00000caa: JUMP 00000cab: JUMPDEST 00000cac: PUSH2 0x0cb3 00000caf: PUSH2 0x1b91 00000cb2: JUMP 00000cb3: JUMPDEST 00000cb4: PUSH1 0x01 00000cb6: DUP2 00000cb7: MSTORE 00000cb8: SWAP4 00000cb9: PUSH1 0x20 00000cbb: DUP6 00000cbc: ADD 00000cbd: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00000cde: DUP2 00000cdf: MSTORE 00000ce0: PUSH1 0x40 00000ce2: DUP7 00000ce3: ADD 00000ce4: SWAP1 00000ce5: PUSH1 0x04 00000ce7: CALLDATALOAD 00000ce8: DUP3 00000ce9: MSTORE 00000cea: PUSH2 0x0d15 00000ced: PUSH2 0x0d04 00000cf0: PUSH1 0x09 00000cf2: SLOAD 00000cf3: SWAP1 00000cf4: PUSH1 0x01 00000cf6: PUSH1 0x01 00000cf8: PUSH1 0x40 00000cfa: SHL 00000cfb: SUB 00000cfc: DUP3 00000cfd: AND 00000cfe: SWAP2 00000cff: PUSH1 0x60 00000d01: SHR 00000d02: SWAP1 00000d03: JUMP 00000d04: JUMPDEST 00000d05: PUSH1 0x01 00000d07: PUSH1 0x01 00000d09: PUSH1 0xa0 00000d0b: SHL 00000d0c: SUB 00000d0d: AND 00000d0e: PUSH1 0x80 00000d10: DUP11 00000d11: ADD 00000d12: MSTORE 00000d13: POP 00000d14: JUMP 00000d15: JUMPDEST 00000d16: MLOAD 00000d17: SWAP1 00000d18: MLOAD 00000d19: SWAP1 00000d1a: PUSH2 0x291b 00000d1d: JUMP 00000d1e: JUMPDEST 00000d1f: PUSH1 0x40 00000d21: DUP2 00000d22: ADD 00000d23: MLOAD 00000d24: PUSH1 0xe0 00000d26: DUP4 00000d27: ADD 00000d28: MSTORE 00000d29: PUSH1 0x80 00000d2b: DUP2 00000d2c: ADD 00000d2d: MLOAD 00000d2e: PUSH2 0x0120 00000d31: DUP4 00000d32: ADD 00000d33: MSTORE 00000d34: PUSH1 0x60 00000d36: DUP2 00000d37: ADD 00000d38: MLOAD 00000d39: PUSH2 0x0140 00000d3c: DUP4 00000d3d: ADD 00000d3e: MSTORE 00000d3f: MLOAD 00000d40: CALLER 00000d41: SWAP1 00000d42: DUP2 00000d43: SWAP1 00000d44: ISZERO 00000d45: ISZERO 00000d46: PUSH2 0x2a46 00000d49: JUMP 00000d4a: JUMPDEST 00000d4b: PUSH2 0x2a46 00000d4e: JUMP 00000d4f: JUMPDEST 00000d50: PUSH1 0x40 00000d52: MLOAD 00000d53: SWAP1 00000d54: DUP2 00000d55: MSTORE 00000d56: SWAP1 00000d57: DUP2 00000d58: SWAP1 00000d59: PUSH1 0x20 00000d5b: DUP3 00000d5c: ADD 00000d5d: SWAP1 00000d5e: JUMP 00000d5f: JUMPDEST 00000d60: CALLVALUE 00000d61: PUSH2 0x0241 00000d64: JUMPI 00000d65: PUSH1 0x00 00000d67: CALLDATASIZE 00000d68: PUSH1 0x03 00000d6a: NOT 00000d6b: ADD 00000d6c: SLT 00000d6d: PUSH2 0x0241 00000d70: JUMPI 00000d71: PUSH1 0x00 00000d73: DUP1 00000d74: MLOAD 00000d75: PUSH1 0x20 00000d77: PUSH2 0x3c19 00000d7a: DUP4 00000d7b: CODECOPY 00000d7c: DUP2 00000d7d: MLOAD 00000d7e: SWAP2 00000d7f: MSTORE 00000d80: SLOAD 00000d81: PUSH1 0x40 00000d83: MLOAD 00000d84: PUSH1 0x01 00000d86: PUSH1 0x01 00000d88: PUSH1 0xa0 00000d8a: SHL 00000d8b: SUB 00000d8c: SWAP1 00000d8d: SWAP2 00000d8e: AND 00000d8f: DUP2 00000d90: MSTORE 00000d91: PUSH1 0x20 00000d93: SWAP1 00000d94: RETURN 00000d95: JUMPDEST 00000d96: PUSH1 0x40 00000d98: MLOAD 00000d99: SWAP1 00000d9a: PUSH2 0x0da2 00000d9d: DUP3 00000d9e: PUSH2 0x072c 00000da1: JUMP 00000da2: JUMPDEST 00000da3: PUSH1 0x00 00000da5: DUP3 00000da6: MSTORE 00000da7: JUMP 00000da8: JUMPDEST 00000da9: PUSH1 0x00 00000dab: JUMPDEST 00000dac: DUP4 00000dad: DUP2 00000dae: LT 00000daf: PUSH2 0x0dbb 00000db2: JUMPI 00000db3: POP 00000db4: POP 00000db5: PUSH1 0x00 00000db7: SWAP2 00000db8: ADD 00000db9: MSTORE 00000dba: JUMP 00000dbb: JUMPDEST 00000dbc: DUP2 00000dbd: DUP2 00000dbe: ADD 00000dbf: MLOAD 00000dc0: DUP4 00000dc1: DUP3 00000dc2: ADD 00000dc3: MSTORE 00000dc4: PUSH1 0x20 00000dc6: ADD 00000dc7: PUSH2 0x0dab 00000dca: JUMP 00000dcb: JUMPDEST 00000dcc: SWAP1 00000dcd: PUSH1 0x20 00000dcf: SWAP2 00000dd0: PUSH2 0x0de4 00000dd3: DUP2 00000dd4: MLOAD 00000dd5: DUP1 00000dd6: SWAP3 00000dd7: DUP2 00000dd8: DUP6 00000dd9: MSTORE 00000dda: DUP6 00000ddb: DUP1 00000ddc: DUP7 00000ddd: ADD 00000dde: SWAP2 00000ddf: ADD 00000de0: PUSH2 0x0da8 00000de3: JUMP 00000de4: JUMPDEST 00000de5: PUSH1 0x1f 00000de7: ADD 00000de8: PUSH1 0x1f 00000dea: NOT 00000deb: AND 00000dec: ADD 00000ded: ADD 00000dee: SWAP1 00000def: JUMP 00000df0: JUMPDEST 00000df1: SWAP1 00000df2: PUSH1 0x20 00000df4: PUSH2 0x0511 00000df7: SWAP3 00000df8: DUP2 00000df9: DUP2 00000dfa: MSTORE 00000dfb: ADD 00000dfc: SWAP1 00000dfd: PUSH2 0x0dcb 00000e00: JUMP 00000e01: JUMPDEST 00000e02: CALLVALUE 00000e03: PUSH2 0x0241 00000e06: JUMPI 00000e07: PUSH1 0x00 00000e09: CALLDATASIZE 00000e0a: PUSH1 0x03 00000e0c: NOT 00000e0d: ADD 00000e0e: SLT 00000e0f: PUSH2 0x0241 00000e12: JUMPI 00000e13: PUSH2 0x0c5b 00000e16: PUSH1 0x40 00000e18: MLOAD 00000e19: PUSH2 0x0e21 00000e1c: DUP2 00000e1d: PUSH2 0x0747 00000e20: JUMP 00000e21: JUMPDEST 00000e22: PUSH1 0x05 00000e24: DUP2 00000e25: MSTORE 00000e26: PUSH5 0x0352e302e3 00000e2c: PUSH1 0xdc 00000e2e: SHL 00000e2f: PUSH1 0x20 00000e31: DUP3 00000e32: ADD 00000e33: MSTORE 00000e34: PUSH1 0x40 00000e36: MLOAD 00000e37: SWAP2 00000e38: DUP3 00000e39: SWAP2 00000e3a: PUSH1 0x20 00000e3c: DUP4 00000e3d: MSTORE 00000e3e: PUSH1 0x20 00000e40: DUP4 00000e41: ADD 00000e42: SWAP1 00000e43: PUSH2 0x0dcb 00000e46: JUMP 00000e47: JUMPDEST 00000e48: CALLVALUE 00000e49: PUSH2 0x0241 00000e4c: JUMPI 00000e4d: PUSH1 0x20 00000e4f: PUSH2 0x0e83 00000e52: PUSH2 0x0e5a 00000e55: CALLDATASIZE 00000e56: PUSH2 0x04ec 00000e59: JUMP 00000e5a: JUMPDEST 00000e5b: PUSH1 0x01 00000e5d: PUSH1 0x01 00000e5f: PUSH1 0xa0 00000e61: SHL 00000e62: SUB 00000e63: SWAP2 00000e64: DUP3 00000e65: AND 00000e66: PUSH1 0x00 00000e68: SWAP1 00000e69: DUP2 00000e6a: MSTORE 00000e6b: PUSH1 0x08 00000e6d: DUP6 00000e6e: MSTORE 00000e6f: PUSH1 0x40 00000e71: DUP1 00000e72: DUP3 00000e73: KECCAK256 00000e74: SWAP3 00000e75: SWAP1 00000e76: SWAP4 00000e77: AND 00000e78: DUP2 00000e79: MSTORE 00000e7a: PUSH1 0x20 00000e7c: SWAP2 00000e7d: SWAP1 00000e7e: SWAP2 00000e7f: MSTORE 00000e80: KECCAK256 00000e81: SWAP1 00000e82: JUMP 00000e83: JUMPDEST 00000e84: SLOAD 00000e85: PUSH1 0x40 00000e87: MLOAD 00000e88: SWAP1 00000e89: DUP2 00000e8a: MSTORE 00000e8b: RETURN 00000e8c: JUMPDEST 00000e8d: PUSH1 0xc0 00000e8f: CALLDATASIZE 00000e90: PUSH1 0x03 00000e92: NOT 00000e93: ADD 00000e94: SLT 00000e95: PUSH2 0x0241 00000e98: JUMPI 00000e99: PUSH1 0x04 00000e9b: CALLDATALOAD 00000e9c: PUSH2 0x0ea4 00000e9f: DUP2 00000ea0: PUSH2 0x0230 00000ea3: JUMP 00000ea4: JUMPDEST 00000ea5: PUSH1 0x24 00000ea7: CALLDATALOAD 00000ea8: PUSH2 0x0eb0 00000eab: DUP2 00000eac: PUSH2 0x0230 00000eaf: JUMP 00000eb0: JUMPDEST 00000eb1: PUSH1 0x01 00000eb3: PUSH1 0x01 00000eb5: PUSH1 0x40 00000eb7: SHL 00000eb8: SUB 00000eb9: SWAP1 00000eba: PUSH1 0x44 00000ebc: CALLDATALOAD 00000ebd: DUP3 00000ebe: DUP2 00000ebf: GT 00000ec0: PUSH2 0x0241 00000ec3: JUMPI 00000ec4: PUSH2 0x0ed1 00000ec7: SWAP1 00000ec8: CALLDATASIZE 00000ec9: SWAP1 00000eca: PUSH1 0x04 00000ecc: ADD 00000ecd: PUSH2 0x07f4 00000ed0: JUMP 00000ed1: JUMPDEST 00000ed2: SWAP3 00000ed3: PUSH1 0x64 00000ed5: CALLDATALOAD 00000ed6: SWAP3 00000ed7: PUSH1 0xa4 00000ed9: CALLDATALOAD 00000eda: SWAP1 00000edb: DUP2 00000edc: GT 00000edd: PUSH2 0x0241 00000ee0: JUMPI 00000ee1: PUSH2 0x0eee 00000ee4: SWAP1 00000ee5: CALLDATASIZE 00000ee6: SWAP1 00000ee7: PUSH1 0x04 00000ee9: ADD 00000eea: PUSH2 0x0437 00000eed: JUMP 00000eee: JUMPDEST 00000eef: SWAP1 00000ef0: SWAP2 00000ef1: PUSH2 0x0ef8 00000ef4: PUSH2 0x21f8 00000ef7: JUMP 00000ef8: JUMPDEST 00000ef9: PUSH2 0x0f00 00000efc: PUSH2 0x2228 00000eff: JUMP 00000f00: JUMPDEST 00000f01: DUP5 00000f02: ISZERO 00000f03: PUSH2 0x1039 00000f06: JUMPI 00000f07: PUSH2 0x0c5b 00000f0a: SWAP6 00000f0b: PUSH2 0x0f7f 00000f0e: PUSH2 0x0f8d 00000f11: PUSH2 0x0ffc 00000f14: SWAP8 00000f15: PUSH2 0x0f1c 00000f18: PUSH2 0x1b91 00000f1b: JUMP 00000f1c: JUMPDEST 00000f1d: PUSH1 0x03 00000f1f: DUP2 00000f20: MSTORE 00000f21: SWAP8 00000f22: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00000f43: PUSH1 0x20 00000f45: DUP11 00000f46: ADD 00000f47: MSTORE 00000f48: PUSH1 0x40 00000f4a: DUP10 00000f4b: ADD 00000f4c: SWAP5 00000f4d: PUSH1 0x84 00000f4f: CALLDATALOAD 00000f50: DUP7 00000f51: MSTORE 00000f52: PUSH1 0xe0 00000f54: DUP11 00000f55: ADD 00000f56: MSTORE 00000f57: PUSH2 0x0f6e 00000f5a: PUSH1 0x09 00000f5c: SLOAD 00000f5d: SWAP1 00000f5e: PUSH1 0x01 00000f60: PUSH1 0x01 00000f62: PUSH1 0x40 00000f64: SHL 00000f65: SUB 00000f66: DUP3 00000f67: AND 00000f68: SWAP2 00000f69: PUSH1 0x60 00000f6b: SHR 00000f6c: SWAP1 00000f6d: JUMP 00000f6e: JUMPDEST 00000f6f: PUSH1 0x01 00000f71: PUSH1 0x01 00000f73: PUSH1 0xa0 00000f75: SHL 00000f76: SUB 00000f77: AND 00000f78: PUSH1 0x80 00000f7a: DUP12 00000f7b: ADD 00000f7c: MSTORE 00000f7d: SWAP4 00000f7e: JUMP 00000f7f: JUMPDEST 00000f80: DUP2 00000f81: PUSH2 0x0100 00000f84: DUP11 00000f85: ADD 00000f86: MSTORE 00000f87: CALLER 00000f88: SWAP1 00000f89: PUSH2 0x2b99 00000f8c: JUMP 00000f8d: JUMPDEST 00000f8e: PUSH1 0x01 00000f90: PUSH1 0x01 00000f92: PUSH1 0xa0 00000f94: SHL 00000f95: SUB 00000f96: AND 00000f97: PUSH1 0xa0 00000f99: DUP8 00000f9a: ADD 00000f9b: SWAP1 00000f9c: DUP2 00000f9d: MSTORE 00000f9e: SWAP5 00000f9f: PUSH2 0x0fa6 00000fa2: PUSH2 0x1c14 00000fa5: JUMP 00000fa6: JUMPDEST 00000fa7: SWAP5 00000fa8: DUP1 00000fa9: PUSH2 0x101c 00000fac: JUMPI 00000fad: JUMPDEST 00000fae: POP 00000faf: POP 00000fb0: PUSH1 0x60 00000fb2: DUP5 00000fb3: ADD 00000fb4: MLOAD 00000fb5: PUSH2 0x0120 00000fb8: DUP8 00000fb9: ADD 00000fba: MSTORE 00000fbb: PUSH1 0x80 00000fbd: DUP5 00000fbe: ADD 00000fbf: MLOAD 00000fc0: PUSH2 0x0140 00000fc3: DUP8 00000fc4: ADD 00000fc5: MSTORE 00000fc6: SWAP4 00000fc7: MLOAD 00000fc8: SWAP3 00000fc9: SWAP4 00000fca: SWAP2 00000fcb: SWAP3 00000fcc: PUSH2 0x0ff1 00000fcf: SWAP3 00000fd0: SWAP1 00000fd1: PUSH1 0x01 00000fd3: PUSH1 0x01 00000fd5: PUSH1 0xa0 00000fd7: SHL 00000fd8: SUB 00000fd9: AND 00000fda: JUMPDEST 00000fdb: SWAP2 00000fdc: PUSH2 0x0fe5 00000fdf: DUP7 00000fe0: MLOAD 00000fe1: ISZERO 00000fe2: ISZERO 00000fe3: SWAP1 00000fe4: JUMP 00000fe5: JUMPDEST 00000fe6: ISZERO 00000fe7: PUSH2 0x1013 00000fea: JUMPI 00000feb: POP 00000fec: SWAP1 00000fed: PUSH2 0x2cd1 00000ff0: JUMP 00000ff1: JUMPDEST 00000ff2: PUSH2 0x0d4a 00000ff5: CALLER 00000ff6: SWAP3 00000ff7: MLOAD 00000ff8: ISZERO 00000ff9: ISZERO 00000ffa: SWAP1 00000ffb: JUMP 00000ffc: JUMPDEST 00000ffd: PUSH2 0x0d4f 00001000: PUSH1 0x01 00001002: PUSH1 0x00 00001004: DUP1 00001005: MLOAD 00001006: PUSH1 0x20 00001008: PUSH2 0x3c59 0000100b: DUP4 0000100c: CODECOPY 0000100d: DUP2 0000100e: MLOAD 0000100f: SWAP2 00001010: MSTORE 00001011: SSTORE 00001012: JUMP 00001013: JUMPDEST 00001014: SWAP1 00001015: POP 00001016: MLOAD 00001017: SWAP1 00001018: PUSH2 0x2cd1 0000101b: JUMP 0000101c: JUMPDEST 0000101d: PUSH2 0x0ff1 00001020: SWAP5 00001021: SWAP6 00001022: POP 00001023: DUP2 00001024: PUSH2 0x1032 00001027: SWAP2 00001028: PUSH2 0x0fda 0000102b: SWAP4 0000102c: ADD 0000102d: SWAP1 0000102e: PUSH2 0x1c42 00001031: JUMP 00001032: JUMPDEST 00001033: SWAP5 00001034: SWAP4 00001035: PUSH2 0x0fad 00001038: JUMP 00001039: JUMPDEST 0000103a: PUSH1 0x40 0000103c: MLOAD 0000103d: PUSH4 0x33962ed7 00001042: PUSH1 0xe1 00001044: SHL 00001045: DUP2 00001046: MSTORE 00001047: PUSH1 0x04 00001049: SWAP1 0000104a: REVERT 0000104b: JUMPDEST 0000104c: CALLVALUE 0000104d: PUSH2 0x0241 00001050: JUMPI 00001051: PUSH1 0x00 00001053: CALLDATASIZE 00001054: PUSH1 0x03 00001056: NOT 00001057: ADD 00001058: SLT 00001059: PUSH2 0x0241 0000105c: JUMPI 0000105d: PUSH1 0x00 0000105f: DUP1 00001060: MLOAD 00001061: PUSH1 0x20 00001063: PUSH2 0x3bf9 00001066: DUP4 00001067: CODECOPY 00001068: DUP2 00001069: MLOAD 0000106a: SWAP2 0000106b: MSTORE 0000106c: SLOAD 0000106d: PUSH1 0x40 0000106f: MLOAD 00001070: PUSH1 0x01 00001072: PUSH1 0x01 00001074: PUSH1 0xa0 00001076: SHL 00001077: SUB 00001078: SWAP1 00001079: SWAP2 0000107a: AND 0000107b: DUP2 0000107c: MSTORE 0000107d: PUSH1 0x20 0000107f: SWAP1 00001080: RETURN 00001081: JUMPDEST 00001082: CALLVALUE 00001083: PUSH2 0x0241 00001086: JUMPI 00001087: PUSH1 0x20 00001089: CALLDATASIZE 0000108a: PUSH1 0x03 0000108c: NOT 0000108d: ADD 0000108e: SLT 0000108f: PUSH2 0x0241 00001092: JUMPI 00001093: PUSH1 0x04 00001095: CALLDATALOAD 00001096: PUSH2 0x109e 00001099: DUP2 0000109a: PUSH2 0x0230 0000109d: JUMP 0000109e: JUMPDEST 0000109f: PUSH1 0x01 000010a1: DUP1 000010a2: PUSH1 0xa0 000010a4: SHL 000010a5: SUB 000010a6: AND 000010a7: PUSH1 0x00 000010a9: MSTORE 000010aa: PUSH1 0x04 000010ac: PUSH1 0x20 000010ae: MSTORE 000010af: PUSH1 0x20 000010b1: PUSH1 0x40 000010b3: PUSH1 0x00 000010b5: KECCAK256 000010b6: SLOAD 000010b7: PUSH1 0x40 000010b9: MLOAD 000010ba: SWAP1 000010bb: DUP2 000010bc: MSTORE 000010bd: RETURN 000010be: JUMPDEST 000010bf: PUSH32 0xf15a0a3784dea9b4fe33bc98e2450745e262d310237b2868ea8ef56967ff3ecb 000010e0: PUSH2 0x10e8 000010e3: CALLDATASIZE 000010e4: PUSH2 0x04ec 000010e7: JUMP 000010e8: JUMPDEST 000010e9: PUSH1 0x01 000010eb: PUSH1 0x01 000010ed: PUSH1 0xa0 000010ef: SHL 000010f0: SUB 000010f1: DUP3 000010f2: DUP2 000010f3: AND 000010f4: PUSH1 0x00 000010f6: DUP2 000010f7: DUP2 000010f8: MSTORE 000010f9: PUSH1 0x08 000010fb: PUSH1 0x20 000010fd: SWAP1 000010fe: DUP2 000010ff: MSTORE 00001100: PUSH1 0x40 00001102: DUP1 00001103: DUP4 00001104: KECCAK256 00001105: SWAP5 00001106: DUP7 00001107: AND 00001108: DUP4 00001109: MSTORE 0000110a: SWAP4 0000110b: SWAP1 0000110c: MSTORE 0000110d: SWAP2 0000110e: DUP3 0000110f: KECCAK256 00001110: SLOAD 00001111: SWAP2 00001112: SWAP5 00001113: SWAP4 00001114: SWAP2 00001115: PUSH2 0x1149 00001118: SWAP2 00001119: DUP2 0000111a: PUSH2 0x114f 0000111d: JUMPI 0000111e: JUMPDEST 0000111f: POP 00001120: PUSH1 0x40 00001122: DUP1 00001123: MLOAD 00001124: PUSH1 0x01 00001126: PUSH1 0x01 00001128: PUSH1 0xa0 0000112a: SHL 0000112b: SUB 0000112c: SWAP5 0000112d: DUP6 0000112e: AND 0000112f: DUP2 00001130: MSTORE 00001131: SWAP5 00001132: SWAP1 00001133: SWAP4 00001134: AND 00001135: PUSH1 0x20 00001137: DUP6 00001138: ADD 00001139: MSTORE 0000113a: SWAP2 0000113b: DUP4 0000113c: ADD 0000113d: SWAP2 0000113e: SWAP1 0000113f: SWAP2 00001140: MSTORE 00001141: DUP2 00001142: SWAP1 00001143: PUSH1 0x60 00001145: DUP3 00001146: ADD 00001147: SWAP1 00001148: JUMP 00001149: JUMPDEST 0000114a: SUB 0000114b: SWAP1 0000114c: LOG1 0000114d: DUP1 0000114e: RETURN 0000114f: JUMPDEST 00001150: PUSH2 0x115a 00001153: DUP3 00001154: DUP6 00001155: DUP8 00001156: PUSH2 0x2d19 00001159: JUMP 0000115a: JUMPDEST 0000115b: POP 0000115c: DUP7 0000115d: MSTORE 0000115e: PUSH1 0x08 00001160: PUSH1 0x20 00001162: SWAP1 00001163: DUP2 00001164: MSTORE 00001165: PUSH1 0x40 00001167: DUP1 00001168: DUP9 00001169: KECCAK256 0000116a: PUSH1 0x01 0000116c: PUSH1 0x01 0000116e: PUSH1 0xa0 00001170: SHL 00001171: SUB 00001172: DUP8 00001173: AND 00001174: PUSH1 0x00 00001176: SWAP1 00001177: DUP2 00001178: MSTORE 00001179: SWAP3 0000117a: MSTORE 0000117b: SWAP1 0000117c: KECCAK256 0000117d: DUP7 0000117e: SWAP1 0000117f: SSTORE 00001180: CODESIZE 00001181: PUSH2 0x111e 00001184: JUMP 00001185: JUMPDEST 00001186: CALLVALUE 00001187: PUSH2 0x0241 0000118a: JUMPI 0000118b: PUSH1 0x40 0000118d: DUP1 0000118e: PUSH1 0x03 00001190: NOT 00001191: CALLDATASIZE 00001192: ADD 00001193: SLT 00001194: PUSH2 0x0241 00001197: JUMPI 00001198: PUSH1 0x04 0000119a: CALLDATALOAD 0000119b: SWAP1 0000119c: PUSH1 0x01 0000119e: PUSH1 0x01 000011a0: PUSH1 0x40 000011a2: SHL 000011a3: SUB 000011a4: DUP1 000011a5: DUP4 000011a6: GT 000011a7: PUSH2 0x0241 000011aa: JUMPI 000011ab: CALLDATASIZE 000011ac: PUSH1 0x23 000011ae: DUP5 000011af: ADD 000011b0: SLT 000011b1: ISZERO 000011b2: PUSH2 0x0241 000011b5: JUMPI 000011b6: DUP3 000011b7: PUSH1 0x04 000011b9: ADD 000011ba: CALLDATALOAD 000011bb: SWAP1 000011bc: DUP2 000011bd: GT 000011be: PUSH2 0x0241 000011c1: JUMPI 000011c2: PUSH1 0x24 000011c4: DUP4 000011c5: ADD 000011c6: SWAP3 000011c7: PUSH1 0x24 000011c9: CALLDATASIZE 000011ca: SWAP2 000011cb: DUP4 000011cc: PUSH1 0x05 000011ce: SHL 000011cf: ADD 000011d0: ADD 000011d1: GT 000011d2: PUSH2 0x0241 000011d5: JUMPI 000011d6: PUSH1 0x24 000011d8: CALLDATALOAD 000011d9: PUSH2 0x11e2 000011dc: CALLDATASIZE 000011dd: CALLER 000011de: PUSH2 0x20c8 000011e1: JUMP 000011e2: JUMPDEST 000011e3: PUSH1 0x00 000011e5: JUMPDEST 000011e6: DUP3 000011e7: DUP2 000011e8: LT 000011e9: PUSH2 0x11ee 000011ec: JUMPI 000011ed: STOP 000011ee: JUMPDEST 000011ef: DUP1 000011f0: PUSH2 0x11fc 000011f3: PUSH1 0x01 000011f5: SWAP3 000011f6: DUP6 000011f7: DUP9 000011f8: PUSH2 0x1ce0 000011fb: JUMP 000011fc: JUMPDEST 000011fd: CALLDATALOAD 000011fe: PUSH2 0x1206 00001201: DUP2 00001202: PUSH2 0x0230 00001205: JUMP 00001206: JUMPDEST 00001207: DUP3 00001208: DUP1 00001209: PUSH1 0xa0 0000120b: SHL 0000120c: SUB 0000120d: AND 0000120e: PUSH1 0x00 00001210: MSTORE 00001211: PUSH1 0x06 00001213: PUSH1 0x20 00001215: MSTORE 00001216: DUP3 00001217: DUP6 00001218: PUSH1 0x00 0000121a: KECCAK256 0000121b: SSTORE 0000121c: PUSH32 0xd431031d4b71a56115ead459a63b443f7d0ccd495e8e8c525ec48869d491763d 0000123d: DUP4 0000123e: PUSH2 0x1248 00001241: DUP4 00001242: DUP8 00001243: DUP11 00001244: PUSH2 0x1ce0 00001247: JUMP 00001248: JUMPDEST 00001249: CALLDATALOAD 0000124a: PUSH2 0x1252 0000124d: DUP2 0000124e: PUSH2 0x0230 00001251: JUMP 00001252: JUMPDEST 00001253: DUP8 00001254: MLOAD 00001255: PUSH1 0x01 00001257: PUSH1 0x01 00001259: PUSH1 0xa0 0000125b: SHL 0000125c: SUB 0000125d: SWAP2 0000125e: SWAP1 0000125f: SWAP2 00001260: AND 00001261: DUP2 00001262: MSTORE 00001263: PUSH1 0x20 00001265: DUP2 00001266: ADD 00001267: SWAP2 00001268: SWAP1 00001269: SWAP2 0000126a: MSTORE 0000126b: PUSH1 0x40 0000126d: SWAP1 0000126e: LOG1 0000126f: ADD 00001270: PUSH2 0x11e5 00001273: JUMP 00001274: JUMPDEST 00001275: PUSH1 0x01 00001277: PUSH1 0x01 00001279: PUSH1 0x40 0000127b: SHL 0000127c: SUB 0000127d: DUP2 0000127e: GT 0000127f: PUSH2 0x06f9 00001282: JUMPI 00001283: PUSH1 0x05 00001285: SHL 00001286: PUSH1 0x20 00001288: ADD 00001289: SWAP1 0000128a: JUMP 0000128b: JUMPDEST 0000128c: DUP1 0000128d: ISZERO 0000128e: ISZERO 0000128f: SUB 00001290: PUSH2 0x0241 00001293: JUMPI 00001294: JUMP 00001295: JUMPDEST 00001296: PUSH1 0x44 00001298: CALLDATALOAD 00001299: SWAP1 0000129a: PUSH2 0x12a2 0000129d: DUP3 0000129e: PUSH2 0x128b 000012a1: JUMP 000012a2: JUMPDEST 000012a3: JUMP 000012a4: JUMPDEST 000012a5: CALLDATALOAD 000012a6: SWAP1 000012a7: PUSH2 0x12a2 000012aa: DUP3 000012ab: PUSH2 0x128b 000012ae: JUMP 000012af: JUMPDEST 000012b0: CALLVALUE 000012b1: PUSH2 0x0241 000012b4: JUMPI 000012b5: PUSH1 0x60 000012b7: CALLDATASIZE 000012b8: PUSH1 0x03 000012ba: NOT 000012bb: ADD 000012bc: SLT 000012bd: PUSH2 0x0241 000012c0: JUMPI 000012c1: PUSH1 0x04 000012c3: CALLDATALOAD 000012c4: PUSH2 0x12cc 000012c7: DUP2 000012c8: PUSH2 0x0230 000012cb: JUMP 000012cc: JUMPDEST 000012cd: PUSH1 0x24 000012cf: CALLDATALOAD 000012d0: SWAP1 000012d1: PUSH1 0x01 000012d3: PUSH1 0x01 000012d5: PUSH1 0x40 000012d7: SHL 000012d8: SUB 000012d9: DUP3 000012da: GT 000012db: PUSH2 0x0241 000012de: JUMPI 000012df: CALLDATASIZE 000012e0: PUSH1 0x23 000012e2: DUP4 000012e3: ADD 000012e4: SLT 000012e5: ISZERO 000012e6: PUSH2 0x0241 000012e9: JUMPI 000012ea: DUP2 000012eb: PUSH1 0x04 000012ed: ADD 000012ee: CALLDATALOAD 000012ef: PUSH2 0x12f7 000012f2: DUP2 000012f3: PUSH2 0x1274 000012f6: JUMP 000012f7: JUMPDEST 000012f8: SWAP3 000012f9: PUSH2 0x1305 000012fc: PUSH1 0x40 000012fe: MLOAD 000012ff: SWAP5 00001300: DUP6 00001301: PUSH2 0x0762 00001304: JUMP 00001305: JUMPDEST 00001306: DUP2 00001307: DUP5 00001308: MSTORE 00001309: PUSH1 0x20 0000130b: SWAP2 0000130c: PUSH1 0x24 0000130e: PUSH1 0x20 00001310: DUP7 00001311: ADD 00001312: SWAP2 00001313: PUSH1 0x05 00001315: SHL 00001316: DUP4 00001317: ADD 00001318: ADD 00001319: SWAP2 0000131a: CALLDATASIZE 0000131b: DUP4 0000131c: GT 0000131d: PUSH2 0x0241 00001320: JUMPI 00001321: PUSH1 0x24 00001323: ADD 00001324: SWAP1 00001325: JUMPDEST 00001326: DUP3 00001327: DUP3 00001328: LT 00001329: PUSH2 0x133f 0000132c: JUMPI 0000132d: PUSH2 0x0019 00001330: DUP6 00001331: DUP8 00001332: PUSH2 0x1339 00001335: PUSH2 0x1295 00001338: JUMP 00001339: JUMPDEST 0000133a: SWAP2 0000133b: PUSH2 0x1cf5 0000133e: JUMP 0000133f: JUMPDEST 00001340: DUP2 00001341: CALLDATALOAD 00001342: DUP2 00001343: MSTORE 00001344: SWAP1 00001345: DUP4 00001346: ADD 00001347: SWAP1 00001348: DUP4 00001349: ADD 0000134a: PUSH2 0x1325 0000134d: JUMP 0000134e: JUMPDEST 0000134f: CALLVALUE 00001350: PUSH2 0x0241 00001353: JUMPI 00001354: PUSH1 0x00 00001356: CALLDATASIZE 00001357: PUSH1 0x03 00001359: NOT 0000135a: ADD 0000135b: SLT 0000135c: PUSH2 0x0241 0000135f: JUMPI 00001360: PUSH1 0x20 00001362: PUSH1 0x40 00001364: MLOAD 00001365: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00001386: DUP2 00001387: MSTORE 00001388: RETURN 00001389: JUMPDEST 0000138a: CALLVALUE 0000138b: PUSH2 0x0241 0000138e: JUMPI 0000138f: PUSH1 0x00 00001391: CALLDATASIZE 00001392: PUSH1 0x03 00001394: NOT 00001395: ADD 00001396: SLT 00001397: PUSH2 0x0241 0000139a: JUMPI 0000139b: PUSH1 0x09 0000139d: SLOAD 0000139e: PUSH1 0x01 000013a0: PUSH1 0x01 000013a2: PUSH1 0x40 000013a4: SHL 000013a5: SUB 000013a6: DUP2 000013a7: AND 000013a8: SWAP1 000013a9: PUSH1 0x60 000013ab: SHR 000013ac: PUSH2 0x0c40 000013af: JUMP 000013b0: JUMPDEST 000013b1: CALLVALUE 000013b2: PUSH2 0x0241 000013b5: JUMPI 000013b6: PUSH1 0x40 000013b8: CALLDATASIZE 000013b9: PUSH1 0x03 000013bb: NOT 000013bc: ADD 000013bd: SLT 000013be: PUSH2 0x0241 000013c1: JUMPI 000013c2: PUSH32 0x68bbe15866d95911bf2d5bf03cc2906f69a78d75d7816463608c73dcfa0aa561 000013e3: PUSH1 0x40 000013e5: PUSH1 0x04 000013e7: CALLDATALOAD 000013e8: PUSH2 0x13f0 000013eb: DUP2 000013ec: PUSH2 0x0230 000013ef: JUMP 000013f0: JUMPDEST 000013f1: PUSH1 0x24 000013f3: CALLDATALOAD 000013f4: PUSH2 0x13fc 000013f7: DUP2 000013f8: PUSH2 0x128b 000013fb: JUMP 000013fc: JUMPDEST 000013fd: PUSH2 0x1406 00001400: CALLDATASIZE 00001401: CALLER 00001402: PUSH2 0x20c8 00001405: JUMP 00001406: JUMPDEST 00001407: DUP1 00001408: ISZERO 00001409: PUSH2 0x1439 0000140c: JUMPI 0000140d: PUSH1 0xff 0000140f: PUSH1 0x01 00001411: SWAP3 00001412: JUMPDEST 00001413: PUSH1 0x01 00001415: DUP1 00001416: PUSH1 0xa0 00001418: SHL 00001419: SUB 0000141a: AND 0000141b: SWAP3 0000141c: DUP4 0000141d: PUSH1 0x00 0000141f: MSTORE 00001420: PUSH1 0x04 00001422: PUSH1 0x20 00001424: MSTORE 00001425: AND 00001426: DUP4 00001427: PUSH1 0x00 00001429: KECCAK256 0000142a: SSTORE 0000142b: DUP3 0000142c: MLOAD 0000142d: SWAP2 0000142e: DUP3 0000142f: MSTORE 00001430: ISZERO 00001431: ISZERO 00001432: PUSH1 0x20 00001434: DUP3 00001435: ADD 00001436: MSTORE 00001437: LOG1 00001438: STOP 00001439: JUMPDEST 0000143a: PUSH1 0xff 0000143c: PUSH1 0x00 0000143e: SWAP3 0000143f: PUSH2 0x1412 00001442: JUMP 00001443: JUMPDEST 00001444: CALLVALUE 00001445: PUSH2 0x0241 00001448: JUMPI 00001449: PUSH1 0x60 0000144b: CALLDATASIZE 0000144c: PUSH1 0x03 0000144e: NOT 0000144f: ADD 00001450: SLT 00001451: PUSH2 0x0241 00001454: JUMPI 00001455: PUSH1 0x01 00001457: PUSH2 0x146c 0000145a: PUSH1 0x44 0000145c: CALLDATALOAD 0000145d: PUSH1 0x00 0000145f: MSTORE 00001460: PUSH1 0x05 00001462: PUSH1 0x20 00001464: MSTORE 00001465: PUSH1 0x40 00001467: PUSH1 0x00 00001469: KECCAK256 0000146a: SWAP1 0000146b: JUMP 0000146c: JUMPDEST 0000146d: SLOAD 0000146e: PUSH1 0x0a 00001470: SLOAD 00001471: SWAP2 00001472: EQ 00001473: SWAP1 00001474: PUSH2 0x148d 00001477: SWAP1 00001478: PUSH1 0x01 0000147a: PUSH1 0x01 0000147c: PUSH1 0xa0 0000147e: SHL 0000147f: SUB 00001480: AND 00001481: JUMPDEST 00001482: PUSH1 0x01 00001484: PUSH1 0x01 00001486: PUSH1 0xa0 00001488: SHL 00001489: SUB 0000148a: AND 0000148b: SWAP1 0000148c: JUMP 0000148d: JUMPDEST 0000148e: PUSH1 0x40 00001490: MLOAD 00001491: PUSH4 0x03f77f11 00001496: PUSH1 0xe2 00001498: SHL 00001499: DUP2 0000149a: MSTORE 0000149b: PUSH1 0x24 0000149d: DUP1 0000149e: CALLDATALOAD 0000149f: PUSH1 0x04 000014a1: DUP4 000014a2: ADD 000014a3: MSTORE 000014a4: PUSH1 0x00 000014a6: SWAP1 000014a7: DUP3 000014a8: ADD 000014a9: MSTORE 000014aa: SWAP2 000014ab: SWAP1 000014ac: PUSH1 0x20 000014ae: SWAP1 000014af: DUP2 000014b0: DUP5 000014b1: PUSH1 0x44 000014b3: DUP2 000014b4: DUP5 000014b5: GAS 000014b6: STATICCALL 000014b7: SWAP4 000014b8: DUP5 000014b9: ISZERO 000014ba: PUSH2 0x1530 000014bd: JUMPI 000014be: PUSH1 0x00 000014c0: SWAP5 000014c1: PUSH2 0x1535 000014c4: JUMPI 000014c5: JUMPDEST 000014c6: POP 000014c7: DUP2 000014c8: PUSH1 0x04 000014ca: SWAP2 000014cb: PUSH1 0x40 000014cd: MLOAD 000014ce: SWAP3 000014cf: DUP4 000014d0: DUP1 000014d1: SWAP3 000014d2: PUSH4 0x1fd4d46f 000014d7: PUSH1 0xe1 000014d9: SHL 000014da: DUP3 000014db: MSTORE 000014dc: GAS 000014dd: STATICCALL 000014de: SWAP1 000014df: DUP2 000014e0: ISZERO 000014e1: PUSH2 0x1530 000014e4: JUMPI 000014e5: PUSH2 0x0c5b 000014e8: SWAP3 000014e9: PUSH1 0x00 000014eb: SWAP3 000014ec: PUSH2 0x1513 000014ef: JUMPI 000014f0: JUMPDEST 000014f1: POP 000014f2: POP 000014f3: PUSH1 0x40 000014f5: MLOAD 000014f6: SWAP4 000014f7: DUP5 000014f8: SWAP4 000014f9: DUP5 000014fa: PUSH1 0x40 000014fc: SWAP2 000014fd: SWAP5 000014fe: SWAP4 000014ff: SWAP3 00001500: PUSH1 0x60 00001502: DUP3 00001503: ADD 00001504: SWAP6 00001505: ISZERO 00001506: ISZERO 00001507: DUP3 00001508: MSTORE 00001509: ISZERO 0000150a: ISZERO 0000150b: PUSH1 0x20 0000150d: DUP3 0000150e: ADD 0000150f: MSTORE 00001510: ADD 00001511: MSTORE 00001512: JUMP 00001513: JUMPDEST 00001514: PUSH2 0x1529 00001517: SWAP3 00001518: POP 00001519: DUP1 0000151a: RETURNDATASIZE 0000151b: LT 0000151c: PUSH2 0x0949 0000151f: JUMPI 00001520: PUSH2 0x093a 00001523: DUP2 00001524: DUP4 00001525: PUSH2 0x0762 00001528: JUMP 00001529: JUMPDEST 0000152a: CODESIZE 0000152b: DUP1 0000152c: PUSH2 0x14f0 0000152f: JUMP 00001530: JUMPDEST 00001531: PUSH2 0x1e27 00001534: JUMP 00001535: JUMPDEST 00001536: PUSH1 0x04 00001538: SWAP2 00001539: SWAP5 0000153a: POP 0000153b: PUSH2 0x155a 0000153e: DUP4 0000153f: SWAP2 00001540: DUP3 00001541: RETURNDATASIZE 00001542: DUP5 00001543: GT 00001544: PUSH2 0x1562 00001547: JUMPI 00001548: JUMPDEST 00001549: PUSH2 0x1552 0000154c: DUP2 0000154d: DUP4 0000154e: PUSH2 0x0762 00001551: JUMP 00001552: JUMPDEST 00001553: DUP2 00001554: ADD 00001555: SWAP1 00001556: PUSH2 0x1e12 00001559: JUMP 0000155a: JUMPDEST 0000155b: SWAP5 0000155c: SWAP2 0000155d: POP 0000155e: PUSH2 0x14c5 00001561: JUMP 00001562: JUMPDEST 00001563: POP 00001564: RETURNDATASIZE 00001565: PUSH2 0x1548 00001568: JUMP 00001569: JUMPDEST 0000156a: CALLVALUE 0000156b: PUSH2 0x0241 0000156e: JUMPI 0000156f: PUSH1 0x80 00001571: CALLDATASIZE 00001572: PUSH1 0x03 00001574: NOT 00001575: ADD 00001576: SLT 00001577: PUSH2 0x0241 0000157a: JUMPI 0000157b: PUSH1 0x04 0000157d: PUSH1 0x24 0000157f: CALLDATALOAD 00001580: PUSH1 0x44 00001582: CALLDATALOAD 00001583: PUSH1 0x64 00001585: CALLDATALOAD 00001586: PUSH1 0x01 00001588: PUSH1 0x01 0000158a: PUSH1 0x40 0000158c: SHL 0000158d: SUB 0000158e: DUP2 0000158f: GT 00001590: PUSH2 0x0241 00001593: JUMPI 00001594: PUSH2 0x15a0 00001597: SWAP1 00001598: CALLDATASIZE 00001599: SWAP1 0000159a: DUP6 0000159b: ADD 0000159c: PUSH2 0x0437 0000159f: JUMP 000015a0: JUMPDEST 000015a1: PUSH2 0x15ab 000015a4: SWAP5 000015a5: SWAP2 000015a6: SWAP5 000015a7: PUSH2 0x21f8 000015aa: JUMP 000015ab: JUMPDEST 000015ac: PUSH2 0x15b3 000015af: PUSH2 0x2228 000015b2: JUMP 000015b3: JUMPDEST 000015b4: PUSH2 0x15bc 000015b7: DUP4 000015b8: PUSH2 0x2e05 000015bb: JUMP 000015bc: JUMPDEST 000015bd: PUSH1 0x09 000015bf: SLOAD 000015c0: PUSH1 0x01 000015c2: PUSH1 0x01 000015c4: PUSH1 0x40 000015c6: SHL 000015c7: SUB 000015c8: DUP2 000015c9: AND 000015ca: SWAP1 000015cb: PUSH1 0x60 000015cd: SHR 000015ce: SWAP4 000015cf: SWAP1 000015d0: DUP4 000015d1: CALLDATALOAD 000015d2: SUB 000015d3: PUSH2 0x17cf 000015d6: JUMPI 000015d7: PUSH1 0x0a 000015d9: SLOAD 000015da: DUP6 000015db: SWAP1 000015dc: PUSH2 0xffff 000015df: SWAP1 000015e0: PUSH2 0x161a 000015e3: SWAP1 000015e4: PUSH2 0x15f5 000015e7: SWAP1 000015e8: PUSH1 0x01 000015ea: PUSH1 0x01 000015ec: PUSH1 0xa0 000015ee: SHL 000015ef: SUB 000015f0: AND 000015f1: PUSH2 0x1481 000015f4: JUMP 000015f5: JUMPDEST 000015f6: PUSH1 0x40 000015f8: SWAP6 000015f9: DUP7 000015fa: MLOAD 000015fb: SWAP5 000015fc: DUP6 000015fd: DUP1 000015fe: SWAP5 000015ff: DUP2 00001600: SWAP4 00001601: PUSH4 0x108f78a5 00001606: PUSH1 0xe2 00001608: SHL 00001609: DUP4 0000160a: MSTORE 0000160b: PUSH1 0x00 0000160d: SWAP15 0000160e: DUP16 0000160f: SWAP9 00001610: DUP10 00001611: SWAP6 00001612: AND 00001613: DUP14 00001614: DUP6 00001615: ADD 00001616: PUSH2 0x1f9c 00001619: JUMP 0000161a: JUMPDEST 0000161b: SUB 0000161c: SWAP3 0000161d: GAS 0000161e: CALL 0000161f: DUP1 00001620: ISZERO 00001621: PUSH2 0x1530 00001624: JUMPI 00001625: DUP8 00001626: DUP9 00001627: SWAP1 00001628: DUP10 00001629: SWAP3 0000162a: PUSH2 0x17a5 0000162d: JUMPI 0000162e: JUMPDEST 0000162f: PUSH2 0x1639 00001632: SWAP3 00001633: SWAP4 00001634: POP 00001635: PUSH2 0x1fd1 00001638: JUMP 00001639: JUMPDEST 0000163a: DUP1 0000163b: MLOAD 0000163c: PUSH2 0x164d 0000163f: SWAP1 00001640: PUSH1 0x01 00001642: PUSH1 0x01 00001644: PUSH1 0xa0 00001646: SHL 00001647: SUB 00001648: AND 00001649: PUSH2 0x1481 0000164c: JUMP 0000164d: JUMPDEST 0000164e: PUSH1 0x01 00001650: PUSH1 0x01 00001652: PUSH1 0xa0 00001654: SHL 00001655: SUB 00001656: SWAP6 00001657: DUP7 00001658: AND 00001659: SUB 0000165a: PUSH2 0x1796 0000165d: JUMPI 0000165e: PUSH2 0x1665 00001661: PUSH2 0x1ffd 00001664: JUMP 00001665: JUMPDEST 00001666: PUSH2 0x1672 00001669: PUSH1 0x20 0000166b: DUP4 0000166c: ADD 0000166d: MLOAD 0000166e: PUSH2 0x1dd1 00001671: JUMP 00001672: JUMPDEST 00001673: MLOAD 00001674: SUB 00001675: PUSH2 0x1787 00001678: JUMPI 00001679: PUSH2 0x1681 0000167c: SWAP1 0000167d: PUSH2 0x2eba 00001680: JUMP 00001681: JUMPDEST 00001682: SWAP5 00001683: SWAP1 00001684: ISZERO 00001685: PUSH2 0x1778 00001688: JUMPI 00001689: PUSH1 0x80 0000168b: DUP6 0000168c: ADD 0000168d: MLOAD 0000168e: PUSH1 0x01 00001690: PUSH1 0x01 00001692: PUSH1 0xa0 00001694: SHL 00001695: SUB 00001696: AND 00001697: ADDRESS 00001698: SWAP2 00001699: AND 0000169a: SUB 0000169b: PUSH2 0x176a 0000169e: JUMPI 0000169f: DUP2 000016a0: DUP5 000016a1: ADD 000016a2: MLOAD 000016a3: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 000016c4: SUB 000016c5: PUSH2 0x175c 000016c8: JUMPI 000016c9: PUSH1 0x60 000016cb: DUP5 000016cc: ADD 000016cd: MLOAD 000016ce: SUB 000016cf: PUSH2 0x174f 000016d2: JUMPI 000016d3: POP 000016d4: POP 000016d5: PUSH1 0x01 000016d7: PUSH2 0x16e9 000016da: PUSH2 0x16e4 000016dd: DUP4 000016de: MLOAD 000016df: PUSH1 0xff 000016e1: AND 000016e2: SWAP1 000016e3: JUMP 000016e4: JUMPDEST 000016e5: PUSH2 0x2045 000016e8: JUMP 000016e9: JUMPDEST 000016ea: PUSH2 0x16f2 000016ed: DUP2 000016ee: PUSH2 0x1bf4 000016f1: JUMP 000016f2: JUMPDEST 000016f3: SUB 000016f4: PUSH2 0x1723 000016f7: JUMPI 000016f8: PUSH1 0xff 000016fa: PUSH2 0x1709 000016fd: SWAP3 000016fe: PUSH1 0x10 00001700: SHR 00001701: AND 00001702: ISZERO 00001703: ISZERO 00001704: SWAP1 00001705: PUSH2 0x248e 00001708: JUMP 00001709: JUMPDEST 0000170a: PUSH2 0x1720 0000170d: PUSH1 0x01 0000170f: PUSH1 0x00 00001711: DUP1 00001712: MLOAD 00001713: PUSH1 0x20 00001715: PUSH2 0x3c59 00001718: DUP4 00001719: CODECOPY 0000171a: DUP2 0000171b: MLOAD 0000171c: SWAP2 0000171d: MSTORE 0000171e: SSTORE 0000171f: JUMP 00001720: JUMPDEST 00001721: DUP1 00001722: RETURN 00001723: JUMPDEST 00001724: PUSH1 0xa0 00001726: DUP2 00001727: ADD 00001728: MLOAD 00001729: PUSH2 0x0100 0000172c: DUP3 0000172d: ADD 0000172e: MLOAD 0000172f: PUSH2 0x174a 00001732: SWAP4 00001733: POP 00001734: PUSH2 0x1745 00001737: SWAP2 00001738: PUSH1 0x01 0000173a: PUSH1 0x01 0000173c: PUSH1 0xa0 0000173e: SHL 0000173f: SUB 00001740: AND 00001741: PUSH2 0x2fd6 00001744: JUMP 00001745: JUMPDEST 00001746: PUSH2 0x308b 00001749: JUMP 0000174a: JUMPDEST 0000174b: PUSH2 0x1709 0000174e: JUMP 0000174f: JUMPDEST 00001750: MLOAD 00001751: PUSH4 0x322ebb25 00001756: PUSH1 0xe1 00001758: SHL 00001759: DUP2 0000175a: MSTORE 0000175b: REVERT 0000175c: JUMPDEST 0000175d: POP 0000175e: MLOAD 0000175f: PUSH4 0x05bd96c5 00001764: PUSH1 0xe5 00001766: SHL 00001767: DUP2 00001768: MSTORE 00001769: REVERT 0000176a: JUMPDEST 0000176b: POP 0000176c: MLOAD 0000176d: PUSH4 0x96ce0f8f 00001772: PUSH1 0xe0 00001774: SHL 00001775: DUP2 00001776: MSTORE 00001777: REVERT 00001778: JUMPDEST 00001779: POP 0000177a: POP 0000177b: MLOAD 0000177c: PUSH4 0x2d5b5e8f 00001781: PUSH1 0xe2 00001783: SHL 00001784: DUP2 00001785: MSTORE 00001786: REVERT 00001787: JUMPDEST 00001788: POP 00001789: POP 0000178a: MLOAD 0000178b: PUSH4 0xcc71abe9 00001790: PUSH1 0xe0 00001792: SHL 00001793: DUP2 00001794: MSTORE 00001795: REVERT 00001796: JUMPDEST 00001797: POP 00001798: POP 00001799: MLOAD 0000179a: PUSH4 0x1fc88361 0000179f: PUSH1 0xe2 000017a1: SHL 000017a2: DUP2 000017a3: MSTORE 000017a4: REVERT 000017a5: JUMPDEST 000017a6: POP 000017a7: POP 000017a8: POP 000017a9: PUSH2 0x17c6 000017ac: PUSH2 0x1639 000017af: SWAP2 000017b0: RETURNDATASIZE 000017b1: DUP1 000017b2: DUP11 000017b3: DUP4 000017b4: RETURNDATACOPY 000017b5: PUSH2 0x17be 000017b8: DUP2 000017b9: DUP4 000017ba: PUSH2 0x0762 000017bd: JUMP 000017be: JUMPDEST 000017bf: DUP2 000017c0: ADD 000017c1: SWAP1 000017c2: PUSH2 0x1e91 000017c5: JUMP 000017c6: JUMPDEST 000017c7: SWAP2 000017c8: SWAP3 000017c9: POP 000017ca: DUP3 000017cb: PUSH2 0x162e 000017ce: JUMP 000017cf: JUMPDEST 000017d0: PUSH1 0x40 000017d2: MLOAD 000017d3: PUSH4 0x15bc1189 000017d8: PUSH1 0xe2 000017da: SHL 000017db: DUP2 000017dc: MSTORE 000017dd: DUP4 000017de: SWAP1 000017df: REVERT 000017e0: JUMPDEST 000017e1: CALLVALUE 000017e2: PUSH2 0x0241 000017e5: JUMPI 000017e6: PUSH1 0x40 000017e8: CALLDATASIZE 000017e9: PUSH1 0x03 000017eb: NOT 000017ec: ADD 000017ed: SLT 000017ee: PUSH2 0x0241 000017f1: JUMPI 000017f2: PUSH1 0x20 000017f4: PUSH2 0x0e83 000017f7: PUSH1 0x24 000017f9: CALLDATALOAD 000017fa: PUSH2 0x1802 000017fd: DUP2 000017fe: PUSH2 0x0230 00001801: JUMP 00001802: JUMPDEST 00001803: PUSH1 0x04 00001805: CALLDATALOAD 00001806: PUSH1 0x00 00001808: MSTORE 00001809: PUSH1 0x07 0000180b: DUP4 0000180c: MSTORE 0000180d: PUSH1 0x40 0000180f: PUSH1 0x00 00001811: KECCAK256 00001812: SWAP1 00001813: PUSH1 0x01 00001815: DUP1 00001816: PUSH1 0xa0 00001818: SHL 00001819: SUB 0000181a: AND 0000181b: PUSH1 0x00 0000181d: MSTORE 0000181e: PUSH1 0x20 00001820: MSTORE 00001821: PUSH1 0x40 00001823: PUSH1 0x00 00001825: KECCAK256 00001826: SWAP1 00001827: JUMP 00001828: JUMPDEST 00001829: PUSH1 0x60 0000182b: CALLDATASIZE 0000182c: PUSH1 0x03 0000182e: NOT 0000182f: ADD 00001830: SLT 00001831: PUSH2 0x0241 00001834: JUMPI 00001835: PUSH1 0x04 00001837: CALLDATALOAD 00001838: PUSH2 0x1840 0000183b: DUP2 0000183c: PUSH2 0x0230 0000183f: JUMP 00001840: JUMPDEST 00001841: PUSH1 0x24 00001843: CALLDATALOAD 00001844: PUSH2 0x184c 00001847: DUP2 00001848: PUSH2 0x0230 0000184b: JUMP 0000184c: JUMPDEST 0000184d: PUSH1 0x44 0000184f: CALLDATALOAD 00001850: SWAP2 00001851: PUSH2 0x1858 00001854: PUSH2 0x21f8 00001857: JUMP 00001858: JUMPDEST 00001859: PUSH2 0x1860 0000185c: PUSH2 0x2228 0000185f: JUMP 00001860: JUMPDEST 00001861: DUP3 00001862: ISZERO 00001863: PUSH2 0x1039 00001866: JUMPI 00001867: PUSH1 0x01 00001869: PUSH1 0x01 0000186b: PUSH1 0xa0 0000186d: SHL 0000186e: SUB 0000186f: DUP3 00001870: AND 00001871: ISZERO 00001872: PUSH2 0x1928 00001875: JUMPI 00001876: PUSH2 0x1917 00001879: PUSH2 0x0ffc 0000187c: SWAP3 0000187d: PUSH2 0x190f 00001880: PUSH2 0x18fc 00001883: PUSH2 0x0c5b 00001886: SWAP7 00001887: PUSH2 0x188e 0000188a: PUSH2 0x1b91 0000188d: JUMP 0000188e: JUMPDEST 0000188f: PUSH1 0x04 00001891: DUP2 00001892: MSTORE 00001893: SWAP6 00001894: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 000018b5: PUSH1 0x20 000018b7: DUP9 000018b8: ADD 000018b9: MSTORE 000018ba: PUSH1 0x09 000018bc: SLOAD 000018bd: PUSH2 0x18e9 000018c0: SWAP1 000018c1: PUSH1 0x01 000018c3: PUSH1 0x01 000018c5: PUSH1 0x40 000018c7: SHL 000018c8: SUB 000018c9: DUP2 000018ca: AND 000018cb: SWAP1 000018cc: PUSH1 0x60 000018ce: SHR 000018cf: PUSH1 0x01 000018d1: PUSH1 0x01 000018d3: PUSH1 0xa0 000018d5: SHL 000018d6: SUB 000018d7: AND 000018d8: PUSH1 0x80 000018da: DUP11 000018db: ADD 000018dc: MSTORE 000018dd: PUSH1 0x40 000018df: DUP10 000018e0: ADD 000018e1: SWAP7 000018e2: SWAP1 000018e3: DUP8 000018e4: MSTORE 000018e5: PUSH2 0x3191 000018e8: JUMP 000018e9: JUMPDEST 000018ea: PUSH1 0xe0 000018ec: DUP9 000018ed: ADD 000018ee: MSTORE 000018ef: DUP2 000018f0: PUSH2 0x0100 000018f3: DUP9 000018f4: ADD 000018f5: MSTORE 000018f6: CALLER 000018f7: SWAP1 000018f8: PUSH2 0x2b99 000018fb: JUMP 000018fc: JUMPDEST 000018fd: PUSH1 0x01 000018ff: PUSH1 0x01 00001901: PUSH1 0xa0 00001903: SHL 00001904: SUB 00001905: AND 00001906: PUSH1 0xa0 00001908: DUP6 00001909: ADD 0000190a: DUP2 0000190b: SWAP1 0000190c: MSTORE 0000190d: SWAP1 0000190e: JUMP 0000190f: JUMPDEST 00001910: SWAP1 00001911: MLOAD 00001912: SWAP1 00001913: PUSH2 0x2cd1 00001916: JUMP 00001917: JUMPDEST 00001918: PUSH3 0x030d40 0000191c: PUSH2 0x0120 0000191f: DUP3 00001920: ADD 00001921: MSTORE 00001922: CALLER 00001923: CALLER 00001924: PUSH2 0x2b83 00001927: JUMP 00001928: JUMPDEST 00001929: PUSH1 0x40 0000192b: MLOAD 0000192c: PUSH4 0x04fe14e3 00001931: PUSH1 0xe5 00001933: SHL 00001934: DUP2 00001935: MSTORE 00001936: PUSH1 0x04 00001938: SWAP1 00001939: REVERT 0000193a: JUMPDEST 0000193b: PUSH2 0x19fc 0000193e: PUSH2 0x1987 00001941: SWAP8 00001942: SWAP9 00001943: SWAP3 00001944: SWAP5 00001945: SWAP6 00001946: SWAP9 00001947: PUSH2 0x194e 0000194a: PUSH2 0x21f8 0000194d: JUMP 0000194e: JUMPDEST 0000194f: PUSH2 0x1956 00001952: PUSH2 0x2228 00001955: JUMP 00001956: JUMPDEST 00001957: PUSH2 0x19ee 0000195a: PUSH2 0x19c9 0000195d: PUSH2 0x19d0 00001960: DUP11 00001961: DUP14 00001962: PUSH2 0x19a1 00001965: PUSH2 0x196c 00001968: PUSH2 0x1b91 0000196b: JUMP 0000196c: JUMPDEST 0000196d: SWAP15 0000196e: DUP16 0000196f: SWAP10 00001970: DUP1 00001971: PUSH1 0xc0 00001973: SHR 00001974: SWAP2 00001975: PUSH1 0x01 00001977: PUSH1 0x01 00001979: PUSH1 0x40 0000197b: SHL 0000197c: SUB 0000197d: DUP1 0000197e: DUP4 0000197f: PUSH1 0x80 00001981: SHR 00001982: AND 00001983: SWAP3 00001984: AND 00001985: SWAP1 00001986: JUMP 00001987: JUMPDEST 00001988: POP 00001989: SWAP8 0000198a: SWAP1 0000198b: SWAP11 0000198c: PUSH1 0x20 0000198e: DUP12 0000198f: ADD 00001990: SWAP12 00001991: PUSH1 0x40 00001993: DUP13 00001994: ADD 00001995: SWAP10 00001996: DUP11 00001997: MSTORE 00001998: DUP13 00001999: MSTORE 0000199a: DUP2 0000199b: ADD 0000199c: SWAP1 0000199d: PUSH2 0x2253 000019a0: JUMP 000019a1: JUMPDEST 000019a2: SWAP7 000019a3: SWAP3 000019a4: SWAP12 000019a5: SWAP2 000019a6: SWAP4 000019a7: PUSH2 0x0120 000019aa: DUP4 000019ab: SWAP10 000019ac: SWAP3 000019ad: SWAP10 000019ae: ADD 000019af: SWAP13 000019b0: PUSH1 0xe0 000019b2: DUP5 000019b3: ADD 000019b4: SWAP10 000019b5: PUSH2 0x0140 000019b8: DUP6 000019b9: ADD 000019ba: SWAP10 000019bb: DUP11 000019bc: MSTORE 000019bd: DUP11 000019be: MSTORE 000019bf: DUP14 000019c0: MSTORE 000019c1: DUP3 000019c2: SWAP1 000019c3: PUSH1 0xff 000019c5: AND 000019c6: SWAP1 000019c7: MSTORE 000019c8: JUMP 000019c9: JUMPDEST 000019ca: MLOAD 000019cb: PUSH1 0xff 000019cd: AND 000019ce: SWAP1 000019cf: JUMP 000019d0: JUMPDEST 000019d1: SWAP10 000019d2: MLOAD 000019d3: SWAP7 000019d4: MLOAD 000019d5: SWAP9 000019d6: MLOAD 000019d7: SWAP5 000019d8: MLOAD 000019d9: SWAP4 000019da: MLOAD 000019db: SWAP5 000019dc: DUP14 000019dd: DUP13 000019de: PUSH1 0x40 000019e0: MLOAD 000019e1: SWAP12 000019e2: DUP13 000019e3: SWAP11 000019e4: PUSH1 0x20 000019e6: DUP13 000019e7: ADD 000019e8: SWAP15 000019e9: DUP16 000019ea: PUSH2 0x22c3 000019ed: JUMP 000019ee: JUMPDEST 000019ef: SUB 000019f0: PUSH1 0x1f 000019f2: NOT 000019f3: DUP2 000019f4: ADD 000019f5: DUP4 000019f6: MSTORE 000019f7: DUP3 000019f8: PUSH2 0x0762 000019fb: JUMP 000019fc: JUMPDEST 000019fd: MLOAD 000019fe: SWAP1 000019ff: KECCAK256 00001a00: PUSH2 0x1a13 00001a03: DUP4 00001a04: PUSH1 0x00 00001a06: MSTORE 00001a07: PUSH1 0x05 00001a09: PUSH1 0x20 00001a0b: MSTORE 00001a0c: PUSH1 0x40 00001a0e: PUSH1 0x00 00001a10: KECCAK256 00001a11: SWAP1 00001a12: JUMP 00001a13: JUMPDEST 00001a14: SLOAD 00001a15: SUB 00001a16: PUSH2 0x1a84 00001a19: JUMPI 00001a1a: PUSH1 0x60 00001a1c: DUP6 00001a1d: ADD 00001a1e: DUP3 00001a1f: SWAP1 00001a20: MSTORE 00001a21: PUSH1 0x01 00001a23: PUSH1 0x01 00001a25: PUSH1 0xa0 00001a27: SHL 00001a28: SUB 00001a29: AND 00001a2a: PUSH1 0xa0 00001a2c: DUP6 00001a2d: ADD 00001a2e: MSTORE 00001a2f: PUSH2 0x1a6d 00001a32: SWAP5 00001a33: PUSH2 0x1a68 00001a36: SWAP4 00001a37: PUSH2 0x1a62 00001a3a: SWAP4 00001a3b: PUSH2 0x1a4d 00001a3e: SWAP3 00001a3f: SWAP2 00001a40: SWAP1 00001a41: PUSH2 0x0100 00001a44: DUP9 00001a45: ADD 00001a46: MSTORE 00001a47: CALLDATASIZE 00001a48: SWAP2 00001a49: PUSH2 0x07bd 00001a4c: JUMP 00001a4d: JUMPDEST 00001a4e: PUSH1 0xc0 00001a50: DUP6 00001a51: ADD 00001a52: MSTORE 00001a53: PUSH1 0x00 00001a55: MSTORE 00001a56: PUSH1 0x05 00001a58: PUSH1 0x20 00001a5a: MSTORE 00001a5b: PUSH1 0x40 00001a5d: PUSH1 0x00 00001a5f: KECCAK256 00001a60: SWAP1 00001a61: JUMP 00001a62: JUMPDEST 00001a63: PUSH1 0x01 00001a65: SWAP1 00001a66: SSTORE 00001a67: JUMP 00001a68: JUMPDEST 00001a69: PUSH2 0x260f 00001a6c: JUMP 00001a6d: JUMPDEST 00001a6e: PUSH2 0x12a2 00001a71: PUSH1 0x01 00001a73: PUSH1 0x00 00001a75: DUP1 00001a76: MLOAD 00001a77: PUSH1 0x20 00001a79: PUSH2 0x3c59 00001a7c: DUP4 00001a7d: CODECOPY 00001a7e: DUP2 00001a7f: MLOAD 00001a80: SWAP2 00001a81: MSTORE 00001a82: SSTORE 00001a83: JUMP 00001a84: JUMPDEST 00001a85: PUSH1 0x40 00001a87: MLOAD 00001a88: PUSH4 0x617ef7b1 00001a8d: PUSH1 0xe0 00001a8f: SHL 00001a90: DUP2 00001a91: MSTORE 00001a92: PUSH1 0x04 00001a94: SWAP1 00001a95: REVERT 00001a96: JUMPDEST 00001a97: SWAP1 00001a98: PUSH2 0x1b02 00001a9b: SWAP1 00001a9c: PUSH2 0x1aa4 00001a9f: DUP4 00001aa0: PUSH2 0x21e8 00001aa3: JUMP 00001aa4: JUMPDEST 00001aa5: PUSH2 0x1aac 00001aa8: PUSH2 0x359a 00001aab: JUMP 00001aac: JUMPDEST 00001aad: PUSH2 0x1ab4 00001ab0: PUSH2 0x359a 00001ab3: JUMP 00001ab4: JUMPDEST 00001ab5: PUSH1 0x00 00001ab7: DUP1 00001ab8: MLOAD 00001ab9: PUSH1 0x20 00001abb: PUSH2 0x3c39 00001abe: DUP4 00001abf: CODECOPY 00001ac0: DUP2 00001ac1: MLOAD 00001ac2: SWAP2 00001ac3: MSTORE 00001ac4: DUP1 00001ac5: SLOAD 00001ac6: PUSH1 0xff 00001ac8: NOT 00001ac9: AND 00001aca: SWAP1 00001acb: SSTORE 00001acc: PUSH2 0x1ad3 00001acf: PUSH2 0x359a 00001ad2: JUMP 00001ad3: JUMPDEST 00001ad4: PUSH2 0x1adb 00001ad7: PUSH2 0x359a 00001ada: JUMP 00001adb: JUMPDEST 00001adc: PUSH1 0x01 00001ade: PUSH1 0x00 00001ae0: DUP1 00001ae1: MLOAD 00001ae2: PUSH1 0x20 00001ae4: PUSH2 0x3c59 00001ae7: DUP4 00001ae8: CODECOPY 00001ae9: DUP2 00001aea: MLOAD 00001aeb: SWAP2 00001aec: MSTORE 00001aed: SSTORE 00001aee: PUSH2 0x1af5 00001af1: PUSH2 0x359a 00001af4: JUMP 00001af5: JUMPDEST 00001af6: PUSH2 0x1afd 00001af9: PUSH2 0x359a 00001afc: JUMP 00001afd: JUMPDEST 00001afe: PUSH2 0x2700 00001b01: JUMP 00001b02: JUMPDEST 00001b03: PUSH1 0x01 00001b05: DUP1 00001b06: PUSH1 0xa0 00001b08: SHL 00001b09: SUB 00001b0a: AND 00001b0b: PUSH1 0x01 00001b0d: PUSH1 0x01 00001b0f: PUSH1 0x60 00001b11: SHL 00001b12: SUB 00001b13: PUSH1 0xa0 00001b15: SHL 00001b16: PUSH1 0x01 00001b18: SLOAD 00001b19: AND 00001b1a: OR 00001b1b: PUSH1 0x01 00001b1d: SSTORE 00001b1e: JUMP 00001b1f: JUMPDEST 00001b20: DUP1 00001b21: PUSH2 0x1b34 00001b24: JUMPI 00001b25: POP 00001b26: PUSH1 0x01 00001b28: SLOAD 00001b29: PUSH1 0x01 00001b2b: PUSH1 0x01 00001b2d: PUSH1 0xa0 00001b2f: SHL 00001b30: SUB 00001b31: AND 00001b32: SWAP1 00001b33: JUMP 00001b34: JUMPDEST 00001b35: PUSH1 0x01 00001b37: DUP2 00001b38: SUB 00001b39: PUSH2 0x1b52 00001b3c: JUMPI 00001b3d: POP 00001b3e: PUSH1 0x0a 00001b40: SLOAD 00001b41: PUSH2 0x0511 00001b44: SWAP1 00001b45: PUSH1 0x01 00001b47: PUSH1 0x01 00001b49: PUSH1 0xa0 00001b4b: SHL 00001b4c: SUB 00001b4d: AND 00001b4e: PUSH2 0x1481 00001b51: JUMP 00001b52: JUMPDEST 00001b53: PUSH1 0x02 00001b55: DUP2 00001b56: SUB 00001b57: PUSH2 0x1b70 00001b5a: JUMPI 00001b5b: POP 00001b5c: PUSH1 0x02 00001b5e: SLOAD 00001b5f: PUSH2 0x0511 00001b62: SWAP1 00001b63: PUSH1 0x01 00001b65: PUSH1 0x01 00001b67: PUSH1 0xa0 00001b69: SHL 00001b6a: SUB 00001b6b: AND 00001b6c: PUSH2 0x1481 00001b6f: JUMP 00001b70: JUMPDEST 00001b71: PUSH1 0x05 00001b73: EQ 00001b74: PUSH2 0x1b7c 00001b77: JUMPI 00001b78: PUSH1 0x00 00001b7a: SWAP1 00001b7b: JUMP 00001b7c: JUMPDEST 00001b7d: PUSH1 0x03 00001b7f: SLOAD 00001b80: PUSH2 0x0511 00001b83: SWAP1 00001b84: PUSH1 0x01 00001b86: PUSH1 0x01 00001b88: PUSH1 0xa0 00001b8a: SHL 00001b8b: SUB 00001b8c: AND 00001b8d: PUSH2 0x1481 00001b90: JUMP 00001b91: JUMPDEST 00001b92: PUSH1 0x40 00001b94: MLOAD 00001b95: SWAP1 00001b96: PUSH2 0x0160 00001b99: DUP3 00001b9a: ADD 00001b9b: DUP3 00001b9c: DUP2 00001b9d: LT 00001b9e: PUSH1 0x01 00001ba0: PUSH1 0x01 00001ba2: PUSH1 0x40 00001ba4: SHL 00001ba5: SUB 00001ba6: DUP3 00001ba7: GT 00001ba8: OR 00001ba9: PUSH2 0x06f9 00001bac: JUMPI 00001bad: PUSH1 0x40 00001baf: MSTORE 00001bb0: PUSH1 0x60 00001bb2: PUSH2 0x0140 00001bb5: DUP4 00001bb6: PUSH1 0x00 00001bb8: DUP1 00001bb9: DUP3 00001bba: MSTORE 00001bbb: DUP1 00001bbc: PUSH1 0x20 00001bbe: DUP4 00001bbf: ADD 00001bc0: MSTORE 00001bc1: DUP1 00001bc2: PUSH1 0x40 00001bc4: DUP4 00001bc5: ADD 00001bc6: MSTORE 00001bc7: DUP1 00001bc8: DUP5 00001bc9: DUP4 00001bca: ADD 00001bcb: MSTORE 00001bcc: DUP1 00001bcd: PUSH1 0x80 00001bcf: DUP4 00001bd0: ADD 00001bd1: MSTORE 00001bd2: DUP1 00001bd3: PUSH1 0xa0 00001bd5: DUP4 00001bd6: ADD 00001bd7: MSTORE 00001bd8: DUP4 00001bd9: PUSH1 0xc0 00001bdb: DUP4 00001bdc: ADD 00001bdd: MSTORE 00001bde: DUP4 00001bdf: PUSH1 0xe0 00001be1: DUP4 00001be2: ADD 00001be3: MSTORE 00001be4: DUP1 00001be5: PUSH2 0x0100 00001be8: DUP4 00001be9: ADD 00001bea: MSTORE 00001beb: PUSH2 0x0120 00001bee: DUP3 00001bef: ADD 00001bf0: MSTORE 00001bf1: ADD 00001bf2: MSTORE 00001bf3: JUMP 00001bf4: JUMPDEST 00001bf5: PUSH1 0x05 00001bf7: GT 00001bf8: ISZERO 00001bf9: PUSH2 0x1bfe 00001bfc: JUMPI 00001bfd: JUMP 00001bfe: JUMPDEST 00001bff: PUSH4 0x4e487b71 00001c04: PUSH1 0xe0 00001c06: SHL 00001c07: PUSH1 0x00 00001c09: MSTORE 00001c0a: PUSH1 0x21 00001c0c: PUSH1 0x04 00001c0e: MSTORE 00001c0f: PUSH1 0x24 00001c11: PUSH1 0x00 00001c13: REVERT 00001c14: JUMPDEST 00001c15: PUSH1 0x40 00001c17: MLOAD 00001c18: SWAP1 00001c19: PUSH2 0x1c21 00001c1c: DUP3 00001c1d: PUSH2 0x06de 00001c20: JUMP 00001c21: JUMPDEST 00001c22: PUSH1 0x60 00001c24: PUSH1 0x80 00001c26: DUP4 00001c27: PUSH1 0x00 00001c29: DUP2 00001c2a: MSTORE 00001c2b: PUSH1 0x00 00001c2d: PUSH1 0x20 00001c2f: DUP3 00001c30: ADD 00001c31: MSTORE 00001c32: PUSH1 0x00 00001c34: PUSH1 0x40 00001c36: DUP3 00001c37: ADD 00001c38: MSTORE 00001c39: PUSH1 0x00 00001c3b: DUP4 00001c3c: DUP3 00001c3d: ADD 00001c3e: MSTORE 00001c3f: ADD 00001c40: MSTORE 00001c41: JUMP 00001c42: JUMPDEST 00001c43: SWAP1 00001c44: PUSH1 0x20 00001c46: DUP3 00001c47: DUP3 00001c48: SUB 00001c49: SLT 00001c4a: PUSH2 0x0241 00001c4d: JUMPI 00001c4e: DUP2 00001c4f: CALLDATALOAD 00001c50: PUSH1 0x01 00001c52: PUSH1 0x01 00001c54: PUSH1 0x40 00001c56: SHL 00001c57: SUB 00001c58: SWAP3 00001c59: DUP4 00001c5a: DUP3 00001c5b: GT 00001c5c: PUSH2 0x0241 00001c5f: JUMPI 00001c60: ADD 00001c61: SWAP1 00001c62: PUSH1 0xa0 00001c64: DUP3 00001c65: DUP3 00001c66: SUB 00001c67: SLT 00001c68: PUSH2 0x0241 00001c6b: JUMPI 00001c6c: PUSH1 0x40 00001c6e: MLOAD 00001c6f: SWAP3 00001c70: PUSH2 0x1c78 00001c73: DUP5 00001c74: PUSH2 0x06de 00001c77: JUMP 00001c78: JUMPDEST 00001c79: DUP3 00001c7a: CALLDATALOAD 00001c7b: PUSH2 0x1c83 00001c7e: DUP2 00001c7f: PUSH2 0x128b 00001c82: JUMP 00001c83: JUMPDEST 00001c84: DUP5 00001c85: MSTORE 00001c86: PUSH1 0x20 00001c88: DUP4 00001c89: ADD 00001c8a: CALLDATALOAD 00001c8b: PUSH2 0x1c93 00001c8e: DUP2 00001c8f: PUSH2 0x0230 00001c92: JUMP 00001c93: JUMPDEST 00001c94: PUSH1 0x20 00001c96: DUP6 00001c97: ADD 00001c98: MSTORE 00001c99: PUSH1 0x40 00001c9b: DUP4 00001c9c: ADD 00001c9d: CALLDATALOAD 00001c9e: PUSH1 0x40 00001ca0: DUP6 00001ca1: ADD 00001ca2: MSTORE 00001ca3: PUSH1 0x60 00001ca5: DUP4 00001ca6: ADD 00001ca7: CALLDATALOAD 00001ca8: PUSH1 0x60 00001caa: DUP6 00001cab: ADD 00001cac: MSTORE 00001cad: PUSH1 0x80 00001caf: DUP4 00001cb0: ADD 00001cb1: CALLDATALOAD 00001cb2: SWAP1 00001cb3: DUP2 00001cb4: GT 00001cb5: PUSH2 0x0241 00001cb8: JUMPI 00001cb9: PUSH2 0x1cc2 00001cbc: SWAP3 00001cbd: ADD 00001cbe: PUSH2 0x07f4 00001cc1: JUMP 00001cc2: JUMPDEST 00001cc3: PUSH1 0x80 00001cc5: DUP3 00001cc6: ADD 00001cc7: MSTORE 00001cc8: SWAP1 00001cc9: JUMP 00001cca: JUMPDEST 00001ccb: PUSH4 0x4e487b71 00001cd0: PUSH1 0xe0 00001cd2: SHL 00001cd3: PUSH1 0x00 00001cd5: MSTORE 00001cd6: PUSH1 0x32 00001cd8: PUSH1 0x04 00001cda: MSTORE 00001cdb: PUSH1 0x24 00001cdd: PUSH1 0x00 00001cdf: REVERT 00001ce0: JUMPDEST 00001ce1: SWAP2 00001ce2: SWAP1 00001ce3: DUP2 00001ce4: LT 00001ce5: ISZERO 00001ce6: PUSH2 0x1cf0 00001ce9: JUMPI 00001cea: PUSH1 0x05 00001cec: SHL 00001ced: ADD 00001cee: SWAP1 00001cef: JUMP 00001cf0: JUMPDEST 00001cf1: PUSH2 0x1cca 00001cf4: JUMP 00001cf5: JUMPDEST 00001cf6: SWAP1 00001cf7: SWAP3 00001cf8: SWAP2 00001cf9: SWAP3 00001cfa: PUSH2 0x1d03 00001cfd: CALLDATASIZE 00001cfe: CALLER 00001cff: PUSH2 0x20c8 00001d02: JUMP 00001d03: JUMPDEST 00001d04: DUP2 00001d05: EXTCODESIZE 00001d06: ISZERO 00001d07: PUSH2 0x1dbf 00001d0a: JUMPI 00001d0b: PUSH1 0x00 00001d0d: JUMPDEST 00001d0e: DUP2 00001d0f: MLOAD 00001d10: DUP2 00001d11: LT 00001d12: ISZERO 00001d13: PUSH2 0x1db8 00001d16: JUMPI 00001d17: DUP1 00001d18: PUSH32 0xb7e2e36d837b3e9a99d8c3de2eed62d21e4b1550a939fe020796d059a023800a 00001d39: DUP7 00001d3a: PUSH2 0x1d45 00001d3d: PUSH1 0x01 00001d3f: SWAP5 00001d40: DUP7 00001d41: PUSH2 0x1dfe 00001d44: JUMP 00001d45: JUMPDEST 00001d46: MLOAD 00001d47: PUSH1 0x00 00001d49: DUP3 00001d4a: ISZERO 00001d4b: PUSH2 0x1db0 00001d4e: JUMPI 00001d4f: POP 00001d50: PUSH1 0xff 00001d52: DUP6 00001d53: JUMPDEST 00001d54: AND 00001d55: PUSH2 0x1d83 00001d58: DUP9 00001d59: PUSH2 0x1d6c 00001d5c: DUP5 00001d5d: PUSH1 0x00 00001d5f: MSTORE 00001d60: PUSH1 0x07 00001d62: PUSH1 0x20 00001d64: MSTORE 00001d65: PUSH1 0x40 00001d67: PUSH1 0x00 00001d69: KECCAK256 00001d6a: SWAP1 00001d6b: JUMP 00001d6c: JUMPDEST 00001d6d: SWAP1 00001d6e: PUSH1 0x01 00001d70: DUP1 00001d71: PUSH1 0xa0 00001d73: SHL 00001d74: SUB 00001d75: AND 00001d76: PUSH1 0x00 00001d78: MSTORE 00001d79: PUSH1 0x20 00001d7b: MSTORE 00001d7c: PUSH1 0x40 00001d7e: PUSH1 0x00 00001d80: KECCAK256 00001d81: SWAP1 00001d82: JUMP 00001d83: JUMPDEST 00001d84: SSTORE 00001d85: PUSH1 0x40 00001d87: DUP1 00001d88: MLOAD 00001d89: PUSH1 0x01 00001d8b: PUSH1 0x01 00001d8d: PUSH1 0xa0 00001d8f: SHL 00001d90: SUB 00001d91: DUP10 00001d92: AND 00001d93: DUP2 00001d94: MSTORE 00001d95: PUSH1 0x20 00001d97: DUP2 00001d98: ADD 00001d99: SWAP3 00001d9a: SWAP1 00001d9b: SWAP3 00001d9c: MSTORE 00001d9d: SWAP2 00001d9e: ISZERO 00001d9f: ISZERO 00001da0: SWAP2 00001da1: DUP2 00001da2: ADD 00001da3: SWAP2 00001da4: SWAP1 00001da5: SWAP2 00001da6: MSTORE 00001da7: PUSH1 0x60 00001da9: SWAP1 00001daa: LOG1 00001dab: ADD 00001dac: PUSH2 0x1d0d 00001daf: JUMP 00001db0: JUMPDEST 00001db1: PUSH1 0xff 00001db3: SWAP1 00001db4: PUSH2 0x1d53 00001db7: JUMP 00001db8: JUMPDEST 00001db9: POP 00001dba: POP 00001dbb: POP 00001dbc: SWAP1 00001dbd: POP 00001dbe: JUMP 00001dbf: JUMPDEST 00001dc0: PUSH1 0x40 00001dc2: MLOAD 00001dc3: PUSH4 0xaefe72b9 00001dc8: PUSH1 0xe0 00001dca: SHL 00001dcb: DUP2 00001dcc: MSTORE 00001dcd: PUSH1 0x04 00001dcf: SWAP1 00001dd0: REVERT 00001dd1: JUMPDEST 00001dd2: DUP1 00001dd3: MLOAD 00001dd4: ISZERO 00001dd5: PUSH2 0x1cf0 00001dd8: JUMPI 00001dd9: PUSH1 0x20 00001ddb: ADD 00001ddc: SWAP1 00001ddd: JUMP 00001dde: JUMPDEST 00001ddf: DUP1 00001de0: MLOAD 00001de1: PUSH1 0x01 00001de3: LT 00001de4: ISZERO 00001de5: PUSH2 0x1cf0 00001de8: JUMPI 00001de9: PUSH1 0x40 00001deb: ADD 00001dec: SWAP1 00001ded: JUMP 00001dee: JUMPDEST 00001def: DUP1 00001df0: MLOAD 00001df1: PUSH1 0x02 00001df3: LT 00001df4: ISZERO 00001df5: PUSH2 0x1cf0 00001df8: JUMPI 00001df9: PUSH1 0x60 00001dfb: ADD 00001dfc: SWAP1 00001dfd: JUMP 00001dfe: JUMPDEST 00001dff: DUP1 00001e00: MLOAD 00001e01: DUP3 00001e02: LT 00001e03: ISZERO 00001e04: PUSH2 0x1cf0 00001e07: JUMPI 00001e08: PUSH1 0x20 00001e0a: SWAP2 00001e0b: PUSH1 0x05 00001e0d: SHL 00001e0e: ADD 00001e0f: ADD 00001e10: SWAP1 00001e11: JUMP 00001e12: JUMPDEST 00001e13: SWAP1 00001e14: DUP2 00001e15: PUSH1 0x20 00001e17: SWAP2 00001e18: SUB 00001e19: SLT 00001e1a: PUSH2 0x0241 00001e1d: JUMPI 00001e1e: MLOAD 00001e1f: PUSH2 0x0511 00001e22: DUP2 00001e23: PUSH2 0x128b 00001e26: JUMP 00001e27: JUMPDEST 00001e28: PUSH1 0x40 00001e2a: MLOAD 00001e2b: RETURNDATASIZE 00001e2c: PUSH1 0x00 00001e2e: DUP3 00001e2f: RETURNDATACOPY 00001e30: RETURNDATASIZE 00001e31: SWAP1 00001e32: REVERT 00001e33: JUMPDEST 00001e34: SWAP1 00001e35: DUP2 00001e36: PUSH1 0x20 00001e38: SWAP2 00001e39: SUB 00001e3a: SLT 00001e3b: PUSH2 0x0241 00001e3e: JUMPI 00001e3f: MLOAD 00001e40: SWAP1 00001e41: JUMP 00001e42: JUMPDEST 00001e43: SWAP1 00001e44: SWAP3 00001e45: SWAP2 00001e46: SWAP3 00001e47: PUSH2 0x1e4f 00001e4a: DUP2 00001e4b: PUSH2 0x07a2 00001e4e: JUMP 00001e4f: JUMPDEST 00001e50: SWAP2 00001e51: PUSH2 0x1e5d 00001e54: PUSH1 0x40 00001e56: MLOAD 00001e57: SWAP4 00001e58: DUP5 00001e59: PUSH2 0x0762 00001e5c: JUMP 00001e5d: JUMPDEST 00001e5e: DUP3 00001e5f: SWAP5 00001e60: DUP3 00001e61: DUP5 00001e62: MSTORE 00001e63: DUP3 00001e64: DUP3 00001e65: ADD 00001e66: GT 00001e67: PUSH2 0x0241 00001e6a: JUMPI 00001e6b: PUSH1 0x20 00001e6d: PUSH2 0x12a2 00001e70: SWAP4 00001e71: ADD 00001e72: SWAP1 00001e73: PUSH2 0x0da8 00001e76: JUMP 00001e77: JUMPDEST 00001e78: SWAP1 00001e79: DUP1 00001e7a: PUSH1 0x1f 00001e7c: DUP4 00001e7d: ADD 00001e7e: SLT 00001e7f: ISZERO 00001e80: PUSH2 0x0241 00001e83: JUMPI 00001e84: DUP2 00001e85: MLOAD 00001e86: PUSH2 0x0511 00001e89: SWAP3 00001e8a: PUSH1 0x20 00001e8c: ADD 00001e8d: PUSH2 0x1e42 00001e90: JUMP 00001e91: JUMPDEST 00001e92: SWAP1 00001e93: SWAP2 00001e94: PUSH1 0x60 00001e96: DUP3 00001e97: DUP5 00001e98: SUB 00001e99: SLT 00001e9a: PUSH2 0x0241 00001e9d: JUMPI 00001e9e: DUP2 00001e9f: MLOAD 00001ea0: PUSH2 0x1ea8 00001ea3: DUP2 00001ea4: PUSH2 0x128b 00001ea7: JUMP 00001ea8: JUMPDEST 00001ea9: SWAP3 00001eaa: PUSH1 0x20 00001eac: SWAP1 00001ead: DUP2 00001eae: DUP5 00001eaf: ADD 00001eb0: MLOAD 00001eb1: SWAP1 00001eb2: PUSH1 0x01 00001eb4: PUSH1 0x01 00001eb6: PUSH1 0x40 00001eb8: SHL 00001eb9: SUB 00001eba: SWAP2 00001ebb: DUP3 00001ebc: DUP2 00001ebd: GT 00001ebe: PUSH2 0x0241 00001ec1: JUMPI 00001ec2: DUP6 00001ec3: ADD 00001ec4: DUP2 00001ec5: PUSH1 0x1f 00001ec7: DUP3 00001ec8: ADD 00001ec9: SLT 00001eca: ISZERO 00001ecb: PUSH2 0x0241 00001ece: JUMPI 00001ecf: DUP2 00001ed0: DUP2 00001ed1: DUP6 00001ed2: PUSH2 0x1edd 00001ed5: SWAP4 00001ed6: MLOAD 00001ed7: SWAP2 00001ed8: ADD 00001ed9: PUSH2 0x1e42 00001edc: JUMP 00001edd: JUMPDEST 00001ede: SWAP5 00001edf: PUSH1 0x40 00001ee1: DUP2 00001ee2: ADD 00001ee3: MLOAD 00001ee4: SWAP1 00001ee5: DUP4 00001ee6: DUP3 00001ee7: GT 00001ee8: PUSH2 0x0241 00001eeb: JUMPI 00001eec: ADD 00001eed: SWAP2 00001eee: PUSH1 0x60 00001ef0: DUP4 00001ef1: DUP4 00001ef2: SUB 00001ef3: SLT 00001ef4: PUSH2 0x0241 00001ef7: JUMPI 00001ef8: PUSH1 0x40 00001efa: MLOAD 00001efb: SWAP4 00001efc: PUSH2 0x1f04 00001eff: DUP6 00001f00: PUSH2 0x06fe 00001f03: JUMP 00001f04: JUMPDEST 00001f05: DUP4 00001f06: MLOAD 00001f07: PUSH2 0x1f0f 00001f0a: DUP2 00001f0b: PUSH2 0x0230 00001f0e: JUMP 00001f0f: JUMPDEST 00001f10: DUP6 00001f11: MSTORE 00001f12: DUP1 00001f13: DUP5 00001f14: ADD 00001f15: MLOAD 00001f16: DUP3 00001f17: DUP2 00001f18: GT 00001f19: PUSH2 0x0241 00001f1c: JUMPI 00001f1d: DUP5 00001f1e: ADD 00001f1f: SWAP1 00001f20: DUP4 00001f21: PUSH1 0x1f 00001f23: DUP4 00001f24: ADD 00001f25: SLT 00001f26: ISZERO 00001f27: PUSH2 0x0241 00001f2a: JUMPI 00001f2b: DUP2 00001f2c: MLOAD 00001f2d: SWAP2 00001f2e: PUSH2 0x1f36 00001f31: DUP4 00001f32: PUSH2 0x1274 00001f35: JUMP 00001f36: JUMPDEST 00001f37: SWAP3 00001f38: PUSH2 0x1f44 00001f3b: PUSH1 0x40 00001f3d: MLOAD 00001f3e: SWAP5 00001f3f: DUP6 00001f40: PUSH2 0x0762 00001f43: JUMP 00001f44: JUMPDEST 00001f45: DUP1 00001f46: DUP5 00001f47: MSTORE 00001f48: DUP3 00001f49: DUP1 00001f4a: DUP6 00001f4b: ADD 00001f4c: SWAP2 00001f4d: PUSH1 0x05 00001f4f: SHL 00001f50: DUP4 00001f51: ADD 00001f52: ADD 00001f53: SWAP2 00001f54: DUP7 00001f55: DUP4 00001f56: GT 00001f57: PUSH2 0x0241 00001f5a: JUMPI 00001f5b: DUP4 00001f5c: DUP1 00001f5d: SWAP2 00001f5e: ADD 00001f5f: SWAP2 00001f60: JUMPDEST 00001f61: DUP4 00001f62: DUP4 00001f63: LT 00001f64: PUSH2 0x1f8c 00001f67: JUMPI 00001f68: POP 00001f69: POP 00001f6a: POP 00001f6b: POP 00001f6c: DUP6 00001f6d: ADD 00001f6e: MSTORE 00001f6f: PUSH1 0x40 00001f71: DUP4 00001f72: ADD 00001f73: MLOAD 00001f74: SWAP1 00001f75: DUP2 00001f76: GT 00001f77: PUSH2 0x0241 00001f7a: JUMPI 00001f7b: PUSH2 0x1f84 00001f7e: SWAP3 00001f7f: ADD 00001f80: PUSH2 0x1e77 00001f83: JUMP 00001f84: JUMPDEST 00001f85: PUSH1 0x40 00001f87: DUP3 00001f88: ADD 00001f89: MSTORE 00001f8a: SWAP1 00001f8b: JUMP 00001f8c: JUMPDEST 00001f8d: DUP3 00001f8e: MLOAD 00001f8f: DUP2 00001f90: MSTORE 00001f91: SWAP2 00001f92: DUP2 00001f93: ADD 00001f94: SWAP2 00001f95: DUP5 00001f96: SWAP2 00001f97: ADD 00001f98: PUSH2 0x1f60 00001f9b: JUMP 00001f9c: JUMPDEST 00001f9d: SWAP2 00001f9e: SWAP3 00001f9f: PUSH1 0x80 00001fa1: SWAP4 00001fa2: DUP2 00001fa3: SWAP3 00001fa4: PUSH1 0x00 00001fa6: DUP6 00001fa7: MSTORE 00001fa8: PUSH1 0x20 00001faa: DUP6 00001fab: ADD 00001fac: MSTORE 00001fad: PUSH1 0x60 00001faf: PUSH1 0x40 00001fb1: DUP6 00001fb2: ADD 00001fb3: MSTORE 00001fb4: DUP2 00001fb5: PUSH1 0x60 00001fb7: DUP6 00001fb8: ADD 00001fb9: MSTORE 00001fba: DUP5 00001fbb: DUP5 00001fbc: ADD 00001fbd: CALLDATACOPY 00001fbe: PUSH1 0x00 00001fc0: DUP3 00001fc1: DUP3 00001fc2: ADD 00001fc3: DUP5 00001fc4: ADD 00001fc5: MSTORE 00001fc6: PUSH1 0x1f 00001fc8: ADD 00001fc9: PUSH1 0x1f 00001fcb: NOT 00001fcc: AND 00001fcd: ADD 00001fce: ADD 00001fcf: SWAP1 00001fd0: JUMP 00001fd1: JUMPDEST 00001fd2: ISZERO 00001fd3: PUSH2 0x1fd9 00001fd6: JUMPI 00001fd7: POP 00001fd8: JUMP 00001fd9: JUMPDEST 00001fda: PUSH1 0x40 00001fdc: MLOAD 00001fdd: PUSH3 0x461bcd 00001fe1: PUSH1 0xe5 00001fe3: SHL 00001fe4: DUP2 00001fe5: MSTORE 00001fe6: PUSH1 0x20 00001fe8: PUSH1 0x04 00001fea: DUP3 00001feb: ADD 00001fec: MSTORE 00001fed: SWAP1 00001fee: DUP2 00001fef: SWAP1 00001ff0: PUSH2 0x08de 00001ff3: SWAP1 00001ff4: PUSH1 0x24 00001ff6: DUP4 00001ff7: ADD 00001ff8: SWAP1 00001ff9: PUSH2 0x0dcb 00001ffc: JUMP 00001ffd: JUMPDEST 00001ffe: PUSH1 0x23 00002000: PUSH1 0x40 00002002: MLOAD 00002003: PUSH2 0x200b 00002006: DUP2 00002007: PUSH2 0x06fe 0000200a: JUMP 0000200b: JUMPDEST 0000200c: DUP2 0000200d: DUP2 0000200e: MSTORE 0000200f: PUSH3 0x657329 00002013: PUSH1 0xe8 00002015: SHL 00002016: PUSH1 0x40 00002018: PUSH1 0x20 0000201a: DUP4 0000201b: ADD 0000201c: SWAP3 0000201d: PUSH32 0x4d65737361676552656c617928627974657333322c75696e743235362c627974 0000203e: DUP5 0000203f: MSTORE 00002040: ADD 00002041: MSTORE 00002042: KECCAK256 00002043: SWAP1 00002044: JUMP 00002045: JUMPDEST 00002046: PUSH1 0xff 00002048: AND 00002049: PUSH1 0x05 0000204b: DUP2 0000204c: LT 0000204d: ISZERO 0000204e: PUSH2 0x1bfe 00002051: JUMPI 00002052: SWAP1 00002053: JUMP 00002054: JUMPDEST 00002055: PUSH1 0x04 00002057: GT 00002058: PUSH2 0x0241 0000205b: JUMPI 0000205c: PUSH1 0x00 0000205e: SWAP1 0000205f: PUSH1 0x04 00002061: SWAP1 00002062: JUMP 00002063: JUMPDEST 00002064: PUSH1 0x01 00002066: PUSH1 0x01 00002068: PUSH1 0xe0 0000206a: SHL 0000206b: SUB 0000206c: NOT 0000206d: SWAP1 0000206e: CALLDATALOAD 0000206f: DUP2 00002070: DUP2 00002071: AND 00002072: SWAP4 00002073: SWAP3 00002074: PUSH1 0x04 00002076: DUP2 00002077: LT 00002078: PUSH2 0x2080 0000207b: JUMPI 0000207c: POP 0000207d: POP 0000207e: POP 0000207f: JUMP 00002080: JUMPDEST 00002081: PUSH1 0x04 00002083: SUB 00002084: PUSH1 0x03 00002086: SHL 00002087: DUP3 00002088: SWAP1 00002089: SHL 0000208a: AND 0000208b: AND 0000208c: SWAP2 0000208d: POP 0000208e: JUMP 0000208f: JUMPDEST 00002090: PUSH1 0x01 00002092: PUSH1 0x01 00002094: PUSH1 0xa0 00002096: SHL 00002097: SUB 00002098: SWAP1 00002099: SWAP2 0000209a: AND 0000209b: DUP2 0000209c: MSTORE 0000209d: PUSH1 0x40 0000209f: PUSH1 0x20 000020a1: DUP3 000020a2: ADD 000020a3: DUP2 000020a4: SWAP1 000020a5: MSTORE 000020a6: DUP2 000020a7: ADD 000020a8: DUP3 000020a9: SWAP1 000020aa: MSTORE 000020ab: PUSH1 0x60 000020ad: SWAP2 000020ae: DUP1 000020af: PUSH1 0x00 000020b1: DUP5 000020b2: DUP5 000020b3: ADD 000020b4: CALLDATACOPY 000020b5: PUSH1 0x00 000020b7: DUP3 000020b8: DUP3 000020b9: ADD 000020ba: DUP5 000020bb: ADD 000020bc: MSTORE 000020bd: PUSH1 0x1f 000020bf: ADD 000020c0: PUSH1 0x1f 000020c2: NOT 000020c3: AND 000020c4: ADD 000020c5: ADD 000020c6: SWAP1 000020c7: JUMP 000020c8: JUMPDEST 000020c9: PUSH1 0x00 000020cb: DUP1 000020cc: MLOAD 000020cd: PUSH1 0x20 000020cf: PUSH2 0x3bf9 000020d2: DUP4 000020d3: CODECOPY 000020d4: DUP2 000020d5: MLOAD 000020d6: SWAP2 000020d7: MSTORE 000020d8: DUP1 000020d9: SLOAD 000020da: PUSH2 0x2101 000020dd: SWAP1 000020de: PUSH1 0x01 000020e0: PUSH1 0x01 000020e2: PUSH1 0xa0 000020e4: SHL 000020e5: SUB 000020e6: AND 000020e7: PUSH2 0x20f8 000020ea: PUSH2 0x20f2 000020ed: DUP7 000020ee: PUSH2 0x2054 000020f1: JUMP 000020f2: JUMPDEST 000020f3: SWAP1 000020f4: PUSH2 0x2063 000020f7: JUMP 000020f8: JUMPDEST 000020f9: SWAP1 000020fa: DUP5 000020fb: ADDRESS 000020fc: SWAP2 000020fd: PUSH2 0x31e7 00002100: JUMP 00002101: JUMPDEST 00002102: SWAP1 00002103: ISZERO 00002104: PUSH2 0x210e 00002107: JUMPI 00002108: JUMPDEST 00002109: POP 0000210a: POP 0000210b: POP 0000210c: POP 0000210d: JUMP 0000210e: JUMPDEST 0000210f: PUSH4 0xffffffff 00002114: AND 00002115: ISZERO 00002116: PUSH2 0x21c8 00002119: JUMPI 0000211a: PUSH1 0x00 0000211c: DUP1 0000211d: MLOAD 0000211e: PUSH1 0x20 00002120: PUSH2 0x3bf9 00002123: DUP4 00002124: CODECOPY 00002125: DUP2 00002126: MLOAD 00002127: SWAP2 00002128: MSTORE 00002129: DUP1 0000212a: SLOAD 0000212b: PUSH1 0xff 0000212d: PUSH1 0xa0 0000212f: SHL 00002130: NOT 00002131: AND 00002132: PUSH1 0x01 00002134: PUSH1 0xa0 00002136: SHL 00002137: OR 00002138: SWAP1 00002139: SSTORE 0000213a: PUSH2 0x2150 0000213d: SWAP1 0000213e: PUSH2 0x1481 00002141: SWAP1 00002142: DUP2 00002143: SWAP1 00002144: SLOAD 00002145: PUSH1 0x01 00002147: PUSH1 0x01 00002149: PUSH1 0xa0 0000214b: SHL 0000214c: SUB 0000214d: AND 0000214e: SWAP1 0000214f: JUMP 00002150: JUMPDEST 00002151: SWAP2 00002152: DUP3 00002153: EXTCODESIZE 00002154: ISZERO 00002155: PUSH2 0x0241 00002158: JUMPI 00002159: PUSH2 0x217c 0000215c: SWAP3 0000215d: PUSH1 0x00 0000215f: SWAP3 00002160: DUP4 00002161: PUSH1 0x40 00002163: MLOAD 00002164: DUP1 00002165: SWAP7 00002166: DUP2 00002167: SWAP6 00002168: DUP3 00002169: SWAP5 0000216a: PUSH4 0x4a63ebf7 0000216f: PUSH1 0xe1 00002171: SHL 00002172: DUP5 00002173: MSTORE 00002174: PUSH1 0x04 00002176: DUP5 00002177: ADD 00002178: PUSH2 0x208f 0000217b: JUMP 0000217c: JUMPDEST 0000217d: SUB 0000217e: SWAP3 0000217f: GAS 00002180: CALL 00002181: DUP1 00002182: ISZERO 00002183: PUSH2 0x1530 00002186: JUMPI 00002187: PUSH2 0x21af 0000218a: JUMPI 0000218b: JUMPDEST 0000218c: POP 0000218d: PUSH1 0x00 0000218f: DUP1 00002190: MLOAD 00002191: PUSH1 0x20 00002193: PUSH2 0x3bf9 00002196: DUP4 00002197: CODECOPY 00002198: DUP2 00002199: MLOAD 0000219a: SWAP2 0000219b: MSTORE 0000219c: DUP1 0000219d: SLOAD 0000219e: PUSH1 0xff 000021a0: PUSH1 0xa0 000021a2: SHL 000021a3: NOT 000021a4: AND 000021a5: SWAP1 000021a6: SSTORE 000021a7: CODESIZE 000021a8: DUP1 000021a9: DUP1 000021aa: DUP1 000021ab: PUSH2 0x2108 000021ae: JUMP 000021af: JUMPDEST 000021b0: DUP1 000021b1: PUSH2 0x21bc 000021b4: PUSH2 0x21c2 000021b7: SWAP3 000021b8: PUSH2 0x0719 000021bb: JUMP 000021bc: JUMPDEST 000021bd: DUP1 000021be: PUSH2 0x097d 000021c1: JUMP 000021c2: JUMPDEST 000021c3: CODESIZE 000021c4: PUSH2 0x218b 000021c7: JUMP 000021c8: JUMPDEST 000021c9: PUSH1 0x40 000021cb: MLOAD 000021cc: PUSH3 0xd1953b 000021d0: PUSH1 0xe3 000021d2: SHL 000021d3: DUP2 000021d4: MSTORE 000021d5: PUSH1 0x01 000021d7: PUSH1 0x01 000021d9: PUSH1 0xa0 000021db: SHL 000021dc: SUB 000021dd: DUP4 000021de: AND 000021df: PUSH1 0x04 000021e1: DUP3 000021e2: ADD 000021e3: MSTORE 000021e4: PUSH1 0x24 000021e6: SWAP1 000021e7: REVERT 000021e8: JUMPDEST 000021e9: PUSH1 0x01 000021eb: PUSH1 0x01 000021ed: PUSH1 0xa0 000021ef: SHL 000021f0: SUB 000021f1: AND 000021f2: ISZERO 000021f3: PUSH2 0x1928 000021f6: JUMPI 000021f7: JUMP 000021f8: JUMPDEST 000021f9: PUSH1 0x00 000021fb: DUP1 000021fc: MLOAD 000021fd: PUSH1 0x20 000021ff: PUSH2 0x3c59 00002202: DUP4 00002203: CODECOPY 00002204: DUP2 00002205: MLOAD 00002206: SWAP2 00002207: MSTORE 00002208: PUSH1 0x02 0000220a: DUP2 0000220b: SLOAD 0000220c: EQ 0000220d: PUSH2 0x2216 00002210: JUMPI 00002211: PUSH1 0x02 00002213: SWAP1 00002214: SSTORE 00002215: JUMP 00002216: JUMPDEST 00002217: PUSH1 0x40 00002219: MLOAD 0000221a: PUSH4 0x3ee5aeb5 0000221f: PUSH1 0xe0 00002221: SHL 00002222: DUP2 00002223: MSTORE 00002224: PUSH1 0x04 00002226: SWAP1 00002227: REVERT 00002228: JUMPDEST 00002229: PUSH1 0xff 0000222b: PUSH1 0x00 0000222d: DUP1 0000222e: MLOAD 0000222f: PUSH1 0x20 00002231: PUSH2 0x3c39 00002234: DUP4 00002235: CODECOPY 00002236: DUP2 00002237: MLOAD 00002238: SWAP2 00002239: MSTORE 0000223a: SLOAD 0000223b: AND 0000223c: PUSH2 0x2241 0000223f: JUMPI 00002240: JUMP 00002241: JUMPDEST 00002242: PUSH1 0x40 00002244: MLOAD 00002245: PUSH4 0xd93c0665 0000224a: PUSH1 0xe0 0000224c: SHL 0000224d: DUP2 0000224e: MSTORE 0000224f: PUSH1 0x04 00002251: SWAP1 00002252: REVERT 00002253: JUMPDEST 00002254: SWAP2 00002255: SWAP1 00002256: PUSH1 0xa0 00002258: DUP4 00002259: DUP3 0000225a: SUB 0000225b: SLT 0000225c: PUSH2 0x0241 0000225f: JUMPI 00002260: DUP3 00002261: CALLDATALOAD 00002262: PUSH1 0xff 00002264: DUP2 00002265: AND 00002266: DUP2 00002267: SUB 00002268: PUSH2 0x0241 0000226b: JUMPI 0000226c: SWAP3 0000226d: PUSH1 0x20 0000226f: DUP2 00002270: ADD 00002271: CALLDATALOAD 00002272: SWAP3 00002273: PUSH1 0x01 00002275: PUSH1 0x01 00002277: PUSH1 0x40 00002279: SHL 0000227a: SUB 0000227b: SWAP2 0000227c: PUSH1 0x40 0000227e: DUP2 0000227f: ADD 00002280: CALLDATALOAD 00002281: DUP4 00002282: DUP2 00002283: GT 00002284: PUSH2 0x0241 00002287: JUMPI 00002288: DUP5 00002289: PUSH2 0x2293 0000228c: SWAP2 0000228d: DUP4 0000228e: ADD 0000228f: PUSH2 0x07f4 00002292: JUMP 00002293: JUMPDEST 00002294: SWAP4 00002295: PUSH1 0x60 00002297: DUP3 00002298: ADD 00002299: CALLDATALOAD 0000229a: DUP5 0000229b: DUP2 0000229c: GT 0000229d: PUSH2 0x0241 000022a0: JUMPI 000022a1: DUP2 000022a2: PUSH2 0x22ac 000022a5: SWAP2 000022a6: DUP5 000022a7: ADD 000022a8: PUSH2 0x07f4 000022ab: JUMP 000022ac: JUMPDEST 000022ad: SWAP4 000022ae: PUSH1 0x80 000022b0: DUP4 000022b1: ADD 000022b2: CALLDATALOAD 000022b3: SWAP1 000022b4: DUP2 000022b5: GT 000022b6: PUSH2 0x0241 000022b9: JUMPI 000022ba: PUSH2 0x0511 000022bd: SWAP3 000022be: ADD 000022bf: PUSH2 0x07f4 000022c2: JUMP 000022c3: JUMPDEST 000022c4: SWAP2 000022c5: SWAP5 000022c6: DUP10 000022c7: SWAP7 000022c8: SWAP2 000022c9: SWAP5 000022ca: PUSH2 0x2337 000022cd: SWAP9 000022ce: SWAP5 000022cf: PUSH1 0x95 000022d1: SWAP14 000022d2: SWAP13 000022d3: SWAP11 000022d4: SWAP8 000022d5: PUSH1 0x20 000022d7: SWAP13 000022d8: SWAP8 000022d9: PUSH1 0xff 000022db: PUSH1 0xf8 000022dd: SHL 000022de: SWAP1 000022df: PUSH1 0xf8 000022e1: SHL 000022e2: AND 000022e3: DUP7 000022e4: MSTORE 000022e5: PUSH1 0x01 000022e7: DUP7 000022e8: ADD 000022e9: MSTORE 000022ea: PUSH1 0x21 000022ec: DUP6 000022ed: ADD 000022ee: MSTORE 000022ef: PUSH1 0x01 000022f1: PUSH1 0x01 000022f3: PUSH1 0x60 000022f5: SHL 000022f6: SUB 000022f7: NOT 000022f8: SWAP1 000022f9: PUSH1 0x60 000022fb: SHL 000022fc: AND 000022fd: PUSH1 0x41 000022ff: DUP5 00002300: ADD 00002301: MSTORE 00002302: PUSH1 0x55 00002304: DUP4 00002305: ADD 00002306: MSTORE 00002307: PUSH1 0x75 00002309: DUP3 0000230a: ADD 0000230b: MSTORE 0000230c: PUSH2 0x231d 0000230f: DUP3 00002310: MLOAD 00002311: DUP1 00002312: SWAP4 00002313: DUP11 00002314: DUP14 00002315: DUP6 00002316: ADD 00002317: SWAP2 00002318: ADD 00002319: PUSH2 0x0da8 0000231c: JUMP 0000231d: JUMPDEST 0000231e: ADD 0000231f: SWAP2 00002320: DUP9 00002321: DUP4 00002322: ADD 00002323: CALLDATACOPY 00002324: ADD 00002325: SWAP2 00002326: DUP6 00002327: DUP4 00002328: ADD 00002329: PUSH1 0x00 0000232b: DUP2 0000232c: MSTORE 0000232d: DUP2 0000232e: MLOAD 0000232f: SWAP5 00002330: DUP6 00002331: SWAP3 00002332: ADD 00002333: PUSH2 0x0da8 00002336: JUMP 00002337: JUMPDEST 00002338: ADD 00002339: PUSH2 0x234b 0000233c: DUP3 0000233d: MLOAD 0000233e: DUP1 0000233f: SWAP4 00002340: PUSH1 0x20 00002342: DUP7 00002343: DUP6 00002344: ADD 00002345: SWAP2 00002346: ADD 00002347: PUSH2 0x0da8 0000234a: JUMP 0000234b: JUMPDEST 0000234c: ADD 0000234d: ADD 0000234e: SWAP1 0000234f: JUMP 00002350: JUMPDEST 00002351: PUSH1 0x40 00002353: MLOAD 00002354: SWAP1 00002355: PUSH2 0x235d 00002358: DUP3 00002359: PUSH2 0x0747 0000235c: JUMP 0000235d: JUMPDEST 0000235e: PUSH1 0x0b 00002360: DUP3 00002361: MSTORE 00002362: PUSH11 0x139bdd10dbdb9d1c9858dd 0000236e: PUSH1 0xaa 00002370: SHL 00002371: PUSH1 0x20 00002373: DUP4 00002374: ADD 00002375: MSTORE 00002376: JUMP 00002377: JUMPDEST 00002378: SWAP1 00002379: PUSH1 0x20 0000237b: DUP3 0000237c: DUP3 0000237d: SUB 0000237e: SLT 0000237f: PUSH2 0x0241 00002382: JUMPI 00002383: DUP2 00002384: MLOAD 00002385: PUSH1 0x01 00002387: PUSH1 0x01 00002389: PUSH1 0x40 0000238b: SHL 0000238c: SUB 0000238d: DUP2 0000238e: GT 0000238f: PUSH2 0x0241 00002392: JUMPI 00002393: PUSH2 0x0511 00002396: SWAP3 00002397: ADD 00002398: PUSH2 0x1e77 0000239b: JUMP 0000239c: JUMPDEST 0000239d: SWAP2 0000239e: SWAP3 0000239f: PUSH2 0x0511 000023a2: SWAP6 000023a3: SWAP4 000023a4: PUSH2 0x23bf 000023a7: SWAP3 000023a8: DUP5 000023a9: MSTORE 000023aa: PUSH1 0x20 000023ac: DUP5 000023ad: ADD 000023ae: MSTORE 000023af: PUSH1 0xa0 000023b1: PUSH1 0x40 000023b3: DUP5 000023b4: ADD 000023b5: MSTORE 000023b6: PUSH1 0xa0 000023b8: DUP4 000023b9: ADD 000023ba: SWAP1 000023bb: PUSH2 0x0dcb 000023be: JUMP 000023bf: JUMPDEST 000023c0: SWAP3 000023c1: PUSH1 0x60 000023c3: DUP3 000023c4: ADD 000023c5: MSTORE 000023c6: PUSH1 0x80 000023c8: DUP2 000023c9: DUP5 000023ca: SUB 000023cb: SWAP2 000023cc: ADD 000023cd: MSTORE 000023ce: PUSH2 0x0dcb 000023d1: JUMP 000023d2: JUMPDEST 000023d3: PUSH1 0x00 000023d5: SWAP1 000023d6: PUSH1 0x03 000023d8: RETURNDATASIZE 000023d9: GT 000023da: PUSH2 0x23df 000023dd: JUMPI 000023de: JUMP 000023df: JUMPDEST 000023e0: SWAP1 000023e1: POP 000023e2: PUSH1 0x04 000023e4: PUSH1 0x00 000023e6: DUP1 000023e7: RETURNDATACOPY 000023e8: PUSH1 0x00 000023ea: MLOAD 000023eb: PUSH1 0xe0 000023ed: SHR 000023ee: SWAP1 000023ef: JUMP 000023f0: JUMPDEST 000023f1: PUSH1 0x00 000023f3: PUSH1 0x44 000023f5: RETURNDATASIZE 000023f6: LT 000023f7: PUSH2 0x0511 000023fa: JUMPI 000023fb: PUSH1 0x40 000023fd: MLOAD 000023fe: PUSH1 0x03 00002400: NOT 00002401: SWAP2 00002402: RETURNDATASIZE 00002403: DUP4 00002404: ADD 00002405: PUSH1 0x04 00002407: DUP4 00002408: RETURNDATACOPY 00002409: DUP2 0000240a: MLOAD 0000240b: PUSH1 0x01 0000240d: PUSH1 0x01 0000240f: PUSH1 0x40 00002411: SHL 00002412: SUB 00002413: SWAP2 00002414: DUP3 00002415: DUP3 00002416: GT 00002417: RETURNDATASIZE 00002418: PUSH1 0x24 0000241a: DUP5 0000241b: ADD 0000241c: GT 0000241d: OR 0000241e: PUSH2 0x244d 00002421: JUMPI 00002422: DUP2 00002423: DUP5 00002424: ADD 00002425: SWAP5 00002426: DUP6 00002427: MLOAD 00002428: SWAP4 00002429: DUP5 0000242a: GT 0000242b: PUSH2 0x2455 0000242e: JUMPI 0000242f: RETURNDATASIZE 00002430: DUP6 00002431: ADD 00002432: ADD 00002433: PUSH1 0x20 00002435: DUP5 00002436: DUP8 00002437: ADD 00002438: ADD 00002439: GT 0000243a: PUSH2 0x244d 0000243d: JUMPI 0000243e: POP 0000243f: PUSH2 0x0511 00002442: SWAP3 00002443: SWAP2 00002444: ADD 00002445: PUSH1 0x20 00002447: ADD 00002448: SWAP1 00002449: PUSH2 0x0762 0000244c: JUMP 0000244d: JUMPDEST 0000244e: SWAP5 0000244f: SWAP4 00002450: POP 00002451: POP 00002452: POP 00002453: POP 00002454: JUMP 00002455: JUMPDEST 00002456: POP 00002457: SWAP5 00002458: SWAP4 00002459: POP 0000245a: POP 0000245b: POP 0000245c: POP 0000245d: JUMP 0000245e: JUMPDEST 0000245f: RETURNDATASIZE 00002460: ISZERO 00002461: PUSH2 0x2489 00002464: JUMPI 00002465: RETURNDATASIZE 00002466: SWAP1 00002467: PUSH2 0x246f 0000246a: DUP3 0000246b: PUSH2 0x07a2 0000246e: JUMP 0000246f: JUMPDEST 00002470: SWAP2 00002471: PUSH2 0x247d 00002474: PUSH1 0x40 00002476: MLOAD 00002477: SWAP4 00002478: DUP5 00002479: PUSH2 0x0762 0000247c: JUMP 0000247d: JUMPDEST 0000247e: DUP3 0000247f: MSTORE 00002480: RETURNDATASIZE 00002481: PUSH1 0x00 00002483: PUSH1 0x20 00002485: DUP5 00002486: ADD 00002487: RETURNDATACOPY 00002488: JUMP 00002489: JUMPDEST 0000248a: PUSH1 0x60 0000248c: SWAP1 0000248d: JUMP 0000248e: JUMPDEST 0000248f: SWAP2 00002490: SWAP1 00002491: PUSH2 0x249f 00002494: PUSH1 0xe0 00002496: DUP5 00002497: ADD 00002498: MLOAD 00002499: PUSH1 0x14 0000249b: ADD 0000249c: MLOAD 0000249d: SWAP1 0000249e: JUMP 0000249f: JUMPDEST 000024a0: SWAP3 000024a1: GAS 000024a2: PUSH2 0x0120 000024a5: DUP3 000024a6: ADD 000024a7: MLOAD 000024a8: SWAP1 000024a9: SWAP2 000024aa: SWAP1 000024ab: DUP6 000024ac: EXTCODESIZE 000024ad: ISZERO 000024ae: PUSH2 0x25f2 000024b1: JUMPI 000024b2: PUSH1 0x00 000024b4: PUSH1 0x20 000024b6: DUP4 000024b7: ADD 000024b8: MLOAD 000024b9: SWAP2 000024ba: PUSH1 0x40 000024bc: DUP5 000024bd: ADD 000024be: MLOAD 000024bf: SWAP8 000024c0: PUSH1 0xc0 000024c2: DUP6 000024c3: ADD 000024c4: SWAP9 000024c5: DUP4 000024c6: DUP11 000024c7: MLOAD 000024c8: SWAP4 000024c9: PUSH1 0x60 000024cb: DUP9 000024cc: ADD 000024cd: MLOAD 000024ce: SWAP7 000024cf: PUSH2 0x24f4 000024d2: PUSH2 0x0140 000024d5: DUP11 000024d6: ADD 000024d7: MLOAD 000024d8: PUSH1 0x40 000024da: MLOAD 000024db: SWAP10 000024dc: DUP11 000024dd: SWAP9 000024de: DUP10 000024df: SWAP8 000024e0: DUP9 000024e1: SWAP6 000024e2: PUSH4 0x4ca748cd 000024e7: PUSH1 0xe1 000024e9: SHL 000024ea: DUP8 000024eb: MSTORE 000024ec: PUSH1 0x04 000024ee: DUP8 000024ef: ADD 000024f0: PUSH2 0x239c 000024f3: JUMP 000024f4: JUMPDEST 000024f5: SUB 000024f6: SWAP4 000024f7: PUSH1 0x01 000024f9: PUSH1 0x01 000024fb: PUSH1 0xa0 000024fd: SHL 000024fe: SUB 000024ff: AND 00002500: SWAP1 00002501: CALL 00002502: SWAP1 00002503: DUP2 00002504: PUSH2 0x25cf 00002507: JUMPI 00002508: JUMPDEST 00002509: POP 0000250a: PUSH2 0x25b8 0000250d: JUMPI 0000250e: PUSH1 0x01 00002510: PUSH2 0x2517 00002513: PUSH2 0x23d2 00002516: JUMP 00002517: JUMPDEST 00002518: PUSH4 0x08c379a0 0000251d: EQ 0000251e: PUSH2 0x2569 00002521: JUMPI 00002522: JUMPDEST 00002523: PUSH2 0x252d 00002526: JUMPI 00002527: POP 00002528: POP 00002529: POP 0000252a: SWAP1 0000252b: POP 0000252c: JUMP 0000252d: JUMPDEST 0000252e: PUSH2 0x2535 00002531: PUSH2 0x245e 00002534: JUMP 00002535: JUMPDEST 00002536: SWAP3 00002537: PUSH2 0x254e 0000253a: JUMPI 0000253b: PUSH2 0x2545 0000253e: SWAP4 0000253f: SWAP5 00002540: MLOAD 00002541: PUSH2 0x335e 00002544: JUMP 00002545: JUMPDEST 00002546: DUP1 00002547: CODESIZE 00002548: DUP1 00002549: DUP1 0000254a: PUSH2 0x1db8 0000254d: JUMP 0000254e: JUMPDEST 0000254f: PUSH1 0x40 00002551: MLOAD 00002552: PUSH4 0x9bbd0cb9 00002557: PUSH1 0xe0 00002559: SHL 0000255a: DUP2 0000255b: MSTORE 0000255c: DUP1 0000255d: PUSH2 0x08de 00002560: DUP6 00002561: PUSH1 0x04 00002563: DUP4 00002564: ADD 00002565: PUSH2 0x0df0 00002568: JUMP 00002569: JUMPDEST 0000256a: DUP4 0000256b: PUSH2 0x2572 0000256e: PUSH2 0x23f0 00002571: JUMP 00002572: JUMPDEST 00002573: DUP1 00002574: PUSH2 0x257f 00002577: JUMPI 00002578: JUMPDEST 00002579: POP 0000257a: POP 0000257b: PUSH2 0x2522 0000257e: JUMP 0000257f: JUMPDEST 00002580: PUSH1 0x00 00002582: SWAP3 00002583: POP 00002584: SWAP1 00002585: PUSH2 0x259c 00002588: JUMPI 00002589: PUSH2 0x2595 0000258c: SWAP1 0000258d: DUP5 0000258e: DUP5 0000258f: DUP10 00002590: MLOAD 00002591: PUSH2 0x335e 00002594: JUMP 00002595: JUMPDEST 00002596: DUP4 00002597: CODESIZE 00002598: PUSH2 0x2578 0000259b: JUMP 0000259c: JUMPDEST 0000259d: PUSH1 0x40 0000259f: MLOAD 000025a0: PUSH3 0x461bcd 000025a4: PUSH1 0xe5 000025a6: SHL 000025a7: DUP2 000025a8: MSTORE 000025a9: SWAP1 000025aa: DUP2 000025ab: SWAP1 000025ac: PUSH2 0x08de 000025af: SWAP1 000025b0: PUSH1 0x04 000025b2: DUP4 000025b3: ADD 000025b4: PUSH2 0x0df0 000025b7: JUMP 000025b8: JUMPDEST 000025b9: SWAP1 000025ba: SWAP2 000025bb: POP 000025bc: PUSH2 0x12a2 000025bf: SWAP3 000025c0: SWAP4 000025c1: POP 000025c2: PUSH2 0x25c9 000025c5: PUSH2 0x0d95 000025c8: JUMP 000025c9: JUMPDEST 000025ca: POP 000025cb: PUSH2 0x34c5 000025ce: JUMP 000025cf: JUMPDEST 000025d0: PUSH2 0x25eb 000025d3: SWAP1 000025d4: RETURNDATASIZE 000025d5: DUP1 000025d6: PUSH1 0x00 000025d8: DUP4 000025d9: RETURNDATACOPY 000025da: PUSH2 0x25e3 000025dd: DUP2 000025de: DUP4 000025df: PUSH2 0x0762 000025e2: JUMP 000025e3: JUMPDEST 000025e4: DUP2 000025e5: ADD 000025e6: SWAP1 000025e7: PUSH2 0x2377 000025ea: JUMP 000025eb: JUMPDEST 000025ec: POP 000025ed: CODESIZE 000025ee: PUSH2 0x2508 000025f1: JUMP 000025f2: JUMPDEST 000025f3: POP 000025f4: SWAP2 000025f5: POP 000025f6: PUSH2 0x12a2 000025f9: SWAP3 000025fa: SWAP4 000025fb: POP 000025fc: PUSH1 0xc0 000025fe: DUP3 000025ff: ADD 00002600: MLOAD 00002601: SWAP2 00002602: PUSH2 0x2609 00002605: PUSH2 0x2350 00002608: JUMP 00002609: JUMPDEST 0000260a: SWAP3 0000260b: PUSH2 0x335e 0000260e: JUMP 0000260f: JUMPDEST 00002610: PUSH1 0xe0 00002612: DUP2 00002613: ADD 00002614: MLOAD 00002615: PUSH1 0x14 00002617: ADD 00002618: MLOAD 00002619: GAS 0000261a: SWAP1 0000261b: DUP1 0000261c: EXTCODESIZE 0000261d: ISZERO 0000261e: PUSH2 0x26ec 00002621: JUMPI 00002622: PUSH1 0x00 00002624: PUSH1 0x20 00002626: DUP5 00002627: ADD 00002628: MLOAD 00002629: SWAP2 0000262a: PUSH1 0x40 0000262c: DUP6 0000262d: ADD 0000262e: MLOAD 0000262f: SWAP1 00002630: PUSH1 0xc0 00002632: DUP7 00002633: ADD 00002634: MLOAD 00002635: SWAP2 00002636: DUP4 00002637: PUSH1 0x60 00002639: DUP9 0000263a: ADD 0000263b: MLOAD 0000263c: SWAP6 0000263d: PUSH2 0x2662 00002640: PUSH2 0x0140 00002643: DUP11 00002644: ADD 00002645: MLOAD 00002646: PUSH1 0x40 00002648: MLOAD 00002649: SWAP9 0000264a: DUP10 0000264b: SWAP8 0000264c: DUP9 0000264d: SWAP7 0000264e: DUP8 0000264f: SWAP6 00002650: PUSH4 0x4ca748cd 00002655: PUSH1 0xe1 00002657: SHL 00002658: DUP8 00002659: MSTORE 0000265a: PUSH1 0x04 0000265c: DUP8 0000265d: ADD 0000265e: PUSH2 0x239c 00002661: JUMP 00002662: JUMPDEST 00002663: SUB 00002664: SWAP3 00002665: PUSH1 0x01 00002667: PUSH1 0x01 00002669: PUSH1 0xa0 0000266b: SHL 0000266c: SUB 0000266d: AND 0000266e: DUP8 0000266f: CALL 00002670: SWAP1 00002671: DUP2 00002672: PUSH2 0x26d1 00002675: JUMPI 00002676: JUMPDEST 00002677: POP 00002678: PUSH2 0x26c5 0000267b: JUMPI 0000267c: PUSH2 0x2683 0000267f: PUSH2 0x23d2 00002682: JUMP 00002683: JUMPDEST 00002684: PUSH4 0x08c379a0 00002689: EQ 0000268a: PUSH2 0x26b2 0000268d: JUMPI 0000268e: JUMPDEST 0000268f: PUSH2 0x08de 00002692: PUSH2 0x2699 00002695: PUSH2 0x245e 00002698: JUMP 00002699: JUMPDEST 0000269a: PUSH1 0x40 0000269c: MLOAD 0000269d: PUSH4 0x9bbd0cb9 000026a2: PUSH1 0xe0 000026a4: SHL 000026a5: DUP2 000026a6: MSTORE 000026a7: SWAP2 000026a8: DUP3 000026a9: SWAP2 000026aa: PUSH1 0x04 000026ac: DUP4 000026ad: ADD 000026ae: PUSH2 0x0df0 000026b1: JUMP 000026b2: JUMPDEST 000026b3: PUSH2 0x26ba 000026b6: PUSH2 0x23f0 000026b9: JUMP 000026ba: JUMPDEST 000026bb: DUP1 000026bc: PUSH2 0x259c 000026bf: JUMPI 000026c0: POP 000026c1: PUSH2 0x268e 000026c4: JUMP 000026c5: JUMPDEST 000026c6: PUSH2 0x12a2 000026c9: SWAP2 000026ca: PUSH2 0x25c9 000026cd: PUSH2 0x0d95 000026d0: JUMP 000026d1: JUMPDEST 000026d2: PUSH2 0x26e5 000026d5: SWAP1 000026d6: RETURNDATASIZE 000026d7: DUP1 000026d8: PUSH1 0x00 000026da: DUP4 000026db: RETURNDATACOPY 000026dc: PUSH2 0x25e3 000026df: DUP2 000026e0: DUP4 000026e1: PUSH2 0x0762 000026e4: JUMP 000026e5: JUMPDEST 000026e6: POP 000026e7: CODESIZE 000026e8: PUSH2 0x2676 000026eb: JUMP 000026ec: JUMPDEST 000026ed: POP 000026ee: SWAP1 000026ef: PUSH2 0x12a2 000026f2: SWAP2 000026f3: PUSH1 0xc0 000026f5: DUP3 000026f6: ADD 000026f7: MLOAD 000026f8: SWAP2 000026f9: PUSH2 0x2609 000026fc: PUSH2 0x2350 000026ff: JUMP 00002700: JUMPDEST 00002701: PUSH1 0x00 00002703: DUP1 00002704: MLOAD 00002705: PUSH1 0x20 00002707: PUSH2 0x3bf9 0000270a: DUP4 0000270b: CODECOPY 0000270c: DUP2 0000270d: MLOAD 0000270e: SWAP2 0000270f: MSTORE 00002710: DUP1 00002711: SLOAD 00002712: PUSH1 0x01 00002714: PUSH1 0x01 00002716: PUSH1 0xa0 00002718: SHL 00002719: SUB 0000271a: NOT 0000271b: AND 0000271c: PUSH1 0x01 0000271e: PUSH1 0x01 00002720: PUSH1 0xa0 00002722: SHL 00002723: SUB 00002724: SWAP1 00002725: SWAP3 00002726: AND 00002727: SWAP2 00002728: DUP3 00002729: OR 0000272a: SWAP1 0000272b: SSTORE 0000272c: PUSH1 0x40 0000272e: MLOAD 0000272f: SWAP1 00002730: DUP2 00002731: MSTORE 00002732: PUSH32 0x2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad 00002753: SWAP1 00002754: PUSH1 0x20 00002756: SWAP1 00002757: LOG1 00002758: JUMP 00002759: JUMPDEST 0000275a: PUSH1 0x02 0000275c: SLOAD 0000275d: PUSH1 0x40 0000275f: DUP1 00002760: MLOAD 00002761: PUSH4 0x1f227e3d 00002766: PUSH1 0xe1 00002768: SHL 00002769: DUP2 0000276a: MSTORE 0000276b: PUSH1 0x04 0000276d: DUP2 0000276e: ADD 0000276f: SWAP4 00002770: SWAP1 00002771: SWAP4 00002772: MSTORE 00002773: PUSH1 0x01 00002775: PUSH1 0x01 00002777: PUSH1 0xa0 00002779: SHL 0000277a: SUB 0000277b: SWAP4 0000277c: DUP5 0000277d: AND 0000277e: PUSH1 0x24 00002780: DUP5 00002781: ADD 00002782: MSTORE 00002783: PUSH1 0x44 00002785: DUP4 00002786: ADD 00002787: SWAP5 00002788: SWAP1 00002789: SWAP5 0000278a: MSTORE 0000278b: SWAP1 0000278c: SWAP4 0000278d: SWAP2 0000278e: DUP4 0000278f: SWAP2 00002790: DUP6 00002791: SWAP2 00002792: PUSH1 0x64 00002794: SWAP2 00002795: DUP4 00002796: SWAP2 00002797: AND 00002798: GAS 00002799: STATICCALL 0000279a: DUP1 0000279b: ISZERO 0000279c: PUSH2 0x1530 0000279f: JUMPI 000027a0: PUSH1 0x00 000027a2: SWAP4 000027a3: DUP5 000027a4: SWAP2 000027a5: PUSH2 0x27c4 000027a8: JUMPI 000027a9: JUMPDEST 000027aa: POP 000027ab: SWAP2 000027ac: DUP4 000027ad: ISZERO 000027ae: PUSH2 0x27b4 000027b1: JUMPI 000027b2: POP 000027b3: JUMP 000027b4: JUMPDEST 000027b5: MLOAD 000027b6: PUSH4 0xf4951203 000027bb: PUSH1 0xe0 000027bd: SHL 000027be: DUP2 000027bf: MSTORE 000027c0: PUSH1 0x04 000027c2: SWAP1 000027c3: REVERT 000027c4: JUMPDEST 000027c5: SWAP4 000027c6: SWAP1 000027c7: POP 000027c8: DUP3 000027c9: DUP5 000027ca: DUP2 000027cb: RETURNDATASIZE 000027cc: DUP4 000027cd: GT 000027ce: PUSH2 0x2800 000027d1: JUMPI 000027d2: JUMPDEST 000027d3: PUSH2 0x27dc 000027d6: DUP2 000027d7: DUP4 000027d8: PUSH2 0x0762 000027db: JUMP 000027dc: JUMPDEST 000027dd: DUP2 000027de: ADD 000027df: SUB 000027e0: SLT 000027e1: PUSH2 0x27fd 000027e4: JUMPI 000027e5: POP 000027e6: PUSH1 0x20 000027e8: DUP4 000027e9: MLOAD 000027ea: SWAP4 000027eb: ADD 000027ec: MLOAD 000027ed: SWAP3 000027ee: PUSH2 0x27f6 000027f1: DUP5 000027f2: PUSH2 0x0230 000027f5: JUMP 000027f6: JUMPDEST 000027f7: SWAP3 000027f8: CODESIZE 000027f9: PUSH2 0x27a9 000027fc: JUMP 000027fd: JUMPDEST 000027fe: DUP1 000027ff: REVERT 00002800: JUMPDEST 00002801: POP 00002802: RETURNDATASIZE 00002803: PUSH2 0x27d2 00002806: JUMP 00002807: JUMPDEST 00002808: PUSH1 0x40 0000280a: MLOAD 0000280b: SWAP1 0000280c: PUSH1 0xc0 0000280e: DUP3 0000280f: ADD 00002810: DUP3 00002811: DUP2 00002812: LT 00002813: PUSH1 0x01 00002815: PUSH1 0x01 00002817: PUSH1 0x40 00002819: SHL 0000281a: SUB 0000281b: DUP3 0000281c: GT 0000281d: OR 0000281e: PUSH2 0x06f9 00002821: JUMPI 00002822: PUSH1 0x40 00002824: MSTORE 00002825: PUSH1 0x00 00002827: PUSH1 0xa0 00002829: DUP4 0000282a: DUP3 0000282b: DUP2 0000282c: MSTORE 0000282d: DUP3 0000282e: PUSH1 0x20 00002830: DUP3 00002831: ADD 00002832: MSTORE 00002833: PUSH1 0x60 00002835: PUSH1 0x40 00002837: DUP3 00002838: ADD 00002839: MSTORE 0000283a: PUSH1 0x60 0000283c: DUP1 0000283d: DUP3 0000283e: ADD 0000283f: MSTORE 00002840: DUP3 00002841: PUSH1 0x80 00002843: DUP3 00002844: ADD 00002845: MSTORE 00002846: ADD 00002847: MSTORE 00002848: JUMP 00002849: JUMPDEST 0000284a: CALLDATALOAD 0000284b: SWAP1 0000284c: PUSH1 0x05 0000284e: DUP3 0000284f: LT 00002850: ISZERO 00002851: PUSH2 0x0241 00002854: JUMPI 00002855: JUMP 00002856: JUMPDEST 00002857: SWAP1 00002858: PUSH1 0x20 0000285a: DUP3 0000285b: DUP3 0000285c: SUB 0000285d: SLT 0000285e: PUSH2 0x0241 00002861: JUMPI 00002862: DUP2 00002863: CALLDATALOAD 00002864: PUSH1 0x01 00002866: PUSH1 0x01 00002868: PUSH1 0x40 0000286a: SHL 0000286b: SUB 0000286c: SWAP3 0000286d: DUP4 0000286e: DUP3 0000286f: GT 00002870: PUSH2 0x0241 00002873: JUMPI 00002874: ADD 00002875: PUSH1 0xc0 00002877: DUP2 00002878: DUP4 00002879: SUB 0000287a: SLT 0000287b: PUSH2 0x0241 0000287e: JUMPI 0000287f: PUSH2 0x2886 00002882: PUSH2 0x0783 00002885: JUMP 00002886: JUMPDEST 00002887: SWAP3 00002888: PUSH2 0x2890 0000288b: DUP3 0000288c: PUSH2 0x12a4 0000288f: JUMP 00002890: JUMPDEST 00002891: DUP5 00002892: MSTORE 00002893: PUSH2 0x289e 00002896: PUSH1 0x20 00002898: DUP4 00002899: ADD 0000289a: PUSH2 0x2849 0000289d: JUMP 0000289e: JUMPDEST 0000289f: PUSH1 0x20 000028a1: DUP6 000028a2: ADD 000028a3: MSTORE 000028a4: PUSH1 0x40 000028a6: DUP3 000028a7: ADD 000028a8: CALLDATALOAD 000028a9: DUP2 000028aa: DUP2 000028ab: GT 000028ac: PUSH2 0x0241 000028af: JUMPI 000028b0: DUP4 000028b1: PUSH2 0x28bb 000028b4: SWAP2 000028b5: DUP5 000028b6: ADD 000028b7: PUSH2 0x07f4 000028ba: JUMP 000028bb: JUMPDEST 000028bc: PUSH1 0x40 000028be: DUP6 000028bf: ADD 000028c0: MSTORE 000028c1: PUSH1 0x60 000028c3: DUP3 000028c4: ADD 000028c5: CALLDATALOAD 000028c6: SWAP1 000028c7: DUP2 000028c8: GT 000028c9: PUSH2 0x0241 000028cc: JUMPI 000028cd: PUSH1 0xa0 000028cf: SWAP3 000028d0: PUSH2 0x28da 000028d3: SWAP2 000028d4: DUP4 000028d5: ADD 000028d6: PUSH2 0x07f4 000028d9: JUMP 000028da: JUMPDEST 000028db: PUSH1 0x60 000028dd: DUP5 000028de: ADD 000028df: MSTORE 000028e0: PUSH1 0x80 000028e2: DUP2 000028e3: ADD 000028e4: CALLDATALOAD 000028e5: PUSH1 0x80 000028e7: DUP5 000028e8: ADD 000028e9: MSTORE 000028ea: ADD 000028eb: CALLDATALOAD 000028ec: PUSH1 0xa0 000028ee: DUP3 000028ef: ADD 000028f0: MSTORE 000028f1: SWAP1 000028f2: JUMP 000028f3: JUMPDEST 000028f4: PUSH4 0x4e487b71 000028f9: PUSH1 0xe0 000028fb: SHL 000028fc: PUSH1 0x00 000028fe: MSTORE 000028ff: PUSH1 0x11 00002901: PUSH1 0x04 00002903: MSTORE 00002904: PUSH1 0x24 00002906: PUSH1 0x00 00002908: REVERT 00002909: JUMPDEST 0000290a: SWAP2 0000290b: SWAP1 0000290c: DUP3 0000290d: ADD 0000290e: DUP1 0000290f: SWAP3 00002910: GT 00002911: PUSH2 0x2916 00002914: JUMPI 00002915: JUMP 00002916: JUMPDEST 00002917: PUSH2 0x28f3 0000291a: JUMP 0000291b: JUMPDEST 0000291c: SWAP5 0000291d: SWAP4 0000291e: SWAP5 0000291f: SWAP3 00002920: SWAP2 00002921: SWAP1 00002922: SWAP3 00002923: PUSH2 0x292a 00002926: PUSH2 0x2807 00002929: JUMP 0000292a: JUMPDEST 0000292b: POP 0000292c: DUP4 0000292d: EQ 0000292e: PUSH2 0x29d7 00002931: JUMPI 00002932: PUSH2 0x293d 00002935: SWAP2 00002936: DUP2 00002937: ADD 00002938: SWAP1 00002939: PUSH2 0x2856 0000293c: JUMP 0000293d: JUMPDEST 0000293e: SWAP3 0000293f: PUSH1 0xa0 00002941: DUP5 00002942: ADD 00002943: MLOAD 00002944: PUSH2 0x29c5 00002947: JUMPI 00002948: PUSH1 0x01 0000294a: PUSH1 0x20 0000294c: DUP6 0000294d: ADD 0000294e: MLOAD 0000294f: PUSH2 0x2957 00002952: DUP2 00002953: PUSH2 0x1bf4 00002956: JUMP 00002957: JUMPDEST 00002958: PUSH2 0x2960 0000295b: DUP2 0000295c: PUSH2 0x1bf4 0000295f: JUMP 00002960: JUMPDEST 00002961: SUB 00002962: PUSH2 0x29b3 00002965: JUMPI 00002966: PUSH2 0x29a7 00002969: DUP2 0000296a: PUSH2 0x297f 0000296d: PUSH2 0x1d6c 00002970: SWAP5 00002971: PUSH2 0x29af 00002974: SWAP5 00002975: PUSH1 0x80 00002977: DUP10 00002978: ADD 00002979: MLOAD 0000297a: SWAP2 0000297b: PUSH2 0x2759 0000297e: JUMP 0000297f: JUMPDEST 00002980: PUSH2 0x298c 00002983: DUP3 00002984: SWAP7 00002985: SWAP3 00002986: CALLER 00002987: DUP6 00002988: PUSH2 0x2c82 0000298b: JUMP 0000298c: JUMPDEST 0000298d: POP 0000298e: PUSH1 0x01 00002990: PUSH1 0x01 00002992: PUSH1 0xa0 00002994: SHL 00002995: SUB 00002996: AND 00002997: PUSH1 0x00 00002999: SWAP1 0000299a: DUP2 0000299b: MSTORE 0000299c: PUSH1 0x08 0000299e: PUSH1 0x20 000029a0: MSTORE 000029a1: PUSH1 0x40 000029a3: SWAP1 000029a4: KECCAK256 000029a5: SWAP1 000029a6: JUMP 000029a7: JUMPDEST 000029a8: SWAP2 000029a9: DUP3 000029aa: SLOAD 000029ab: PUSH2 0x2909 000029ae: JUMP 000029af: JUMPDEST 000029b0: SWAP1 000029b1: SSTORE 000029b2: JUMP 000029b3: JUMPDEST 000029b4: PUSH1 0x40 000029b6: MLOAD 000029b7: PUSH4 0x6d90b037 000029bc: PUSH1 0xe0 000029be: SHL 000029bf: DUP2 000029c0: MSTORE 000029c1: PUSH1 0x04 000029c3: SWAP1 000029c4: REVERT 000029c5: JUMPDEST 000029c6: PUSH1 0x40 000029c8: MLOAD 000029c9: PUSH4 0x0dc77f33 000029ce: PUSH1 0xe3 000029d0: SHL 000029d1: DUP2 000029d2: MSTORE 000029d3: PUSH1 0x04 000029d5: SWAP1 000029d6: REVERT 000029d7: JUMPDEST 000029d8: PUSH1 0x40 000029da: MLOAD 000029db: PUSH4 0x72a13957 000029e0: PUSH1 0xe1 000029e2: SHL 000029e3: DUP2 000029e4: MSTORE 000029e5: PUSH1 0x04 000029e7: SWAP1 000029e8: REVERT 000029e9: JUMPDEST 000029ea: SWAP1 000029eb: DUP2 000029ec: MSTORE 000029ed: PUSH1 0x01 000029ef: PUSH1 0x01 000029f1: PUSH1 0xa0 000029f3: SHL 000029f4: SUB 000029f5: SWAP2 000029f6: DUP3 000029f7: AND 000029f8: PUSH1 0x20 000029fa: DUP3 000029fb: ADD 000029fc: MSTORE 000029fd: SWAP2 000029fe: DUP2 000029ff: AND 00002a00: PUSH1 0x40 00002a02: DUP4 00002a03: ADD 00002a04: MSTORE 00002a05: PUSH1 0x60 00002a07: DUP3 00002a08: ADD 00002a09: SWAP3 00002a0a: SWAP1 00002a0b: SWAP3 00002a0c: MSTORE 00002a0d: SWAP2 00002a0e: DUP2 00002a0f: AND 00002a10: PUSH1 0x80 00002a12: DUP4 00002a13: ADD 00002a14: MSTORE 00002a15: SWAP1 00002a16: SWAP2 00002a17: AND 00002a18: PUSH1 0xa0 00002a1a: DUP3 00002a1b: ADD 00002a1c: MSTORE 00002a1d: PUSH2 0x0100 00002a20: PUSH1 0xc0 00002a22: DUP3 00002a23: ADD 00002a24: DUP2 00002a25: SWAP1 00002a26: MSTORE 00002a27: PUSH2 0x0511 00002a2a: SWAP4 00002a2b: SWAP2 00002a2c: SWAP3 00002a2d: PUSH2 0x2a38 00002a30: SWAP2 00002a31: DUP5 00002a32: ADD 00002a33: SWAP1 00002a34: PUSH2 0x0dcb 00002a37: JUMP 00002a38: JUMPDEST 00002a39: SWAP2 00002a3a: PUSH1 0xe0 00002a3c: DUP2 00002a3d: DUP5 00002a3e: SUB 00002a3f: SWAP2 00002a40: ADD 00002a41: MSTORE 00002a42: PUSH2 0x0dcb 00002a45: JUMP 00002a46: JUMPDEST 00002a47: PUSH2 0x2a5f 00002a4a: SWAP1 00002a4b: SWAP5 00002a4c: SWAP4 00002a4d: SWAP2 00002a4e: SWAP5 00002a4f: PUSH2 0x2a59 00002a52: DUP4 00002a53: MLOAD 00002a54: PUSH1 0xff 00002a56: AND 00002a57: SWAP1 00002a58: JUMP 00002a59: JUMPDEST 00002a5a: SWAP1 00002a5b: PUSH2 0x366d 00002a5e: JUMP 00002a5f: JUMPDEST 00002a60: SWAP4 00002a61: PUSH1 0x40 00002a63: DUP3 00002a64: ADD 00002a65: SWAP3 00002a66: DUP4 00002a67: MLOAD 00002a68: PUSH1 0x20 00002a6a: DUP5 00002a6b: ADD 00002a6c: SWAP1 00002a6d: DUP2 00002a6e: MLOAD 00002a6f: EQ 00002a70: PUSH2 0x29d7 00002a73: JUMPI 00002a74: PUSH1 0x80 00002a76: DUP5 00002a77: ADD 00002a78: DUP1 00002a79: MLOAD 00002a7a: SWAP1 00002a7b: SWAP5 00002a7c: SWAP1 00002a7d: PUSH1 0x01 00002a7f: PUSH1 0x01 00002a81: PUSH1 0xa0 00002a83: SHL 00002a84: SUB 00002a85: AND 00002a86: ISZERO 00002a87: PUSH2 0x2b71 00002a8a: JUMPI 00002a8b: PUSH2 0x2b22 00002a8e: SWAP8 00002a8f: PUSH2 0x19ee 00002a92: DUP5 00002a93: PUSH2 0x2b52 00002a96: SWAP4 00002a97: PUSH32 0x469059a9fd182ad3741bdd67b925e15056d35262609ea83393db7e8fb5a05ab1 00002ab8: SWAP8 00002ab9: PUSH1 0x01 00002abb: PUSH2 0x2ad9 00002abe: PUSH2 0x2b5e 00002ac1: SWAP10 00002ac2: PUSH1 0x01 00002ac4: DUP1 00002ac5: PUSH1 0xa0 00002ac7: SHL 00002ac8: SUB 00002ac9: AND 00002aca: PUSH1 0x00 00002acc: MSTORE 00002acd: PUSH1 0x04 00002acf: PUSH1 0x20 00002ad1: MSTORE 00002ad2: PUSH1 0x40 00002ad4: PUSH1 0x00 00002ad6: KECCAK256 00002ad7: SWAP1 00002ad8: JUMP 00002ad9: JUMPDEST 00002ada: SLOAD 00002adb: SUB 00002adc: PUSH2 0x2b69 00002adf: JUMPI 00002ae0: SWAP6 00002ae1: JUMPDEST 00002ae2: MLOAD 00002ae3: SWAP10 00002ae4: MLOAD 00002ae5: SWAP2 00002ae6: PUSH2 0x2b10 00002ae9: PUSH2 0x2b01 00002aec: DUP13 00002aed: DUP6 00002aee: PUSH2 0x0120 00002af1: DUP7 00002af2: ADD 00002af3: MLOAD 00002af4: SWAP2 00002af5: SWAP1 00002af6: PUSH1 0x80 00002af8: SHL 00002af9: SWAP1 00002afa: PUSH1 0xc0 00002afc: SHL 00002afd: OR 00002afe: OR 00002aff: SWAP1 00002b00: JUMP 00002b01: JUMPDEST 00002b02: SWAP12 00002b03: DUP3 00002b04: PUSH1 0xe0 00002b06: DUP6 00002b07: ADD 00002b08: SWAP6 00002b09: DUP7 00002b0a: MLOAD 00002b0b: SWAP3 00002b0c: PUSH2 0x3682 00002b0f: JUMP 00002b10: JUMPDEST 00002b11: SWAP10 00002b12: MLOAD 00002b13: SWAP10 00002b14: SWAP13 00002b15: DUP14 00002b16: SWAP11 00002b17: PUSH1 0x01 00002b19: PUSH1 0x01 00002b1b: PUSH1 0xa0 00002b1d: SHL 00002b1e: SUB 00002b1f: AND 00002b20: SWAP1 00002b21: JUMP 00002b22: JUMPDEST 00002b23: PUSH1 0xa0 00002b25: DUP4 00002b26: ADD 00002b27: MLOAD 00002b28: SWAP1 00002b29: SWAP8 00002b2a: SWAP1 00002b2b: PUSH1 0x01 00002b2d: PUSH1 0x01 00002b2f: PUSH1 0xa0 00002b31: SHL 00002b32: SUB 00002b33: AND 00002b34: SWAP4 00002b35: PUSH2 0x0140 00002b38: PUSH2 0x0100 00002b3b: DUP6 00002b3c: ADD 00002b3d: MLOAD 00002b3e: SWAP2 00002b3f: MLOAD 00002b40: SWAP5 00002b41: ADD 00002b42: MLOAD 00002b43: SWAP5 00002b44: PUSH1 0x40 00002b46: MLOAD 00002b47: SWAP10 00002b48: DUP11 00002b49: SWAP9 00002b4a: PUSH1 0x20 00002b4c: DUP11 00002b4d: ADD 00002b4e: PUSH2 0x29e9 00002b51: JUMP 00002b52: JUMPDEST 00002b53: PUSH1 0x40 00002b55: MLOAD 00002b56: SWAP2 00002b57: DUP3 00002b58: SWAP2 00002b59: DUP3 00002b5a: PUSH2 0x0df0 00002b5d: JUMP 00002b5e: JUMPDEST 00002b5f: SUB 00002b60: SWAP1 00002b61: LOG3 00002b62: PUSH2 0x12a2 00002b65: PUSH2 0x36fc 00002b68: JUMP 00002b69: JUMPDEST 00002b6a: POP 00002b6b: DUP2 00002b6c: SWAP6 00002b6d: PUSH2 0x2ae1 00002b70: JUMP 00002b71: JUMPDEST 00002b72: PUSH1 0x40 00002b74: MLOAD 00002b75: PUSH4 0x96ce0f8f 00002b7a: PUSH1 0xe0 00002b7c: SHL 00002b7d: DUP2 00002b7e: MSTORE 00002b7f: PUSH1 0x04 00002b81: SWAP1 00002b82: REVERT 00002b83: JUMPDEST 00002b84: SWAP3 00002b85: SWAP2 00002b86: PUSH2 0x2a5f 00002b89: PUSH2 0x2b93 00002b8c: DUP3 00002b8d: MLOAD 00002b8e: PUSH1 0xff 00002b90: AND 00002b91: SWAP1 00002b92: JUMP 00002b93: JUMPDEST 00002b94: PUSH1 0xff 00002b96: AND 00002b97: SWAP1 00002b98: JUMP 00002b99: JUMPDEST 00002b9a: PUSH1 0x01 00002b9c: PUSH1 0x01 00002b9e: PUSH1 0xa0 00002ba0: SHL 00002ba1: SUB 00002ba2: SWAP3 00002ba3: SWAP2 00002ba4: DUP4 00002ba5: DUP3 00002ba6: AND 00002ba7: SWAP1 00002ba8: DUP3 00002ba9: SWAP1 00002baa: DUP3 00002bab: PUSH2 0x2be7 00002bae: JUMPI 00002baf: POP 00002bb0: POP 00002bb1: POP 00002bb2: POP 00002bb3: DUP1 00002bb4: CALLVALUE 00002bb5: LT 00002bb6: PUSH2 0x2bd5 00002bb9: JUMPI 00002bba: PUSH2 0x2bc6 00002bbd: SWAP2 00002bbe: PUSH1 0x01 00002bc0: SLOAD 00002bc1: AND 00002bc2: PUSH2 0x3838 00002bc5: JUMP 00002bc6: JUMPDEST 00002bc7: PUSH1 0x01 00002bc9: SLOAD 00002bca: PUSH1 0x01 00002bcc: PUSH1 0x01 00002bce: PUSH1 0xa0 00002bd0: SHL 00002bd1: SUB 00002bd2: AND 00002bd3: SWAP1 00002bd4: JUMP 00002bd5: JUMPDEST 00002bd6: PUSH1 0x40 00002bd8: MLOAD 00002bd9: PUSH4 0x3fb97151 00002bde: PUSH1 0xe1 00002be0: SHL 00002be1: DUP2 00002be2: MSTORE 00002be3: PUSH1 0x04 00002be5: SWAP1 00002be6: REVERT 00002be7: JUMPDEST 00002be8: SWAP1 00002be9: SWAP2 00002bea: SWAP4 00002beb: SWAP3 00002bec: SWAP6 00002bed: SWAP5 00002bee: POP 00002bef: PUSH2 0x2c05 00002bf2: DUP4 00002bf3: PUSH2 0x2bfc 00002bf6: ADDRESS 00002bf7: DUP6 00002bf8: PUSH2 0x3753 00002bfb: JUMP 00002bfc: JUMPDEST 00002bfd: SWAP3 00002bfe: ADDRESS 00002bff: SWAP1 00002c00: DUP6 00002c01: PUSH2 0x37db 00002c04: JUMP 00002c05: JUMPDEST 00002c06: PUSH2 0x2c0f 00002c09: ADDRESS 00002c0a: DUP4 00002c0b: PUSH2 0x3753 00002c0e: JUMP 00002c0f: JUMPDEST 00002c10: DUP4 00002c11: DUP3 00002c12: ADD 00002c13: DUP1 00002c14: SWAP3 00002c15: GT 00002c16: PUSH2 0x2916 00002c19: JUMPI 00002c1a: LT 00002c1b: PUSH2 0x2bd5 00002c1e: JUMPI 00002c1f: PUSH1 0x01 00002c21: PUSH1 0x01 00002c23: PUSH1 0xa0 00002c25: SHL 00002c26: SUB 00002c27: AND 00002c28: PUSH1 0x00 00002c2a: SWAP1 00002c2b: DUP2 00002c2c: MSTORE 00002c2d: PUSH1 0x06 00002c2f: PUSH1 0x20 00002c31: MSTORE 00002c32: PUSH1 0x40 00002c34: SWAP1 00002c35: KECCAK256 00002c36: SLOAD 00002c37: PUSH1 0x01 00002c39: SWAP1 00002c3a: DUP2 00002c3b: AND 00002c3c: EQ 00002c3d: PUSH2 0x2c44 00002c40: JUMPI 00002c41: POP 00002c42: POP 00002c43: JUMP 00002c44: JUMPDEST 00002c45: DUP2 00002c46: EXTCODESIZE 00002c47: ISZERO 00002c48: PUSH2 0x0241 00002c4b: JUMPI 00002c4c: PUSH1 0x00 00002c4e: SWAP2 00002c4f: PUSH1 0x24 00002c51: DUP4 00002c52: SWAP3 00002c53: PUSH1 0x40 00002c55: MLOAD 00002c56: SWAP5 00002c57: DUP6 00002c58: SWAP4 00002c59: DUP5 00002c5a: SWAP3 00002c5b: PUSH4 0x0852cd8d 00002c60: PUSH1 0xe3 00002c62: SHL 00002c63: DUP5 00002c64: MSTORE 00002c65: PUSH1 0x04 00002c67: DUP5 00002c68: ADD 00002c69: MSTORE 00002c6a: GAS 00002c6b: CALL 00002c6c: DUP1 00002c6d: ISZERO 00002c6e: PUSH2 0x1530 00002c71: JUMPI 00002c72: PUSH2 0x2c79 00002c75: JUMPI 00002c76: JUMPDEST 00002c77: POP 00002c78: JUMP 00002c79: JUMPDEST 00002c7a: PUSH2 0x12a2 00002c7d: SWAP1 00002c7e: PUSH2 0x0719 00002c81: JUMP 00002c82: JUMPDEST 00002c83: SWAP3 00002c84: SWAP2 00002c85: DUP4 00002c86: PUSH1 0x01 00002c88: PUSH1 0x01 00002c8a: PUSH1 0xa0 00002c8c: SHL 00002c8d: SUB 00002c8e: DUP2 00002c8f: AND 00002c90: PUSH2 0x2c9e 00002c93: JUMPI 00002c94: POP 00002c95: SWAP1 00002c96: POP 00002c97: CALLVALUE 00002c98: LT 00002c99: PUSH2 0x2bd5 00002c9c: JUMPI 00002c9d: JUMP 00002c9e: JUMPDEST 00002c9f: PUSH2 0x2cc0 00002ca2: SWAP1 00002ca3: PUSH2 0x2cb9 00002ca6: DUP4 00002ca7: PUSH2 0x2cb0 00002caa: ADDRESS 00002cab: DUP5 00002cac: PUSH2 0x3753 00002caf: JUMP 00002cb0: JUMPDEST 00002cb1: SWAP6 00002cb2: ADDRESS 00002cb3: SWAP1 00002cb4: DUP5 00002cb5: PUSH2 0x37db 00002cb8: JUMP 00002cb9: JUMPDEST 00002cba: ADDRESS 00002cbb: SWAP1 00002cbc: PUSH2 0x3753 00002cbf: JUMP 00002cc0: JUMPDEST 00002cc1: SWAP1 00002cc2: DUP3 00002cc3: ADD 00002cc4: DUP1 00002cc5: SWAP3 00002cc6: GT 00002cc7: PUSH2 0x2916 00002cca: JUMPI 00002ccb: LT 00002ccc: PUSH2 0x2bd5 00002ccf: JUMPI 00002cd0: JUMP 00002cd1: JUMPDEST 00002cd2: PUSH2 0x2cfe 00002cd5: PUSH1 0x0f 00002cd7: SWAP2 00002cd8: PUSH1 0x01 00002cda: SWAP4 00002cdb: PUSH1 0x00 00002cdd: MSTORE 00002cde: PUSH1 0x07 00002ce0: PUSH1 0x20 00002ce2: MSTORE 00002ce3: PUSH1 0x40 00002ce5: PUSH1 0x00 00002ce7: KECCAK256 00002ce8: SWAP1 00002ce9: PUSH1 0x01 00002ceb: DUP1 00002cec: PUSH1 0xa0 00002cee: SHL 00002cef: SUB 00002cf0: AND 00002cf1: PUSH1 0x00 00002cf3: MSTORE 00002cf4: PUSH1 0x20 00002cf6: MSTORE 00002cf7: PUSH1 0x40 00002cf9: PUSH1 0x00 00002cfb: KECCAK256 00002cfc: SWAP1 00002cfd: JUMP 00002cfe: JUMPDEST 00002cff: SLOAD 00002d00: AND 00002d01: SUB 00002d02: PUSH2 0x2d07 00002d05: JUMPI 00002d06: JUMP 00002d07: JUMPDEST 00002d08: PUSH1 0x40 00002d0a: MLOAD 00002d0b: PUSH4 0x068260cd 00002d10: PUSH1 0xe1 00002d12: SHL 00002d13: DUP2 00002d14: MSTORE 00002d15: PUSH1 0x04 00002d17: SWAP1 00002d18: REVERT 00002d19: JUMPDEST 00002d1a: SWAP3 00002d1b: SWAP2 00002d1c: SWAP1 00002d1d: DUP4 00002d1e: PUSH2 0x2d27 00002d21: ADDRESS 00002d22: DUP3 00002d23: PUSH2 0x3753 00002d26: JUMP 00002d27: JUMPDEST 00002d28: DUP4 00002d29: GT 00002d2a: PUSH2 0x2d92 00002d2d: JUMPI 00002d2e: PUSH1 0x01 00002d30: PUSH1 0x01 00002d32: PUSH1 0xa0 00002d34: SHL 00002d35: SUB 00002d36: SWAP1 00002d37: DUP1 00002d38: DUP3 00002d39: AND 00002d3a: DUP1 00002d3b: PUSH2 0x2d4b 00002d3e: JUMPI 00002d3f: POP 00002d40: POP 00002d41: POP 00002d42: SWAP1 00002d43: PUSH2 0x12a2 00002d46: SWAP2 00002d47: PUSH2 0x3a29 00002d4a: JUMP 00002d4b: JUMPDEST 00002d4c: DUP3 00002d4d: PUSH1 0x01 00002d4f: SWAP8 00002d50: SWAP4 00002d51: SWAP8 00002d52: SLOAD 00002d53: AND 00002d54: EQ 00002d55: DUP1 00002d56: PUSH2 0x2d8a 00002d59: JUMPI 00002d5a: JUMPDEST 00002d5b: ISZERO 00002d5c: PUSH2 0x2d7d 00002d5f: JUMPI 00002d60: POP 00002d61: POP 00002d62: PUSH2 0x2d73 00002d65: DUP3 00002d66: PUSH2 0x2d78 00002d69: SWAP5 00002d6a: SWAP6 00002d6b: PUSH1 0x01 00002d6d: SLOAD 00002d6e: AND 00002d6f: PUSH2 0x39fc 00002d72: JUMP 00002d73: JUMPDEST 00002d74: PUSH2 0x3a29 00002d77: JUMP 00002d78: JUMPDEST 00002d79: PUSH1 0x00 00002d7b: SWAP1 00002d7c: JUMP 00002d7d: JUMPDEST 00002d7e: PUSH2 0x12a2 00002d81: SWAP4 00002d82: SWAP3 00002d83: SWAP2 00002d84: SWAP6 00002d85: POP 00002d86: PUSH2 0x3860 00002d89: JUMP 00002d8a: JUMPDEST 00002d8b: POP 00002d8c: PUSH1 0x01 00002d8e: PUSH2 0x2d5a 00002d91: JUMP 00002d92: JUMPDEST 00002d93: PUSH1 0x40 00002d95: MLOAD 00002d96: PUSH4 0x42066747 00002d9b: PUSH1 0xe1 00002d9d: SHL 00002d9e: DUP2 00002d9f: MSTORE 00002da0: PUSH1 0x04 00002da2: SWAP1 00002da3: REVERT 00002da4: JUMPDEST 00002da5: SWAP3 00002da6: SWAP2 00002da7: SWAP1 00002da8: DUP4 00002da9: PUSH2 0x2db2 00002dac: ADDRESS 00002dad: DUP3 00002dae: PUSH2 0x3753 00002db1: JUMP 00002db2: JUMPDEST 00002db3: DUP4 00002db4: GT 00002db5: PUSH2 0x2d92 00002db8: JUMPI 00002db9: PUSH1 0x01 00002dbb: PUSH1 0x01 00002dbd: PUSH1 0xa0 00002dbf: SHL 00002dc0: SUB 00002dc1: SWAP1 00002dc2: DUP1 00002dc3: DUP3 00002dc4: AND 00002dc5: DUP1 00002dc6: PUSH2 0x2dd6 00002dc9: JUMPI 00002dca: POP 00002dcb: POP 00002dcc: POP 00002dcd: SWAP1 00002dce: PUSH2 0x12a2 00002dd1: SWAP2 00002dd2: PUSH2 0x3a29 00002dd5: JUMP 00002dd6: JUMPDEST 00002dd7: DUP3 00002dd8: PUSH1 0x01 00002dda: SWAP8 00002ddb: SWAP4 00002ddc: SWAP8 00002ddd: SLOAD 00002dde: AND 00002ddf: EQ 00002de0: DUP1 00002de1: PUSH2 0x2dfd 00002de4: JUMPI 00002de5: ISZERO 00002de6: PUSH2 0x2d7d 00002de9: JUMPI 00002dea: POP 00002deb: POP 00002dec: PUSH2 0x2d73 00002def: DUP3 00002df0: PUSH2 0x2d78 00002df3: SWAP5 00002df4: SWAP6 00002df5: PUSH1 0x01 00002df7: SLOAD 00002df8: AND 00002df9: PUSH2 0x39fc 00002dfc: JUMP 00002dfd: JUMPDEST 00002dfe: POP 00002dff: PUSH1 0x00 00002e01: PUSH2 0x2d5a 00002e04: JUMP 00002e05: JUMPDEST 00002e06: DUP1 00002e07: PUSH1 0x00 00002e09: MSTORE 00002e0a: PUSH1 0x05 00002e0c: PUSH1 0x20 00002e0e: MSTORE 00002e0f: PUSH1 0x01 00002e11: PUSH1 0x40 00002e13: PUSH1 0x00 00002e15: KECCAK256 00002e16: SLOAD 00002e17: LT 00002e18: ISZERO 00002e19: PUSH2 0x2e2e 00002e1c: JUMPI 00002e1d: PUSH1 0x00 00002e1f: MSTORE 00002e20: PUSH1 0x05 00002e22: PUSH1 0x20 00002e24: MSTORE 00002e25: PUSH1 0x01 00002e27: PUSH1 0x40 00002e29: PUSH1 0x00 00002e2b: KECCAK256 00002e2c: SSTORE 00002e2d: JUMP 00002e2e: JUMPDEST 00002e2f: PUSH1 0x40 00002e31: MLOAD 00002e32: PUSH4 0x98087555 00002e37: PUSH1 0xe0 00002e39: SHL 00002e3a: DUP2 00002e3b: MSTORE 00002e3c: PUSH1 0x04 00002e3e: SWAP1 00002e3f: REVERT 00002e40: JUMPDEST 00002e41: SWAP1 00002e42: PUSH1 0xe0 00002e44: DUP3 00002e45: DUP3 00002e46: SUB 00002e47: SLT 00002e48: PUSH2 0x0241 00002e4b: JUMPI 00002e4c: DUP2 00002e4d: MLOAD 00002e4e: SWAP3 00002e4f: PUSH1 0x20 00002e51: DUP4 00002e52: ADD 00002e53: MLOAD 00002e54: PUSH2 0x2e5c 00002e57: DUP2 00002e58: PUSH2 0x0230 00002e5b: JUMP 00002e5c: JUMPDEST 00002e5d: SWAP3 00002e5e: PUSH1 0x40 00002e60: DUP2 00002e61: ADD 00002e62: MLOAD 00002e63: PUSH2 0x2e6b 00002e66: DUP2 00002e67: PUSH2 0x0230 00002e6a: JUMP 00002e6b: JUMPDEST 00002e6c: SWAP3 00002e6d: PUSH1 0x60 00002e6f: DUP3 00002e70: ADD 00002e71: MLOAD 00002e72: SWAP3 00002e73: PUSH1 0x80 00002e75: DUP4 00002e76: ADD 00002e77: MLOAD 00002e78: PUSH2 0x2e80 00002e7b: DUP2 00002e7c: PUSH2 0x0230 00002e7f: JUMP 00002e80: JUMPDEST 00002e81: SWAP3 00002e82: PUSH1 0xa0 00002e84: DUP2 00002e85: ADD 00002e86: MLOAD 00002e87: SWAP3 00002e88: PUSH1 0x01 00002e8a: PUSH1 0x01 00002e8c: PUSH1 0x40 00002e8e: SHL 00002e8f: SUB 00002e90: SWAP4 00002e91: DUP5 00002e92: DUP2 00002e93: GT 00002e94: PUSH2 0x0241 00002e97: JUMPI 00002e98: DUP2 00002e99: PUSH2 0x2ea3 00002e9c: SWAP2 00002e9d: DUP5 00002e9e: ADD 00002e9f: PUSH2 0x1e77 00002ea2: JUMP 00002ea3: JUMPDEST 00002ea4: SWAP4 00002ea5: PUSH1 0xc0 00002ea7: DUP4 00002ea8: ADD 00002ea9: MLOAD 00002eaa: SWAP1 00002eab: DUP2 00002eac: GT 00002ead: PUSH2 0x0241 00002eb0: JUMPI 00002eb1: PUSH2 0x0511 00002eb4: SWAP3 00002eb5: ADD 00002eb6: PUSH2 0x1e77 00002eb9: JUMP 00002eba: JUMPDEST 00002ebb: SWAP1 00002ebc: PUSH2 0x2ec3 00002ebf: PUSH2 0x1b91 00002ec2: JUMP 00002ec3: JUMPDEST 00002ec4: SWAP2 00002ec5: PUSH1 0x40 00002ec7: DUP2 00002ec8: ADD 00002ec9: SWAP1 00002eca: DUP4 00002ecb: PUSH2 0x2ee1 00002ece: PUSH2 0x2edd 00002ed1: DUP5 00002ed2: MLOAD 00002ed3: PUSH1 0x00 00002ed5: PUSH1 0xf0 00002ed7: SWAP2 00002ed8: BYTE 00002ed9: AND 00002eda: ISZERO 00002edb: SWAP1 00002edc: JUMP 00002edd: JUMPDEST 00002ede: ISZERO 00002edf: SWAP1 00002ee0: JUMP 00002ee1: JUMPDEST 00002ee2: PUSH2 0x2fcd 00002ee5: JUMPI 00002ee6: PUSH2 0x19ee 00002ee9: PUSH2 0x2fc2 00002eec: SWAP3 00002eed: PUSH2 0x2fa1 00002ef0: PUSH1 0xff 00002ef2: PUSH1 0xc0 00002ef4: PUSH2 0x2f67 00002ef7: PUSH2 0x2f99 00002efa: SWAP9 00002efb: PUSH2 0x2f34 00002efe: PUSH2 0x2f1b 00002f01: PUSH1 0x20 00002f03: DUP1 00002f04: SWAP9 00002f05: ADD 00002f06: PUSH2 0x2f0f 00002f09: DUP2 00002f0a: MLOAD 00002f0b: PUSH2 0x1dde 00002f0e: JUMP 00002f0f: JUMPDEST 00002f10: MLOAD 00002f11: PUSH1 0x60 00002f13: DUP13 00002f14: ADD 00002f15: MSTORE 00002f16: MLOAD 00002f17: PUSH2 0x1dee 00002f1a: JUMP 00002f1b: JUMPDEST 00002f1c: MLOAD 00002f1d: DUP1 00002f1e: PUSH1 0xc0 00002f20: SHR 00002f21: SWAP2 00002f22: PUSH1 0x01 00002f24: PUSH1 0x01 00002f26: PUSH1 0x40 00002f28: SHL 00002f29: SUB 00002f2a: DUP1 00002f2b: DUP4 00002f2c: PUSH1 0x80 00002f2e: SHR 00002f2f: AND 00002f30: SWAP3 00002f31: AND 00002f32: SWAP1 00002f33: JUMP 00002f34: JUMPDEST 00002f35: PUSH2 0x0120 00002f38: DUP12 00002f39: ADD 00002f3a: MSTORE 00002f3b: PUSH1 0x40 00002f3d: DUP11 00002f3e: ADD 00002f3f: MSTORE 00002f40: DUP7 00002f41: DUP10 00002f42: ADD 00002f43: MSTORE 00002f44: PUSH2 0x2f56 00002f47: DUP2 00002f48: MLOAD 00002f49: DUP8 00002f4a: DUP1 00002f4b: DUP3 00002f4c: MLOAD 00002f4d: DUP4 00002f4e: ADD 00002f4f: ADD 00002f50: SWAP2 00002f51: ADD 00002f52: PUSH2 0x2377 00002f55: JUMP 00002f56: JUMPDEST 00002f57: DUP1 00002f58: SWAP2 00002f59: MSTORE 00002f5a: DUP6 00002f5b: DUP1 00002f5c: DUP3 00002f5d: MLOAD 00002f5e: DUP4 00002f5f: ADD 00002f60: ADD 00002f61: SWAP2 00002f62: ADD 00002f63: PUSH2 0x2e40 00002f66: JUMP 00002f67: JUMPDEST 00002f68: PUSH2 0x0140 00002f6b: DUP14 00002f6c: ADD 00002f6d: MSTORE 00002f6e: SWAP6 00002f6f: SWAP1 00002f70: SWAP11 00002f71: ADD 00002f72: SWAP5 00002f73: SWAP1 00002f74: SWAP5 00002f75: MSTORE 00002f76: PUSH2 0x0100 00002f79: DUP14 00002f7a: ADD 00002f7b: SWAP4 00002f7c: SWAP1 00002f7d: SWAP4 00002f7e: MSTORE 00002f7f: PUSH1 0x01 00002f81: PUSH1 0x01 00002f83: PUSH1 0xa0 00002f85: SHL 00002f86: SUB 00002f87: SWAP3 00002f88: DUP4 00002f89: AND 00002f8a: PUSH1 0xa0 00002f8c: DUP14 00002f8d: ADD 00002f8e: MSTORE 00002f8f: DUP3 00002f90: AND 00002f91: PUSH1 0x80 00002f93: DUP13 00002f94: ADD 00002f95: MSTORE 00002f96: SWAP1 00002f97: SWAP8 00002f98: JUMP 00002f99: JUMPDEST 00002f9a: AND 00002f9b: PUSH1 0xff 00002f9d: AND 00002f9e: DUP9 00002f9f: MSTORE 00002fa0: JUMP 00002fa1: JUMPDEST 00002fa2: PUSH1 0x40 00002fa4: MLOAD 00002fa5: SWAP5 00002fa6: DUP6 00002fa7: SWAP4 00002fa8: AND 00002fa9: SWAP1 00002faa: DUP4 00002fab: ADD 00002fac: PUSH1 0x14 00002fae: SWAP2 00002faf: PUSH1 0x01 00002fb1: PUSH1 0x01 00002fb3: PUSH1 0x60 00002fb5: SHL 00002fb6: SUB 00002fb7: NOT 00002fb8: SWAP1 00002fb9: PUSH1 0x60 00002fbb: SHL 00002fbc: AND 00002fbd: DUP2 00002fbe: MSTORE 00002fbf: ADD 00002fc0: SWAP1 00002fc1: JUMP 00002fc2: JUMPDEST 00002fc3: PUSH1 0xe0 00002fc5: DUP4 00002fc6: ADD 00002fc7: MSTORE 00002fc8: PUSH1 0x01 00002fca: SWAP2 00002fcb: SWAP1 00002fcc: JUMP 00002fcd: JUMPDEST 00002fce: POP 00002fcf: POP 00002fd0: POP 00002fd1: PUSH1 0x00 00002fd3: SWAP2 00002fd4: SWAP1 00002fd5: JUMP 00002fd6: JUMPDEST 00002fd7: PUSH1 0x01 00002fd9: PUSH1 0x01 00002fdb: PUSH1 0xa0 00002fdd: SHL 00002fde: SUB 00002fdf: DUP2 00002fe0: AND 00002fe1: PUSH1 0x00 00002fe3: SWAP1 00002fe4: DUP2 00002fe5: MSTORE 00002fe6: PUSH1 0x06 00002fe8: PUSH1 0x20 00002fea: MSTORE 00002feb: PUSH1 0x40 00002fed: SWAP1 00002fee: KECCAK256 00002fef: SLOAD 00002ff0: PUSH1 0x01 00002ff2: SWAP1 00002ff3: DUP2 00002ff4: AND 00002ff5: EQ 00002ff6: PUSH2 0x2ffd 00002ff9: JUMPI 00002ffa: POP 00002ffb: POP 00002ffc: JUMP 00002ffd: JUMPDEST 00002ffe: PUSH1 0x01 00003000: PUSH1 0x01 00003002: PUSH1 0xa0 00003004: SHL 00003005: SUB 00003006: AND 00003007: DUP1 00003008: EXTCODESIZE 00003009: ISZERO 0000300a: PUSH2 0x0241 0000300d: JUMPI 0000300e: PUSH1 0x40 00003010: MLOAD 00003011: PUSH4 0x40c10f19 00003016: PUSH1 0xe0 00003018: SHL 00003019: DUP2 0000301a: MSTORE 0000301b: ADDRESS 0000301c: PUSH1 0x04 0000301e: DUP3 0000301f: ADD 00003020: MSTORE 00003021: PUSH1 0x24 00003023: DUP2 00003024: ADD 00003025: SWAP3 00003026: SWAP1 00003027: SWAP3 00003028: MSTORE 00003029: PUSH1 0x00 0000302b: SWAP1 0000302c: DUP3 0000302d: SWAP1 0000302e: DUP2 0000302f: DUP4 00003030: DUP2 00003031: PUSH1 0x44 00003033: DUP2 00003034: ADD 00003035: JUMPDEST 00003036: SUB 00003037: SWAP3 00003038: GAS 00003039: CALL 0000303a: DUP1 0000303b: ISZERO 0000303c: PUSH2 0x1530 0000303f: JUMPI 00003040: PUSH2 0x2c79 00003043: JUMPI 00003044: POP 00003045: JUMP 00003046: JUMPDEST 00003047: SWAP5 00003048: SWAP2 00003049: SWAP3 0000304a: PUSH2 0x307d 0000304d: SWAP4 0000304e: PUSH2 0x0511 00003051: SWAP8 00003052: SWAP6 00003053: SWAP3 00003054: DUP8 00003055: MSTORE 00003056: PUSH1 0x01 00003058: DUP1 00003059: PUSH1 0xa0 0000305b: SHL 0000305c: SUB 0000305d: AND 0000305e: PUSH1 0x20 00003060: DUP8 00003061: ADD 00003062: MSTORE 00003063: PUSH1 0x40 00003065: DUP7 00003066: ADD 00003067: MSTORE 00003068: PUSH1 0x60 0000306a: DUP6 0000306b: ADD 0000306c: MSTORE 0000306d: PUSH1 0xc0 0000306f: PUSH1 0x80 00003071: DUP6 00003072: ADD 00003073: MSTORE 00003074: PUSH1 0xc0 00003076: DUP5 00003077: ADD 00003078: SWAP1 00003079: PUSH2 0x0dcb 0000307c: JUMP 0000307d: JUMPDEST 0000307e: SWAP2 0000307f: PUSH1 0xa0 00003081: DUP2 00003082: DUP5 00003083: SUB 00003084: SWAP2 00003085: ADD 00003086: MSTORE 00003087: PUSH2 0x0dcb 0000308a: JUMP 0000308b: JUMPDEST 0000308c: PUSH1 0xe0 0000308e: DUP2 0000308f: ADD 00003090: MLOAD 00003091: PUSH1 0x14 00003093: ADD 00003094: MLOAD 00003095: SWAP1 00003096: GAS 00003097: SWAP1 00003098: PUSH2 0x0140 0000309b: DUP2 0000309c: ADD 0000309d: SWAP3 0000309e: DUP4 0000309f: MLOAD 000030a0: MLOAD 000030a1: ISZERO 000030a2: ISZERO 000030a3: DUP1 000030a4: PUSH2 0x3187 000030a7: JUMPI 000030a8: JUMPDEST 000030a9: ISZERO 000030aa: PUSH2 0x314e 000030ad: JUMPI 000030ae: PUSH1 0xa0 000030b0: DUP3 000030b1: ADD 000030b2: DUP1 000030b3: MLOAD 000030b4: SWAP1 000030b5: SWAP5 000030b6: SWAP1 000030b7: PUSH1 0x01 000030b9: PUSH1 0x01 000030bb: PUSH1 0xa0 000030bd: SHL 000030be: SUB 000030bf: AND 000030c0: SWAP2 000030c1: PUSH2 0x30d2 000030c4: PUSH2 0x0100 000030c7: DUP6 000030c8: ADD 000030c9: SWAP4 000030ca: DUP3 000030cb: DUP6 000030cc: MLOAD 000030cd: SWAP2 000030ce: PUSH2 0x2da4 000030d1: JUMP 000030d2: JUMPDEST 000030d3: POP 000030d4: PUSH1 0x60 000030d6: DUP5 000030d7: ADD 000030d8: MLOAD 000030d9: SWAP6 000030da: MLOAD 000030db: PUSH1 0x01 000030dd: PUSH1 0x01 000030df: PUSH1 0xa0 000030e1: SHL 000030e2: SUB 000030e3: SWAP2 000030e4: DUP3 000030e5: AND 000030e6: SWAP2 000030e7: AND 000030e8: SWAP3 000030e9: MLOAD 000030ea: SWAP1 000030eb: PUSH1 0x20 000030ed: DUP6 000030ee: ADD 000030ef: MLOAD 000030f0: SWAP4 000030f1: PUSH1 0xc0 000030f3: DUP7 000030f4: ADD 000030f5: MLOAD 000030f6: SWAP4 000030f7: MLOAD 000030f8: DUP3 000030f9: EXTCODESIZE 000030fa: ISZERO 000030fb: PUSH2 0x0241 000030fe: JUMPI 000030ff: PUSH2 0x12a2 00003102: SWAP9 00003103: PUSH2 0x3128 00003106: PUSH1 0x00 00003108: SWAP7 00003109: SWAP3 0000310a: DUP8 0000310b: SWAP4 0000310c: PUSH1 0x40 0000310e: MLOAD 0000310f: SWAP10 00003110: DUP11 00003111: SWAP9 00003112: DUP10 00003113: SWAP8 00003114: DUP9 00003115: SWAP7 00003116: PUSH4 0x2344e655 0000311b: PUSH1 0xe0 0000311d: SHL 0000311e: DUP9 0000311f: MSTORE 00003120: PUSH1 0x04 00003122: DUP9 00003123: ADD 00003124: PUSH2 0x3046 00003127: JUMP 00003128: JUMPDEST 00003129: SUB 0000312a: SWAP3 0000312b: GAS 0000312c: CALL 0000312d: PUSH2 0x313b 00003130: JUMPI 00003131: JUMPDEST 00003132: POP 00003133: JUMPDEST 00003134: PUSH2 0x25c9 00003137: PUSH2 0x0d95 0000313a: JUMP 0000313b: JUMPDEST 0000313c: DUP1 0000313d: PUSH2 0x21bc 00003140: PUSH2 0x3148 00003143: SWAP3 00003144: PUSH2 0x0719 00003147: JUMP 00003148: JUMPDEST 00003149: CODESIZE 0000314a: PUSH2 0x3131 0000314d: JUMP 0000314e: JUMPDEST 0000314f: PUSH1 0xa0 00003151: DUP3 00003152: ADD 00003153: DUP1 00003154: MLOAD 00003155: PUSH2 0x0100 00003158: DUP5 00003159: ADD 0000315a: MLOAD 0000315b: PUSH2 0x12a2 0000315e: SWAP7 0000315f: POP 00003160: PUSH2 0x3182 00003163: SWAP4 00003164: PUSH2 0x3175 00003167: SWAP3 00003168: PUSH1 0x01 0000316a: PUSH1 0x01 0000316c: PUSH1 0xa0 0000316e: SHL 0000316f: SUB 00003170: AND 00003171: PUSH2 0x2d19 00003174: JUMP 00003175: JUMPDEST 00003176: PUSH1 0x01 00003178: PUSH1 0x01 0000317a: PUSH1 0xa0 0000317c: SHL 0000317d: SUB 0000317e: AND 0000317f: SWAP1 00003180: MSTORE 00003181: JUMP 00003182: JUMPDEST 00003183: PUSH2 0x3133 00003186: JUMP 00003187: JUMPDEST 00003188: POP 00003189: DUP1 0000318a: EXTCODESIZE 0000318b: ISZERO 0000318c: ISZERO 0000318d: PUSH2 0x30a8 00003190: JUMP 00003191: JUMPDEST 00003192: PUSH1 0x40 00003194: MLOAD 00003195: PUSH1 0x60 00003197: SWAP2 00003198: SWAP1 00003199: SWAP2 0000319a: SHL 0000319b: PUSH12 0xffffffffffffffffffffffff 000031a8: NOT 000031a9: AND 000031aa: PUSH1 0x20 000031ac: DUP3 000031ad: ADD 000031ae: MSTORE 000031af: PUSH2 0x0511 000031b2: DUP2 000031b3: PUSH1 0x34 000031b5: DUP2 000031b6: ADD 000031b7: PUSH2 0x19ee 000031ba: JUMP 000031bb: JUMPDEST 000031bc: SWAP2 000031bd: SWAP1 000031be: DUP3 000031bf: PUSH1 0x40 000031c1: SWAP2 000031c2: SUB 000031c3: SLT 000031c4: PUSH2 0x0241 000031c7: JUMPI 000031c8: PUSH1 0x20 000031ca: DUP3 000031cb: MLOAD 000031cc: PUSH2 0x31d4 000031cf: DUP2 000031d0: PUSH2 0x128b 000031d3: JUMP 000031d4: JUMPDEST 000031d5: SWAP3 000031d6: ADD 000031d7: MLOAD 000031d8: PUSH4 0xffffffff 000031dd: DUP2 000031de: AND 000031df: DUP2 000031e0: SUB 000031e1: PUSH2 0x0241 000031e4: JUMPI 000031e5: SWAP1 000031e6: JUMP 000031e7: JUMPDEST 000031e8: PUSH1 0x00 000031ea: DUP1 000031eb: SWAP2 000031ec: SWAP6 000031ed: SWAP5 000031ee: SWAP6 000031ef: DUP2 000031f0: SWAP5 000031f1: DUP3 000031f2: SWAP8 000031f3: PUSH1 0x40 000031f5: MLOAD 000031f6: SWAP1 000031f7: PUSH1 0x20 000031f9: SWAP7 000031fa: DUP8 000031fb: DUP4 000031fc: ADD 000031fd: SWAP4 000031fe: PUSH4 0xb7009613 00003203: PUSH1 0xe0 00003205: SHL 00003206: DUP6 00003207: MSTORE 00003208: PUSH1 0x01 0000320a: DUP1 0000320b: PUSH1 0xa0 0000320d: SHL 0000320e: SUB 0000320f: DUP1 00003210: SWAP3 00003211: AND 00003212: PUSH1 0x24 00003214: DUP6 00003215: ADD 00003216: MSTORE 00003217: AND 00003218: PUSH1 0x44 0000321a: DUP4 0000321b: ADD 0000321c: MSTORE 0000321d: PUSH4 0xffffffff 00003222: PUSH1 0xe0 00003224: SHL 00003225: AND 00003226: PUSH1 0x64 00003228: DUP3 00003229: ADD 0000322a: MSTORE 0000322b: PUSH1 0x64 0000322d: DUP2 0000322e: MSTORE 0000322f: PUSH2 0x3237 00003232: DUP2 00003233: PUSH2 0x06de 00003236: JUMP 00003237: JUMPDEST 00003238: MLOAD 00003239: SWAP2 0000323a: GAS 0000323b: STATICCALL 0000323c: SWAP1 0000323d: PUSH2 0x3244 00003240: PUSH2 0x245e 00003243: JUMP 00003244: JUMPDEST 00003245: SWAP2 00003246: PUSH2 0x3250 00003249: JUMPI 0000324a: JUMPDEST 0000324b: POP 0000324c: POP 0000324d: SWAP2 0000324e: SWAP1 0000324f: JUMP 00003250: JUMPDEST 00003251: DUP2 00003252: MLOAD 00003253: SWAP5 00003254: SWAP2 00003255: SWAP3 00003256: SWAP1 00003257: SWAP2 00003258: SWAP1 00003259: PUSH1 0x40 0000325b: DUP7 0000325c: LT 0000325d: PUSH2 0x327c 00003260: JUMPI 00003261: POP 00003262: POP 00003263: DUP1 00003264: PUSH2 0x3272 00003267: SWAP4 00003268: SWAP5 00003269: DUP4 0000326a: ADD 0000326b: ADD 0000326c: SWAP2 0000326d: ADD 0000326e: PUSH2 0x31bb 00003271: JUMP 00003272: JUMPDEST 00003273: SWAP2 00003274: SWAP1 00003275: JUMPDEST 00003276: CODESIZE 00003277: DUP1 00003278: PUSH2 0x324a 0000327b: JUMP 0000327c: JUMPDEST 0000327d: SWAP3 0000327e: SWAP2 0000327f: SWAP1 00003280: SWAP5 00003281: DUP2 00003282: DUP2 00003283: LT 00003284: ISZERO 00003285: PUSH2 0x3291 00003288: JUMPI 00003289: JUMPDEST 0000328a: POP 0000328b: POP 0000328c: POP 0000328d: PUSH2 0x3275 00003290: JUMP 00003291: JUMPDEST 00003292: PUSH2 0x32a1 00003295: SWAP4 00003296: POP 00003297: DUP3 00003298: ADD 00003299: DUP2 0000329a: ADD 0000329b: SWAP2 0000329c: ADD 0000329d: PUSH2 0x1e12 000032a0: JUMP 000032a1: JUMPDEST 000032a2: CODESIZE 000032a3: DUP1 000032a4: DUP1 000032a5: PUSH2 0x3289 000032a8: JUMP 000032a9: JUMPDEST 000032aa: SWAP2 000032ab: SWAP1 000032ac: DUP3 000032ad: SUB 000032ae: SWAP2 000032af: DUP3 000032b0: GT 000032b1: PUSH2 0x2916 000032b4: JUMPI 000032b5: JUMP 000032b6: JUMPDEST 000032b7: SWAP5 000032b8: SWAP2 000032b9: SWAP4 000032ba: PUSH2 0x32ee 000032bd: SWAP2 000032be: PUSH2 0x32fc 000032c1: SWAP5 000032c2: PUSH2 0x0511 000032c5: SWAP9 000032c6: SWAP7 000032c7: PUSH1 0x01 000032c9: DUP1 000032ca: PUSH1 0xa0 000032cc: SHL 000032cd: SUB 000032ce: DUP1 000032cf: SWAP4 000032d0: AND 000032d1: DUP10 000032d2: MSTORE 000032d3: PUSH1 0x20 000032d5: DUP10 000032d6: ADD 000032d7: MSTORE 000032d8: AND 000032d9: PUSH1 0x40 000032db: DUP8 000032dc: ADD 000032dd: MSTORE 000032de: PUSH1 0xe0 000032e0: PUSH1 0x60 000032e2: DUP8 000032e3: ADD 000032e4: MSTORE 000032e5: PUSH1 0xe0 000032e7: DUP7 000032e8: ADD 000032e9: SWAP1 000032ea: PUSH2 0x0dcb 000032ed: JUMP 000032ee: JUMPDEST 000032ef: SWAP1 000032f0: DUP5 000032f1: DUP3 000032f2: SUB 000032f3: PUSH1 0x80 000032f5: DUP7 000032f6: ADD 000032f7: MSTORE 000032f8: PUSH2 0x0dcb 000032fb: JUMP 000032fc: JUMPDEST 000032fd: SWAP2 000032fe: PUSH1 0x01 00003300: PUSH1 0xa0 00003302: DUP3 00003303: ADD 00003304: MSTORE 00003305: PUSH1 0xc0 00003307: DUP2 00003308: DUP5 00003309: SUB 0000330a: SWAP2 0000330b: ADD 0000330c: MSTORE 0000330d: PUSH2 0x0dcb 00003310: JUMP 00003311: JUMPDEST 00003312: SWAP5 00003313: SWAP2 00003314: SWAP4 00003315: PUSH2 0x32ee 00003318: SWAP2 00003319: PUSH2 0x3349 0000331c: SWAP5 0000331d: PUSH2 0x0511 00003320: SWAP9 00003321: SWAP7 00003322: PUSH1 0x01 00003324: DUP1 00003325: PUSH1 0xa0 00003327: SHL 00003328: SUB 00003329: DUP1 0000332a: SWAP4 0000332b: AND 0000332c: DUP10 0000332d: MSTORE 0000332e: PUSH1 0x20 00003330: DUP10 00003331: ADD 00003332: MSTORE 00003333: AND 00003334: PUSH1 0x40 00003336: DUP8 00003337: ADD 00003338: MSTORE 00003339: PUSH1 0xe0 0000333b: PUSH1 0x60 0000333d: DUP8 0000333e: ADD 0000333f: MSTORE 00003340: PUSH1 0xe0 00003342: DUP7 00003343: ADD 00003344: SWAP1 00003345: PUSH2 0x0dcb 00003348: JUMP 00003349: JUMPDEST 0000334a: SWAP2 0000334b: PUSH1 0x00 0000334d: PUSH1 0xa0 0000334f: DUP3 00003350: ADD 00003351: MSTORE 00003352: PUSH1 0xc0 00003354: DUP2 00003355: DUP5 00003356: SUB 00003357: SWAP2 00003358: ADD 00003359: MSTORE 0000335a: PUSH2 0x0dcb 0000335d: JUMP 0000335e: JUMPDEST 0000335f: SWAP1 00003360: SWAP2 00003361: DUP1 00003362: ISZERO 00003363: PUSH2 0x34bd 00003366: JUMPI 00003367: GAS 00003368: DUP2 00003369: SUB 0000336a: SWAP1 0000336b: DUP2 0000336c: GT 0000336d: PUSH2 0x2916 00003370: JUMPI 00003371: JUMPDEST 00003372: PUSH1 0x20 00003374: DUP4 00003375: ADD 00003376: MLOAD 00003377: PUSH1 0x40 00003379: DUP5 0000337a: ADD 0000337b: MLOAD 0000337c: SWAP1 0000337d: SWAP2 0000337e: PUSH1 0x01 00003380: PUSH1 0x01 00003382: PUSH1 0x40 00003384: SHL 00003385: SUB 00003386: AND 00003387: PUSH1 0x80 00003389: DUP3 0000338a: SWAP1 0000338b: SHL 0000338c: PUSH8 0xffffffffffffffff 00003395: PUSH1 0x80 00003397: SHL 00003398: AND 00003399: PUSH1 0xc0 0000339b: DUP5 0000339c: SWAP1 0000339d: SHL 0000339e: PUSH1 0x01 000033a0: PUSH1 0x01 000033a2: PUSH1 0xc0 000033a4: SHL 000033a5: SUB 000033a6: NOT 000033a7: AND 000033a8: OR 000033a9: OR 000033aa: SWAP5 000033ab: DUP5 000033ac: MLOAD 000033ad: PUSH2 0x33b6 000033b0: SWAP1 000033b1: PUSH1 0xff 000033b3: AND 000033b4: SWAP1 000033b5: JUMP 000033b6: JUMPDEST 000033b7: PUSH1 0xa0 000033b9: DUP7 000033ba: ADD 000033bb: DUP1 000033bc: MLOAD 000033bd: SWAP1 000033be: SWAP7 000033bf: SWAP2 000033c0: SWAP6 000033c1: SWAP2 000033c2: SWAP1 000033c3: PUSH1 0x01 000033c5: PUSH1 0x01 000033c7: PUSH1 0xa0 000033c9: SHL 000033ca: SUB 000033cb: AND 000033cc: PUSH2 0x0100 000033cf: DUP3 000033d0: ADD 000033d1: SWAP5 000033d2: DUP6 000033d3: MLOAD 000033d4: SWAP7 000033d5: PUSH2 0x0120 000033d8: DUP5 000033d9: ADD 000033da: SWAP1 000033db: DUP2 000033dc: MLOAD 000033dd: SWAP3 000033de: PUSH1 0xc0 000033e0: DUP7 000033e1: ADD 000033e2: SWAP11 000033e3: DUP12 000033e4: MLOAD 000033e5: SWAP11 000033e6: PUSH1 0xe0 000033e8: DUP9 000033e9: ADD 000033ea: SWAP12 000033eb: DUP13 000033ec: MLOAD 000033ed: SWAP1 000033ee: DUP11 000033ef: PUSH2 0x0140 000033f2: DUP12 000033f3: ADD 000033f4: SWAP9 000033f5: DUP10 000033f6: MLOAD 000033f7: SWAP5 000033f8: PUSH1 0x40 000033fa: MLOAD 000033fb: SWAP12 000033fc: DUP13 000033fd: SWAP9 000033fe: PUSH1 0x20 00003400: DUP11 00003401: ADD 00003402: SWAP11 00003403: PUSH2 0x340c 00003406: SWAP10 00003407: DUP13 00003408: PUSH2 0x3a64 0000340b: JUMP 0000340c: JUMPDEST 0000340d: SUB 0000340e: SWAP4 0000340f: PUSH1 0x1f 00003411: NOT 00003412: SWAP5 00003413: DUP6 00003414: DUP2 00003415: ADD 00003416: DUP3 00003417: MSTORE 00003418: PUSH2 0x3421 0000341b: SWAP1 0000341c: DUP3 0000341d: PUSH2 0x0762 00003420: JUMP 00003421: JUMPDEST 00003422: MLOAD 00003423: SWAP1 00003424: KECCAK256 00003425: SWAP4 00003426: PUSH1 0x60 00003428: DUP2 00003429: ADD 0000342a: SWAP5 0000342b: DUP6 0000342c: MLOAD 0000342d: PUSH2 0x3440 00003430: SWAP1 00003431: PUSH1 0x00 00003433: MSTORE 00003434: PUSH1 0x05 00003436: PUSH1 0x20 00003438: MSTORE 00003439: PUSH1 0x40 0000343b: PUSH1 0x00 0000343d: KECCAK256 0000343e: SWAP1 0000343f: JUMP 00003440: JUMPDEST 00003441: SSTORE 00003442: MLOAD 00003443: PUSH1 0xff 00003445: AND 00003446: SWAP1 00003447: MLOAD 00003448: SWAP2 00003449: DUP9 0000344a: MLOAD 0000344b: SWAP1 0000344c: MLOAD 0000344d: SWAP1 0000344e: PUSH1 0x40 00003450: MLOAD 00003451: SWAP7 00003452: DUP8 00003453: SWAP5 00003454: PUSH1 0x20 00003456: DUP7 00003457: ADD 00003458: SWAP5 00003459: PUSH2 0x3461 0000345c: SWAP6 0000345d: PUSH2 0x3adf 00003460: JUMP 00003461: JUMPDEST 00003462: SUB 00003463: SWAP1 00003464: DUP2 00003465: ADD 00003466: DUP4 00003467: MSTORE 00003468: PUSH2 0x3471 0000346b: SWAP1 0000346c: DUP4 0000346d: PUSH2 0x0762 00003470: JUMP 00003471: JUMPDEST 00003472: MLOAD 00003473: SWAP6 00003474: MLOAD 00003475: PUSH1 0x01 00003477: PUSH1 0x01 00003479: PUSH1 0xa0 0000347b: SHL 0000347c: SUB 0000347d: AND 0000347e: SWAP3 0000347f: MLOAD 00003480: SWAP4 00003481: MLOAD 00003482: PUSH1 0x14 00003484: ADD 00003485: MLOAD 00003486: SWAP5 00003487: MLOAD 00003488: PUSH1 0x40 0000348a: MLOAD 0000348b: SWAP6 0000348c: DUP7 0000348d: SWAP6 0000348e: PUSH2 0x3497 00003491: SWAP6 00003492: DUP8 00003493: PUSH2 0x3311 00003496: JUMP 00003497: JUMPDEST 00003498: SUB 00003499: PUSH32 0x13d3a5b2d6aaada5c31b5654f99c2ab9587cf9a53ee4b2e25b6c68a8dfaa4472 000034ba: SWAP2 000034bb: LOG3 000034bc: JUMP 000034bd: JUMPDEST 000034be: POP 000034bf: PUSH1 0x00 000034c1: PUSH2 0x3371 000034c4: JUMP 000034c5: JUMPDEST 000034c6: SWAP1 000034c7: DUP1 000034c8: ISZERO 000034c9: PUSH2 0x358f 000034cc: JUMPI 000034cd: PUSH2 0x34da 000034d0: PUSH2 0x3514 000034d3: SWAP2 000034d4: GAS 000034d5: SWAP1 000034d6: PUSH2 0x32a9 000034d9: JUMP 000034da: JUMPDEST 000034db: PUSH1 0x20 000034dd: DUP4 000034de: ADD 000034df: MLOAD 000034e0: PUSH1 0x01 000034e2: PUSH1 0x01 000034e4: PUSH1 0x40 000034e6: SHL 000034e7: SUB 000034e8: AND 000034e9: PUSH1 0x40 000034eb: DUP5 000034ec: ADD 000034ed: MLOAD 000034ee: PUSH1 0x01 000034f0: PUSH1 0x01 000034f2: PUSH1 0x40 000034f4: SHL 000034f5: SUB 000034f6: AND 000034f7: SWAP2 000034f8: PUSH1 0x01 000034fa: PUSH1 0x01 000034fc: PUSH1 0x40 000034fe: SHL 000034ff: SUB 00003500: DUP1 00003501: DUP1 00003502: SWAP3 00003503: AND 00003504: SWAP4 00003505: AND 00003506: SWAP2 00003507: AND 00003508: SWAP1 00003509: PUSH1 0x80 0000350b: SHL 0000350c: SWAP1 0000350d: PUSH1 0xc0 0000350f: SHL 00003510: OR 00003511: OR 00003512: SWAP1 00003513: JUMP 00003514: JUMPDEST 00003515: PUSH1 0x60 00003517: DUP3 00003518: ADD 00003519: MLOAD 0000351a: PUSH1 0xa0 0000351c: DUP4 0000351d: ADD 0000351e: MLOAD 0000351f: SWAP2 00003520: SWAP3 00003521: SWAP1 00003522: SWAP2 00003523: PUSH32 0x13d3a5b2d6aaada5c31b5654f99c2ab9587cf9a53ee4b2e25b6c68a8dfaa4472 00003544: SWAP2 00003545: SWAP1 00003546: PUSH1 0x01 00003548: PUSH1 0x01 0000354a: PUSH1 0xa0 0000354c: SHL 0000354d: SUB 0000354e: AND 0000354f: PUSH2 0x358a 00003552: PUSH2 0x0100 00003555: DUP4 00003556: ADD 00003557: MLOAD 00003558: SWAP3 00003559: PUSH1 0xc0 0000355b: PUSH2 0x3569 0000355e: PUSH1 0xe0 00003560: DUP4 00003561: ADD 00003562: MLOAD 00003563: PUSH1 0x14 00003565: ADD 00003566: MLOAD 00003567: SWAP1 00003568: JUMP 00003569: JUMPDEST 0000356a: SWAP2 0000356b: ADD 0000356c: MLOAD 0000356d: PUSH2 0x3574 00003570: PUSH2 0x0d95 00003573: JUMP 00003574: JUMPDEST 00003575: SWAP1 00003576: PUSH2 0x357d 00003579: PUSH2 0x0d95 0000357c: JUMP 0000357d: JUMPDEST 0000357e: SWAP3 0000357f: PUSH1 0x40 00003581: MLOAD 00003582: SWAP7 00003583: DUP8 00003584: SWAP7 00003585: DUP8 00003586: PUSH2 0x32b6 00003589: JUMP 0000358a: JUMPDEST 0000358b: SUB 0000358c: SWAP1 0000358d: LOG3 0000358e: JUMP 0000358f: JUMPDEST 00003590: POP 00003591: PUSH2 0x3514 00003594: PUSH1 0x00 00003596: PUSH2 0x34da 00003599: JUMP 0000359a: JUMPDEST 0000359b: PUSH1 0xff 0000359d: PUSH1 0x00 0000359f: DUP1 000035a0: MLOAD 000035a1: PUSH1 0x20 000035a3: PUSH2 0x3c79 000035a6: DUP4 000035a7: CODECOPY 000035a8: DUP2 000035a9: MLOAD 000035aa: SWAP2 000035ab: MSTORE 000035ac: SLOAD 000035ad: PUSH1 0x40 000035af: SHR 000035b0: AND 000035b1: ISZERO 000035b2: PUSH2 0x35b7 000035b5: JUMPI 000035b6: JUMP 000035b7: JUMPDEST 000035b8: PUSH1 0x40 000035ba: MLOAD 000035bb: PUSH4 0x1afcd79f 000035c0: PUSH1 0xe3 000035c2: SHL 000035c3: DUP2 000035c4: MSTORE 000035c5: PUSH1 0x04 000035c7: SWAP1 000035c8: REVERT 000035c9: JUMPDEST 000035ca: SWAP1 000035cb: DUP2 000035cc: EXTCODESIZE 000035cd: ISZERO 000035ce: PUSH2 0x364c 000035d1: JUMPI 000035d2: PUSH1 0x00 000035d4: DUP1 000035d5: MLOAD 000035d6: PUSH1 0x20 000035d8: PUSH2 0x3c19 000035db: DUP4 000035dc: CODECOPY 000035dd: DUP2 000035de: MLOAD 000035df: SWAP2 000035e0: MSTORE 000035e1: DUP1 000035e2: SLOAD 000035e3: PUSH1 0x01 000035e5: PUSH1 0x01 000035e7: PUSH1 0xa0 000035e9: SHL 000035ea: SUB 000035eb: NOT 000035ec: AND 000035ed: PUSH1 0x01 000035ef: PUSH1 0x01 000035f1: PUSH1 0xa0 000035f3: SHL 000035f4: SUB 000035f5: DUP5 000035f6: AND 000035f7: SWAP1 000035f8: DUP2 000035f9: OR 000035fa: SWAP1 000035fb: SWAP2 000035fc: SSTORE 000035fd: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 0000361e: PUSH1 0x00 00003620: DUP1 00003621: LOG2 00003622: DUP1 00003623: MLOAD 00003624: ISZERO 00003625: PUSH2 0x3631 00003628: JUMPI 00003629: PUSH2 0x2c76 0000362c: SWAP2 0000362d: PUSH2 0x3b25 00003630: JUMP 00003631: JUMPDEST 00003632: POP 00003633: POP 00003634: CALLVALUE 00003635: PUSH2 0x363a 00003638: JUMPI 00003639: JUMP 0000363a: JUMPDEST 0000363b: PUSH1 0x40 0000363d: MLOAD 0000363e: PUSH4 0xb398979f 00003643: PUSH1 0xe0 00003645: SHL 00003646: DUP2 00003647: MSTORE 00003648: PUSH1 0x04 0000364a: SWAP1 0000364b: REVERT 0000364c: JUMPDEST 0000364d: PUSH1 0x40 0000364f: MLOAD 00003650: PUSH4 0x4c9c8ce3 00003655: PUSH1 0xe0 00003657: SHL 00003658: DUP2 00003659: MSTORE 0000365a: PUSH1 0x01 0000365c: PUSH1 0x01 0000365e: PUSH1 0xa0 00003660: SHL 00003661: SUB 00003662: DUP4 00003663: AND 00003664: PUSH1 0x04 00003666: DUP3 00003667: ADD 00003668: MSTORE 00003669: PUSH1 0x24 0000366b: SWAP1 0000366c: REVERT 0000366d: JUMPDEST 0000366e: SWAP1 0000366f: PUSH1 0xff 00003671: AND 00003672: SWAP1 00003673: PUSH2 0x3679 00003676: JUMPI 00003677: SWAP1 00003678: JUMP 00003679: JUMPDEST 0000367a: PUSH1 0x01 0000367c: PUSH1 0x40 0000367e: SHL 0000367f: OR 00003680: SWAP1 00003681: JUMP 00003682: JUMPDEST 00003683: PUSH1 0x00 00003685: SLOAD 00003686: SWAP4 00003687: SWAP2 00003688: SWAP3 00003689: SWAP1 0000368a: PUSH1 0x00 0000368c: NOT 0000368d: DUP6 0000368e: EQ 0000368f: PUSH2 0x2916 00003692: JUMPI 00003693: PUSH2 0x36f6 00003696: SWAP3 00003697: PUSH1 0xa8 00003699: SWAP3 0000369a: PUSH1 0x01 0000369c: DUP8 0000369d: ADD 0000369e: PUSH1 0x00 000036a0: SSTORE 000036a1: PUSH1 0x40 000036a3: MLOAD 000036a4: SWAP6 000036a5: DUP7 000036a6: SWAP4 000036a7: PUSH1 0x20 000036a9: DUP6 000036aa: ADD 000036ab: SWAP9 000036ac: ADDRESS 000036ad: PUSH1 0x60 000036af: SHL 000036b0: DUP11 000036b1: MSTORE 000036b2: PUSH1 0x34 000036b4: DUP7 000036b5: ADD 000036b6: MSTORE 000036b7: PUSH1 0x54 000036b9: DUP6 000036ba: ADD 000036bb: MSTORE 000036bc: PUSH1 0x74 000036be: DUP5 000036bf: ADD 000036c0: MSTORE 000036c1: PUSH1 0x01 000036c3: PUSH1 0x01 000036c5: PUSH1 0x60 000036c7: SHL 000036c8: SUB 000036c9: NOT 000036ca: SWAP1 000036cb: PUSH1 0x60 000036cd: SHL 000036ce: AND 000036cf: PUSH1 0x94 000036d1: DUP4 000036d2: ADD 000036d3: MSTORE 000036d4: PUSH2 0x36e6 000036d7: DUP2 000036d8: MLOAD 000036d9: DUP1 000036da: SWAP3 000036db: PUSH1 0x20 000036dd: DUP7 000036de: DUP7 000036df: ADD 000036e0: SWAP2 000036e1: ADD 000036e2: PUSH2 0x0da8 000036e5: JUMP 000036e6: JUMPDEST 000036e7: DUP2 000036e8: ADD 000036e9: SUB 000036ea: PUSH1 0x88 000036ec: DUP2 000036ed: ADD 000036ee: DUP5 000036ef: MSTORE 000036f0: ADD 000036f1: DUP3 000036f2: PUSH2 0x0762 000036f5: JUMP 000036f6: JUMPDEST 000036f7: MLOAD 000036f8: SWAP1 000036f9: KECCAK256 000036fa: SWAP1 000036fb: JUMP 000036fc: JUMPDEST 000036fd: PUSH1 0x0a 000036ff: SLOAD 00003700: PUSH1 0x40 00003702: MLOAD 00003703: SWAP1 00003704: PUSH1 0x01 00003706: PUSH1 0x01 00003708: PUSH1 0xa0 0000370a: SHL 0000370b: SUB 0000370c: AND 0000370d: PUSH2 0x3715 00003710: DUP3 00003711: PUSH2 0x072c 00003714: JUMP 00003715: JUMPDEST 00003716: PUSH1 0x00 00003718: DUP3 00003719: MSTORE 0000371a: DUP1 0000371b: EXTCODESIZE 0000371c: ISZERO 0000371d: PUSH2 0x0241 00003720: JUMPI 00003721: PUSH2 0x3035 00003724: PUSH1 0x00 00003726: SWAP3 00003727: SWAP2 00003728: DUP4 00003729: SWAP3 0000372a: PUSH1 0x40 0000372c: MLOAD 0000372d: SWAP5 0000372e: DUP6 0000372f: DUP1 00003730: SWAP5 00003731: DUP2 00003732: SWAP4 00003733: PUSH4 0x0121b069 00003738: PUSH1 0xe7 0000373a: SHL 0000373b: DUP4 0000373c: MSTORE 0000373d: ADDRESS 0000373e: PUSH1 0x04 00003740: DUP5 00003741: ADD 00003742: MSTORE 00003743: PUSH1 0x40 00003745: PUSH1 0x24 00003747: DUP5 00003748: ADD 00003749: MSTORE 0000374a: PUSH1 0x44 0000374c: DUP4 0000374d: ADD 0000374e: SWAP1 0000374f: PUSH2 0x0dcb 00003752: JUMP 00003753: JUMPDEST 00003754: PUSH1 0x01 00003756: PUSH1 0x01 00003758: PUSH1 0xa0 0000375a: SHL 0000375b: SUB 0000375c: SWAP1 0000375d: DUP2 0000375e: AND 0000375f: SWAP1 00003760: DUP2 00003761: ISZERO 00003762: DUP1 00003763: ISZERO 00003764: PUSH2 0x37be 00003767: JUMPI 00003768: JUMPDEST 00003769: ISZERO 0000376a: PUSH2 0x3773 0000376d: JUMPI 0000376e: POP 0000376f: POP 00003770: BALANCE 00003771: SWAP1 00003772: JUMP 00003773: JUMPDEST 00003774: PUSH1 0x40 00003776: MLOAD 00003777: PUSH4 0x70a08231 0000377c: PUSH1 0xe0 0000377e: SHL 0000377f: DUP2 00003780: MSTORE 00003781: SWAP3 00003782: AND 00003783: PUSH1 0x04 00003785: DUP4 00003786: ADD 00003787: MSTORE 00003788: PUSH1 0x20 0000378a: SWAP1 0000378b: DUP3 0000378c: SWAP1 0000378d: PUSH1 0x24 0000378f: SWAP1 00003790: DUP3 00003791: SWAP1 00003792: GAS 00003793: STATICCALL 00003794: SWAP1 00003795: DUP2 00003796: ISZERO 00003797: PUSH2 0x1530 0000379a: JUMPI 0000379b: PUSH1 0x00 0000379d: SWAP2 0000379e: PUSH2 0x37a5 000037a1: JUMPI 000037a2: POP 000037a3: SWAP1 000037a4: JUMP 000037a5: JUMPDEST 000037a6: PUSH2 0x0511 000037a9: SWAP2 000037aa: POP 000037ab: PUSH1 0x20 000037ad: RETURNDATASIZE 000037ae: PUSH1 0x20 000037b0: GT 000037b1: PUSH2 0x0949 000037b4: JUMPI 000037b5: PUSH2 0x093a 000037b8: DUP2 000037b9: DUP4 000037ba: PUSH2 0x0762 000037bd: JUMP 000037be: JUMPDEST 000037bf: POP 000037c0: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 000037d5: DUP3 000037d6: EQ 000037d7: PUSH2 0x3768 000037da: JUMP 000037db: JUMPDEST 000037dc: PUSH1 0x40 000037de: MLOAD 000037df: PUSH4 0x23b872dd 000037e4: PUSH1 0xe0 000037e6: SHL 000037e7: PUSH1 0x20 000037e9: DUP3 000037ea: ADD 000037eb: SWAP1 000037ec: DUP2 000037ed: MSTORE 000037ee: PUSH1 0x01 000037f0: PUSH1 0x01 000037f2: PUSH1 0xa0 000037f4: SHL 000037f5: SUB 000037f6: SWAP4 000037f7: DUP5 000037f8: AND 000037f9: PUSH1 0x24 000037fb: DUP4 000037fc: ADD 000037fd: MSTORE 000037fe: SWAP4 000037ff: SWAP1 00003800: SWAP3 00003801: AND 00003802: PUSH1 0x44 00003804: DUP4 00003805: ADD 00003806: MSTORE 00003807: PUSH1 0x64 00003809: DUP3 0000380a: ADD 0000380b: SWAP4 0000380c: SWAP1 0000380d: SWAP4 0000380e: MSTORE 0000380f: PUSH2 0x12a2 00003812: SWAP3 00003813: PUSH1 0x00 00003815: SWAP3 00003816: DUP4 00003817: SWAP3 00003818: DUP4 00003819: SWAP1 0000381a: PUSH2 0x3826 0000381d: DUP2 0000381e: PUSH1 0x84 00003820: DUP2 00003821: ADD 00003822: PUSH2 0x19ee 00003825: JUMP 00003826: JUMPDEST 00003827: MLOAD 00003828: SWAP3 00003829: GAS 0000382a: CALL 0000382b: PUSH2 0x3832 0000382e: PUSH2 0x245e 00003831: JUMP 00003832: JUMPDEST 00003833: SWAP1 00003834: PUSH2 0x3b43 00003837: JUMP 00003838: JUMPDEST 00003839: PUSH1 0x00 0000383b: DUP1 0000383c: SWAP2 0000383d: PUSH2 0x12a2 00003840: SWAP4 00003841: PUSH1 0x40 00003843: MLOAD 00003844: SWAP1 00003845: PUSH1 0x20 00003847: DUP3 00003848: ADD 00003849: SWAP2 0000384a: PUSH4 0x0d0e30db 0000384f: PUSH1 0xe4 00003851: SHL 00003852: DUP4 00003853: MSTORE 00003854: PUSH1 0x04 00003856: DUP2 00003857: MSTORE 00003858: PUSH2 0x3826 0000385b: DUP2 0000385c: PUSH2 0x0747 0000385f: JUMP 00003860: JUMPDEST 00003861: SWAP2 00003862: SWAP1 00003863: PUSH4 0x2b6653dc 00003868: CHAINID 00003869: EQ 0000386a: DUP1 0000386b: PUSH2 0x39d6 0000386e: JUMPI 0000386f: JUMPDEST 00003870: ISZERO 00003871: PUSH2 0x3993 00003874: JUMPI 00003875: PUSH1 0x40 00003877: MLOAD 00003878: PUSH4 0x70a08231 0000387d: PUSH1 0xe0 0000387f: SHL 00003880: DUP1 00003881: DUP3 00003882: MSTORE 00003883: ADDRESS 00003884: PUSH1 0x04 00003886: DUP4 00003887: ADD 00003888: MSTORE 00003889: SWAP1 0000388a: SWAP4 0000388b: PUSH1 0x20 0000388d: SWAP4 0000388e: PUSH1 0x01 00003890: PUSH1 0x01 00003892: PUSH1 0xa0 00003894: SHL 00003895: SUB 00003896: DUP3 00003897: AND 00003898: SWAP4 00003899: SWAP1 0000389a: DUP6 0000389b: DUP8 0000389c: PUSH1 0x24 0000389e: DUP2 0000389f: DUP9 000038a0: GAS 000038a1: STATICCALL 000038a2: SWAP7 000038a3: DUP8 000038a4: ISZERO 000038a5: PUSH2 0x1530 000038a8: JUMPI 000038a9: PUSH1 0x00 000038ab: SWAP8 000038ac: PUSH2 0x395d 000038af: JUMPI 000038b0: JUMPDEST 000038b1: POP 000038b2: PUSH1 0x40 000038b4: MLOAD 000038b5: PUSH4 0xa9059cbb 000038ba: PUSH1 0xe0 000038bc: SHL 000038bd: DUP2 000038be: DUP9 000038bf: ADD 000038c0: SWAP1 000038c1: DUP2 000038c2: MSTORE 000038c3: PUSH1 0x01 000038c5: PUSH1 0x01 000038c7: PUSH1 0xa0 000038c9: SHL 000038ca: SUB 000038cb: SWAP1 000038cc: SWAP4 000038cd: AND 000038ce: PUSH1 0x24 000038d0: DUP3 000038d1: ADD 000038d2: MSTORE 000038d3: PUSH1 0x44 000038d5: DUP2 000038d6: ADD 000038d7: SWAP2 000038d8: SWAP1 000038d9: SWAP2 000038da: MSTORE 000038db: DUP6 000038dc: SWAP4 000038dd: SWAP3 000038de: PUSH1 0x00 000038e0: SWAP3 000038e1: DUP4 000038e2: SWAP3 000038e3: DUP4 000038e4: SWAP1 000038e5: PUSH2 0x38f1 000038e8: DUP2 000038e9: PUSH1 0x64 000038eb: DUP2 000038ec: ADD 000038ed: PUSH2 0x19ee 000038f0: JUMP 000038f1: JUMPDEST 000038f2: MLOAD 000038f3: SWAP3 000038f4: GAS 000038f5: CALL 000038f6: POP 000038f7: PUSH2 0x38fe 000038fa: PUSH2 0x245e 000038fd: JUMP 000038fe: JUMPDEST 000038ff: POP 00003900: PUSH1 0x40 00003902: MLOAD 00003903: SWAP1 00003904: DUP2 00003905: MSTORE 00003906: ADDRESS 00003907: PUSH1 0x04 00003909: DUP3 0000390a: ADD 0000390b: MSTORE 0000390c: SWAP2 0000390d: DUP3 0000390e: SWAP1 0000390f: PUSH1 0x24 00003911: SWAP1 00003912: DUP3 00003913: SWAP1 00003914: GAS 00003915: STATICCALL 00003916: SWAP2 00003917: DUP3 00003918: ISZERO 00003919: PUSH2 0x1530 0000391c: JUMPI 0000391d: PUSH1 0x00 0000391f: SWAP3 00003920: PUSH2 0x3940 00003923: JUMPI 00003924: JUMPDEST 00003925: POP 00003926: POP 00003927: LT 00003928: ISZERO 00003929: PUSH2 0x392e 0000392c: JUMPI 0000392d: JUMP 0000392e: JUMPDEST 0000392f: PUSH1 0x40 00003931: MLOAD 00003932: PUSH4 0x554a7667 00003937: PUSH1 0xe1 00003939: SHL 0000393a: DUP2 0000393b: MSTORE 0000393c: PUSH1 0x04 0000393e: SWAP1 0000393f: REVERT 00003940: JUMPDEST 00003941: PUSH2 0x3956 00003944: SWAP3 00003945: POP 00003946: DUP1 00003947: RETURNDATASIZE 00003948: LT 00003949: PUSH2 0x0949 0000394c: JUMPI 0000394d: PUSH2 0x093a 00003950: DUP2 00003951: DUP4 00003952: PUSH2 0x0762 00003955: JUMP 00003956: JUMPDEST 00003957: CODESIZE 00003958: DUP1 00003959: PUSH2 0x3924 0000395c: JUMP 0000395d: JUMPDEST 0000395e: PUSH1 0x00 00003960: SWAP3 00003961: DUP4 00003962: DUP1 00003963: SWAP4 00003964: SWAP10 00003965: POP 00003966: PUSH2 0x19ee 00003969: PUSH2 0x38f1 0000396c: PUSH2 0x3984 0000396f: DUP12 00003970: SWAP10 00003971: SWAP9 00003972: SWAP6 00003973: DUP11 00003974: RETURNDATASIZE 00003975: DUP13 00003976: GT 00003977: PUSH2 0x0949 0000397a: JUMPI 0000397b: PUSH2 0x093a 0000397e: DUP2 0000397f: DUP4 00003980: PUSH2 0x0762 00003983: JUMP 00003984: JUMPDEST 00003985: SWAP12 00003986: SWAP6 00003987: POP 00003988: POP 00003989: POP 0000398a: POP 0000398b: SWAP3 0000398c: POP 0000398d: SWAP3 0000398e: SWAP4 0000398f: PUSH2 0x38b0 00003992: JUMP 00003993: JUMPDEST 00003994: PUSH1 0x40 00003996: MLOAD 00003997: PUSH4 0xa9059cbb 0000399c: PUSH1 0xe0 0000399e: SHL 0000399f: PUSH1 0x20 000039a1: DUP3 000039a2: ADD 000039a3: SWAP1 000039a4: DUP2 000039a5: MSTORE 000039a6: PUSH1 0x01 000039a8: PUSH1 0x01 000039aa: PUSH1 0xa0 000039ac: SHL 000039ad: SUB 000039ae: SWAP1 000039af: SWAP3 000039b0: AND 000039b1: PUSH1 0x24 000039b3: DUP3 000039b4: ADD 000039b5: MSTORE 000039b6: PUSH1 0x44 000039b8: DUP2 000039b9: ADD 000039ba: SWAP3 000039bb: SWAP1 000039bc: SWAP3 000039bd: MSTORE 000039be: PUSH2 0x12a2 000039c1: SWAP3 000039c2: PUSH1 0x00 000039c4: SWAP3 000039c5: DUP4 000039c6: SWAP3 000039c7: SWAP1 000039c8: DUP4 000039c9: SWAP1 000039ca: PUSH2 0x3826 000039cd: DUP2 000039ce: PUSH1 0x64 000039d0: DUP2 000039d1: ADD 000039d2: PUSH2 0x19ee 000039d5: JUMP 000039d6: JUMPDEST 000039d7: POP 000039d8: PUSH1 0x01 000039da: PUSH1 0x01 000039dc: PUSH1 0xa0 000039de: SHL 000039df: SUB 000039e0: DUP4 000039e1: AND 000039e2: PUSH20 0xa614f803b6fd780986a42c78ec9c7f77e6ded13c 000039f7: EQ 000039f8: PUSH2 0x386f 000039fb: JUMP 000039fc: JUMPDEST 000039fd: PUSH1 0x00 000039ff: DUP1 00003a00: SWAP2 00003a01: PUSH2 0x12a2 00003a04: SWAP4 00003a05: DUP3 00003a06: PUSH1 0x40 00003a08: MLOAD 00003a09: PUSH1 0x20 00003a0b: DUP2 00003a0c: ADD 00003a0d: SWAP3 00003a0e: PUSH4 0x2e1a7d4d 00003a13: PUSH1 0xe0 00003a15: SHL 00003a16: DUP5 00003a17: MSTORE 00003a18: PUSH1 0x24 00003a1a: DUP3 00003a1b: ADD 00003a1c: MSTORE 00003a1d: PUSH1 0x24 00003a1f: DUP2 00003a20: MSTORE 00003a21: PUSH2 0x3826 00003a24: DUP2 00003a25: PUSH2 0x06fe 00003a28: JUMP 00003a29: JUMPDEST 00003a2a: SWAP1 00003a2b: PUSH2 0x12a2 00003a2e: SWAP2 00003a2f: PUSH1 0x40 00003a31: MLOAD 00003a32: PUSH2 0x3a3a 00003a35: DUP2 00003a36: PUSH2 0x072c 00003a39: JUMP 00003a3a: JUMPDEST 00003a3b: PUSH1 0x00 00003a3d: DUP1 00003a3e: DUP1 00003a3f: SWAP5 00003a40: DUP2 00003a41: SWAP5 00003a42: DUP3 00003a43: DUP1 00003a44: SWAP6 00003a45: MSTORE 00003a46: GAS 00003a47: CALL 00003a48: PUSH2 0x3a4f 00003a4b: PUSH2 0x245e 00003a4e: JUMP 00003a4f: JUMPDEST 00003a50: POP 00003a51: PUSH1 0x40 00003a53: MLOAD 00003a54: SWAP2 00003a55: PUSH2 0x3a5d 00003a58: DUP4 00003a59: PUSH2 0x072c 00003a5c: JUMP 00003a5d: JUMPDEST 00003a5e: DUP3 00003a5f: MSTORE 00003a60: PUSH2 0x3b43 00003a63: JUMP 00003a64: JUMPDEST 00003a65: SWAP5 00003a66: SWAP3 00003a67: SWAP1 00003a68: SWAP2 00003a69: PUSH1 0x95 00003a6b: SWAP11 00003a6c: SWAP10 00003a6d: SWAP9 00003a6e: SWAP8 00003a6f: SWAP7 00003a70: SWAP5 00003a71: SWAP3 00003a72: PUSH1 0xff 00003a74: PUSH1 0xf8 00003a76: SHL 00003a77: SWAP1 00003a78: PUSH1 0xf8 00003a7a: SHL 00003a7b: AND 00003a7c: DUP7 00003a7d: MSTORE 00003a7e: PUSH1 0x01 00003a80: DUP7 00003a81: ADD 00003a82: MSTORE 00003a83: PUSH1 0x21 00003a85: DUP6 00003a86: ADD 00003a87: MSTORE 00003a88: PUSH1 0x01 00003a8a: PUSH1 0x01 00003a8c: PUSH1 0x60 00003a8e: SHL 00003a8f: SUB 00003a90: NOT 00003a91: SWAP1 00003a92: PUSH1 0x60 00003a94: SHL 00003a95: AND 00003a96: PUSH1 0x41 00003a98: DUP5 00003a99: ADD 00003a9a: MSTORE 00003a9b: PUSH1 0x55 00003a9d: DUP4 00003a9e: ADD 00003a9f: MSTORE 00003aa0: PUSH1 0x75 00003aa2: DUP3 00003aa3: ADD 00003aa4: MSTORE 00003aa5: PUSH2 0x3ab7 00003aa8: DUP3 00003aa9: MLOAD 00003aaa: DUP1 00003aab: SWAP4 00003aac: PUSH1 0x20 00003aae: DUP10 00003aaf: DUP6 00003ab0: ADD 00003ab1: SWAP2 00003ab2: ADD 00003ab3: PUSH2 0x0da8 00003ab6: JUMP 00003ab7: JUMPDEST 00003ab8: ADD 00003ab9: PUSH2 0x3acb 00003abc: DUP3 00003abd: MLOAD 00003abe: DUP1 00003abf: SWAP4 00003ac0: PUSH1 0x20 00003ac2: DUP9 00003ac3: DUP6 00003ac4: ADD 00003ac5: SWAP2 00003ac6: ADD 00003ac7: PUSH2 0x0da8 00003aca: JUMP 00003acb: JUMPDEST 00003acc: ADD 00003acd: PUSH2 0x2337 00003ad0: DUP3 00003ad1: MLOAD 00003ad2: DUP1 00003ad3: SWAP4 00003ad4: PUSH1 0x20 00003ad6: DUP8 00003ad7: DUP6 00003ad8: ADD 00003ad9: SWAP2 00003ada: ADD 00003adb: PUSH2 0x0da8 00003ade: JUMP 00003adf: JUMPDEST 00003ae0: SWAP4 00003ae1: SWAP1 00003ae2: PUSH2 0x0511 00003ae5: SWAP6 00003ae6: SWAP4 00003ae7: PUSH2 0x3b17 00003aea: SWAP4 00003aeb: PUSH1 0xff 00003aed: PUSH2 0x3b09 00003af0: SWAP4 00003af1: AND 00003af2: DUP8 00003af3: MSTORE 00003af4: PUSH1 0x20 00003af6: DUP8 00003af7: ADD 00003af8: MSTORE 00003af9: PUSH1 0xa0 00003afb: PUSH1 0x40 00003afd: DUP8 00003afe: ADD 00003aff: MSTORE 00003b00: PUSH1 0xa0 00003b02: DUP7 00003b03: ADD 00003b04: SWAP1 00003b05: PUSH2 0x0dcb 00003b08: JUMP 00003b09: JUMPDEST 00003b0a: SWAP1 00003b0b: DUP5 00003b0c: DUP3 00003b0d: SUB 00003b0e: PUSH1 0x60 00003b10: DUP7 00003b11: ADD 00003b12: MSTORE 00003b13: PUSH2 0x0dcb 00003b16: JUMP 00003b17: JUMPDEST 00003b18: SWAP2 00003b19: PUSH1 0x80 00003b1b: DUP2 00003b1c: DUP5 00003b1d: SUB 00003b1e: SWAP2 00003b1f: ADD 00003b20: MSTORE 00003b21: PUSH2 0x0dcb 00003b24: JUMP 00003b25: JUMPDEST 00003b26: PUSH1 0x00 00003b28: DUP1 00003b29: PUSH2 0x0511 00003b2c: SWAP4 00003b2d: PUSH1 0x20 00003b2f: DUP2 00003b30: MLOAD 00003b31: SWAP2 00003b32: ADD 00003b33: DUP5 00003b34: GAS 00003b35: DELEGATECALL 00003b36: PUSH2 0x3b3d 00003b39: PUSH2 0x245e 00003b3c: JUMP 00003b3d: JUMPDEST 00003b3e: SWAP2 00003b3f: PUSH2 0x3b95 00003b42: JUMP 00003b43: JUMPDEST 00003b44: ISZERO 00003b45: SWAP1 00003b46: DUP2 00003b47: ISZERO 00003b48: PUSH2 0x3b65 00003b4b: JUMPI 00003b4c: JUMPDEST 00003b4d: POP 00003b4e: PUSH2 0x3b53 00003b51: JUMPI 00003b52: JUMP 00003b53: JUMPDEST 00003b54: PUSH1 0x40 00003b56: MLOAD 00003b57: PUSH4 0x323faf87 00003b5c: PUSH1 0xe0 00003b5e: SHL 00003b5f: DUP2 00003b60: MSTORE 00003b61: PUSH1 0x04 00003b63: SWAP1 00003b64: REVERT 00003b65: JUMPDEST 00003b66: DUP1 00003b67: MLOAD 00003b68: DUP1 00003b69: ISZERO 00003b6a: ISZERO 00003b6b: SWAP3 00003b6c: POP 00003b6d: DUP3 00003b6e: PUSH2 0x3b7a 00003b71: JUMPI 00003b72: JUMPDEST 00003b73: POP 00003b74: POP 00003b75: CODESIZE 00003b76: PUSH2 0x3b4c 00003b79: JUMP 00003b7a: JUMPDEST 00003b7b: PUSH2 0x3b8d 00003b7e: SWAP3 00003b7f: POP 00003b80: PUSH1 0x20 00003b82: DUP1 00003b83: SWAP2 00003b84: DUP4 00003b85: ADD 00003b86: ADD 00003b87: SWAP2 00003b88: ADD 00003b89: PUSH2 0x1e12 00003b8c: JUMP 00003b8d: JUMPDEST 00003b8e: ISZERO 00003b8f: CODESIZE 00003b90: DUP1 00003b91: PUSH2 0x3b72 00003b94: JUMP 00003b95: JUMPDEST 00003b96: SWAP1 00003b97: PUSH2 0x3bbc 00003b9a: JUMPI 00003b9b: POP 00003b9c: DUP1 00003b9d: MLOAD 00003b9e: ISZERO 00003b9f: PUSH2 0x3baa 00003ba2: JUMPI 00003ba3: DUP1 00003ba4: MLOAD 00003ba5: SWAP1 00003ba6: PUSH1 0x20 00003ba8: ADD 00003ba9: REVERT 00003baa: JUMPDEST 00003bab: PUSH1 0x40 00003bad: MLOAD 00003bae: PUSH4 0xd6bda275 00003bb3: PUSH1 0xe0 00003bb5: SHL 00003bb6: DUP2 00003bb7: MSTORE 00003bb8: PUSH1 0x04 00003bba: SWAP1 00003bbb: REVERT 00003bbc: JUMPDEST 00003bbd: DUP2 00003bbe: MLOAD 00003bbf: ISZERO 00003bc0: DUP1 00003bc1: PUSH2 0x3bef 00003bc4: JUMPI 00003bc5: JUMPDEST 00003bc6: PUSH2 0x3bcd 00003bc9: JUMPI 00003bca: POP 00003bcb: SWAP1 00003bcc: JUMP 00003bcd: JUMPDEST 00003bce: PUSH1 0x40 00003bd0: MLOAD 00003bd1: PUSH4 0x9996b315 00003bd6: PUSH1 0xe0 00003bd8: SHL 00003bd9: DUP2 00003bda: MSTORE 00003bdb: PUSH1 0x01 00003bdd: PUSH1 0x01 00003bdf: PUSH1 0xa0 00003be1: SHL 00003be2: SUB 00003be3: SWAP1 00003be4: SWAP2 00003be5: AND 00003be6: PUSH1 0x04 00003be8: DUP3 00003be9: ADD 00003bea: MSTORE 00003beb: PUSH1 0x24 00003bed: SWAP1 00003bee: REVERT 00003bef: JUMPDEST 00003bf0: POP 00003bf1: DUP1 00003bf2: EXTCODESIZE 00003bf3: ISZERO 00003bf4: PUSH2 0x3bc5 00003bf7: JUMP 00003bf8: INVALID 00003bf9: RETURN 00003bfa: OR 00003bfb: PUSH20 0x57ab46d8af007ab3fdb9af81da189e1068fefdc0 00003c10: SMOD 00003c11: RETURNDATASIZE 00003c12: UNKNOWN(0xCA) 00003c13: DUP9 00003c14: LOG2 00003c15: UNKNOWN(0xCA) 00003c16: UNKNOWN(0xB4) 00003c17: EXP 00003c18: STOP 00003c19: CALLDATASIZE 00003c1a: ADDMOD 00003c1b: SWAP5 00003c1c: LOG1 00003c1d: EXTCODESIZE 00003c1e: LOG1 00003c1f: LOG3 00003c20: UNKNOWN(0x21) 00003c21: MOD 00003c22: PUSH8 0xc828492db98dca3e 00003c2b: KECCAK256 00003c2c: PUSH23 0xcc3735a920a3ca505d382bbccd5ed15c6e187e77e9aee8 00003c44: DUP2 00003c45: DUP5 00003c46: UNKNOWN(0xC2) 00003c47: UNKNOWN(0x1F) 00003c48: UNKNOWN(0x4F) 00003c49: UNKNOWN(0x21) 00003c4a: DUP3 00003c4b: UNKNOWN(0xAB) 00003c4c: PC 00003c4d: UNKNOWN(0x27) 00003c4e: UNKNOWN(0xCB) 00003c4f: EXTCODESIZE 00003c50: PUSH31 0x07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817 00003c70: UNKNOWN(0xE2) 00003c71: BASEFEE 00003c72: PUSH14 0x003becc55f00f0c57e16840df040 00003c81: CALL 00003c82: POP 00003c83: DUP9 00003c84: UNKNOWN(0xDC) 00003c85: UNKNOWN(0x2F) 00003c86: DUP2 00003c87: INVALID 00003c88: CODECOPY 00003c89: SHR 00003c8a: CODECOPY 00003c8b: UNKNOWN(0x23) 00003c8c: UNKNOWN(0xBE) 00003c8d: UNKNOWN(0xC7) 00003c8e: RETURNDATACOPY 00003c8f: UNKNOWN(0x23) 00003c90: UNKNOWN(0xA9) 00003c91: PUSH7 0x2efc9c229c6a00 00003c99: LOG2 00003c9a: PUSH5 0x6970667358 00003ca0: UNKNOWN(0x22) 00003ca1: SLT 00003ca2: KECCAK256 00003ca3: UNKNOWN(0xC2) 00003ca4: UNKNOWN(0xB5) 00003ca5: UNKNOWN(0xC8) 00003ca6: CHAINID 00003ca7: PUSH19 0x2aeeaf95d2d630aa28623bc88a85980043a0c6 00003cbb: PUSH17 0x24310e3b005be264736f6c634300081900 00003ccd: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x28d0f9801933ddfecf29f11194c50a73d3450fc1081f9ece30fdb181f32d42d8
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x28d0f9801933ddfecf29f11194c50a73d3450fc1081f9ece30fdb181f32d42d8",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x0a83a4e9",
"selector": "0x0a83a4e9",
"calldata_variants": [
"0x0a83a4e9",
"0x0a83a4e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0def1038",
"selector": "0x0def1038",
"calldata_variants": [
"0x0def1038",
"0x0def10380000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x222b15fb",
"selector": "0x222b15fb",
"calldata_variants": [
"0x222b15fb",
"0x222b15fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2b585db4",
"selector": "0x2b585db4",
"calldata_variants": [
"0x2b585db4",
"0x2b585db40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3291ce30",
"selector": "0x3291ce30",
"calldata_variants": [
"0x3291ce30",
"0x3291ce300000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x485cc955",
"selector": "0x485cc955",
"calldata_variants": [
"0x485cc955",
"0x485cc9550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4dca6971",
"selector": "0x4dca6971",
"calldata_variants": [
"0x4dca6971",
"0x4dca69710000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 15157,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x5771e5c490aee215b8383bc8d9f2b976eabee7d8b6973b3981f03c7b98db6520
call_targets:
0x92feada957bbeb17868f9f59aed548e50191283d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x5771e5c490aee215b8383bc8d9f2b976eabee7d8b6973b3981f03c7b98db6520",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x92feada957bbeb17868f9f59aed548e50191283d"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x0a83a4e9",
"selector": "0x0a83a4e9",
"calldata_variants": [
"0x0a83a4e9",
"0x0a83a4e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0def1038",
"selector": "0x0def1038",
"calldata_variants": [
"0x0def1038",
"0x0def10380000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x222b15fb",
"selector": "0x222b15fb",
"calldata_variants": [
"0x222b15fb",
"0x222b15fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2b585db4",
"selector": "0x2b585db4",
"calldata_variants": [
"0x2b585db4",
"0x2b585db40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3291ce30",
"selector": "0x3291ce30",
"calldata_variants": [
"0x3291ce30",
"0x3291ce300000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x485cc955",
"selector": "0x485cc955",
"calldata_variants": [
"0x485cc955",
"0x485cc9550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4dca6971",
"selector": "0x4dca6971",
"calldata_variants": [
"0x4dca6971",
"0x4dca69710000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5662,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8576,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9473,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 11,
"guards_detected": [],
"untrusted_call_count": 11
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x5771e5c490aee215b8383bc8d9f2b976eabee7d8b6973b3981f03c7b98db6520
call_targets:
0x92feada957bbeb17868f9f59aed548e50191283d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x5771e5c490aee215b8383bc8d9f2b976eabee7d8b6973b3981f03c7b98db6520",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x92feada957bbeb17868f9f59aed548e50191283d"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x0a83a4e9",
"selector": "0x0a83a4e9",
"calldata_variants": [
"0x0a83a4e9",
"0x0a83a4e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0def1038",
"selector": "0x0def1038",
"calldata_variants": [
"0x0def1038",
"0x0def10380000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x222b15fb",
"selector": "0x222b15fb",
"calldata_variants": [
"0x222b15fb",
"0x222b15fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2b585db4",
"selector": "0x2b585db4",
"calldata_variants": [
"0x2b585db4",
"0x2b585db40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3291ce30",
"selector": "0x3291ce30",
"calldata_variants": [
"0x3291ce30",
"0x3291ce300000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x485cc955",
"selector": "0x485cc955",
"calldata_variants": [
"0x485cc955",
"0x485cc9550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4dca6971",
"selector": "0x4dca6971",
"calldata_variants": [
"0x4dca6971",
"0x4dca69710000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5662,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8576,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9473,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 11,
"guards_detected": []
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 1
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 16
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 19
}
|