TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

be1d662c-639e-4a84-a41b-e7016403bc1d

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 12:25 AM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
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

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: no

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
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).
View stderr
[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":[]}
Metadata
{
    "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
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
19
EXT*/BALANCE
16
Total opcodes
10311
Flags
delegatecall_present heavy_ext_balance_usage call_family_heavy
View cast disassembly output
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

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_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
view
trace_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
view
trace_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
view
evidence_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
view
evidence_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
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 19
}