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

Analysis Run

019bab3b-ac85-70a7-83ce-dfd718c375d8

complete
Chain ID
1
Address
Block Number
Created
Sun, Jan 11, 2026 4:06 AM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Present
Best current signal
Untrusted DELEGATECALL target reachable
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
38779 artifact.fetch complete 1 / 3 3 months ago
38780 proxy.resolve complete 1 / 3 3 months ago
38781 tool.cast_disasm complete 1 / 3 3 months ago
38782 analysis.bundle complete 1 / 3 3 months ago
38783 capability.graph complete 1 / 3 3 months ago
38784 detector.run complete 1 / 3 3 months ago
38785 validation.fork complete 1 / 3 3 months ago
39173 report.consolidate complete 1 / 6 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: no
Proxy evidence
{
    "status": "not_proxy"
}

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Bytecode shows a reachable DELEGATECALL into an external target and multiple low-level CALLs where target/value appear computed; guard and return‑data checks are not visible in the evidence, so trust and reentrancy assumptions need confirmation.
View stdout
{"no_findings":false,"summary":"Bytecode shows a reachable DELEGATECALL into an external target and multiple low-level CALLs where target/value appear computed; guard and return‑data checks are not visible in the evidence, so trust and reentrancy assumptions need confirmation.","findings":[{"severity":"high","category":"upgradeability","title":"DELEGATECALL to external target (proxy-like risk)","exploit_scenario":"A reachable DELEGATECALL executes code from an external address in this contract’s storage context. If that target is untrusted or upgradeable (e.g., a proxy implementation under someone else’s control), it can arbitrarily mutate storage, seize ownership, or drain funds. Bytecode-only analysis cannot confirm whether the target is immutable or who controls it.","recommendation":"Ensure the delegatecall target is immutable and trusted (e.g., a verified library with no upgrade path), or add strict access control/allowlisting around any path that can reach it. If this is a proxy pattern, document the admin/upgrade mechanism and add invariant checks or code-hash validation on the implementation.","evidence":"Detector finding \"Untrusted DELEGATECALL target reachable\" shows a DELEGATECALL at pc 13520 with no guards detected; validation observed a constant target 0x43506849d7c04f9138d1a2050bbf3a0c054402dd but did not confirm trust/immutability (returndata_checked: null).","locations":["pc:0x34d0"]},{"severity":"medium","category":"other","title":"Low-level CALLs with computed target/value and unknown return handling","exploit_scenario":"Multiple CALL sites are reachable with computed target/value; if user input can influence these, an attacker could redirect ETH transfers or trigger reentrancy via external calls. Return-data checks are not shown, so silent failure handling is unclear. Validation traces saw a constant target equal to the contract itself, but controllability is not confirmed from bytecode alone.","recommendation":"Trace inputs that feed the CALL target/value and restrict them (allowlist or access control). Check the CALL return value and handle failures explicitly. If state changes occur before these calls, consider a reentrancy guard or checks-effects-interactions discipline.","evidence":"Detector findings \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\" list CALL sites at pc 4635/4832/6110 with computed target/value and no guards detected (returndata_checked: null). Validation observed constant target 0x06291eee038e94e8dec2b3bfb6e030c0b5615506 but not confirmed as safe in all paths.","locations":["pc:0x121b","pc:0x12e0","pc:0x17de"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-emyfp3mn
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019babec-0e87-73d2-b848-e464a4d7287c
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".

Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
mcp startup: no servers

thinking
**Reading BYTECODE_BUNDLE.json file**
exec
/bin/bash -lc ls in /tmp/codex-emyfp3mn succeeded in 8ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-emyfp3mn succeeded in 10ms:
{
  "analysis_artifact": {
    "address": "0x06291eee038e94e8dec2b3bfb6e030c0b5615506",
    "artifact_hash": "0xda353a5c24ef3f6e07d9e729b88226d3dde995fc744182a4e361d49ca77ce924",
    "artifact_json": {
      "auth": {
        "guards": []
      },
      "basic_blocks": [
        {
          "end_pc": 13,
          "hash": "0x6cee61718c948f1476aae293a377339c601d488b2246c228284bb12d980b2c00",
          "opcodes": [
            "PUSH1",
            "PUSH1",
            "MSTORE",
            "PUSH1",
            "CALLDATASIZE",
            "LT",
            "ISZERO",

thinking
**Analyzing delegatecall and call risks**

I'm examining the bytecode for untrusted delegatecall and call usage, focusing on the presence of constant or computed delegatecall targets and the lack of guard detection. I'm weighing the severity cautiously, considering proxy patterns, upgradeability, and potential reentrancy while checking for related evidence like EIP-1967 indicators or returndata handling.
exec
/bin/bash -lc 'rg -n "storage|slot|eip1967|1967|beacon|minimal" BYTECODE_BUNDLE.json' in /tmp/codex-emyfp3mn succeeded in 10ms:
5722:          "hash": "0xd8acb9b2d5cc695f779d6430cb8f0ee91196753ac0f4873abbf84a2dab560834",
20050:          "storage": {
20052:            "slots": [
20056:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000009"
20061:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000009"
20066:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000009"
20071:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
20076:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000010"
20081:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000015"
20086:                "slot": "0x00000000000000000000000000000000000000000000000000000000000000ff"
20091:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
20096:                "slot": "0x3791ce4c220249a300c5eb715a5ba759a62dfd1b4bb8a608f4b4085388c5105a"
20101:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
20106:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000b"
20111:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000b"
20116:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000b"
20121:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000010"
20126:                "slot": "0x0000000000000000000000000000000000000000000000000000000000001162"
20131:                "slot": "0x00000000000000000000000000000000000000000000000000000000000011ee"
20136:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"

thinking
**Searching for EIP-1967 storage slots**
exec
/bin/bash -lc 'rg -n "3608" BYTECODE_BUNDLE.json' in /tmp/codex-emyfp3mn succeeded in 7ms:
37998:      "full": "0x6080604052600436101561001257600080fd5b60003560e01c806311d93fb41461272b578063161f9a491461266b57806316b2b88814612529578063179ff4b2146124c6578063235f22af14612271578063272f9c0b1461221957806327a099d8146121b65780632a50cf31146121915780632afe93f614612173578063338246e214612155578063389ffd61146120f25780633b3d6706146120055780633f4ba83a146120895780634f84d9fd146120365780634ff66ca81461200557806351c6590a14611e1e578063541d554814611de4578063558a729714611bd75780635c975abb14611bb45780636119659d14611b8d5780636d70f7ae14611b47578063715018a614611aee578063740ad12a14611a87578063771f7c19146119085780637ae07c7f146115975780637c66d142146105025780637df73e271461155857806381f746391461151e5780638456cb59146114b25780638da5cb5b14611489578063940cc4751461140357806394cf795e146113a057806395ccea67146112825780639c8f9f23146110915780639dbf5eca14610e8a578063a82f2e2614610e6c578063a8eed73014610e34578063af906cf314610cf5578063bbde537414610c70578063c1416a4614610b5c578063c287dded14610b3e578063c4c47ea514610b12578063c71c5ef314610a45578063cca2e03f14610a1b578063cce987d4146109fd578063d0fc29c1146109d1578063d2aaef4e146109d1578063d5bcb610146109a2578063de697f9514610946578063ed1375d514610920578063ed81cfdf1461063f578063f2d2a751146105bf578063f2fde38b14610536578063f3e66cb7146105025763f460590b1461027957600080fd5b346104fd57610287366128da565b61028f612d1a565b6001600160a01b03821680156104ec57811561039657506001600160a01b03821660009081526008602052604090205460ff16156102fd575b600080516020613482833981519152915b604080516001600160a01b039092168252911515602082015290819081015b0390a1005b6001600160a01b0382166000908152600860205260409020805460ff1916600117905560095491600160401b831015610380576103798161035585600160008051602061348283398151915297016009556009612dba565b81546001600160a01b0393841660039290921b91821b9390911b1916919091179055565b91506102c8565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03831660009081526008602052604090205460ff166103cd575b50600080516020613482833981519152916102d9565b6001600160a01b0383166000908152600860205260408120805460ff191690559091905b600954808210156104d3578361040683612d9f565b905460039190911b1c6001600160a01b03161461042657506001016103f1565b91925060001982019182116104bd5761035561044461045c93612d9f565b905460039190911b1c6001600160a01b031691612d9f565b6009549182156104a757600080516020613482833981519152926000190161049d610488826009612dba565b81549060018060a01b039060031b1b19169055565b6009555b916103b7565b634e487b7160e01b600052603160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b50509050600080516020613482833981519152916104a1565b634501a91960e01b60005260046000fd5b600080fd5b346104fd5760203660031901126104fd57600435600052600e602052602060018060a01b0360406000205416604051908152f35b346104fd5760203660031901126104fd5761054f6127fe565b610557612d1a565b6001600160a01b031680156105a957600080546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b600052600060045260246000fd5b346104fd576105cd36612966565b6105d5612d1a565b6103e8811161062e576000828152601260209081526040918290208054908490558251948552908401528201527f83e35c3e73f7713de354e131b34cefd5edc18271a6051c1be44445f7465a37fc9080606081016102f8565b637186728f60e11b60005260046000fd5b60a03660031901126104fd576004356024356044356001600160401b0381116104fd57610670903690600401612939565b6064929192359360038510156104fd57608435906001600160a01b0382168083036104fd5760ff6010541661090f576106a7612cad565b466000908152600e60205260408120549097906001600160a01b03168161089a576014860361088957873560601c15610889575b821561087857861561082d57831561086757834614610856576106fd87612af2565b8061083e575085340361082d575b6000194301974389116104bd5760405160208101903360601b8252466034820152856054820152886074820152878a60948301378781016094810193600085526108175760756094836107be9360209f7f162969265bab71a110839f8f14fab5a850bdcae670dd5598d82450eb6afa26be9c8e998b60f81b90526bffffffffffffffffffffffff199060601b1660958301524260a98301524360c98301524060e982015203016055810184520182612876565b519020978897604051954687528b870152604086015260c060608601528160c086015260e0850137600060e08685010152608083015260a082015260e0813394601f80199101168101030190a360018055604051908152f35b634e487b7160e01b600052602160045260246000fd5b63162908e360e11b60005260046000fd5b3461082d57866108519130903390612ccf565b61070b565b63056f1a2f60e41b60005260046000fd5b633d23e4d160e11b60005260046000fd5b638562eb4560e01b60005260046000fd5b634e46966960e11b60005260046000fd5b600182036108bc5760208603156106db57634e46966960e11b60005260046000fd5b60009850600282036108d9576006861080156108e8575b156106db575b634e46966960e11b8952600489fd5b508560031161090b5787356001600160e81b031916626c627360e81b14156108d3565b8880fd5b63ab35696f60e01b60005260046000fd5b346104fd5760203660031901126104fd57602061093e600435612c2c565b604051908152f35b346104fd5760c03660031901126104fd5761095f6127fe565b61096761282a565b9060a435906001600160401b0382116104fd5760209261098e61093e933690600401612909565b929091608435916044359060243590612b4f565b346104fd5760003660031901126104fd57602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b346104fd5760203660031901126104fd5760043560005260126020526020604060002054604051908152f35b346104fd5760003660031901126104fd576020601554604051908152f35b346104fd57610a41610a35610a2f36612966565b9061339a565b60405191829182612897565b0390f35b346104fd5760203660031901126104fd57610a7b610a616127fe565b6001600160a01b0316600090815260056020526040902090565b8054610a8681612eab565b91610a946040519384612876565b818352602083019060005260206000206000915b838310610abd5760405180610a41878261297c565b60056020600192604051610ad08161285b565b610ade60ff87541682612df7565b8486015483820152600286015460408201526003860154606082015260048601546080820152815201920192019190610aa8565b346104fd5760203660031901126104fd5760043560005260166020526020604060002054604051908152f35b346104fd5760203660031901126104fd57610b5a600435612af2565b005b346104fd5760803660031901126104fd57610b756127fe565b6064356001600160401b0381116104fd57602091610b9a61093e923690600401612909565b91610bd7610c68610ba96130ca565b878151910120610bd7610be5610bbd6130f3565b8a81519101206040519283918c8301953091469188613112565b03601f198101835282612876565b51902092604051888101917fd76545eeb181baadb326d5b61cdb33500dc2ecff6763f3f65efe91693f4ab2c4835260018060a01b031660408201526024356060820152604435608082015260808152610c3f60a082612876565b5190206040519283918983019586909160429261190160f01b8352600283015260228201520190565b5190206131d1565b346104fd5760203660031901126104fd57600435610c8c612d1a565b8015610ce457600a8111610cd35760407f149153f58b4da003a8cfd4523709a202402182cb5aa335046911277a1be6eede91600654908060065582519182526020820152a1005b63e56d58cf60e01b60005260046000fd5b63aabd5a0960e01b60005260046000fd5b346104fd5760403660031901126104fd57600435610d11612814565b610d19612d1a565b6001600160a01b03168015610e23576000828152600e60205260409020546001600160a01b031680610d9c575b7f3791ce4c220249a300c5eb715a5ba759a62dfd1b4bb8a608f4b4085388c5105a6040848481600052600e60205282600020816bffffffffffffffffffffffff60a01b82541617905582519182526020820152a1005b6020602491604051928380926370a0823160e01b82523060048301525afa908115610e1757600091610de5575b50610dd45782610d46565b635beb6c0f60e11b60005260046000fd5b90506020813d602011610e0f575b81610e0060209383612876565b810103126104fd575183610dc9565b3d9150610df3565b6040513d6000823e3d90fd5b630f58058360e11b60005260046000fd5b346104fd5760603660031901126104fd57610a41610e60610e536127fe565b6044359060243590612ed6565b6040519182918261297c565b346104fd5760003660031901126104fd576020600654604051908152f35b346104fd57610e98366128da565b610ea0612d1a565b6001600160a01b0382168015611080578115610f6b57506001600160a01b0382166000908152600a602052604090205460ff1615610f0c575b6000805160206134a283398151915291604080516001600160a01b039092168252911515602082015290819081016102f8565b6001600160a01b0382166000908152600a60205260409020805460ff19166001179055600b5491600160401b83101561038057610f64816103558560016000805160206134a28339815191529701600b55600b612dba565b9150610ed9565b6001600160a01b0383166000908152600a602052604090205460ff16610fa2575b506000805160206134a2833981519152916102d9565b6001600160a01b0383166000908152600a60205260408120805460ff191690559091905b600b54808210156110675783610fdb83612d84565b905460039190911b1c6001600160a01b031614610ffb5750600101610fc6565b91925060001982019182116104bd5761035561101961103193612d84565b905460039190911b1c6001600160a01b031691612d84565b600b549182156104a7576000805160206134a2833981519152926000190161105d61048882600b612dba565b600b555b91610f8c565b505090506000805160206134a283398151915291611061565b63fe16c3c560e01b60005260046000fd5b346104fd5760203660031901126104fd5760043560ff6010541661090f576110b7612cad565b801561082d57336000908152600260205260409020466000526020526110e060406000206129ee565b6020815191015115611271578111611260573360009081526002602052604090204660005260205260ff6001604060002001541615611271573360009081526002602052604090204660005260205280604060002054106112605733600090815260026020526040812090919046835260205260408220611162828254612a11565b90553360009081526005602052604090206111a590604051906111848261285b565b60018252836020830152466040830152426060830152436080830152612e03565b6040514681528160208201527f96cd817c6329656790ef8fba7675405193677d39619571282f5e21f3a98cd05960403392a24682526016602052604082206111ee828254612a11565b9055468252600e60205260408220546001600160a01b03168061124f5750804710611240578180808093335af1611223612ab3565b5015611231575b6001805580f35b630c08bcb960e21b8152600490fd5b63bb55fd2760e01b8252600482fd5b9061125b913390612e70565b61122a565b63bb55fd2760e01b60005260046000fd5b636180f03f60e11b60005260046000fd5b346104fd5760403660031901126104fd5761129b6127fe565b6024356112a6612d1a565b906001600160a01b0316818161130857505047908115611260578015611301575b8091106112605760008080809360018060a01b038254165af16112e8612ab3565b50156112f057005b630c08bcb960e21b60005260046000fd5b50806112c7565b6040516370a0823160e01b8152306004820152919290602083602481875afa928315610e1757600093611369575b5082156112605715611362575b80911061126057600054610b5a926001600160a01b0390911690612e70565b5080611343565b90926020823d602011611398575b8161138460209383612876565b810103126113955750519184611336565b80fd5b3d9150611377565b346104fd5760003660031901126104fd576040516009548082526020820190600960005260206000209060005b8181106113e457610a4185610a3581870382612876565b82546001600160a01b03168452602090930192600192830192016113cd565b346104fd5761141136612966565b611419612d1a565b81151580611480575b80611477575b61146657816040917f13cc69f8eac02944892b009f29ac94ab0629dc47cddc17cd414650614008a75c936014558060155582519182526020820152a1005b634d66d3ef60e01b60005260046000fd5b50808211611428565b50801515611422565b346104fd5760003660031901126104fd576000546040516001600160a01b039091168152602090f35b346104fd5760003660031901126104fd576114cb612d1a565b60105460ff811661150d5760019060ff1916176010557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b631785c68160e01b60005260046000fd5b346104fd5760203660031901126104fd576001600160a01b0361153f6127fe565b1660005260136020526020604060002054604051908152f35b346104fd5760203660031901126104fd576001600160a01b036115796127fe565b166000526008602052602060ff604060002054166040519015158152f35b346104fd5760e03660031901126104fd576115b06127fe565b602435906044356115bf61282a565b926084359360a4356001600160401b0381116104fd576115e3903690600401612909565b949060c4356001600160401b0381116104fd57611604903690600401612939565b336000908152600a60205260409020549094915060ff16156118f75760ff6010541661090f57611632612cad565b6001600160a01b03831696871580156118ef575b80156118e7575b6118d657851561086757466000908152600e60205260409020546001600160a01b031680159590939086156118b55773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038516016118a4575b61189357896116b393898988612b4f565b600654116118825786600052600f60205260ff604060002054166118715782906116dc86612af2565b8093611855575b6116ee848746612a1e565b9591949093886116fd46612c2c565b10611260578a600052600f6020526040600020600160ff19825416179055846117c8575b5050907fc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c9684939260e0979695611780575b5060405195865246602087015260408601526060850152608084015260a083015260c0820152a360018055005b604080514681526001600160a01b03909216602083015281018590527ff1d6c8ee14081f641e2073a1064d870f135f1001a301c6b14a7b9655672fec1190606090a18a611753565b919695949392911561182057506000808080858c5af16117e6612ab3565b50156112f0577fc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c9660e0965b919293949596819850611721565b9660e096611850847fc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c9a85612e70565b611812565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee93506116e3565b63382c903760e11b60005260046000fd5b633724e34360e11b60005260046000fd5b63a4bf61c560e01b60005260046000fd5b631a9ebd1f60e01b60005260046000fd5b6001600160a01b03841685146116a25763e0d6e6db60e01b60005260046000fd5b630e52390960e41b60005260046000fd5b50881561164d565b508615611646565b630bfd903360e11b60005260046000fd5b346104fd5760603660031901126104fd576119216127fe565b611929612814565b60443591611935612d1a565b61193d612cad565b6001600160a01b0382166000908152600c602052604090205460ff1615611a7657821561082d576001600160a01b031690816119db57824710611260576000808080866001600160a01b0386165af1611994612ab3565b50156112f05760407f68dba1198793e98d5d26de394967764181807c1f7c6854b8c5907e475cdd66f9915b81519485524260208601526001600160a01b031693a360018055005b6040516370a0823160e01b8152306004820152602081602481865afa8015610e17578491600091611a41575b501061126057604081611a3c857f68dba1198793e98d5d26de394967764181807c1f7c6854b8c5907e475cdd66f99486612e70565b6119bf565b9150506020813d602011611a6e575b81611a5d60209383612876565b810103126104fd5783905185611a07565b3d9150611a50565b630f66b7c760e21b60005260046000fd5b346104fd5760403660031901126104fd57611abd611aa36127fe565b6001600160a01b0316600090815260026020526040902090565b602435600052602052611ad360406000206129ee565b80516020918201516040805192835290151592820192909252f35b346104fd5760003660031901126104fd57611b07612d1a565b600080546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346104fd5760203660031901126104fd57602060ff611b81611b676127fe565b6001600160a01b03166000908152600c6020526040902090565b54166040519015158152f35b346104fd5760203660031901126104fd576020611bab610a616127fe565b54604051908152f35b346104fd5760003660031901126104fd57602060ff601054166040519015158152f35b346104fd57611be5366128da565b611bed612d1a565b6001600160a01b0382168015611dd3578115611c9f57506001600160a01b0382166000908152600c602052604090205460ff16611c8e576001600160a01b0382166000908152600c60205260409020805460ff19166001179055600d5491600160401b831015610380576102d9816103558560017f966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d9701600d55600d612dba565b630a27252560e21b60005260046000fd5b9060ff611cbe8460018060a01b0316600052600c602052604060002090565b541615611dc2576001600160a01b0383166000908152600c60205260408120805460ff191690555b600d5480821015611d975783611cfb83612d69565b905460039190911b1c6001600160a01b031614611d1b5750600101611ce6565b91925060001982019182116104bd57610355611d39611d5193612d69565b905460039190911b1c6001600160a01b031691612d69565b600d549182156104a7577f966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d9260001901611d8f61048882600d612dba565b600d556102d9565b505090507f966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d916102d9565b63ae4207eb60e01b60005260046000fd5b63eb32d3bf60e01b60005260046000fd5b346104fd5760203660031901126104fd57602060ff611b81611e046127fe565b6001600160a01b03166000908152600a6020526040902090565b60203660031901126104fd5760043560ff6010541661090f57611e3f612cad565b466000908152600e60205260409020546001600160a01b0316811561082d5780611fed575080340361082d575b3360009081526004602052604081205490919060ff1615611fc5575b336000908152600260205260409020468352602052604082206001015460ff16611f9a57611f08604051611ebb81612840565b82815260016020820152611ee13360018060a01b03166000526002602052604060002090565b4685526020526040842060016020918351815501910151151560ff80198354169116179055565b336000908152600560205260409020611f489060405190611f288261285b565b848252836020830152466040830152426060830152436080830152612e03565b6040514681528160208201527fac1d76749e5447b7b16f5ab61447e1bd502f3bb4807af3b28e620d1700a6ee4560403392a24682526016602052611f9160408320918254612aa6565b90556001805580f35b33600090815260026020526040902046835260205260408220611fbe828254612aa6565b9055611f08565b611fce33612dd2565b336000908152600460205260409020805460ff19166001179055611e88565b3461082d57816120009130903390612ccf565b611e6c565b346104fd5760203660031901126104fd57600435600052600f602052602060ff604060002054166040519015158152f35b346104fd5760603660031901126104fd576044356001600160a01b03811681036104fd5761206c610a4191602435600435612a1e565b604080519384526020840192909252908201529081906060820190565b346104fd5760003660031901126104fd576120a2612d1a565b60105460ff8116156120e15760ff19166010557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b636cd6020160e01b60005260046000fd5b346104fd5760003660031901126104fd576040516003548082526020820190600360005260206000209060005b81811061213657610a4185610a3581870382612876565b82546001600160a01b031684526020909301926001928301920161211f565b346104fd5760003660031901126104fd576020601454604051908152f35b346104fd5760003660031901126104fd576020600354604051908152f35b346104fd5760003660031901126104fd57604060145460155482519182526020820152f35b346104fd5760003660031901126104fd57604051600d548082526020820190600d60005260206000209060005b8181106121fa57610a4185610a3581870382612876565b82546001600160a01b03168452602090930192600192830192016121e3565b346104fd5760203660031901126104fd576001600160a01b0361223a6127fe565b166000526013602052604060002060ff600182549201541690610a4160405192839283909291602090604083019483521515910152565b346104fd5760203660031901126104fd576004356001600160401b0381116104fd57366023820112156104fd5780600401356001600160401b0381116104fd576024820191602436918360061b0101116104fd576122cd612d1a565b60ff6010541661090f5780156124b55760005b8181106122e957005b6122f4818385612d43565b35906001600160a01b0382168083036104fd576020612314838688612d43565b013581156124a457801561082d5760407f5a62aba63389893aaba0a4723ed5972cf3539fa02e74e3ace4eb4f8b47b70ce59161242d6124018760ff61236d60019a60018060a01b03166000526004602052604060002090565b541615612474575b6001600160a01b03811660009081526002602052604090204660005260205260ff89866000200154161560001461243f57610a6185516123b481612840565b8581528a60208201526123d98360018060a01b03166000526002602052604060002090565b466000526020528660002060016020918351815501910151151560ff80198354169116179055565b83519061240d8261285b565b600082528360208301524685830152426060830152436080830152612e03565b8151904682526020820152a2016122e0565b6001600160a01b0381166000908152600260205260409020466000526020528460002061246d858254612aa6565b9055610a61565b61247d81612dd2565b6001600160a01b0381166000908152600460205260409020805460ff19168a179055612375565b635005cc1160e11b60005260046000fd5b63521299a960e01b60005260046000fd5b346104fd5760003660031901126104fd57604051600b548082526020820190600b60005260206000209060005b81811061250a57610a4185610a3581870382612876565b82546001600160a01b03168452602090930192600192830192016124f3565b346104fd5760003660031901126104fd576040516000601154908160011c91600181168015612661575b60208410811461264d57838552849291811561262e57506001146125cd575b61257e92500382612876565b60405190602082528181519182602083015260005b8381106125b55750508160006040809484010152601f80199101168101030190f35b60208282018101516040878401015285935001612593565b509060116000527f31ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68906000915b81831061261257505090602061257e92820101612572565b60209193508060019154838588010152019101909183926125fa565b6020925061257e94915060ff191682840152151560051b820101612572565b634e487b7160e01b83526022600452602483fd5b92607f1692612553565b346104fd5760403660031901126104fd576126846127fe565b60243590612690612d1a565b6001600160a01b0316908115610e23576103e8811161062e5760407f31e382eb6f72cd451263239664ad5dded9559f11d45df14b028ff74748d9ebc09183600052601360205281600020549061271e83516126ea81612840565b828152600160208201528660005260136020528460002060016020918351815501910151151560ff80198354169116179055565b82519182526020820152a2005b60403660031901126104fd5761273f6127fe565b336000908152600c6020526040902054602435919060ff1615611a7657612764612cad565b6001600160a01b031690816127b45750341561082d57604051903482524260208301527f0d755ae8a5f6f0781bb0d1a9541308461f6a8b64fd4b3dfa8b83daf0cdb8d19560403393a35b60018055005b90811561082d576127c782303384612ccf565b6040519182524260208301527f0d755ae8a5f6f0781bb0d1a9541308461f6a8b64fd4b3dfa8b83daf0cdb8d19560403393a36127ae565b600435906001600160a01b03821682036104fd57565b602435906001600160a01b03821682036104fd57565b606435906001600160a01b03821682036104fd57565b604081019081106001600160401b0382111761038057604052565b60a081019081106001600160401b0382111761038057604052565b90601f801991011681019081106001600160401b0382111761038057604052565b602060408183019282815284518094520192019060005b8181106128bb5750505090565b82516001600160a01b03168452602093840193909201916001016128ae565b60409060031901126104fd576004356001600160a01b03811681036104fd579060243580151581036104fd5790565b9181601f840112156104fd578235916001600160401b0383116104fd576020808501948460051b0101116104fd57565b9181601f840112156104fd578235916001600160401b0383116104fd57602083818601950101116104fd57565b60409060031901126104fd576004359060243590565b602060408183019282815284518094520192019060005b8181106129a05750505090565b909192835180519060028210156108175782608060a0926020946001965284810151858401526040810151604084015260608101516060840152015160808201520194019101919091612993565b906040516129fb81612840565b602060ff60018395805485520154161515910152565b919082039182116104bd57565b90929160009060018060a01b0316918282526013602052612a41604083206129ee565b92151580612a99575b15612a8657505051905b8115612a7d578183028381048314841517156104bd57612710612a7991048094612a11565b9190565b60009291508290565b6040925081526012602052205490612a54565b5060208301511515612a4a565b919082018092116104bd57565b3d15612aed573d906001600160401b0382116103805760405191612ae1601f8201601f191660200184612876565b82523d6000602084013e565b606090565b6014548015159081612b45575b50612b34576015548015159182612b2a575b5050612b1957565b63ea5d71ed60e01b60005260046000fd5b1190503880612b11565b632fcd1a0f60e01b60005260046000fd5b9050811038612aff565b610c6891612c29979695610bd79495612b666130ca565b60208151910120610bd7612b97612b7b6130f3565b6020815191012060405192839160208301953091469188613112565b519020966040519360208501957f28ef9d23231b7b3d73832e92b022228ad7c4b94cfd8c1fb0d495aa88abaaefd0875260018060a01b031660408601526060850152608084015260018060a01b031660a083015260c082015260c08152612bff60e082612876565b519020604051928391602083019586909160429261190160f01b8352600283015260228201520190565b90565b6000908152600e60205260409020546001600160a01b031680612c4e57504790565b6020602491604051928380926370a0823160e01b82523060048301525afa908115610e1757600091612c7e575090565b90506020813d602011612ca5575b81612c9960209383612876565b810103126104fd575190565b3d9150612c8c565b600260015414612cbe576002600155565b633ee5aeb560e01b60005260046000fd5b6040516323b872dd60e01b60208201526001600160a01b039283166024820152929091166044830152606480830193909352918152612d1891612d13608483612876565b613426565b565b6000546001600160a01b03163303612d2e57565b63118cdaa760e01b6000523360045260246000fd5b9190811015612d535760061b0190565b634e487b7160e01b600052603260045260246000fd5b600d54811015612d5357600d60005260206000200190600090565b600b54811015612d5357600b60005260206000200190600090565b600954811015612d5357600960005260206000200190600090565b8054821015612d535760005260206000200190600090565b60035490600160401b82101561038057610355826001612d1894016003556003612dba565b60028210156108175752565b805490600160401b8210156103805760018201808255821015612d53576000526005602060002091020190805160028110156108175760049160809160ff801986541691161784556020810151600185015560408101516002850155606081015160038501550151910155565b60405163a9059cbb60e01b60208201526001600160a01b039092166024830152604480830193909352918152612d1891612d13606483612876565b6001600160401b0381116103805760051b60200190565b8051821015612d535760209160051b010190565b6001600160a01b0316600090815260056020526040902080549192909160609190612f0081612eab565b93612f0e6040519586612876565b818552602085019060005260206000206000915b8383106130765750505050825191828510156130115750612f5791612f48859283612aa6565b90808211613009575b50612a11565b90612f6182612eab565b92612f6f6040519485612876565b828452601f19612f7e84612eab565b0160005b818110612fcf57505060005b838110612f9c575050505090565b80612fb2612fac60019385612aa6565b85612ec2565b51612fbd8288612ec2565b52612fc88187612ec2565b5001612f8e565b602090604051612fde8161285b565b6000815260008382015260006040820152600060608201526000608082015282828901015201612f82565b905038612f51565b60405194509250600091506130299050602084612876565b8252600090815b82811061303d5750505090565b60209060405161304c8161285b565b60008152600083820152600060408201526000848201526000608082015282828701015201613030565b600560206001926040516130898161285b565b61309760ff87541682612df7565b84860154838201526002860154604082015260038601548a82015260048601546080820152815201920192019190612f22565b604051906130d9604083612876565b600b82526a04c696265727479537761760ac1b6020830152565b60405190613102604083612876565b60018252603160f81b6020830152565b926080929594919560a08501967f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f865260208601526040850152606084015260018060a01b0316910152565b9061316882612eab565b6131756040519182612876565b8281528092613186601f1991612eab565b0190602036910137565b9190811015612d535760051b81013590601e19813603018212156104fd5701908135916001600160401b0383116104fd5760200182360381136104fd579190565b919091811561338957600a8211613378576131eb8261315e565b90600093845b84811061320057505050505090565b604161320d828785613190565b905003613367576041613221828785613190565b9190910361336757604081013560001a601b8110613345575b60ff16601b8114158061333a575b613329576080600091602080946040519289845282840152803560408401520135606082015282805260015afa15610e17576000516001600160a01b031680156133185760ff6040600083815260086020522054161561330f576000805b8881106132e3575b50156132c0575b506001905b016131f1565b6132cd8786989398612ec2565b5260001981146104bd57600180910195906132b5565b826001600160a01b036132f6838a612ec2565b511614613305576001016132a6565b50506001386132ae565b506001906132ba565b638baa579f60e01b60005260046000fd5b63449f5db160e01b60005260046000fd5b50601c811415613248565b601b0160ff81111561323a57634e487b7160e01b600052601160045260246000fd5b634be6321b60e01b60005260046000fd5b6387e497e560e01b60005260046000fd5b631d9ff6ed60e01b60005260046000fd5b91906003549081841015613408576133b791612f48859283612aa6565b6133c08161315e565b9060005b8181106133d2575090925050565b806133e96133e260019388612aa6565b6003612dba565b838060a01b0391549060031b1c166134018286612ec2565b52016133c4565b5050905060405161341a602082612876565b60008152600036813790565b906000602091828151910182855af115610e17576000513d61347857506001600160a01b0381163b155b6134575750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b6001141561345056fefcaa24b1276bfa7dbf77797c0a984b9df924acbeaabd48cd2f1b0eca379b78fa4b36b2e66f38ed349bec532105790177f1283bcbc094e6cd48565195d3033c43a264697066735822122020efb756f472c88859d80f9ca3e94aec20032107577cf0466b7faf2bac1db81f64736f6c634300081c0033",

thinking
**Analyzing bytecode callsite findings**
codex
{"no_findings":false,"summary":"Bytecode shows a reachable DELEGATECALL into an external target and multiple low-level CALLs where target/value appear computed; guard and return‑data checks are not visible in the evidence, so trust and reentrancy assumptions need confirmation.","findings":[{"severity":"high","category":"upgradeability","title":"DELEGATECALL to external target (proxy-like risk)","exploit_scenario":"A reachable DELEGATECALL executes code from an external address in this contract’s storage context. If that target is untrusted or upgradeable (e.g., a proxy implementation under someone else’s control), it can arbitrarily mutate storage, seize ownership, or drain funds. Bytecode-only analysis cannot confirm whether the target is immutable or who controls it.","recommendation":"Ensure the delegatecall target is immutable and trusted (e.g., a verified library with no upgrade path), or add strict access control/allowlisting around any path that can reach it. If this is a proxy pattern, document the admin/upgrade mechanism and add invariant checks or code-hash validation on the implementation.","evidence":"Detector finding \"Untrusted DELEGATECALL target reachable\" shows a DELEGATECALL at pc 13520 with no guards detected; validation observed a constant target 0x43506849d7c04f9138d1a2050bbf3a0c054402dd but did not confirm trust/immutability (returndata_checked: null).","locations":["pc:0x34d0"]},{"severity":"medium","category":"other","title":"Low-level CALLs with computed target/value and unknown return handling","exploit_scenario":"Multiple CALL sites are reachable with computed target/value; if user input can influence these, an attacker could redirect ETH transfers or trigger reentrancy via external calls. Return-data checks are not shown, so silent failure handling is unclear. Validation traces saw a constant target equal to the contract itself, but controllability is not confirmed from bytecode alone.","recommendation":"Trace inputs that feed the CALL target/value and restrict them (allowlist or access control). Check the CALL return value and handle failures explicitly. If state changes occur before these calls, consider a reentrancy guard or checks-effects-interactions discipline.","evidence":"Detector findings \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\" list CALL sites at pc 4635/4832/6110 with computed target/value and no guards detected (returndata_checked: null). Validation observed constant target 0x06291eee038e94e8dec2b3bfb6e030c0b5615506 but not confirmed as safe in all paths.","locations":["pc:0x121b","pc:0x12e0","pc:0x17de"]}]}
tokens used
53,106
Metadata
{
    "codex": {
        "ran_at": "2026-01-11T07:20:04.460633+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 27120,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode shows a reachable DELEGATECALL into an external target and multiple low-level CALLs where target/value appear computed; guard and return\u2011data checks are not visible in the evidence, so trust and reentrancy assumptions need confirmation.",
    "raw_final": {
        "summary": "Bytecode shows a reachable DELEGATECALL into an external target and multiple low-level CALLs where target/value appear computed; guard and return\u2011data checks are not visible in the evidence, so trust and reentrancy assumptions need confirmation.",
        "findings": [
            {
                "title": "DELEGATECALL to external target (proxy-like risk)",
                "category": "upgradeability",
                "evidence": "Detector finding \"Untrusted DELEGATECALL target reachable\" shows a DELEGATECALL at pc 13520 with no guards detected; validation observed a constant target 0x43506849d7c04f9138d1a2050bbf3a0c054402dd but did not confirm trust/immutability (returndata_checked: null).",
                "severity": "high",
                "locations": [
                    "pc:0x34d0"
                ],
                "recommendation": "Ensure the delegatecall target is immutable and trusted (e.g., a verified library with no upgrade path), or add strict access control/allowlisting around any path that can reach it. If this is a proxy pattern, document the admin/upgrade mechanism and add invariant checks or code-hash validation on the implementation.",
                "exploit_scenario": "A reachable DELEGATECALL executes code from an external address in this contract\u2019s storage context. If that target is untrusted or upgradeable (e.g., a proxy implementation under someone else\u2019s control), it can arbitrarily mutate storage, seize ownership, or drain funds. Bytecode-only analysis cannot confirm whether the target is immutable or who controls it."
            },
            {
                "title": "Low-level CALLs with computed target/value and unknown return handling",
                "category": "other",
                "evidence": "Detector findings \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\" list CALL sites at pc 4635/4832/6110 with computed target/value and no guards detected (returndata_checked: null). Validation observed constant target 0x06291eee038e94e8dec2b3bfb6e030c0b5615506 but not confirmed as safe in all paths.",
                "severity": "medium",
                "locations": [
                    "pc:0x121b",
                    "pc:0x12e0",
                    "pc:0x17de"
                ],
                "recommendation": "Trace inputs that feed the CALL target/value and restrict them (allowlist or access control). Check the CALL return value and handle failures explicitly. If state changes occur before these calls, consider a reentrancy guard or checks-effects-interactions discipline.",
                "exploit_scenario": "Multiple CALL sites are reachable with computed target/value; if user input can influence these, an attacker could redirect ETH transfers or trigger reentrancy via external calls. Return-data checks are not shown, so silent failure handling is unclear. Validation traces saw a constant target equal to the contract itself, but controllability is not confirmed from bytecode alone."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
10
EXT*/BALANCE
2
Total opcodes
8620
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: ISZERO
0000000a: PUSH2 0x0012
0000000d: JUMPI
0000000e: PUSH1 0x00
00000010: DUP1
00000011: REVERT
00000012: JUMPDEST
00000013: PUSH1 0x00
00000015: CALLDATALOAD
00000016: PUSH1 0xe0
00000018: SHR
00000019: DUP1
0000001a: PUSH4 0x11d93fb4
0000001f: EQ
00000020: PUSH2 0x272b
00000023: JUMPI
00000024: DUP1
00000025: PUSH4 0x161f9a49
0000002a: EQ
0000002b: PUSH2 0x266b
0000002e: JUMPI
0000002f: DUP1
00000030: PUSH4 0x16b2b888
00000035: EQ
00000036: PUSH2 0x2529
00000039: JUMPI
0000003a: DUP1
0000003b: PUSH4 0x179ff4b2
00000040: EQ
00000041: PUSH2 0x24c6
00000044: JUMPI
00000045: DUP1
00000046: PUSH4 0x235f22af
0000004b: EQ
0000004c: PUSH2 0x2271
0000004f: JUMPI
00000050: DUP1
00000051: PUSH4 0x272f9c0b
00000056: EQ
00000057: PUSH2 0x2219
0000005a: JUMPI
0000005b: DUP1
0000005c: PUSH4 0x27a099d8
00000061: EQ
00000062: PUSH2 0x21b6
00000065: JUMPI
00000066: DUP1
00000067: PUSH4 0x2a50cf31
0000006c: EQ
0000006d: PUSH2 0x2191
00000070: JUMPI
00000071: DUP1
00000072: PUSH4 0x2afe93f6
00000077: EQ
00000078: PUSH2 0x2173
0000007b: JUMPI
0000007c: DUP1
0000007d: PUSH4 0x338246e2
00000082: EQ
00000083: PUSH2 0x2155
00000086: JUMPI
00000087: DUP1
00000088: PUSH4 0x389ffd61
0000008d: EQ
0000008e: PUSH2 0x20f2
00000091: JUMPI
00000092: DUP1
00000093: PUSH4 0x3b3d6706
00000098: EQ
00000099: PUSH2 0x2005
0000009c: JUMPI
0000009d: DUP1
0000009e: PUSH4 0x3f4ba83a
000000a3: EQ
000000a4: PUSH2 0x2089
000000a7: JUMPI
000000a8: DUP1
000000a9: PUSH4 0x4f84d9fd
000000ae: EQ
000000af: PUSH2 0x2036
000000b2: JUMPI
000000b3: DUP1
000000b4: PUSH4 0x4ff66ca8
000000b9: EQ
000000ba: PUSH2 0x2005
000000bd: JUMPI
000000be: DUP1
000000bf: PUSH4 0x51c6590a
000000c4: EQ
000000c5: PUSH2 0x1e1e
000000c8: JUMPI
000000c9: DUP1
000000ca: PUSH4 0x541d5548
000000cf: EQ
000000d0: PUSH2 0x1de4
000000d3: JUMPI
000000d4: DUP1
000000d5: PUSH4 0x558a7297
000000da: EQ
000000db: PUSH2 0x1bd7
000000de: JUMPI
000000df: DUP1
000000e0: PUSH4 0x5c975abb
000000e5: EQ
000000e6: PUSH2 0x1bb4
000000e9: JUMPI
000000ea: DUP1
000000eb: PUSH4 0x6119659d
000000f0: EQ
000000f1: PUSH2 0x1b8d
000000f4: JUMPI
000000f5: DUP1
000000f6: PUSH4 0x6d70f7ae
000000fb: EQ
000000fc: PUSH2 0x1b47
000000ff: JUMPI
00000100: DUP1
00000101: PUSH4 0x715018a6
00000106: EQ
00000107: PUSH2 0x1aee
0000010a: JUMPI
0000010b: DUP1
0000010c: PUSH4 0x740ad12a
00000111: EQ
00000112: PUSH2 0x1a87
00000115: JUMPI
00000116: DUP1
00000117: PUSH4 0x771f7c19
0000011c: EQ
0000011d: PUSH2 0x1908
00000120: JUMPI
00000121: DUP1
00000122: PUSH4 0x7ae07c7f
00000127: EQ
00000128: PUSH2 0x1597
0000012b: JUMPI
0000012c: DUP1
0000012d: PUSH4 0x7c66d142
00000132: EQ
00000133: PUSH2 0x0502
00000136: JUMPI
00000137: DUP1
00000138: PUSH4 0x7df73e27
0000013d: EQ
0000013e: PUSH2 0x1558
00000141: JUMPI
00000142: DUP1
00000143: PUSH4 0x81f74639
00000148: EQ
00000149: PUSH2 0x151e
0000014c: JUMPI
0000014d: DUP1
0000014e: PUSH4 0x8456cb59
00000153: EQ
00000154: PUSH2 0x14b2
00000157: JUMPI
00000158: DUP1
00000159: PUSH4 0x8da5cb5b
0000015e: EQ
0000015f: PUSH2 0x1489
00000162: JUMPI
00000163: DUP1
00000164: PUSH4 0x940cc475
00000169: EQ
0000016a: PUSH2 0x1403
0000016d: JUMPI
0000016e: DUP1
0000016f: PUSH4 0x94cf795e
00000174: EQ
00000175: PUSH2 0x13a0
00000178: JUMPI
00000179: DUP1
0000017a: PUSH4 0x95ccea67
0000017f: EQ
00000180: PUSH2 0x1282
00000183: JUMPI
00000184: DUP1
00000185: PUSH4 0x9c8f9f23
0000018a: EQ
0000018b: PUSH2 0x1091
0000018e: JUMPI
0000018f: DUP1
00000190: PUSH4 0x9dbf5eca
00000195: EQ
00000196: PUSH2 0x0e8a
00000199: JUMPI
0000019a: DUP1
0000019b: PUSH4 0xa82f2e26
000001a0: EQ
000001a1: PUSH2 0x0e6c
000001a4: JUMPI
000001a5: DUP1
000001a6: PUSH4 0xa8eed730
000001ab: EQ
000001ac: PUSH2 0x0e34
000001af: JUMPI
000001b0: DUP1
000001b1: PUSH4 0xaf906cf3
000001b6: EQ
000001b7: PUSH2 0x0cf5
000001ba: JUMPI
000001bb: DUP1
000001bc: PUSH4 0xbbde5374
000001c1: EQ
000001c2: PUSH2 0x0c70
000001c5: JUMPI
000001c6: DUP1
000001c7: PUSH4 0xc1416a46
000001cc: EQ
000001cd: PUSH2 0x0b5c
000001d0: JUMPI
000001d1: DUP1
000001d2: PUSH4 0xc287dded
000001d7: EQ
000001d8: PUSH2 0x0b3e
000001db: JUMPI
000001dc: DUP1
000001dd: PUSH4 0xc4c47ea5
000001e2: EQ
000001e3: PUSH2 0x0b12
000001e6: JUMPI
000001e7: DUP1
000001e8: PUSH4 0xc71c5ef3
000001ed: EQ
000001ee: PUSH2 0x0a45
000001f1: JUMPI
000001f2: DUP1
000001f3: PUSH4 0xcca2e03f
000001f8: EQ
000001f9: PUSH2 0x0a1b
000001fc: JUMPI
000001fd: DUP1
000001fe: PUSH4 0xcce987d4
00000203: EQ
00000204: PUSH2 0x09fd
00000207: JUMPI
00000208: DUP1
00000209: PUSH4 0xd0fc29c1
0000020e: EQ
0000020f: PUSH2 0x09d1
00000212: JUMPI
00000213: DUP1
00000214: PUSH4 0xd2aaef4e
00000219: EQ
0000021a: PUSH2 0x09d1
0000021d: JUMPI
0000021e: DUP1
0000021f: PUSH4 0xd5bcb610
00000224: EQ
00000225: PUSH2 0x09a2
00000228: JUMPI
00000229: DUP1
0000022a: PUSH4 0xde697f95
0000022f: EQ
00000230: PUSH2 0x0946
00000233: JUMPI
00000234: DUP1
00000235: PUSH4 0xed1375d5
0000023a: EQ
0000023b: PUSH2 0x0920
0000023e: JUMPI
0000023f: DUP1
00000240: PUSH4 0xed81cfdf
00000245: EQ
00000246: PUSH2 0x063f
00000249: JUMPI
0000024a: DUP1
0000024b: PUSH4 0xf2d2a751
00000250: EQ
00000251: PUSH2 0x05bf
00000254: JUMPI
00000255: DUP1
00000256: PUSH4 0xf2fde38b
0000025b: EQ
0000025c: PUSH2 0x0536
0000025f: JUMPI
00000260: DUP1
00000261: PUSH4 0xf3e66cb7
00000266: EQ
00000267: PUSH2 0x0502
0000026a: JUMPI
0000026b: PUSH4 0xf460590b
00000270: EQ
00000271: PUSH2 0x0279
00000274: JUMPI
00000275: PUSH1 0x00
00000277: DUP1
00000278: REVERT
00000279: JUMPDEST
0000027a: CALLVALUE
0000027b: PUSH2 0x04fd
0000027e: JUMPI
0000027f: PUSH2 0x0287
00000282: CALLDATASIZE
00000283: PUSH2 0x28da
00000286: JUMP
00000287: JUMPDEST
00000288: PUSH2 0x028f
0000028b: PUSH2 0x2d1a
0000028e: JUMP
0000028f: JUMPDEST
00000290: PUSH1 0x01
00000292: PUSH1 0x01
00000294: PUSH1 0xa0
00000296: SHL
00000297: SUB
00000298: DUP3
00000299: AND
0000029a: DUP1
0000029b: ISZERO
0000029c: PUSH2 0x04ec
0000029f: JUMPI
000002a0: DUP2
000002a1: ISZERO
000002a2: PUSH2 0x0396
000002a5: JUMPI
000002a6: POP
000002a7: PUSH1 0x01
000002a9: PUSH1 0x01
000002ab: PUSH1 0xa0
000002ad: SHL
000002ae: SUB
000002af: DUP3
000002b0: AND
000002b1: PUSH1 0x00
000002b3: SWAP1
000002b4: DUP2
000002b5: MSTORE
000002b6: PUSH1 0x08
000002b8: PUSH1 0x20
000002ba: MSTORE
000002bb: PUSH1 0x40
000002bd: SWAP1
000002be: KECCAK256
000002bf: SLOAD
000002c0: PUSH1 0xff
000002c2: AND
000002c3: ISZERO
000002c4: PUSH2 0x02fd
000002c7: JUMPI
000002c8: JUMPDEST
000002c9: PUSH1 0x00
000002cb: DUP1
000002cc: MLOAD
000002cd: PUSH1 0x20
000002cf: PUSH2 0x3482
000002d2: DUP4
000002d3: CODECOPY
000002d4: DUP2
000002d5: MLOAD
000002d6: SWAP2
000002d7: MSTORE
000002d8: SWAP2
000002d9: JUMPDEST
000002da: PUSH1 0x40
000002dc: DUP1
000002dd: MLOAD
000002de: PUSH1 0x01
000002e0: PUSH1 0x01
000002e2: PUSH1 0xa0
000002e4: SHL
000002e5: SUB
000002e6: SWAP1
000002e7: SWAP3
000002e8: AND
000002e9: DUP3
000002ea: MSTORE
000002eb: SWAP2
000002ec: ISZERO
000002ed: ISZERO
000002ee: PUSH1 0x20
000002f0: DUP3
000002f1: ADD
000002f2: MSTORE
000002f3: SWAP1
000002f4: DUP2
000002f5: SWAP1
000002f6: DUP2
000002f7: ADD
000002f8: JUMPDEST
000002f9: SUB
000002fa: SWAP1
000002fb: LOG1
000002fc: STOP
000002fd: JUMPDEST
000002fe: PUSH1 0x01
00000300: PUSH1 0x01
00000302: PUSH1 0xa0
00000304: SHL
00000305: SUB
00000306: DUP3
00000307: AND
00000308: PUSH1 0x00
0000030a: SWAP1
0000030b: DUP2
0000030c: MSTORE
0000030d: PUSH1 0x08
0000030f: PUSH1 0x20
00000311: MSTORE
00000312: PUSH1 0x40
00000314: SWAP1
00000315: KECCAK256
00000316: DUP1
00000317: SLOAD
00000318: PUSH1 0xff
0000031a: NOT
0000031b: AND
0000031c: PUSH1 0x01
0000031e: OR
0000031f: SWAP1
00000320: SSTORE
00000321: PUSH1 0x09
00000323: SLOAD
00000324: SWAP2
00000325: PUSH1 0x01
00000327: PUSH1 0x40
00000329: SHL
0000032a: DUP4
0000032b: LT
0000032c: ISZERO
0000032d: PUSH2 0x0380
00000330: JUMPI
00000331: PUSH2 0x0379
00000334: DUP2
00000335: PUSH2 0x0355
00000338: DUP6
00000339: PUSH1 0x01
0000033b: PUSH1 0x00
0000033d: DUP1
0000033e: MLOAD
0000033f: PUSH1 0x20
00000341: PUSH2 0x3482
00000344: DUP4
00000345: CODECOPY
00000346: DUP2
00000347: MLOAD
00000348: SWAP2
00000349: MSTORE
0000034a: SWAP8
0000034b: ADD
0000034c: PUSH1 0x09
0000034e: SSTORE
0000034f: PUSH1 0x09
00000351: PUSH2 0x2dba
00000354: JUMP
00000355: JUMPDEST
00000356: DUP2
00000357: SLOAD
00000358: PUSH1 0x01
0000035a: PUSH1 0x01
0000035c: PUSH1 0xa0
0000035e: SHL
0000035f: SUB
00000360: SWAP4
00000361: DUP5
00000362: AND
00000363: PUSH1 0x03
00000365: SWAP3
00000366: SWAP1
00000367: SWAP3
00000368: SHL
00000369: SWAP2
0000036a: DUP3
0000036b: SHL
0000036c: SWAP4
0000036d: SWAP1
0000036e: SWAP2
0000036f: SHL
00000370: NOT
00000371: AND
00000372: SWAP2
00000373: SWAP1
00000374: SWAP2
00000375: OR
00000376: SWAP1
00000377: SSTORE
00000378: JUMP
00000379: JUMPDEST
0000037a: SWAP2
0000037b: POP
0000037c: PUSH2 0x02c8
0000037f: JUMP
00000380: JUMPDEST
00000381: PUSH4 0x4e487b71
00000386: PUSH1 0xe0
00000388: SHL
00000389: PUSH1 0x00
0000038b: MSTORE
0000038c: PUSH1 0x41
0000038e: PUSH1 0x04
00000390: MSTORE
00000391: PUSH1 0x24
00000393: PUSH1 0x00
00000395: REVERT
00000396: JUMPDEST
00000397: PUSH1 0x01
00000399: PUSH1 0x01
0000039b: PUSH1 0xa0
0000039d: SHL
0000039e: SUB
0000039f: DUP4
000003a0: AND
000003a1: PUSH1 0x00
000003a3: SWAP1
000003a4: DUP2
000003a5: MSTORE
000003a6: PUSH1 0x08
000003a8: PUSH1 0x20
000003aa: MSTORE
000003ab: PUSH1 0x40
000003ad: SWAP1
000003ae: KECCAK256
000003af: SLOAD
000003b0: PUSH1 0xff
000003b2: AND
000003b3: PUSH2 0x03cd
000003b6: JUMPI
000003b7: JUMPDEST
000003b8: POP
000003b9: PUSH1 0x00
000003bb: DUP1
000003bc: MLOAD
000003bd: PUSH1 0x20
000003bf: PUSH2 0x3482
000003c2: DUP4
000003c3: CODECOPY
000003c4: DUP2
000003c5: MLOAD
000003c6: SWAP2
000003c7: MSTORE
000003c8: SWAP2
000003c9: PUSH2 0x02d9
000003cc: JUMP
000003cd: JUMPDEST
000003ce: PUSH1 0x01
000003d0: PUSH1 0x01
000003d2: PUSH1 0xa0
000003d4: SHL
000003d5: SUB
000003d6: DUP4
000003d7: AND
000003d8: PUSH1 0x00
000003da: SWAP1
000003db: DUP2
000003dc: MSTORE
000003dd: PUSH1 0x08
000003df: PUSH1 0x20
000003e1: MSTORE
000003e2: PUSH1 0x40
000003e4: DUP2
000003e5: KECCAK256
000003e6: DUP1
000003e7: SLOAD
000003e8: PUSH1 0xff
000003ea: NOT
000003eb: AND
000003ec: SWAP1
000003ed: SSTORE
000003ee: SWAP1
000003ef: SWAP2
000003f0: SWAP1
000003f1: JUMPDEST
000003f2: PUSH1 0x09
000003f4: SLOAD
000003f5: DUP1
000003f6: DUP3
000003f7: LT
000003f8: ISZERO
000003f9: PUSH2 0x04d3
000003fc: JUMPI
000003fd: DUP4
000003fe: PUSH2 0x0406
00000401: DUP4
00000402: PUSH2 0x2d9f
00000405: JUMP
00000406: JUMPDEST
00000407: SWAP1
00000408: SLOAD
00000409: PUSH1 0x03
0000040b: SWAP2
0000040c: SWAP1
0000040d: SWAP2
0000040e: SHL
0000040f: SHR
00000410: PUSH1 0x01
00000412: PUSH1 0x01
00000414: PUSH1 0xa0
00000416: SHL
00000417: SUB
00000418: AND
00000419: EQ
0000041a: PUSH2 0x0426
0000041d: JUMPI
0000041e: POP
0000041f: PUSH1 0x01
00000421: ADD
00000422: PUSH2 0x03f1
00000425: JUMP
00000426: JUMPDEST
00000427: SWAP2
00000428: SWAP3
00000429: POP
0000042a: PUSH1 0x00
0000042c: NOT
0000042d: DUP3
0000042e: ADD
0000042f: SWAP2
00000430: DUP3
00000431: GT
00000432: PUSH2 0x04bd
00000435: JUMPI
00000436: PUSH2 0x0355
00000439: PUSH2 0x0444
0000043c: PUSH2 0x045c
0000043f: SWAP4
00000440: PUSH2 0x2d9f
00000443: JUMP
00000444: JUMPDEST
00000445: SWAP1
00000446: SLOAD
00000447: PUSH1 0x03
00000449: SWAP2
0000044a: SWAP1
0000044b: SWAP2
0000044c: SHL
0000044d: SHR
0000044e: PUSH1 0x01
00000450: PUSH1 0x01
00000452: PUSH1 0xa0
00000454: SHL
00000455: SUB
00000456: AND
00000457: SWAP2
00000458: PUSH2 0x2d9f
0000045b: JUMP
0000045c: JUMPDEST
0000045d: PUSH1 0x09
0000045f: SLOAD
00000460: SWAP2
00000461: DUP3
00000462: ISZERO
00000463: PUSH2 0x04a7
00000466: JUMPI
00000467: PUSH1 0x00
00000469: DUP1
0000046a: MLOAD
0000046b: PUSH1 0x20
0000046d: PUSH2 0x3482
00000470: DUP4
00000471: CODECOPY
00000472: DUP2
00000473: MLOAD
00000474: SWAP2
00000475: MSTORE
00000476: SWAP3
00000477: PUSH1 0x00
00000479: NOT
0000047a: ADD
0000047b: PUSH2 0x049d
0000047e: PUSH2 0x0488
00000481: DUP3
00000482: PUSH1 0x09
00000484: PUSH2 0x2dba
00000487: JUMP
00000488: JUMPDEST
00000489: DUP2
0000048a: SLOAD
0000048b: SWAP1
0000048c: PUSH1 0x01
0000048e: DUP1
0000048f: PUSH1 0xa0
00000491: SHL
00000492: SUB
00000493: SWAP1
00000494: PUSH1 0x03
00000496: SHL
00000497: SHL
00000498: NOT
00000499: AND
0000049a: SWAP1
0000049b: SSTORE
0000049c: JUMP
0000049d: JUMPDEST
0000049e: PUSH1 0x09
000004a0: SSTORE
000004a1: JUMPDEST
000004a2: SWAP2
000004a3: PUSH2 0x03b7
000004a6: JUMP
000004a7: JUMPDEST
000004a8: PUSH4 0x4e487b71
000004ad: PUSH1 0xe0
000004af: SHL
000004b0: PUSH1 0x00
000004b2: MSTORE
000004b3: PUSH1 0x31
000004b5: PUSH1 0x04
000004b7: MSTORE
000004b8: PUSH1 0x24
000004ba: PUSH1 0x00
000004bc: REVERT
000004bd: JUMPDEST
000004be: PUSH4 0x4e487b71
000004c3: PUSH1 0xe0
000004c5: SHL
000004c6: PUSH1 0x00
000004c8: MSTORE
000004c9: PUSH1 0x11
000004cb: PUSH1 0x04
000004cd: MSTORE
000004ce: PUSH1 0x24
000004d0: PUSH1 0x00
000004d2: REVERT
000004d3: JUMPDEST
000004d4: POP
000004d5: POP
000004d6: SWAP1
000004d7: POP
000004d8: PUSH1 0x00
000004da: DUP1
000004db: MLOAD
000004dc: PUSH1 0x20
000004de: PUSH2 0x3482
000004e1: DUP4
000004e2: CODECOPY
000004e3: DUP2
000004e4: MLOAD
000004e5: SWAP2
000004e6: MSTORE
000004e7: SWAP2
000004e8: PUSH2 0x04a1
000004eb: JUMP
000004ec: JUMPDEST
000004ed: PUSH4 0x4501a919
000004f2: PUSH1 0xe0
000004f4: SHL
000004f5: PUSH1 0x00
000004f7: MSTORE
000004f8: PUSH1 0x04
000004fa: PUSH1 0x00
000004fc: REVERT
000004fd: JUMPDEST
000004fe: PUSH1 0x00
00000500: DUP1
00000501: REVERT
00000502: JUMPDEST
00000503: CALLVALUE
00000504: PUSH2 0x04fd
00000507: JUMPI
00000508: PUSH1 0x20
0000050a: CALLDATASIZE
0000050b: PUSH1 0x03
0000050d: NOT
0000050e: ADD
0000050f: SLT
00000510: PUSH2 0x04fd
00000513: JUMPI
00000514: PUSH1 0x04
00000516: CALLDATALOAD
00000517: PUSH1 0x00
00000519: MSTORE
0000051a: PUSH1 0x0e
0000051c: PUSH1 0x20
0000051e: MSTORE
0000051f: PUSH1 0x20
00000521: PUSH1 0x01
00000523: DUP1
00000524: PUSH1 0xa0
00000526: SHL
00000527: SUB
00000528: PUSH1 0x40
0000052a: PUSH1 0x00
0000052c: KECCAK256
0000052d: SLOAD
0000052e: AND
0000052f: PUSH1 0x40
00000531: MLOAD
00000532: SWAP1
00000533: DUP2
00000534: MSTORE
00000535: RETURN
00000536: JUMPDEST
00000537: CALLVALUE
00000538: PUSH2 0x04fd
0000053b: JUMPI
0000053c: PUSH1 0x20
0000053e: CALLDATASIZE
0000053f: PUSH1 0x03
00000541: NOT
00000542: ADD
00000543: SLT
00000544: PUSH2 0x04fd
00000547: JUMPI
00000548: PUSH2 0x054f
0000054b: PUSH2 0x27fe
0000054e: JUMP
0000054f: JUMPDEST
00000550: PUSH2 0x0557
00000553: PUSH2 0x2d1a
00000556: JUMP
00000557: JUMPDEST
00000558: PUSH1 0x01
0000055a: PUSH1 0x01
0000055c: PUSH1 0xa0
0000055e: SHL
0000055f: SUB
00000560: AND
00000561: DUP1
00000562: ISZERO
00000563: PUSH2 0x05a9
00000566: JUMPI
00000567: PUSH1 0x00
00000569: DUP1
0000056a: SLOAD
0000056b: PUSH1 0x01
0000056d: PUSH1 0x01
0000056f: PUSH1 0xa0
00000571: SHL
00000572: SUB
00000573: NOT
00000574: DUP2
00000575: AND
00000576: DUP4
00000577: OR
00000578: DUP3
00000579: SSTORE
0000057a: PUSH1 0x01
0000057c: PUSH1 0x01
0000057e: PUSH1 0xa0
00000580: SHL
00000581: SUB
00000582: AND
00000583: SWAP1
00000584: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000005a5: SWAP1
000005a6: DUP1
000005a7: LOG3
000005a8: STOP
000005a9: JUMPDEST
000005aa: PUSH4 0x1e4fbdf7
000005af: PUSH1 0xe0
000005b1: SHL
000005b2: PUSH1 0x00
000005b4: MSTORE
000005b5: PUSH1 0x00
000005b7: PUSH1 0x04
000005b9: MSTORE
000005ba: PUSH1 0x24
000005bc: PUSH1 0x00
000005be: REVERT
000005bf: JUMPDEST
000005c0: CALLVALUE
000005c1: PUSH2 0x04fd
000005c4: JUMPI
000005c5: PUSH2 0x05cd
000005c8: CALLDATASIZE
000005c9: PUSH2 0x2966
000005cc: JUMP
000005cd: JUMPDEST
000005ce: PUSH2 0x05d5
000005d1: PUSH2 0x2d1a
000005d4: JUMP
000005d5: JUMPDEST
000005d6: PUSH2 0x03e8
000005d9: DUP2
000005da: GT
000005db: PUSH2 0x062e
000005de: JUMPI
000005df: PUSH1 0x00
000005e1: DUP3
000005e2: DUP2
000005e3: MSTORE
000005e4: PUSH1 0x12
000005e6: PUSH1 0x20
000005e8: SWAP1
000005e9: DUP2
000005ea: MSTORE
000005eb: PUSH1 0x40
000005ed: SWAP2
000005ee: DUP3
000005ef: SWAP1
000005f0: KECCAK256
000005f1: DUP1
000005f2: SLOAD
000005f3: SWAP1
000005f4: DUP5
000005f5: SWAP1
000005f6: SSTORE
000005f7: DUP3
000005f8: MLOAD
000005f9: SWAP5
000005fa: DUP6
000005fb: MSTORE
000005fc: SWAP1
000005fd: DUP5
000005fe: ADD
000005ff: MSTORE
00000600: DUP3
00000601: ADD
00000602: MSTORE
00000603: PUSH32 0x83e35c3e73f7713de354e131b34cefd5edc18271a6051c1be44445f7465a37fc
00000624: SWAP1
00000625: DUP1
00000626: PUSH1 0x60
00000628: DUP2
00000629: ADD
0000062a: PUSH2 0x02f8
0000062d: JUMP
0000062e: JUMPDEST
0000062f: PUSH4 0x7186728f
00000634: PUSH1 0xe1
00000636: SHL
00000637: PUSH1 0x00
00000639: MSTORE
0000063a: PUSH1 0x04
0000063c: PUSH1 0x00
0000063e: REVERT
0000063f: JUMPDEST
00000640: PUSH1 0xa0
00000642: CALLDATASIZE
00000643: PUSH1 0x03
00000645: NOT
00000646: ADD
00000647: SLT
00000648: PUSH2 0x04fd
0000064b: JUMPI
0000064c: PUSH1 0x04
0000064e: CALLDATALOAD
0000064f: PUSH1 0x24
00000651: CALLDATALOAD
00000652: PUSH1 0x44
00000654: CALLDATALOAD
00000655: PUSH1 0x01
00000657: PUSH1 0x01
00000659: PUSH1 0x40
0000065b: SHL
0000065c: SUB
0000065d: DUP2
0000065e: GT
0000065f: PUSH2 0x04fd
00000662: JUMPI
00000663: PUSH2 0x0670
00000666: SWAP1
00000667: CALLDATASIZE
00000668: SWAP1
00000669: PUSH1 0x04
0000066b: ADD
0000066c: PUSH2 0x2939
0000066f: JUMP
00000670: JUMPDEST
00000671: PUSH1 0x64
00000673: SWAP3
00000674: SWAP2
00000675: SWAP3
00000676: CALLDATALOAD
00000677: SWAP4
00000678: PUSH1 0x03
0000067a: DUP6
0000067b: LT
0000067c: ISZERO
0000067d: PUSH2 0x04fd
00000680: JUMPI
00000681: PUSH1 0x84
00000683: CALLDATALOAD
00000684: SWAP1
00000685: PUSH1 0x01
00000687: PUSH1 0x01
00000689: PUSH1 0xa0
0000068b: SHL
0000068c: SUB
0000068d: DUP3
0000068e: AND
0000068f: DUP1
00000690: DUP4
00000691: SUB
00000692: PUSH2 0x04fd
00000695: JUMPI
00000696: PUSH1 0xff
00000698: PUSH1 0x10
0000069a: SLOAD
0000069b: AND
0000069c: PUSH2 0x090f
0000069f: JUMPI
000006a0: PUSH2 0x06a7
000006a3: PUSH2 0x2cad
000006a6: JUMP
000006a7: JUMPDEST
000006a8: CHAINID
000006a9: PUSH1 0x00
000006ab: SWAP1
000006ac: DUP2
000006ad: MSTORE
000006ae: PUSH1 0x0e
000006b0: PUSH1 0x20
000006b2: MSTORE
000006b3: PUSH1 0x40
000006b5: DUP2
000006b6: KECCAK256
000006b7: SLOAD
000006b8: SWAP1
000006b9: SWAP8
000006ba: SWAP1
000006bb: PUSH1 0x01
000006bd: PUSH1 0x01
000006bf: PUSH1 0xa0
000006c1: SHL
000006c2: SUB
000006c3: AND
000006c4: DUP2
000006c5: PUSH2 0x089a
000006c8: JUMPI
000006c9: PUSH1 0x14
000006cb: DUP7
000006cc: SUB
000006cd: PUSH2 0x0889
000006d0: JUMPI
000006d1: DUP8
000006d2: CALLDATALOAD
000006d3: PUSH1 0x60
000006d5: SHR
000006d6: ISZERO
000006d7: PUSH2 0x0889
000006da: JUMPI
000006db: JUMPDEST
000006dc: DUP3
000006dd: ISZERO
000006de: PUSH2 0x0878
000006e1: JUMPI
000006e2: DUP7
000006e3: ISZERO
000006e4: PUSH2 0x082d
000006e7: JUMPI
000006e8: DUP4
000006e9: ISZERO
000006ea: PUSH2 0x0867
000006ed: JUMPI
000006ee: DUP4
000006ef: CHAINID
000006f0: EQ
000006f1: PUSH2 0x0856
000006f4: JUMPI
000006f5: PUSH2 0x06fd
000006f8: DUP8
000006f9: PUSH2 0x2af2
000006fc: JUMP
000006fd: JUMPDEST
000006fe: DUP1
000006ff: PUSH2 0x083e
00000702: JUMPI
00000703: POP
00000704: DUP6
00000705: CALLVALUE
00000706: SUB
00000707: PUSH2 0x082d
0000070a: JUMPI
0000070b: JUMPDEST
0000070c: PUSH1 0x00
0000070e: NOT
0000070f: NUMBER
00000710: ADD
00000711: SWAP8
00000712: NUMBER
00000713: DUP10
00000714: GT
00000715: PUSH2 0x04bd
00000718: JUMPI
00000719: PUSH1 0x40
0000071b: MLOAD
0000071c: PUSH1 0x20
0000071e: DUP2
0000071f: ADD
00000720: SWAP1
00000721: CALLER
00000722: PUSH1 0x60
00000724: SHL
00000725: DUP3
00000726: MSTORE
00000727: CHAINID
00000728: PUSH1 0x34
0000072a: DUP3
0000072b: ADD
0000072c: MSTORE
0000072d: DUP6
0000072e: PUSH1 0x54
00000730: DUP3
00000731: ADD
00000732: MSTORE
00000733: DUP9
00000734: PUSH1 0x74
00000736: DUP3
00000737: ADD
00000738: MSTORE
00000739: DUP8
0000073a: DUP11
0000073b: PUSH1 0x94
0000073d: DUP4
0000073e: ADD
0000073f: CALLDATACOPY
00000740: DUP8
00000741: DUP2
00000742: ADD
00000743: PUSH1 0x94
00000745: DUP2
00000746: ADD
00000747: SWAP4
00000748: PUSH1 0x00
0000074a: DUP6
0000074b: MSTORE
0000074c: PUSH2 0x0817
0000074f: JUMPI
00000750: PUSH1 0x75
00000752: PUSH1 0x94
00000754: DUP4
00000755: PUSH2 0x07be
00000758: SWAP4
00000759: PUSH1 0x20
0000075b: SWAP16
0000075c: PUSH32 0x162969265bab71a110839f8f14fab5a850bdcae670dd5598d82450eb6afa26be
0000077d: SWAP13
0000077e: DUP15
0000077f: SWAP10
00000780: DUP12
00000781: PUSH1 0xf8
00000783: SHL
00000784: SWAP1
00000785: MSTORE
00000786: PUSH12 0xffffffffffffffffffffffff
00000793: NOT
00000794: SWAP1
00000795: PUSH1 0x60
00000797: SHL
00000798: AND
00000799: PUSH1 0x95
0000079b: DUP4
0000079c: ADD
0000079d: MSTORE
0000079e: TIMESTAMP
0000079f: PUSH1 0xa9
000007a1: DUP4
000007a2: ADD
000007a3: MSTORE
000007a4: NUMBER
000007a5: PUSH1 0xc9
000007a7: DUP4
000007a8: ADD
000007a9: MSTORE
000007aa: BLOCKHASH
000007ab: PUSH1 0xe9
000007ad: DUP3
000007ae: ADD
000007af: MSTORE
000007b0: SUB
000007b1: ADD
000007b2: PUSH1 0x55
000007b4: DUP2
000007b5: ADD
000007b6: DUP5
000007b7: MSTORE
000007b8: ADD
000007b9: DUP3
000007ba: PUSH2 0x2876
000007bd: JUMP
000007be: JUMPDEST
000007bf: MLOAD
000007c0: SWAP1
000007c1: KECCAK256
000007c2: SWAP8
000007c3: DUP9
000007c4: SWAP8
000007c5: PUSH1 0x40
000007c7: MLOAD
000007c8: SWAP6
000007c9: CHAINID
000007ca: DUP8
000007cb: MSTORE
000007cc: DUP12
000007cd: DUP8
000007ce: ADD
000007cf: MSTORE
000007d0: PUSH1 0x40
000007d2: DUP7
000007d3: ADD
000007d4: MSTORE
000007d5: PUSH1 0xc0
000007d7: PUSH1 0x60
000007d9: DUP7
000007da: ADD
000007db: MSTORE
000007dc: DUP2
000007dd: PUSH1 0xc0
000007df: DUP7
000007e0: ADD
000007e1: MSTORE
000007e2: PUSH1 0xe0
000007e4: DUP6
000007e5: ADD
000007e6: CALLDATACOPY
000007e7: PUSH1 0x00
000007e9: PUSH1 0xe0
000007eb: DUP7
000007ec: DUP6
000007ed: ADD
000007ee: ADD
000007ef: MSTORE
000007f0: PUSH1 0x80
000007f2: DUP4
000007f3: ADD
000007f4: MSTORE
000007f5: PUSH1 0xa0
000007f7: DUP3
000007f8: ADD
000007f9: MSTORE
000007fa: PUSH1 0xe0
000007fc: DUP2
000007fd: CALLER
000007fe: SWAP5
000007ff: PUSH1 0x1f
00000801: DUP1
00000802: NOT
00000803: SWAP2
00000804: ADD
00000805: AND
00000806: DUP2
00000807: ADD
00000808: SUB
00000809: ADD
0000080a: SWAP1
0000080b: LOG3
0000080c: PUSH1 0x01
0000080e: DUP1
0000080f: SSTORE
00000810: PUSH1 0x40
00000812: MLOAD
00000813: SWAP1
00000814: DUP2
00000815: MSTORE
00000816: RETURN
00000817: JUMPDEST
00000818: PUSH4 0x4e487b71
0000081d: PUSH1 0xe0
0000081f: SHL
00000820: PUSH1 0x00
00000822: MSTORE
00000823: PUSH1 0x21
00000825: PUSH1 0x04
00000827: MSTORE
00000828: PUSH1 0x24
0000082a: PUSH1 0x00
0000082c: REVERT
0000082d: JUMPDEST
0000082e: PUSH4 0x162908e3
00000833: PUSH1 0xe1
00000835: SHL
00000836: PUSH1 0x00
00000838: MSTORE
00000839: PUSH1 0x04
0000083b: PUSH1 0x00
0000083d: REVERT
0000083e: JUMPDEST
0000083f: CALLVALUE
00000840: PUSH2 0x082d
00000843: JUMPI
00000844: DUP7
00000845: PUSH2 0x0851
00000848: SWAP2
00000849: ADDRESS
0000084a: SWAP1
0000084b: CALLER
0000084c: SWAP1
0000084d: PUSH2 0x2ccf
00000850: JUMP
00000851: JUMPDEST
00000852: PUSH2 0x070b
00000855: JUMP
00000856: JUMPDEST
00000857: PUSH4 0x056f1a2f
0000085c: PUSH1 0xe4
0000085e: SHL
0000085f: PUSH1 0x00
00000861: MSTORE
00000862: PUSH1 0x04
00000864: PUSH1 0x00
00000866: REVERT
00000867: JUMPDEST
00000868: PUSH4 0x3d23e4d1
0000086d: PUSH1 0xe1
0000086f: SHL
00000870: PUSH1 0x00
00000872: MSTORE
00000873: PUSH1 0x04
00000875: PUSH1 0x00
00000877: REVERT
00000878: JUMPDEST
00000879: PUSH4 0x8562eb45
0000087e: PUSH1 0xe0
00000880: SHL
00000881: PUSH1 0x00
00000883: MSTORE
00000884: PUSH1 0x04
00000886: PUSH1 0x00
00000888: REVERT
00000889: JUMPDEST
0000088a: PUSH4 0x4e469669
0000088f: PUSH1 0xe1
00000891: SHL
00000892: PUSH1 0x00
00000894: MSTORE
00000895: PUSH1 0x04
00000897: PUSH1 0x00
00000899: REVERT
0000089a: JUMPDEST
0000089b: PUSH1 0x01
0000089d: DUP3
0000089e: SUB
0000089f: PUSH2 0x08bc
000008a2: JUMPI
000008a3: PUSH1 0x20
000008a5: DUP7
000008a6: SUB
000008a7: ISZERO
000008a8: PUSH2 0x06db
000008ab: JUMPI
000008ac: PUSH4 0x4e469669
000008b1: PUSH1 0xe1
000008b3: SHL
000008b4: PUSH1 0x00
000008b6: MSTORE
000008b7: PUSH1 0x04
000008b9: PUSH1 0x00
000008bb: REVERT
000008bc: JUMPDEST
000008bd: PUSH1 0x00
000008bf: SWAP9
000008c0: POP
000008c1: PUSH1 0x02
000008c3: DUP3
000008c4: SUB
000008c5: PUSH2 0x08d9
000008c8: JUMPI
000008c9: PUSH1 0x06
000008cb: DUP7
000008cc: LT
000008cd: DUP1
000008ce: ISZERO
000008cf: PUSH2 0x08e8
000008d2: JUMPI
000008d3: JUMPDEST
000008d4: ISZERO
000008d5: PUSH2 0x06db
000008d8: JUMPI
000008d9: JUMPDEST
000008da: PUSH4 0x4e469669
000008df: PUSH1 0xe1
000008e1: SHL
000008e2: DUP10
000008e3: MSTORE
000008e4: PUSH1 0x04
000008e6: DUP10
000008e7: REVERT
000008e8: JUMPDEST
000008e9: POP
000008ea: DUP6
000008eb: PUSH1 0x03
000008ed: GT
000008ee: PUSH2 0x090b
000008f1: JUMPI
000008f2: DUP8
000008f3: CALLDATALOAD
000008f4: PUSH1 0x01
000008f6: PUSH1 0x01
000008f8: PUSH1 0xe8
000008fa: SHL
000008fb: SUB
000008fc: NOT
000008fd: AND
000008fe: PUSH3 0x6c6273
00000902: PUSH1 0xe8
00000904: SHL
00000905: EQ
00000906: ISZERO
00000907: PUSH2 0x08d3
0000090a: JUMP
0000090b: JUMPDEST
0000090c: DUP9
0000090d: DUP1
0000090e: REVERT
0000090f: JUMPDEST
00000910: PUSH4 0xab35696f
00000915: PUSH1 0xe0
00000917: SHL
00000918: PUSH1 0x00
0000091a: MSTORE
0000091b: PUSH1 0x04
0000091d: PUSH1 0x00
0000091f: REVERT
00000920: JUMPDEST
00000921: CALLVALUE
00000922: PUSH2 0x04fd
00000925: JUMPI
00000926: PUSH1 0x20
00000928: CALLDATASIZE
00000929: PUSH1 0x03
0000092b: NOT
0000092c: ADD
0000092d: SLT
0000092e: PUSH2 0x04fd
00000931: JUMPI
00000932: PUSH1 0x20
00000934: PUSH2 0x093e
00000937: PUSH1 0x04
00000939: CALLDATALOAD
0000093a: PUSH2 0x2c2c
0000093d: JUMP
0000093e: JUMPDEST
0000093f: PUSH1 0x40
00000941: MLOAD
00000942: SWAP1
00000943: DUP2
00000944: MSTORE
00000945: RETURN
00000946: JUMPDEST
00000947: CALLVALUE
00000948: PUSH2 0x04fd
0000094b: JUMPI
0000094c: PUSH1 0xc0
0000094e: CALLDATASIZE
0000094f: PUSH1 0x03
00000951: NOT
00000952: ADD
00000953: SLT
00000954: PUSH2 0x04fd
00000957: JUMPI
00000958: PUSH2 0x095f
0000095b: PUSH2 0x27fe
0000095e: JUMP
0000095f: JUMPDEST
00000960: PUSH2 0x0967
00000963: PUSH2 0x282a
00000966: JUMP
00000967: JUMPDEST
00000968: SWAP1
00000969: PUSH1 0xa4
0000096b: CALLDATALOAD
0000096c: SWAP1
0000096d: PUSH1 0x01
0000096f: PUSH1 0x01
00000971: PUSH1 0x40
00000973: SHL
00000974: SUB
00000975: DUP3
00000976: GT
00000977: PUSH2 0x04fd
0000097a: JUMPI
0000097b: PUSH1 0x20
0000097d: SWAP3
0000097e: PUSH2 0x098e
00000981: PUSH2 0x093e
00000984: SWAP4
00000985: CALLDATASIZE
00000986: SWAP1
00000987: PUSH1 0x04
00000989: ADD
0000098a: PUSH2 0x2909
0000098d: JUMP
0000098e: JUMPDEST
0000098f: SWAP3
00000990: SWAP1
00000991: SWAP2
00000992: PUSH1 0x84
00000994: CALLDATALOAD
00000995: SWAP2
00000996: PUSH1 0x44
00000998: CALLDATALOAD
00000999: SWAP1
0000099a: PUSH1 0x24
0000099c: CALLDATALOAD
0000099d: SWAP1
0000099e: PUSH2 0x2b4f
000009a1: JUMP
000009a2: JUMPDEST
000009a3: CALLVALUE
000009a4: PUSH2 0x04fd
000009a7: JUMPI
000009a8: PUSH1 0x00
000009aa: CALLDATASIZE
000009ab: PUSH1 0x03
000009ad: NOT
000009ae: ADD
000009af: SLT
000009b0: PUSH2 0x04fd
000009b3: JUMPI
000009b4: PUSH1 0x20
000009b6: PUSH1 0x40
000009b8: MLOAD
000009b9: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
000009ce: DUP2
000009cf: MSTORE
000009d0: RETURN
000009d1: JUMPDEST
000009d2: CALLVALUE
000009d3: PUSH2 0x04fd
000009d6: JUMPI
000009d7: PUSH1 0x20
000009d9: CALLDATASIZE
000009da: PUSH1 0x03
000009dc: NOT
000009dd: ADD
000009de: SLT
000009df: PUSH2 0x04fd
000009e2: JUMPI
000009e3: PUSH1 0x04
000009e5: CALLDATALOAD
000009e6: PUSH1 0x00
000009e8: MSTORE
000009e9: PUSH1 0x12
000009eb: PUSH1 0x20
000009ed: MSTORE
000009ee: PUSH1 0x20
000009f0: PUSH1 0x40
000009f2: PUSH1 0x00
000009f4: KECCAK256
000009f5: SLOAD
000009f6: PUSH1 0x40
000009f8: MLOAD
000009f9: SWAP1
000009fa: DUP2
000009fb: MSTORE
000009fc: RETURN
000009fd: JUMPDEST
000009fe: CALLVALUE
000009ff: PUSH2 0x04fd
00000a02: JUMPI
00000a03: PUSH1 0x00
00000a05: CALLDATASIZE
00000a06: PUSH1 0x03
00000a08: NOT
00000a09: ADD
00000a0a: SLT
00000a0b: PUSH2 0x04fd
00000a0e: JUMPI
00000a0f: PUSH1 0x20
00000a11: PUSH1 0x15
00000a13: SLOAD
00000a14: PUSH1 0x40
00000a16: MLOAD
00000a17: SWAP1
00000a18: DUP2
00000a19: MSTORE
00000a1a: RETURN
00000a1b: JUMPDEST
00000a1c: CALLVALUE
00000a1d: PUSH2 0x04fd
00000a20: JUMPI
00000a21: PUSH2 0x0a41
00000a24: PUSH2 0x0a35
00000a27: PUSH2 0x0a2f
00000a2a: CALLDATASIZE
00000a2b: PUSH2 0x2966
00000a2e: JUMP
00000a2f: JUMPDEST
00000a30: SWAP1
00000a31: PUSH2 0x339a
00000a34: JUMP
00000a35: JUMPDEST
00000a36: PUSH1 0x40
00000a38: MLOAD
00000a39: SWAP2
00000a3a: DUP3
00000a3b: SWAP2
00000a3c: DUP3
00000a3d: PUSH2 0x2897
00000a40: JUMP
00000a41: JUMPDEST
00000a42: SUB
00000a43: SWAP1
00000a44: RETURN
00000a45: JUMPDEST
00000a46: CALLVALUE
00000a47: PUSH2 0x04fd
00000a4a: JUMPI
00000a4b: PUSH1 0x20
00000a4d: CALLDATASIZE
00000a4e: PUSH1 0x03
00000a50: NOT
00000a51: ADD
00000a52: SLT
00000a53: PUSH2 0x04fd
00000a56: JUMPI
00000a57: PUSH2 0x0a7b
00000a5a: PUSH2 0x0a61
00000a5d: PUSH2 0x27fe
00000a60: JUMP
00000a61: JUMPDEST
00000a62: PUSH1 0x01
00000a64: PUSH1 0x01
00000a66: PUSH1 0xa0
00000a68: SHL
00000a69: SUB
00000a6a: AND
00000a6b: PUSH1 0x00
00000a6d: SWAP1
00000a6e: DUP2
00000a6f: MSTORE
00000a70: PUSH1 0x05
00000a72: PUSH1 0x20
00000a74: MSTORE
00000a75: PUSH1 0x40
00000a77: SWAP1
00000a78: KECCAK256
00000a79: SWAP1
00000a7a: JUMP
00000a7b: JUMPDEST
00000a7c: DUP1
00000a7d: SLOAD
00000a7e: PUSH2 0x0a86
00000a81: DUP2
00000a82: PUSH2 0x2eab
00000a85: JUMP
00000a86: JUMPDEST
00000a87: SWAP2
00000a88: PUSH2 0x0a94
00000a8b: PUSH1 0x40
00000a8d: MLOAD
00000a8e: SWAP4
00000a8f: DUP5
00000a90: PUSH2 0x2876
00000a93: JUMP
00000a94: JUMPDEST
00000a95: DUP2
00000a96: DUP4
00000a97: MSTORE
00000a98: PUSH1 0x20
00000a9a: DUP4
00000a9b: ADD
00000a9c: SWAP1
00000a9d: PUSH1 0x00
00000a9f: MSTORE
00000aa0: PUSH1 0x20
00000aa2: PUSH1 0x00
00000aa4: KECCAK256
00000aa5: PUSH1 0x00
00000aa7: SWAP2
00000aa8: JUMPDEST
00000aa9: DUP4
00000aaa: DUP4
00000aab: LT
00000aac: PUSH2 0x0abd
00000aaf: JUMPI
00000ab0: PUSH1 0x40
00000ab2: MLOAD
00000ab3: DUP1
00000ab4: PUSH2 0x0a41
00000ab7: DUP8
00000ab8: DUP3
00000ab9: PUSH2 0x297c
00000abc: JUMP
00000abd: JUMPDEST
00000abe: PUSH1 0x05
00000ac0: PUSH1 0x20
00000ac2: PUSH1 0x01
00000ac4: SWAP3
00000ac5: PUSH1 0x40
00000ac7: MLOAD
00000ac8: PUSH2 0x0ad0
00000acb: DUP2
00000acc: PUSH2 0x285b
00000acf: JUMP
00000ad0: JUMPDEST
00000ad1: PUSH2 0x0ade
00000ad4: PUSH1 0xff
00000ad6: DUP8
00000ad7: SLOAD
00000ad8: AND
00000ad9: DUP3
00000ada: PUSH2 0x2df7
00000add: JUMP
00000ade: JUMPDEST
00000adf: DUP5
00000ae0: DUP7
00000ae1: ADD
00000ae2: SLOAD
00000ae3: DUP4
00000ae4: DUP3
00000ae5: ADD
00000ae6: MSTORE
00000ae7: PUSH1 0x02
00000ae9: DUP7
00000aea: ADD
00000aeb: SLOAD
00000aec: PUSH1 0x40
00000aee: DUP3
00000aef: ADD
00000af0: MSTORE
00000af1: PUSH1 0x03
00000af3: DUP7
00000af4: ADD
00000af5: SLOAD
00000af6: PUSH1 0x60
00000af8: DUP3
00000af9: ADD
00000afa: MSTORE
00000afb: PUSH1 0x04
00000afd: DUP7
00000afe: ADD
00000aff: SLOAD
00000b00: PUSH1 0x80
00000b02: DUP3
00000b03: ADD
00000b04: MSTORE
00000b05: DUP2
00000b06: MSTORE
00000b07: ADD
00000b08: SWAP3
00000b09: ADD
00000b0a: SWAP3
00000b0b: ADD
00000b0c: SWAP2
00000b0d: SWAP1
00000b0e: PUSH2 0x0aa8
00000b11: JUMP
00000b12: JUMPDEST
00000b13: CALLVALUE
00000b14: PUSH2 0x04fd
00000b17: JUMPI
00000b18: PUSH1 0x20
00000b1a: CALLDATASIZE
00000b1b: PUSH1 0x03
00000b1d: NOT
00000b1e: ADD
00000b1f: SLT
00000b20: PUSH2 0x04fd
00000b23: JUMPI
00000b24: PUSH1 0x04
00000b26: CALLDATALOAD
00000b27: PUSH1 0x00
00000b29: MSTORE
00000b2a: PUSH1 0x16
00000b2c: PUSH1 0x20
00000b2e: MSTORE
00000b2f: PUSH1 0x20
00000b31: PUSH1 0x40
00000b33: PUSH1 0x00
00000b35: KECCAK256
00000b36: SLOAD
00000b37: PUSH1 0x40
00000b39: MLOAD
00000b3a: SWAP1
00000b3b: DUP2
00000b3c: MSTORE
00000b3d: RETURN
00000b3e: JUMPDEST
00000b3f: CALLVALUE
00000b40: PUSH2 0x04fd
00000b43: JUMPI
00000b44: PUSH1 0x20
00000b46: CALLDATASIZE
00000b47: PUSH1 0x03
00000b49: NOT
00000b4a: ADD
00000b4b: SLT
00000b4c: PUSH2 0x04fd
00000b4f: JUMPI
00000b50: PUSH2 0x0b5a
00000b53: PUSH1 0x04
00000b55: CALLDATALOAD
00000b56: PUSH2 0x2af2
00000b59: JUMP
00000b5a: JUMPDEST
00000b5b: STOP
00000b5c: JUMPDEST
00000b5d: CALLVALUE
00000b5e: PUSH2 0x04fd
00000b61: JUMPI
00000b62: PUSH1 0x80
00000b64: CALLDATASIZE
00000b65: PUSH1 0x03
00000b67: NOT
00000b68: ADD
00000b69: SLT
00000b6a: PUSH2 0x04fd
00000b6d: JUMPI
00000b6e: PUSH2 0x0b75
00000b71: PUSH2 0x27fe
00000b74: JUMP
00000b75: JUMPDEST
00000b76: PUSH1 0x64
00000b78: CALLDATALOAD
00000b79: PUSH1 0x01
00000b7b: PUSH1 0x01
00000b7d: PUSH1 0x40
00000b7f: SHL
00000b80: SUB
00000b81: DUP2
00000b82: GT
00000b83: PUSH2 0x04fd
00000b86: JUMPI
00000b87: PUSH1 0x20
00000b89: SWAP2
00000b8a: PUSH2 0x0b9a
00000b8d: PUSH2 0x093e
00000b90: SWAP3
00000b91: CALLDATASIZE
00000b92: SWAP1
00000b93: PUSH1 0x04
00000b95: ADD
00000b96: PUSH2 0x2909
00000b99: JUMP
00000b9a: JUMPDEST
00000b9b: SWAP2
00000b9c: PUSH2 0x0bd7
00000b9f: PUSH2 0x0c68
00000ba2: PUSH2 0x0ba9
00000ba5: PUSH2 0x30ca
00000ba8: JUMP
00000ba9: JUMPDEST
00000baa: DUP8
00000bab: DUP2
00000bac: MLOAD
00000bad: SWAP2
00000bae: ADD
00000baf: KECCAK256
00000bb0: PUSH2 0x0bd7
00000bb3: PUSH2 0x0be5
00000bb6: PUSH2 0x0bbd
00000bb9: PUSH2 0x30f3
00000bbc: JUMP
00000bbd: JUMPDEST
00000bbe: DUP11
00000bbf: DUP2
00000bc0: MLOAD
00000bc1: SWAP2
00000bc2: ADD
00000bc3: KECCAK256
00000bc4: PUSH1 0x40
00000bc6: MLOAD
00000bc7: SWAP3
00000bc8: DUP4
00000bc9: SWAP2
00000bca: DUP13
00000bcb: DUP4
00000bcc: ADD
00000bcd: SWAP6
00000bce: ADDRESS
00000bcf: SWAP2
00000bd0: CHAINID
00000bd1: SWAP2
00000bd2: DUP9
00000bd3: PUSH2 0x3112
00000bd6: JUMP
00000bd7: JUMPDEST
00000bd8: SUB
00000bd9: PUSH1 0x1f
00000bdb: NOT
00000bdc: DUP2
00000bdd: ADD
00000bde: DUP4
00000bdf: MSTORE
00000be0: DUP3
00000be1: PUSH2 0x2876
00000be4: JUMP
00000be5: JUMPDEST
00000be6: MLOAD
00000be7: SWAP1
00000be8: KECCAK256
00000be9: SWAP3
00000bea: PUSH1 0x40
00000bec: MLOAD
00000bed: DUP9
00000bee: DUP2
00000bef: ADD
00000bf0: SWAP2
00000bf1: PUSH32 0xd76545eeb181baadb326d5b61cdb33500dc2ecff6763f3f65efe91693f4ab2c4
00000c12: DUP4
00000c13: MSTORE
00000c14: PUSH1 0x01
00000c16: DUP1
00000c17: PUSH1 0xa0
00000c19: SHL
00000c1a: SUB
00000c1b: AND
00000c1c: PUSH1 0x40
00000c1e: DUP3
00000c1f: ADD
00000c20: MSTORE
00000c21: PUSH1 0x24
00000c23: CALLDATALOAD
00000c24: PUSH1 0x60
00000c26: DUP3
00000c27: ADD
00000c28: MSTORE
00000c29: PUSH1 0x44
00000c2b: CALLDATALOAD
00000c2c: PUSH1 0x80
00000c2e: DUP3
00000c2f: ADD
00000c30: MSTORE
00000c31: PUSH1 0x80
00000c33: DUP2
00000c34: MSTORE
00000c35: PUSH2 0x0c3f
00000c38: PUSH1 0xa0
00000c3a: DUP3
00000c3b: PUSH2 0x2876
00000c3e: JUMP
00000c3f: JUMPDEST
00000c40: MLOAD
00000c41: SWAP1
00000c42: KECCAK256
00000c43: PUSH1 0x40
00000c45: MLOAD
00000c46: SWAP3
00000c47: DUP4
00000c48: SWAP2
00000c49: DUP10
00000c4a: DUP4
00000c4b: ADD
00000c4c: SWAP6
00000c4d: DUP7
00000c4e: SWAP1
00000c4f: SWAP2
00000c50: PUSH1 0x42
00000c52: SWAP3
00000c53: PUSH2 0x1901
00000c56: PUSH1 0xf0
00000c58: SHL
00000c59: DUP4
00000c5a: MSTORE
00000c5b: PUSH1 0x02
00000c5d: DUP4
00000c5e: ADD
00000c5f: MSTORE
00000c60: PUSH1 0x22
00000c62: DUP3
00000c63: ADD
00000c64: MSTORE
00000c65: ADD
00000c66: SWAP1
00000c67: JUMP
00000c68: JUMPDEST
00000c69: MLOAD
00000c6a: SWAP1
00000c6b: KECCAK256
00000c6c: PUSH2 0x31d1
00000c6f: JUMP
00000c70: JUMPDEST
00000c71: CALLVALUE
00000c72: PUSH2 0x04fd
00000c75: JUMPI
00000c76: PUSH1 0x20
00000c78: CALLDATASIZE
00000c79: PUSH1 0x03
00000c7b: NOT
00000c7c: ADD
00000c7d: SLT
00000c7e: PUSH2 0x04fd
00000c81: JUMPI
00000c82: PUSH1 0x04
00000c84: CALLDATALOAD
00000c85: PUSH2 0x0c8c
00000c88: PUSH2 0x2d1a
00000c8b: JUMP
00000c8c: JUMPDEST
00000c8d: DUP1
00000c8e: ISZERO
00000c8f: PUSH2 0x0ce4
00000c92: JUMPI
00000c93: PUSH1 0x0a
00000c95: DUP2
00000c96: GT
00000c97: PUSH2 0x0cd3
00000c9a: JUMPI
00000c9b: PUSH1 0x40
00000c9d: PUSH32 0x149153f58b4da003a8cfd4523709a202402182cb5aa335046911277a1be6eede
00000cbe: SWAP2
00000cbf: PUSH1 0x06
00000cc1: SLOAD
00000cc2: SWAP1
00000cc3: DUP1
00000cc4: PUSH1 0x06
00000cc6: SSTORE
00000cc7: DUP3
00000cc8: MLOAD
00000cc9: SWAP2
00000cca: DUP3
00000ccb: MSTORE
00000ccc: PUSH1 0x20
00000cce: DUP3
00000ccf: ADD
00000cd0: MSTORE
00000cd1: LOG1
00000cd2: STOP
00000cd3: JUMPDEST
00000cd4: PUSH4 0xe56d58cf
00000cd9: PUSH1 0xe0
00000cdb: SHL
00000cdc: PUSH1 0x00
00000cde: MSTORE
00000cdf: PUSH1 0x04
00000ce1: PUSH1 0x00
00000ce3: REVERT
00000ce4: JUMPDEST
00000ce5: PUSH4 0xaabd5a09
00000cea: PUSH1 0xe0
00000cec: SHL
00000ced: PUSH1 0x00
00000cef: MSTORE
00000cf0: PUSH1 0x04
00000cf2: PUSH1 0x00
00000cf4: REVERT
00000cf5: JUMPDEST
00000cf6: CALLVALUE
00000cf7: PUSH2 0x04fd
00000cfa: JUMPI
00000cfb: PUSH1 0x40
00000cfd: CALLDATASIZE
00000cfe: PUSH1 0x03
00000d00: NOT
00000d01: ADD
00000d02: SLT
00000d03: PUSH2 0x04fd
00000d06: JUMPI
00000d07: PUSH1 0x04
00000d09: CALLDATALOAD
00000d0a: PUSH2 0x0d11
00000d0d: PUSH2 0x2814
00000d10: JUMP
00000d11: JUMPDEST
00000d12: PUSH2 0x0d19
00000d15: PUSH2 0x2d1a
00000d18: JUMP
00000d19: JUMPDEST
00000d1a: PUSH1 0x01
00000d1c: PUSH1 0x01
00000d1e: PUSH1 0xa0
00000d20: SHL
00000d21: SUB
00000d22: AND
00000d23: DUP1
00000d24: ISZERO
00000d25: PUSH2 0x0e23
00000d28: JUMPI
00000d29: PUSH1 0x00
00000d2b: DUP3
00000d2c: DUP2
00000d2d: MSTORE
00000d2e: PUSH1 0x0e
00000d30: PUSH1 0x20
00000d32: MSTORE
00000d33: PUSH1 0x40
00000d35: SWAP1
00000d36: KECCAK256
00000d37: SLOAD
00000d38: PUSH1 0x01
00000d3a: PUSH1 0x01
00000d3c: PUSH1 0xa0
00000d3e: SHL
00000d3f: SUB
00000d40: AND
00000d41: DUP1
00000d42: PUSH2 0x0d9c
00000d45: JUMPI
00000d46: JUMPDEST
00000d47: PUSH32 0x3791ce4c220249a300c5eb715a5ba759a62dfd1b4bb8a608f4b4085388c5105a
00000d68: PUSH1 0x40
00000d6a: DUP5
00000d6b: DUP5
00000d6c: DUP2
00000d6d: PUSH1 0x00
00000d6f: MSTORE
00000d70: PUSH1 0x0e
00000d72: PUSH1 0x20
00000d74: MSTORE
00000d75: DUP3
00000d76: PUSH1 0x00
00000d78: KECCAK256
00000d79: DUP2
00000d7a: PUSH12 0xffffffffffffffffffffffff
00000d87: PUSH1 0xa0
00000d89: SHL
00000d8a: DUP3
00000d8b: SLOAD
00000d8c: AND
00000d8d: OR
00000d8e: SWAP1
00000d8f: SSTORE
00000d90: DUP3
00000d91: MLOAD
00000d92: SWAP2
00000d93: DUP3
00000d94: MSTORE
00000d95: PUSH1 0x20
00000d97: DUP3
00000d98: ADD
00000d99: MSTORE
00000d9a: LOG1
00000d9b: STOP
00000d9c: JUMPDEST
00000d9d: PUSH1 0x20
00000d9f: PUSH1 0x24
00000da1: SWAP2
00000da2: PUSH1 0x40
00000da4: MLOAD
00000da5: SWAP3
00000da6: DUP4
00000da7: DUP1
00000da8: SWAP3
00000da9: PUSH4 0x70a08231
00000dae: PUSH1 0xe0
00000db0: SHL
00000db1: DUP3
00000db2: MSTORE
00000db3: ADDRESS
00000db4: PUSH1 0x04
00000db6: DUP4
00000db7: ADD
00000db8: MSTORE
00000db9: GAS
00000dba: STATICCALL
00000dbb: SWAP1
00000dbc: DUP2
00000dbd: ISZERO
00000dbe: PUSH2 0x0e17
00000dc1: JUMPI
00000dc2: PUSH1 0x00
00000dc4: SWAP2
00000dc5: PUSH2 0x0de5
00000dc8: JUMPI
00000dc9: JUMPDEST
00000dca: POP
00000dcb: PUSH2 0x0dd4
00000dce: JUMPI
00000dcf: DUP3
00000dd0: PUSH2 0x0d46
00000dd3: JUMP
00000dd4: JUMPDEST
00000dd5: PUSH4 0x5beb6c0f
00000dda: PUSH1 0xe1
00000ddc: SHL
00000ddd: PUSH1 0x00
00000ddf: MSTORE
00000de0: PUSH1 0x04
00000de2: PUSH1 0x00
00000de4: REVERT
00000de5: JUMPDEST
00000de6: SWAP1
00000de7: POP
00000de8: PUSH1 0x20
00000dea: DUP2
00000deb: RETURNDATASIZE
00000dec: PUSH1 0x20
00000dee: GT
00000def: PUSH2 0x0e0f
00000df2: JUMPI
00000df3: JUMPDEST
00000df4: DUP2
00000df5: PUSH2 0x0e00
00000df8: PUSH1 0x20
00000dfa: SWAP4
00000dfb: DUP4
00000dfc: PUSH2 0x2876
00000dff: JUMP
00000e00: JUMPDEST
00000e01: DUP2
00000e02: ADD
00000e03: SUB
00000e04: SLT
00000e05: PUSH2 0x04fd
00000e08: JUMPI
00000e09: MLOAD
00000e0a: DUP4
00000e0b: PUSH2 0x0dc9
00000e0e: JUMP
00000e0f: JUMPDEST
00000e10: RETURNDATASIZE
00000e11: SWAP2
00000e12: POP
00000e13: PUSH2 0x0df3
00000e16: JUMP
00000e17: JUMPDEST
00000e18: PUSH1 0x40
00000e1a: MLOAD
00000e1b: RETURNDATASIZE
00000e1c: PUSH1 0x00
00000e1e: DUP3
00000e1f: RETURNDATACOPY
00000e20: RETURNDATASIZE
00000e21: SWAP1
00000e22: REVERT
00000e23: JUMPDEST
00000e24: PUSH4 0x0f580583
00000e29: PUSH1 0xe1
00000e2b: SHL
00000e2c: PUSH1 0x00
00000e2e: MSTORE
00000e2f: PUSH1 0x04
00000e31: PUSH1 0x00
00000e33: REVERT
00000e34: JUMPDEST
00000e35: CALLVALUE
00000e36: PUSH2 0x04fd
00000e39: JUMPI
00000e3a: PUSH1 0x60
00000e3c: CALLDATASIZE
00000e3d: PUSH1 0x03
00000e3f: NOT
00000e40: ADD
00000e41: SLT
00000e42: PUSH2 0x04fd
00000e45: JUMPI
00000e46: PUSH2 0x0a41
00000e49: PUSH2 0x0e60
00000e4c: PUSH2 0x0e53
00000e4f: PUSH2 0x27fe
00000e52: JUMP
00000e53: JUMPDEST
00000e54: PUSH1 0x44
00000e56: CALLDATALOAD
00000e57: SWAP1
00000e58: PUSH1 0x24
00000e5a: CALLDATALOAD
00000e5b: SWAP1
00000e5c: PUSH2 0x2ed6
00000e5f: JUMP
00000e60: JUMPDEST
00000e61: PUSH1 0x40
00000e63: MLOAD
00000e64: SWAP2
00000e65: DUP3
00000e66: SWAP2
00000e67: DUP3
00000e68: PUSH2 0x297c
00000e6b: JUMP
00000e6c: JUMPDEST
00000e6d: CALLVALUE
00000e6e: PUSH2 0x04fd
00000e71: JUMPI
00000e72: PUSH1 0x00
00000e74: CALLDATASIZE
00000e75: PUSH1 0x03
00000e77: NOT
00000e78: ADD
00000e79: SLT
00000e7a: PUSH2 0x04fd
00000e7d: JUMPI
00000e7e: PUSH1 0x20
00000e80: PUSH1 0x06
00000e82: SLOAD
00000e83: PUSH1 0x40
00000e85: MLOAD
00000e86: SWAP1
00000e87: DUP2
00000e88: MSTORE
00000e89: RETURN
00000e8a: JUMPDEST
00000e8b: CALLVALUE
00000e8c: PUSH2 0x04fd
00000e8f: JUMPI
00000e90: PUSH2 0x0e98
00000e93: CALLDATASIZE
00000e94: PUSH2 0x28da
00000e97: JUMP
00000e98: JUMPDEST
00000e99: PUSH2 0x0ea0
00000e9c: PUSH2 0x2d1a
00000e9f: JUMP
00000ea0: JUMPDEST
00000ea1: PUSH1 0x01
00000ea3: PUSH1 0x01
00000ea5: PUSH1 0xa0
00000ea7: SHL
00000ea8: SUB
00000ea9: DUP3
00000eaa: AND
00000eab: DUP1
00000eac: ISZERO
00000ead: PUSH2 0x1080
00000eb0: JUMPI
00000eb1: DUP2
00000eb2: ISZERO
00000eb3: PUSH2 0x0f6b
00000eb6: JUMPI
00000eb7: POP
00000eb8: PUSH1 0x01
00000eba: PUSH1 0x01
00000ebc: PUSH1 0xa0
00000ebe: SHL
00000ebf: SUB
00000ec0: DUP3
00000ec1: AND
00000ec2: PUSH1 0x00
00000ec4: SWAP1
00000ec5: DUP2
00000ec6: MSTORE
00000ec7: PUSH1 0x0a
00000ec9: PUSH1 0x20
00000ecb: MSTORE
00000ecc: PUSH1 0x40
00000ece: SWAP1
00000ecf: KECCAK256
00000ed0: SLOAD
00000ed1: PUSH1 0xff
00000ed3: AND
00000ed4: ISZERO
00000ed5: PUSH2 0x0f0c
00000ed8: JUMPI
00000ed9: JUMPDEST
00000eda: PUSH1 0x00
00000edc: DUP1
00000edd: MLOAD
00000ede: PUSH1 0x20
00000ee0: PUSH2 0x34a2
00000ee3: DUP4
00000ee4: CODECOPY
00000ee5: DUP2
00000ee6: MLOAD
00000ee7: SWAP2
00000ee8: MSTORE
00000ee9: SWAP2
00000eea: PUSH1 0x40
00000eec: DUP1
00000eed: MLOAD
00000eee: PUSH1 0x01
00000ef0: PUSH1 0x01
00000ef2: PUSH1 0xa0
00000ef4: SHL
00000ef5: SUB
00000ef6: SWAP1
00000ef7: SWAP3
00000ef8: AND
00000ef9: DUP3
00000efa: MSTORE
00000efb: SWAP2
00000efc: ISZERO
00000efd: ISZERO
00000efe: PUSH1 0x20
00000f00: DUP3
00000f01: ADD
00000f02: MSTORE
00000f03: SWAP1
00000f04: DUP2
00000f05: SWAP1
00000f06: DUP2
00000f07: ADD
00000f08: PUSH2 0x02f8
00000f0b: JUMP
00000f0c: JUMPDEST
00000f0d: PUSH1 0x01
00000f0f: PUSH1 0x01
00000f11: PUSH1 0xa0
00000f13: SHL
00000f14: SUB
00000f15: DUP3
00000f16: AND
00000f17: PUSH1 0x00
00000f19: SWAP1
00000f1a: DUP2
00000f1b: MSTORE
00000f1c: PUSH1 0x0a
00000f1e: PUSH1 0x20
00000f20: MSTORE
00000f21: PUSH1 0x40
00000f23: SWAP1
00000f24: KECCAK256
00000f25: DUP1
00000f26: SLOAD
00000f27: PUSH1 0xff
00000f29: NOT
00000f2a: AND
00000f2b: PUSH1 0x01
00000f2d: OR
00000f2e: SWAP1
00000f2f: SSTORE
00000f30: PUSH1 0x0b
00000f32: SLOAD
00000f33: SWAP2
00000f34: PUSH1 0x01
00000f36: PUSH1 0x40
00000f38: SHL
00000f39: DUP4
00000f3a: LT
00000f3b: ISZERO
00000f3c: PUSH2 0x0380
00000f3f: JUMPI
00000f40: PUSH2 0x0f64
00000f43: DUP2
00000f44: PUSH2 0x0355
00000f47: DUP6
00000f48: PUSH1 0x01
00000f4a: PUSH1 0x00
00000f4c: DUP1
00000f4d: MLOAD
00000f4e: PUSH1 0x20
00000f50: PUSH2 0x34a2
00000f53: DUP4
00000f54: CODECOPY
00000f55: DUP2
00000f56: MLOAD
00000f57: SWAP2
00000f58: MSTORE
00000f59: SWAP8
00000f5a: ADD
00000f5b: PUSH1 0x0b
00000f5d: SSTORE
00000f5e: PUSH1 0x0b
00000f60: PUSH2 0x2dba
00000f63: JUMP
00000f64: JUMPDEST
00000f65: SWAP2
00000f66: POP
00000f67: PUSH2 0x0ed9
00000f6a: JUMP
00000f6b: JUMPDEST
00000f6c: PUSH1 0x01
00000f6e: PUSH1 0x01
00000f70: PUSH1 0xa0
00000f72: SHL
00000f73: SUB
00000f74: DUP4
00000f75: AND
00000f76: PUSH1 0x00
00000f78: SWAP1
00000f79: DUP2
00000f7a: MSTORE
00000f7b: PUSH1 0x0a
00000f7d: PUSH1 0x20
00000f7f: MSTORE
00000f80: PUSH1 0x40
00000f82: SWAP1
00000f83: KECCAK256
00000f84: SLOAD
00000f85: PUSH1 0xff
00000f87: AND
00000f88: PUSH2 0x0fa2
00000f8b: JUMPI
00000f8c: JUMPDEST
00000f8d: POP
00000f8e: PUSH1 0x00
00000f90: DUP1
00000f91: MLOAD
00000f92: PUSH1 0x20
00000f94: PUSH2 0x34a2
00000f97: DUP4
00000f98: CODECOPY
00000f99: DUP2
00000f9a: MLOAD
00000f9b: SWAP2
00000f9c: MSTORE
00000f9d: SWAP2
00000f9e: PUSH2 0x02d9
00000fa1: JUMP
00000fa2: JUMPDEST
00000fa3: PUSH1 0x01
00000fa5: PUSH1 0x01
00000fa7: PUSH1 0xa0
00000fa9: SHL
00000faa: SUB
00000fab: DUP4
00000fac: AND
00000fad: PUSH1 0x00
00000faf: SWAP1
00000fb0: DUP2
00000fb1: MSTORE
00000fb2: PUSH1 0x0a
00000fb4: PUSH1 0x20
00000fb6: MSTORE
00000fb7: PUSH1 0x40
00000fb9: DUP2
00000fba: KECCAK256
00000fbb: DUP1
00000fbc: SLOAD
00000fbd: PUSH1 0xff
00000fbf: NOT
00000fc0: AND
00000fc1: SWAP1
00000fc2: SSTORE
00000fc3: SWAP1
00000fc4: SWAP2
00000fc5: SWAP1
00000fc6: JUMPDEST
00000fc7: PUSH1 0x0b
00000fc9: SLOAD
00000fca: DUP1
00000fcb: DUP3
00000fcc: LT
00000fcd: ISZERO
00000fce: PUSH2 0x1067
00000fd1: JUMPI
00000fd2: DUP4
00000fd3: PUSH2 0x0fdb
00000fd6: DUP4
00000fd7: PUSH2 0x2d84
00000fda: JUMP
00000fdb: JUMPDEST
00000fdc: SWAP1
00000fdd: SLOAD
00000fde: PUSH1 0x03
00000fe0: SWAP2
00000fe1: SWAP1
00000fe2: SWAP2
00000fe3: SHL
00000fe4: SHR
00000fe5: PUSH1 0x01
00000fe7: PUSH1 0x01
00000fe9: PUSH1 0xa0
00000feb: SHL
00000fec: SUB
00000fed: AND
00000fee: EQ
00000fef: PUSH2 0x0ffb
00000ff2: JUMPI
00000ff3: POP
00000ff4: PUSH1 0x01
00000ff6: ADD
00000ff7: PUSH2 0x0fc6
00000ffa: JUMP
00000ffb: JUMPDEST
00000ffc: SWAP2
00000ffd: SWAP3
00000ffe: POP
00000fff: PUSH1 0x00
00001001: NOT
00001002: DUP3
00001003: ADD
00001004: SWAP2
00001005: DUP3
00001006: GT
00001007: PUSH2 0x04bd
0000100a: JUMPI
0000100b: PUSH2 0x0355
0000100e: PUSH2 0x1019
00001011: PUSH2 0x1031
00001014: SWAP4
00001015: PUSH2 0x2d84
00001018: JUMP
00001019: JUMPDEST
0000101a: SWAP1
0000101b: SLOAD
0000101c: PUSH1 0x03
0000101e: SWAP2
0000101f: SWAP1
00001020: SWAP2
00001021: SHL
00001022: SHR
00001023: PUSH1 0x01
00001025: PUSH1 0x01
00001027: PUSH1 0xa0
00001029: SHL
0000102a: SUB
0000102b: AND
0000102c: SWAP2
0000102d: PUSH2 0x2d84
00001030: JUMP
00001031: JUMPDEST
00001032: PUSH1 0x0b
00001034: SLOAD
00001035: SWAP2
00001036: DUP3
00001037: ISZERO
00001038: PUSH2 0x04a7
0000103b: JUMPI
0000103c: PUSH1 0x00
0000103e: DUP1
0000103f: MLOAD
00001040: PUSH1 0x20
00001042: PUSH2 0x34a2
00001045: DUP4
00001046: CODECOPY
00001047: DUP2
00001048: MLOAD
00001049: SWAP2
0000104a: MSTORE
0000104b: SWAP3
0000104c: PUSH1 0x00
0000104e: NOT
0000104f: ADD
00001050: PUSH2 0x105d
00001053: PUSH2 0x0488
00001056: DUP3
00001057: PUSH1 0x0b
00001059: PUSH2 0x2dba
0000105c: JUMP
0000105d: JUMPDEST
0000105e: PUSH1 0x0b
00001060: SSTORE
00001061: JUMPDEST
00001062: SWAP2
00001063: PUSH2 0x0f8c
00001066: JUMP
00001067: JUMPDEST
00001068: POP
00001069: POP
0000106a: SWAP1
0000106b: POP
0000106c: PUSH1 0x00
0000106e: DUP1
0000106f: MLOAD
00001070: PUSH1 0x20
00001072: PUSH2 0x34a2
00001075: DUP4
00001076: CODECOPY
00001077: DUP2
00001078: MLOAD
00001079: SWAP2
0000107a: MSTORE
0000107b: SWAP2
0000107c: PUSH2 0x1061
0000107f: JUMP
00001080: JUMPDEST
00001081: PUSH4 0xfe16c3c5
00001086: PUSH1 0xe0
00001088: SHL
00001089: PUSH1 0x00
0000108b: MSTORE
0000108c: PUSH1 0x04
0000108e: PUSH1 0x00
00001090: REVERT
00001091: JUMPDEST
00001092: CALLVALUE
00001093: PUSH2 0x04fd
00001096: JUMPI
00001097: PUSH1 0x20
00001099: CALLDATASIZE
0000109a: PUSH1 0x03
0000109c: NOT
0000109d: ADD
0000109e: SLT
0000109f: PUSH2 0x04fd
000010a2: JUMPI
000010a3: PUSH1 0x04
000010a5: CALLDATALOAD
000010a6: PUSH1 0xff
000010a8: PUSH1 0x10
000010aa: SLOAD
000010ab: AND
000010ac: PUSH2 0x090f
000010af: JUMPI
000010b0: PUSH2 0x10b7
000010b3: PUSH2 0x2cad
000010b6: JUMP
000010b7: JUMPDEST
000010b8: DUP1
000010b9: ISZERO
000010ba: PUSH2 0x082d
000010bd: JUMPI
000010be: CALLER
000010bf: PUSH1 0x00
000010c1: SWAP1
000010c2: DUP2
000010c3: MSTORE
000010c4: PUSH1 0x02
000010c6: PUSH1 0x20
000010c8: MSTORE
000010c9: PUSH1 0x40
000010cb: SWAP1
000010cc: KECCAK256
000010cd: CHAINID
000010ce: PUSH1 0x00
000010d0: MSTORE
000010d1: PUSH1 0x20
000010d3: MSTORE
000010d4: PUSH2 0x10e0
000010d7: PUSH1 0x40
000010d9: PUSH1 0x00
000010db: KECCAK256
000010dc: PUSH2 0x29ee
000010df: JUMP
000010e0: JUMPDEST
000010e1: PUSH1 0x20
000010e3: DUP2
000010e4: MLOAD
000010e5: SWAP2
000010e6: ADD
000010e7: MLOAD
000010e8: ISZERO
000010e9: PUSH2 0x1271
000010ec: JUMPI
000010ed: DUP2
000010ee: GT
000010ef: PUSH2 0x1260
000010f2: JUMPI
000010f3: CALLER
000010f4: PUSH1 0x00
000010f6: SWAP1
000010f7: DUP2
000010f8: MSTORE
000010f9: PUSH1 0x02
000010fb: PUSH1 0x20
000010fd: MSTORE
000010fe: PUSH1 0x40
00001100: SWAP1
00001101: KECCAK256
00001102: CHAINID
00001103: PUSH1 0x00
00001105: MSTORE
00001106: PUSH1 0x20
00001108: MSTORE
00001109: PUSH1 0xff
0000110b: PUSH1 0x01
0000110d: PUSH1 0x40
0000110f: PUSH1 0x00
00001111: KECCAK256
00001112: ADD
00001113: SLOAD
00001114: AND
00001115: ISZERO
00001116: PUSH2 0x1271
00001119: JUMPI
0000111a: CALLER
0000111b: PUSH1 0x00
0000111d: SWAP1
0000111e: DUP2
0000111f: MSTORE
00001120: PUSH1 0x02
00001122: PUSH1 0x20
00001124: MSTORE
00001125: PUSH1 0x40
00001127: SWAP1
00001128: KECCAK256
00001129: CHAINID
0000112a: PUSH1 0x00
0000112c: MSTORE
0000112d: PUSH1 0x20
0000112f: MSTORE
00001130: DUP1
00001131: PUSH1 0x40
00001133: PUSH1 0x00
00001135: KECCAK256
00001136: SLOAD
00001137: LT
00001138: PUSH2 0x1260
0000113b: JUMPI
0000113c: CALLER
0000113d: PUSH1 0x00
0000113f: SWAP1
00001140: DUP2
00001141: MSTORE
00001142: PUSH1 0x02
00001144: PUSH1 0x20
00001146: MSTORE
00001147: PUSH1 0x40
00001149: DUP2
0000114a: KECCAK256
0000114b: SWAP1
0000114c: SWAP2
0000114d: SWAP1
0000114e: CHAINID
0000114f: DUP4
00001150: MSTORE
00001151: PUSH1 0x20
00001153: MSTORE
00001154: PUSH1 0x40
00001156: DUP3
00001157: KECCAK256
00001158: PUSH2 0x1162
0000115b: DUP3
0000115c: DUP3
0000115d: SLOAD
0000115e: PUSH2 0x2a11
00001161: JUMP
00001162: JUMPDEST
00001163: SWAP1
00001164: SSTORE
00001165: CALLER
00001166: PUSH1 0x00
00001168: SWAP1
00001169: DUP2
0000116a: MSTORE
0000116b: PUSH1 0x05
0000116d: PUSH1 0x20
0000116f: MSTORE
00001170: PUSH1 0x40
00001172: SWAP1
00001173: KECCAK256
00001174: PUSH2 0x11a5
00001177: SWAP1
00001178: PUSH1 0x40
0000117a: MLOAD
0000117b: SWAP1
0000117c: PUSH2 0x1184
0000117f: DUP3
00001180: PUSH2 0x285b
00001183: JUMP
00001184: JUMPDEST
00001185: PUSH1 0x01
00001187: DUP3
00001188: MSTORE
00001189: DUP4
0000118a: PUSH1 0x20
0000118c: DUP4
0000118d: ADD
0000118e: MSTORE
0000118f: CHAINID
00001190: PUSH1 0x40
00001192: DUP4
00001193: ADD
00001194: MSTORE
00001195: TIMESTAMP
00001196: PUSH1 0x60
00001198: DUP4
00001199: ADD
0000119a: MSTORE
0000119b: NUMBER
0000119c: PUSH1 0x80
0000119e: DUP4
0000119f: ADD
000011a0: MSTORE
000011a1: PUSH2 0x2e03
000011a4: JUMP
000011a5: JUMPDEST
000011a6: PUSH1 0x40
000011a8: MLOAD
000011a9: CHAINID
000011aa: DUP2
000011ab: MSTORE
000011ac: DUP2
000011ad: PUSH1 0x20
000011af: DUP3
000011b0: ADD
000011b1: MSTORE
000011b2: PUSH32 0x96cd817c6329656790ef8fba7675405193677d39619571282f5e21f3a98cd059
000011d3: PUSH1 0x40
000011d5: CALLER
000011d6: SWAP3
000011d7: LOG2
000011d8: CHAINID
000011d9: DUP3
000011da: MSTORE
000011db: PUSH1 0x16
000011dd: PUSH1 0x20
000011df: MSTORE
000011e0: PUSH1 0x40
000011e2: DUP3
000011e3: KECCAK256
000011e4: PUSH2 0x11ee
000011e7: DUP3
000011e8: DUP3
000011e9: SLOAD
000011ea: PUSH2 0x2a11
000011ed: JUMP
000011ee: JUMPDEST
000011ef: SWAP1
000011f0: SSTORE
000011f1: CHAINID
000011f2: DUP3
000011f3: MSTORE
000011f4: PUSH1 0x0e
000011f6: PUSH1 0x20
000011f8: MSTORE
000011f9: PUSH1 0x40
000011fb: DUP3
000011fc: KECCAK256
000011fd: SLOAD
000011fe: PUSH1 0x01
00001200: PUSH1 0x01
00001202: PUSH1 0xa0
00001204: SHL
00001205: SUB
00001206: AND
00001207: DUP1
00001208: PUSH2 0x124f
0000120b: JUMPI
0000120c: POP
0000120d: DUP1
0000120e: SELFBALANCE
0000120f: LT
00001210: PUSH2 0x1240
00001213: JUMPI
00001214: DUP2
00001215: DUP1
00001216: DUP1
00001217: DUP1
00001218: SWAP4
00001219: CALLER
0000121a: GAS
0000121b: CALL
0000121c: PUSH2 0x1223
0000121f: PUSH2 0x2ab3
00001222: JUMP
00001223: JUMPDEST
00001224: POP
00001225: ISZERO
00001226: PUSH2 0x1231
00001229: JUMPI
0000122a: JUMPDEST
0000122b: PUSH1 0x01
0000122d: DUP1
0000122e: SSTORE
0000122f: DUP1
00001230: RETURN
00001231: JUMPDEST
00001232: PUSH4 0x0c08bcb9
00001237: PUSH1 0xe2
00001239: SHL
0000123a: DUP2
0000123b: MSTORE
0000123c: PUSH1 0x04
0000123e: SWAP1
0000123f: REVERT
00001240: JUMPDEST
00001241: PUSH4 0xbb55fd27
00001246: PUSH1 0xe0
00001248: SHL
00001249: DUP3
0000124a: MSTORE
0000124b: PUSH1 0x04
0000124d: DUP3
0000124e: REVERT
0000124f: JUMPDEST
00001250: SWAP1
00001251: PUSH2 0x125b
00001254: SWAP2
00001255: CALLER
00001256: SWAP1
00001257: PUSH2 0x2e70
0000125a: JUMP
0000125b: JUMPDEST
0000125c: PUSH2 0x122a
0000125f: JUMP
00001260: JUMPDEST
00001261: PUSH4 0xbb55fd27
00001266: PUSH1 0xe0
00001268: SHL
00001269: PUSH1 0x00
0000126b: MSTORE
0000126c: PUSH1 0x04
0000126e: PUSH1 0x00
00001270: REVERT
00001271: JUMPDEST
00001272: PUSH4 0x6180f03f
00001277: PUSH1 0xe1
00001279: SHL
0000127a: PUSH1 0x00
0000127c: MSTORE
0000127d: PUSH1 0x04
0000127f: PUSH1 0x00
00001281: REVERT
00001282: JUMPDEST
00001283: CALLVALUE
00001284: PUSH2 0x04fd
00001287: JUMPI
00001288: PUSH1 0x40
0000128a: CALLDATASIZE
0000128b: PUSH1 0x03
0000128d: NOT
0000128e: ADD
0000128f: SLT
00001290: PUSH2 0x04fd
00001293: JUMPI
00001294: PUSH2 0x129b
00001297: PUSH2 0x27fe
0000129a: JUMP
0000129b: JUMPDEST
0000129c: PUSH1 0x24
0000129e: CALLDATALOAD
0000129f: PUSH2 0x12a6
000012a2: PUSH2 0x2d1a
000012a5: JUMP
000012a6: JUMPDEST
000012a7: SWAP1
000012a8: PUSH1 0x01
000012aa: PUSH1 0x01
000012ac: PUSH1 0xa0
000012ae: SHL
000012af: SUB
000012b0: AND
000012b1: DUP2
000012b2: DUP2
000012b3: PUSH2 0x1308
000012b6: JUMPI
000012b7: POP
000012b8: POP
000012b9: SELFBALANCE
000012ba: SWAP1
000012bb: DUP2
000012bc: ISZERO
000012bd: PUSH2 0x1260
000012c0: JUMPI
000012c1: DUP1
000012c2: ISZERO
000012c3: PUSH2 0x1301
000012c6: JUMPI
000012c7: JUMPDEST
000012c8: DUP1
000012c9: SWAP2
000012ca: LT
000012cb: PUSH2 0x1260
000012ce: JUMPI
000012cf: PUSH1 0x00
000012d1: DUP1
000012d2: DUP1
000012d3: DUP1
000012d4: SWAP4
000012d5: PUSH1 0x01
000012d7: DUP1
000012d8: PUSH1 0xa0
000012da: SHL
000012db: SUB
000012dc: DUP3
000012dd: SLOAD
000012de: AND
000012df: GAS
000012e0: CALL
000012e1: PUSH2 0x12e8
000012e4: PUSH2 0x2ab3
000012e7: JUMP
000012e8: JUMPDEST
000012e9: POP
000012ea: ISZERO
000012eb: PUSH2 0x12f0
000012ee: JUMPI
000012ef: STOP
000012f0: JUMPDEST
000012f1: PUSH4 0x0c08bcb9
000012f6: PUSH1 0xe2
000012f8: SHL
000012f9: PUSH1 0x00
000012fb: MSTORE
000012fc: PUSH1 0x04
000012fe: PUSH1 0x00
00001300: REVERT
00001301: JUMPDEST
00001302: POP
00001303: DUP1
00001304: PUSH2 0x12c7
00001307: JUMP
00001308: JUMPDEST
00001309: PUSH1 0x40
0000130b: MLOAD
0000130c: PUSH4 0x70a08231
00001311: PUSH1 0xe0
00001313: SHL
00001314: DUP2
00001315: MSTORE
00001316: ADDRESS
00001317: PUSH1 0x04
00001319: DUP3
0000131a: ADD
0000131b: MSTORE
0000131c: SWAP2
0000131d: SWAP3
0000131e: SWAP1
0000131f: PUSH1 0x20
00001321: DUP4
00001322: PUSH1 0x24
00001324: DUP2
00001325: DUP8
00001326: GAS
00001327: STATICCALL
00001328: SWAP3
00001329: DUP4
0000132a: ISZERO
0000132b: PUSH2 0x0e17
0000132e: JUMPI
0000132f: PUSH1 0x00
00001331: SWAP4
00001332: PUSH2 0x1369
00001335: JUMPI
00001336: JUMPDEST
00001337: POP
00001338: DUP3
00001339: ISZERO
0000133a: PUSH2 0x1260
0000133d: JUMPI
0000133e: ISZERO
0000133f: PUSH2 0x1362
00001342: JUMPI
00001343: JUMPDEST
00001344: DUP1
00001345: SWAP2
00001346: LT
00001347: PUSH2 0x1260
0000134a: JUMPI
0000134b: PUSH1 0x00
0000134d: SLOAD
0000134e: PUSH2 0x0b5a
00001351: SWAP3
00001352: PUSH1 0x01
00001354: PUSH1 0x01
00001356: PUSH1 0xa0
00001358: SHL
00001359: SUB
0000135a: SWAP1
0000135b: SWAP2
0000135c: AND
0000135d: SWAP1
0000135e: PUSH2 0x2e70
00001361: JUMP
00001362: JUMPDEST
00001363: POP
00001364: DUP1
00001365: PUSH2 0x1343
00001368: JUMP
00001369: JUMPDEST
0000136a: SWAP1
0000136b: SWAP3
0000136c: PUSH1 0x20
0000136e: DUP3
0000136f: RETURNDATASIZE
00001370: PUSH1 0x20
00001372: GT
00001373: PUSH2 0x1398
00001376: JUMPI
00001377: JUMPDEST
00001378: DUP2
00001379: PUSH2 0x1384
0000137c: PUSH1 0x20
0000137e: SWAP4
0000137f: DUP4
00001380: PUSH2 0x2876
00001383: JUMP
00001384: JUMPDEST
00001385: DUP2
00001386: ADD
00001387: SUB
00001388: SLT
00001389: PUSH2 0x1395
0000138c: JUMPI
0000138d: POP
0000138e: MLOAD
0000138f: SWAP2
00001390: DUP5
00001391: PUSH2 0x1336
00001394: JUMP
00001395: JUMPDEST
00001396: DUP1
00001397: REVERT
00001398: JUMPDEST
00001399: RETURNDATASIZE
0000139a: SWAP2
0000139b: POP
0000139c: PUSH2 0x1377
0000139f: JUMP
000013a0: JUMPDEST
000013a1: CALLVALUE
000013a2: PUSH2 0x04fd
000013a5: JUMPI
000013a6: PUSH1 0x00
000013a8: CALLDATASIZE
000013a9: PUSH1 0x03
000013ab: NOT
000013ac: ADD
000013ad: SLT
000013ae: PUSH2 0x04fd
000013b1: JUMPI
000013b2: PUSH1 0x40
000013b4: MLOAD
000013b5: PUSH1 0x09
000013b7: SLOAD
000013b8: DUP1
000013b9: DUP3
000013ba: MSTORE
000013bb: PUSH1 0x20
000013bd: DUP3
000013be: ADD
000013bf: SWAP1
000013c0: PUSH1 0x09
000013c2: PUSH1 0x00
000013c4: MSTORE
000013c5: PUSH1 0x20
000013c7: PUSH1 0x00
000013c9: KECCAK256
000013ca: SWAP1
000013cb: PUSH1 0x00
000013cd: JUMPDEST
000013ce: DUP2
000013cf: DUP2
000013d0: LT
000013d1: PUSH2 0x13e4
000013d4: JUMPI
000013d5: PUSH2 0x0a41
000013d8: DUP6
000013d9: PUSH2 0x0a35
000013dc: DUP2
000013dd: DUP8
000013de: SUB
000013df: DUP3
000013e0: PUSH2 0x2876
000013e3: JUMP
000013e4: JUMPDEST
000013e5: DUP3
000013e6: SLOAD
000013e7: PUSH1 0x01
000013e9: PUSH1 0x01
000013eb: PUSH1 0xa0
000013ed: SHL
000013ee: SUB
000013ef: AND
000013f0: DUP5
000013f1: MSTORE
000013f2: PUSH1 0x20
000013f4: SWAP1
000013f5: SWAP4
000013f6: ADD
000013f7: SWAP3
000013f8: PUSH1 0x01
000013fa: SWAP3
000013fb: DUP4
000013fc: ADD
000013fd: SWAP3
000013fe: ADD
000013ff: PUSH2 0x13cd
00001402: JUMP
00001403: JUMPDEST
00001404: CALLVALUE
00001405: PUSH2 0x04fd
00001408: JUMPI
00001409: PUSH2 0x1411
0000140c: CALLDATASIZE
0000140d: PUSH2 0x2966
00001410: JUMP
00001411: JUMPDEST
00001412: PUSH2 0x1419
00001415: PUSH2 0x2d1a
00001418: JUMP
00001419: JUMPDEST
0000141a: DUP2
0000141b: ISZERO
0000141c: ISZERO
0000141d: DUP1
0000141e: PUSH2 0x1480
00001421: JUMPI
00001422: JUMPDEST
00001423: DUP1
00001424: PUSH2 0x1477
00001427: JUMPI
00001428: JUMPDEST
00001429: PUSH2 0x1466
0000142c: JUMPI
0000142d: DUP2
0000142e: PUSH1 0x40
00001430: SWAP2
00001431: PUSH32 0x13cc69f8eac02944892b009f29ac94ab0629dc47cddc17cd414650614008a75c
00001452: SWAP4
00001453: PUSH1 0x14
00001455: SSTORE
00001456: DUP1
00001457: PUSH1 0x15
00001459: SSTORE
0000145a: DUP3
0000145b: MLOAD
0000145c: SWAP2
0000145d: DUP3
0000145e: MSTORE
0000145f: PUSH1 0x20
00001461: DUP3
00001462: ADD
00001463: MSTORE
00001464: LOG1
00001465: STOP
00001466: JUMPDEST
00001467: PUSH4 0x4d66d3ef
0000146c: PUSH1 0xe0
0000146e: SHL
0000146f: PUSH1 0x00
00001471: MSTORE
00001472: PUSH1 0x04
00001474: PUSH1 0x00
00001476: REVERT
00001477: JUMPDEST
00001478: POP
00001479: DUP1
0000147a: DUP3
0000147b: GT
0000147c: PUSH2 0x1428
0000147f: JUMP
00001480: JUMPDEST
00001481: POP
00001482: DUP1
00001483: ISZERO
00001484: ISZERO
00001485: PUSH2 0x1422
00001488: JUMP
00001489: JUMPDEST
0000148a: CALLVALUE
0000148b: PUSH2 0x04fd
0000148e: JUMPI
0000148f: PUSH1 0x00
00001491: CALLDATASIZE
00001492: PUSH1 0x03
00001494: NOT
00001495: ADD
00001496: SLT
00001497: PUSH2 0x04fd
0000149a: JUMPI
0000149b: PUSH1 0x00
0000149d: SLOAD
0000149e: PUSH1 0x40
000014a0: MLOAD
000014a1: PUSH1 0x01
000014a3: PUSH1 0x01
000014a5: PUSH1 0xa0
000014a7: SHL
000014a8: SUB
000014a9: SWAP1
000014aa: SWAP2
000014ab: AND
000014ac: DUP2
000014ad: MSTORE
000014ae: PUSH1 0x20
000014b0: SWAP1
000014b1: RETURN
000014b2: JUMPDEST
000014b3: CALLVALUE
000014b4: PUSH2 0x04fd
000014b7: JUMPI
000014b8: PUSH1 0x00
000014ba: CALLDATASIZE
000014bb: PUSH1 0x03
000014bd: NOT
000014be: ADD
000014bf: SLT
000014c0: PUSH2 0x04fd
000014c3: JUMPI
000014c4: PUSH2 0x14cb
000014c7: PUSH2 0x2d1a
000014ca: JUMP
000014cb: JUMPDEST
000014cc: PUSH1 0x10
000014ce: SLOAD
000014cf: PUSH1 0xff
000014d1: DUP2
000014d2: AND
000014d3: PUSH2 0x150d
000014d6: JUMPI
000014d7: PUSH1 0x01
000014d9: SWAP1
000014da: PUSH1 0xff
000014dc: NOT
000014dd: AND
000014de: OR
000014df: PUSH1 0x10
000014e1: SSTORE
000014e2: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
00001503: PUSH1 0x20
00001505: PUSH1 0x40
00001507: MLOAD
00001508: CALLER
00001509: DUP2
0000150a: MSTORE
0000150b: LOG1
0000150c: STOP
0000150d: JUMPDEST
0000150e: PUSH4 0x1785c681
00001513: PUSH1 0xe0
00001515: SHL
00001516: PUSH1 0x00
00001518: MSTORE
00001519: PUSH1 0x04
0000151b: PUSH1 0x00
0000151d: REVERT
0000151e: JUMPDEST
0000151f: CALLVALUE
00001520: PUSH2 0x04fd
00001523: JUMPI
00001524: PUSH1 0x20
00001526: CALLDATASIZE
00001527: PUSH1 0x03
00001529: NOT
0000152a: ADD
0000152b: SLT
0000152c: PUSH2 0x04fd
0000152f: JUMPI
00001530: PUSH1 0x01
00001532: PUSH1 0x01
00001534: PUSH1 0xa0
00001536: SHL
00001537: SUB
00001538: PUSH2 0x153f
0000153b: PUSH2 0x27fe
0000153e: JUMP
0000153f: JUMPDEST
00001540: AND
00001541: PUSH1 0x00
00001543: MSTORE
00001544: PUSH1 0x13
00001546: PUSH1 0x20
00001548: MSTORE
00001549: PUSH1 0x20
0000154b: PUSH1 0x40
0000154d: PUSH1 0x00
0000154f: KECCAK256
00001550: SLOAD
00001551: PUSH1 0x40
00001553: MLOAD
00001554: SWAP1
00001555: DUP2
00001556: MSTORE
00001557: RETURN
00001558: JUMPDEST
00001559: CALLVALUE
0000155a: PUSH2 0x04fd
0000155d: JUMPI
0000155e: PUSH1 0x20
00001560: CALLDATASIZE
00001561: PUSH1 0x03
00001563: NOT
00001564: ADD
00001565: SLT
00001566: PUSH2 0x04fd
00001569: JUMPI
0000156a: PUSH1 0x01
0000156c: PUSH1 0x01
0000156e: PUSH1 0xa0
00001570: SHL
00001571: SUB
00001572: PUSH2 0x1579
00001575: PUSH2 0x27fe
00001578: JUMP
00001579: JUMPDEST
0000157a: AND
0000157b: PUSH1 0x00
0000157d: MSTORE
0000157e: PUSH1 0x08
00001580: PUSH1 0x20
00001582: MSTORE
00001583: PUSH1 0x20
00001585: PUSH1 0xff
00001587: PUSH1 0x40
00001589: PUSH1 0x00
0000158b: KECCAK256
0000158c: SLOAD
0000158d: AND
0000158e: PUSH1 0x40
00001590: MLOAD
00001591: SWAP1
00001592: ISZERO
00001593: ISZERO
00001594: DUP2
00001595: MSTORE
00001596: RETURN
00001597: JUMPDEST
00001598: CALLVALUE
00001599: PUSH2 0x04fd
0000159c: JUMPI
0000159d: PUSH1 0xe0
0000159f: CALLDATASIZE
000015a0: PUSH1 0x03
000015a2: NOT
000015a3: ADD
000015a4: SLT
000015a5: PUSH2 0x04fd
000015a8: JUMPI
000015a9: PUSH2 0x15b0
000015ac: PUSH2 0x27fe
000015af: JUMP
000015b0: JUMPDEST
000015b1: PUSH1 0x24
000015b3: CALLDATALOAD
000015b4: SWAP1
000015b5: PUSH1 0x44
000015b7: CALLDATALOAD
000015b8: PUSH2 0x15bf
000015bb: PUSH2 0x282a
000015be: JUMP
000015bf: JUMPDEST
000015c0: SWAP3
000015c1: PUSH1 0x84
000015c3: CALLDATALOAD
000015c4: SWAP4
000015c5: PUSH1 0xa4
000015c7: CALLDATALOAD
000015c8: PUSH1 0x01
000015ca: PUSH1 0x01
000015cc: PUSH1 0x40
000015ce: SHL
000015cf: SUB
000015d0: DUP2
000015d1: GT
000015d2: PUSH2 0x04fd
000015d5: JUMPI
000015d6: PUSH2 0x15e3
000015d9: SWAP1
000015da: CALLDATASIZE
000015db: SWAP1
000015dc: PUSH1 0x04
000015de: ADD
000015df: PUSH2 0x2909
000015e2: JUMP
000015e3: JUMPDEST
000015e4: SWAP5
000015e5: SWAP1
000015e6: PUSH1 0xc4
000015e8: CALLDATALOAD
000015e9: PUSH1 0x01
000015eb: PUSH1 0x01
000015ed: PUSH1 0x40
000015ef: SHL
000015f0: SUB
000015f1: DUP2
000015f2: GT
000015f3: PUSH2 0x04fd
000015f6: JUMPI
000015f7: PUSH2 0x1604
000015fa: SWAP1
000015fb: CALLDATASIZE
000015fc: SWAP1
000015fd: PUSH1 0x04
000015ff: ADD
00001600: PUSH2 0x2939
00001603: JUMP
00001604: JUMPDEST
00001605: CALLER
00001606: PUSH1 0x00
00001608: SWAP1
00001609: DUP2
0000160a: MSTORE
0000160b: PUSH1 0x0a
0000160d: PUSH1 0x20
0000160f: MSTORE
00001610: PUSH1 0x40
00001612: SWAP1
00001613: KECCAK256
00001614: SLOAD
00001615: SWAP1
00001616: SWAP5
00001617: SWAP2
00001618: POP
00001619: PUSH1 0xff
0000161b: AND
0000161c: ISZERO
0000161d: PUSH2 0x18f7
00001620: JUMPI
00001621: PUSH1 0xff
00001623: PUSH1 0x10
00001625: SLOAD
00001626: AND
00001627: PUSH2 0x090f
0000162a: JUMPI
0000162b: PUSH2 0x1632
0000162e: PUSH2 0x2cad
00001631: JUMP
00001632: JUMPDEST
00001633: PUSH1 0x01
00001635: PUSH1 0x01
00001637: PUSH1 0xa0
00001639: SHL
0000163a: SUB
0000163b: DUP4
0000163c: AND
0000163d: SWAP7
0000163e: DUP8
0000163f: ISZERO
00001640: DUP1
00001641: ISZERO
00001642: PUSH2 0x18ef
00001645: JUMPI
00001646: JUMPDEST
00001647: DUP1
00001648: ISZERO
00001649: PUSH2 0x18e7
0000164c: JUMPI
0000164d: JUMPDEST
0000164e: PUSH2 0x18d6
00001651: JUMPI
00001652: DUP6
00001653: ISZERO
00001654: PUSH2 0x0867
00001657: JUMPI
00001658: CHAINID
00001659: PUSH1 0x00
0000165b: SWAP1
0000165c: DUP2
0000165d: MSTORE
0000165e: PUSH1 0x0e
00001660: PUSH1 0x20
00001662: MSTORE
00001663: PUSH1 0x40
00001665: SWAP1
00001666: KECCAK256
00001667: SLOAD
00001668: PUSH1 0x01
0000166a: PUSH1 0x01
0000166c: PUSH1 0xa0
0000166e: SHL
0000166f: SUB
00001670: AND
00001671: DUP1
00001672: ISZERO
00001673: SWAP6
00001674: SWAP1
00001675: SWAP4
00001676: SWAP1
00001677: DUP7
00001678: ISZERO
00001679: PUSH2 0x18b5
0000167c: JUMPI
0000167d: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed
00001692: NOT
00001693: PUSH1 0x01
00001695: PUSH1 0x01
00001697: PUSH1 0xa0
00001699: SHL
0000169a: SUB
0000169b: DUP6
0000169c: AND
0000169d: ADD
0000169e: PUSH2 0x18a4
000016a1: JUMPI
000016a2: JUMPDEST
000016a3: PUSH2 0x1893
000016a6: JUMPI
000016a7: DUP10
000016a8: PUSH2 0x16b3
000016ab: SWAP4
000016ac: DUP10
000016ad: DUP10
000016ae: DUP9
000016af: PUSH2 0x2b4f
000016b2: JUMP
000016b3: JUMPDEST
000016b4: PUSH1 0x06
000016b6: SLOAD
000016b7: GT
000016b8: PUSH2 0x1882
000016bb: JUMPI
000016bc: DUP7
000016bd: PUSH1 0x00
000016bf: MSTORE
000016c0: PUSH1 0x0f
000016c2: PUSH1 0x20
000016c4: MSTORE
000016c5: PUSH1 0xff
000016c7: PUSH1 0x40
000016c9: PUSH1 0x00
000016cb: KECCAK256
000016cc: SLOAD
000016cd: AND
000016ce: PUSH2 0x1871
000016d1: JUMPI
000016d2: DUP3
000016d3: SWAP1
000016d4: PUSH2 0x16dc
000016d7: DUP7
000016d8: PUSH2 0x2af2
000016db: JUMP
000016dc: JUMPDEST
000016dd: DUP1
000016de: SWAP4
000016df: PUSH2 0x1855
000016e2: JUMPI
000016e3: JUMPDEST
000016e4: PUSH2 0x16ee
000016e7: DUP5
000016e8: DUP8
000016e9: CHAINID
000016ea: PUSH2 0x2a1e
000016ed: JUMP
000016ee: JUMPDEST
000016ef: SWAP6
000016f0: SWAP2
000016f1: SWAP5
000016f2: SWAP1
000016f3: SWAP4
000016f4: DUP9
000016f5: PUSH2 0x16fd
000016f8: CHAINID
000016f9: PUSH2 0x2c2c
000016fc: JUMP
000016fd: JUMPDEST
000016fe: LT
000016ff: PUSH2 0x1260
00001702: JUMPI
00001703: DUP11
00001704: PUSH1 0x00
00001706: MSTORE
00001707: PUSH1 0x0f
00001709: PUSH1 0x20
0000170b: MSTORE
0000170c: PUSH1 0x40
0000170e: PUSH1 0x00
00001710: KECCAK256
00001711: PUSH1 0x01
00001713: PUSH1 0xff
00001715: NOT
00001716: DUP3
00001717: SLOAD
00001718: AND
00001719: OR
0000171a: SWAP1
0000171b: SSTORE
0000171c: DUP5
0000171d: PUSH2 0x17c8
00001720: JUMPI
00001721: JUMPDEST
00001722: POP
00001723: POP
00001724: SWAP1
00001725: PUSH32 0xc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c
00001746: SWAP7
00001747: DUP5
00001748: SWAP4
00001749: SWAP3
0000174a: PUSH1 0xe0
0000174c: SWAP8
0000174d: SWAP7
0000174e: SWAP6
0000174f: PUSH2 0x1780
00001752: JUMPI
00001753: JUMPDEST
00001754: POP
00001755: PUSH1 0x40
00001757: MLOAD
00001758: SWAP6
00001759: DUP7
0000175a: MSTORE
0000175b: CHAINID
0000175c: PUSH1 0x20
0000175e: DUP8
0000175f: ADD
00001760: MSTORE
00001761: PUSH1 0x40
00001763: DUP7
00001764: ADD
00001765: MSTORE
00001766: PUSH1 0x60
00001768: DUP6
00001769: ADD
0000176a: MSTORE
0000176b: PUSH1 0x80
0000176d: DUP5
0000176e: ADD
0000176f: MSTORE
00001770: PUSH1 0xa0
00001772: DUP4
00001773: ADD
00001774: MSTORE
00001775: PUSH1 0xc0
00001777: DUP3
00001778: ADD
00001779: MSTORE
0000177a: LOG3
0000177b: PUSH1 0x01
0000177d: DUP1
0000177e: SSTORE
0000177f: STOP
00001780: JUMPDEST
00001781: PUSH1 0x40
00001783: DUP1
00001784: MLOAD
00001785: CHAINID
00001786: DUP2
00001787: MSTORE
00001788: PUSH1 0x01
0000178a: PUSH1 0x01
0000178c: PUSH1 0xa0
0000178e: SHL
0000178f: SUB
00001790: SWAP1
00001791: SWAP3
00001792: AND
00001793: PUSH1 0x20
00001795: DUP4
00001796: ADD
00001797: MSTORE
00001798: DUP2
00001799: ADD
0000179a: DUP6
0000179b: SWAP1
0000179c: MSTORE
0000179d: PUSH32 0xf1d6c8ee14081f641e2073a1064d870f135f1001a301c6b14a7b9655672fec11
000017be: SWAP1
000017bf: PUSH1 0x60
000017c1: SWAP1
000017c2: LOG1
000017c3: DUP11
000017c4: PUSH2 0x1753
000017c7: JUMP
000017c8: JUMPDEST
000017c9: SWAP2
000017ca: SWAP7
000017cb: SWAP6
000017cc: SWAP5
000017cd: SWAP4
000017ce: SWAP3
000017cf: SWAP2
000017d0: ISZERO
000017d1: PUSH2 0x1820
000017d4: JUMPI
000017d5: POP
000017d6: PUSH1 0x00
000017d8: DUP1
000017d9: DUP1
000017da: DUP1
000017db: DUP6
000017dc: DUP13
000017dd: GAS
000017de: CALL
000017df: PUSH2 0x17e6
000017e2: PUSH2 0x2ab3
000017e5: JUMP
000017e6: JUMPDEST
000017e7: POP
000017e8: ISZERO
000017e9: PUSH2 0x12f0
000017ec: JUMPI
000017ed: PUSH32 0xc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c
0000180e: SWAP7
0000180f: PUSH1 0xe0
00001811: SWAP7
00001812: JUMPDEST
00001813: SWAP2
00001814: SWAP3
00001815: SWAP4
00001816: SWAP5
00001817: SWAP6
00001818: SWAP7
00001819: DUP2
0000181a: SWAP9
0000181b: POP
0000181c: PUSH2 0x1721
0000181f: JUMP
00001820: JUMPDEST
00001821: SWAP7
00001822: PUSH1 0xe0
00001824: SWAP7
00001825: PUSH2 0x1850
00001828: DUP5
00001829: PUSH32 0xc2baa19512579fa535817f5c076a8ebb49cebb3f57befcea0a2cbbd93b0e744c
0000184a: SWAP11
0000184b: DUP6
0000184c: PUSH2 0x2e70
0000184f: JUMP
00001850: JUMPDEST
00001851: PUSH2 0x1812
00001854: JUMP
00001855: JUMPDEST
00001856: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
0000186b: SWAP4
0000186c: POP
0000186d: PUSH2 0x16e3
00001870: JUMP
00001871: JUMPDEST
00001872: PUSH4 0x382c9037
00001877: PUSH1 0xe1
00001879: SHL
0000187a: PUSH1 0x00
0000187c: MSTORE
0000187d: PUSH1 0x04
0000187f: PUSH1 0x00
00001881: REVERT
00001882: JUMPDEST
00001883: PUSH4 0x3724e343
00001888: PUSH1 0xe1
0000188a: SHL
0000188b: PUSH1 0x00
0000188d: MSTORE
0000188e: PUSH1 0x04
00001890: PUSH1 0x00
00001892: REVERT
00001893: JUMPDEST
00001894: PUSH4 0xa4bf61c5
00001899: PUSH1 0xe0
0000189b: SHL
0000189c: PUSH1 0x00
0000189e: MSTORE
0000189f: PUSH1 0x04
000018a1: PUSH1 0x00
000018a3: REVERT
000018a4: JUMPDEST
000018a5: PUSH4 0x1a9ebd1f
000018aa: PUSH1 0xe0
000018ac: SHL
000018ad: PUSH1 0x00
000018af: MSTORE
000018b0: PUSH1 0x04
000018b2: PUSH1 0x00
000018b4: REVERT
000018b5: JUMPDEST
000018b6: PUSH1 0x01
000018b8: PUSH1 0x01
000018ba: PUSH1 0xa0
000018bc: SHL
000018bd: SUB
000018be: DUP5
000018bf: AND
000018c0: DUP6
000018c1: EQ
000018c2: PUSH2 0x16a2
000018c5: JUMPI
000018c6: PUSH4 0xe0d6e6db
000018cb: PUSH1 0xe0
000018cd: SHL
000018ce: PUSH1 0x00
000018d0: MSTORE
000018d1: PUSH1 0x04
000018d3: PUSH1 0x00
000018d5: REVERT
000018d6: JUMPDEST
000018d7: PUSH4 0x0e523909
000018dc: PUSH1 0xe4
000018de: SHL
000018df: PUSH1 0x00
000018e1: MSTORE
000018e2: PUSH1 0x04
000018e4: PUSH1 0x00
000018e6: REVERT
000018e7: JUMPDEST
000018e8: POP
000018e9: DUP9
000018ea: ISZERO
000018eb: PUSH2 0x164d
000018ee: JUMP
000018ef: JUMPDEST
000018f0: POP
000018f1: DUP7
000018f2: ISZERO
000018f3: PUSH2 0x1646
000018f6: JUMP
000018f7: JUMPDEST
000018f8: PUSH4 0x0bfd9033
000018fd: PUSH1 0xe1
000018ff: SHL
00001900: PUSH1 0x00
00001902: MSTORE
00001903: PUSH1 0x04
00001905: PUSH1 0x00
00001907: REVERT
00001908: JUMPDEST
00001909: CALLVALUE
0000190a: PUSH2 0x04fd
0000190d: JUMPI
0000190e: PUSH1 0x60
00001910: CALLDATASIZE
00001911: PUSH1 0x03
00001913: NOT
00001914: ADD
00001915: SLT
00001916: PUSH2 0x04fd
00001919: JUMPI
0000191a: PUSH2 0x1921
0000191d: PUSH2 0x27fe
00001920: JUMP
00001921: JUMPDEST
00001922: PUSH2 0x1929
00001925: PUSH2 0x2814
00001928: JUMP
00001929: JUMPDEST
0000192a: PUSH1 0x44
0000192c: CALLDATALOAD
0000192d: SWAP2
0000192e: PUSH2 0x1935
00001931: PUSH2 0x2d1a
00001934: JUMP
00001935: JUMPDEST
00001936: PUSH2 0x193d
00001939: PUSH2 0x2cad
0000193c: JUMP
0000193d: JUMPDEST
0000193e: PUSH1 0x01
00001940: PUSH1 0x01
00001942: PUSH1 0xa0
00001944: SHL
00001945: SUB
00001946: DUP3
00001947: AND
00001948: PUSH1 0x00
0000194a: SWAP1
0000194b: DUP2
0000194c: MSTORE
0000194d: PUSH1 0x0c
0000194f: PUSH1 0x20
00001951: MSTORE
00001952: PUSH1 0x40
00001954: SWAP1
00001955: KECCAK256
00001956: SLOAD
00001957: PUSH1 0xff
00001959: AND
0000195a: ISZERO
0000195b: PUSH2 0x1a76
0000195e: JUMPI
0000195f: DUP3
00001960: ISZERO
00001961: PUSH2 0x082d
00001964: JUMPI
00001965: PUSH1 0x01
00001967: PUSH1 0x01
00001969: PUSH1 0xa0
0000196b: SHL
0000196c: SUB
0000196d: AND
0000196e: SWAP1
0000196f: DUP2
00001970: PUSH2 0x19db
00001973: JUMPI
00001974: DUP3
00001975: SELFBALANCE
00001976: LT
00001977: PUSH2 0x1260
0000197a: JUMPI
0000197b: PUSH1 0x00
0000197d: DUP1
0000197e: DUP1
0000197f: DUP1
00001980: DUP7
00001981: PUSH1 0x01
00001983: PUSH1 0x01
00001985: PUSH1 0xa0
00001987: SHL
00001988: SUB
00001989: DUP7
0000198a: AND
0000198b: GAS
0000198c: CALL
0000198d: PUSH2 0x1994
00001990: PUSH2 0x2ab3
00001993: JUMP
00001994: JUMPDEST
00001995: POP
00001996: ISZERO
00001997: PUSH2 0x12f0
0000199a: JUMPI
0000199b: PUSH1 0x40
0000199d: PUSH32 0x68dba1198793e98d5d26de394967764181807c1f7c6854b8c5907e475cdd66f9
000019be: SWAP2
000019bf: JUMPDEST
000019c0: DUP2
000019c1: MLOAD
000019c2: SWAP5
000019c3: DUP6
000019c4: MSTORE
000019c5: TIMESTAMP
000019c6: PUSH1 0x20
000019c8: DUP7
000019c9: ADD
000019ca: MSTORE
000019cb: PUSH1 0x01
000019cd: PUSH1 0x01
000019cf: PUSH1 0xa0
000019d1: SHL
000019d2: SUB
000019d3: AND
000019d4: SWAP4
000019d5: LOG3
000019d6: PUSH1 0x01
000019d8: DUP1
000019d9: SSTORE
000019da: STOP
000019db: JUMPDEST
000019dc: PUSH1 0x40
000019de: MLOAD
000019df: PUSH4 0x70a08231
000019e4: PUSH1 0xe0
000019e6: SHL
000019e7: DUP2
000019e8: MSTORE
000019e9: ADDRESS
000019ea: PUSH1 0x04
000019ec: DUP3
000019ed: ADD
000019ee: MSTORE
000019ef: PUSH1 0x20
000019f1: DUP2
000019f2: PUSH1 0x24
000019f4: DUP2
000019f5: DUP7
000019f6: GAS
000019f7: STATICCALL
000019f8: DUP1
000019f9: ISZERO
000019fa: PUSH2 0x0e17
000019fd: JUMPI
000019fe: DUP5
000019ff: SWAP2
00001a00: PUSH1 0x00
00001a02: SWAP2
00001a03: PUSH2 0x1a41
00001a06: JUMPI
00001a07: JUMPDEST
00001a08: POP
00001a09: LT
00001a0a: PUSH2 0x1260
00001a0d: JUMPI
00001a0e: PUSH1 0x40
00001a10: DUP2
00001a11: PUSH2 0x1a3c
00001a14: DUP6
00001a15: PUSH32 0x68dba1198793e98d5d26de394967764181807c1f7c6854b8c5907e475cdd66f9
00001a36: SWAP5
00001a37: DUP7
00001a38: PUSH2 0x2e70
00001a3b: JUMP
00001a3c: JUMPDEST
00001a3d: PUSH2 0x19bf
00001a40: JUMP
00001a41: JUMPDEST
00001a42: SWAP2
00001a43: POP
00001a44: POP
00001a45: PUSH1 0x20
00001a47: DUP2
00001a48: RETURNDATASIZE
00001a49: PUSH1 0x20
00001a4b: GT
00001a4c: PUSH2 0x1a6e
00001a4f: JUMPI
00001a50: JUMPDEST
00001a51: DUP2
00001a52: PUSH2 0x1a5d
00001a55: PUSH1 0x20
00001a57: SWAP4
00001a58: DUP4
00001a59: PUSH2 0x2876
00001a5c: JUMP
00001a5d: JUMPDEST
00001a5e: DUP2
00001a5f: ADD
00001a60: SUB
00001a61: SLT
00001a62: PUSH2 0x04fd
00001a65: JUMPI
00001a66: DUP4
00001a67: SWAP1
00001a68: MLOAD
00001a69: DUP6
00001a6a: PUSH2 0x1a07
00001a6d: JUMP
00001a6e: JUMPDEST
00001a6f: RETURNDATASIZE
00001a70: SWAP2
00001a71: POP
00001a72: PUSH2 0x1a50
00001a75: JUMP
00001a76: JUMPDEST
00001a77: PUSH4 0x0f66b7c7
00001a7c: PUSH1 0xe2
00001a7e: SHL
00001a7f: PUSH1 0x00
00001a81: MSTORE
00001a82: PUSH1 0x04
00001a84: PUSH1 0x00
00001a86: REVERT
00001a87: JUMPDEST
00001a88: CALLVALUE
00001a89: PUSH2 0x04fd
00001a8c: JUMPI
00001a8d: PUSH1 0x40
00001a8f: CALLDATASIZE
00001a90: PUSH1 0x03
00001a92: NOT
00001a93: ADD
00001a94: SLT
00001a95: PUSH2 0x04fd
00001a98: JUMPI
00001a99: PUSH2 0x1abd
00001a9c: PUSH2 0x1aa3
00001a9f: PUSH2 0x27fe
00001aa2: JUMP
00001aa3: JUMPDEST
00001aa4: PUSH1 0x01
00001aa6: PUSH1 0x01
00001aa8: PUSH1 0xa0
00001aaa: SHL
00001aab: SUB
00001aac: AND
00001aad: PUSH1 0x00
00001aaf: SWAP1
00001ab0: DUP2
00001ab1: MSTORE
00001ab2: PUSH1 0x02
00001ab4: PUSH1 0x20
00001ab6: MSTORE
00001ab7: PUSH1 0x40
00001ab9: SWAP1
00001aba: KECCAK256
00001abb: SWAP1
00001abc: JUMP
00001abd: JUMPDEST
00001abe: PUSH1 0x24
00001ac0: CALLDATALOAD
00001ac1: PUSH1 0x00
00001ac3: MSTORE
00001ac4: PUSH1 0x20
00001ac6: MSTORE
00001ac7: PUSH2 0x1ad3
00001aca: PUSH1 0x40
00001acc: PUSH1 0x00
00001ace: KECCAK256
00001acf: PUSH2 0x29ee
00001ad2: JUMP
00001ad3: JUMPDEST
00001ad4: DUP1
00001ad5: MLOAD
00001ad6: PUSH1 0x20
00001ad8: SWAP2
00001ad9: DUP3
00001ada: ADD
00001adb: MLOAD
00001adc: PUSH1 0x40
00001ade: DUP1
00001adf: MLOAD
00001ae0: SWAP3
00001ae1: DUP4
00001ae2: MSTORE
00001ae3: SWAP1
00001ae4: ISZERO
00001ae5: ISZERO
00001ae6: SWAP3
00001ae7: DUP3
00001ae8: ADD
00001ae9: SWAP3
00001aea: SWAP1
00001aeb: SWAP3
00001aec: MSTORE
00001aed: RETURN
00001aee: JUMPDEST
00001aef: CALLVALUE
00001af0: PUSH2 0x04fd
00001af3: JUMPI
00001af4: PUSH1 0x00
00001af6: CALLDATASIZE
00001af7: PUSH1 0x03
00001af9: NOT
00001afa: ADD
00001afb: SLT
00001afc: PUSH2 0x04fd
00001aff: JUMPI
00001b00: PUSH2 0x1b07
00001b03: PUSH2 0x2d1a
00001b06: JUMP
00001b07: JUMPDEST
00001b08: PUSH1 0x00
00001b0a: DUP1
00001b0b: SLOAD
00001b0c: PUSH1 0x01
00001b0e: PUSH1 0x01
00001b10: PUSH1 0xa0
00001b12: SHL
00001b13: SUB
00001b14: NOT
00001b15: DUP2
00001b16: AND
00001b17: DUP3
00001b18: SSTORE
00001b19: PUSH1 0x01
00001b1b: PUSH1 0x01
00001b1d: PUSH1 0xa0
00001b1f: SHL
00001b20: SUB
00001b21: AND
00001b22: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00001b43: DUP3
00001b44: DUP1
00001b45: LOG3
00001b46: STOP
00001b47: JUMPDEST
00001b48: CALLVALUE
00001b49: PUSH2 0x04fd
00001b4c: JUMPI
00001b4d: PUSH1 0x20
00001b4f: CALLDATASIZE
00001b50: PUSH1 0x03
00001b52: NOT
00001b53: ADD
00001b54: SLT
00001b55: PUSH2 0x04fd
00001b58: JUMPI
00001b59: PUSH1 0x20
00001b5b: PUSH1 0xff
00001b5d: PUSH2 0x1b81
00001b60: PUSH2 0x1b67
00001b63: PUSH2 0x27fe
00001b66: JUMP
00001b67: JUMPDEST
00001b68: PUSH1 0x01
00001b6a: PUSH1 0x01
00001b6c: PUSH1 0xa0
00001b6e: SHL
00001b6f: SUB
00001b70: AND
00001b71: PUSH1 0x00
00001b73: SWAP1
00001b74: DUP2
00001b75: MSTORE
00001b76: PUSH1 0x0c
00001b78: PUSH1 0x20
00001b7a: MSTORE
00001b7b: PUSH1 0x40
00001b7d: SWAP1
00001b7e: KECCAK256
00001b7f: SWAP1
00001b80: JUMP
00001b81: JUMPDEST
00001b82: SLOAD
00001b83: AND
00001b84: PUSH1 0x40
00001b86: MLOAD
00001b87: SWAP1
00001b88: ISZERO
00001b89: ISZERO
00001b8a: DUP2
00001b8b: MSTORE
00001b8c: RETURN
00001b8d: JUMPDEST
00001b8e: CALLVALUE
00001b8f: PUSH2 0x04fd
00001b92: JUMPI
00001b93: PUSH1 0x20
00001b95: CALLDATASIZE
00001b96: PUSH1 0x03
00001b98: NOT
00001b99: ADD
00001b9a: SLT
00001b9b: PUSH2 0x04fd
00001b9e: JUMPI
00001b9f: PUSH1 0x20
00001ba1: PUSH2 0x1bab
00001ba4: PUSH2 0x0a61
00001ba7: PUSH2 0x27fe
00001baa: JUMP
00001bab: JUMPDEST
00001bac: SLOAD
00001bad: PUSH1 0x40
00001baf: MLOAD
00001bb0: SWAP1
00001bb1: DUP2
00001bb2: MSTORE
00001bb3: RETURN
00001bb4: JUMPDEST
00001bb5: CALLVALUE
00001bb6: PUSH2 0x04fd
00001bb9: JUMPI
00001bba: PUSH1 0x00
00001bbc: CALLDATASIZE
00001bbd: PUSH1 0x03
00001bbf: NOT
00001bc0: ADD
00001bc1: SLT
00001bc2: PUSH2 0x04fd
00001bc5: JUMPI
00001bc6: PUSH1 0x20
00001bc8: PUSH1 0xff
00001bca: PUSH1 0x10
00001bcc: SLOAD
00001bcd: AND
00001bce: PUSH1 0x40
00001bd0: MLOAD
00001bd1: SWAP1
00001bd2: ISZERO
00001bd3: ISZERO
00001bd4: DUP2
00001bd5: MSTORE
00001bd6: RETURN
00001bd7: JUMPDEST
00001bd8: CALLVALUE
00001bd9: PUSH2 0x04fd
00001bdc: JUMPI
00001bdd: PUSH2 0x1be5
00001be0: CALLDATASIZE
00001be1: PUSH2 0x28da
00001be4: JUMP
00001be5: JUMPDEST
00001be6: PUSH2 0x1bed
00001be9: PUSH2 0x2d1a
00001bec: JUMP
00001bed: JUMPDEST
00001bee: PUSH1 0x01
00001bf0: PUSH1 0x01
00001bf2: PUSH1 0xa0
00001bf4: SHL
00001bf5: SUB
00001bf6: DUP3
00001bf7: AND
00001bf8: DUP1
00001bf9: ISZERO
00001bfa: PUSH2 0x1dd3
00001bfd: JUMPI
00001bfe: DUP2
00001bff: ISZERO
00001c00: PUSH2 0x1c9f
00001c03: JUMPI
00001c04: POP
00001c05: PUSH1 0x01
00001c07: PUSH1 0x01
00001c09: PUSH1 0xa0
00001c0b: SHL
00001c0c: SUB
00001c0d: DUP3
00001c0e: AND
00001c0f: PUSH1 0x00
00001c11: SWAP1
00001c12: DUP2
00001c13: MSTORE
00001c14: PUSH1 0x0c
00001c16: PUSH1 0x20
00001c18: MSTORE
00001c19: PUSH1 0x40
00001c1b: SWAP1
00001c1c: KECCAK256
00001c1d: SLOAD
00001c1e: PUSH1 0xff
00001c20: AND
00001c21: PUSH2 0x1c8e
00001c24: JUMPI
00001c25: PUSH1 0x01
00001c27: PUSH1 0x01
00001c29: PUSH1 0xa0
00001c2b: SHL
00001c2c: SUB
00001c2d: DUP3
00001c2e: AND
00001c2f: PUSH1 0x00
00001c31: SWAP1
00001c32: DUP2
00001c33: MSTORE
00001c34: PUSH1 0x0c
00001c36: PUSH1 0x20
00001c38: MSTORE
00001c39: PUSH1 0x40
00001c3b: SWAP1
00001c3c: KECCAK256
00001c3d: DUP1
00001c3e: SLOAD
00001c3f: PUSH1 0xff
00001c41: NOT
00001c42: AND
00001c43: PUSH1 0x01
00001c45: OR
00001c46: SWAP1
00001c47: SSTORE
00001c48: PUSH1 0x0d
00001c4a: SLOAD
00001c4b: SWAP2
00001c4c: PUSH1 0x01
00001c4e: PUSH1 0x40
00001c50: SHL
00001c51: DUP4
00001c52: LT
00001c53: ISZERO
00001c54: PUSH2 0x0380
00001c57: JUMPI
00001c58: PUSH2 0x02d9
00001c5b: DUP2
00001c5c: PUSH2 0x0355
00001c5f: DUP6
00001c60: PUSH1 0x01
00001c62: PUSH32 0x966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d
00001c83: SWAP8
00001c84: ADD
00001c85: PUSH1 0x0d
00001c87: SSTORE
00001c88: PUSH1 0x0d
00001c8a: PUSH2 0x2dba
00001c8d: JUMP
00001c8e: JUMPDEST
00001c8f: PUSH4 0x0a272525
00001c94: PUSH1 0xe2
00001c96: SHL
00001c97: PUSH1 0x00
00001c99: MSTORE
00001c9a: PUSH1 0x04
00001c9c: PUSH1 0x00
00001c9e: REVERT
00001c9f: JUMPDEST
00001ca0: SWAP1
00001ca1: PUSH1 0xff
00001ca3: PUSH2 0x1cbe
00001ca6: DUP5
00001ca7: PUSH1 0x01
00001ca9: DUP1
00001caa: PUSH1 0xa0
00001cac: SHL
00001cad: SUB
00001cae: AND
00001caf: PUSH1 0x00
00001cb1: MSTORE
00001cb2: PUSH1 0x0c
00001cb4: PUSH1 0x20
00001cb6: MSTORE
00001cb7: PUSH1 0x40
00001cb9: PUSH1 0x00
00001cbb: KECCAK256
00001cbc: SWAP1
00001cbd: JUMP
00001cbe: JUMPDEST
00001cbf: SLOAD
00001cc0: AND
00001cc1: ISZERO
00001cc2: PUSH2 0x1dc2
00001cc5: JUMPI
00001cc6: PUSH1 0x01
00001cc8: PUSH1 0x01
00001cca: PUSH1 0xa0
00001ccc: SHL
00001ccd: SUB
00001cce: DUP4
00001ccf: AND
00001cd0: PUSH1 0x00
00001cd2: SWAP1
00001cd3: DUP2
00001cd4: MSTORE
00001cd5: PUSH1 0x0c
00001cd7: PUSH1 0x20
00001cd9: MSTORE
00001cda: PUSH1 0x40
00001cdc: DUP2
00001cdd: KECCAK256
00001cde: DUP1
00001cdf: SLOAD
00001ce0: PUSH1 0xff
00001ce2: NOT
00001ce3: AND
00001ce4: SWAP1
00001ce5: SSTORE
00001ce6: JUMPDEST
00001ce7: PUSH1 0x0d
00001ce9: SLOAD
00001cea: DUP1
00001ceb: DUP3
00001cec: LT
00001ced: ISZERO
00001cee: PUSH2 0x1d97
00001cf1: JUMPI
00001cf2: DUP4
00001cf3: PUSH2 0x1cfb
00001cf6: DUP4
00001cf7: PUSH2 0x2d69
00001cfa: JUMP
00001cfb: JUMPDEST
00001cfc: SWAP1
00001cfd: SLOAD
00001cfe: PUSH1 0x03
00001d00: SWAP2
00001d01: SWAP1
00001d02: SWAP2
00001d03: SHL
00001d04: SHR
00001d05: PUSH1 0x01
00001d07: PUSH1 0x01
00001d09: PUSH1 0xa0
00001d0b: SHL
00001d0c: SUB
00001d0d: AND
00001d0e: EQ
00001d0f: PUSH2 0x1d1b
00001d12: JUMPI
00001d13: POP
00001d14: PUSH1 0x01
00001d16: ADD
00001d17: PUSH2 0x1ce6
00001d1a: JUMP
00001d1b: JUMPDEST
00001d1c: SWAP2
00001d1d: SWAP3
00001d1e: POP
00001d1f: PUSH1 0x00
00001d21: NOT
00001d22: DUP3
00001d23: ADD
00001d24: SWAP2
00001d25: DUP3
00001d26: GT
00001d27: PUSH2 0x04bd
00001d2a: JUMPI
00001d2b: PUSH2 0x0355
00001d2e: PUSH2 0x1d39
00001d31: PUSH2 0x1d51
00001d34: SWAP4
00001d35: PUSH2 0x2d69
00001d38: JUMP
00001d39: JUMPDEST
00001d3a: SWAP1
00001d3b: SLOAD
00001d3c: PUSH1 0x03
00001d3e: SWAP2
00001d3f: SWAP1
00001d40: SWAP2
00001d41: SHL
00001d42: SHR
00001d43: PUSH1 0x01
00001d45: PUSH1 0x01
00001d47: PUSH1 0xa0
00001d49: SHL
00001d4a: SUB
00001d4b: AND
00001d4c: SWAP2
00001d4d: PUSH2 0x2d69
00001d50: JUMP
00001d51: JUMPDEST
00001d52: PUSH1 0x0d
00001d54: SLOAD
00001d55: SWAP2
00001d56: DUP3
00001d57: ISZERO
00001d58: PUSH2 0x04a7
00001d5b: JUMPI
00001d5c: PUSH32 0x966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d
00001d7d: SWAP3
00001d7e: PUSH1 0x00
00001d80: NOT
00001d81: ADD
00001d82: PUSH2 0x1d8f
00001d85: PUSH2 0x0488
00001d88: DUP3
00001d89: PUSH1 0x0d
00001d8b: PUSH2 0x2dba
00001d8e: JUMP
00001d8f: JUMPDEST
00001d90: PUSH1 0x0d
00001d92: SSTORE
00001d93: PUSH2 0x02d9
00001d96: JUMP
00001d97: JUMPDEST
00001d98: POP
00001d99: POP
00001d9a: SWAP1
00001d9b: POP
00001d9c: PUSH32 0x966c160e1c4dbc7df8d69af4ace01e9297c3cf016397b7914971f2fbfa32672d
00001dbd: SWAP2
00001dbe: PUSH2 0x02d9
00001dc1: JUMP
00001dc2: JUMPDEST
00001dc3: PUSH4 0xae4207eb
00001dc8: PUSH1 0xe0
00001dca: SHL
00001dcb: PUSH1 0x00
00001dcd: MSTORE
00001dce: PUSH1 0x04
00001dd0: PUSH1 0x00
00001dd2: REVERT
00001dd3: JUMPDEST
00001dd4: PUSH4 0xeb32d3bf
00001dd9: PUSH1 0xe0
00001ddb: SHL
00001ddc: PUSH1 0x00
00001dde: MSTORE
00001ddf: PUSH1 0x04
00001de1: PUSH1 0x00
00001de3: REVERT
00001de4: JUMPDEST
00001de5: CALLVALUE
00001de6: PUSH2 0x04fd
00001de9: JUMPI
00001dea: PUSH1 0x20
00001dec: CALLDATASIZE
00001ded: PUSH1 0x03
00001def: NOT
00001df0: ADD
00001df1: SLT
00001df2: PUSH2 0x04fd
00001df5: JUMPI
00001df6: PUSH1 0x20
00001df8: PUSH1 0xff
00001dfa: PUSH2 0x1b81
00001dfd: PUSH2 0x1e04
00001e00: PUSH2 0x27fe
00001e03: JUMP
00001e04: JUMPDEST
00001e05: PUSH1 0x01
00001e07: PUSH1 0x01
00001e09: PUSH1 0xa0
00001e0b: SHL
00001e0c: SUB
00001e0d: AND
00001e0e: PUSH1 0x00
00001e10: SWAP1
00001e11: DUP2
00001e12: MSTORE
00001e13: PUSH1 0x0a
00001e15: PUSH1 0x20
00001e17: MSTORE
00001e18: PUSH1 0x40
00001e1a: SWAP1
00001e1b: KECCAK256
00001e1c: SWAP1
00001e1d: JUMP
00001e1e: JUMPDEST
00001e1f: PUSH1 0x20
00001e21: CALLDATASIZE
00001e22: PUSH1 0x03
00001e24: NOT
00001e25: ADD
00001e26: SLT
00001e27: PUSH2 0x04fd
00001e2a: JUMPI
00001e2b: PUSH1 0x04
00001e2d: CALLDATALOAD
00001e2e: PUSH1 0xff
00001e30: PUSH1 0x10
00001e32: SLOAD
00001e33: AND
00001e34: PUSH2 0x090f
00001e37: JUMPI
00001e38: PUSH2 0x1e3f
00001e3b: PUSH2 0x2cad
00001e3e: JUMP
00001e3f: JUMPDEST
00001e40: CHAINID
00001e41: PUSH1 0x00
00001e43: SWAP1
00001e44: DUP2
00001e45: MSTORE
00001e46: PUSH1 0x0e
00001e48: PUSH1 0x20
00001e4a: MSTORE
00001e4b: PUSH1 0x40
00001e4d: SWAP1
00001e4e: KECCAK256
00001e4f: SLOAD
00001e50: PUSH1 0x01
00001e52: PUSH1 0x01
00001e54: PUSH1 0xa0
00001e56: SHL
00001e57: SUB
00001e58: AND
00001e59: DUP2
00001e5a: ISZERO
00001e5b: PUSH2 0x082d
00001e5e: JUMPI
00001e5f: DUP1
00001e60: PUSH2 0x1fed
00001e63: JUMPI
00001e64: POP
00001e65: DUP1
00001e66: CALLVALUE
00001e67: SUB
00001e68: PUSH2 0x082d
00001e6b: JUMPI
00001e6c: JUMPDEST
00001e6d: CALLER
00001e6e: PUSH1 0x00
00001e70: SWAP1
00001e71: DUP2
00001e72: MSTORE
00001e73: PUSH1 0x04
00001e75: PUSH1 0x20
00001e77: MSTORE
00001e78: PUSH1 0x40
00001e7a: DUP2
00001e7b: KECCAK256
00001e7c: SLOAD
00001e7d: SWAP1
00001e7e: SWAP2
00001e7f: SWAP1
00001e80: PUSH1 0xff
00001e82: AND
00001e83: ISZERO
00001e84: PUSH2 0x1fc5
00001e87: JUMPI
00001e88: JUMPDEST
00001e89: CALLER
00001e8a: PUSH1 0x00
00001e8c: SWAP1
00001e8d: DUP2
00001e8e: MSTORE
00001e8f: PUSH1 0x02
00001e91: PUSH1 0x20
00001e93: MSTORE
00001e94: PUSH1 0x40
00001e96: SWAP1
00001e97: KECCAK256
00001e98: CHAINID
00001e99: DUP4
00001e9a: MSTORE
00001e9b: PUSH1 0x20
00001e9d: MSTORE
00001e9e: PUSH1 0x40
00001ea0: DUP3
00001ea1: KECCAK256
00001ea2: PUSH1 0x01
00001ea4: ADD
00001ea5: SLOAD
00001ea6: PUSH1 0xff
00001ea8: AND
00001ea9: PUSH2 0x1f9a
00001eac: JUMPI
00001ead: PUSH2 0x1f08
00001eb0: PUSH1 0x40
00001eb2: MLOAD
00001eb3: PUSH2 0x1ebb
00001eb6: DUP2
00001eb7: PUSH2 0x2840
00001eba: JUMP
00001ebb: JUMPDEST
00001ebc: DUP3
00001ebd: DUP2
00001ebe: MSTORE
00001ebf: PUSH1 0x01
00001ec1: PUSH1 0x20
00001ec3: DUP3
00001ec4: ADD
00001ec5: MSTORE
00001ec6: PUSH2 0x1ee1
00001ec9: CALLER
00001eca: PUSH1 0x01
00001ecc: DUP1
00001ecd: PUSH1 0xa0
00001ecf: SHL
00001ed0: SUB
00001ed1: AND
00001ed2: PUSH1 0x00
00001ed4: MSTORE
00001ed5: PUSH1 0x02
00001ed7: PUSH1 0x20
00001ed9: MSTORE
00001eda: PUSH1 0x40
00001edc: PUSH1 0x00
00001ede: KECCAK256
00001edf: SWAP1
00001ee0: JUMP
00001ee1: JUMPDEST
00001ee2: CHAINID
00001ee3: DUP6
00001ee4: MSTORE
00001ee5: PUSH1 0x20
00001ee7: MSTORE
00001ee8: PUSH1 0x40
00001eea: DUP5
00001eeb: KECCAK256
00001eec: PUSH1 0x01
00001eee: PUSH1 0x20
00001ef0: SWAP2
00001ef1: DUP4
00001ef2: MLOAD
00001ef3: DUP2
00001ef4: SSTORE
00001ef5: ADD
00001ef6: SWAP2
00001ef7: ADD
00001ef8: MLOAD
00001ef9: ISZERO
00001efa: ISZERO
00001efb: PUSH1 0xff
00001efd: DUP1
00001efe: NOT
00001eff: DUP4
00001f00: SLOAD
00001f01: AND
00001f02: SWAP2
00001f03: AND
00001f04: OR
00001f05: SWAP1
00001f06: SSTORE
00001f07: JUMP
00001f08: JUMPDEST
00001f09: CALLER
00001f0a: PUSH1 0x00
00001f0c: SWAP1
00001f0d: DUP2
00001f0e: MSTORE
00001f0f: PUSH1 0x05
00001f11: PUSH1 0x20
00001f13: MSTORE
00001f14: PUSH1 0x40
00001f16: SWAP1
00001f17: KECCAK256
00001f18: PUSH2 0x1f48
00001f1b: SWAP1
00001f1c: PUSH1 0x40
00001f1e: MLOAD
00001f1f: SWAP1
00001f20: PUSH2 0x1f28
00001f23: DUP3
00001f24: PUSH2 0x285b
00001f27: JUMP
00001f28: JUMPDEST
00001f29: DUP5
00001f2a: DUP3
00001f2b: MSTORE
00001f2c: DUP4
00001f2d: PUSH1 0x20
00001f2f: DUP4
00001f30: ADD
00001f31: MSTORE
00001f32: CHAINID
00001f33: PUSH1 0x40
00001f35: DUP4
00001f36: ADD
00001f37: MSTORE
00001f38: TIMESTAMP
00001f39: PUSH1 0x60
00001f3b: DUP4
00001f3c: ADD
00001f3d: MSTORE
00001f3e: NUMBER
00001f3f: PUSH1 0x80
00001f41: DUP4
00001f42: ADD
00001f43: MSTORE
00001f44: PUSH2 0x2e03
00001f47: JUMP
00001f48: JUMPDEST
00001f49: PUSH1 0x40
00001f4b: MLOAD
00001f4c: CHAINID
00001f4d: DUP2
00001f4e: MSTORE
00001f4f: DUP2
00001f50: PUSH1 0x20
00001f52: DUP3
00001f53: ADD
00001f54: MSTORE
00001f55: PUSH32 0xac1d76749e5447b7b16f5ab61447e1bd502f3bb4807af3b28e620d1700a6ee45
00001f76: PUSH1 0x40
00001f78: CALLER
00001f79: SWAP3
00001f7a: LOG2
00001f7b: CHAINID
00001f7c: DUP3
00001f7d: MSTORE
00001f7e: PUSH1 0x16
00001f80: PUSH1 0x20
00001f82: MSTORE
00001f83: PUSH2 0x1f91
00001f86: PUSH1 0x40
00001f88: DUP4
00001f89: KECCAK256
00001f8a: SWAP2
00001f8b: DUP3
00001f8c: SLOAD
00001f8d: PUSH2 0x2aa6
00001f90: JUMP
00001f91: JUMPDEST
00001f92: SWAP1
00001f93: SSTORE
00001f94: PUSH1 0x01
00001f96: DUP1
00001f97: SSTORE
00001f98: DUP1
00001f99: RETURN
00001f9a: JUMPDEST
00001f9b: CALLER
00001f9c: PUSH1 0x00
00001f9e: SWAP1
00001f9f: DUP2
00001fa0: MSTORE
00001fa1: PUSH1 0x02
00001fa3: PUSH1 0x20
00001fa5: MSTORE
00001fa6: PUSH1 0x40
00001fa8: SWAP1
00001fa9: KECCAK256
00001faa: CHAINID
00001fab: DUP4
00001fac: MSTORE
00001fad: PUSH1 0x20
00001faf: MSTORE
00001fb0: PUSH1 0x40
00001fb2: DUP3
00001fb3: KECCAK256
00001fb4: PUSH2 0x1fbe
00001fb7: DUP3
00001fb8: DUP3
00001fb9: SLOAD
00001fba: PUSH2 0x2aa6
00001fbd: JUMP
00001fbe: JUMPDEST
00001fbf: SWAP1
00001fc0: SSTORE
00001fc1: PUSH2 0x1f08
00001fc4: JUMP
00001fc5: JUMPDEST
00001fc6: PUSH2 0x1fce
00001fc9: CALLER
00001fca: PUSH2 0x2dd2
00001fcd: JUMP
00001fce: JUMPDEST
00001fcf: CALLER
00001fd0: PUSH1 0x00
00001fd2: SWAP1
00001fd3: DUP2
00001fd4: MSTORE
00001fd5: PUSH1 0x04
00001fd7: PUSH1 0x20
00001fd9: MSTORE
00001fda: PUSH1 0x40
00001fdc: SWAP1
00001fdd: KECCAK256
00001fde: DUP1
00001fdf: SLOAD
00001fe0: PUSH1 0xff
00001fe2: NOT
00001fe3: AND
00001fe4: PUSH1 0x01
00001fe6: OR
00001fe7: SWAP1
00001fe8: SSTORE
00001fe9: PUSH2 0x1e88
00001fec: JUMP
00001fed: JUMPDEST
00001fee: CALLVALUE
00001fef: PUSH2 0x082d
00001ff2: JUMPI
00001ff3: DUP2
00001ff4: PUSH2 0x2000
00001ff7: SWAP2
00001ff8: ADDRESS
00001ff9: SWAP1
00001ffa: CALLER
00001ffb: SWAP1
00001ffc: PUSH2 0x2ccf
00001fff: JUMP
00002000: JUMPDEST
00002001: PUSH2 0x1e6c
00002004: JUMP
00002005: JUMPDEST
00002006: CALLVALUE
00002007: PUSH2 0x04fd
0000200a: JUMPI
0000200b: PUSH1 0x20
0000200d: CALLDATASIZE
0000200e: PUSH1 0x03
00002010: NOT
00002011: ADD
00002012: SLT
00002013: PUSH2 0x04fd
00002016: JUMPI
00002017: PUSH1 0x04
00002019: CALLDATALOAD
0000201a: PUSH1 0x00
0000201c: MSTORE
0000201d: PUSH1 0x0f
0000201f: PUSH1 0x20
00002021: MSTORE
00002022: PUSH1 0x20
00002024: PUSH1 0xff
00002026: PUSH1 0x40
00002028: PUSH1 0x00
0000202a: KECCAK256
0000202b: SLOAD
0000202c: AND
0000202d: PUSH1 0x40
0000202f: MLOAD
00002030: SWAP1
00002031: ISZERO
00002032: ISZERO
00002033: DUP2
00002034: MSTORE
00002035: RETURN
00002036: JUMPDEST
00002037: CALLVALUE
00002038: PUSH2 0x04fd
0000203b: JUMPI
0000203c: PUSH1 0x60
0000203e: CALLDATASIZE
0000203f: PUSH1 0x03
00002041: NOT
00002042: ADD
00002043: SLT
00002044: PUSH2 0x04fd
00002047: JUMPI
00002048: PUSH1 0x44
0000204a: CALLDATALOAD
0000204b: PUSH1 0x01
0000204d: PUSH1 0x01
0000204f: PUSH1 0xa0
00002051: SHL
00002052: SUB
00002053: DUP2
00002054: AND
00002055: DUP2
00002056: SUB
00002057: PUSH2 0x04fd
0000205a: JUMPI
0000205b: PUSH2 0x206c
0000205e: PUSH2 0x0a41
00002061: SWAP2
00002062: PUSH1 0x24
00002064: CALLDATALOAD
00002065: PUSH1 0x04
00002067: CALLDATALOAD
00002068: PUSH2 0x2a1e
0000206b: JUMP
0000206c: JUMPDEST
0000206d: PUSH1 0x40
0000206f: DUP1
00002070: MLOAD
00002071: SWAP4
00002072: DUP5
00002073: MSTORE
00002074: PUSH1 0x20
00002076: DUP5
00002077: ADD
00002078: SWAP3
00002079: SWAP1
0000207a: SWAP3
0000207b: MSTORE
0000207c: SWAP1
0000207d: DUP3
0000207e: ADD
0000207f: MSTORE
00002080: SWAP1
00002081: DUP2
00002082: SWAP1
00002083: PUSH1 0x60
00002085: DUP3
00002086: ADD
00002087: SWAP1
00002088: JUMP
00002089: JUMPDEST
0000208a: CALLVALUE
0000208b: PUSH2 0x04fd
0000208e: JUMPI
0000208f: PUSH1 0x00
00002091: CALLDATASIZE
00002092: PUSH1 0x03
00002094: NOT
00002095: ADD
00002096: SLT
00002097: PUSH2 0x04fd
0000209a: JUMPI
0000209b: PUSH2 0x20a2
0000209e: PUSH2 0x2d1a
000020a1: JUMP
000020a2: JUMPDEST
000020a3: PUSH1 0x10
000020a5: SLOAD
000020a6: PUSH1 0xff
000020a8: DUP2
000020a9: AND
000020aa: ISZERO
000020ab: PUSH2 0x20e1
000020ae: JUMPI
000020af: PUSH1 0xff
000020b1: NOT
000020b2: AND
000020b3: PUSH1 0x10
000020b5: SSTORE
000020b6: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa
000020d7: PUSH1 0x20
000020d9: PUSH1 0x40
000020db: MLOAD
000020dc: CALLER
000020dd: DUP2
000020de: MSTORE
000020df: LOG1
000020e0: STOP
000020e1: JUMPDEST
000020e2: PUSH4 0x6cd60201
000020e7: PUSH1 0xe0
000020e9: SHL
000020ea: PUSH1 0x00
000020ec: MSTORE
000020ed: PUSH1 0x04
000020ef: PUSH1 0x00
000020f1: REVERT
000020f2: JUMPDEST
000020f3: CALLVALUE
000020f4: PUSH2 0x04fd
000020f7: JUMPI
000020f8: PUSH1 0x00
000020fa: CALLDATASIZE
000020fb: PUSH1 0x03
000020fd: NOT
000020fe: ADD
000020ff: SLT
00002100: PUSH2 0x04fd
00002103: JUMPI
00002104: PUSH1 0x40
00002106: MLOAD
00002107: PUSH1 0x03
00002109: SLOAD
0000210a: DUP1
0000210b: DUP3
0000210c: MSTORE
0000210d: PUSH1 0x20
0000210f: DUP3
00002110: ADD
00002111: SWAP1
00002112: PUSH1 0x03
00002114: PUSH1 0x00
00002116: MSTORE
00002117: PUSH1 0x20
00002119: PUSH1 0x00
0000211b: KECCAK256
0000211c: SWAP1
0000211d: PUSH1 0x00
0000211f: JUMPDEST
00002120: DUP2
00002121: DUP2
00002122: LT
00002123: PUSH2 0x2136
00002126: JUMPI
00002127: PUSH2 0x0a41
0000212a: DUP6
0000212b: PUSH2 0x0a35
0000212e: DUP2
0000212f: DUP8
00002130: SUB
00002131: DUP3
00002132: PUSH2 0x2876
00002135: JUMP
00002136: JUMPDEST
00002137: DUP3
00002138: SLOAD
00002139: PUSH1 0x01
0000213b: PUSH1 0x01
0000213d: PUSH1 0xa0
0000213f: SHL
00002140: SUB
00002141: AND
00002142: DUP5
00002143: MSTORE
00002144: PUSH1 0x20
00002146: SWAP1
00002147: SWAP4
00002148: ADD
00002149: SWAP3
0000214a: PUSH1 0x01
0000214c: SWAP3
0000214d: DUP4
0000214e: ADD
0000214f: SWAP3
00002150: ADD
00002151: PUSH2 0x211f
00002154: JUMP
00002155: JUMPDEST
00002156: CALLVALUE
00002157: PUSH2 0x04fd
0000215a: JUMPI
0000215b: PUSH1 0x00
0000215d: CALLDATASIZE
0000215e: PUSH1 0x03
00002160: NOT
00002161: ADD
00002162: SLT
00002163: PUSH2 0x04fd
00002166: JUMPI
00002167: PUSH1 0x20
00002169: PUSH1 0x14
0000216b: SLOAD
0000216c: PUSH1 0x40
0000216e: MLOAD
0000216f: SWAP1
00002170: DUP2
00002171: MSTORE
00002172: RETURN
00002173: JUMPDEST
00002174: CALLVALUE
00002175: PUSH2 0x04fd
00002178: JUMPI
00002179: PUSH1 0x00
0000217b: CALLDATASIZE
0000217c: PUSH1 0x03
0000217e: NOT
0000217f: ADD
00002180: SLT
00002181: PUSH2 0x04fd
00002184: JUMPI
00002185: PUSH1 0x20
00002187: PUSH1 0x03
00002189: SLOAD
0000218a: PUSH1 0x40
0000218c: MLOAD
0000218d: SWAP1
0000218e: DUP2
0000218f: MSTORE
00002190: RETURN
00002191: JUMPDEST
00002192: CALLVALUE
00002193: PUSH2 0x04fd
00002196: JUMPI
00002197: PUSH1 0x00
00002199: CALLDATASIZE
0000219a: PUSH1 0x03
0000219c: NOT
0000219d: ADD
0000219e: SLT
0000219f: PUSH2 0x04fd
000021a2: JUMPI
000021a3: PUSH1 0x40
000021a5: PUSH1 0x14
000021a7: SLOAD
000021a8: PUSH1 0x15
000021aa: SLOAD
000021ab: DUP3
000021ac: MLOAD
000021ad: SWAP2
000021ae: DUP3
000021af: MSTORE
000021b0: PUSH1 0x20
000021b2: DUP3
000021b3: ADD
000021b4: MSTORE
000021b5: RETURN
000021b6: JUMPDEST
000021b7: CALLVALUE
000021b8: PUSH2 0x04fd
000021bb: JUMPI
000021bc: PUSH1 0x00
000021be: CALLDATASIZE
000021bf: PUSH1 0x03
000021c1: NOT
000021c2: ADD
000021c3: SLT
000021c4: PUSH2 0x04fd
000021c7: JUMPI
000021c8: PUSH1 0x40
000021ca: MLOAD
000021cb: PUSH1 0x0d
000021cd: SLOAD
000021ce: DUP1
000021cf: DUP3
000021d0: MSTORE
000021d1: PUSH1 0x20
000021d3: DUP3
000021d4: ADD
000021d5: SWAP1
000021d6: PUSH1 0x0d
000021d8: PUSH1 0x00
000021da: MSTORE
000021db: PUSH1 0x20
000021dd: PUSH1 0x00
000021df: KECCAK256
000021e0: SWAP1
000021e1: PUSH1 0x00
000021e3: JUMPDEST
000021e4: DUP2
000021e5: DUP2
000021e6: LT
000021e7: PUSH2 0x21fa
000021ea: JUMPI
000021eb: PUSH2 0x0a41
000021ee: DUP6
000021ef: PUSH2 0x0a35
000021f2: DUP2
000021f3: DUP8
000021f4: SUB
000021f5: DUP3
000021f6: PUSH2 0x2876
000021f9: JUMP
000021fa: JUMPDEST
000021fb: DUP3
000021fc: SLOAD
000021fd: PUSH1 0x01
000021ff: PUSH1 0x01
00002201: PUSH1 0xa0
00002203: SHL
00002204: SUB
00002205: AND
00002206: DUP5
00002207: MSTORE
00002208: PUSH1 0x20
0000220a: SWAP1
0000220b: SWAP4
0000220c: ADD
0000220d: SWAP3
0000220e: PUSH1 0x01
00002210: SWAP3
00002211: DUP4
00002212: ADD
00002213: SWAP3
00002214: ADD
00002215: PUSH2 0x21e3
00002218: JUMP
00002219: JUMPDEST
0000221a: CALLVALUE
0000221b: PUSH2 0x04fd
0000221e: JUMPI
0000221f: PUSH1 0x20
00002221: CALLDATASIZE
00002222: PUSH1 0x03
00002224: NOT
00002225: ADD
00002226: SLT
00002227: PUSH2 0x04fd
0000222a: JUMPI
0000222b: PUSH1 0x01
0000222d: PUSH1 0x01
0000222f: PUSH1 0xa0
00002231: SHL
00002232: SUB
00002233: PUSH2 0x223a
00002236: PUSH2 0x27fe
00002239: JUMP
0000223a: JUMPDEST
0000223b: AND
0000223c: PUSH1 0x00
0000223e: MSTORE
0000223f: PUSH1 0x13
00002241: PUSH1 0x20
00002243: MSTORE
00002244: PUSH1 0x40
00002246: PUSH1 0x00
00002248: KECCAK256
00002249: PUSH1 0xff
0000224b: PUSH1 0x01
0000224d: DUP3
0000224e: SLOAD
0000224f: SWAP3
00002250: ADD
00002251: SLOAD
00002252: AND
00002253: SWAP1
00002254: PUSH2 0x0a41
00002257: PUSH1 0x40
00002259: MLOAD
0000225a: SWAP3
0000225b: DUP4
0000225c: SWAP3
0000225d: DUP4
0000225e: SWAP1
0000225f: SWAP3
00002260: SWAP2
00002261: PUSH1 0x20
00002263: SWAP1
00002264: PUSH1 0x40
00002266: DUP4
00002267: ADD
00002268: SWAP5
00002269: DUP4
0000226a: MSTORE
0000226b: ISZERO
0000226c: ISZERO
0000226d: SWAP2
0000226e: ADD
0000226f: MSTORE
00002270: JUMP
00002271: JUMPDEST
00002272: CALLVALUE
00002273: PUSH2 0x04fd
00002276: JUMPI
00002277: PUSH1 0x20
00002279: CALLDATASIZE
0000227a: PUSH1 0x03
0000227c: NOT
0000227d: ADD
0000227e: SLT
0000227f: PUSH2 0x04fd
00002282: JUMPI
00002283: PUSH1 0x04
00002285: CALLDATALOAD
00002286: PUSH1 0x01
00002288: PUSH1 0x01
0000228a: PUSH1 0x40
0000228c: SHL
0000228d: SUB
0000228e: DUP2
0000228f: GT
00002290: PUSH2 0x04fd
00002293: JUMPI
00002294: CALLDATASIZE
00002295: PUSH1 0x23
00002297: DUP3
00002298: ADD
00002299: SLT
0000229a: ISZERO
0000229b: PUSH2 0x04fd
0000229e: JUMPI
0000229f: DUP1
000022a0: PUSH1 0x04
000022a2: ADD
000022a3: CALLDATALOAD
000022a4: PUSH1 0x01
000022a6: PUSH1 0x01
000022a8: PUSH1 0x40
000022aa: SHL
000022ab: SUB
000022ac: DUP2
000022ad: GT
000022ae: PUSH2 0x04fd
000022b1: JUMPI
000022b2: PUSH1 0x24
000022b4: DUP3
000022b5: ADD
000022b6: SWAP2
000022b7: PUSH1 0x24
000022b9: CALLDATASIZE
000022ba: SWAP2
000022bb: DUP4
000022bc: PUSH1 0x06
000022be: SHL
000022bf: ADD
000022c0: ADD
000022c1: GT
000022c2: PUSH2 0x04fd
000022c5: JUMPI
000022c6: PUSH2 0x22cd
000022c9: PUSH2 0x2d1a
000022cc: JUMP
000022cd: JUMPDEST
000022ce: PUSH1 0xff
000022d0: PUSH1 0x10
000022d2: SLOAD
000022d3: AND
000022d4: PUSH2 0x090f
000022d7: JUMPI
000022d8: DUP1
000022d9: ISZERO
000022da: PUSH2 0x24b5
000022dd: JUMPI
000022de: PUSH1 0x00
000022e0: JUMPDEST
000022e1: DUP2
000022e2: DUP2
000022e3: LT
000022e4: PUSH2 0x22e9
000022e7: JUMPI
000022e8: STOP
000022e9: JUMPDEST
000022ea: PUSH2 0x22f4
000022ed: DUP2
000022ee: DUP4
000022ef: DUP6
000022f0: PUSH2 0x2d43
000022f3: JUMP
000022f4: JUMPDEST
000022f5: CALLDATALOAD
000022f6: SWAP1
000022f7: PUSH1 0x01
000022f9: PUSH1 0x01
000022fb: PUSH1 0xa0
000022fd: SHL
000022fe: SUB
000022ff: DUP3
00002300: AND
00002301: DUP1
00002302: DUP4
00002303: SUB
00002304: PUSH2 0x04fd
00002307: JUMPI
00002308: PUSH1 0x20
0000230a: PUSH2 0x2314
0000230d: DUP4
0000230e: DUP7
0000230f: DUP9
00002310: PUSH2 0x2d43
00002313: JUMP
00002314: JUMPDEST
00002315: ADD
00002316: CALLDATALOAD
00002317: DUP2
00002318: ISZERO
00002319: PUSH2 0x24a4
0000231c: JUMPI
0000231d: DUP1
0000231e: ISZERO
0000231f: PUSH2 0x082d
00002322: JUMPI
00002323: PUSH1 0x40
00002325: PUSH32 0x5a62aba63389893aaba0a4723ed5972cf3539fa02e74e3ace4eb4f8b47b70ce5
00002346: SWAP2
00002347: PUSH2 0x242d
0000234a: PUSH2 0x2401
0000234d: DUP8
0000234e: PUSH1 0xff
00002350: PUSH2 0x236d
00002353: PUSH1 0x01
00002355: SWAP11
00002356: PUSH1 0x01
00002358: DUP1
00002359: PUSH1 0xa0
0000235b: SHL
0000235c: SUB
0000235d: AND
0000235e: PUSH1 0x00
00002360: MSTORE
00002361: PUSH1 0x04
00002363: PUSH1 0x20
00002365: MSTORE
00002366: PUSH1 0x40
00002368: PUSH1 0x00
0000236a: KECCAK256
0000236b: SWAP1
0000236c: JUMP
0000236d: JUMPDEST
0000236e: SLOAD
0000236f: AND
00002370: ISZERO
00002371: PUSH2 0x2474
00002374: JUMPI
00002375: JUMPDEST
00002376: PUSH1 0x01
00002378: PUSH1 0x01
0000237a: PUSH1 0xa0
0000237c: SHL
0000237d: SUB
0000237e: DUP2
0000237f: AND
00002380: PUSH1 0x00
00002382: SWAP1
00002383: DUP2
00002384: MSTORE
00002385: PUSH1 0x02
00002387: PUSH1 0x20
00002389: MSTORE
0000238a: PUSH1 0x40
0000238c: SWAP1
0000238d: KECCAK256
0000238e: CHAINID
0000238f: PUSH1 0x00
00002391: MSTORE
00002392: PUSH1 0x20
00002394: MSTORE
00002395: PUSH1 0xff
00002397: DUP10
00002398: DUP7
00002399: PUSH1 0x00
0000239b: KECCAK256
0000239c: ADD
0000239d: SLOAD
0000239e: AND
0000239f: ISZERO
000023a0: PUSH1 0x00
000023a2: EQ
000023a3: PUSH2 0x243f
000023a6: JUMPI
000023a7: PUSH2 0x0a61
000023aa: DUP6
000023ab: MLOAD
000023ac: PUSH2 0x23b4
000023af: DUP2
000023b0: PUSH2 0x2840
000023b3: JUMP
000023b4: JUMPDEST
000023b5: DUP6
000023b6: DUP2
000023b7: MSTORE
000023b8: DUP11
000023b9: PUSH1 0x20
000023bb: DUP3
000023bc: ADD
000023bd: MSTORE
000023be: PUSH2 0x23d9
000023c1: DUP4
000023c2: PUSH1 0x01
000023c4: DUP1
000023c5: PUSH1 0xa0
000023c7: SHL
000023c8: SUB
000023c9: AND
000023ca: PUSH1 0x00
000023cc: MSTORE
000023cd: PUSH1 0x02
000023cf: PUSH1 0x20
000023d1: MSTORE
000023d2: PUSH1 0x40
000023d4: PUSH1 0x00
000023d6: KECCAK256
000023d7: SWAP1
000023d8: JUMP
000023d9: JUMPDEST
000023da: CHAINID
000023db: PUSH1 0x00
000023dd: MSTORE
000023de: PUSH1 0x20
000023e0: MSTORE
000023e1: DUP7
000023e2: PUSH1 0x00
000023e4: KECCAK256
000023e5: PUSH1 0x01
000023e7: PUSH1 0x20
000023e9: SWAP2
000023ea: DUP4
000023eb: MLOAD
000023ec: DUP2
000023ed: SSTORE
000023ee: ADD
000023ef: SWAP2
000023f0: ADD
000023f1: MLOAD
000023f2: ISZERO
000023f3: ISZERO
000023f4: PUSH1 0xff
000023f6: DUP1
000023f7: NOT
000023f8: DUP4
000023f9: SLOAD
000023fa: AND
000023fb: SWAP2
000023fc: AND
000023fd: OR
000023fe: SWAP1
000023ff: SSTORE
00002400: JUMP
00002401: JUMPDEST
00002402: DUP4
00002403: MLOAD
00002404: SWAP1
00002405: PUSH2 0x240d
00002408: DUP3
00002409: PUSH2 0x285b
0000240c: JUMP
0000240d: JUMPDEST
0000240e: PUSH1 0x00
00002410: DUP3
00002411: MSTORE
00002412: DUP4
00002413: PUSH1 0x20
00002415: DUP4
00002416: ADD
00002417: MSTORE
00002418: CHAINID
00002419: DUP6
0000241a: DUP4
0000241b: ADD
0000241c: MSTORE
0000241d: TIMESTAMP
0000241e: PUSH1 0x60
00002420: DUP4
00002421: ADD
00002422: MSTORE
00002423: NUMBER
00002424: PUSH1 0x80
00002426: DUP4
00002427: ADD
00002428: MSTORE
00002429: PUSH2 0x2e03
0000242c: JUMP
0000242d: JUMPDEST
0000242e: DUP2
0000242f: MLOAD
00002430: SWAP1
00002431: CHAINID
00002432: DUP3
00002433: MSTORE
00002434: PUSH1 0x20
00002436: DUP3
00002437: ADD
00002438: MSTORE
00002439: LOG2
0000243a: ADD
0000243b: PUSH2 0x22e0
0000243e: JUMP
0000243f: JUMPDEST
00002440: PUSH1 0x01
00002442: PUSH1 0x01
00002444: PUSH1 0xa0
00002446: SHL
00002447: SUB
00002448: DUP2
00002449: AND
0000244a: PUSH1 0x00
0000244c: SWAP1
0000244d: DUP2
0000244e: MSTORE
0000244f: PUSH1 0x02
00002451: PUSH1 0x20
00002453: MSTORE
00002454: PUSH1 0x40
00002456: SWAP1
00002457: KECCAK256
00002458: CHAINID
00002459: PUSH1 0x00
0000245b: MSTORE
0000245c: PUSH1 0x20
0000245e: MSTORE
0000245f: DUP5
00002460: PUSH1 0x00
00002462: KECCAK256
00002463: PUSH2 0x246d
00002466: DUP6
00002467: DUP3
00002468: SLOAD
00002469: PUSH2 0x2aa6
0000246c: JUMP
0000246d: JUMPDEST
0000246e: SWAP1
0000246f: SSTORE
00002470: PUSH2 0x0a61
00002473: JUMP
00002474: JUMPDEST
00002475: PUSH2 0x247d
00002478: DUP2
00002479: PUSH2 0x2dd2
0000247c: JUMP
0000247d: JUMPDEST
0000247e: PUSH1 0x01
00002480: PUSH1 0x01
00002482: PUSH1 0xa0
00002484: SHL
00002485: SUB
00002486: DUP2
00002487: AND
00002488: PUSH1 0x00
0000248a: SWAP1
0000248b: DUP2
0000248c: MSTORE
0000248d: PUSH1 0x04
0000248f: PUSH1 0x20
00002491: MSTORE
00002492: PUSH1 0x40
00002494: SWAP1
00002495: KECCAK256
00002496: DUP1
00002497: SLOAD
00002498: PUSH1 0xff
0000249a: NOT
0000249b: AND
0000249c: DUP11
0000249d: OR
0000249e: SWAP1
0000249f: SSTORE
000024a0: PUSH2 0x2375
000024a3: JUMP
000024a4: JUMPDEST
000024a5: PUSH4 0x5005cc11
000024aa: PUSH1 0xe1
000024ac: SHL
000024ad: PUSH1 0x00
000024af: MSTORE
000024b0: PUSH1 0x04
000024b2: PUSH1 0x00
000024b4: REVERT
000024b5: JUMPDEST
000024b6: PUSH4 0x521299a9
000024bb: PUSH1 0xe0
000024bd: SHL
000024be: PUSH1 0x00
000024c0: MSTORE
000024c1: PUSH1 0x04
000024c3: PUSH1 0x00
000024c5: REVERT
000024c6: JUMPDEST
000024c7: CALLVALUE
000024c8: PUSH2 0x04fd
000024cb: JUMPI
000024cc: PUSH1 0x00
000024ce: CALLDATASIZE
000024cf: PUSH1 0x03
000024d1: NOT
000024d2: ADD
000024d3: SLT
000024d4: PUSH2 0x04fd
000024d7: JUMPI
000024d8: PUSH1 0x40
000024da: MLOAD
000024db: PUSH1 0x0b
000024dd: SLOAD
000024de: DUP1
000024df: DUP3
000024e0: MSTORE
000024e1: PUSH1 0x20
000024e3: DUP3
000024e4: ADD
000024e5: SWAP1
000024e6: PUSH1 0x0b
000024e8: PUSH1 0x00
000024ea: MSTORE
000024eb: PUSH1 0x20
000024ed: PUSH1 0x00
000024ef: KECCAK256
000024f0: SWAP1
000024f1: PUSH1 0x00
000024f3: JUMPDEST
000024f4: DUP2
000024f5: DUP2
000024f6: LT
000024f7: PUSH2 0x250a
000024fa: JUMPI
000024fb: PUSH2 0x0a41
000024fe: DUP6
000024ff: PUSH2 0x0a35
00002502: DUP2
00002503: DUP8
00002504: SUB
00002505: DUP3
00002506: PUSH2 0x2876
00002509: JUMP
0000250a: JUMPDEST
0000250b: DUP3
0000250c: SLOAD
0000250d: PUSH1 0x01
0000250f: PUSH1 0x01
00002511: PUSH1 0xa0
00002513: SHL
00002514: SUB
00002515: AND
00002516: DUP5
00002517: MSTORE
00002518: PUSH1 0x20
0000251a: SWAP1
0000251b: SWAP4
0000251c: ADD
0000251d: SWAP3
0000251e: PUSH1 0x01
00002520: SWAP3
00002521: DUP4
00002522: ADD
00002523: SWAP3
00002524: ADD
00002525: PUSH2 0x24f3
00002528: JUMP
00002529: JUMPDEST
0000252a: CALLVALUE
0000252b: PUSH2 0x04fd
0000252e: JUMPI
0000252f: PUSH1 0x00
00002531: CALLDATASIZE
00002532: PUSH1 0x03
00002534: NOT
00002535: ADD
00002536: SLT
00002537: PUSH2 0x04fd
0000253a: JUMPI
0000253b: PUSH1 0x40
0000253d: MLOAD
0000253e: PUSH1 0x00
00002540: PUSH1 0x11
00002542: SLOAD
00002543: SWAP1
00002544: DUP2
00002545: PUSH1 0x01
00002547: SHR
00002548: SWAP2
00002549: PUSH1 0x01
0000254b: DUP2
0000254c: AND
0000254d: DUP1
0000254e: ISZERO
0000254f: PUSH2 0x2661
00002552: JUMPI
00002553: JUMPDEST
00002554: PUSH1 0x20
00002556: DUP5
00002557: LT
00002558: DUP2
00002559: EQ
0000255a: PUSH2 0x264d
0000255d: JUMPI
0000255e: DUP4
0000255f: DUP6
00002560: MSTORE
00002561: DUP5
00002562: SWAP3
00002563: SWAP2
00002564: DUP2
00002565: ISZERO
00002566: PUSH2 0x262e
00002569: JUMPI
0000256a: POP
0000256b: PUSH1 0x01
0000256d: EQ
0000256e: PUSH2 0x25cd
00002571: JUMPI
00002572: JUMPDEST
00002573: PUSH2 0x257e
00002576: SWAP3
00002577: POP
00002578: SUB
00002579: DUP3
0000257a: PUSH2 0x2876
0000257d: JUMP
0000257e: JUMPDEST
0000257f: PUSH1 0x40
00002581: MLOAD
00002582: SWAP1
00002583: PUSH1 0x20
00002585: DUP3
00002586: MSTORE
00002587: DUP2
00002588: DUP2
00002589: MLOAD
0000258a: SWAP2
0000258b: DUP3
0000258c: PUSH1 0x20
0000258e: DUP4
0000258f: ADD
00002590: MSTORE
00002591: PUSH1 0x00
00002593: JUMPDEST
00002594: DUP4
00002595: DUP2
00002596: LT
00002597: PUSH2 0x25b5
0000259a: JUMPI
0000259b: POP
0000259c: POP
0000259d: DUP2
0000259e: PUSH1 0x00
000025a0: PUSH1 0x40
000025a2: DUP1
000025a3: SWAP5
000025a4: DUP5
000025a5: ADD
000025a6: ADD
000025a7: MSTORE
000025a8: PUSH1 0x1f
000025aa: DUP1
000025ab: NOT
000025ac: SWAP2
000025ad: ADD
000025ae: AND
000025af: DUP2
000025b0: ADD
000025b1: SUB
000025b2: ADD
000025b3: SWAP1
000025b4: RETURN
000025b5: JUMPDEST
000025b6: PUSH1 0x20
000025b8: DUP3
000025b9: DUP3
000025ba: ADD
000025bb: DUP2
000025bc: ADD
000025bd: MLOAD
000025be: PUSH1 0x40
000025c0: DUP8
000025c1: DUP5
000025c2: ADD
000025c3: ADD
000025c4: MSTORE
000025c5: DUP6
000025c6: SWAP4
000025c7: POP
000025c8: ADD
000025c9: PUSH2 0x2593
000025cc: JUMP
000025cd: JUMPDEST
000025ce: POP
000025cf: SWAP1
000025d0: PUSH1 0x11
000025d2: PUSH1 0x00
000025d4: MSTORE
000025d5: PUSH32 0x31ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68
000025f6: SWAP1
000025f7: PUSH1 0x00
000025f9: SWAP2
000025fa: JUMPDEST
000025fb: DUP2
000025fc: DUP4
000025fd: LT
000025fe: PUSH2 0x2612
00002601: JUMPI
00002602: POP
00002603: POP
00002604: SWAP1
00002605: PUSH1 0x20
00002607: PUSH2 0x257e
0000260a: SWAP3
0000260b: DUP3
0000260c: ADD
0000260d: ADD
0000260e: PUSH2 0x2572
00002611: JUMP
00002612: JUMPDEST
00002613: PUSH1 0x20
00002615: SWAP2
00002616: SWAP4
00002617: POP
00002618: DUP1
00002619: PUSH1 0x01
0000261b: SWAP2
0000261c: SLOAD
0000261d: DUP4
0000261e: DUP6
0000261f: DUP9
00002620: ADD
00002621: ADD
00002622: MSTORE
00002623: ADD
00002624: SWAP2
00002625: ADD
00002626: SWAP1
00002627: SWAP2
00002628: DUP4
00002629: SWAP3
0000262a: PUSH2 0x25fa
0000262d: JUMP
0000262e: JUMPDEST
0000262f: PUSH1 0x20
00002631: SWAP3
00002632: POP
00002633: PUSH2 0x257e
00002636: SWAP5
00002637: SWAP2
00002638: POP
00002639: PUSH1 0xff
0000263b: NOT
0000263c: AND
0000263d: DUP3
0000263e: DUP5
0000263f: ADD
00002640: MSTORE
00002641: ISZERO
00002642: ISZERO
00002643: PUSH1 0x05
00002645: SHL
00002646: DUP3
00002647: ADD
00002648: ADD
00002649: PUSH2 0x2572
0000264c: JUMP
0000264d: JUMPDEST
0000264e: PUSH4 0x4e487b71
00002653: PUSH1 0xe0
00002655: SHL
00002656: DUP4
00002657: MSTORE
00002658: PUSH1 0x22
0000265a: PUSH1 0x04
0000265c: MSTORE
0000265d: PUSH1 0x24
0000265f: DUP4
00002660: REVERT
00002661: JUMPDEST
00002662: SWAP3
00002663: PUSH1 0x7f
00002665: AND
00002666: SWAP3
00002667: PUSH2 0x2553
0000266a: JUMP
0000266b: JUMPDEST
0000266c: CALLVALUE
0000266d: PUSH2 0x04fd
00002670: JUMPI
00002671: PUSH1 0x40
00002673: CALLDATASIZE
00002674: PUSH1 0x03
00002676: NOT
00002677: ADD
00002678: SLT
00002679: PUSH2 0x04fd
0000267c: JUMPI
0000267d: PUSH2 0x2684
00002680: PUSH2 0x27fe
00002683: JUMP
00002684: JUMPDEST
00002685: PUSH1 0x24
00002687: CALLDATALOAD
00002688: SWAP1
00002689: PUSH2 0x2690
0000268c: PUSH2 0x2d1a
0000268f: JUMP
00002690: JUMPDEST
00002691: PUSH1 0x01
00002693: PUSH1 0x01
00002695: PUSH1 0xa0
00002697: SHL
00002698: SUB
00002699: AND
0000269a: SWAP1
0000269b: DUP2
0000269c: ISZERO
0000269d: PUSH2 0x0e23
000026a0: JUMPI
000026a1: PUSH2 0x03e8
000026a4: DUP2
000026a5: GT
000026a6: PUSH2 0x062e
000026a9: JUMPI
000026aa: PUSH1 0x40
000026ac: PUSH32 0x31e382eb6f72cd451263239664ad5dded9559f11d45df14b028ff74748d9ebc0
000026cd: SWAP2
000026ce: DUP4
000026cf: PUSH1 0x00
000026d1: MSTORE
000026d2: PUSH1 0x13
000026d4: PUSH1 0x20
000026d6: MSTORE
000026d7: DUP2
000026d8: PUSH1 0x00
000026da: KECCAK256
000026db: SLOAD
000026dc: SWAP1
000026dd: PUSH2 0x271e
000026e0: DUP4
000026e1: MLOAD
000026e2: PUSH2 0x26ea
000026e5: DUP2
000026e6: PUSH2 0x2840
000026e9: JUMP
000026ea: JUMPDEST
000026eb: DUP3
000026ec: DUP2
000026ed: MSTORE
000026ee: PUSH1 0x01
000026f0: PUSH1 0x20
000026f2: DUP3
000026f3: ADD
000026f4: MSTORE
000026f5: DUP7
000026f6: PUSH1 0x00
000026f8: MSTORE
000026f9: PUSH1 0x13
000026fb: PUSH1 0x20
000026fd: MSTORE
000026fe: DUP5
000026ff: PUSH1 0x00
00002701: KECCAK256
00002702: PUSH1 0x01
00002704: PUSH1 0x20
00002706: SWAP2
00002707: DUP4
00002708: MLOAD
00002709: DUP2
0000270a: SSTORE
0000270b: ADD
0000270c: SWAP2
0000270d: ADD
0000270e: MLOAD
0000270f: ISZERO
00002710: ISZERO
00002711: PUSH1 0xff
00002713: DUP1
00002714: NOT
00002715: DUP4
00002716: SLOAD
00002717: AND
00002718: SWAP2
00002719: AND
0000271a: OR
0000271b: SWAP1
0000271c: SSTORE
0000271d: JUMP
0000271e: JUMPDEST
0000271f: DUP3
00002720: MLOAD
00002721: SWAP2
00002722: DUP3
00002723: MSTORE
00002724: PUSH1 0x20
00002726: DUP3
00002727: ADD
00002728: MSTORE
00002729: LOG2
0000272a: STOP
0000272b: JUMPDEST
0000272c: PUSH1 0x40
0000272e: CALLDATASIZE
0000272f: PUSH1 0x03
00002731: NOT
00002732: ADD
00002733: SLT
00002734: PUSH2 0x04fd
00002737: JUMPI
00002738: PUSH2 0x273f
0000273b: PUSH2 0x27fe
0000273e: JUMP
0000273f: JUMPDEST
00002740: CALLER
00002741: PUSH1 0x00
00002743: SWAP1
00002744: DUP2
00002745: MSTORE
00002746: PUSH1 0x0c
00002748: PUSH1 0x20
0000274a: MSTORE
0000274b: PUSH1 0x40
0000274d: SWAP1
0000274e: KECCAK256
0000274f: SLOAD
00002750: PUSH1 0x24
00002752: CALLDATALOAD
00002753: SWAP2
00002754: SWAP1
00002755: PUSH1 0xff
00002757: AND
00002758: ISZERO
00002759: PUSH2 0x1a76
0000275c: JUMPI
0000275d: PUSH2 0x2764
00002760: PUSH2 0x2cad
00002763: JUMP
00002764: JUMPDEST
00002765: PUSH1 0x01
00002767: PUSH1 0x01
00002769: PUSH1 0xa0
0000276b: SHL
0000276c: SUB
0000276d: AND
0000276e: SWAP1
0000276f: DUP2
00002770: PUSH2 0x27b4
00002773: JUMPI
00002774: POP
00002775: CALLVALUE
00002776: ISZERO
00002777: PUSH2 0x082d
0000277a: JUMPI
0000277b: PUSH1 0x40
0000277d: MLOAD
0000277e: SWAP1
0000277f: CALLVALUE
00002780: DUP3
00002781: MSTORE
00002782: TIMESTAMP
00002783: PUSH1 0x20
00002785: DUP4
00002786: ADD
00002787: MSTORE
00002788: PUSH32 0x0d755ae8a5f6f0781bb0d1a9541308461f6a8b64fd4b3dfa8b83daf0cdb8d195
000027a9: PUSH1 0x40
000027ab: CALLER
000027ac: SWAP4
000027ad: LOG3
000027ae: JUMPDEST
000027af: PUSH1 0x01
000027b1: DUP1
000027b2: SSTORE
000027b3: STOP
000027b4: JUMPDEST
000027b5: SWAP1
000027b6: DUP2
000027b7: ISZERO
000027b8: PUSH2 0x082d
000027bb: JUMPI
000027bc: PUSH2 0x27c7
000027bf: DUP3
000027c0: ADDRESS
000027c1: CALLER
000027c2: DUP5
000027c3: PUSH2 0x2ccf
000027c6: JUMP
000027c7: JUMPDEST
000027c8: PUSH1 0x40
000027ca: MLOAD
000027cb: SWAP2
000027cc: DUP3
000027cd: MSTORE
000027ce: TIMESTAMP
000027cf: PUSH1 0x20
000027d1: DUP4
000027d2: ADD
000027d3: MSTORE
000027d4: PUSH32 0x0d755ae8a5f6f0781bb0d1a9541308461f6a8b64fd4b3dfa8b83daf0cdb8d195
000027f5: PUSH1 0x40
000027f7: CALLER
000027f8: SWAP4
000027f9: LOG3
000027fa: PUSH2 0x27ae
000027fd: JUMP
000027fe: JUMPDEST
000027ff: PUSH1 0x04
00002801: CALLDATALOAD
00002802: SWAP1
00002803: PUSH1 0x01
00002805: PUSH1 0x01
00002807: PUSH1 0xa0
00002809: SHL
0000280a: SUB
0000280b: DUP3
0000280c: AND
0000280d: DUP3
0000280e: SUB
0000280f: PUSH2 0x04fd
00002812: JUMPI
00002813: JUMP
00002814: JUMPDEST
00002815: PUSH1 0x24
00002817: CALLDATALOAD
00002818: SWAP1
00002819: PUSH1 0x01
0000281b: PUSH1 0x01
0000281d: PUSH1 0xa0
0000281f: SHL
00002820: SUB
00002821: DUP3
00002822: AND
00002823: DUP3
00002824: SUB
00002825: PUSH2 0x04fd
00002828: JUMPI
00002829: JUMP
0000282a: JUMPDEST
0000282b: PUSH1 0x64
0000282d: CALLDATALOAD
0000282e: SWAP1
0000282f: PUSH1 0x01
00002831: PUSH1 0x01
00002833: PUSH1 0xa0
00002835: SHL
00002836: SUB
00002837: DUP3
00002838: AND
00002839: DUP3
0000283a: SUB
0000283b: PUSH2 0x04fd
0000283e: JUMPI
0000283f: JUMP
00002840: JUMPDEST
00002841: PUSH1 0x40
00002843: DUP2
00002844: ADD
00002845: SWAP1
00002846: DUP2
00002847: LT
00002848: PUSH1 0x01
0000284a: PUSH1 0x01
0000284c: PUSH1 0x40
0000284e: SHL
0000284f: SUB
00002850: DUP3
00002851: GT
00002852: OR
00002853: PUSH2 0x0380
00002856: JUMPI
00002857: PUSH1 0x40
00002859: MSTORE
0000285a: JUMP
0000285b: JUMPDEST
0000285c: PUSH1 0xa0
0000285e: DUP2
0000285f: ADD
00002860: SWAP1
00002861: DUP2
00002862: LT
00002863: PUSH1 0x01
00002865: PUSH1 0x01
00002867: PUSH1 0x40
00002869: SHL
0000286a: SUB
0000286b: DUP3
0000286c: GT
0000286d: OR
0000286e: PUSH2 0x0380
00002871: JUMPI
00002872: PUSH1 0x40
00002874: MSTORE
00002875: JUMP
00002876: JUMPDEST
00002877: SWAP1
00002878: PUSH1 0x1f
0000287a: DUP1
0000287b: NOT
0000287c: SWAP2
0000287d: ADD
0000287e: AND
0000287f: DUP2
00002880: ADD
00002881: SWAP1
00002882: DUP2
00002883: LT
00002884: PUSH1 0x01
00002886: PUSH1 0x01
00002888: PUSH1 0x40
0000288a: SHL
0000288b: SUB
0000288c: DUP3
0000288d: GT
0000288e: OR
0000288f: PUSH2 0x0380
00002892: JUMPI
00002893: PUSH1 0x40
00002895: MSTORE
00002896: JUMP
00002897: JUMPDEST
00002898: PUSH1 0x20
0000289a: PUSH1 0x40
0000289c: DUP2
0000289d: DUP4
0000289e: ADD
0000289f: SWAP3
000028a0: DUP3
000028a1: DUP2
000028a2: MSTORE
000028a3: DUP5
000028a4: MLOAD
000028a5: DUP1
000028a6: SWAP5
000028a7: MSTORE
000028a8: ADD
000028a9: SWAP3
000028aa: ADD
000028ab: SWAP1
000028ac: PUSH1 0x00
000028ae: JUMPDEST
000028af: DUP2
000028b0: DUP2
000028b1: LT
000028b2: PUSH2 0x28bb
000028b5: JUMPI
000028b6: POP
000028b7: POP
000028b8: POP
000028b9: SWAP1
000028ba: JUMP
000028bb: JUMPDEST
000028bc: DUP3
000028bd: MLOAD
000028be: PUSH1 0x01
000028c0: PUSH1 0x01
000028c2: PUSH1 0xa0
000028c4: SHL
000028c5: SUB
000028c6: AND
000028c7: DUP5
000028c8: MSTORE
000028c9: PUSH1 0x20
000028cb: SWAP4
000028cc: DUP5
000028cd: ADD
000028ce: SWAP4
000028cf: SWAP1
000028d0: SWAP3
000028d1: ADD
000028d2: SWAP2
000028d3: PUSH1 0x01
000028d5: ADD
000028d6: PUSH2 0x28ae
000028d9: JUMP
000028da: JUMPDEST
000028db: PUSH1 0x40
000028dd: SWAP1
000028de: PUSH1 0x03
000028e0: NOT
000028e1: ADD
000028e2: SLT
000028e3: PUSH2 0x04fd
000028e6: JUMPI
000028e7: PUSH1 0x04
000028e9: CALLDATALOAD
000028ea: PUSH1 0x01
000028ec: PUSH1 0x01
000028ee: PUSH1 0xa0
000028f0: SHL
000028f1: SUB
000028f2: DUP2
000028f3: AND
000028f4: DUP2
000028f5: SUB
000028f6: PUSH2 0x04fd
000028f9: JUMPI
000028fa: SWAP1
000028fb: PUSH1 0x24
000028fd: CALLDATALOAD
000028fe: DUP1
000028ff: ISZERO
00002900: ISZERO
00002901: DUP2
00002902: SUB
00002903: PUSH2 0x04fd
00002906: JUMPI
00002907: SWAP1
00002908: JUMP
00002909: JUMPDEST
0000290a: SWAP2
0000290b: DUP2
0000290c: PUSH1 0x1f
0000290e: DUP5
0000290f: ADD
00002910: SLT
00002911: ISZERO
00002912: PUSH2 0x04fd
00002915: JUMPI
00002916: DUP3
00002917: CALLDATALOAD
00002918: SWAP2
00002919: PUSH1 0x01
0000291b: PUSH1 0x01
0000291d: PUSH1 0x40
0000291f: SHL
00002920: SUB
00002921: DUP4
00002922: GT
00002923: PUSH2 0x04fd
00002926: JUMPI
00002927: PUSH1 0x20
00002929: DUP1
0000292a: DUP6
0000292b: ADD
0000292c: SWAP5
0000292d: DUP5
0000292e: PUSH1 0x05
00002930: SHL
00002931: ADD
00002932: ADD
00002933: GT
00002934: PUSH2 0x04fd
00002937: JUMPI
00002938: JUMP
00002939: JUMPDEST
0000293a: SWAP2
0000293b: DUP2
0000293c: PUSH1 0x1f
0000293e: DUP5
0000293f: ADD
00002940: SLT
00002941: ISZERO
00002942: PUSH2 0x04fd
00002945: JUMPI
00002946: DUP3
00002947: CALLDATALOAD
00002948: SWAP2
00002949: PUSH1 0x01
0000294b: PUSH1 0x01
0000294d: PUSH1 0x40
0000294f: SHL
00002950: SUB
00002951: DUP4
00002952: GT
00002953: PUSH2 0x04fd
00002956: JUMPI
00002957: PUSH1 0x20
00002959: DUP4
0000295a: DUP2
0000295b: DUP7
0000295c: ADD
0000295d: SWAP6
0000295e: ADD
0000295f: ADD
00002960: GT
00002961: PUSH2 0x04fd
00002964: JUMPI
00002965: JUMP
00002966: JUMPDEST
00002967: PUSH1 0x40
00002969: SWAP1
0000296a: PUSH1 0x03
0000296c: NOT
0000296d: ADD
0000296e: SLT
0000296f: PUSH2 0x04fd
00002972: JUMPI
00002973: PUSH1 0x04
00002975: CALLDATALOAD
00002976: SWAP1
00002977: PUSH1 0x24
00002979: CALLDATALOAD
0000297a: SWAP1
0000297b: JUMP
0000297c: JUMPDEST
0000297d: PUSH1 0x20
0000297f: PUSH1 0x40
00002981: DUP2
00002982: DUP4
00002983: ADD
00002984: SWAP3
00002985: DUP3
00002986: DUP2
00002987: MSTORE
00002988: DUP5
00002989: MLOAD
0000298a: DUP1
0000298b: SWAP5
0000298c: MSTORE
0000298d: ADD
0000298e: SWAP3
0000298f: ADD
00002990: SWAP1
00002991: PUSH1 0x00
00002993: JUMPDEST
00002994: DUP2
00002995: DUP2
00002996: LT
00002997: PUSH2 0x29a0
0000299a: JUMPI
0000299b: POP
0000299c: POP
0000299d: POP
0000299e: SWAP1
0000299f: JUMP
000029a0: JUMPDEST
000029a1: SWAP1
000029a2: SWAP2
000029a3: SWAP3
000029a4: DUP4
000029a5: MLOAD
000029a6: DUP1
000029a7: MLOAD
000029a8: SWAP1
000029a9: PUSH1 0x02
000029ab: DUP3
000029ac: LT
000029ad: ISZERO
000029ae: PUSH2 0x0817
000029b1: JUMPI
000029b2: DUP3
000029b3: PUSH1 0x80
000029b5: PUSH1 0xa0
000029b7: SWAP3
000029b8: PUSH1 0x20
000029ba: SWAP5
000029bb: PUSH1 0x01
000029bd: SWAP7
000029be: MSTORE
000029bf: DUP5
000029c0: DUP2
000029c1: ADD
000029c2: MLOAD
000029c3: DUP6
000029c4: DUP5
000029c5: ADD
000029c6: MSTORE
000029c7: PUSH1 0x40
000029c9: DUP2
000029ca: ADD
000029cb: MLOAD
000029cc: PUSH1 0x40
000029ce: DUP5
000029cf: ADD
000029d0: MSTORE
000029d1: PUSH1 0x60
000029d3: DUP2
000029d4: ADD
000029d5: MLOAD
000029d6: PUSH1 0x60
000029d8: DUP5
000029d9: ADD
000029da: MSTORE
000029db: ADD
000029dc: MLOAD
000029dd: PUSH1 0x80
000029df: DUP3
000029e0: ADD
000029e1: MSTORE
000029e2: ADD
000029e3: SWAP5
000029e4: ADD
000029e5: SWAP2
000029e6: ADD
000029e7: SWAP2
000029e8: SWAP1
000029e9: SWAP2
000029ea: PUSH2 0x2993
000029ed: JUMP
000029ee: JUMPDEST
000029ef: SWAP1
000029f0: PUSH1 0x40
000029f2: MLOAD
000029f3: PUSH2 0x29fb
000029f6: DUP2
000029f7: PUSH2 0x2840
000029fa: JUMP
000029fb: JUMPDEST
000029fc: PUSH1 0x20
000029fe: PUSH1 0xff
00002a00: PUSH1 0x01
00002a02: DUP4
00002a03: SWAP6
00002a04: DUP1
00002a05: SLOAD
00002a06: DUP6
00002a07: MSTORE
00002a08: ADD
00002a09: SLOAD
00002a0a: AND
00002a0b: ISZERO
00002a0c: ISZERO
00002a0d: SWAP2
00002a0e: ADD
00002a0f: MSTORE
00002a10: JUMP
00002a11: JUMPDEST
00002a12: SWAP2
00002a13: SWAP1
00002a14: DUP3
00002a15: SUB
00002a16: SWAP2
00002a17: DUP3
00002a18: GT
00002a19: PUSH2 0x04bd
00002a1c: JUMPI
00002a1d: JUMP
00002a1e: JUMPDEST
00002a1f: SWAP1
00002a20: SWAP3
00002a21: SWAP2
00002a22: PUSH1 0x00
00002a24: SWAP1
00002a25: PUSH1 0x01
00002a27: DUP1
00002a28: PUSH1 0xa0
00002a2a: SHL
00002a2b: SUB
00002a2c: AND
00002a2d: SWAP2
00002a2e: DUP3
00002a2f: DUP3
00002a30: MSTORE
00002a31: PUSH1 0x13
00002a33: PUSH1 0x20
00002a35: MSTORE
00002a36: PUSH2 0x2a41
00002a39: PUSH1 0x40
00002a3b: DUP4
00002a3c: KECCAK256
00002a3d: PUSH2 0x29ee
00002a40: JUMP
00002a41: JUMPDEST
00002a42: SWAP3
00002a43: ISZERO
00002a44: ISZERO
00002a45: DUP1
00002a46: PUSH2 0x2a99
00002a49: JUMPI
00002a4a: JUMPDEST
00002a4b: ISZERO
00002a4c: PUSH2 0x2a86
00002a4f: JUMPI
00002a50: POP
00002a51: POP
00002a52: MLOAD
00002a53: SWAP1
00002a54: JUMPDEST
00002a55: DUP2
00002a56: ISZERO
00002a57: PUSH2 0x2a7d
00002a5a: JUMPI
00002a5b: DUP2
00002a5c: DUP4
00002a5d: MUL
00002a5e: DUP4
00002a5f: DUP2
00002a60: DIV
00002a61: DUP4
00002a62: EQ
00002a63: DUP5
00002a64: ISZERO
00002a65: OR
00002a66: ISZERO
00002a67: PUSH2 0x04bd
00002a6a: JUMPI
00002a6b: PUSH2 0x2710
00002a6e: PUSH2 0x2a79
00002a71: SWAP2
00002a72: DIV
00002a73: DUP1
00002a74: SWAP5
00002a75: PUSH2 0x2a11
00002a78: JUMP
00002a79: JUMPDEST
00002a7a: SWAP2
00002a7b: SWAP1
00002a7c: JUMP
00002a7d: JUMPDEST
00002a7e: PUSH1 0x00
00002a80: SWAP3
00002a81: SWAP2
00002a82: POP
00002a83: DUP3
00002a84: SWAP1
00002a85: JUMP
00002a86: JUMPDEST
00002a87: PUSH1 0x40
00002a89: SWAP3
00002a8a: POP
00002a8b: DUP2
00002a8c: MSTORE
00002a8d: PUSH1 0x12
00002a8f: PUSH1 0x20
00002a91: MSTORE
00002a92: KECCAK256
00002a93: SLOAD
00002a94: SWAP1
00002a95: PUSH2 0x2a54
00002a98: JUMP
00002a99: JUMPDEST
00002a9a: POP
00002a9b: PUSH1 0x20
00002a9d: DUP4
00002a9e: ADD
00002a9f: MLOAD
00002aa0: ISZERO
00002aa1: ISZERO
00002aa2: PUSH2 0x2a4a
00002aa5: JUMP
00002aa6: JUMPDEST
00002aa7: SWAP2
00002aa8: SWAP1
00002aa9: DUP3
00002aaa: ADD
00002aab: DUP1
00002aac: SWAP3
00002aad: GT
00002aae: PUSH2 0x04bd
00002ab1: JUMPI
00002ab2: JUMP
00002ab3: JUMPDEST
00002ab4: RETURNDATASIZE
00002ab5: ISZERO
00002ab6: PUSH2 0x2aed
00002ab9: JUMPI
00002aba: RETURNDATASIZE
00002abb: SWAP1
00002abc: PUSH1 0x01
00002abe: PUSH1 0x01
00002ac0: PUSH1 0x40
00002ac2: SHL
00002ac3: SUB
00002ac4: DUP3
00002ac5: GT
00002ac6: PUSH2 0x0380
00002ac9: JUMPI
00002aca: PUSH1 0x40
00002acc: MLOAD
00002acd: SWAP2
00002ace: PUSH2 0x2ae1
00002ad1: PUSH1 0x1f
00002ad3: DUP3
00002ad4: ADD
00002ad5: PUSH1 0x1f
00002ad7: NOT
00002ad8: AND
00002ad9: PUSH1 0x20
00002adb: ADD
00002adc: DUP5
00002add: PUSH2 0x2876
00002ae0: JUMP
00002ae1: JUMPDEST
00002ae2: DUP3
00002ae3: MSTORE
00002ae4: RETURNDATASIZE
00002ae5: PUSH1 0x00
00002ae7: PUSH1 0x20
00002ae9: DUP5
00002aea: ADD
00002aeb: RETURNDATACOPY
00002aec: JUMP
00002aed: JUMPDEST
00002aee: PUSH1 0x60
00002af0: SWAP1
00002af1: JUMP
00002af2: JUMPDEST
00002af3: PUSH1 0x14
00002af5: SLOAD
00002af6: DUP1
00002af7: ISZERO
00002af8: ISZERO
00002af9: SWAP1
00002afa: DUP2
00002afb: PUSH2 0x2b45
00002afe: JUMPI
00002aff: JUMPDEST
00002b00: POP
00002b01: PUSH2 0x2b34
00002b04: JUMPI
00002b05: PUSH1 0x15
00002b07: SLOAD
00002b08: DUP1
00002b09: ISZERO
00002b0a: ISZERO
00002b0b: SWAP2
00002b0c: DUP3
00002b0d: PUSH2 0x2b2a
00002b10: JUMPI
00002b11: JUMPDEST
00002b12: POP
00002b13: POP
00002b14: PUSH2 0x2b19
00002b17: JUMPI
00002b18: JUMP
00002b19: JUMPDEST
00002b1a: PUSH4 0xea5d71ed
00002b1f: PUSH1 0xe0
00002b21: SHL
00002b22: PUSH1 0x00
00002b24: MSTORE
00002b25: PUSH1 0x04
00002b27: PUSH1 0x00
00002b29: REVERT
00002b2a: JUMPDEST
00002b2b: GT
00002b2c: SWAP1
00002b2d: POP
00002b2e: CODESIZE
00002b2f: DUP1
00002b30: PUSH2 0x2b11
00002b33: JUMP
00002b34: JUMPDEST
00002b35: PUSH4 0x2fcd1a0f
00002b3a: PUSH1 0xe0
00002b3c: SHL
00002b3d: PUSH1 0x00
00002b3f: MSTORE
00002b40: PUSH1 0x04
00002b42: PUSH1 0x00
00002b44: REVERT
00002b45: JUMPDEST
00002b46: SWAP1
00002b47: POP
00002b48: DUP2
00002b49: LT
00002b4a: CODESIZE
00002b4b: PUSH2 0x2aff
00002b4e: JUMP
00002b4f: JUMPDEST
00002b50: PUSH2 0x0c68
00002b53: SWAP2
00002b54: PUSH2 0x2c29
00002b57: SWAP8
00002b58: SWAP7
00002b59: SWAP6
00002b5a: PUSH2 0x0bd7
00002b5d: SWAP5
00002b5e: SWAP6
00002b5f: PUSH2 0x2b66
00002b62: PUSH2 0x30ca
00002b65: JUMP
00002b66: JUMPDEST
00002b67: PUSH1 0x20
00002b69: DUP2
00002b6a: MLOAD
00002b6b: SWAP2
00002b6c: ADD
00002b6d: KECCAK256
00002b6e: PUSH2 0x0bd7
00002b71: PUSH2 0x2b97
00002b74: PUSH2 0x2b7b
00002b77: PUSH2 0x30f3
00002b7a: JUMP
00002b7b: JUMPDEST
00002b7c: PUSH1 0x20
00002b7e: DUP2
00002b7f: MLOAD
00002b80: SWAP2
00002b81: ADD
00002b82: KECCAK256
00002b83: PUSH1 0x40
00002b85: MLOAD
00002b86: SWAP3
00002b87: DUP4
00002b88: SWAP2
00002b89: PUSH1 0x20
00002b8b: DUP4
00002b8c: ADD
00002b8d: SWAP6
00002b8e: ADDRESS
00002b8f: SWAP2
00002b90: CHAINID
00002b91: SWAP2
00002b92: DUP9
00002b93: PUSH2 0x3112
00002b96: JUMP
00002b97: JUMPDEST
00002b98: MLOAD
00002b99: SWAP1
00002b9a: KECCAK256
00002b9b: SWAP7
00002b9c: PUSH1 0x40
00002b9e: MLOAD
00002b9f: SWAP4
00002ba0: PUSH1 0x20
00002ba2: DUP6
00002ba3: ADD
00002ba4: SWAP6
00002ba5: PUSH32 0x28ef9d23231b7b3d73832e92b022228ad7c4b94cfd8c1fb0d495aa88abaaefd0
00002bc6: DUP8
00002bc7: MSTORE
00002bc8: PUSH1 0x01
00002bca: DUP1
00002bcb: PUSH1 0xa0
00002bcd: SHL
00002bce: SUB
00002bcf: AND
00002bd0: PUSH1 0x40
00002bd2: DUP7
00002bd3: ADD
00002bd4: MSTORE
00002bd5: PUSH1 0x60
00002bd7: DUP6
00002bd8: ADD
00002bd9: MSTORE
00002bda: PUSH1 0x80
00002bdc: DUP5
00002bdd: ADD
00002bde: MSTORE
00002bdf: PUSH1 0x01
00002be1: DUP1
00002be2: PUSH1 0xa0
00002be4: SHL
00002be5: SUB
00002be6: AND
00002be7: PUSH1 0xa0
00002be9: DUP4
00002bea: ADD
00002beb: MSTORE
00002bec: PUSH1 0xc0
00002bee: DUP3
00002bef: ADD
00002bf0: MSTORE
00002bf1: PUSH1 0xc0
00002bf3: DUP2
00002bf4: MSTORE
00002bf5: PUSH2 0x2bff
00002bf8: PUSH1 0xe0
00002bfa: DUP3
00002bfb: PUSH2 0x2876
00002bfe: JUMP
00002bff: JUMPDEST
00002c00: MLOAD
00002c01: SWAP1
00002c02: KECCAK256
00002c03: PUSH1 0x40
00002c05: MLOAD
00002c06: SWAP3
00002c07: DUP4
00002c08: SWAP2
00002c09: PUSH1 0x20
00002c0b: DUP4
00002c0c: ADD
00002c0d: SWAP6
00002c0e: DUP7
00002c0f: SWAP1
00002c10: SWAP2
00002c11: PUSH1 0x42
00002c13: SWAP3
00002c14: PUSH2 0x1901
00002c17: PUSH1 0xf0
00002c19: SHL
00002c1a: DUP4
00002c1b: MSTORE
00002c1c: PUSH1 0x02
00002c1e: DUP4
00002c1f: ADD
00002c20: MSTORE
00002c21: PUSH1 0x22
00002c23: DUP3
00002c24: ADD
00002c25: MSTORE
00002c26: ADD
00002c27: SWAP1
00002c28: JUMP
00002c29: JUMPDEST
00002c2a: SWAP1
00002c2b: JUMP
00002c2c: JUMPDEST
00002c2d: PUSH1 0x00
00002c2f: SWAP1
00002c30: DUP2
00002c31: MSTORE
00002c32: PUSH1 0x0e
00002c34: PUSH1 0x20
00002c36: MSTORE
00002c37: PUSH1 0x40
00002c39: SWAP1
00002c3a: KECCAK256
00002c3b: SLOAD
00002c3c: PUSH1 0x01
00002c3e: PUSH1 0x01
00002c40: PUSH1 0xa0
00002c42: SHL
00002c43: SUB
00002c44: AND
00002c45: DUP1
00002c46: PUSH2 0x2c4e
00002c49: JUMPI
00002c4a: POP
00002c4b: SELFBALANCE
00002c4c: SWAP1
00002c4d: JUMP
00002c4e: JUMPDEST
00002c4f: PUSH1 0x20
00002c51: PUSH1 0x24
00002c53: SWAP2
00002c54: PUSH1 0x40
00002c56: MLOAD
00002c57: SWAP3
00002c58: DUP4
00002c59: DUP1
00002c5a: SWAP3
00002c5b: PUSH4 0x70a08231
00002c60: PUSH1 0xe0
00002c62: SHL
00002c63: DUP3
00002c64: MSTORE
00002c65: ADDRESS
00002c66: PUSH1 0x04
00002c68: DUP4
00002c69: ADD
00002c6a: MSTORE
00002c6b: GAS
00002c6c: STATICCALL
00002c6d: SWAP1
00002c6e: DUP2
00002c6f: ISZERO
00002c70: PUSH2 0x0e17
00002c73: JUMPI
00002c74: PUSH1 0x00
00002c76: SWAP2
00002c77: PUSH2 0x2c7e
00002c7a: JUMPI
00002c7b: POP
00002c7c: SWAP1
00002c7d: JUMP
00002c7e: JUMPDEST
00002c7f: SWAP1
00002c80: POP
00002c81: PUSH1 0x20
00002c83: DUP2
00002c84: RETURNDATASIZE
00002c85: PUSH1 0x20
00002c87: GT
00002c88: PUSH2 0x2ca5
00002c8b: JUMPI
00002c8c: JUMPDEST
00002c8d: DUP2
00002c8e: PUSH2 0x2c99
00002c91: PUSH1 0x20
00002c93: SWAP4
00002c94: DUP4
00002c95: PUSH2 0x2876
00002c98: JUMP
00002c99: JUMPDEST
00002c9a: DUP2
00002c9b: ADD
00002c9c: SUB
00002c9d: SLT
00002c9e: PUSH2 0x04fd
00002ca1: JUMPI
00002ca2: MLOAD
00002ca3: SWAP1
00002ca4: JUMP
00002ca5: JUMPDEST
00002ca6: RETURNDATASIZE
00002ca7: SWAP2
00002ca8: POP
00002ca9: PUSH2 0x2c8c
00002cac: JUMP
00002cad: JUMPDEST
00002cae: PUSH1 0x02
00002cb0: PUSH1 0x01
00002cb2: SLOAD
00002cb3: EQ
00002cb4: PUSH2 0x2cbe
00002cb7: JUMPI
00002cb8: PUSH1 0x02
00002cba: PUSH1 0x01
00002cbc: SSTORE
00002cbd: JUMP
00002cbe: JUMPDEST
00002cbf: PUSH4 0x3ee5aeb5
00002cc4: PUSH1 0xe0
00002cc6: SHL
00002cc7: PUSH1 0x00
00002cc9: MSTORE
00002cca: PUSH1 0x04
00002ccc: PUSH1 0x00
00002cce: REVERT
00002ccf: JUMPDEST
00002cd0: PUSH1 0x40
00002cd2: MLOAD
00002cd3: PUSH4 0x23b872dd
00002cd8: PUSH1 0xe0
00002cda: SHL
00002cdb: PUSH1 0x20
00002cdd: DUP3
00002cde: ADD
00002cdf: MSTORE
00002ce0: PUSH1 0x01
00002ce2: PUSH1 0x01
00002ce4: PUSH1 0xa0
00002ce6: SHL
00002ce7: SUB
00002ce8: SWAP3
00002ce9: DUP4
00002cea: AND
00002ceb: PUSH1 0x24
00002ced: DUP3
00002cee: ADD
00002cef: MSTORE
00002cf0: SWAP3
00002cf1: SWAP1
00002cf2: SWAP2
00002cf3: AND
00002cf4: PUSH1 0x44
00002cf6: DUP4
00002cf7: ADD
00002cf8: MSTORE
00002cf9: PUSH1 0x64
00002cfb: DUP1
00002cfc: DUP4
00002cfd: ADD
00002cfe: SWAP4
00002cff: SWAP1
00002d00: SWAP4
00002d01: MSTORE
00002d02: SWAP2
00002d03: DUP2
00002d04: MSTORE
00002d05: PUSH2 0x2d18
00002d08: SWAP2
00002d09: PUSH2 0x2d13
00002d0c: PUSH1 0x84
00002d0e: DUP4
00002d0f: PUSH2 0x2876
00002d12: JUMP
00002d13: JUMPDEST
00002d14: PUSH2 0x3426
00002d17: JUMP
00002d18: JUMPDEST
00002d19: JUMP
00002d1a: JUMPDEST
00002d1b: PUSH1 0x00
00002d1d: SLOAD
00002d1e: PUSH1 0x01
00002d20: PUSH1 0x01
00002d22: PUSH1 0xa0
00002d24: SHL
00002d25: SUB
00002d26: AND
00002d27: CALLER
00002d28: SUB
00002d29: PUSH2 0x2d2e
00002d2c: JUMPI
00002d2d: JUMP
00002d2e: JUMPDEST
00002d2f: PUSH4 0x118cdaa7
00002d34: PUSH1 0xe0
00002d36: SHL
00002d37: PUSH1 0x00
00002d39: MSTORE
00002d3a: CALLER
00002d3b: PUSH1 0x04
00002d3d: MSTORE
00002d3e: PUSH1 0x24
00002d40: PUSH1 0x00
00002d42: REVERT
00002d43: JUMPDEST
00002d44: SWAP2
00002d45: SWAP1
00002d46: DUP2
00002d47: LT
00002d48: ISZERO
00002d49: PUSH2 0x2d53
00002d4c: JUMPI
00002d4d: PUSH1 0x06
00002d4f: SHL
00002d50: ADD
00002d51: SWAP1
00002d52: JUMP
00002d53: JUMPDEST
00002d54: PUSH4 0x4e487b71
00002d59: PUSH1 0xe0
00002d5b: SHL
00002d5c: PUSH1 0x00
00002d5e: MSTORE
00002d5f: PUSH1 0x32
00002d61: PUSH1 0x04
00002d63: MSTORE
00002d64: PUSH1 0x24
00002d66: PUSH1 0x00
00002d68: REVERT
00002d69: JUMPDEST
00002d6a: PUSH1 0x0d
00002d6c: SLOAD
00002d6d: DUP2
00002d6e: LT
00002d6f: ISZERO
00002d70: PUSH2 0x2d53
00002d73: JUMPI
00002d74: PUSH1 0x0d
00002d76: PUSH1 0x00
00002d78: MSTORE
00002d79: PUSH1 0x20
00002d7b: PUSH1 0x00
00002d7d: KECCAK256
00002d7e: ADD
00002d7f: SWAP1
00002d80: PUSH1 0x00
00002d82: SWAP1
00002d83: JUMP
00002d84: JUMPDEST
00002d85: PUSH1 0x0b
00002d87: SLOAD
00002d88: DUP2
00002d89: LT
00002d8a: ISZERO
00002d8b: PUSH2 0x2d53
00002d8e: JUMPI
00002d8f: PUSH1 0x0b
00002d91: PUSH1 0x00
00002d93: MSTORE
00002d94: PUSH1 0x20
00002d96: PUSH1 0x00
00002d98: KECCAK256
00002d99: ADD
00002d9a: SWAP1
00002d9b: PUSH1 0x00
00002d9d: SWAP1
00002d9e: JUMP
00002d9f: JUMPDEST
00002da0: PUSH1 0x09
00002da2: SLOAD
00002da3: DUP2
00002da4: LT
00002da5: ISZERO
00002da6: PUSH2 0x2d53
00002da9: JUMPI
00002daa: PUSH1 0x09
00002dac: PUSH1 0x00
00002dae: MSTORE
00002daf: PUSH1 0x20
00002db1: PUSH1 0x00
00002db3: KECCAK256
00002db4: ADD
00002db5: SWAP1
00002db6: PUSH1 0x00
00002db8: SWAP1
00002db9: JUMP
00002dba: JUMPDEST
00002dbb: DUP1
00002dbc: SLOAD
00002dbd: DUP3
00002dbe: LT
00002dbf: ISZERO
00002dc0: PUSH2 0x2d53
00002dc3: JUMPI
00002dc4: PUSH1 0x00
00002dc6: MSTORE
00002dc7: PUSH1 0x20
00002dc9: PUSH1 0x00
00002dcb: KECCAK256
00002dcc: ADD
00002dcd: SWAP1
00002dce: PUSH1 0x00
00002dd0: SWAP1
00002dd1: JUMP
00002dd2: JUMPDEST
00002dd3: PUSH1 0x03
00002dd5: SLOAD
00002dd6: SWAP1
00002dd7: PUSH1 0x01
00002dd9: PUSH1 0x40
00002ddb: SHL
00002ddc: DUP3
00002ddd: LT
00002dde: ISZERO
00002ddf: PUSH2 0x0380
00002de2: JUMPI
00002de3: PUSH2 0x0355
00002de6: DUP3
00002de7: PUSH1 0x01
00002de9: PUSH2 0x2d18
00002dec: SWAP5
00002ded: ADD
00002dee: PUSH1 0x03
00002df0: SSTORE
00002df1: PUSH1 0x03
00002df3: PUSH2 0x2dba
00002df6: JUMP
00002df7: JUMPDEST
00002df8: PUSH1 0x02
00002dfa: DUP3
00002dfb: LT
00002dfc: ISZERO
00002dfd: PUSH2 0x0817
00002e00: JUMPI
00002e01: MSTORE
00002e02: JUMP
00002e03: JUMPDEST
00002e04: DUP1
00002e05: SLOAD
00002e06: SWAP1
00002e07: PUSH1 0x01
00002e09: PUSH1 0x40
00002e0b: SHL
00002e0c: DUP3
00002e0d: LT
00002e0e: ISZERO
00002e0f: PUSH2 0x0380
00002e12: JUMPI
00002e13: PUSH1 0x01
00002e15: DUP3
00002e16: ADD
00002e17: DUP1
00002e18: DUP3
00002e19: SSTORE
00002e1a: DUP3
00002e1b: LT
00002e1c: ISZERO
00002e1d: PUSH2 0x2d53
00002e20: JUMPI
00002e21: PUSH1 0x00
00002e23: MSTORE
00002e24: PUSH1 0x05
00002e26: PUSH1 0x20
00002e28: PUSH1 0x00
00002e2a: KECCAK256
00002e2b: SWAP2
00002e2c: MUL
00002e2d: ADD
00002e2e: SWAP1
00002e2f: DUP1
00002e30: MLOAD
00002e31: PUSH1 0x02
00002e33: DUP2
00002e34: LT
00002e35: ISZERO
00002e36: PUSH2 0x0817
00002e39: JUMPI
00002e3a: PUSH1 0x04
00002e3c: SWAP2
00002e3d: PUSH1 0x80
00002e3f: SWAP2
00002e40: PUSH1 0xff
00002e42: DUP1
00002e43: NOT
00002e44: DUP7
00002e45: SLOAD
00002e46: AND
00002e47: SWAP2
00002e48: AND
00002e49: OR
00002e4a: DUP5
00002e4b: SSTORE
00002e4c: PUSH1 0x20
00002e4e: DUP2
00002e4f: ADD
00002e50: MLOAD
00002e51: PUSH1 0x01
00002e53: DUP6
00002e54: ADD
00002e55: SSTORE
00002e56: PUSH1 0x40
00002e58: DUP2
00002e59: ADD
00002e5a: MLOAD
00002e5b: PUSH1 0x02
00002e5d: DUP6
00002e5e: ADD
00002e5f: SSTORE
00002e60: PUSH1 0x60
00002e62: DUP2
00002e63: ADD
00002e64: MLOAD
00002e65: PUSH1 0x03
00002e67: DUP6
00002e68: ADD
00002e69: SSTORE
00002e6a: ADD
00002e6b: MLOAD
00002e6c: SWAP2
00002e6d: ADD
00002e6e: SSTORE
00002e6f: JUMP
00002e70: JUMPDEST
00002e71: PUSH1 0x40
00002e73: MLOAD
00002e74: PUSH4 0xa9059cbb
00002e79: PUSH1 0xe0
00002e7b: SHL
00002e7c: PUSH1 0x20
00002e7e: DUP3
00002e7f: ADD
00002e80: MSTORE
00002e81: PUSH1 0x01
00002e83: PUSH1 0x01
00002e85: PUSH1 0xa0
00002e87: SHL
00002e88: SUB
00002e89: SWAP1
00002e8a: SWAP3
00002e8b: AND
00002e8c: PUSH1 0x24
00002e8e: DUP4
00002e8f: ADD
00002e90: MSTORE
00002e91: PUSH1 0x44
00002e93: DUP1
00002e94: DUP4
00002e95: ADD
00002e96: SWAP4
00002e97: SWAP1
00002e98: SWAP4
00002e99: MSTORE
00002e9a: SWAP2
00002e9b: DUP2
00002e9c: MSTORE
00002e9d: PUSH2 0x2d18
00002ea0: SWAP2
00002ea1: PUSH2 0x2d13
00002ea4: PUSH1 0x64
00002ea6: DUP4
00002ea7: PUSH2 0x2876
00002eaa: JUMP
00002eab: JUMPDEST
00002eac: PUSH1 0x01
00002eae: PUSH1 0x01
00002eb0: PUSH1 0x40
00002eb2: SHL
00002eb3: SUB
00002eb4: DUP2
00002eb5: GT
00002eb6: PUSH2 0x0380
00002eb9: JUMPI
00002eba: PUSH1 0x05
00002ebc: SHL
00002ebd: PUSH1 0x20
00002ebf: ADD
00002ec0: SWAP1
00002ec1: JUMP
00002ec2: JUMPDEST
00002ec3: DUP1
00002ec4: MLOAD
00002ec5: DUP3
00002ec6: LT
00002ec7: ISZERO
00002ec8: PUSH2 0x2d53
00002ecb: JUMPI
00002ecc: PUSH1 0x20
00002ece: SWAP2
00002ecf: PUSH1 0x05
00002ed1: SHL
00002ed2: ADD
00002ed3: ADD
00002ed4: SWAP1
00002ed5: JUMP
00002ed6: JUMPDEST
00002ed7: PUSH1 0x01
00002ed9: PUSH1 0x01
00002edb: PUSH1 0xa0
00002edd: SHL
00002ede: SUB
00002edf: AND
00002ee0: PUSH1 0x00
00002ee2: SWAP1
00002ee3: DUP2
00002ee4: MSTORE
00002ee5: PUSH1 0x05
00002ee7: PUSH1 0x20
00002ee9: MSTORE
00002eea: PUSH1 0x40
00002eec: SWAP1
00002eed: KECCAK256
00002eee: DUP1
00002eef: SLOAD
00002ef0: SWAP2
00002ef1: SWAP3
00002ef2: SWAP1
00002ef3: SWAP2
00002ef4: PUSH1 0x60
00002ef6: SWAP2
00002ef7: SWAP1
00002ef8: PUSH2 0x2f00
00002efb: DUP2
00002efc: PUSH2 0x2eab
00002eff: JUMP
00002f00: JUMPDEST
00002f01: SWAP4
00002f02: PUSH2 0x2f0e
00002f05: PUSH1 0x40
00002f07: MLOAD
00002f08: SWAP6
00002f09: DUP7
00002f0a: PUSH2 0x2876
00002f0d: JUMP
00002f0e: JUMPDEST
00002f0f: DUP2
00002f10: DUP6
00002f11: MSTORE
00002f12: PUSH1 0x20
00002f14: DUP6
00002f15: ADD
00002f16: SWAP1
00002f17: PUSH1 0x00
00002f19: MSTORE
00002f1a: PUSH1 0x20
00002f1c: PUSH1 0x00
00002f1e: KECCAK256
00002f1f: PUSH1 0x00
00002f21: SWAP2
00002f22: JUMPDEST
00002f23: DUP4
00002f24: DUP4
00002f25: LT
00002f26: PUSH2 0x3076
00002f29: JUMPI
00002f2a: POP
00002f2b: POP
00002f2c: POP
00002f2d: POP
00002f2e: DUP3
00002f2f: MLOAD
00002f30: SWAP2
00002f31: DUP3
00002f32: DUP6
00002f33: LT
00002f34: ISZERO
00002f35: PUSH2 0x3011
00002f38: JUMPI
00002f39: POP
00002f3a: PUSH2 0x2f57
00002f3d: SWAP2
00002f3e: PUSH2 0x2f48
00002f41: DUP6
00002f42: SWAP3
00002f43: DUP4
00002f44: PUSH2 0x2aa6
00002f47: JUMP
00002f48: JUMPDEST
00002f49: SWAP1
00002f4a: DUP1
00002f4b: DUP3
00002f4c: GT
00002f4d: PUSH2 0x3009
00002f50: JUMPI
00002f51: JUMPDEST
00002f52: POP
00002f53: PUSH2 0x2a11
00002f56: JUMP
00002f57: JUMPDEST
00002f58: SWAP1
00002f59: PUSH2 0x2f61
00002f5c: DUP3
00002f5d: PUSH2 0x2eab
00002f60: JUMP
00002f61: JUMPDEST
00002f62: SWAP3
00002f63: PUSH2 0x2f6f
00002f66: PUSH1 0x40
00002f68: MLOAD
00002f69: SWAP5
00002f6a: DUP6
00002f6b: PUSH2 0x2876
00002f6e: JUMP
00002f6f: JUMPDEST
00002f70: DUP3
00002f71: DUP5
00002f72: MSTORE
00002f73: PUSH1 0x1f
00002f75: NOT
00002f76: PUSH2 0x2f7e
00002f79: DUP5
00002f7a: PUSH2 0x2eab
00002f7d: JUMP
00002f7e: JUMPDEST
00002f7f: ADD
00002f80: PUSH1 0x00
00002f82: JUMPDEST
00002f83: DUP2
00002f84: DUP2
00002f85: LT
00002f86: PUSH2 0x2fcf
00002f89: JUMPI
00002f8a: POP
00002f8b: POP
00002f8c: PUSH1 0x00
00002f8e: JUMPDEST
00002f8f: DUP4
00002f90: DUP2
00002f91: LT
00002f92: PUSH2 0x2f9c
00002f95: JUMPI
00002f96: POP
00002f97: POP
00002f98: POP
00002f99: POP
00002f9a: SWAP1
00002f9b: JUMP
00002f9c: JUMPDEST
00002f9d: DUP1
00002f9e: PUSH2 0x2fb2
00002fa1: PUSH2 0x2fac
00002fa4: PUSH1 0x01
00002fa6: SWAP4
00002fa7: DUP6
00002fa8: PUSH2 0x2aa6
00002fab: JUMP
00002fac: JUMPDEST
00002fad: DUP6
00002fae: PUSH2 0x2ec2
00002fb1: JUMP
00002fb2: JUMPDEST
00002fb3: MLOAD
00002fb4: PUSH2 0x2fbd
00002fb7: DUP3
00002fb8: DUP9
00002fb9: PUSH2 0x2ec2
00002fbc: JUMP
00002fbd: JUMPDEST
00002fbe: MSTORE
00002fbf: PUSH2 0x2fc8
00002fc2: DUP2
00002fc3: DUP8
00002fc4: PUSH2 0x2ec2
00002fc7: JUMP
00002fc8: JUMPDEST
00002fc9: POP
00002fca: ADD
00002fcb: PUSH2 0x2f8e
00002fce: JUMP
00002fcf: JUMPDEST
00002fd0: PUSH1 0x20
00002fd2: SWAP1
00002fd3: PUSH1 0x40
00002fd5: MLOAD
00002fd6: PUSH2 0x2fde
00002fd9: DUP2
00002fda: PUSH2 0x285b
00002fdd: JUMP
00002fde: JUMPDEST
00002fdf: PUSH1 0x00
00002fe1: DUP2
00002fe2: MSTORE
00002fe3: PUSH1 0x00
00002fe5: DUP4
00002fe6: DUP3
00002fe7: ADD
00002fe8: MSTORE
00002fe9: PUSH1 0x00
00002feb: PUSH1 0x40
00002fed: DUP3
00002fee: ADD
00002fef: MSTORE
00002ff0: PUSH1 0x00
00002ff2: PUSH1 0x60
00002ff4: DUP3
00002ff5: ADD
00002ff6: MSTORE
00002ff7: PUSH1 0x00
00002ff9: PUSH1 0x80
00002ffb: DUP3
00002ffc: ADD
00002ffd: MSTORE
00002ffe: DUP3
00002fff: DUP3
00003000: DUP10
00003001: ADD
00003002: ADD
00003003: MSTORE
00003004: ADD
00003005: PUSH2 0x2f82
00003008: JUMP
00003009: JUMPDEST
0000300a: SWAP1
0000300b: POP
0000300c: CODESIZE
0000300d: PUSH2 0x2f51
00003010: JUMP
00003011: JUMPDEST
00003012: PUSH1 0x40
00003014: MLOAD
00003015: SWAP5
00003016: POP
00003017: SWAP3
00003018: POP
00003019: PUSH1 0x00
0000301b: SWAP2
0000301c: POP
0000301d: PUSH2 0x3029
00003020: SWAP1
00003021: POP
00003022: PUSH1 0x20
00003024: DUP5
00003025: PUSH2 0x2876
00003028: JUMP
00003029: JUMPDEST
0000302a: DUP3
0000302b: MSTORE
0000302c: PUSH1 0x00
0000302e: SWAP1
0000302f: DUP2
00003030: JUMPDEST
00003031: DUP3
00003032: DUP2
00003033: LT
00003034: PUSH2 0x303d
00003037: JUMPI
00003038: POP
00003039: POP
0000303a: POP
0000303b: SWAP1
0000303c: JUMP
0000303d: JUMPDEST
0000303e: PUSH1 0x20
00003040: SWAP1
00003041: PUSH1 0x40
00003043: MLOAD
00003044: PUSH2 0x304c
00003047: DUP2
00003048: PUSH2 0x285b
0000304b: JUMP
0000304c: JUMPDEST
0000304d: PUSH1 0x00
0000304f: DUP2
00003050: MSTORE
00003051: PUSH1 0x00
00003053: DUP4
00003054: DUP3
00003055: ADD
00003056: MSTORE
00003057: PUSH1 0x00
00003059: PUSH1 0x40
0000305b: DUP3
0000305c: ADD
0000305d: MSTORE
0000305e: PUSH1 0x00
00003060: DUP5
00003061: DUP3
00003062: ADD
00003063: MSTORE
00003064: PUSH1 0x00
00003066: PUSH1 0x80
00003068: DUP3
00003069: ADD
0000306a: MSTORE
0000306b: DUP3
0000306c: DUP3
0000306d: DUP8
0000306e: ADD
0000306f: ADD
00003070: MSTORE
00003071: ADD
00003072: PUSH2 0x3030
00003075: JUMP
00003076: JUMPDEST
00003077: PUSH1 0x05
00003079: PUSH1 0x20
0000307b: PUSH1 0x01
0000307d: SWAP3
0000307e: PUSH1 0x40
00003080: MLOAD
00003081: PUSH2 0x3089
00003084: DUP2
00003085: PUSH2 0x285b
00003088: JUMP
00003089: JUMPDEST
0000308a: PUSH2 0x3097
0000308d: PUSH1 0xff
0000308f: DUP8
00003090: SLOAD
00003091: AND
00003092: DUP3
00003093: PUSH2 0x2df7
00003096: JUMP
00003097: JUMPDEST
00003098: DUP5
00003099: DUP7
0000309a: ADD
0000309b: SLOAD
0000309c: DUP4
0000309d: DUP3
0000309e: ADD
0000309f: MSTORE
000030a0: PUSH1 0x02
000030a2: DUP7
000030a3: ADD
000030a4: SLOAD
000030a5: PUSH1 0x40
000030a7: DUP3
000030a8: ADD
000030a9: MSTORE
000030aa: PUSH1 0x03
000030ac: DUP7
000030ad: ADD
000030ae: SLOAD
000030af: DUP11
000030b0: DUP3
000030b1: ADD
000030b2: MSTORE
000030b3: PUSH1 0x04
000030b5: DUP7
000030b6: ADD
000030b7: SLOAD
000030b8: PUSH1 0x80
000030ba: DUP3
000030bb: ADD
000030bc: MSTORE
000030bd: DUP2
000030be: MSTORE
000030bf: ADD
000030c0: SWAP3
000030c1: ADD
000030c2: SWAP3
000030c3: ADD
000030c4: SWAP2
000030c5: SWAP1
000030c6: PUSH2 0x2f22
000030c9: JUMP
000030ca: JUMPDEST
000030cb: PUSH1 0x40
000030cd: MLOAD
000030ce: SWAP1
000030cf: PUSH2 0x30d9
000030d2: PUSH1 0x40
000030d4: DUP4
000030d5: PUSH2 0x2876
000030d8: JUMP
000030d9: JUMPDEST
000030da: PUSH1 0x0b
000030dc: DUP3
000030dd: MSTORE
000030de: PUSH11 0x04c6962657274795377617
000030ea: PUSH1 0xac
000030ec: SHL
000030ed: PUSH1 0x20
000030ef: DUP4
000030f0: ADD
000030f1: MSTORE
000030f2: JUMP
000030f3: JUMPDEST
000030f4: PUSH1 0x40
000030f6: MLOAD
000030f7: SWAP1
000030f8: PUSH2 0x3102
000030fb: PUSH1 0x40
000030fd: DUP4
000030fe: PUSH2 0x2876
00003101: JUMP
00003102: JUMPDEST
00003103: PUSH1 0x01
00003105: DUP3
00003106: MSTORE
00003107: PUSH1 0x31
00003109: PUSH1 0xf8
0000310b: SHL
0000310c: PUSH1 0x20
0000310e: DUP4
0000310f: ADD
00003110: MSTORE
00003111: JUMP
00003112: JUMPDEST
00003113: SWAP3
00003114: PUSH1 0x80
00003116: SWAP3
00003117: SWAP6
00003118: SWAP5
00003119: SWAP2
0000311a: SWAP6
0000311b: PUSH1 0xa0
0000311d: DUP6
0000311e: ADD
0000311f: SWAP7
00003120: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00003141: DUP7
00003142: MSTORE
00003143: PUSH1 0x20
00003145: DUP7
00003146: ADD
00003147: MSTORE
00003148: PUSH1 0x40
0000314a: DUP6
0000314b: ADD
0000314c: MSTORE
0000314d: PUSH1 0x60
0000314f: DUP5
00003150: ADD
00003151: MSTORE
00003152: PUSH1 0x01
00003154: DUP1
00003155: PUSH1 0xa0
00003157: SHL
00003158: SUB
00003159: AND
0000315a: SWAP2
0000315b: ADD
0000315c: MSTORE
0000315d: JUMP
0000315e: JUMPDEST
0000315f: SWAP1
00003160: PUSH2 0x3168
00003163: DUP3
00003164: PUSH2 0x2eab
00003167: JUMP
00003168: JUMPDEST
00003169: PUSH2 0x3175
0000316c: PUSH1 0x40
0000316e: MLOAD
0000316f: SWAP2
00003170: DUP3
00003171: PUSH2 0x2876
00003174: JUMP
00003175: JUMPDEST
00003176: DUP3
00003177: DUP2
00003178: MSTORE
00003179: DUP1
0000317a: SWAP3
0000317b: PUSH2 0x3186
0000317e: PUSH1 0x1f
00003180: NOT
00003181: SWAP2
00003182: PUSH2 0x2eab
00003185: JUMP
00003186: JUMPDEST
00003187: ADD
00003188: SWAP1
00003189: PUSH1 0x20
0000318b: CALLDATASIZE
0000318c: SWAP2
0000318d: ADD
0000318e: CALLDATACOPY
0000318f: JUMP
00003190: JUMPDEST
00003191: SWAP2
00003192: SWAP1
00003193: DUP2
00003194: LT
00003195: ISZERO
00003196: PUSH2 0x2d53
00003199: JUMPI
0000319a: PUSH1 0x05
0000319c: SHL
0000319d: DUP2
0000319e: ADD
0000319f: CALLDATALOAD
000031a0: SWAP1
000031a1: PUSH1 0x1e
000031a3: NOT
000031a4: DUP2
000031a5: CALLDATASIZE
000031a6: SUB
000031a7: ADD
000031a8: DUP3
000031a9: SLT
000031aa: ISZERO
000031ab: PUSH2 0x04fd
000031ae: JUMPI
000031af: ADD
000031b0: SWAP1
000031b1: DUP2
000031b2: CALLDATALOAD
000031b3: SWAP2
000031b4: PUSH1 0x01
000031b6: PUSH1 0x01
000031b8: PUSH1 0x40
000031ba: SHL
000031bb: SUB
000031bc: DUP4
000031bd: GT
000031be: PUSH2 0x04fd
000031c1: JUMPI
000031c2: PUSH1 0x20
000031c4: ADD
000031c5: DUP3
000031c6: CALLDATASIZE
000031c7: SUB
000031c8: DUP2
000031c9: SGT
000031ca: PUSH2 0x04fd
000031cd: JUMPI
000031ce: SWAP2
000031cf: SWAP1
000031d0: JUMP
000031d1: JUMPDEST
000031d2: SWAP2
000031d3: SWAP1
000031d4: SWAP2
000031d5: DUP2
000031d6: ISZERO
000031d7: PUSH2 0x3389
000031da: JUMPI
000031db: PUSH1 0x0a
000031dd: DUP3
000031de: GT
000031df: PUSH2 0x3378
000031e2: JUMPI
000031e3: PUSH2 0x31eb
000031e6: DUP3
000031e7: PUSH2 0x315e
000031ea: JUMP
000031eb: JUMPDEST
000031ec: SWAP1
000031ed: PUSH1 0x00
000031ef: SWAP4
000031f0: DUP5
000031f1: JUMPDEST
000031f2: DUP5
000031f3: DUP2
000031f4: LT
000031f5: PUSH2 0x3200
000031f8: JUMPI
000031f9: POP
000031fa: POP
000031fb: POP
000031fc: POP
000031fd: POP
000031fe: SWAP1
000031ff: JUMP
00003200: JUMPDEST
00003201: PUSH1 0x41
00003203: PUSH2 0x320d
00003206: DUP3
00003207: DUP8
00003208: DUP6
00003209: PUSH2 0x3190
0000320c: JUMP
0000320d: JUMPDEST
0000320e: SWAP1
0000320f: POP
00003210: SUB
00003211: PUSH2 0x3367
00003214: JUMPI
00003215: PUSH1 0x41
00003217: PUSH2 0x3221
0000321a: DUP3
0000321b: DUP8
0000321c: DUP6
0000321d: PUSH2 0x3190
00003220: JUMP
00003221: JUMPDEST
00003222: SWAP2
00003223: SWAP1
00003224: SWAP2
00003225: SUB
00003226: PUSH2 0x3367
00003229: JUMPI
0000322a: PUSH1 0x40
0000322c: DUP2
0000322d: ADD
0000322e: CALLDATALOAD
0000322f: PUSH1 0x00
00003231: BYTE
00003232: PUSH1 0x1b
00003234: DUP2
00003235: LT
00003236: PUSH2 0x3345
00003239: JUMPI
0000323a: JUMPDEST
0000323b: PUSH1 0xff
0000323d: AND
0000323e: PUSH1 0x1b
00003240: DUP2
00003241: EQ
00003242: ISZERO
00003243: DUP1
00003244: PUSH2 0x333a
00003247: JUMPI
00003248: JUMPDEST
00003249: PUSH2 0x3329
0000324c: JUMPI
0000324d: PUSH1 0x80
0000324f: PUSH1 0x00
00003251: SWAP2
00003252: PUSH1 0x20
00003254: DUP1
00003255: SWAP5
00003256: PUSH1 0x40
00003258: MLOAD
00003259: SWAP3
0000325a: DUP10
0000325b: DUP5
0000325c: MSTORE
0000325d: DUP3
0000325e: DUP5
0000325f: ADD
00003260: MSTORE
00003261: DUP1
00003262: CALLDATALOAD
00003263: PUSH1 0x40
00003265: DUP5
00003266: ADD
00003267: MSTORE
00003268: ADD
00003269: CALLDATALOAD
0000326a: PUSH1 0x60
0000326c: DUP3
0000326d: ADD
0000326e: MSTORE
0000326f: DUP3
00003270: DUP1
00003271: MSTORE
00003272: PUSH1 0x01
00003274: GAS
00003275: STATICCALL
00003276: ISZERO
00003277: PUSH2 0x0e17
0000327a: JUMPI
0000327b: PUSH1 0x00
0000327d: MLOAD
0000327e: PUSH1 0x01
00003280: PUSH1 0x01
00003282: PUSH1 0xa0
00003284: SHL
00003285: SUB
00003286: AND
00003287: DUP1
00003288: ISZERO
00003289: PUSH2 0x3318
0000328c: JUMPI
0000328d: PUSH1 0xff
0000328f: PUSH1 0x40
00003291: PUSH1 0x00
00003293: DUP4
00003294: DUP2
00003295: MSTORE
00003296: PUSH1 0x08
00003298: PUSH1 0x20
0000329a: MSTORE
0000329b: KECCAK256
0000329c: SLOAD
0000329d: AND
0000329e: ISZERO
0000329f: PUSH2 0x330f
000032a2: JUMPI
000032a3: PUSH1 0x00
000032a5: DUP1
000032a6: JUMPDEST
000032a7: DUP9
000032a8: DUP2
000032a9: LT
000032aa: PUSH2 0x32e3
000032ad: JUMPI
000032ae: JUMPDEST
000032af: POP
000032b0: ISZERO
000032b1: PUSH2 0x32c0
000032b4: JUMPI
000032b5: JUMPDEST
000032b6: POP
000032b7: PUSH1 0x01
000032b9: SWAP1
000032ba: JUMPDEST
000032bb: ADD
000032bc: PUSH2 0x31f1
000032bf: JUMP
000032c0: JUMPDEST
000032c1: PUSH2 0x32cd
000032c4: DUP8
000032c5: DUP7
000032c6: SWAP9
000032c7: SWAP4
000032c8: SWAP9
000032c9: PUSH2 0x2ec2
000032cc: JUMP
000032cd: JUMPDEST
000032ce: MSTORE
000032cf: PUSH1 0x00
000032d1: NOT
000032d2: DUP2
000032d3: EQ
000032d4: PUSH2 0x04bd
000032d7: JUMPI
000032d8: PUSH1 0x01
000032da: DUP1
000032db: SWAP2
000032dc: ADD
000032dd: SWAP6
000032de: SWAP1
000032df: PUSH2 0x32b5
000032e2: JUMP
000032e3: JUMPDEST
000032e4: DUP3
000032e5: PUSH1 0x01
000032e7: PUSH1 0x01
000032e9: PUSH1 0xa0
000032eb: SHL
000032ec: SUB
000032ed: PUSH2 0x32f6
000032f0: DUP4
000032f1: DUP11
000032f2: PUSH2 0x2ec2
000032f5: JUMP
000032f6: JUMPDEST
000032f7: MLOAD
000032f8: AND
000032f9: EQ
000032fa: PUSH2 0x3305
000032fd: JUMPI
000032fe: PUSH1 0x01
00003300: ADD
00003301: PUSH2 0x32a6
00003304: JUMP
00003305: JUMPDEST
00003306: POP
00003307: POP
00003308: PUSH1 0x01
0000330a: CODESIZE
0000330b: PUSH2 0x32ae
0000330e: JUMP
0000330f: JUMPDEST
00003310: POP
00003311: PUSH1 0x01
00003313: SWAP1
00003314: PUSH2 0x32ba
00003317: JUMP
00003318: JUMPDEST
00003319: PUSH4 0x8baa579f
0000331e: PUSH1 0xe0
00003320: SHL
00003321: PUSH1 0x00
00003323: MSTORE
00003324: PUSH1 0x04
00003326: PUSH1 0x00
00003328: REVERT
00003329: JUMPDEST
0000332a: PUSH4 0x449f5db1
0000332f: PUSH1 0xe0
00003331: SHL
00003332: PUSH1 0x00
00003334: MSTORE
00003335: PUSH1 0x04
00003337: PUSH1 0x00
00003339: REVERT
0000333a: JUMPDEST
0000333b: POP
0000333c: PUSH1 0x1c
0000333e: DUP2
0000333f: EQ
00003340: ISZERO
00003341: PUSH2 0x3248
00003344: JUMP
00003345: JUMPDEST
00003346: PUSH1 0x1b
00003348: ADD
00003349: PUSH1 0xff
0000334b: DUP2
0000334c: GT
0000334d: ISZERO
0000334e: PUSH2 0x323a
00003351: JUMPI
00003352: PUSH4 0x4e487b71
00003357: PUSH1 0xe0
00003359: SHL
0000335a: PUSH1 0x00
0000335c: MSTORE
0000335d: PUSH1 0x11
0000335f: PUSH1 0x04
00003361: MSTORE
00003362: PUSH1 0x24
00003364: PUSH1 0x00
00003366: REVERT
00003367: JUMPDEST
00003368: PUSH4 0x4be6321b
0000336d: PUSH1 0xe0
0000336f: SHL
00003370: PUSH1 0x00
00003372: MSTORE
00003373: PUSH1 0x04
00003375: PUSH1 0x00
00003377: REVERT
00003378: JUMPDEST
00003379: PUSH4 0x87e497e5
0000337e: PUSH1 0xe0
00003380: SHL
00003381: PUSH1 0x00
00003383: MSTORE
00003384: PUSH1 0x04
00003386: PUSH1 0x00
00003388: REVERT
00003389: JUMPDEST
0000338a: PUSH4 0x1d9ff6ed
0000338f: PUSH1 0xe0
00003391: SHL
00003392: PUSH1 0x00
00003394: MSTORE
00003395: PUSH1 0x04
00003397: PUSH1 0x00
00003399: REVERT
0000339a: JUMPDEST
0000339b: SWAP2
0000339c: SWAP1
0000339d: PUSH1 0x03
0000339f: SLOAD
000033a0: SWAP1
000033a1: DUP2
000033a2: DUP5
000033a3: LT
000033a4: ISZERO
000033a5: PUSH2 0x3408
000033a8: JUMPI
000033a9: PUSH2 0x33b7
000033ac: SWAP2
000033ad: PUSH2 0x2f48
000033b0: DUP6
000033b1: SWAP3
000033b2: DUP4
000033b3: PUSH2 0x2aa6
000033b6: JUMP
000033b7: JUMPDEST
000033b8: PUSH2 0x33c0
000033bb: DUP2
000033bc: PUSH2 0x315e
000033bf: JUMP
000033c0: JUMPDEST
000033c1: SWAP1
000033c2: PUSH1 0x00
000033c4: JUMPDEST
000033c5: DUP2
000033c6: DUP2
000033c7: LT
000033c8: PUSH2 0x33d2
000033cb: JUMPI
000033cc: POP
000033cd: SWAP1
000033ce: SWAP3
000033cf: POP
000033d0: POP
000033d1: JUMP
000033d2: JUMPDEST
000033d3: DUP1
000033d4: PUSH2 0x33e9
000033d7: PUSH2 0x33e2
000033da: PUSH1 0x01
000033dc: SWAP4
000033dd: DUP9
000033de: PUSH2 0x2aa6
000033e1: JUMP
000033e2: JUMPDEST
000033e3: PUSH1 0x03
000033e5: PUSH2 0x2dba
000033e8: JUMP
000033e9: JUMPDEST
000033ea: DUP4
000033eb: DUP1
000033ec: PUSH1 0xa0
000033ee: SHL
000033ef: SUB
000033f0: SWAP2
000033f1: SLOAD
000033f2: SWAP1
000033f3: PUSH1 0x03
000033f5: SHL
000033f6: SHR
000033f7: AND
000033f8: PUSH2 0x3401
000033fb: DUP3
000033fc: DUP7
000033fd: PUSH2 0x2ec2
00003400: JUMP
00003401: JUMPDEST
00003402: MSTORE
00003403: ADD
00003404: PUSH2 0x33c4
00003407: JUMP
00003408: JUMPDEST
00003409: POP
0000340a: POP
0000340b: SWAP1
0000340c: POP
0000340d: PUSH1 0x40
0000340f: MLOAD
00003410: PUSH2 0x341a
00003413: PUSH1 0x20
00003415: DUP3
00003416: PUSH2 0x2876
00003419: JUMP
0000341a: JUMPDEST
0000341b: PUSH1 0x00
0000341d: DUP2
0000341e: MSTORE
0000341f: PUSH1 0x00
00003421: CALLDATASIZE
00003422: DUP2
00003423: CALLDATACOPY
00003424: SWAP1
00003425: JUMP
00003426: JUMPDEST
00003427: SWAP1
00003428: PUSH1 0x00
0000342a: PUSH1 0x20
0000342c: SWAP2
0000342d: DUP3
0000342e: DUP2
0000342f: MLOAD
00003430: SWAP2
00003431: ADD
00003432: DUP3
00003433: DUP6
00003434: GAS
00003435: CALL
00003436: ISZERO
00003437: PUSH2 0x0e17
0000343a: JUMPI
0000343b: PUSH1 0x00
0000343d: MLOAD
0000343e: RETURNDATASIZE
0000343f: PUSH2 0x3478
00003442: JUMPI
00003443: POP
00003444: PUSH1 0x01
00003446: PUSH1 0x01
00003448: PUSH1 0xa0
0000344a: SHL
0000344b: SUB
0000344c: DUP2
0000344d: AND
0000344e: EXTCODESIZE
0000344f: ISZERO
00003450: JUMPDEST
00003451: PUSH2 0x3457
00003454: JUMPI
00003455: POP
00003456: JUMP
00003457: JUMPDEST
00003458: PUSH4 0x5274afe7
0000345d: PUSH1 0xe0
0000345f: SHL
00003460: PUSH1 0x00
00003462: SWAP1
00003463: DUP2
00003464: MSTORE
00003465: PUSH1 0x01
00003467: PUSH1 0x01
00003469: PUSH1 0xa0
0000346b: SHL
0000346c: SUB
0000346d: SWAP2
0000346e: SWAP1
0000346f: SWAP2
00003470: AND
00003471: PUSH1 0x04
00003473: MSTORE
00003474: PUSH1 0x24
00003476: SWAP1
00003477: REVERT
00003478: JUMPDEST
00003479: PUSH1 0x01
0000347b: EQ
0000347c: ISZERO
0000347d: PUSH2 0x3450
00003480: JUMP
00003481: INVALID
00003482: UNKNOWN(0xFC)
00003483: UNKNOWN(0xAA)
00003484: UNKNOWN(0x24)
00003485: UNKNOWN(0xB1)
00003486: UNKNOWN(0x27)
00003487: PUSH12 0xfa7dbf77797c0a984b9df924
00003494: UNKNOWN(0xAC)
00003495: UNKNOWN(0xBE)
00003496: UNKNOWN(0xAA)
00003497: UNKNOWN(0xBD)
00003498: BASEFEE
00003499: UNKNOWN(0xCD)
0000349a: UNKNOWN(0x2F)
0000349b: SHL
0000349c: UNKNOWN(0x0E)
0000349d: UNKNOWN(0xCA)
0000349e: CALLDATACOPY
0000349f: SWAP12
000034a0: PUSH25 0xfa4b36b2e66f38ed349bec532105790177f1283bcbc094e6cd
000034ba: BASEFEE
000034bb: JUMP
000034bc: MLOAD
000034bd: SWAP6
000034be: UNKNOWN(0xD3)
000034bf: SUB
000034c0: EXTCODECOPY
000034c1: NUMBER
000034c2: LOG2
000034c3: PUSH5 0x6970667358
000034c9: UNKNOWN(0x22)
000034ca: SLT
000034cb: KECCAK256
000034cc: KECCAK256
000034cd: UNKNOWN(0xEF)
000034ce: UNKNOWN(0xB7)
000034cf: JUMP
000034d0: DELEGATECALL
000034d1: PUSH19 0xc88859d80f9ca3e94aec20032107577cf0466b
000034e5: PUSH32

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x99ac6f14f57ea0c372ff683015c86618f104c2e3e5663c2b540755f3772ced08
call_targets: 0x43506849d7c04f9138d1a2050bbf3a0c054402dd
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 183,
    "trace_id": "0x99ac6f14f57ea0c372ff683015c86618f104c2e3e5663c2b540755f3772ced08",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x43506849d7c04f9138d1a2050bbf3a0c054402dd"
    ],
    "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": "0x11d93fb4",
            "selector": "0x11d93fb4",
            "calldata_variants": [
                "0x11d93fb4",
                "0x11d93fb40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x161f9a49",
            "selector": "0x161f9a49",
            "calldata_variants": [
                "0x161f9a49",
                "0x161f9a490000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x16b2b888",
            "selector": "0x16b2b888",
            "calldata_variants": [
                "0x16b2b888",
                "0x16b2b8880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x179ff4b2",
            "selector": "0x179ff4b2",
            "calldata_variants": [
                "0x179ff4b2",
                "0x179ff4b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x235f22af",
            "selector": "0x235f22af",
            "calldata_variants": [
                "0x235f22af",
                "0x235f22af0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x272f9c0b",
            "selector": "0x272f9c0b",
            "calldata_variants": [
                "0x272f9c0b",
                "0x272f9c0b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x27a099d8",
            "selector": "0x27a099d8",
            "calldata_variants": [
                "0x27a099d8",
                "0x27a099d80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2a50cf31",
            "selector": "0x2a50cf31",
            "calldata_variants": [
                "0x2a50cf31",
                "0x2a50cf310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 13520,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high upgradeability codex DELEGATECALL to external target (proxy-like risk) 85 no
view
evidence_json
{
    "evidence": "Detector finding \"Untrusted DELEGATECALL target reachable\" shows a DELEGATECALL at pc 13520 with no guards detected; validation observed a constant target 0x43506849d7c04f9138d1a2050bbf3a0c054402dd but did not confirm trust/immutability (returndata_checked: null).",
    "locations": [
        "pc:0x34d0"
    ],
    "recommendation": "Ensure the delegatecall target is immutable and trusted (e.g., a verified library with no upgrade path), or add strict access control/allowlisting around any path that can reach it. If this is a proxy pattern, document the admin/upgrade mechanism and add invariant checks or code-hash validation on the implementation.",
    "exploit_scenario": "A reachable DELEGATECALL executes code from an external address in this contract\u2019s storage context. If that target is untrusted or upgradeable (e.g., a proxy implementation under someone else\u2019s control), it can arbitrarily mutate storage, seize ownership, or drain funds. Bytecode-only analysis cannot confirm whether the target is immutable or who controls it."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x8842d3f1e03b19952acb902e2b815d0016ed0b3d796a7389c1cd63a3e191b21a
call_targets: 0x06291eee038e94e8dec2b3bfb6e030c0b5615506
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8842d3f1e03b19952acb902e2b815d0016ed0b3d796a7389c1cd63a3e191b21a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x06291eee038e94e8dec2b3bfb6e030c0b5615506"
    ],
    "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": "0x11d93fb4",
            "selector": "0x11d93fb4",
            "calldata_variants": [
                "0x11d93fb4",
                "0x11d93fb40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x161f9a49",
            "selector": "0x161f9a49",
            "calldata_variants": [
                "0x161f9a49",
                "0x161f9a490000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x16b2b888",
            "selector": "0x16b2b888",
            "calldata_variants": [
                "0x16b2b888",
                "0x16b2b8880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x179ff4b2",
            "selector": "0x179ff4b2",
            "calldata_variants": [
                "0x179ff4b2",
                "0x179ff4b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x235f22af",
            "selector": "0x235f22af",
            "calldata_variants": [
                "0x235f22af",
                "0x235f22af0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x272f9c0b",
            "selector": "0x272f9c0b",
            "calldata_variants": [
                "0x272f9c0b",
                "0x272f9c0b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x27a099d8",
            "selector": "0x27a099d8",
            "calldata_variants": [
                "0x27a099d8",
                "0x27a099d80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2a50cf31",
            "selector": "0x2a50cf31",
            "calldata_variants": [
                "0x2a50cf31",
                "0x2a50cf310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4635,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4832,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6110,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x8842d3f1e03b19952acb902e2b815d0016ed0b3d796a7389c1cd63a3e191b21a
call_targets: 0x06291eee038e94e8dec2b3bfb6e030c0b5615506
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8842d3f1e03b19952acb902e2b815d0016ed0b3d796a7389c1cd63a3e191b21a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x06291eee038e94e8dec2b3bfb6e030c0b5615506"
    ],
    "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": "0x11d93fb4",
            "selector": "0x11d93fb4",
            "calldata_variants": [
                "0x11d93fb4",
                "0x11d93fb40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x161f9a49",
            "selector": "0x161f9a49",
            "calldata_variants": [
                "0x161f9a49",
                "0x161f9a490000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x16b2b888",
            "selector": "0x16b2b888",
            "calldata_variants": [
                "0x16b2b888",
                "0x16b2b8880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x179ff4b2",
            "selector": "0x179ff4b2",
            "calldata_variants": [
                "0x179ff4b2",
                "0x179ff4b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x235f22af",
            "selector": "0x235f22af",
            "calldata_variants": [
                "0x235f22af",
                "0x235f22af0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x272f9c0b",
            "selector": "0x272f9c0b",
            "calldata_variants": [
                "0x272f9c0b",
                "0x272f9c0b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x27a099d8",
            "selector": "0x27a099d8",
            "calldata_variants": [
                "0x27a099d8",
                "0x27a099d80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2a50cf31",
            "selector": "0x2a50cf31",
            "calldata_variants": [
                "0x2a50cf31",
                "0x2a50cf310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4635,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4832,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6110,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}
medium other codex Low-level CALLs with computed target/value and unknown return handling 75 no
view
evidence_json
{
    "evidence": "Detector findings \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\" list CALL sites at pc 4635/4832/6110 with computed target/value and no guards detected (returndata_checked: null). Validation observed constant target 0x06291eee038e94e8dec2b3bfb6e030c0b5615506 but not confirmed as safe in all paths.",
    "locations": [
        "pc:0x121b",
        "pc:0x12e0",
        "pc:0x17de"
    ],
    "recommendation": "Trace inputs that feed the CALL target/value and restrict them (allowlist or access control). Check the CALL return value and handle failures explicitly. If state changes occur before these calls, consider a reentrancy guard or checks-effects-interactions discipline.",
    "exploit_scenario": "Multiple CALL sites are reachable with computed target/value; if user input can influence these, an attacker could redirect ETH transfers or trigger reentrancy via external calls. Return-data checks are not shown, so silent failure handling is unclear. Validation traces saw a constant target equal to the contract itself, but controllability is not confirmed from bytecode alone."
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}