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

Analysis Run

10f2851f-10fd-400c-94e2-4f0602fb8ced

complete
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 11:17 PM
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
Present
Best current signal
Authorization based on tx.origin
crit 0 high 0 direct contract
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
30613 report.consolidate complete 1 / 1 3 months ago
74674 artifact.fetch complete 1 / 3 1 week ago
74675 tool.cast_disasm complete 1 / 3 1 week ago
74676 analysis.bundle complete 1 / 3 1 week ago
74677 capability.graph complete 1 / 3 1 week ago
74678 detector.run complete 1 / 3 1 week ago
74679 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
One informational centralization risk is visible from bytecode: an owner-only multicall that can execute arbitrary external calls.
View stderr
[codex:540240] OpenAI Codex v0.77.0 (research preview)
[codex:540240] --------
[codex:540240] workdir: /tmp/codex-multi-xjwizbb5
[codex:540240] model: gpt-5.2-codex
[codex:540240] provider: openai
[codex:540240] approval: never
[codex:540240] sandbox: read-only
[codex:540240] reasoning effort: xhigh
[codex:540240] reasoning summaries: auto
[codex:540240] session id: 019b6c63-db3b-7360-8805-9b1197c49e9d
[codex:540240] --------
[codex:540240] user
[codex:540240] You are a security auditor. You are given EVM runtime bytecode (and possibly a disassembly) for a contract with NO verified source.
[codex:540240] This is best-effort. Do not hallucinate: only flag issues when there's a concrete, explainable angle from bytecode/disasm patterns.
[codex:540240] 
[codex:540240] You MUST read the full `BYTECODE_BUNDLE.txt` before concluding.
[codex:540240] 
[codex:540240] Output MUST be valid JSON matching the provided schema.
[codex:540240] - If you cannot identify a concrete issue from bytecode/disasm alone: set no_findings=true and findings=[].
[codex:540240] - Otherwise: include findings with severity/category/title/evidence and point locations to BYTECODE_BUNDLE.txt line ranges when possible.
[codex:540240] 
[codex:540240] Output constraints (IMPORTANT):
[codex:540240] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:540240] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:540240] mcp startup: no servers
[codex:540240] 
[codex:540240] thinking
[codex:540240] **Reading BYTECODE_BUNDLE.txt**
[codex:540240] exec
[codex:540240] /bin/bash -lc ls in /tmp/codex-multi-xjwizbb5 succeeded in 6ms:
[codex:540240] BYTECODE_BUNDLE.txt
[codex:540240] codex-output-schema.json
[codex:540240] exec
[codex:540240] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-xjwizbb5 succeeded in 5ms:
[codex:540240] Runtime bytecode bundle for best-effort auditing.
[codex:540240] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:540240] 
[codex:540240] FILE: runtime_bytecode.hex
[codex:540240] 0x6080604052600436106100345760003560e01c8063a79f5b7a14610039578063bed274e61461006a578063cc2d1fcb14610086575b600080fd5b610053600480360381019061004e9190611287565b6100a2565b604051610061929190611505565b60405180910390f35b610084600480360381019061007f91906111cd565b6101b2565b005b6100a0600480360381019061009b919061111c565b610d9e565b005b6000606060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146100fe57600080fd5b60606040518060400160405280600981526020017f53d7087a019c5f1334000000000000000000000000000000000000000000000081525090508573ffffffffffffffffffffffffffffffffffffffff163486866040516101609291906114b6565b60006040518083038185875af1925050503d806000811461019d576040519150601f19603f3d011682016040523d82523d6000602084013e6101a2565b606091505b5092509250509550959350505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461020a57600080fd5b60008673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561025257600080fd5b505afa158015610266573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028a91906110f3565b905060008773ffffffffffffffffffffffffffffffffffffffff1663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156102d457600080fd5b505afa1580156102e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030c91906110f3565b90506000808973ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561035757600080fd5b505afa15801561036b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038f9190611310565b50915091506060604051806020016040528060008152509050600115158a151514156108a45760008573ffffffffffffffffffffffffffffffffffffffff166370a082318d6040518263ffffffff1660e01b81526004016103f091906114ea565b60206040518083038186803b15801561040857600080fd5b505afa15801561041c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610440919061135f565b9050836dffffffffffffffffffffffffffff1681111561089e57600115158a151514156104d7578b73ffffffffffffffffffffffffffffffffffffffff1663bc25cf77306040518263ffffffff1660e01b81526004016104a091906114cf565b600060405180830381600087803b1580156104ba57600080fd5b505af11580156104ce573d6000803e3d6000fd5b50505050610619565b6000846dffffffffffffffffffffffffffff1682039050600115158a1515141561058b576000670de0b6b3a7640000828b028161051057fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f60008330886040518563ffffffff1660e01b81526004016105539493929190611535565b600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b5050505050610617565b6000670de0b6b3a7640000828b02816105a057fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f82600030886040518563ffffffff1660e01b81526004016105e39493929190611581565b600060405180830381600087803b1580156105fd57600080fd5b505af1158015610611573d6000803e3d6000fd5b50505050505b505b60011515871515148015610631575060001515891515145b1561089d576060600267ffffffffffffffff8111801561065057600080fd5b5060405190808252806020026020018201604052801561067f5781602001602082028036833780820191505090505b509050868160008151811061069057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106106fa57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338ed17398873ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016107ab91906114cf565b60206040518083038186803b1580156107c357600080fd5b505afa1580156107d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fb919061135f565b60008460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16603c42016040518663ffffffff1660e01b81526004016108439594939291906115cd565b600060405180830381600087803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061089a919061118c565b50505b5b50610d8f565b60008473ffffffffffffffffffffffffffffffffffffffff166370a082318d6040518263ffffffff1660e01b81526004016108df91906114ea565b60206040518083038186803b1580156108f757600080fd5b505afa15801561090b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092f919061135f565b9050826dffffffffffffffffffffffffffff16811115610d8d57600115158a151514156109c6578b73ffffffffffffffffffffffffffffffffffffffff1663bc25cf77306040518263ffffffff1660e01b815260040161098f91906114cf565b600060405180830381600087803b1580156109a957600080fd5b505af11580156109bd573d6000803e3d6000fd5b50505050610b08565b6000836dffffffffffffffffffffffffffff1682039050600115158a15151415610a7a576000670de0b6b3a7640000828b02816109ff57fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f82600030886040518563ffffffff1660e01b8152600401610a429493929190611581565b600060405180830381600087803b158015610a5c57600080fd5b505af1158015610a70573d6000803e3d6000fd5b5050505050610b06565b6000670de0b6b3a7640000828b0281610a8f57fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f60008330886040518563ffffffff1660e01b8152600401610ad29493929190611535565b600060405180830381600087803b158015610aec57600080fd5b505af1158015610b00573d6000803e3d6000fd5b50505050505b505b60011515871515148015610b20575060001515891515145b15610d8c576060600267ffffffffffffffff81118015610b3f57600080fd5b50604051908082528060200260200182016040528015610b6e5781602001602082028036833780820191505090505b5090508581600081518110610b7f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110610be957fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338ed17398773ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610c9a91906114cf565b60206040518083038186803b158015610cb257600080fd5b505afa158015610cc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cea919061135f565b60008460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16603c42016040518663ffffffff1660e01b8152600401610d329594939291906115cd565b600060405180830381600087803b158015610d4c57600080fd5b505af1158015610d60573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d89919061118c565b50505b5b505b50505050505050505050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610df657600080fd5b60005b8351811015610eab57838181518110610e0e57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1634848484818110610e3957fe5b9050602002810190610e4b9190611627565b604051610e599291906114b6565b60006040518083038185875af1925050503d8060008114610e96576040519150601f19603f3d011682016040523d82523d6000602084013e610e9b565b606091505b5050508080600101915050610df9565b50505050565b600081359050610ec08161187a565b92915050565b600081519050610ed58161187a565b92915050565b600081359050610eea81611891565b92915050565b600082601f830112610f0157600080fd5b8135610f14610f0f826116ab565b61167e565b91508181835260208401935060208101905083856020840282011115610f3957600080fd5b60005b83811015610f695781610f4f8882610eb1565b845260208401935060208301925050600181019050610f3c565b5050505092915050565b60008083601f840112610f8557600080fd5b8235905067ffffffffffffffff811115610f9e57600080fd5b602083019150836020820283011115610fb657600080fd5b9250929050565b600082601f830112610fce57600080fd5b8151610fe1610fdc826116d3565b61167e565b9150818183526020840193506020810190508385602084028201111561100657600080fd5b60005b83811015611036578161101c88826110c9565b845260208401935060208301925050600181019050611009565b5050505092915050565b60008135905061104f816118a8565b92915050565b60008083601f84011261106757600080fd5b8235905067ffffffffffffffff81111561108057600080fd5b60208301915083600182028301111561109857600080fd5b9250929050565b6000815190506110ae816118bf565b92915050565b6000813590506110c3816118d6565b92915050565b6000815190506110d8816118d6565b92915050565b6000815190506110ed816118ed565b92915050565b60006020828403121561110557600080fd5b600061111384828501610ec6565b91505092915050565b60008060006040848603121561113157600080fd5b600084013567ffffffffffffffff81111561114b57600080fd5b61115786828701610ef0565b935050602084013567ffffffffffffffff81111561117457600080fd5b61118086828701610f73565b92509250509250925092565b60006020828403121561119e57600080fd5b600082015167ffffffffffffffff8111156111b857600080fd5b6111c484828501610fbd565b91505092915050565b60008060008060008060008060e0898b0312156111e957600080fd5b600089013567ffffffffffffffff81111561120357600080fd5b61120f8b828c01611055565b985098505060206112228b828c01610edb565b96505060406112338b828c01611040565b95505060606112448b828c01611040565b94505060806112558b828c01611040565b93505060a06112668b828c016110b4565b92505060c06112778b828c01611040565b9150509295985092959890939650565b60008060008060006060868803121561129f57600080fd5b600086013567ffffffffffffffff8111156112b957600080fd5b6112c588828901611055565b955095505060206112d888828901610edb565b935050604086013567ffffffffffffffff8111156112f557600080fd5b61130188828901611055565b92509250509295509295909350565b60008060006060848603121561132557600080fd5b60006113338682870161109f565b93505060206113448682870161109f565b9250506040611355868287016110de565b9150509250925092565b60006020828403121561137157600080fd5b600061137f848285016110c9565b91505092915050565b600061139483836113af565b60208301905092915050565b6113a9816117df565b82525050565b6113b88161175b565b82525050565b6113c78161175b565b82525050565b60006113d88261170b565b6113e2818561172e565b93506113ed836116fb565b8060005b8381101561141e5781516114058882611388565b975061141083611721565b9250506001810190506113f1565b5085935050505092915050565b6114348161177f565b82525050565b60006114468385611750565b9350611453838584611827565b82840190509392505050565b600061146a82611716565b611474818561173f565b9350611484818560208601611836565b61148d81611869565b840191505092915050565b6114a1816117f1565b82525050565b6114b0816117c5565b82525050565b60006114c382848661143a565b91508190509392505050565b60006020820190506114e460008301846113be565b92915050565b60006020820190506114ff60008301846113a0565b92915050565b600060408201905061151a600083018561142b565b818103602083015261152c818461145f565b90509392505050565b600060808201905061154a6000830187611498565b61155760208301866114a7565b61156460408301856113be565b8181036060830152611576818461145f565b905095945050505050565b600060808201905061159660008301876114a7565b6115a36020830186611498565b6115b060408301856113be565b81810360608301526115c2818461145f565b905095945050505050565b600060a0820190506115e260008301886114a7565b6115ef6020830187611498565b818103604083015261160181866113cd565b905061161060608301856113be565b61161d60808301846114a7565b9695505050505050565b6000808335600160200384360303811261164057600080fd5b80840192508235915067ffffffffffffffff82111561165e57600080fd5b60208301925060018202360383131561167657600080fd5b509250929050565b6000604051905081810181811067ffffffffffffffff821117156116a157600080fd5b8060405250919050565b600067ffffffffffffffff8211156116c257600080fd5b602082029050602081019050919050565b600067ffffffffffffffff8211156116ea57600080fd5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000611766826117a5565b9050919050565b6000611778826117a5565b9050919050565b60008115159050919050565b60006dffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b60006117ea82611803565b9050919050565b60006117fc826117c5565b9050919050565b600061180e82611815565b9050919050565b6000611820826117a5565b9050919050565b82818337600083830152505050565b60005b83811015611854578082015181840152602081019050611839565b83811115611863576000848401525b50505050565b6000601f19601f8301169050919050565b6118838161175b565b811461188e57600080fd5b50565b61189a8161176d565b81146118a557600080fd5b50565b6118b18161177f565b81146118bc57600080fd5b50565b6118c88161178b565b81146118d357600080fd5b50565b6118df816117c5565b81146118ea57600080fd5b50565b6118f6816117cf565b811461190157600080fd5b5056fea26469706673582212207e50a5fdf1059f4aa0ed3084d3eb8a10f3f6f4c3f5d72983fa98d83e1b02a66a64736f6c63430007010033
[codex:540240] 
[codex:540240] 
[codex:540240] thinking
[codex:540240] **Analyzing bytecode for function structure and risks**
[codex:540240] thinking
[codex:540240] **Evaluating unchecked call results and owner privileges**
[codex:540240] 
[codex:540240] I’m carefully weighing how the contract handles low-level calls without verifying success, especially in owner-only functions that perform external calls with arbitrary calldata and value. I see potential concerns about silent failures and centralized control due to owner’s ability to invoke arbitrary calls, but no obvious critical vulnerabilities emerge from the bytecode patterns.
[codex:540240] exec
[codex:540240] /bin/bash -lc 'nl -ba BYTECODE_BUNDLE.txt' in /tmp/codex-multi-xjwizbb5 succeeded in 5ms:
[codex:540240]      1	Runtime bytecode bundle for best-effort auditing.
[codex:540240]      2	Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:540240]      3	
[codex:540240]      4	FILE: runtime_bytecode.hex
[codex:540240]      5	0x6080604052600436106100345760003560e01c8063a79f5b7a14610039578063bed274e61461006a578063cc2d1fcb14610086575b600080fd5b610053600480360381019061004e9190611287565b6100a2565b604051610061929190611505565b60405180910390f35b610084600480360381019061007f91906111cd565b6101b2565b005b6100a0600480360381019061009b919061111c565b610d9e565b005b6000606060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146100fe57600080fd5b60606040518060400160405280600981526020017f53d7087a019c5f1334000000000000000000000000000000000000000000000081525090508573ffffffffffffffffffffffffffffffffffffffff163486866040516101609291906114b6565b60006040518083038185875af1925050503d806000811461019d576040519150601f19603f3d011682016040523d82523d6000602084013e6101a2565b606091505b5092509250509550959350505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461020a57600080fd5b60008673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561025257600080fd5b505afa158015610266573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028a91906110f3565b905060008773ffffffffffffffffffffffffffffffffffffffff1663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156102d457600080fd5b505afa1580156102e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030c91906110f3565b90506000808973ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561035757600080fd5b505afa15801561036b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038f9190611310565b50915091506060604051806020016040528060008152509050600115158a151514156108a45760008573ffffffffffffffffffffffffffffffffffffffff166370a082318d6040518263ffffffff1660e01b81526004016103f091906114ea565b60206040518083038186803b15801561040857600080fd5b505afa15801561041c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610440919061135f565b9050836dffffffffffffffffffffffffffff1681111561089e57600115158a151514156104d7578b73ffffffffffffffffffffffffffffffffffffffff1663bc25cf77306040518263ffffffff1660e01b81526004016104a091906114cf565b600060405180830381600087803b1580156104ba57600080fd5b505af11580156104ce573d6000803e3d6000fd5b50505050610619565b6000846dffffffffffffffffffffffffffff1682039050600115158a1515141561058b576000670de0b6b3a7640000828b028161051057fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f60008330886040518563ffffffff1660e01b81526004016105539493929190611535565b600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b5050505050610617565b6000670de0b6b3a7640000828b02816105a057fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f82600030886040518563ffffffff1660e01b81526004016105e39493929190611581565b600060405180830381600087803b1580156105fd57600080fd5b505af1158015610611573d6000803e3d6000fd5b50505050505b505b60011515871515148015610631575060001515891515145b1561089d576060600267ffffffffffffffff8111801561065057600080fd5b5060405190808252806020026020018201604052801561067f5781602001602082028036833780820191505090505b509050868160008151811061069057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106106fa57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338ed17398873ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016107ab91906114cf565b60206040518083038186803b1580156107c357600080fd5b505afa1580156107d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fb919061135f565b60008460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16603c42016040518663ffffffff1660e01b81526004016108439594939291906115cd565b600060405180830381600087803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061089a919061118c565b50505b5b50610d8f565b60008473ffffffffffffffffffffffffffffffffffffffff166370a082318d6040518263ffffffff1660e01b81526004016108df91906114ea565b60206040518083038186803b1580156108f757600080fd5b505afa15801561090b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092f919061135f565b9050826dffffffffffffffffffffffffffff16811115610d8d57600115158a151514156109c6578b73ffffffffffffffffffffffffffffffffffffffff1663bc25cf77306040518263ffffffff1660e01b815260040161098f91906114cf565b600060405180830381600087803b1580156109a957600080fd5b505af11580156109bd573d6000803e3d6000fd5b50505050610b08565b6000836dffffffffffffffffffffffffffff1682039050600115158a15151415610a7a576000670de0b6b3a7640000828b02816109ff57fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f82600030886040518563ffffffff1660e01b8152600401610a429493929190611581565b600060405180830381600087803b158015610a5c57600080fd5b505af1158015610a70573d6000803e3d6000fd5b5050505050610b06565b6000670de0b6b3a7640000828b0281610a8f57fe5b0490508d73ffffffffffffffffffffffffffffffffffffffff1663022c0d9f60008330886040518563ffffffff1660e01b8152600401610ad29493929190611535565b600060405180830381600087803b158015610aec57600080fd5b505af1158015610b00573d6000803e3d6000fd5b50505050505b505b60011515871515148015610b20575060001515891515145b15610d8c576060600267ffffffffffffffff81118015610b3f57600080fd5b50604051908082528060200260200182016040528015610b6e5781602001602082028036833780820191505090505b5090508581600081518110610b7f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110610be957fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338ed17398773ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610c9a91906114cf565b60206040518083038186803b158015610cb257600080fd5b505afa158015610cc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cea919061135f565b60008460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16603c42016040518663ffffffff1660e01b8152600401610d329594939291906115cd565b600060405180830381600087803b158015610d4c57600080fd5b505af1158015610d60573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d89919061118c565b50505b5b505b50505050505050505050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610df657600080fd5b60005b8351811015610eab57838181518110610e0e57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1634848484818110610e3957fe5b9050602002810190610e4b9190611627565b604051610e599291906114b6565b60006040518083038185875af1925050503d8060008114610e96576040519150601f19603f3d011682016040523d82523d6000602084013e610e9b565b606091505b5050508080600101915050610df9565b50505050565b600081359050610ec08161187a565b92915050565b600081519050610ed58161187a565b92915050565b600081359050610eea81611891565b92915050565b600082601f830112610f0157600080fd5b8135610f14610f0f826116ab565b61167e565b91508181835260208401935060208101905083856020840282011115610f3957600080fd5b60005b83811015610f695781610f4f8882610eb1565b845260208401935060208301925050600181019050610f3c565b5050505092915050565b60008083601f840112610f8557600080fd5b8235905067ffffffffffffffff811115610f9e57600080fd5b602083019150836020820283011115610fb657600080fd5b9250929050565b600082601f830112610fce57600080fd5b8151610fe1610fdc826116d3565b61167e565b9150818183526020840193506020810190508385602084028201111561100657600080fd5b60005b83811015611036578161101c88826110c9565b845260208401935060208301925050600181019050611009565b5050505092915050565b60008135905061104f816118a8565b92915050565b60008083601f84011261106757600080fd5b8235905067ffffffffffffffff81111561108057600080fd5b60208301915083600182028301111561109857600080fd5b9250929050565b6000815190506110ae816118bf565b92915050565b6000813590506110c3816118d6565b92915050565b6000815190506110d8816118d6565b92915050565b6000815190506110ed816118ed565b92915050565b60006020828403121561110557600080fd5b600061111384828501610ec6565b91505092915050565b60008060006040848603121561113157600080fd5b600084013567ffffffffffffffff81111561114b57600080fd5b61115786828701610ef0565b935050602084013567ffffffffffffffff81111561117457600080fd5b61118086828701610f73565b92509250509250925092565b60006020828403121561119e57600080fd5b600082015167ffffffffffffffff8111156111b857600080fd5b6111c484828501610fbd565b91505092915050565b60008060008060008060008060e0898b0312156111e957600080fd5b600089013567ffffffffffffffff81111561120357600080fd5b61120f8b828c01611055565b985098505060206112228b828c01610edb565b96505060406112338b828c01611040565b95505060606112448b828c01611040565b94505060806112558b828c01611040565b93505060a06112668b828c016110b4565b92505060c06112778b828c01611040565b9150509295985092959890939650565b60008060008060006060868803121561129f57600080fd5b600086013567ffffffffffffffff8111156112b957600080fd5b6112c588828901611055565b955095505060206112d888828901610edb565b935050604086013567ffffffffffffffff8111156112f557600080fd5b61130188828901611055565b92509250509295509295909350565b60008060006060848603121561132557600080fd5b60006113338682870161109f565b93505060206113448682870161109f565b9250506040611355868287016110de565b9150509250925092565b60006020828403121561137157600080fd5b600061137f848285016110c9565b91505092915050565b600061139483836113af565b60208301905092915050565b6113a9816117df565b82525050565b6113b88161175b565b82525050565b6113c78161175b565b82525050565b60006113d88261170b565b6113e2818561172e565b93506113ed836116fb565b8060005b8381101561141e5781516114058882611388565b975061141083611721565b9250506001810190506113f1565b5085935050505092915050565b6114348161177f565b82525050565b60006114468385611750565b9350611453838584611827565b82840190509392505050565b600061146a82611716565b611474818561173f565b9350611484818560208601611836565b61148d81611869565b840191505092915050565b6114a1816117f1565b82525050565b6114b0816117c5565b82525050565b60006114c382848661143a565b91508190509392505050565b60006020820190506114e460008301846113be565b92915050565b60006020820190506114ff60008301846113a0565b92915050565b600060408201905061151a600083018561142b565b818103602083015261152c818461145f565b90509392505050565b600060808201905061154a6000830187611498565b61155760208301866114a7565b61156460408301856113be565b8181036060830152611576818461145f565b905095945050505050565b600060808201905061159660008301876114a7565b6115a36020830186611498565b6115b060408301856113be565b81810360608301526115c2818461145f565b905095945050505050565b600060a0820190506115e260008301886114a7565b6115ef6020830187611498565b818103604083015261160181866113cd565b905061161060608301856113be565b61161d60808301846114a7565b9695505050505050565b6000808335600160200384360303811261164057600080fd5b80840192508235915067ffffffffffffffff82111561165e57600080fd5b60208301925060018202360383131561167657600080fd5b509250929050565b6000604051905081810181811067ffffffffffffffff821117156116a157600080fd5b8060405250919050565b600067ffffffffffffffff8211156116c257600080fd5b602082029050602081019050919050565b600067ffffffffffffffff8211156116ea57600080fd5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000611766826117a5565b9050919050565b6000611778826117a5565b9050919050565b60008115159050919050565b60006dffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b60006117ea82611803565b9050919050565b60006117fc826117c5565b9050919050565b600061180e82611815565b9050919050565b6000611820826117a5565b9050919050565b82818337600083830152505050565b60005b83811015611854578082015181840152602081019050611839565b83811115611863576000848401525b50505050565b6000601f19601f8301169050919050565b6118838161175b565b811461188e57600080fd5b50565b61189a8161176d565b81146118a557600080fd5b50565b6118b18161177f565b81146118bc57600080fd5b50565b6118c88161178b565b81146118d357600080fd5b50565b6118df816117c5565b81146118ea57600080fd5b50565b6118f6816117cf565b811461190157600080fd5b5056fea26469706673582212207e50a5fdf1059f4aa0ed3084d3eb8a10f3f6f4c3f5d72983fa98d83e1b02a66a64736f6c63430007010033
[codex:540240] 
[codex:540240] thinking
[codex:540240] **Flagging owner-only arbitrary call risk**
[codex:540240] codex
[codex:540240] {"no_findings":false,"summary":"One informational centralization risk is visible from bytecode: an owner-only multicall that can execute arbitrary external calls.","findings":[{"severity":"info","category":"access_control","title":"Owner can execute arbitrary external calls (multicall)","exploit_scenario":"If the owner key is compromised or misused, the caller can supply arbitrary target addresses and calldata and have the contract execute those calls, potentially draining any assets held by this contract or interacting with external protocols in unintended ways.","recommendation":"Document this trust assumption explicitly and consider removing or constraining the multicall (e.g., allowlist targets, timelock, or require multisig) if arbitrary execution is not intended.","evidence":"Function selector 0xcc2d1fcb dispatches to a routine that first enforces msg.sender == sload(0), then iterates over a calldata-provided array of targets and performs a low-level CALL (opcode 0xF1) using that data, with no target restriction. Evidence includes the owner check `...163273...1614610df6...` and the loop/call sequence `83518110...015173...5af1...`.","locations":["BYTECODE_BUNDLE.txt:5"]}]}
[codex:540240] tokens used
[codex:540240] 30,530
[codex:540240] {"no_findings":false,"summary":"One informational centralization risk is visible from bytecode: an owner-only multicall that can execute arbitrary external calls.","findings":[{"severity":"info","category":"access_control","title":"Owner can execute arbitrary external calls (multicall)","exploit_scenario":"If the owner key is compromised or misused, the caller can supply arbitrary target addresses and calldata and have the contract execute those calls, potentially draining any assets held by this contract or interacting with external protocols in unintended ways.","recommendation":"Document this trust assumption explicitly and consider removing or constraining the multicall (e.g., allowlist targets, timelock, or require multisig) if arbitrary execution is not intended.","evidence":"Function selector 0xcc2d1fcb dispatches to a routine that first enforces msg.sender == sload(0), then iterates over a calldata-provided array of targets and performs a low-level CALL (opcode 0xF1) using that data, with no target restriction. Evidence includes the owner check `...163273...1614610df6...` and the loop/call sequence `83518110...015173...5af1...`.","locations":["BYTECODE_BUNDLE.txt:5"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T23:17:38.148208+00:00",
        "returncode": 0
    },
    "summary": "One informational centralization risk is visible from bytecode: an owner-only multicall that can execute arbitrary external calls.",
    "raw_final": {
        "summary": "One informational centralization risk is visible from bytecode: an owner-only multicall that can execute arbitrary external calls.",
        "findings": [
            {
                "title": "Owner can execute arbitrary external calls (multicall)",
                "category": "access_control",
                "evidence": "Function selector 0xcc2d1fcb dispatches to a routine that first enforces msg.sender == sload(0), then iterates over a calldata-provided array of targets and performs a low-level CALL (opcode 0xF1) using that data, with no target restriction. Evidence includes the owner check `...163273...1614610df6...` and the loop/call sequence `83518110...015173...5af1...`.",
                "severity": "info",
                "locations": [
                    "BYTECODE_BUNDLE.txt:5"
                ],
                "recommendation": "Document this trust assumption explicitly and consider removing or constraining the multicall (e.g., allowlist targets, timelock, or require multisig) if arbitrary execution is not intended.",
                "exploit_scenario": "If the owner key is compromised or misused, the caller can supply arbitrary target addresses and calldata and have the contract execute those calls, potentially draining any assets held by this contract or interacting with external protocols in unintended ways."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
17
EXT*/BALANCE
15
Total opcodes
4039
Flags
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: PUSH2 0x0034
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0xa79f5b7a
00000019: EQ
0000001a: PUSH2 0x0039
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xbed274e6
00000024: EQ
00000025: PUSH2 0x006a
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xcc2d1fcb
0000002f: EQ
00000030: PUSH2 0x0086
00000033: JUMPI
00000034: JUMPDEST
00000035: PUSH1 0x00
00000037: DUP1
00000038: REVERT
00000039: JUMPDEST
0000003a: PUSH2 0x0053
0000003d: PUSH1 0x04
0000003f: DUP1
00000040: CALLDATASIZE
00000041: SUB
00000042: DUP2
00000043: ADD
00000044: SWAP1
00000045: PUSH2 0x004e
00000048: SWAP2
00000049: SWAP1
0000004a: PUSH2 0x1287
0000004d: JUMP
0000004e: JUMPDEST
0000004f: PUSH2 0x00a2
00000052: JUMP
00000053: JUMPDEST
00000054: PUSH1 0x40
00000056: MLOAD
00000057: PUSH2 0x0061
0000005a: SWAP3
0000005b: SWAP2
0000005c: SWAP1
0000005d: PUSH2 0x1505
00000060: JUMP
00000061: JUMPDEST
00000062: PUSH1 0x40
00000064: MLOAD
00000065: DUP1
00000066: SWAP2
00000067: SUB
00000068: SWAP1
00000069: RETURN
0000006a: JUMPDEST
0000006b: PUSH2 0x0084
0000006e: PUSH1 0x04
00000070: DUP1
00000071: CALLDATASIZE
00000072: SUB
00000073: DUP2
00000074: ADD
00000075: SWAP1
00000076: PUSH2 0x007f
00000079: SWAP2
0000007a: SWAP1
0000007b: PUSH2 0x11cd
0000007e: JUMP
0000007f: JUMPDEST
00000080: PUSH2 0x01b2
00000083: JUMP
00000084: JUMPDEST
00000085: STOP
00000086: JUMPDEST
00000087: PUSH2 0x00a0
0000008a: PUSH1 0x04
0000008c: DUP1
0000008d: CALLDATASIZE
0000008e: SUB
0000008f: DUP2
00000090: ADD
00000091: SWAP1
00000092: PUSH2 0x009b
00000095: SWAP2
00000096: SWAP1
00000097: PUSH2 0x111c
0000009a: JUMP
0000009b: JUMPDEST
0000009c: PUSH2 0x0d9e
0000009f: JUMP
000000a0: JUMPDEST
000000a1: STOP
000000a2: JUMPDEST
000000a3: PUSH1 0x00
000000a5: PUSH1 0x60
000000a7: PUSH1 0x00
000000a9: DUP1
000000aa: SLOAD
000000ab: SWAP1
000000ac: PUSH2 0x0100
000000af: EXP
000000b0: SWAP1
000000b1: DIV
000000b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000c7: AND
000000c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000dd: AND
000000de: ORIGIN
000000df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000f4: AND
000000f5: EQ
000000f6: PUSH2 0x00fe
000000f9: JUMPI
000000fa: PUSH1 0x00
000000fc: DUP1
000000fd: REVERT
000000fe: JUMPDEST
000000ff: PUSH1 0x60
00000101: PUSH1 0x40
00000103: MLOAD
00000104: DUP1
00000105: PUSH1 0x40
00000107: ADD
00000108: PUSH1 0x40
0000010a: MSTORE
0000010b: DUP1
0000010c: PUSH1 0x09
0000010e: DUP2
0000010f: MSTORE
00000110: PUSH1 0x20
00000112: ADD
00000113: PUSH32 0x53d7087a019c5f13340000000000000000000000000000000000000000000000
00000134: DUP2
00000135: MSTORE
00000136: POP
00000137: SWAP1
00000138: POP
00000139: DUP6
0000013a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000014f: AND
00000150: CALLVALUE
00000151: DUP7
00000152: DUP7
00000153: PUSH1 0x40
00000155: MLOAD
00000156: PUSH2 0x0160
00000159: SWAP3
0000015a: SWAP2
0000015b: SWAP1
0000015c: PUSH2 0x14b6
0000015f: JUMP
00000160: JUMPDEST
00000161: PUSH1 0x00
00000163: PUSH1 0x40
00000165: MLOAD
00000166: DUP1
00000167: DUP4
00000168: SUB
00000169: DUP2
0000016a: DUP6
0000016b: DUP8
0000016c: GAS
0000016d: CALL
0000016e: SWAP3
0000016f: POP
00000170: POP
00000171: POP
00000172: RETURNDATASIZE
00000173: DUP1
00000174: PUSH1 0x00
00000176: DUP2
00000177: EQ
00000178: PUSH2 0x019d
0000017b: JUMPI
0000017c: PUSH1 0x40
0000017e: MLOAD
0000017f: SWAP2
00000180: POP
00000181: PUSH1 0x1f
00000183: NOT
00000184: PUSH1 0x3f
00000186: RETURNDATASIZE
00000187: ADD
00000188: AND
00000189: DUP3
0000018a: ADD
0000018b: PUSH1 0x40
0000018d: MSTORE
0000018e: RETURNDATASIZE
0000018f: DUP3
00000190: MSTORE
00000191: RETURNDATASIZE
00000192: PUSH1 0x00
00000194: PUSH1 0x20
00000196: DUP5
00000197: ADD
00000198: RETURNDATACOPY
00000199: PUSH2 0x01a2
0000019c: JUMP
0000019d: JUMPDEST
0000019e: PUSH1 0x60
000001a0: SWAP2
000001a1: POP
000001a2: JUMPDEST
000001a3: POP
000001a4: SWAP3
000001a5: POP
000001a6: SWAP3
000001a7: POP
000001a8: POP
000001a9: SWAP6
000001aa: POP
000001ab: SWAP6
000001ac: SWAP4
000001ad: POP
000001ae: POP
000001af: POP
000001b0: POP
000001b1: JUMP
000001b2: JUMPDEST
000001b3: PUSH1 0x00
000001b5: DUP1
000001b6: SLOAD
000001b7: SWAP1
000001b8: PUSH2 0x0100
000001bb: EXP
000001bc: SWAP1
000001bd: DIV
000001be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001d3: AND
000001d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001e9: AND
000001ea: ORIGIN
000001eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000200: AND
00000201: EQ
00000202: PUSH2 0x020a
00000205: JUMPI
00000206: PUSH1 0x00
00000208: DUP1
00000209: REVERT
0000020a: JUMPDEST
0000020b: PUSH1 0x00
0000020d: DUP7
0000020e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000223: AND
00000224: PUSH4 0x0dfe1681
00000229: PUSH1 0x40
0000022b: MLOAD
0000022c: DUP2
0000022d: PUSH4 0xffffffff
00000232: AND
00000233: PUSH1 0xe0
00000235: SHL
00000236: DUP2
00000237: MSTORE
00000238: PUSH1 0x04
0000023a: ADD
0000023b: PUSH1 0x20
0000023d: PUSH1 0x40
0000023f: MLOAD
00000240: DUP1
00000241: DUP4
00000242: SUB
00000243: DUP2
00000244: DUP7
00000245: DUP1
00000246: EXTCODESIZE
00000247: ISZERO
00000248: DUP1
00000249: ISZERO
0000024a: PUSH2 0x0252
0000024d: JUMPI
0000024e: PUSH1 0x00
00000250: DUP1
00000251: REVERT
00000252: JUMPDEST
00000253: POP
00000254: GAS
00000255: STATICCALL
00000256: ISZERO
00000257: DUP1
00000258: ISZERO
00000259: PUSH2 0x0266
0000025c: JUMPI
0000025d: RETURNDATASIZE
0000025e: PUSH1 0x00
00000260: DUP1
00000261: RETURNDATACOPY
00000262: RETURNDATASIZE
00000263: PUSH1 0x00
00000265: REVERT
00000266: JUMPDEST
00000267: POP
00000268: POP
00000269: POP
0000026a: POP
0000026b: PUSH1 0x40
0000026d: MLOAD
0000026e: RETURNDATASIZE
0000026f: PUSH1 0x1f
00000271: NOT
00000272: PUSH1 0x1f
00000274: DUP3
00000275: ADD
00000276: AND
00000277: DUP3
00000278: ADD
00000279: DUP1
0000027a: PUSH1 0x40
0000027c: MSTORE
0000027d: POP
0000027e: DUP2
0000027f: ADD
00000280: SWAP1
00000281: PUSH2 0x028a
00000284: SWAP2
00000285: SWAP1
00000286: PUSH2 0x10f3
00000289: JUMP
0000028a: JUMPDEST
0000028b: SWAP1
0000028c: POP
0000028d: PUSH1 0x00
0000028f: DUP8
00000290: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002a5: AND
000002a6: PUSH4 0xd21220a7
000002ab: PUSH1 0x40
000002ad: MLOAD
000002ae: DUP2
000002af: PUSH4 0xffffffff
000002b4: AND
000002b5: PUSH1 0xe0
000002b7: SHL
000002b8: DUP2
000002b9: MSTORE
000002ba: PUSH1 0x04
000002bc: ADD
000002bd: PUSH1 0x20
000002bf: PUSH1 0x40
000002c1: MLOAD
000002c2: DUP1
000002c3: DUP4
000002c4: SUB
000002c5: DUP2
000002c6: DUP7
000002c7: DUP1
000002c8: EXTCODESIZE
000002c9: ISZERO
000002ca: DUP1
000002cb: ISZERO
000002cc: PUSH2 0x02d4
000002cf: JUMPI
000002d0: PUSH1 0x00
000002d2: DUP1
000002d3: REVERT
000002d4: JUMPDEST
000002d5: POP
000002d6: GAS
000002d7: STATICCALL
000002d8: ISZERO
000002d9: DUP1
000002da: ISZERO
000002db: PUSH2 0x02e8
000002de: JUMPI
000002df: RETURNDATASIZE
000002e0: PUSH1 0x00
000002e2: DUP1
000002e3: RETURNDATACOPY
000002e4: RETURNDATASIZE
000002e5: PUSH1 0x00
000002e7: REVERT
000002e8: JUMPDEST
000002e9: POP
000002ea: POP
000002eb: POP
000002ec: POP
000002ed: PUSH1 0x40
000002ef: MLOAD
000002f0: RETURNDATASIZE
000002f1: PUSH1 0x1f
000002f3: NOT
000002f4: PUSH1 0x1f
000002f6: DUP3
000002f7: ADD
000002f8: AND
000002f9: DUP3
000002fa: ADD
000002fb: DUP1
000002fc: PUSH1 0x40
000002fe: MSTORE
000002ff: POP
00000300: DUP2
00000301: ADD
00000302: SWAP1
00000303: PUSH2 0x030c
00000306: SWAP2
00000307: SWAP1
00000308: PUSH2 0x10f3
0000030b: JUMP
0000030c: JUMPDEST
0000030d: SWAP1
0000030e: POP
0000030f: PUSH1 0x00
00000311: DUP1
00000312: DUP10
00000313: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000328: AND
00000329: PUSH4 0x0902f1ac
0000032e: PUSH1 0x40
00000330: MLOAD
00000331: DUP2
00000332: PUSH4 0xffffffff
00000337: AND
00000338: PUSH1 0xe0
0000033a: SHL
0000033b: DUP2
0000033c: MSTORE
0000033d: PUSH1 0x04
0000033f: ADD
00000340: PUSH1 0x60
00000342: PUSH1 0x40
00000344: MLOAD
00000345: DUP1
00000346: DUP4
00000347: SUB
00000348: DUP2
00000349: DUP7
0000034a: DUP1
0000034b: EXTCODESIZE
0000034c: ISZERO
0000034d: DUP1
0000034e: ISZERO
0000034f: PUSH2 0x0357
00000352: JUMPI
00000353: PUSH1 0x00
00000355: DUP1
00000356: REVERT
00000357: JUMPDEST
00000358: POP
00000359: GAS
0000035a: STATICCALL
0000035b: ISZERO
0000035c: DUP1
0000035d: ISZERO
0000035e: PUSH2 0x036b
00000361: JUMPI
00000362: RETURNDATASIZE
00000363: PUSH1 0x00
00000365: DUP1
00000366: RETURNDATACOPY
00000367: RETURNDATASIZE
00000368: PUSH1 0x00
0000036a: REVERT
0000036b: JUMPDEST
0000036c: POP
0000036d: POP
0000036e: POP
0000036f: POP
00000370: PUSH1 0x40
00000372: MLOAD
00000373: RETURNDATASIZE
00000374: PUSH1 0x1f
00000376: NOT
00000377: PUSH1 0x1f
00000379: DUP3
0000037a: ADD
0000037b: AND
0000037c: DUP3
0000037d: ADD
0000037e: DUP1
0000037f: PUSH1 0x40
00000381: MSTORE
00000382: POP
00000383: DUP2
00000384: ADD
00000385: SWAP1
00000386: PUSH2 0x038f
00000389: SWAP2
0000038a: SWAP1
0000038b: PUSH2 0x1310
0000038e: JUMP
0000038f: JUMPDEST
00000390: POP
00000391: SWAP2
00000392: POP
00000393: SWAP2
00000394: POP
00000395: PUSH1 0x60
00000397: PUSH1 0x40
00000399: MLOAD
0000039a: DUP1
0000039b: PUSH1 0x20
0000039d: ADD
0000039e: PUSH1 0x40
000003a0: MSTORE
000003a1: DUP1
000003a2: PUSH1 0x00
000003a4: DUP2
000003a5: MSTORE
000003a6: POP
000003a7: SWAP1
000003a8: POP
000003a9: PUSH1 0x01
000003ab: ISZERO
000003ac: ISZERO
000003ad: DUP11
000003ae: ISZERO
000003af: ISZERO
000003b0: EQ
000003b1: ISZERO
000003b2: PUSH2 0x08a4
000003b5: JUMPI
000003b6: PUSH1 0x00
000003b8: DUP6
000003b9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003ce: AND
000003cf: PUSH4 0x70a08231
000003d4: DUP14
000003d5: PUSH1 0x40
000003d7: MLOAD
000003d8: DUP3
000003d9: PUSH4 0xffffffff
000003de: AND
000003df: PUSH1 0xe0
000003e1: SHL
000003e2: DUP2
000003e3: MSTORE
000003e4: PUSH1 0x04
000003e6: ADD
000003e7: PUSH2 0x03f0
000003ea: SWAP2
000003eb: SWAP1
000003ec: PUSH2 0x14ea
000003ef: JUMP
000003f0: JUMPDEST
000003f1: PUSH1 0x20
000003f3: PUSH1 0x40
000003f5: MLOAD
000003f6: DUP1
000003f7: DUP4
000003f8: SUB
000003f9: DUP2
000003fa: DUP7
000003fb: DUP1
000003fc: EXTCODESIZE
000003fd: ISZERO
000003fe: DUP1
000003ff: ISZERO
00000400: PUSH2 0x0408
00000403: JUMPI
00000404: PUSH1 0x00
00000406: DUP1
00000407: REVERT
00000408: JUMPDEST
00000409: POP
0000040a: GAS
0000040b: STATICCALL
0000040c: ISZERO
0000040d: DUP1
0000040e: ISZERO
0000040f: PUSH2 0x041c
00000412: JUMPI
00000413: RETURNDATASIZE
00000414: PUSH1 0x00
00000416: DUP1
00000417: RETURNDATACOPY
00000418: RETURNDATASIZE
00000419: PUSH1 0x00
0000041b: REVERT
0000041c: JUMPDEST
0000041d: POP
0000041e: POP
0000041f: POP
00000420: POP
00000421: PUSH1 0x40
00000423: MLOAD
00000424: RETURNDATASIZE
00000425: PUSH1 0x1f
00000427: NOT
00000428: PUSH1 0x1f
0000042a: DUP3
0000042b: ADD
0000042c: AND
0000042d: DUP3
0000042e: ADD
0000042f: DUP1
00000430: PUSH1 0x40
00000432: MSTORE
00000433: POP
00000434: DUP2
00000435: ADD
00000436: SWAP1
00000437: PUSH2 0x0440
0000043a: SWAP2
0000043b: SWAP1
0000043c: PUSH2 0x135f
0000043f: JUMP
00000440: JUMPDEST
00000441: SWAP1
00000442: POP
00000443: DUP4
00000444: PUSH14 0xffffffffffffffffffffffffffff
00000453: AND
00000454: DUP2
00000455: GT
00000456: ISZERO
00000457: PUSH2 0x089e
0000045a: JUMPI
0000045b: PUSH1 0x01
0000045d: ISZERO
0000045e: ISZERO
0000045f: DUP11
00000460: ISZERO
00000461: ISZERO
00000462: EQ
00000463: ISZERO
00000464: PUSH2 0x04d7
00000467: JUMPI
00000468: DUP12
00000469: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000047e: AND
0000047f: PUSH4 0xbc25cf77
00000484: ADDRESS
00000485: PUSH1 0x40
00000487: MLOAD
00000488: DUP3
00000489: PUSH4 0xffffffff
0000048e: AND
0000048f: PUSH1 0xe0
00000491: SHL
00000492: DUP2
00000493: MSTORE
00000494: PUSH1 0x04
00000496: ADD
00000497: PUSH2 0x04a0
0000049a: SWAP2
0000049b: SWAP1
0000049c: PUSH2 0x14cf
0000049f: JUMP
000004a0: JUMPDEST
000004a1: PUSH1 0x00
000004a3: PUSH1 0x40
000004a5: MLOAD
000004a6: DUP1
000004a7: DUP4
000004a8: SUB
000004a9: DUP2
000004aa: PUSH1 0x00
000004ac: DUP8
000004ad: DUP1
000004ae: EXTCODESIZE
000004af: ISZERO
000004b0: DUP1
000004b1: ISZERO
000004b2: PUSH2 0x04ba
000004b5: JUMPI
000004b6: PUSH1 0x00
000004b8: DUP1
000004b9: REVERT
000004ba: JUMPDEST
000004bb: POP
000004bc: GAS
000004bd: CALL
000004be: ISZERO
000004bf: DUP1
000004c0: ISZERO
000004c1: PUSH2 0x04ce
000004c4: JUMPI
000004c5: RETURNDATASIZE
000004c6: PUSH1 0x00
000004c8: DUP1
000004c9: RETURNDATACOPY
000004ca: RETURNDATASIZE
000004cb: PUSH1 0x00
000004cd: REVERT
000004ce: JUMPDEST
000004cf: POP
000004d0: POP
000004d1: POP
000004d2: POP
000004d3: PUSH2 0x0619
000004d6: JUMP
000004d7: JUMPDEST
000004d8: PUSH1 0x00
000004da: DUP5
000004db: PUSH14 0xffffffffffffffffffffffffffff
000004ea: AND
000004eb: DUP3
000004ec: SUB
000004ed: SWAP1
000004ee: POP
000004ef: PUSH1 0x01
000004f1: ISZERO
000004f2: ISZERO
000004f3: DUP11
000004f4: ISZERO
000004f5: ISZERO
000004f6: EQ
000004f7: ISZERO
000004f8: PUSH2 0x058b
000004fb: JUMPI
000004fc: PUSH1 0x00
000004fe: PUSH8 0x0de0b6b3a7640000
00000507: DUP3
00000508: DUP12
00000509: MUL
0000050a: DUP2
0000050b: PUSH2 0x0510
0000050e: JUMPI
0000050f: INVALID
00000510: JUMPDEST
00000511: DIV
00000512: SWAP1
00000513: POP
00000514: DUP14
00000515: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000052a: AND
0000052b: PUSH4 0x022c0d9f
00000530: PUSH1 0x00
00000532: DUP4
00000533: ADDRESS
00000534: DUP9
00000535: PUSH1 0x40
00000537: MLOAD
00000538: DUP6
00000539: PUSH4 0xffffffff
0000053e: AND
0000053f: PUSH1 0xe0
00000541: SHL
00000542: DUP2
00000543: MSTORE
00000544: PUSH1 0x04
00000546: ADD
00000547: PUSH2 0x0553
0000054a: SWAP5
0000054b: SWAP4
0000054c: SWAP3
0000054d: SWAP2
0000054e: SWAP1
0000054f: PUSH2 0x1535
00000552: JUMP
00000553: JUMPDEST
00000554: PUSH1 0x00
00000556: PUSH1 0x40
00000558: MLOAD
00000559: DUP1
0000055a: DUP4
0000055b: SUB
0000055c: DUP2
0000055d: PUSH1 0x00
0000055f: DUP8
00000560: DUP1
00000561: EXTCODESIZE
00000562: ISZERO
00000563: DUP1
00000564: ISZERO
00000565: PUSH2 0x056d
00000568: JUMPI
00000569: PUSH1 0x00
0000056b: DUP1
0000056c: REVERT
0000056d: JUMPDEST
0000056e: POP
0000056f: GAS
00000570: CALL
00000571: ISZERO
00000572: DUP1
00000573: ISZERO
00000574: PUSH2 0x0581
00000577: JUMPI
00000578: RETURNDATASIZE
00000579: PUSH1 0x00
0000057b: DUP1
0000057c: RETURNDATACOPY
0000057d: RETURNDATASIZE
0000057e: PUSH1 0x00
00000580: REVERT
00000581: JUMPDEST
00000582: POP
00000583: POP
00000584: POP
00000585: POP
00000586: POP
00000587: PUSH2 0x0617
0000058a: JUMP
0000058b: JUMPDEST
0000058c: PUSH1 0x00
0000058e: PUSH8 0x0de0b6b3a7640000
00000597: DUP3
00000598: DUP12
00000599: MUL
0000059a: DUP2
0000059b: PUSH2 0x05a0
0000059e: JUMPI
0000059f: INVALID
000005a0: JUMPDEST
000005a1: DIV
000005a2: SWAP1
000005a3: POP
000005a4: DUP14
000005a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005ba: AND
000005bb: PUSH4 0x022c0d9f
000005c0: DUP3
000005c1: PUSH1 0x00
000005c3: ADDRESS
000005c4: DUP9
000005c5: PUSH1 0x40
000005c7: MLOAD
000005c8: DUP6
000005c9: PUSH4 0xffffffff
000005ce: AND
000005cf: PUSH1 0xe0
000005d1: SHL
000005d2: DUP2
000005d3: MSTORE
000005d4: PUSH1 0x04
000005d6: ADD
000005d7: PUSH2 0x05e3
000005da: SWAP5
000005db: SWAP4
000005dc: SWAP3
000005dd: SWAP2
000005de: SWAP1
000005df: PUSH2 0x1581
000005e2: JUMP
000005e3: JUMPDEST
000005e4: PUSH1 0x00
000005e6: PUSH1 0x40
000005e8: MLOAD
000005e9: DUP1
000005ea: DUP4
000005eb: SUB
000005ec: DUP2
000005ed: PUSH1 0x00
000005ef: DUP8
000005f0: DUP1
000005f1: EXTCODESIZE
000005f2: ISZERO
000005f3: DUP1
000005f4: ISZERO
000005f5: PUSH2 0x05fd
000005f8: JUMPI
000005f9: PUSH1 0x00
000005fb: DUP1
000005fc: REVERT
000005fd: JUMPDEST
000005fe: POP
000005ff: GAS
00000600: CALL
00000601: ISZERO
00000602: DUP1
00000603: ISZERO
00000604: PUSH2 0x0611
00000607: JUMPI
00000608: RETURNDATASIZE
00000609: PUSH1 0x00
0000060b: DUP1
0000060c: RETURNDATACOPY
0000060d: RETURNDATASIZE
0000060e: PUSH1 0x00
00000610: REVERT
00000611: JUMPDEST
00000612: POP
00000613: POP
00000614: POP
00000615: POP
00000616: POP
00000617: JUMPDEST
00000618: POP
00000619: JUMPDEST
0000061a: PUSH1 0x01
0000061c: ISZERO
0000061d: ISZERO
0000061e: DUP8
0000061f: ISZERO
00000620: ISZERO
00000621: EQ
00000622: DUP1
00000623: ISZERO
00000624: PUSH2 0x0631
00000627: JUMPI
00000628: POP
00000629: PUSH1 0x00
0000062b: ISZERO
0000062c: ISZERO
0000062d: DUP10
0000062e: ISZERO
0000062f: ISZERO
00000630: EQ
00000631: JUMPDEST
00000632: ISZERO
00000633: PUSH2 0x089d
00000636: JUMPI
00000637: PUSH1 0x60
00000639: PUSH1 0x02
0000063b: PUSH8 0xffffffffffffffff
00000644: DUP2
00000645: GT
00000646: DUP1
00000647: ISZERO
00000648: PUSH2 0x0650
0000064b: JUMPI
0000064c: PUSH1 0x00
0000064e: DUP1
0000064f: REVERT
00000650: JUMPDEST
00000651: POP
00000652: PUSH1 0x40
00000654: MLOAD
00000655: SWAP1
00000656: DUP1
00000657: DUP3
00000658: MSTORE
00000659: DUP1
0000065a: PUSH1 0x20
0000065c: MUL
0000065d: PUSH1 0x20
0000065f: ADD
00000660: DUP3
00000661: ADD
00000662: PUSH1 0x40
00000664: MSTORE
00000665: DUP1
00000666: ISZERO
00000667: PUSH2 0x067f
0000066a: JUMPI
0000066b: DUP2
0000066c: PUSH1 0x20
0000066e: ADD
0000066f: PUSH1 0x20
00000671: DUP3
00000672: MUL
00000673: DUP1
00000674: CALLDATASIZE
00000675: DUP4
00000676: CALLDATACOPY
00000677: DUP1
00000678: DUP3
00000679: ADD
0000067a: SWAP2
0000067b: POP
0000067c: POP
0000067d: SWAP1
0000067e: POP
0000067f: JUMPDEST
00000680: POP
00000681: SWAP1
00000682: POP
00000683: DUP7
00000684: DUP2
00000685: PUSH1 0x00
00000687: DUP2
00000688: MLOAD
00000689: DUP2
0000068a: LT
0000068b: PUSH2 0x0690
0000068e: JUMPI
0000068f: INVALID
00000690: JUMPDEST
00000691: PUSH1 0x20
00000693: MUL
00000694: PUSH1 0x20
00000696: ADD
00000697: ADD
00000698: SWAP1
00000699: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006ae: AND
000006af: SWAP1
000006b0: DUP2
000006b1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006c6: AND
000006c7: DUP2
000006c8: MSTORE
000006c9: POP
000006ca: POP
000006cb: PUSH1 0x01
000006cd: PUSH1 0x00
000006cf: SWAP1
000006d0: SLOAD
000006d1: SWAP1
000006d2: PUSH2 0x0100
000006d5: EXP
000006d6: SWAP1
000006d7: DIV
000006d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006ed: AND
000006ee: DUP2
000006ef: PUSH1 0x01
000006f1: DUP2
000006f2: MLOAD
000006f3: DUP2
000006f4: LT
000006f5: PUSH2 0x06fa
000006f8: JUMPI
000006f9: INVALID
000006fa: JUMPDEST
000006fb: PUSH1 0x20
000006fd: MUL
000006fe: PUSH1 0x20
00000700: ADD
00000701: ADD
00000702: SWAP1
00000703: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000718: AND
00000719: SWAP1
0000071a: DUP2
0000071b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000730: AND
00000731: DUP2
00000732: MSTORE
00000733: POP
00000734: POP
00000735: PUSH1 0x02
00000737: PUSH1 0x00
00000739: SWAP1
0000073a: SLOAD
0000073b: SWAP1
0000073c: PUSH2 0x0100
0000073f: EXP
00000740: SWAP1
00000741: DIV
00000742: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000757: AND
00000758: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000076d: AND
0000076e: PUSH4 0x38ed1739
00000773: DUP9
00000774: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000789: AND
0000078a: PUSH4 0x70a08231
0000078f: ADDRESS
00000790: PUSH1 0x40
00000792: MLOAD
00000793: DUP3
00000794: PUSH4 0xffffffff
00000799: AND
0000079a: PUSH1 0xe0
0000079c: SHL
0000079d: DUP2
0000079e: MSTORE
0000079f: PUSH1 0x04
000007a1: ADD
000007a2: PUSH2 0x07ab
000007a5: SWAP2
000007a6: SWAP1
000007a7: PUSH2 0x14cf
000007aa: JUMP
000007ab: JUMPDEST
000007ac: PUSH1 0x20
000007ae: PUSH1 0x40
000007b0: MLOAD
000007b1: DUP1
000007b2: DUP4
000007b3: SUB
000007b4: DUP2
000007b5: DUP7
000007b6: DUP1
000007b7: EXTCODESIZE
000007b8: ISZERO
000007b9: DUP1
000007ba: ISZERO
000007bb: PUSH2 0x07c3
000007be: JUMPI
000007bf: PUSH1 0x00
000007c1: DUP1
000007c2: REVERT
000007c3: JUMPDEST
000007c4: POP
000007c5: GAS
000007c6: STATICCALL
000007c7: ISZERO
000007c8: DUP1
000007c9: ISZERO
000007ca: PUSH2 0x07d7
000007cd: JUMPI
000007ce: RETURNDATASIZE
000007cf: PUSH1 0x00
000007d1: DUP1
000007d2: RETURNDATACOPY
000007d3: RETURNDATASIZE
000007d4: PUSH1 0x00
000007d6: REVERT
000007d7: JUMPDEST
000007d8: POP
000007d9: POP
000007da: POP
000007db: POP
000007dc: PUSH1 0x40
000007de: MLOAD
000007df: RETURNDATASIZE
000007e0: PUSH1 0x1f
000007e2: NOT
000007e3: PUSH1 0x1f
000007e5: DUP3
000007e6: ADD
000007e7: AND
000007e8: DUP3
000007e9: ADD
000007ea: DUP1
000007eb: PUSH1 0x40
000007ed: MSTORE
000007ee: POP
000007ef: DUP2
000007f0: ADD
000007f1: SWAP1
000007f2: PUSH2 0x07fb
000007f5: SWAP2
000007f6: SWAP1
000007f7: PUSH2 0x135f
000007fa: JUMP
000007fb: JUMPDEST
000007fc: PUSH1 0x00
000007fe: DUP5
000007ff: PUSH1 0x00
00000801: DUP1
00000802: SLOAD
00000803: SWAP1
00000804: PUSH2 0x0100
00000807: EXP
00000808: SWAP1
00000809: DIV
0000080a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000081f: AND
00000820: PUSH1 0x3c
00000822: TIMESTAMP
00000823: ADD
00000824: PUSH1 0x40
00000826: MLOAD
00000827: DUP7
00000828: PUSH4 0xffffffff
0000082d: AND
0000082e: PUSH1 0xe0
00000830: SHL
00000831: DUP2
00000832: MSTORE
00000833: PUSH1 0x04
00000835: ADD
00000836: PUSH2 0x0843
00000839: SWAP6
0000083a: SWAP5
0000083b: SWAP4
0000083c: SWAP3
0000083d: SWAP2
0000083e: SWAP1
0000083f: PUSH2 0x15cd
00000842: JUMP
00000843: JUMPDEST
00000844: PUSH1 0x00
00000846: PUSH1 0x40
00000848: MLOAD
00000849: DUP1
0000084a: DUP4
0000084b: SUB
0000084c: DUP2
0000084d: PUSH1 0x00
0000084f: DUP8
00000850: DUP1
00000851: EXTCODESIZE
00000852: ISZERO
00000853: DUP1
00000854: ISZERO
00000855: PUSH2 0x085d
00000858: JUMPI
00000859: PUSH1 0x00
0000085b: DUP1
0000085c: REVERT
0000085d: JUMPDEST
0000085e: POP
0000085f: GAS
00000860: CALL
00000861: ISZERO
00000862: DUP1
00000863: ISZERO
00000864: PUSH2 0x0871
00000867: JUMPI
00000868: RETURNDATASIZE
00000869: PUSH1 0x00
0000086b: DUP1
0000086c: RETURNDATACOPY
0000086d: RETURNDATASIZE
0000086e: PUSH1 0x00
00000870: REVERT
00000871: JUMPDEST
00000872: POP
00000873: POP
00000874: POP
00000875: POP
00000876: PUSH1 0x40
00000878: MLOAD
00000879: RETURNDATASIZE
0000087a: PUSH1 0x00
0000087c: DUP3
0000087d: RETURNDATACOPY
0000087e: RETURNDATASIZE
0000087f: PUSH1 0x1f
00000881: NOT
00000882: PUSH1 0x1f
00000884: DUP3
00000885: ADD
00000886: AND
00000887: DUP3
00000888: ADD
00000889: DUP1
0000088a: PUSH1 0x40
0000088c: MSTORE
0000088d: POP
0000088e: DUP2
0000088f: ADD
00000890: SWAP1
00000891: PUSH2 0x089a
00000894: SWAP2
00000895: SWAP1
00000896: PUSH2 0x118c
00000899: JUMP
0000089a: JUMPDEST
0000089b: POP
0000089c: POP
0000089d: JUMPDEST
0000089e: JUMPDEST
0000089f: POP
000008a0: PUSH2 0x0d8f
000008a3: JUMP
000008a4: JUMPDEST
000008a5: PUSH1 0x00
000008a7: DUP5
000008a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008bd: AND
000008be: PUSH4 0x70a08231
000008c3: DUP14
000008c4: PUSH1 0x40
000008c6: MLOAD
000008c7: DUP3
000008c8: PUSH4 0xffffffff
000008cd: AND
000008ce: PUSH1 0xe0
000008d0: SHL
000008d1: DUP2
000008d2: MSTORE
000008d3: PUSH1 0x04
000008d5: ADD
000008d6: PUSH2 0x08df
000008d9: SWAP2
000008da: SWAP1
000008db: PUSH2 0x14ea
000008de: JUMP
000008df: JUMPDEST
000008e0: PUSH1 0x20
000008e2: PUSH1 0x40
000008e4: MLOAD
000008e5: DUP1
000008e6: DUP4
000008e7: SUB
000008e8: DUP2
000008e9: DUP7
000008ea: DUP1
000008eb: EXTCODESIZE
000008ec: ISZERO
000008ed: DUP1
000008ee: ISZERO
000008ef: PUSH2 0x08f7
000008f2: JUMPI
000008f3: PUSH1 0x00
000008f5: DUP1
000008f6: REVERT
000008f7: JUMPDEST
000008f8: POP
000008f9: GAS
000008fa: STATICCALL
000008fb: ISZERO
000008fc: DUP1
000008fd: ISZERO
000008fe: PUSH2 0x090b
00000901: JUMPI
00000902: RETURNDATASIZE
00000903: PUSH1 0x00
00000905: DUP1
00000906: RETURNDATACOPY
00000907: RETURNDATASIZE
00000908: PUSH1 0x00
0000090a: REVERT
0000090b: JUMPDEST
0000090c: POP
0000090d: POP
0000090e: POP
0000090f: POP
00000910: PUSH1 0x40
00000912: MLOAD
00000913: RETURNDATASIZE
00000914: PUSH1 0x1f
00000916: NOT
00000917: PUSH1 0x1f
00000919: DUP3
0000091a: ADD
0000091b: AND
0000091c: DUP3
0000091d: ADD
0000091e: DUP1
0000091f: PUSH1 0x40
00000921: MSTORE
00000922: POP
00000923: DUP2
00000924: ADD
00000925: SWAP1
00000926: PUSH2 0x092f
00000929: SWAP2
0000092a: SWAP1
0000092b: PUSH2 0x135f
0000092e: JUMP
0000092f: JUMPDEST
00000930: SWAP1
00000931: POP
00000932: DUP3
00000933: PUSH14 0xffffffffffffffffffffffffffff
00000942: AND
00000943: DUP2
00000944: GT
00000945: ISZERO
00000946: PUSH2 0x0d8d
00000949: JUMPI
0000094a: PUSH1 0x01
0000094c: ISZERO
0000094d: ISZERO
0000094e: DUP11
0000094f: ISZERO
00000950: ISZERO
00000951: EQ
00000952: ISZERO
00000953: PUSH2 0x09c6
00000956: JUMPI
00000957: DUP12
00000958: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000096d: AND
0000096e: PUSH4 0xbc25cf77
00000973: ADDRESS
00000974: PUSH1 0x40
00000976: MLOAD
00000977: DUP3
00000978: PUSH4 0xffffffff
0000097d: AND
0000097e: PUSH1 0xe0
00000980: SHL
00000981: DUP2
00000982: MSTORE
00000983: PUSH1 0x04
00000985: ADD
00000986: PUSH2 0x098f
00000989: SWAP2
0000098a: SWAP1
0000098b: PUSH2 0x14cf
0000098e: JUMP
0000098f: JUMPDEST
00000990: PUSH1 0x00
00000992: PUSH1 0x40
00000994: MLOAD
00000995: DUP1
00000996: DUP4
00000997: SUB
00000998: DUP2
00000999: PUSH1 0x00
0000099b: DUP8
0000099c: DUP1
0000099d: EXTCODESIZE
0000099e: ISZERO
0000099f: DUP1
000009a0: ISZERO
000009a1: PUSH2 0x09a9
000009a4: JUMPI
000009a5: PUSH1 0x00
000009a7: DUP1
000009a8: REVERT
000009a9: JUMPDEST
000009aa: POP
000009ab: GAS
000009ac: CALL
000009ad: ISZERO
000009ae: DUP1
000009af: ISZERO
000009b0: PUSH2 0x09bd
000009b3: JUMPI
000009b4: RETURNDATASIZE
000009b5: PUSH1 0x00
000009b7: DUP1
000009b8: RETURNDATACOPY
000009b9: RETURNDATASIZE
000009ba: PUSH1 0x00
000009bc: REVERT
000009bd: JUMPDEST
000009be: POP
000009bf: POP
000009c0: POP
000009c1: POP
000009c2: PUSH2 0x0b08
000009c5: JUMP
000009c6: JUMPDEST
000009c7: PUSH1 0x00
000009c9: DUP4
000009ca: PUSH14 0xffffffffffffffffffffffffffff
000009d9: AND
000009da: DUP3
000009db: SUB
000009dc: SWAP1
000009dd: POP
000009de: PUSH1 0x01
000009e0: ISZERO
000009e1: ISZERO
000009e2: DUP11
000009e3: ISZERO
000009e4: ISZERO
000009e5: EQ
000009e6: ISZERO
000009e7: PUSH2 0x0a7a
000009ea: JUMPI
000009eb: PUSH1 0x00
000009ed: PUSH8 0x0de0b6b3a7640000
000009f6: DUP3
000009f7: DUP12
000009f8: MUL
000009f9: DUP2
000009fa: PUSH2 0x09ff
000009fd: JUMPI
000009fe: INVALID
000009ff: JUMPDEST
00000a00: DIV
00000a01: SWAP1
00000a02: POP
00000a03: DUP14
00000a04: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a19: AND
00000a1a: PUSH4 0x022c0d9f
00000a1f: DUP3
00000a20: PUSH1 0x00
00000a22: ADDRESS
00000a23: DUP9
00000a24: PUSH1 0x40
00000a26: MLOAD
00000a27: DUP6
00000a28: PUSH4 0xffffffff
00000a2d: AND
00000a2e: PUSH1 0xe0
00000a30: SHL
00000a31: DUP2
00000a32: MSTORE
00000a33: PUSH1 0x04
00000a35: ADD
00000a36: PUSH2 0x0a42
00000a39: SWAP5
00000a3a: SWAP4
00000a3b: SWAP3
00000a3c: SWAP2
00000a3d: SWAP1
00000a3e: PUSH2 0x1581
00000a41: JUMP
00000a42: JUMPDEST
00000a43: PUSH1 0x00
00000a45: PUSH1 0x40
00000a47: MLOAD
00000a48: DUP1
00000a49: DUP4
00000a4a: SUB
00000a4b: DUP2
00000a4c: PUSH1 0x00
00000a4e: DUP8
00000a4f: DUP1
00000a50: EXTCODESIZE
00000a51: ISZERO
00000a52: DUP1
00000a53: ISZERO
00000a54: PUSH2 0x0a5c
00000a57: JUMPI
00000a58: PUSH1 0x00
00000a5a: DUP1
00000a5b: REVERT
00000a5c: JUMPDEST
00000a5d: POP
00000a5e: GAS
00000a5f: CALL
00000a60: ISZERO
00000a61: DUP1
00000a62: ISZERO
00000a63: PUSH2 0x0a70
00000a66: JUMPI
00000a67: RETURNDATASIZE
00000a68: PUSH1 0x00
00000a6a: DUP1
00000a6b: RETURNDATACOPY
00000a6c: RETURNDATASIZE
00000a6d: PUSH1 0x00
00000a6f: REVERT
00000a70: JUMPDEST
00000a71: POP
00000a72: POP
00000a73: POP
00000a74: POP
00000a75: POP
00000a76: PUSH2 0x0b06
00000a79: JUMP
00000a7a: JUMPDEST
00000a7b: PUSH1 0x00
00000a7d: PUSH8 0x0de0b6b3a7640000
00000a86: DUP3
00000a87: DUP12
00000a88: MUL
00000a89: DUP2
00000a8a: PUSH2 0x0a8f
00000a8d: JUMPI
00000a8e: INVALID
00000a8f: JUMPDEST
00000a90: DIV
00000a91: SWAP1
00000a92: POP
00000a93: DUP14
00000a94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000aa9: AND
00000aaa: PUSH4 0x022c0d9f
00000aaf: PUSH1 0x00
00000ab1: DUP4
00000ab2: ADDRESS
00000ab3: DUP9
00000ab4: PUSH1 0x40
00000ab6: MLOAD
00000ab7: DUP6
00000ab8: PUSH4 0xffffffff
00000abd: AND
00000abe: PUSH1 0xe0
00000ac0: SHL
00000ac1: DUP2
00000ac2: MSTORE
00000ac3: PUSH1 0x04
00000ac5: ADD
00000ac6: PUSH2 0x0ad2
00000ac9: SWAP5
00000aca: SWAP4
00000acb: SWAP3
00000acc: SWAP2
00000acd: SWAP1
00000ace: PUSH2 0x1535
00000ad1: JUMP
00000ad2: JUMPDEST
00000ad3: PUSH1 0x00
00000ad5: PUSH1 0x40
00000ad7: MLOAD
00000ad8: DUP1
00000ad9: DUP4
00000ada: SUB
00000adb: DUP2
00000adc: PUSH1 0x00
00000ade: DUP8
00000adf: DUP1
00000ae0: EXTCODESIZE
00000ae1: ISZERO
00000ae2: DUP1
00000ae3: ISZERO
00000ae4: PUSH2 0x0aec
00000ae7: JUMPI
00000ae8: PUSH1 0x00
00000aea: DUP1
00000aeb: REVERT
00000aec: JUMPDEST
00000aed: POP
00000aee: GAS
00000aef: CALL
00000af0: ISZERO
00000af1: DUP1
00000af2: ISZERO
00000af3: PUSH2 0x0b00
00000af6: JUMPI
00000af7: RETURNDATASIZE
00000af8: PUSH1 0x00
00000afa: DUP1
00000afb: RETURNDATACOPY
00000afc: RETURNDATASIZE
00000afd: PUSH1 0x00
00000aff: REVERT
00000b00: JUMPDEST
00000b01: POP
00000b02: POP
00000b03: POP
00000b04: POP
00000b05: POP
00000b06: JUMPDEST
00000b07: POP
00000b08: JUMPDEST
00000b09: PUSH1 0x01
00000b0b: ISZERO
00000b0c: ISZERO
00000b0d: DUP8
00000b0e: ISZERO
00000b0f: ISZERO
00000b10: EQ
00000b11: DUP1
00000b12: ISZERO
00000b13: PUSH2 0x0b20
00000b16: JUMPI
00000b17: POP
00000b18: PUSH1 0x00
00000b1a: ISZERO
00000b1b: ISZERO
00000b1c: DUP10
00000b1d: ISZERO
00000b1e: ISZERO
00000b1f: EQ
00000b20: JUMPDEST
00000b21: ISZERO
00000b22: PUSH2 0x0d8c
00000b25: JUMPI
00000b26: PUSH1 0x60
00000b28: PUSH1 0x02
00000b2a: PUSH8 0xffffffffffffffff
00000b33: DUP2
00000b34: GT
00000b35: DUP1
00000b36: ISZERO
00000b37: PUSH2 0x0b3f
00000b3a: JUMPI
00000b3b: PUSH1 0x00
00000b3d: DUP1
00000b3e: REVERT
00000b3f: JUMPDEST
00000b40: POP
00000b41: PUSH1 0x40
00000b43: MLOAD
00000b44: SWAP1
00000b45: DUP1
00000b46: DUP3
00000b47: MSTORE
00000b48: DUP1
00000b49: PUSH1 0x20
00000b4b: MUL
00000b4c: PUSH1 0x20
00000b4e: ADD
00000b4f: DUP3
00000b50: ADD
00000b51: PUSH1 0x40
00000b53: MSTORE
00000b54: DUP1
00000b55: ISZERO
00000b56: PUSH2 0x0b6e
00000b59: JUMPI
00000b5a: DUP2
00000b5b: PUSH1 0x20
00000b5d: ADD
00000b5e: PUSH1 0x20
00000b60: DUP3
00000b61: MUL
00000b62: DUP1
00000b63: CALLDATASIZE
00000b64: DUP4
00000b65: CALLDATACOPY
00000b66: DUP1
00000b67: DUP3
00000b68: ADD
00000b69: SWAP2
00000b6a: POP
00000b6b: POP
00000b6c: SWAP1
00000b6d: POP
00000b6e: JUMPDEST
00000b6f: POP
00000b70: SWAP1
00000b71: POP
00000b72: DUP6
00000b73: DUP2
00000b74: PUSH1 0x00
00000b76: DUP2
00000b77: MLOAD
00000b78: DUP2
00000b79: LT
00000b7a: PUSH2 0x0b7f
00000b7d: JUMPI
00000b7e: INVALID
00000b7f: JUMPDEST
00000b80: PUSH1 0x20
00000b82: MUL
00000b83: PUSH1 0x20
00000b85: ADD
00000b86: ADD
00000b87: SWAP1
00000b88: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b9d: AND
00000b9e: SWAP1
00000b9f: DUP2
00000ba0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bb5: AND
00000bb6: DUP2
00000bb7: MSTORE
00000bb8: POP
00000bb9: POP
00000bba: PUSH1 0x01
00000bbc: PUSH1 0x00
00000bbe: SWAP1
00000bbf: SLOAD
00000bc0: SWAP1
00000bc1: PUSH2 0x0100
00000bc4: EXP
00000bc5: SWAP1
00000bc6: DIV
00000bc7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bdc: AND
00000bdd: DUP2
00000bde: PUSH1 0x01
00000be0: DUP2
00000be1: MLOAD
00000be2: DUP2
00000be3: LT
00000be4: PUSH2 0x0be9
00000be7: JUMPI
00000be8: INVALID
00000be9: JUMPDEST
00000bea: PUSH1 0x20
00000bec: MUL
00000bed: PUSH1 0x20
00000bef: ADD
00000bf0: ADD
00000bf1: SWAP1
00000bf2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c07: AND
00000c08: SWAP1
00000c09: DUP2
00000c0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c1f: AND
00000c20: DUP2
00000c21: MSTORE
00000c22: POP
00000c23: POP
00000c24: PUSH1 0x02
00000c26: PUSH1 0x00
00000c28: SWAP1
00000c29: SLOAD
00000c2a: SWAP1
00000c2b: PUSH2 0x0100
00000c2e: EXP
00000c2f: SWAP1
00000c30: DIV
00000c31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c46: AND
00000c47: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c5c: AND
00000c5d: PUSH4 0x38ed1739
00000c62: DUP8
00000c63: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c78: AND
00000c79: PUSH4 0x70a08231
00000c7e: ADDRESS
00000c7f: PUSH1 0x40
00000c81: MLOAD
00000c82: DUP3
00000c83: PUSH4 0xffffffff
00000c88: AND
00000c89: PUSH1 0xe0
00000c8b: SHL
00000c8c: DUP2
00000c8d: MSTORE
00000c8e: PUSH1 0x04
00000c90: ADD
00000c91: PUSH2 0x0c9a
00000c94: SWAP2
00000c95: SWAP1
00000c96: PUSH2 0x14cf
00000c99: JUMP
00000c9a: JUMPDEST
00000c9b: PUSH1 0x20
00000c9d: PUSH1 0x40
00000c9f: MLOAD
00000ca0: DUP1
00000ca1: DUP4
00000ca2: SUB
00000ca3: DUP2
00000ca4: DUP7
00000ca5: DUP1
00000ca6: EXTCODESIZE
00000ca7: ISZERO
00000ca8: DUP1
00000ca9: ISZERO
00000caa: PUSH2 0x0cb2
00000cad: JUMPI
00000cae: PUSH1 0x00
00000cb0: DUP1
00000cb1: REVERT
00000cb2: JUMPDEST
00000cb3: POP
00000cb4: GAS
00000cb5: STATICCALL
00000cb6: ISZERO
00000cb7: DUP1
00000cb8: ISZERO
00000cb9: PUSH2 0x0cc6
00000cbc: JUMPI
00000cbd: RETURNDATASIZE
00000cbe: PUSH1 0x00
00000cc0: DUP1
00000cc1: RETURNDATACOPY
00000cc2: RETURNDATASIZE
00000cc3: PUSH1 0x00
00000cc5: REVERT
00000cc6: JUMPDEST
00000cc7: POP
00000cc8: POP
00000cc9: POP
00000cca: POP
00000ccb: PUSH1 0x40
00000ccd: MLOAD
00000cce: RETURNDATASIZE
00000ccf: PUSH1 0x1f
00000cd1: NOT
00000cd2: PUSH1 0x1f
00000cd4: DUP3
00000cd5: ADD
00000cd6: AND
00000cd7: DUP3
00000cd8: ADD
00000cd9: DUP1
00000cda: PUSH1 0x40
00000cdc: MSTORE
00000cdd: POP
00000cde: DUP2
00000cdf: ADD
00000ce0: SWAP1
00000ce1: PUSH2 0x0cea
00000ce4: SWAP2
00000ce5: SWAP1
00000ce6: PUSH2 0x135f
00000ce9: JUMP
00000cea: JUMPDEST
00000ceb: PUSH1 0x00
00000ced: DUP5
00000cee: PUSH1 0x00
00000cf0: DUP1
00000cf1: SLOAD
00000cf2: SWAP1
00000cf3: PUSH2 0x0100
00000cf6: EXP
00000cf7: SWAP1
00000cf8: DIV
00000cf9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d0e: AND
00000d0f: PUSH1 0x3c
00000d11: TIMESTAMP
00000d12: ADD
00000d13: PUSH1 0x40
00000d15: MLOAD
00000d16: DUP7
00000d17: PUSH4 0xffffffff
00000d1c: AND
00000d1d: PUSH1 0xe0
00000d1f: SHL
00000d20: DUP2
00000d21: MSTORE
00000d22: PUSH1 0x04
00000d24: ADD
00000d25: PUSH2 0x0d32
00000d28: SWAP6
00000d29: SWAP5
00000d2a: SWAP4
00000d2b: SWAP3
00000d2c: SWAP2
00000d2d: SWAP1
00000d2e: PUSH2 0x15cd
00000d31: JUMP
00000d32: JUMPDEST
00000d33: PUSH1 0x00
00000d35: PUSH1 0x40
00000d37: MLOAD
00000d38: DUP1
00000d39: DUP4
00000d3a: SUB
00000d3b: DUP2
00000d3c: PUSH1 0x00
00000d3e: DUP8
00000d3f: DUP1
00000d40: EXTCODESIZE
00000d41: ISZERO
00000d42: DUP1
00000d43: ISZERO
00000d44: PUSH2 0x0d4c
00000d47: JUMPI
00000d48: PUSH1 0x00
00000d4a: DUP1
00000d4b: REVERT
00000d4c: JUMPDEST
00000d4d: POP
00000d4e: GAS
00000d4f: CALL
00000d50: ISZERO
00000d51: DUP1
00000d52: ISZERO
00000d53: PUSH2 0x0d60
00000d56: JUMPI
00000d57: RETURNDATASIZE
00000d58: PUSH1 0x00
00000d5a: DUP1
00000d5b: RETURNDATACOPY
00000d5c: RETURNDATASIZE
00000d5d: PUSH1 0x00
00000d5f: REVERT
00000d60: JUMPDEST
00000d61: POP
00000d62: POP
00000d63: POP
00000d64: POP
00000d65: PUSH1 0x40
00000d67: MLOAD
00000d68: RETURNDATASIZE
00000d69: PUSH1 0x00
00000d6b: DUP3
00000d6c: RETURNDATACOPY
00000d6d: RETURNDATASIZE
00000d6e: PUSH1 0x1f
00000d70: NOT
00000d71: PUSH1 0x1f
00000d73: DUP3
00000d74: ADD
00000d75: AND
00000d76: DUP3
00000d77: ADD
00000d78: DUP1
00000d79: PUSH1 0x40
00000d7b: MSTORE
00000d7c: POP
00000d7d: DUP2
00000d7e: ADD
00000d7f: SWAP1
00000d80: PUSH2 0x0d89
00000d83: SWAP2
00000d84: SWAP1
00000d85: PUSH2 0x118c
00000d88: JUMP
00000d89: JUMPDEST
00000d8a: POP
00000d8b: POP
00000d8c: JUMPDEST
00000d8d: JUMPDEST
00000d8e: POP
00000d8f: JUMPDEST
00000d90: POP
00000d91: POP
00000d92: POP
00000d93: POP
00000d94: POP
00000d95: POP
00000d96: POP
00000d97: POP
00000d98: POP
00000d99: POP
00000d9a: POP
00000d9b: POP
00000d9c: POP
00000d9d: JUMP
00000d9e: JUMPDEST
00000d9f: PUSH1 0x00
00000da1: DUP1
00000da2: SLOAD
00000da3: SWAP1
00000da4: PUSH2 0x0100
00000da7: EXP
00000da8: SWAP1
00000da9: DIV
00000daa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dbf: AND
00000dc0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dd5: AND
00000dd6: ORIGIN
00000dd7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dec: AND
00000ded: EQ
00000dee: PUSH2 0x0df6
00000df1: JUMPI
00000df2: PUSH1 0x00
00000df4: DUP1
00000df5: REVERT
00000df6: JUMPDEST
00000df7: PUSH1 0x00
00000df9: JUMPDEST
00000dfa: DUP4
00000dfb: MLOAD
00000dfc: DUP2
00000dfd: LT
00000dfe: ISZERO
00000dff: PUSH2 0x0eab
00000e02: JUMPI
00000e03: DUP4
00000e04: DUP2
00000e05: DUP2
00000e06: MLOAD
00000e07: DUP2
00000e08: LT
00000e09: PUSH2 0x0e0e
00000e0c: JUMPI
00000e0d: INVALID
00000e0e: JUMPDEST
00000e0f: PUSH1 0x20
00000e11: MUL
00000e12: PUSH1 0x20
00000e14: ADD
00000e15: ADD
00000e16: MLOAD
00000e17: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e2c: AND
00000e2d: CALLVALUE
00000e2e: DUP5
00000e2f: DUP5
00000e30: DUP5
00000e31: DUP2
00000e32: DUP2
00000e33: LT
00000e34: PUSH2 0x0e39
00000e37: JUMPI
00000e38: INVALID
00000e39: JUMPDEST
00000e3a: SWAP1
00000e3b: POP
00000e3c: PUSH1 0x20
00000e3e: MUL
00000e3f: DUP2
00000e40: ADD
00000e41: SWAP1
00000e42: PUSH2 0x0e4b
00000e45: SWAP2
00000e46: SWAP1
00000e47: PUSH2 0x1627
00000e4a: JUMP
00000e4b: JUMPDEST
00000e4c: PUSH1 0x40
00000e4e: MLOAD
00000e4f: PUSH2 0x0e59
00000e52: SWAP3
00000e53: SWAP2
00000e54: SWAP1
00000e55: PUSH2 0x14b6
00000e58: JUMP
00000e59: JUMPDEST
00000e5a: PUSH1 0x00
00000e5c: PUSH1 0x40
00000e5e: MLOAD
00000e5f: DUP1
00000e60: DUP4
00000e61: SUB
00000e62: DUP2
00000e63: DUP6
00000e64: DUP8
00000e65: GAS
00000e66: CALL
00000e67: SWAP3
00000e68: POP
00000e69: POP
00000e6a: POP
00000e6b: RETURNDATASIZE
00000e6c: DUP1
00000e6d: PUSH1 0x00
00000e6f: DUP2
00000e70: EQ
00000e71: PUSH2 0x0e96
00000e74: JUMPI
00000e75: PUSH1 0x40
00000e77: MLOAD
00000e78: SWAP2
00000e79: POP
00000e7a: PUSH1 0x1f
00000e7c: NOT
00000e7d: PUSH1 0x3f
00000e7f: RETURNDATASIZE
00000e80: ADD
00000e81: AND
00000e82: DUP3
00000e83: ADD
00000e84: PUSH1 0x40
00000e86: MSTORE
00000e87: RETURNDATASIZE
00000e88: DUP3
00000e89: MSTORE
00000e8a: RETURNDATASIZE
00000e8b: PUSH1 0x00
00000e8d: PUSH1 0x20
00000e8f: DUP5
00000e90: ADD
00000e91: RETURNDATACOPY
00000e92: PUSH2 0x0e9b
00000e95: JUMP
00000e96: JUMPDEST
00000e97: PUSH1 0x60
00000e99: SWAP2
00000e9a: POP
00000e9b: JUMPDEST
00000e9c: POP
00000e9d: POP
00000e9e: POP
00000e9f: DUP1
00000ea0: DUP1
00000ea1: PUSH1 0x01
00000ea3: ADD
00000ea4: SWAP2
00000ea5: POP
00000ea6: POP
00000ea7: PUSH2 0x0df9
00000eaa: JUMP
00000eab: JUMPDEST
00000eac: POP
00000ead: POP
00000eae: POP
00000eaf: POP
00000eb0: JUMP
00000eb1: JUMPDEST
00000eb2: PUSH1 0x00
00000eb4: DUP2
00000eb5: CALLDATALOAD
00000eb6: SWAP1
00000eb7: POP
00000eb8: PUSH2 0x0ec0
00000ebb: DUP2
00000ebc: PUSH2 0x187a
00000ebf: JUMP
00000ec0: JUMPDEST
00000ec1: SWAP3
00000ec2: SWAP2
00000ec3: POP
00000ec4: POP
00000ec5: JUMP
00000ec6: JUMPDEST
00000ec7: PUSH1 0x00
00000ec9: DUP2
00000eca: MLOAD
00000ecb: SWAP1
00000ecc: POP
00000ecd: PUSH2 0x0ed5
00000ed0: DUP2
00000ed1: PUSH2 0x187a
00000ed4: JUMP
00000ed5: JUMPDEST
00000ed6: SWAP3
00000ed7: SWAP2
00000ed8: POP
00000ed9: POP
00000eda: JUMP
00000edb: JUMPDEST
00000edc: PUSH1 0x00
00000ede: DUP2
00000edf: CALLDATALOAD
00000ee0: SWAP1
00000ee1: POP
00000ee2: PUSH2 0x0eea
00000ee5: DUP2
00000ee6: PUSH2 0x1891
00000ee9: JUMP
00000eea: JUMPDEST
00000eeb: SWAP3
00000eec: SWAP2
00000eed: POP
00000eee: POP
00000eef: JUMP
00000ef0: JUMPDEST
00000ef1: PUSH1 0x00
00000ef3: DUP3
00000ef4: PUSH1 0x1f
00000ef6: DUP4
00000ef7: ADD
00000ef8: SLT
00000ef9: PUSH2 0x0f01
00000efc: JUMPI
00000efd: PUSH1 0x00
00000eff: DUP1
00000f00: REVERT
00000f01: JUMPDEST
00000f02: DUP2
00000f03: CALLDATALOAD
00000f04: PUSH2 0x0f14
00000f07: PUSH2 0x0f0f
00000f0a: DUP3
00000f0b: PUSH2 0x16ab
00000f0e: JUMP
00000f0f: JUMPDEST
00000f10: PUSH2 0x167e
00000f13: JUMP
00000f14: JUMPDEST
00000f15: SWAP2
00000f16: POP
00000f17: DUP2
00000f18: DUP2
00000f19: DUP4
00000f1a: MSTORE
00000f1b: PUSH1 0x20
00000f1d: DUP5
00000f1e: ADD
00000f1f: SWAP4
00000f20: POP
00000f21: PUSH1 0x20
00000f23: DUP2
00000f24: ADD
00000f25: SWAP1
00000f26: POP
00000f27: DUP4
00000f28: DUP6
00000f29: PUSH1 0x20
00000f2b: DUP5
00000f2c: MUL
00000f2d: DUP3
00000f2e: ADD
00000f2f: GT
00000f30: ISZERO
00000f31: PUSH2 0x0f39
00000f34: JUMPI
00000f35: PUSH1 0x00
00000f37: DUP1
00000f38: REVERT
00000f39: JUMPDEST
00000f3a: PUSH1 0x00
00000f3c: JUMPDEST
00000f3d: DUP4
00000f3e: DUP2
00000f3f: LT
00000f40: ISZERO
00000f41: PUSH2 0x0f69
00000f44: JUMPI
00000f45: DUP2
00000f46: PUSH2 0x0f4f
00000f49: DUP9
00000f4a: DUP3
00000f4b: PUSH2 0x0eb1
00000f4e: JUMP
00000f4f: JUMPDEST
00000f50: DUP5
00000f51: MSTORE
00000f52: PUSH1 0x20
00000f54: DUP5
00000f55: ADD
00000f56: SWAP4
00000f57: POP
00000f58: PUSH1 0x20
00000f5a: DUP4
00000f5b: ADD
00000f5c: SWAP3
00000f5d: POP
00000f5e: POP
00000f5f: PUSH1 0x01
00000f61: DUP2
00000f62: ADD
00000f63: SWAP1
00000f64: POP
00000f65: PUSH2 0x0f3c
00000f68: JUMP
00000f69: JUMPDEST
00000f6a: POP
00000f6b: POP
00000f6c: POP
00000f6d: POP
00000f6e: SWAP3
00000f6f: SWAP2
00000f70: POP
00000f71: POP
00000f72: JUMP
00000f73: JUMPDEST
00000f74: PUSH1 0x00
00000f76: DUP1
00000f77: DUP4
00000f78: PUSH1 0x1f
00000f7a: DUP5
00000f7b: ADD
00000f7c: SLT
00000f7d: PUSH2 0x0f85
00000f80: JUMPI
00000f81: PUSH1 0x00
00000f83: DUP1
00000f84: REVERT
00000f85: JUMPDEST
00000f86: DUP3
00000f87: CALLDATALOAD
00000f88: SWAP1
00000f89: POP
00000f8a: PUSH8 0xffffffffffffffff
00000f93: DUP2
00000f94: GT
00000f95: ISZERO
00000f96: PUSH2 0x0f9e
00000f99: JUMPI
00000f9a: PUSH1 0x00
00000f9c: DUP1
00000f9d: REVERT
00000f9e: JUMPDEST
00000f9f: PUSH1 0x20
00000fa1: DUP4
00000fa2: ADD
00000fa3: SWAP2
00000fa4: POP
00000fa5: DUP4
00000fa6: PUSH1 0x20
00000fa8: DUP3
00000fa9: MUL
00000faa: DUP4
00000fab: ADD
00000fac: GT
00000fad: ISZERO
00000fae: PUSH2 0x0fb6
00000fb1: JUMPI
00000fb2: PUSH1 0x00
00000fb4: DUP1
00000fb5: REVERT
00000fb6: JUMPDEST
00000fb7: SWAP3
00000fb8: POP
00000fb9: SWAP3
00000fba: SWAP1
00000fbb: POP
00000fbc: JUMP
00000fbd: JUMPDEST
00000fbe: PUSH1 0x00
00000fc0: DUP3
00000fc1: PUSH1 0x1f
00000fc3: DUP4
00000fc4: ADD
00000fc5: SLT
00000fc6: PUSH2 0x0fce
00000fc9: JUMPI
00000fca: PUSH1 0x00
00000fcc: DUP1
00000fcd: REVERT
00000fce: JUMPDEST
00000fcf: DUP2
00000fd0: MLOAD
00000fd1: PUSH2 0x0fe1
00000fd4: PUSH2 0x0fdc
00000fd7: DUP3
00000fd8: PUSH2 0x16d3
00000fdb: JUMP
00000fdc: JUMPDEST
00000fdd: PUSH2 0x167e
00000fe0: JUMP
00000fe1: JUMPDEST
00000fe2: SWAP2
00000fe3: POP
00000fe4: DUP2
00000fe5: DUP2
00000fe6: DUP4
00000fe7: MSTORE
00000fe8: PUSH1 0x20
00000fea: DUP5
00000feb: ADD
00000fec: SWAP4
00000fed: POP
00000fee: PUSH1 0x20
00000ff0: DUP2
00000ff1: ADD
00000ff2: SWAP1
00000ff3: POP
00000ff4: DUP4
00000ff5: DUP6
00000ff6: PUSH1 0x20
00000ff8: DUP5
00000ff9: MUL
00000ffa: DUP3
00000ffb: ADD
00000ffc: GT
00000ffd: ISZERO
00000ffe: PUSH2 0x1006
00001001: JUMPI
00001002: PUSH1 0x00
00001004: DUP1
00001005: REVERT
00001006: JUMPDEST
00001007: PUSH1 0x00
00001009: JUMPDEST
0000100a: DUP4
0000100b: DUP2
0000100c: LT
0000100d: ISZERO
0000100e: PUSH2 0x1036
00001011: JUMPI
00001012: DUP2
00001013: PUSH2 0x101c
00001016: DUP9
00001017: DUP3
00001018: PUSH2 0x10c9
0000101b: JUMP
0000101c: JUMPDEST
0000101d: DUP5
0000101e: MSTORE
0000101f: PUSH1 0x20
00001021: DUP5
00001022: ADD
00001023: SWAP4
00001024: POP
00001025: PUSH1 0x20
00001027: DUP4
00001028: ADD
00001029: SWAP3
0000102a: POP
0000102b: POP
0000102c: PUSH1 0x01
0000102e: DUP2
0000102f: ADD
00001030: SWAP1
00001031: POP
00001032: PUSH2 0x1009
00001035: JUMP
00001036: JUMPDEST
00001037: POP
00001038: POP
00001039: POP
0000103a: POP
0000103b: SWAP3
0000103c: SWAP2
0000103d: POP
0000103e: POP
0000103f: JUMP
00001040: JUMPDEST
00001041: PUSH1 0x00
00001043: DUP2
00001044: CALLDATALOAD
00001045: SWAP1
00001046: POP
00001047: PUSH2 0x104f
0000104a: DUP2
0000104b: PUSH2 0x18a8
0000104e: JUMP
0000104f: JUMPDEST
00001050: SWAP3
00001051: SWAP2
00001052: POP
00001053: POP
00001054: JUMP
00001055: JUMPDEST
00001056: PUSH1 0x00
00001058: DUP1
00001059: DUP4
0000105a: PUSH1 0x1f
0000105c: DUP5
0000105d: ADD
0000105e: SLT
0000105f: PUSH2 0x1067
00001062: JUMPI
00001063: PUSH1 0x00
00001065: DUP1
00001066: REVERT
00001067: JUMPDEST
00001068: DUP3
00001069: CALLDATALOAD
0000106a: SWAP1
0000106b: POP
0000106c: PUSH8 0xffffffffffffffff
00001075: DUP2
00001076: GT
00001077: ISZERO
00001078: PUSH2 0x1080
0000107b: JUMPI
0000107c: PUSH1 0x00
0000107e: DUP1
0000107f: REVERT
00001080: JUMPDEST
00001081: PUSH1 0x20
00001083: DUP4
00001084: ADD
00001085: SWAP2
00001086: POP
00001087: DUP4
00001088: PUSH1 0x01
0000108a: DUP3
0000108b: MUL
0000108c: DUP4
0000108d: ADD
0000108e: GT
0000108f: ISZERO
00001090: PUSH2 0x1098
00001093: JUMPI
00001094: PUSH1 0x00
00001096: DUP1
00001097: REVERT
00001098: JUMPDEST
00001099: SWAP3
0000109a: POP
0000109b: SWAP3
0000109c: SWAP1
0000109d: POP
0000109e: JUMP
0000109f: JUMPDEST
000010a0: PUSH1 0x00
000010a2: DUP2
000010a3: MLOAD
000010a4: SWAP1
000010a5: POP
000010a6: PUSH2 0x10ae
000010a9: DUP2
000010aa: PUSH2 0x18bf
000010ad: JUMP
000010ae: JUMPDEST
000010af: SWAP3
000010b0: SWAP2
000010b1: POP
000010b2: POP
000010b3: JUMP
000010b4: JUMPDEST
000010b5: PUSH1 0x00
000010b7: DUP2
000010b8: CALLDATALOAD
000010b9: SWAP1
000010ba: POP
000010bb: PUSH2 0x10c3
000010be: DUP2
000010bf: PUSH2 0x18d6
000010c2: JUMP
000010c3: JUMPDEST
000010c4: SWAP3
000010c5: SWAP2
000010c6: POP
000010c7: POP
000010c8: JUMP
000010c9: JUMPDEST
000010ca: PUSH1 0x00
000010cc: DUP2
000010cd: MLOAD
000010ce: SWAP1
000010cf: POP
000010d0: PUSH2 0x10d8
000010d3: DUP2
000010d4: PUSH2 0x18d6
000010d7: JUMP
000010d8: JUMPDEST
000010d9: SWAP3
000010da: SWAP2
000010db: POP
000010dc: POP
000010dd: JUMP
000010de: JUMPDEST
000010df: PUSH1 0x00
000010e1: DUP2
000010e2: MLOAD
000010e3: SWAP1
000010e4: POP
000010e5: PUSH2 0x10ed
000010e8: DUP2
000010e9: PUSH2 0x18ed
000010ec: JUMP
000010ed: JUMPDEST
000010ee: SWAP3
000010ef: SWAP2
000010f0: POP
000010f1: POP
000010f2: JUMP
000010f3: JUMPDEST
000010f4: PUSH1 0x00
000010f6: PUSH1 0x20
000010f8: DUP3
000010f9: DUP5
000010fa: SUB
000010fb: SLT
000010fc: ISZERO
000010fd: PUSH2 0x1105
00001100: JUMPI
00001101: PUSH1 0x00
00001103: DUP1
00001104: REVERT
00001105: JUMPDEST
00001106: PUSH1 0x00
00001108: PUSH2 0x1113
0000110b: DUP5
0000110c: DUP3
0000110d: DUP6
0000110e: ADD
0000110f: PUSH2 0x0ec6
00001112: JUMP
00001113: JUMPDEST
00001114: SWAP2
00001115: POP
00001116: POP
00001117: SWAP3
00001118: SWAP2
00001119: POP
0000111a: POP
0000111b: JUMP
0000111c: JUMPDEST
0000111d: PUSH1 0x00
0000111f: DUP1
00001120: PUSH1 0x00
00001122: PUSH1 0x40
00001124: DUP5
00001125: DUP7
00001126: SUB
00001127: SLT
00001128: ISZERO
00001129: PUSH2 0x1131
0000112c: JUMPI
0000112d: PUSH1 0x00
0000112f: DUP1
00001130: REVERT
00001131: JUMPDEST
00001132: PUSH1 0x00
00001134: DUP5
00001135: ADD
00001136: CALLDATALOAD
00001137: PUSH8 0xffffffffffffffff
00001140: DUP2
00001141: GT
00001142: ISZERO
00001143: PUSH2 0x114b
00001146: JUMPI
00001147: PUSH1 0x00
00001149: DUP1
0000114a: REVERT
0000114b: JUMPDEST
0000114c: PUSH2 0x1157
0000114f: DUP7
00001150: DUP3
00001151: DUP8
00001152: ADD
00001153: PUSH2 0x0ef0
00001156: JUMP
00001157: JUMPDEST
00001158: SWAP4
00001159: POP
0000115a: POP
0000115b: PUSH1 0x20
0000115d: DUP5
0000115e: ADD
0000115f: CALLDATALOAD
00001160: PUSH8 0xffffffffffffffff
00001169: DUP2
0000116a: GT
0000116b: ISZERO
0000116c: PUSH2 0x1174
0000116f: JUMPI
00001170: PUSH1 0x00
00001172: DUP1
00001173: REVERT
00001174: JUMPDEST
00001175: PUSH2 0x1180
00001178: DUP7
00001179: DUP3
0000117a: DUP8
0000117b: ADD
0000117c: PUSH2 0x0f73
0000117f: JUMP
00001180: JUMPDEST
00001181: SWAP3
00001182: POP
00001183: SWAP3
00001184: POP
00001185: POP
00001186: SWAP3
00001187: POP
00001188: SWAP3
00001189: POP
0000118a: SWAP3
0000118b: JUMP
0000118c: JUMPDEST
0000118d: PUSH1 0x00
0000118f: PUSH1 0x20
00001191: DUP3
00001192: DUP5
00001193: SUB
00001194: SLT
00001195: ISZERO
00001196: PUSH2 0x119e
00001199: JUMPI
0000119a: PUSH1 0x00
0000119c: DUP1
0000119d: REVERT
0000119e: JUMPDEST
0000119f: PUSH1 0x00
000011a1: DUP3
000011a2: ADD
000011a3: MLOAD
000011a4: PUSH8 0xffffffffffffffff
000011ad: DUP2
000011ae: GT
000011af: ISZERO
000011b0: PUSH2 0x11b8
000011b3: JUMPI
000011b4: PUSH1 0x00
000011b6: DUP1
000011b7: REVERT
000011b8: JUMPDEST
000011b9: PUSH2 0x11c4
000011bc: DUP5
000011bd: DUP3
000011be: DUP6
000011bf: ADD
000011c0: PUSH2 0x0fbd
000011c3: JUMP
000011c4: JUMPDEST
000011c5: SWAP2
000011c6: POP
000011c7: POP
000011c8: SWAP3
000011c9: SWAP2
000011ca: POP
000011cb: POP
000011cc: JUMP
000011cd: JUMPDEST
000011ce: PUSH1 0x00
000011d0: DUP1
000011d1: PUSH1 0x00
000011d3: DUP1
000011d4: PUSH1 0x00
000011d6: DUP1
000011d7: PUSH1 0x00
000011d9: DUP1
000011da: PUSH1 0xe0
000011dc: DUP10
000011dd: DUP12
000011de: SUB
000011df: SLT
000011e0: ISZERO
000011e1: PUSH2 0x11e9
000011e4: JUMPI
000011e5: PUSH1 0x00
000011e7: DUP1
000011e8: REVERT
000011e9: JUMPDEST
000011ea: PUSH1 0x00
000011ec: DUP10
000011ed: ADD
000011ee: CALLDATALOAD
000011ef: PUSH8 0xffffffffffffffff
000011f8: DUP2
000011f9: GT
000011fa: ISZERO
000011fb: PUSH2 0x1203
000011fe: JUMPI
000011ff: PUSH1 0x00
00001201: DUP1
00001202: REVERT
00001203: JUMPDEST
00001204: PUSH2 0x120f
00001207: DUP12
00001208: DUP3
00001209: DUP13
0000120a: ADD
0000120b: PUSH2 0x1055
0000120e: JUMP
0000120f: JUMPDEST
00001210: SWAP9
00001211: POP
00001212: SWAP9
00001213: POP
00001214: POP
00001215: PUSH1 0x20
00001217: PUSH2 0x1222
0000121a: DUP12
0000121b: DUP3
0000121c: DUP13
0000121d: ADD
0000121e: PUSH2 0x0edb
00001221: JUMP
00001222: JUMPDEST
00001223: SWAP7
00001224: POP
00001225: POP
00001226: PUSH1 0x40
00001228: PUSH2 0x1233
0000122b: DUP12
0000122c: DUP3
0000122d: DUP13
0000122e: ADD
0000122f: PUSH2 0x1040
00001232: JUMP
00001233: JUMPDEST
00001234: SWAP6
00001235: POP
00001236: POP
00001237: PUSH1 0x60
00001239: PUSH2 0x1244
0000123c: DUP12
0000123d: DUP3
0000123e: DUP13
0000123f: ADD
00001240: PUSH2 0x1040
00001243: JUMP
00001244: JUMPDEST
00001245: SWAP5
00001246: POP
00001247: POP
00001248: PUSH1 0x80
0000124a: PUSH2 0x1255
0000124d: DUP12
0000124e: DUP3
0000124f: DUP13
00001250: ADD
00001251: PUSH2 0x1040
00001254: JUMP
00001255: JUMPDEST
00001256: SWAP4
00001257: POP
00001258: POP
00001259: PUSH1 0xa0
0000125b: PUSH2 0x1266
0000125e: DUP12
0000125f: DUP3
00001260: DUP13
00001261: ADD
00001262: PUSH2 0x10b4
00001265: JUMP
00001266: JUMPDEST
00001267: SWAP3
00001268: POP
00001269: POP
0000126a: PUSH1 0xc0
0000126c: PUSH2 0x1277
0000126f: DUP12
00001270: DUP3
00001271: DUP13
00001272: ADD
00001273: PUSH2 0x1040
00001276: JUMP
00001277: JUMPDEST
00001278: SWAP2
00001279: POP
0000127a: POP
0000127b: SWAP3
0000127c: SWAP6
0000127d: SWAP9
0000127e: POP
0000127f: SWAP3
00001280: SWAP6
00001281: SWAP9
00001282: SWAP1
00001283: SWAP4
00001284: SWAP7
00001285: POP
00001286: JUMP
00001287: JUMPDEST
00001288: PUSH1 0x00
0000128a: DUP1
0000128b: PUSH1 0x00
0000128d: DUP1
0000128e: PUSH1 0x00
00001290: PUSH1 0x60
00001292: DUP7
00001293: DUP9
00001294: SUB
00001295: SLT
00001296: ISZERO
00001297: PUSH2 0x129f
0000129a: JUMPI
0000129b: PUSH1 0x00
0000129d: DUP1
0000129e: REVERT
0000129f: JUMPDEST
000012a0: PUSH1 0x00
000012a2: DUP7
000012a3: ADD
000012a4: CALLDATALOAD
000012a5: PUSH8 0xffffffffffffffff
000012ae: DUP2
000012af: GT
000012b0: ISZERO
000012b1: PUSH2 0x12b9
000012b4: JUMPI
000012b5: PUSH1 0x00
000012b7: DUP1
000012b8: REVERT
000012b9: JUMPDEST
000012ba: PUSH2 0x12c5
000012bd: DUP9
000012be: DUP3
000012bf: DUP10
000012c0: ADD
000012c1: PUSH2 0x1055
000012c4: JUMP
000012c5: JUMPDEST
000012c6: SWAP6
000012c7: POP
000012c8: SWAP6
000012c9: POP
000012ca: POP
000012cb: PUSH1 0x20
000012cd: PUSH2 0x12d8
000012d0: DUP9
000012d1: DUP3
000012d2: DUP10
000012d3: ADD
000012d4: PUSH2 0x0edb
000012d7: JUMP
000012d8: JUMPDEST
000012d9: SWAP4
000012da: POP
000012db: POP
000012dc: PUSH1 0x40
000012de: DUP7
000012df: ADD
000012e0: CALLDATALOAD
000012e1: PUSH8 0xffffffffffffffff
000012ea: DUP2
000012eb: GT
000012ec: ISZERO
000012ed: PUSH2 0x12f5
000012f0: JUMPI
000012f1: PUSH1 0x00
000012f3: DUP1
000012f4: REVERT
000012f5: JUMPDEST
000012f6: PUSH2 0x1301
000012f9: DUP9
000012fa: DUP3
000012fb: DUP10
000012fc: ADD
000012fd: PUSH2 0x1055
00001300: JUMP
00001301: JUMPDEST
00001302: SWAP3
00001303: POP
00001304: SWAP3
00001305: POP
00001306: POP
00001307: SWAP3
00001308: SWAP6
00001309: POP
0000130a: SWAP3
0000130b: SWAP6
0000130c: SWAP1
0000130d: SWAP4
0000130e: POP
0000130f: JUMP
00001310: JUMPDEST
00001311: PUSH1 0x00
00001313: DUP1
00001314: PUSH1 0x00
00001316: PUSH1 0x60
00001318: DUP5
00001319: DUP7
0000131a: SUB
0000131b: SLT
0000131c: ISZERO
0000131d: PUSH2 0x1325
00001320: JUMPI
00001321: PUSH1 0x00
00001323: DUP1
00001324: REVERT
00001325: JUMPDEST
00001326: PUSH1 0x00
00001328: PUSH2 0x1333
0000132b: DUP7
0000132c: DUP3
0000132d: DUP8
0000132e: ADD
0000132f: PUSH2 0x109f
00001332: JUMP
00001333: JUMPDEST
00001334: SWAP4
00001335: POP
00001336: POP
00001337: PUSH1 0x20
00001339: PUSH2 0x1344
0000133c: DUP7
0000133d: DUP3
0000133e: DUP8
0000133f: ADD
00001340: PUSH2 0x109f
00001343: JUMP
00001344: JUMPDEST
00001345: SWAP3
00001346: POP
00001347: POP
00001348: PUSH1 0x40
0000134a: PUSH2 0x1355
0000134d: DUP7
0000134e: DUP3
0000134f: DUP8
00001350: ADD
00001351: PUSH2 0x10de
00001354: JUMP
00001355: JUMPDEST
00001356: SWAP2
00001357: POP
00001358: POP
00001359: SWAP3
0000135a: POP
0000135b: SWAP3
0000135c: POP
0000135d: SWAP3
0000135e: JUMP
0000135f: JUMPDEST
00001360: PUSH1 0x00
00001362: PUSH1 0x20
00001364: DUP3
00001365: DUP5
00001366: SUB
00001367: SLT
00001368: ISZERO
00001369: PUSH2 0x1371
0000136c: JUMPI
0000136d: PUSH1 0x00
0000136f: DUP1
00001370: REVERT
00001371: JUMPDEST
00001372: PUSH1 0x00
00001374: PUSH2 0x137f
00001377: DUP5
00001378: DUP3
00001379: DUP6
0000137a: ADD
0000137b: PUSH2 0x10c9
0000137e: JUMP
0000137f: JUMPDEST
00001380: SWAP2
00001381: POP
00001382: POP
00001383: SWAP3
00001384: SWAP2
00001385: POP
00001386: POP
00001387: JUMP
00001388: JUMPDEST
00001389: PUSH1 0x00
0000138b: PUSH2 0x1394
0000138e: DUP4
0000138f: DUP4
00001390: PUSH2 0x13af
00001393: JUMP
00001394: JUMPDEST
00001395: PUSH1 0x20
00001397: DUP4
00001398: ADD
00001399: SWAP1
0000139a: POP
0000139b: SWAP3
0000139c: SWAP2
0000139d: POP
0000139e: POP
0000139f: JUMP
000013a0: JUMPDEST
000013a1: PUSH2 0x13a9
000013a4: DUP2
000013a5: PUSH2 0x17df
000013a8: JUMP
000013a9: JUMPDEST
000013aa: DUP3
000013ab: MSTORE
000013ac: POP
000013ad: POP
000013ae: JUMP
000013af: JUMPDEST
000013b0: PUSH2 0x13b8
000013b3: DUP2
000013b4: PUSH2 0x175b
000013b7: JUMP
000013b8: JUMPDEST
000013b9: DUP3
000013ba: MSTORE
000013bb: POP
000013bc: POP
000013bd: JUMP
000013be: JUMPDEST
000013bf: PUSH2 0x13c7
000013c2: DUP2
000013c3: PUSH2 0x175b
000013c6: JUMP
000013c7: JUMPDEST
000013c8: DUP3
000013c9: MSTORE
000013ca: POP
000013cb: POP
000013cc: JUMP
000013cd: JUMPDEST
000013ce: PUSH1 0x00
000013d0: PUSH2 0x13d8
000013d3: DUP3
000013d4: PUSH2 0x170b
000013d7: JUMP
000013d8: JUMPDEST
000013d9: PUSH2 0x13e2
000013dc: DUP2
000013dd: DUP6
000013de: PUSH2 0x172e
000013e1: JUMP
000013e2: JUMPDEST
000013e3: SWAP4
000013e4: POP
000013e5: PUSH2 0x13ed
000013e8: DUP4
000013e9: PUSH2 0x16fb
000013ec: JUMP
000013ed: JUMPDEST
000013ee: DUP1
000013ef: PUSH1 0x00
000013f1: JUMPDEST
000013f2: DUP4
000013f3: DUP2
000013f4: LT
000013f5: ISZERO
000013f6: PUSH2 0x141e
000013f9: JUMPI
000013fa: DUP2
000013fb: MLOAD
000013fc: PUSH2 0x1405
000013ff: DUP9
00001400: DUP3
00001401: PUSH2 0x1388
00001404: JUMP
00001405: JUMPDEST
00001406: SWAP8
00001407: POP
00001408: PUSH2 0x1410
0000140b: DUP4
0000140c: PUSH2 0x1721
0000140f: JUMP
00001410: JUMPDEST
00001411: SWAP3
00001412: POP
00001413: POP
00001414: PUSH1 0x01
00001416: DUP2
00001417: ADD
00001418: SWAP1
00001419: POP
0000141a: PUSH2 0x13f1
0000141d: JUMP
0000141e: JUMPDEST
0000141f: POP
00001420: DUP6
00001421: SWAP4
00001422: POP
00001423: POP
00001424: POP
00001425: POP
00001426: SWAP3
00001427: SWAP2
00001428: POP
00001429: POP
0000142a: JUMP
0000142b: JUMPDEST
0000142c: PUSH2 0x1434
0000142f: DUP2
00001430: PUSH2 0x177f
00001433: JUMP
00001434: JUMPDEST
00001435: DUP3
00001436: MSTORE
00001437: POP
00001438: POP
00001439: JUMP
0000143a: JUMPDEST
0000143b: PUSH1 0x00
0000143d: PUSH2 0x1446
00001440: DUP4
00001441: DUP6
00001442: PUSH2 0x1750
00001445: JUMP
00001446: JUMPDEST
00001447: SWAP4
00001448: POP
00001449: PUSH2 0x1453
0000144c: DUP4
0000144d: DUP6
0000144e: DUP5
0000144f: PUSH2 0x1827
00001452: JUMP
00001453: JUMPDEST
00001454: DUP3
00001455: DUP5
00001456: ADD
00001457: SWAP1
00001458: POP
00001459: SWAP4
0000145a: SWAP3
0000145b: POP
0000145c: POP
0000145d: POP
0000145e: JUMP
0000145f: JUMPDEST
00001460: PUSH1 0x00
00001462: PUSH2 0x146a
00001465: DUP3
00001466: PUSH2 0x1716
00001469: JUMP
0000146a: JUMPDEST
0000146b: PUSH2 0x1474
0000146e: DUP2
0000146f: DUP6
00001470: PUSH2 0x173f
00001473: JUMP
00001474: JUMPDEST
00001475: SWAP4
00001476: POP
00001477: PUSH2 0x1484
0000147a: DUP2
0000147b: DUP6
0000147c: PUSH1 0x20
0000147e: DUP7
0000147f: ADD
00001480: PUSH2 0x1836
00001483: JUMP
00001484: JUMPDEST
00001485: PUSH2 0x148d
00001488: DUP2
00001489: PUSH2 0x1869
0000148c: JUMP
0000148d: JUMPDEST
0000148e: DUP5
0000148f: ADD
00001490: SWAP2
00001491: POP
00001492: POP
00001493: SWAP3
00001494: SWAP2
00001495: POP
00001496: POP
00001497: JUMP
00001498: JUMPDEST
00001499: PUSH2 0x14a1
0000149c: DUP2
0000149d: PUSH2 0x17f1
000014a0: JUMP
000014a1: JUMPDEST
000014a2: DUP3
000014a3: MSTORE
000014a4: POP
000014a5: POP
000014a6: JUMP
000014a7: JUMPDEST
000014a8: PUSH2 0x14b0
000014ab: DUP2
000014ac: PUSH2 0x17c5
000014af: JUMP
000014b0: JUMPDEST
000014b1: DUP3
000014b2: MSTORE
000014b3: POP
000014b4: POP
000014b5: JUMP
000014b6: JUMPDEST
000014b7: PUSH1 0x00
000014b9: PUSH2 0x14c3
000014bc: DUP3
000014bd: DUP5
000014be: DUP7
000014bf: PUSH2 0x143a
000014c2: JUMP
000014c3: JUMPDEST
000014c4: SWAP2
000014c5: POP
000014c6: DUP2
000014c7: SWAP1
000014c8: POP
000014c9: SWAP4
000014ca: SWAP3
000014cb: POP
000014cc: POP
000014cd: POP
000014ce: JUMP
000014cf: JUMPDEST
000014d0: PUSH1 0x00
000014d2: PUSH1 0x20
000014d4: DUP3
000014d5: ADD
000014d6: SWAP1
000014d7: POP
000014d8: PUSH2 0x14e4
000014db: PUSH1 0x00
000014dd: DUP4
000014de: ADD
000014df: DUP5
000014e0: PUSH2 0x13be
000014e3: JUMP
000014e4: JUMPDEST
000014e5: SWAP3
000014e6: SWAP2
000014e7: POP
000014e8: POP
000014e9: JUMP
000014ea: JUMPDEST
000014eb: PUSH1 0x00
000014ed: PUSH1 0x20
000014ef: DUP3
000014f0: ADD
000014f1: SWAP1
000014f2: POP
000014f3: PUSH2 0x14ff
000014f6: PUSH1 0x00
000014f8: DUP4
000014f9: ADD
000014fa: DUP5
000014fb: PUSH2 0x13a0
000014fe: JUMP
000014ff: JUMPDEST
00001500: SWAP3
00001501: SWAP2
00001502: POP
00001503: POP
00001504: JUMP
00001505: JUMPDEST
00001506: PUSH1 0x00
00001508: PUSH1 0x40
0000150a: DUP3
0000150b: ADD
0000150c: SWAP1
0000150d: POP
0000150e: PUSH2 0x151a
00001511: PUSH1 0x00
00001513: DUP4
00001514: ADD
00001515: DUP6
00001516: PUSH2 0x142b
00001519: JUMP
0000151a: JUMPDEST
0000151b: DUP2
0000151c: DUP2
0000151d: SUB
0000151e: PUSH1 0x20
00001520: DUP4
00001521: ADD
00001522: MSTORE
00001523: PUSH2 0x152c
00001526: DUP2
00001527: DUP5
00001528: PUSH2 0x145f
0000152b: JUMP
0000152c: JUMPDEST
0000152d: SWAP1
0000152e: POP
0000152f: SWAP4
00001530: SWAP3
00001531: POP
00001532: POP
00001533: POP
00001534: JUMP
00001535: JUMPDEST
00001536: PUSH1 0x00
00001538: PUSH1 0x80
0000153a: DUP3
0000153b: ADD
0000153c: SWAP1
0000153d: POP
0000153e: PUSH2 0x154a
00001541: PUSH1 0x00
00001543: DUP4
00001544: ADD
00001545: DUP8
00001546: PUSH2 0x1498
00001549: JUMP
0000154a: JUMPDEST
0000154b: PUSH2 0x1557
0000154e: PUSH1 0x20
00001550: DUP4
00001551: ADD
00001552: DUP7
00001553: PUSH2 0x14a7
00001556: JUMP
00001557: JUMPDEST
00001558: PUSH2 0x1564
0000155b: PUSH1 0x40
0000155d: DUP4
0000155e: ADD
0000155f: DUP6
00001560: PUSH2 0x13be
00001563: JUMP
00001564: JUMPDEST
00001565: DUP2
00001566: DUP2
00001567: SUB
00001568: PUSH1 0x60
0000156a: DUP4
0000156b: ADD
0000156c: MSTORE
0000156d: PUSH2 0x1576
00001570: DUP2
00001571: DUP5
00001572: PUSH2 0x145f
00001575: JUMP
00001576: JUMPDEST
00001577: SWAP1
00001578: POP
00001579: SWAP6
0000157a: SWAP5
0000157b: POP
0000157c: POP
0000157d: POP
0000157e: POP
0000157f: POP
00001580: JUMP
00001581: JUMPDEST
00001582: PUSH1 0x00
00001584: PUSH1 0x80
00001586: DUP3
00001587: ADD
00001588: SWAP1
00001589: POP
0000158a: PUSH2 0x1596
0000158d: PUSH1 0x00
0000158f: DUP4
00001590: ADD
00001591: DUP8
00001592: PUSH2 0x14a7
00001595: JUMP
00001596: JUMPDEST
00001597: PUSH2 0x15a3
0000159a: PUSH1 0x20
0000159c: DUP4
0000159d: ADD
0000159e: DUP7
0000159f: PUSH2 0x1498
000015a2: JUMP
000015a3: JUMPDEST
000015a4: PUSH2 0x15b0
000015a7: PUSH1 0x40
000015a9: DUP4
000015aa: ADD
000015ab: DUP6
000015ac: PUSH2 0x13be
000015af: JUMP
000015b0: JUMPDEST
000015b1: DUP2
000015b2: DUP2
000015b3: SUB
000015b4: PUSH1 0x60
000015b6: DUP4
000015b7: ADD
000015b8: MSTORE
000015b9: PUSH2 0x15c2
000015bc: DUP2
000015bd: DUP5
000015be: PUSH2 0x145f
000015c1: JUMP
000015c2: JUMPDEST
000015c3: SWAP1
000015c4: POP
000015c5: SWAP6
000015c6: SWAP5
000015c7: POP
000015c8: POP
000015c9: POP
000015ca: POP
000015cb: POP
000015cc: JUMP
000015cd: JUMPDEST
000015ce: PUSH1 0x00
000015d0: PUSH1 0xa0
000015d2: DUP3
000015d3: ADD
000015d4: SWAP1
000015d5: POP
000015d6: PUSH2 0x15e2
000015d9: PUSH1 0x00
000015db: DUP4
000015dc: ADD
000015dd: DUP9
000015de: PUSH2 0x14a7
000015e1: JUMP
000015e2: JUMPDEST
000015e3: PUSH2 0x15ef
000015e6: PUSH1 0x20
000015e8: DUP4
000015e9: ADD
000015ea: DUP8
000015eb: PUSH2 0x1498
000015ee: JUMP
000015ef: JUMPDEST
000015f0: DUP2
000015f1: DUP2
000015f2: SUB
000015f3: PUSH1 0x40
000015f5: DUP4
000015f6: ADD
000015f7: MSTORE
000015f8: PUSH2 0x1601
000015fb: DUP2
000015fc: DUP7
000015fd: PUSH2 0x13cd
00001600: JUMP
00001601: JUMPDEST
00001602: SWAP1
00001603: POP
00001604: PUSH2 0x1610
00001607: PUSH1 0x60
00001609: DUP4
0000160a: ADD
0000160b: DUP6
0000160c: PUSH2 0x13be
0000160f: JUMP
00001610: JUMPDEST
00001611: PUSH2 0x161d
00001614: PUSH1 0x80
00001616: DUP4
00001617: ADD
00001618: DUP5
00001619: PUSH2 0x14a7
0000161c: JUMP
0000161d: JUMPDEST
0000161e: SWAP7
0000161f: SWAP6
00001620: POP
00001621: POP
00001622: POP
00001623: POP
00001624: POP
00001625: POP
00001626: JUMP
00001627: JUMPDEST
00001628: PUSH1 0x00
0000162a: DUP1
0000162b: DUP4
0000162c: CALLDATALOAD
0000162d: PUSH1 0x01
0000162f: PUSH1 0x20
00001631: SUB
00001632: DUP5
00001633: CALLDATASIZE
00001634: SUB
00001635: SUB
00001636: DUP2
00001637: SLT
00001638: PUSH2 0x1640
0000163b: JUMPI
0000163c: PUSH1 0x00
0000163e: DUP1
0000163f: REVERT
00001640: JUMPDEST
00001641: DUP1
00001642: DUP5
00001643: ADD
00001644: SWAP3
00001645: POP
00001646: DUP3
00001647: CALLDATALOAD
00001648: SWAP2
00001649: POP
0000164a: PUSH8 0xffffffffffffffff
00001653: DUP3
00001654: GT
00001655: ISZERO
00001656: PUSH2 0x165e
00001659: JUMPI
0000165a: PUSH1 0x00
0000165c: DUP1
0000165d: REVERT
0000165e: JUMPDEST
0000165f: PUSH1 0x20
00001661: DUP4
00001662: ADD
00001663: SWAP3
00001664: POP
00001665: PUSH1 0x01
00001667: DUP3
00001668: MUL
00001669: CALLDATASIZE
0000166a: SUB
0000166b: DUP4
0000166c: SGT
0000166d: ISZERO
0000166e: PUSH2 0x1676
00001671: JUMPI
00001672: PUSH1 0x00
00001674: DUP1
00001675: REVERT
00001676: JUMPDEST
00001677: POP
00001678: SWAP3
00001679: POP
0000167a: SWAP3
0000167b: SWAP1
0000167c: POP
0000167d: JUMP
0000167e: JUMPDEST
0000167f: PUSH1 0x00
00001681: PUSH1 0x40
00001683: MLOAD
00001684: SWAP1
00001685: POP
00001686: DUP2
00001687: DUP2
00001688: ADD
00001689: DUP2
0000168a: DUP2
0000168b: LT
0000168c: PUSH8 0xffffffffffffffff
00001695: DUP3
00001696: GT
00001697: OR
00001698: ISZERO
00001699: PUSH2 0x16a1
0000169c: JUMPI
0000169d: PUSH1 0x00
0000169f: DUP1
000016a0: REVERT
000016a1: JUMPDEST
000016a2: DUP1
000016a3: PUSH1 0x40
000016a5: MSTORE
000016a6: POP
000016a7: SWAP2
000016a8: SWAP1
000016a9: POP
000016aa: JUMP
000016ab: JUMPDEST
000016ac: PUSH1 0x00
000016ae: PUSH8 0xffffffffffffffff
000016b7: DUP3
000016b8: GT
000016b9: ISZERO
000016ba: PUSH2 0x16c2
000016bd: JUMPI
000016be: PUSH1 0x00
000016c0: DUP1
000016c1: REVERT
000016c2: JUMPDEST
000016c3: PUSH1 0x20
000016c5: DUP3
000016c6: MUL
000016c7: SWAP1
000016c8: POP
000016c9: PUSH1 0x20
000016cb: DUP2
000016cc: ADD
000016cd: SWAP1
000016ce: POP
000016cf: SWAP2
000016d0: SWAP1
000016d1: POP
000016d2: JUMP
000016d3: JUMPDEST
000016d4: PUSH1 0x00
000016d6: PUSH8 0xffffffffffffffff
000016df: DUP3
000016e0: GT
000016e1: ISZERO
000016e2: PUSH2 0x16ea
000016e5: JUMPI
000016e6: PUSH1 0x00
000016e8: DUP1
000016e9: REVERT
000016ea: JUMPDEST
000016eb: PUSH1 0x20
000016ed: DUP3
000016ee: MUL
000016ef: SWAP1
000016f0: POP
000016f1: PUSH1 0x20
000016f3: DUP2
000016f4: ADD
000016f5: SWAP1
000016f6: POP
000016f7: SWAP2
000016f8: SWAP1
000016f9: POP
000016fa: JUMP
000016fb: JUMPDEST
000016fc: PUSH1 0x00
000016fe: DUP2
000016ff: SWAP1
00001700: POP
00001701: PUSH1 0x20
00001703: DUP3
00001704: ADD
00001705: SWAP1
00001706: POP
00001707: SWAP2
00001708: SWAP1
00001709: POP
0000170a: JUMP
0000170b: JUMPDEST
0000170c: PUSH1 0x00
0000170e: DUP2
0000170f: MLOAD
00001710: SWAP1
00001711: POP
00001712: SWAP2
00001713: SWAP1
00001714: POP
00001715: JUMP
00001716: JUMPDEST
00001717: PUSH1 0x00
00001719: DUP2
0000171a: MLOAD
0000171b: SWAP1
0000171c: POP
0000171d: SWAP2
0000171e: SWAP1
0000171f: POP
00001720: JUMP
00001721: JUMPDEST
00001722: PUSH1 0x00
00001724: PUSH1 0x20
00001726: DUP3
00001727: ADD
00001728: SWAP1
00001729: POP
0000172a: SWAP2
0000172b: SWAP1
0000172c: POP
0000172d: JUMP
0000172e: JUMPDEST
0000172f: PUSH1 0x00
00001731: DUP3
00001732: DUP3
00001733: MSTORE
00001734: PUSH1 0x20
00001736: DUP3
00001737: ADD
00001738: SWAP1
00001739: POP
0000173a: SWAP3
0000173b: SWAP2
0000173c: POP
0000173d: POP
0000173e: JUMP
0000173f: JUMPDEST
00001740: PUSH1 0x00
00001742: DUP3
00001743: DUP3
00001744: MSTORE
00001745: PUSH1 0x20
00001747: DUP3
00001748: ADD
00001749: SWAP1
0000174a: POP
0000174b: SWAP3
0000174c: SWAP2
0000174d: POP
0000174e: POP
0000174f: JUMP
00001750: JUMPDEST
00001751: PUSH1 0x00
00001753: DUP2
00001754: SWAP1
00001755: POP
00001756: SWAP3
00001757: SWAP2
00001758: POP
00001759: POP
0000175a: JUMP
0000175b: JUMPDEST
0000175c: PUSH1 0x00
0000175e: PUSH2 0x1766
00001761: DUP3
00001762: PUSH2 0x17a5
00001765: JUMP
00001766: JUMPDEST
00001767: SWAP1
00001768: POP
00001769: SWAP2
0000176a: SWAP1
0000176b: POP
0000176c: JUMP
0000176d: JUMPDEST
0000176e: PUSH1 0x00
00001770: PUSH2 0x1778
00001773: DUP3
00001774: PUSH2 0x17a5
00001777: JUMP
00001778: JUMPDEST
00001779: SWAP1
0000177a: POP
0000177b: SWAP2
0000177c: SWAP1
0000177d: POP
0000177e: JUMP
0000177f: JUMPDEST
00001780: PUSH1 0x00
00001782: DUP2
00001783: ISZERO
00001784: ISZERO
00001785: SWAP1
00001786: POP
00001787: SWAP2
00001788: SWAP1
00001789: POP
0000178a: JUMP
0000178b: JUMPDEST
0000178c: PUSH1 0x00
0000178e: PUSH14 0xffffffffffffffffffffffffffff
0000179d: DUP3
0000179e: AND
0000179f: SWAP1
000017a0: POP
000017a1: SWAP2
000017a2: SWAP1
000017a3: POP
000017a4: JUMP
000017a5: JUMPDEST
000017a6: PUSH1 0x00
000017a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017bd: DUP3
000017be: AND
000017bf: SWAP1
000017c0: POP
000017c1: SWAP2
000017c2: SWAP1
000017c3: POP
000017c4: JUMP
000017c5: JUMPDEST
000017c6: PUSH1 0x00
000017c8: DUP2
000017c9: SWAP1
000017ca: POP
000017cb: SWAP2
000017cc: SWAP1
000017cd: POP
000017ce: JUMP
000017cf: JUMPDEST
000017d0: PUSH1 0x00
000017d2: PUSH4 0xffffffff
000017d7: DUP3
000017d8: AND
000017d9: SWAP1
000017da: POP
000017db: SWAP2
000017dc: SWAP1
000017dd: POP
000017de: JUMP
000017df: JUMPDEST
000017e0: PUSH1 0x00
000017e2: PUSH2 0x17ea
000017e5: DUP3
000017e6: PUSH2 0x1803
000017e9: JUMP
000017ea: JUMPDEST
000017eb: SWAP1
000017ec: POP
000017ed: SWAP2
000017ee: SWAP1
000017ef: POP
000017f0: JUMP
000017f1: JUMPDEST
000017f2: PUSH1 0x00
000017f4: PUSH2 0x17fc
000017f7: DUP3
000017f8: PUSH2 0x17c5
000017fb: JUMP
000017fc: JUMPDEST
000017fd: SWAP1
000017fe: POP
000017ff: SWAP2
00001800: SWAP1
00001801: POP
00001802: JUMP
00001803: JUMPDEST
00001804: PUSH1 0x00
00001806: PUSH2 0x180e
00001809: DUP3
0000180a: PUSH2 0x1815
0000180d: JUMP
0000180e: JUMPDEST
0000180f: SWAP1
00001810: POP
00001811: SWAP2
00001812: SWAP1
00001813: POP
00001814: JUMP
00001815: JUMPDEST
00001816: PUSH1 0x00
00001818: PUSH2 0x1820
0000181b: DUP3
0000181c: PUSH2 0x17a5
0000181f: JUMP
00001820: JUMPDEST
00001821: SWAP1
00001822: POP
00001823: SWAP2
00001824: SWAP1
00001825: POP
00001826: JUMP
00001827: JUMPDEST
00001828: DUP3
00001829: DUP2
0000182a: DUP4
0000182b: CALLDATACOPY
0000182c: PUSH1 0x00
0000182e: DUP4
0000182f: DUP4
00001830: ADD
00001831: MSTORE
00001832: POP
00001833: POP
00001834: POP
00001835: JUMP
00001836: JUMPDEST
00001837: PUSH1 0x00
00001839: JUMPDEST
0000183a: DUP4
0000183b: DUP2
0000183c: LT
0000183d: ISZERO
0000183e: PUSH2 0x1854
00001841: JUMPI
00001842: DUP1
00001843: DUP3
00001844: ADD
00001845: MLOAD
00001846: DUP2
00001847: DUP5
00001848: ADD
00001849: MSTORE
0000184a: PUSH1 0x20
0000184c: DUP2
0000184d: ADD
0000184e: SWAP1
0000184f: POP
00001850: PUSH2 0x1839
00001853: JUMP
00001854: JUMPDEST
00001855: DUP4
00001856: DUP2
00001857: GT
00001858: ISZERO
00001859: PUSH2 0x1863
0000185c: JUMPI
0000185d: PUSH1 0x00
0000185f: DUP5
00001860: DUP5
00001861: ADD
00001862: MSTORE
00001863: JUMPDEST
00001864: POP
00001865: POP
00001866: POP
00001867: POP
00001868: JUMP
00001869: JUMPDEST
0000186a: PUSH1 0x00
0000186c: PUSH1 0x1f
0000186e: NOT
0000186f: PUSH1 0x1f
00001871: DUP4
00001872: ADD
00001873: AND
00001874: SWAP1
00001875: POP
00001876: SWAP2
00001877: SWAP1
00001878: POP
00001879: JUMP
0000187a: JUMPDEST
0000187b: PUSH2 0x1883
0000187e: DUP2
0000187f: PUSH2 0x175b
00001882: JUMP
00001883: JUMPDEST
00001884: DUP2
00001885: EQ
00001886: PUSH2 0x188e
00001889: JUMPI
0000188a: PUSH1 0x00
0000188c: DUP1
0000188d: REVERT
0000188e: JUMPDEST
0000188f: POP
00001890: JUMP
00001891: JUMPDEST
00001892: PUSH2 0x189a
00001895: DUP2
00001896: PUSH2 0x176d
00001899: JUMP
0000189a: JUMPDEST
0000189b: DUP2
0000189c: EQ
0000189d: PUSH2 0x18a5
000018a0: JUMPI
000018a1: PUSH1 0x00
000018a3: DUP1
000018a4: REVERT
000018a5: JUMPDEST
000018a6: POP
000018a7: JUMP
000018a8: JUMPDEST
000018a9: PUSH2 0x18b1
000018ac: DUP2
000018ad: PUSH2 0x177f
000018b0: JUMP
000018b1: JUMPDEST
000018b2: DUP2
000018b3: EQ
000018b4: PUSH2 0x18bc
000018b7: JUMPI
000018b8: PUSH1 0x00
000018ba: DUP1
000018bb: REVERT
000018bc: JUMPDEST
000018bd: POP
000018be: JUMP
000018bf: JUMPDEST
000018c0: PUSH2 0x18c8
000018c3: DUP2
000018c4: PUSH2 0x178b
000018c7: JUMP
000018c8: JUMPDEST
000018c9: DUP2
000018ca: EQ
000018cb: PUSH2 0x18d3
000018ce: JUMPI
000018cf: PUSH1 0x00
000018d1: DUP1
000018d2: REVERT
000018d3: JUMPDEST
000018d4: POP
000018d5: JUMP
000018d6: JUMPDEST
000018d7: PUSH2 0x18df
000018da: DUP2
000018db: PUSH2 0x17c5
000018de: JUMP
000018df: JUMPDEST
000018e0: DUP2
000018e1: EQ
000018e2: PUSH2 0x18ea
000018e5: JUMPI
000018e6: PUSH1 0x00
000018e8: DUP1
000018e9: REVERT
000018ea: JUMPDEST
000018eb: POP
000018ec: JUMP
000018ed: JUMPDEST
000018ee: PUSH2 0x18f6
000018f1: DUP2
000018f2: PUSH2 0x17cf
000018f5: JUMP
000018f6: JUMPDEST
000018f7: DUP2
000018f8: EQ
000018f9: PUSH2 0x1901
000018fc: JUMPI
000018fd: PUSH1 0x00
000018ff: DUP1
00001900: REVERT
00001901: JUMPDEST
00001902: POP
00001903: JUMP
00001904: INVALID
00001905: LOG2
00001906: PUSH5 0x6970667358
0000190c: UNKNOWN(0x22)
0000190d: SLT
0000190e: KECCAK256
0000190f: PUSH31 0x50a5fdf1059f4aa0ed3084d3eb8a10f3f6f4c3f5d72983fa98d83e1b02a66a
0000192f: PUSH5 0x736f6c6343
00001935: STOP
00001936: SMOD
00001937: ADD
00001938: STOP
00001939: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xa79f5b7a",
            "selector": "0xa79f5b7a",
            "calldata_variants": [
                "0xa79f5b7a",
                "0xa79f5b7a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbed274e6",
            "selector": "0xbed274e6",
            "calldata_variants": [
                "0xbed274e6",
                "0xbed274e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcc2d1fcb",
            "selector": "0xcc2d1fcb",
            "calldata_variants": [
                "0xcc2d1fcb",
                "0xcc2d1fcb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 222,
            "type": "tx_origin_used"
        },
        {
            "pc": 490,
            "type": "tx_origin_used"
        },
        {
            "pc": 3542,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x277a07a771a15179e98b91f89bc78a4f8ce60bdd380456ea5cf00423cc390153
call_targets: 0x5f5aca1da12fa906fe2d9cbfcee284ae18b40e08
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x277a07a771a15179e98b91f89bc78a4f8ce60bdd380456ea5cf00423cc390153",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x5f5aca1da12fa906fe2d9cbfcee284ae18b40e08"
    ],
    "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": "0xa79f5b7a",
            "selector": "0xa79f5b7a",
            "calldata_variants": [
                "0xa79f5b7a",
                "0xa79f5b7a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbed274e6",
            "selector": "0xbed274e6",
            "calldata_variants": [
                "0xbed274e6",
                "0xbed274e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcc2d1fcb",
            "selector": "0xcc2d1fcb",
            "calldata_variants": [
                "0xcc2d1fcb",
                "0xcc2d1fcb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 365,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1213,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1392,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 10,
    "guards_detected": [
        {
            "pc": 222,
            "type": "tx_origin_used"
        },
        {
            "pc": 490,
            "type": "tx_origin_used"
        },
        {
            "pc": 3542,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 10
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x277a07a771a15179e98b91f89bc78a4f8ce60bdd380456ea5cf00423cc390153
call_targets: 0x5f5aca1da12fa906fe2d9cbfcee284ae18b40e08
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x277a07a771a15179e98b91f89bc78a4f8ce60bdd380456ea5cf00423cc390153",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x5f5aca1da12fa906fe2d9cbfcee284ae18b40e08"
    ],
    "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": "0xa79f5b7a",
            "selector": "0xa79f5b7a",
            "calldata_variants": [
                "0xa79f5b7a",
                "0xa79f5b7a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbed274e6",
            "selector": "0xbed274e6",
            "calldata_variants": [
                "0xbed274e6",
                "0xbed274e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcc2d1fcb",
            "selector": "0xcc2d1fcb",
            "calldata_variants": [
                "0xcc2d1fcb",
                "0xcc2d1fcb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 365,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1213,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1392,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 10,
    "guards_detected": [
        {
            "pc": 222,
            "type": "tx_origin_used"
        },
        {
            "pc": 490,
            "type": "tx_origin_used"
        },
        {
            "pc": 3542,
            "type": "tx_origin_used"
        }
    ]
}
info access_control codex Owner can execute arbitrary external calls (multicall) 60 no
view
evidence_json
{
    "evidence": "Function selector 0xcc2d1fcb dispatches to a routine that first enforces msg.sender == sload(0), then iterates over a calldata-provided array of targets and performs a low-level CALL (opcode 0xF1) using that data, with no target restriction. Evidence includes the owner check `...163273...1614610df6...` and the loop/call sequence `83518110...015173...5af1...`.",
    "locations": [
        "BYTECODE_BUNDLE.txt:5"
    ],
    "recommendation": "Document this trust assumption explicitly and consider removing or constraining the multicall (e.g., allowlist targets, timelock, or require multisig) if arbitrary execution is not intended.",
    "exploit_scenario": "If the owner key is compromised or misused, the caller can supply arbitrary target addresses and calldata and have the contract execute those calls, potentially draining any assets held by this contract or interacting with external protocols in unintended ways."
}
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": 15
}
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": 17
}