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

Analysis Run

019c0eab-41f8-709b-a0d5-a4b9b6478fe1

complete
Chain ID
1
Address
Block Number
Created
Fri, Jan 30, 2026 11:30 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
42370 artifact.fetch complete 1 / 3 2 months ago
42371 proxy.resolve complete 1 / 3 2 months ago
42372 tool.cast_disasm complete 1 / 3 2 months ago
42373 analysis.bundle complete 1 / 3 2 months ago
42374 capability.graph complete 1 / 3 2 months ago
42375 detector.run complete 1 / 3 2 months ago
42376 validation.fork complete 1 / 3 2 months ago
42496 report.consolidate complete 1 / 6 2 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-only review shows computed DELEGATECALLs and multiple computed CALLs (including ETH value transfers) with no guards detected in the artifacts; access control and state-update ordering cannot be confirmed from bytecode alone.
View stdout
{"no_findings":false,"summary":"Bytecode-only review shows computed DELEGATECALLs and multiple computed CALLs (including ETH value transfers) with no guards detected in the artifacts; access control and state-update ordering cannot be confirmed from bytecode alone.","findings":[{"severity":"high","category":"other","title":"Computed DELEGATECALL targets reachable (potential arbitrary code execution in caller context)","exploit_scenario":"If an attacker can influence the delegatecall target (directly or via storage), they can execute arbitrary code in the contract’s storage context, potentially modifying critical state or draining funds. This risk is severe in UUPS/modular designs if access control or target validation is missing or bypassed.","recommendation":"Restrict DELEGATECALL targets to a trusted, immutable allowlist (or verified codehash) and enforce strong access control/signature checks before any delegatecall path. Consider removing delegatecall if not strictly required.","evidence":"detector_findings[0] reports untrusted_delegatecall_count=2 with computed targets and guards_detected=[]; examples at pc 3635 and pc 4534.","locations":["pc:0x0e33","pc:0x11b6"]},{"severity":"medium","category":"reentrancy","title":"Untrusted external CALLs with ETH value possible","exploit_scenario":"If user-controlled data can reach these CALLs, an attacker could redirect ETH transfers to arbitrary addresses or reenter through the callee, potentially breaking accounting invariants if state updates happen after the call. Bytecode evidence does not confirm any reentrancy guard or access control on these paths.","recommendation":"Ensure only authorized callers can trigger value-bearing external calls, validate call targets, and apply checks-effects-interactions or a reentrancy guard around sensitive state changes.","evidence":"detector_findings[1] and [2] show untrusted_call_count=10 with computed targets and value_expression_category='computed', guards_detected=[]; ETH value transfer possible at these CALL sites.","locations":["pc:0x05c0","pc:0x0ab8","pc:0x0c29","pc:0x100b","pc:0x1292","pc:0x16bc","pc:0x16fd","pc:0x1771","pc:0x1b05","pc:0x1f62"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-y2ium8f8
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0fc3-12fb-7883-884b-1a8292fb3e2d
--------
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
exec
/bin/bash -lc ls in /tmp/codex-y2ium8f8 succeeded in 9ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-y2ium8f8 succeeded in 9ms:
{
  "analysis_artifact": {
    "address": "0xd3f582f6b4814e989ee8e96bc3175320b5a540ab",
    "artifact_hash": "0x2fc537903ee85eef90b252a0e8bbb2de2b6ea2ace2e8aa6da1527d0fa7d6cada",
    "artifact_json": {
      "auth": {
        "guards": []
      },
      "basic_blocks": [
        {
          "end_pc": 13,
          "hash": "0x86b9a73a5d5e82b1d142a0be840c25b0b3e2fa0accf8597e38e3ec8266e9e2e1",
          "opcodes": [
            "PUSH1",
            "PUSH1",
            "MSTORE",
            "PUSH1",
            "CALLDATASIZE",
            "LT",
            "ISZERO",
exec
/bin/bash -lc 'rg -n "storage|slot|EIP-1967|proxy|beacon" BYTECODE_BUNDLE.json' in /tmp/codex-y2ium8f8 succeeded in 19ms:
12467:          "storage": {
12469:            "slots": [
12473:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12478:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12483:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12488:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12493:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12498:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12503:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12508:                "slot": "0x0000000000000000000000000000000000000000000000000000000000001e63"
12513:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12518:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12523:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12528:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12546:          "storage": {
12548:            "slots": [
12552:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12557:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12562:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
12567:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000020"
exec
/bin/bash -lc "sed -n '14280,14460p' BYTECODE_BUNDLE.json" in /tmp/codex-y2ium8f8 succeeded in 8ms:
        "0x34fcd5be",
        "0x3659cfe6",
        "0x3a871cdd",
        "0x3e1b0812",
        "0x51166ba0",
        "0x51945447",
        "0x54fd4d50",
        "0x55b14f50",
        "0x57b75047",
        "0x84b0196e",
        "0x88e7fd06",
        "0xb0d691fe",
        "0xb68df16d",
        "0xbc197c81",
        "0xd087d288",
        "0xd1f57894",
        "0xd5416221"
      ],
      "sinks": {
        "call": 10,
exec
/bin/bash -lc 'rg -n "call:3635|pc": " BYTECODE_BUNDLE.json' in /tmp/codex-y2ium8f8 exited 2 in 5ms:
/bin/bash: -c: line 1: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 2: syntax error: unexpected end of file
exec
/bin/bash -lc 'rg -n "call:3635" BYTECODE_BUNDLE.json' in /tmp/codex-y2ium8f8 succeeded in 7ms:
17768:          "to": "call:3635",
17772:          "from": "call:3635",
21658:          "id": "call:3635",
exec
/bin/bash -lc "sed -n '17640,17790p' BYTECODE_BUNDLE.json" in /tmp/codex-y2ium8f8 succeeded in 7ms:
        },
        {
          "from": "fn:0x333daf92",
          "to": "bb:888985022",
          "type": "entry"
        },
        {
          "from": "fn:0x34fcd5be",
          "to": "bb:911855590",
          "type": "entry"
        },
        {
          "from": "fn:0x3659cfe6",
          "to": "bb:981933277",
          "type": "entry"
        },
        {
          "from": "fn:0x3a871cdd",
          "to": "bb:1041958930",
          "type": "entry"
exec
/bin/bash -lc "rg -n \"\\\"id\\\": \\\"bb:3620\\\"\" BYTECODE_BUNDLE.json" in /tmp/codex-y2ium8f8 succeeded in 7ms:
19711:          "id": "bb:3620",
exec
/bin/bash -lc "sed -n '19690,19750p' BYTECODE_BUNDLE.json" in /tmp/codex-y2ium8f8 succeeded in 7ms:
          "id": "bb:3557",
          "start_pc": 3557,
          "type": "basic_block"
        },
        {
          "end_pc": 3614,
          "hash": "0xe445d0c4fa55bc38e89d2eeae43d21c564e7f0f866495d0bb740a4da702a4e60",
          "id": "bb:3609",
          "start_pc": 3609,
          "type": "basic_block"
        },
        {
          "end_pc": 3619,
          "hash": "0xc0d88c364098231db09f12e75fd1cb51b633baa181c7bbe5183b0b9d8f1c8f95",
          "id": "bb:3615",
          "start_pc": 3615,
          "type": "basic_block"
        },
        {
          "end_pc": 3644,
exec
/bin/bash -lc 'rg -n "evidence" BYTECODE_BUNDLE.json | head' in /tmp/codex-y2ium8f8 succeeded in 11ms:
14432:      "proxy_evidence": {
21889:      "evidence_json": {
21932:      "evidence_json": {
21984:      "evidence_json": {
codex
{"no_findings":false,"summary":"Bytecode-only review shows computed DELEGATECALLs and multiple computed CALLs (including ETH value transfers) with no guards detected in the artifacts; access control and state-update ordering cannot be confirmed from bytecode alone.","findings":[{"severity":"high","category":"other","title":"Computed DELEGATECALL targets reachable (potential arbitrary code execution in caller context)","exploit_scenario":"If an attacker can influence the delegatecall target (directly or via storage), they can execute arbitrary code in the contract’s storage context, potentially modifying critical state or draining funds. This risk is severe in UUPS/modular designs if access control or target validation is missing or bypassed.","recommendation":"Restrict DELEGATECALL targets to a trusted, immutable allowlist (or verified codehash) and enforce strong access control/signature checks before any delegatecall path. Consider removing delegatecall if not strictly required.","evidence":"detector_findings[0] reports untrusted_delegatecall_count=2 with computed targets and guards_detected=[]; examples at pc 3635 and pc 4534.","locations":["pc:0x0e33","pc:0x11b6"]},{"severity":"medium","category":"reentrancy","title":"Untrusted external CALLs with ETH value possible","exploit_scenario":"If user-controlled data can reach these CALLs, an attacker could redirect ETH transfers to arbitrary addresses or reenter through the callee, potentially breaking accounting invariants if state updates happen after the call. Bytecode evidence does not confirm any reentrancy guard or access control on these paths.","recommendation":"Ensure only authorized callers can trigger value-bearing external calls, validate call targets, and apply checks-effects-interactions or a reentrancy guard around sensitive state changes.","evidence":"detector_findings[1] and [2] show untrusted_call_count=10 with computed targets and value_expression_category='computed', guards_detected=[]; ETH value transfer possible at these CALL sites.","locations":["pc:0x05c0","pc:0x0ab8","pc:0x0c29","pc:0x100b","pc:0x1292","pc:0x16bc","pc:0x16fd","pc:0x1771","pc:0x1b05","pc:0x1f62"]}]}
tokens used
44,734
Metadata
{
    "codex": {
        "ran_at": "2026-01-30T16:38:12.916443+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 17188,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode-only review shows computed DELEGATECALLs and multiple computed CALLs (including ETH value transfers) with no guards detected in the artifacts; access control and state-update ordering cannot be confirmed from bytecode alone.",
    "raw_final": {
        "summary": "Bytecode-only review shows computed DELEGATECALLs and multiple computed CALLs (including ETH value transfers) with no guards detected in the artifacts; access control and state-update ordering cannot be confirmed from bytecode alone.",
        "findings": [
            {
                "title": "Computed DELEGATECALL targets reachable (potential arbitrary code execution in caller context)",
                "category": "other",
                "evidence": "detector_findings[0] reports untrusted_delegatecall_count=2 with computed targets and guards_detected=[]; examples at pc 3635 and pc 4534.",
                "severity": "high",
                "locations": [
                    "pc:0x0e33",
                    "pc:0x11b6"
                ],
                "recommendation": "Restrict DELEGATECALL targets to a trusted, immutable allowlist (or verified codehash) and enforce strong access control/signature checks before any delegatecall path. Consider removing delegatecall if not strictly required.",
                "exploit_scenario": "If an attacker can influence the delegatecall target (directly or via storage), they can execute arbitrary code in the contract\u2019s storage context, potentially modifying critical state or draining funds. This risk is severe in UUPS/modular designs if access control or target validation is missing or bypassed."
            },
            {
                "title": "Untrusted external CALLs with ETH value possible",
                "category": "reentrancy",
                "evidence": "detector_findings[1] and [2] show untrusted_call_count=10 with computed targets and value_expression_category='computed', guards_detected=[]; ETH value transfer possible at these CALL sites.",
                "severity": "medium",
                "locations": [
                    "pc:0x05c0",
                    "pc:0x0ab8",
                    "pc:0x0c29",
                    "pc:0x100b",
                    "pc:0x1292",
                    "pc:0x16bc",
                    "pc:0x16fd",
                    "pc:0x1771",
                    "pc:0x1b05",
                    "pc:0x1f62"
                ],
                "recommendation": "Ensure only authorized callers can trigger value-bearing external calls, validate call targets, and apply checks-effects-interactions or a reentrancy guard around sensitive state changes.",
                "exploit_scenario": "If user-controlled data can reach these CALLs, an attacker could redirect ETH transfers to arbitrary addresses or reenter through the callee, potentially breaking accounting invariants if state updates happen after the call. Bytecode evidence does not confirm any reentrancy guard or access control on these paths."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
14
EXT*/BALANCE
4
Total opcodes
5326
Flags
delegatecall_present call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: ISZERO
0000000a: PUSH2 0x001d
0000000d: JUMPI
0000000e: JUMPDEST
0000000f: CALLDATASIZE
00000010: PUSH2 0x1159
00000013: JUMPI
00000014: PUSH2 0x001b
00000017: PUSH2 0x2047
0000001a: JUMP
0000001b: JUMPDEST
0000001c: STOP
0000001d: JUMPDEST
0000001e: PUSH1 0x00
00000020: CALLDATALOAD
00000021: PUSH1 0xe0
00000023: SHR
00000024: DUP1
00000025: PUSH4 0x06fdde03
0000002a: EQ
0000002b: PUSH2 0x019d
0000002e: JUMPI
0000002f: DUP1
00000030: PUSH4 0x0b3dc354
00000035: EQ
00000036: PUSH2 0x0198
00000039: JUMPI
0000003a: DUP1
0000003b: PUSH4 0x150b7a02
00000040: EQ
00000041: PUSH2 0x0193
00000044: JUMPI
00000045: DUP1
00000046: PUSH4 0x1626ba7e
0000004b: EQ
0000004c: PUSH2 0x018e
0000004f: JUMPI
00000050: DUP1
00000051: PUSH4 0x29f8b174
00000056: EQ
00000057: PUSH2 0x0189
0000005a: JUMPI
0000005b: DUP1
0000005c: PUSH4 0x333daf92
00000061: EQ
00000062: PUSH2 0x0184
00000065: JUMPI
00000066: DUP1
00000067: PUSH4 0x34fcd5be
0000006c: EQ
0000006d: PUSH2 0x017f
00000070: JUMPI
00000071: DUP1
00000072: PUSH4 0x3659cfe6
00000077: EQ
00000078: PUSH2 0x017a
0000007b: JUMPI
0000007c: DUP1
0000007d: PUSH4 0x3a871cdd
00000082: EQ
00000083: PUSH2 0x0175
00000086: JUMPI
00000087: DUP1
00000088: PUSH4 0x3e1b0812
0000008d: EQ
0000008e: PUSH2 0x0170
00000091: JUMPI
00000092: DUP1
00000093: PUSH4 0x51166ba0
00000098: EQ
00000099: PUSH2 0x016b
0000009c: JUMPI
0000009d: DUP1
0000009e: PUSH4 0x51945447
000000a3: EQ
000000a4: PUSH2 0x0166
000000a7: JUMPI
000000a8: DUP1
000000a9: PUSH4 0x54fd4d50
000000ae: EQ
000000af: PUSH2 0x0161
000000b2: JUMPI
000000b3: DUP1
000000b4: PUSH4 0x55b14f50
000000b9: EQ
000000ba: PUSH2 0x015c
000000bd: JUMPI
000000be: DUP1
000000bf: PUSH4 0x57b75047
000000c4: EQ
000000c5: PUSH2 0x0157
000000c8: JUMPI
000000c9: DUP1
000000ca: PUSH4 0x84b0196e
000000cf: EQ
000000d0: PUSH2 0x0152
000000d3: JUMPI
000000d4: DUP1
000000d5: PUSH4 0x88e7fd06
000000da: EQ
000000db: PUSH2 0x014d
000000de: JUMPI
000000df: DUP1
000000e0: PUSH4 0xb0d691fe
000000e5: EQ
000000e6: PUSH2 0x0148
000000e9: JUMPI
000000ea: DUP1
000000eb: PUSH4 0xb68df16d
000000f0: EQ
000000f1: PUSH2 0x0143
000000f4: JUMPI
000000f5: DUP1
000000f6: PUSH4 0xbc197c81
000000fb: EQ
000000fc: PUSH2 0x013e
000000ff: JUMPI
00000100: DUP1
00000101: PUSH4 0xd087d288
00000106: EQ
00000107: PUSH2 0x0139
0000010a: JUMPI
0000010b: DUP1
0000010c: PUSH4 0xd1f57894
00000111: EQ
00000112: PUSH2 0x0134
00000115: JUMPI
00000116: DUP1
00000117: PUSH4 0xd5416221
0000011c: EQ
0000011d: PUSH2 0x012f
00000120: JUMPI
00000121: PUSH4 0xf23a6e61
00000126: SUB
00000127: PUSH2 0x000e
0000012a: JUMPI
0000012b: PUSH2 0x10c7
0000012e: JUMP
0000012f: JUMPDEST
00000130: PUSH2 0x1035
00000133: JUMP
00000134: JUMPDEST
00000135: PUSH2 0x0f99
00000138: JUMP
00000139: JUMPDEST
0000013a: PUSH2 0x0f1a
0000013d: JUMP
0000013e: JUMPDEST
0000013f: PUSH2 0x0e8b
00000142: JUMP
00000143: JUMPDEST
00000144: PUSH2 0x0dae
00000147: JUMP
00000148: JUMPDEST
00000149: PUSH2 0x0d69
0000014c: JUMP
0000014d: JUMPDEST
0000014e: PUSH2 0x0d34
00000151: JUMP
00000152: JUMPDEST
00000153: PUSH2 0x0c8c
00000156: JUMP
00000157: JUMPDEST
00000158: PUSH2 0x0c55
0000015b: JUMP
0000015c: JUMPDEST
0000015d: PUSH2 0x0b6f
00000160: JUMP
00000161: JUMPDEST
00000162: PUSH2 0x0b1b
00000165: JUMP
00000166: JUMPDEST
00000167: PUSH2 0x0a16
0000016a: JUMP
0000016b: JUMPDEST
0000016c: PUSH2 0x094d
0000016f: JUMP
00000170: JUMPDEST
00000171: PUSH2 0x0889
00000174: JUMP
00000175: JUMPDEST
00000176: PUSH2 0x0847
00000179: JUMP
0000017a: JUMPDEST
0000017b: PUSH2 0x07a1
0000017e: JUMP
0000017f: JUMPDEST
00000180: PUSH2 0x06be
00000183: JUMP
00000184: JUMPDEST
00000185: PUSH2 0x0639
00000188: JUMP
00000189: JUMPDEST
0000018a: PUSH2 0x0491
0000018d: JUMP
0000018e: JUMPDEST
0000018f: PUSH2 0x043e
00000192: JUMP
00000193: JUMPDEST
00000194: PUSH2 0x03b1
00000197: JUMP
00000198: JUMPDEST
00000199: PUSH2 0x0332
0000019c: JUMP
0000019d: JUMPDEST
0000019e: PUSH2 0x02fe
000001a1: JUMP
000001a2: JUMPDEST
000001a3: PUSH1 0x00
000001a5: SWAP2
000001a6: SUB
000001a7: SLT
000001a8: PUSH2 0x01ad
000001ab: JUMPI
000001ac: JUMP
000001ad: JUMPDEST
000001ae: PUSH1 0x00
000001b0: DUP1
000001b1: REVERT
000001b2: JUMPDEST
000001b3: PUSH4 0x4e487b71
000001b8: PUSH1 0xe0
000001ba: SHL
000001bb: PUSH1 0x00
000001bd: MSTORE
000001be: PUSH1 0x41
000001c0: PUSH1 0x04
000001c2: MSTORE
000001c3: PUSH1 0x24
000001c5: PUSH1 0x00
000001c7: REVERT
000001c8: JUMPDEST
000001c9: PUSH1 0x01
000001cb: PUSH1 0x01
000001cd: PUSH1 0x40
000001cf: SHL
000001d0: SUB
000001d1: DUP2
000001d2: GT
000001d3: PUSH2 0x01db
000001d6: JUMPI
000001d7: PUSH1 0x40
000001d9: MSTORE
000001da: JUMP
000001db: JUMPDEST
000001dc: PUSH2 0x01b2
000001df: JUMP
000001e0: JUMPDEST
000001e1: PUSH1 0x60
000001e3: DUP2
000001e4: ADD
000001e5: SWAP1
000001e6: DUP2
000001e7: LT
000001e8: PUSH1 0x01
000001ea: PUSH1 0x01
000001ec: PUSH1 0x40
000001ee: SHL
000001ef: SUB
000001f0: DUP3
000001f1: GT
000001f2: OR
000001f3: PUSH2 0x01db
000001f6: JUMPI
000001f7: PUSH1 0x40
000001f9: MSTORE
000001fa: JUMP
000001fb: JUMPDEST
000001fc: PUSH1 0x80
000001fe: DUP2
000001ff: ADD
00000200: SWAP1
00000201: DUP2
00000202: LT
00000203: PUSH1 0x01
00000205: PUSH1 0x01
00000207: PUSH1 0x40
00000209: SHL
0000020a: SUB
0000020b: DUP3
0000020c: GT
0000020d: OR
0000020e: PUSH2 0x01db
00000211: JUMPI
00000212: PUSH1 0x40
00000214: MSTORE
00000215: JUMP
00000216: JUMPDEST
00000217: PUSH1 0x40
00000219: DUP2
0000021a: ADD
0000021b: SWAP1
0000021c: DUP2
0000021d: LT
0000021e: PUSH1 0x01
00000220: PUSH1 0x01
00000222: PUSH1 0x40
00000224: SHL
00000225: SUB
00000226: DUP3
00000227: GT
00000228: OR
00000229: PUSH2 0x01db
0000022c: JUMPI
0000022d: PUSH1 0x40
0000022f: MSTORE
00000230: JUMP
00000231: JUMPDEST
00000232: PUSH1 0xc0
00000234: DUP2
00000235: ADD
00000236: SWAP1
00000237: DUP2
00000238: LT
00000239: PUSH1 0x01
0000023b: PUSH1 0x01
0000023d: PUSH1 0x40
0000023f: SHL
00000240: SUB
00000241: DUP3
00000242: GT
00000243: OR
00000244: PUSH2 0x01db
00000247: JUMPI
00000248: PUSH1 0x40
0000024a: MSTORE
0000024b: JUMP
0000024c: JUMPDEST
0000024d: SWAP1
0000024e: PUSH1 0x1f
00000250: DUP1
00000251: NOT
00000252: SWAP2
00000253: ADD
00000254: AND
00000255: DUP2
00000256: ADD
00000257: SWAP1
00000258: DUP2
00000259: LT
0000025a: PUSH1 0x01
0000025c: PUSH1 0x01
0000025e: PUSH1 0x40
00000260: SHL
00000261: SUB
00000262: DUP3
00000263: GT
00000264: OR
00000265: PUSH2 0x01db
00000268: JUMPI
00000269: PUSH1 0x40
0000026b: MSTORE
0000026c: JUMP
0000026d: JUMPDEST
0000026e: PUSH1 0x40
00000270: MLOAD
00000271: SWAP1
00000272: PUSH2 0x027a
00000275: DUP3
00000276: PUSH2 0x01fb
00000279: JUMP
0000027a: JUMPDEST
0000027b: JUMP
0000027c: JUMPDEST
0000027d: PUSH1 0x40
0000027f: MLOAD
00000280: SWAP1
00000281: PUSH2 0x0160
00000284: DUP3
00000285: ADD
00000286: DUP3
00000287: DUP2
00000288: LT
00000289: PUSH1 0x01
0000028b: PUSH1 0x01
0000028d: PUSH1 0x40
0000028f: SHL
00000290: SUB
00000291: DUP3
00000292: GT
00000293: OR
00000294: PUSH2 0x01db
00000297: JUMPI
00000298: PUSH1 0x40
0000029a: MSTORE
0000029b: JUMP
0000029c: JUMPDEST
0000029d: PUSH1 0x40
0000029f: MLOAD
000002a0: SWAP1
000002a1: PUSH2 0x02a9
000002a4: DUP3
000002a5: PUSH2 0x0216
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH1 0x06
000002ac: DUP3
000002ad: MSTORE
000002ae: PUSH6 0x12d95c9b995b
000002b5: PUSH1 0xd2
000002b7: SHL
000002b8: PUSH1 0x20
000002ba: DUP4
000002bb: ADD
000002bc: MSTORE
000002bd: JUMP
000002be: JUMPDEST
000002bf: SWAP2
000002c0: SWAP1
000002c1: DUP3
000002c2: MLOAD
000002c3: SWAP3
000002c4: DUP4
000002c5: DUP3
000002c6: MSTORE
000002c7: PUSH1 0x00
000002c9: JUMPDEST
000002ca: DUP5
000002cb: DUP2
000002cc: LT
000002cd: PUSH2 0x02ea
000002d0: JUMPI
000002d1: POP
000002d2: POP
000002d3: DUP3
000002d4: PUSH1 0x00
000002d6: PUSH1 0x20
000002d8: DUP1
000002d9: SWAP5
000002da: SWAP6
000002db: DUP5
000002dc: ADD
000002dd: ADD
000002de: MSTORE
000002df: PUSH1 0x1f
000002e1: DUP1
000002e2: NOT
000002e3: SWAP2
000002e4: ADD
000002e5: AND
000002e6: ADD
000002e7: ADD
000002e8: SWAP1
000002e9: JUMP
000002ea: JUMPDEST
000002eb: PUSH1 0x20
000002ed: DUP2
000002ee: DUP4
000002ef: ADD
000002f0: DUP2
000002f1: ADD
000002f2: MLOAD
000002f3: DUP5
000002f4: DUP4
000002f5: ADD
000002f6: DUP3
000002f7: ADD
000002f8: MSTORE
000002f9: ADD
000002fa: PUSH2 0x02c9
000002fd: JUMP
000002fe: JUMPDEST
000002ff: CALLVALUE
00000300: PUSH2 0x01ad
00000303: JUMPI
00000304: PUSH1 0x00
00000306: CALLDATASIZE
00000307: PUSH1 0x03
00000309: NOT
0000030a: ADD
0000030b: SLT
0000030c: PUSH2 0x01ad
0000030f: JUMPI
00000310: PUSH2 0x032e
00000313: PUSH2 0x031a
00000316: PUSH2 0x029c
00000319: JUMP
0000031a: JUMPDEST
0000031b: PUSH1 0x40
0000031d: MLOAD
0000031e: SWAP2
0000031f: DUP3
00000320: SWAP2
00000321: PUSH1 0x20
00000323: DUP4
00000324: MSTORE
00000325: PUSH1 0x20
00000327: DUP4
00000328: ADD
00000329: SWAP1
0000032a: PUSH2 0x02be
0000032d: JUMP
0000032e: JUMPDEST
0000032f: SUB
00000330: SWAP1
00000331: RETURN
00000332: JUMPDEST
00000333: CALLVALUE
00000334: PUSH2 0x01ad
00000337: JUMPI
00000338: PUSH1 0x00
0000033a: CALLDATASIZE
0000033b: PUSH1 0x03
0000033d: NOT
0000033e: ADD
0000033f: SLT
00000340: PUSH2 0x01ad
00000343: JUMPI
00000344: PUSH1 0x20
00000346: PUSH1 0x00
00000348: DUP1
00000349: MLOAD
0000034a: PUSH1 0x20
0000034c: PUSH2 0x2171
0000034f: DUP4
00000350: CODECOPY
00000351: DUP2
00000352: MLOAD
00000353: SWAP2
00000354: MSTORE
00000355: SLOAD
00000356: PUSH1 0x50
00000358: SHR
00000359: PUSH1 0x40
0000035b: MLOAD
0000035c: SWAP1
0000035d: PUSH1 0x01
0000035f: DUP1
00000360: PUSH1 0xa0
00000362: SHL
00000363: SUB
00000364: AND
00000365: DUP2
00000366: MSTORE
00000367: RETURN
00000368: JUMPDEST
00000369: PUSH1 0x01
0000036b: PUSH1 0x01
0000036d: PUSH1 0xa0
0000036f: SHL
00000370: SUB
00000371: DUP2
00000372: AND
00000373: SUB
00000374: PUSH2 0x01ad
00000377: JUMPI
00000378: JUMP
00000379: JUMPDEST
0000037a: CALLDATALOAD
0000037b: SWAP1
0000037c: PUSH2 0x027a
0000037f: DUP3
00000380: PUSH2 0x0368
00000383: JUMP
00000384: JUMPDEST
00000385: SWAP2
00000386: DUP2
00000387: PUSH1 0x1f
00000389: DUP5
0000038a: ADD
0000038b: SLT
0000038c: ISZERO
0000038d: PUSH2 0x01ad
00000390: JUMPI
00000391: DUP3
00000392: CALLDATALOAD
00000393: SWAP2
00000394: PUSH1 0x01
00000396: PUSH1 0x01
00000398: PUSH1 0x40
0000039a: SHL
0000039b: SUB
0000039c: DUP4
0000039d: GT
0000039e: PUSH2 0x01ad
000003a1: JUMPI
000003a2: PUSH1 0x20
000003a4: DUP4
000003a5: DUP2
000003a6: DUP7
000003a7: ADD
000003a8: SWAP6
000003a9: ADD
000003aa: ADD
000003ab: GT
000003ac: PUSH2 0x01ad
000003af: JUMPI
000003b0: JUMP
000003b1: JUMPDEST
000003b2: CALLVALUE
000003b3: PUSH2 0x01ad
000003b6: JUMPI
000003b7: PUSH1 0x80
000003b9: CALLDATASIZE
000003ba: PUSH1 0x03
000003bc: NOT
000003bd: ADD
000003be: SLT
000003bf: PUSH2 0x01ad
000003c2: JUMPI
000003c3: PUSH2 0x03cd
000003c6: PUSH1 0x04
000003c8: CALLDATALOAD
000003c9: PUSH2 0x0368
000003cc: JUMP
000003cd: JUMPDEST
000003ce: PUSH2 0x03d8
000003d1: PUSH1 0x24
000003d3: CALLDATALOAD
000003d4: PUSH2 0x0368
000003d7: JUMP
000003d8: JUMPDEST
000003d9: PUSH1 0x64
000003db: CALLDATALOAD
000003dc: PUSH1 0x01
000003de: PUSH1 0x01
000003e0: PUSH1 0x40
000003e2: SHL
000003e3: SUB
000003e4: DUP2
000003e5: GT
000003e6: PUSH2 0x01ad
000003e9: JUMPI
000003ea: PUSH2 0x03f7
000003ed: SWAP1
000003ee: CALLDATASIZE
000003ef: SWAP1
000003f0: PUSH1 0x04
000003f2: ADD
000003f3: PUSH2 0x0384
000003f6: JUMP
000003f7: JUMPDEST
000003f8: POP
000003f9: POP
000003fa: PUSH1 0x40
000003fc: MLOAD
000003fd: PUSH4 0x0a85bd01
00000402: PUSH1 0xe1
00000404: SHL
00000405: DUP2
00000406: MSTORE
00000407: PUSH1 0x20
00000409: SWAP1
0000040a: RETURN
0000040b: JUMPDEST
0000040c: SWAP1
0000040d: PUSH1 0x40
0000040f: PUSH1 0x03
00000411: NOT
00000412: DUP4
00000413: ADD
00000414: SLT
00000415: PUSH2 0x01ad
00000418: JUMPI
00000419: PUSH1 0x04
0000041b: CALLDATALOAD
0000041c: SWAP2
0000041d: PUSH1 0x24
0000041f: CALLDATALOAD
00000420: SWAP1
00000421: PUSH1 0x01
00000423: PUSH1 0x01
00000425: PUSH1 0x40
00000427: SHL
00000428: SUB
00000429: DUP3
0000042a: GT
0000042b: PUSH2 0x01ad
0000042e: JUMPI
0000042f: PUSH2 0x043a
00000432: SWAP2
00000433: PUSH1 0x04
00000435: ADD
00000436: PUSH2 0x0384
00000439: JUMP
0000043a: JUMPDEST
0000043b: SWAP1
0000043c: SWAP2
0000043d: JUMP
0000043e: JUMPDEST
0000043f: CALLVALUE
00000440: PUSH2 0x01ad
00000443: JUMPI
00000444: PUSH1 0x20
00000446: PUSH2 0x0457
00000449: PUSH2 0x0451
0000044c: CALLDATASIZE
0000044d: PUSH2 0x040b
00000450: JUMP
00000451: JUMPDEST
00000452: SWAP2
00000453: PUSH2 0x1c33
00000456: JUMP
00000457: JUMPDEST
00000458: PUSH1 0x40
0000045a: MLOAD
0000045b: PUSH1 0x01
0000045d: PUSH1 0x01
0000045f: PUSH1 0xe0
00000461: SHL
00000462: SUB
00000463: NOT
00000464: SWAP1
00000465: SWAP2
00000466: AND
00000467: DUP2
00000468: MSTORE
00000469: RETURN
0000046a: JUMPDEST
0000046b: PUSH1 0x04
0000046d: CALLDATALOAD
0000046e: SWAP1
0000046f: PUSH1 0x01
00000471: PUSH1 0x01
00000473: PUSH1 0xe0
00000475: SHL
00000476: SUB
00000477: NOT
00000478: DUP3
00000479: AND
0000047a: DUP3
0000047b: SUB
0000047c: PUSH2 0x01ad
0000047f: JUMPI
00000480: JUMP
00000481: JUMPDEST
00000482: PUSH6 0xffffffffffff
00000489: DUP2
0000048a: AND
0000048b: SUB
0000048c: PUSH2 0x01ad
0000048f: JUMPI
00000490: JUMP
00000491: JUMPDEST
00000492: PUSH1 0xc0
00000494: CALLDATASIZE
00000495: PUSH1 0x03
00000497: NOT
00000498: ADD
00000499: SLT
0000049a: PUSH2 0x01ad
0000049d: JUMPI
0000049e: PUSH2 0x04a5
000004a1: PUSH2 0x046a
000004a4: JUMP
000004a5: JUMPDEST
000004a6: PUSH1 0x24
000004a8: CALLDATALOAD
000004a9: SWAP1
000004aa: PUSH2 0x04b2
000004ad: DUP3
000004ae: PUSH2 0x0368
000004b1: JUMP
000004b2: JUMPDEST
000004b3: PUSH1 0x44
000004b5: CALLDATALOAD
000004b6: SWAP1
000004b7: PUSH2 0x04bf
000004ba: DUP3
000004bb: PUSH2 0x0368
000004be: JUMP
000004bf: JUMPDEST
000004c0: PUSH1 0x64
000004c2: CALLDATALOAD
000004c3: PUSH2 0x04cb
000004c6: DUP2
000004c7: PUSH2 0x0481
000004ca: JUMP
000004cb: JUMPDEST
000004cc: PUSH1 0x84
000004ce: CALLDATALOAD
000004cf: SWAP4
000004d0: PUSH2 0x04d8
000004d3: DUP6
000004d4: PUSH2 0x0481
000004d7: JUMP
000004d8: JUMPDEST
000004d9: PUSH1 0xa4
000004db: CALLDATALOAD
000004dc: PUSH1 0x01
000004de: PUSH1 0x01
000004e0: PUSH1 0x40
000004e2: SHL
000004e3: SUB
000004e4: DUP2
000004e5: GT
000004e6: PUSH2 0x01ad
000004e9: JUMPI
000004ea: PUSH2 0x04f7
000004ed: SWAP1
000004ee: CALLDATASIZE
000004ef: SWAP1
000004f0: PUSH1 0x04
000004f2: ADD
000004f3: PUSH2 0x0384
000004f6: JUMP
000004f7: JUMPDEST
000004f8: SWAP6
000004f9: SWAP1
000004fa: SWAP5
000004fb: PUSH1 0x01
000004fd: PUSH1 0x01
000004ff: PUSH1 0xa0
00000501: SHL
00000502: SUB
00000503: SWAP4
00000504: CALLER
00000505: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000526: DUP7
00000527: AND
00000528: EQ
00000529: ISZERO
0000052a: DUP1
0000052b: PUSH2 0x062f
0000052e: JUMPI
0000052f: JUMPDEST
00000530: PUSH2 0x061d
00000533: JUMPI
00000534: DUP5
00000535: SWAP3
00000536: PUSH2 0x0564
00000539: PUSH2 0x0590
0000053c: SWAP3
0000053d: PUSH2 0x0555
00000540: PUSH2 0x0547
00000543: PUSH2 0x026d
00000546: JUMP
00000547: JUMPDEST
00000548: PUSH6 0xffffffffffff
0000054f: SWAP1
00000550: SWAP5
00000551: AND
00000552: DUP5
00000553: MSTORE
00000554: JUMP
00000555: JUMPDEST
00000556: PUSH6 0xffffffffffff
0000055d: AND
0000055e: PUSH1 0x20
00000560: DUP4
00000561: ADD
00000562: MSTORE
00000563: JUMP
00000564: JUMPDEST
00000565: PUSH1 0x01
00000567: PUSH1 0x01
00000569: PUSH1 0xa0
0000056b: SHL
0000056c: SUB
0000056d: DUP6
0000056e: AND
0000056f: PUSH1 0x40
00000571: DUP3
00000572: ADD
00000573: MSTORE
00000574: PUSH1 0x01
00000576: PUSH1 0x01
00000578: PUSH1 0xa0
0000057a: SHL
0000057b: SUB
0000057c: DUP4
0000057d: AND
0000057e: PUSH1 0x60
00000580: DUP3
00000581: ADD
00000582: MSTORE
00000583: PUSH2 0x058b
00000586: DUP8
00000587: PUSH2 0x1121
0000058a: JUMP
0000058b: JUMPDEST
0000058c: PUSH2 0x1803
0000058f: JUMP
00000590: JUMPDEST
00000591: AND
00000592: SWAP4
00000593: DUP5
00000594: EXTCODESIZE
00000595: ISZERO
00000596: PUSH2 0x01ad
00000599: JUMPI
0000059a: PUSH1 0x40
0000059c: MLOAD
0000059d: SWAP1
0000059e: PUSH4 0x064acaab
000005a3: PUSH1 0xe1
000005a5: SHL
000005a6: DUP3
000005a7: MSTORE
000005a8: DUP2
000005a9: DUP1
000005aa: PUSH2 0x05ba
000005ad: PUSH1 0x00
000005af: SWAP10
000005b0: DUP11
000005b1: SWAP5
000005b2: PUSH1 0x04
000005b4: DUP5
000005b5: ADD
000005b6: PUSH2 0x18b6
000005b9: JUMP
000005ba: JUMPDEST
000005bb: SUB
000005bc: DUP2
000005bd: DUP4
000005be: DUP10
000005bf: GAS
000005c0: CALL
000005c1: DUP1
000005c2: ISZERO
000005c3: PUSH2 0x0618
000005c6: JUMPI
000005c7: PUSH2 0x05ff
000005ca: JUMPI
000005cb: JUMPDEST
000005cc: POP
000005cd: AND
000005ce: SWAP1
000005cf: PUSH1 0x01
000005d1: PUSH1 0x01
000005d3: PUSH1 0xe0
000005d5: SHL
000005d6: SUB
000005d7: NOT
000005d8: AND
000005d9: PUSH32 0xed03d2572564284398470d3f266a693e29ddfff3eba45fc06c5e91013d321353
000005fa: DUP5
000005fb: DUP1
000005fc: LOG4
000005fd: DUP1
000005fe: RETURN
000005ff: JUMPDEST
00000600: DUP1
00000601: PUSH2 0x060c
00000604: PUSH2 0x0612
00000607: SWAP3
00000608: PUSH2 0x01c8
0000060b: JUMP
0000060c: JUMPDEST
0000060d: DUP1
0000060e: PUSH2 0x01a2
00000611: JUMP
00000612: JUMPDEST
00000613: CODESIZE
00000614: PUSH2 0x05cb
00000617: JUMP
00000618: JUMPDEST
00000619: PUSH2 0x154d
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH1 0x40
00000620: MLOAD
00000621: PUSH4 0x7046c88d
00000626: PUSH1 0xe0
00000628: SHL
00000629: DUP2
0000062a: MSTORE
0000062b: PUSH1 0x04
0000062d: SWAP1
0000062e: REVERT
0000062f: JUMPDEST
00000630: POP
00000631: ADDRESS
00000632: CALLER
00000633: EQ
00000634: ISZERO
00000635: PUSH2 0x052f
00000638: JUMP
00000639: JUMPDEST
0000063a: CALLVALUE
0000063b: PUSH2 0x01ad
0000063e: JUMPI
0000063f: PUSH1 0x20
00000641: PUSH2 0x0652
00000644: PUSH2 0x064c
00000647: CALLDATASIZE
00000648: PUSH2 0x040b
0000064b: JUMP
0000064c: JUMPDEST
0000064d: SWAP2
0000064e: PUSH2 0x1f8c
00000651: JUMP
00000652: JUMPDEST
00000653: PUSH1 0x40
00000655: MLOAD
00000656: SWAP1
00000657: DUP2
00000658: MSTORE
00000659: RETURN
0000065a: JUMPDEST
0000065b: SWAP3
0000065c: SWAP2
0000065d: SWAP3
0000065e: PUSH1 0x01
00000660: PUSH1 0x01
00000662: PUSH1 0x40
00000664: SHL
00000665: SUB
00000666: DUP3
00000667: GT
00000668: PUSH2 0x01db
0000066b: JUMPI
0000066c: PUSH1 0x40
0000066e: MLOAD
0000066f: SWAP2
00000670: PUSH2 0x0683
00000673: PUSH1 0x1f
00000675: DUP3
00000676: ADD
00000677: PUSH1 0x1f
00000679: NOT
0000067a: AND
0000067b: PUSH1 0x20
0000067d: ADD
0000067e: DUP5
0000067f: PUSH2 0x024c
00000682: JUMP
00000683: JUMPDEST
00000684: DUP3
00000685: SWAP5
00000686: DUP2
00000687: DUP5
00000688: MSTORE
00000689: DUP2
0000068a: DUP4
0000068b: ADD
0000068c: GT
0000068d: PUSH2 0x01ad
00000690: JUMPI
00000691: DUP3
00000692: DUP2
00000693: PUSH1 0x20
00000695: SWAP4
00000696: DUP5
00000697: PUSH1 0x00
00000699: SWAP7
0000069a: ADD
0000069b: CALLDATACOPY
0000069c: ADD
0000069d: ADD
0000069e: MSTORE
0000069f: JUMP
000006a0: JUMPDEST
000006a1: SWAP1
000006a2: DUP1
000006a3: PUSH1 0x1f
000006a5: DUP4
000006a6: ADD
000006a7: SLT
000006a8: ISZERO
000006a9: PUSH2 0x01ad
000006ac: JUMPI
000006ad: DUP2
000006ae: PUSH1 0x20
000006b0: PUSH2 0x06bb
000006b3: SWAP4
000006b4: CALLDATALOAD
000006b5: SWAP2
000006b6: ADD
000006b7: PUSH2 0x065a
000006ba: JUMP
000006bb: JUMPDEST
000006bc: SWAP1
000006bd: JUMP
000006be: JUMPDEST
000006bf: PUSH1 0x20
000006c1: DUP1
000006c2: PUSH1 0x03
000006c4: NOT
000006c5: CALLDATASIZE
000006c6: ADD
000006c7: SLT
000006c8: PUSH2 0x01ad
000006cb: JUMPI
000006cc: PUSH1 0x01
000006ce: PUSH1 0x01
000006d0: PUSH1 0x40
000006d2: SHL
000006d3: SUB
000006d4: PUSH1 0x04
000006d6: CALLDATALOAD
000006d7: DUP2
000006d8: DUP2
000006d9: GT
000006da: PUSH2 0x01ad
000006dd: JUMPI
000006de: CALLDATASIZE
000006df: PUSH1 0x23
000006e1: DUP3
000006e2: ADD
000006e3: SLT
000006e4: ISZERO
000006e5: PUSH2 0x01ad
000006e8: JUMPI
000006e9: DUP1
000006ea: PUSH1 0x04
000006ec: ADD
000006ed: CALLDATALOAD
000006ee: SWAP2
000006ef: DUP1
000006f0: DUP4
000006f1: GT
000006f2: PUSH2 0x01db
000006f5: JUMPI
000006f6: DUP3
000006f7: PUSH1 0x05
000006f9: SHL
000006fa: SWAP1
000006fb: PUSH1 0x40
000006fd: SWAP1
000006fe: DUP2
000006ff: MLOAD
00000700: SWAP5
00000701: PUSH2 0x070c
00000704: DUP8
00000705: DUP6
00000706: ADD
00000707: DUP8
00000708: PUSH2 0x024c
0000070b: JUMP
0000070c: JUMPDEST
0000070d: DUP6
0000070e: MSTORE
0000070f: DUP6
00000710: DUP6
00000711: ADD
00000712: SWAP2
00000713: PUSH1 0x24
00000715: DUP1
00000716: SWAP5
00000717: DUP7
00000718: ADD
00000719: ADD
0000071a: SWAP5
0000071b: CALLDATASIZE
0000071c: DUP7
0000071d: GT
0000071e: PUSH2 0x01ad
00000721: JUMPI
00000722: DUP5
00000723: DUP2
00000724: ADD
00000725: SWAP4
00000726: JUMPDEST
00000727: DUP7
00000728: DUP6
00000729: LT
0000072a: PUSH2 0x0736
0000072d: JUMPI
0000072e: PUSH2 0x001b
00000731: DUP9
00000732: PUSH2 0x121c
00000735: JUMP
00000736: JUMPDEST
00000737: DUP5
00000738: CALLDATALOAD
00000739: DUP5
0000073a: DUP2
0000073b: GT
0000073c: PUSH2 0x01ad
0000073f: JUMPI
00000740: DUP3
00000741: ADD
00000742: PUSH1 0x60
00000744: PUSH1 0x23
00000746: NOT
00000747: DUP3
00000748: CALLDATASIZE
00000749: SUB
0000074a: ADD
0000074b: SLT
0000074c: PUSH2 0x01ad
0000074f: JUMPI
00000750: DUP4
00000751: MLOAD
00000752: SWAP2
00000753: PUSH2 0x075b
00000756: DUP4
00000757: PUSH2 0x01e0
0000075a: JUMP
0000075b: JUMPDEST
0000075c: DUP8
0000075d: DUP3
0000075e: ADD
0000075f: CALLDATALOAD
00000760: PUSH2 0x0768
00000763: DUP2
00000764: PUSH2 0x0368
00000767: JUMP
00000768: JUMPDEST
00000769: DUP4
0000076a: MSTORE
0000076b: PUSH1 0x44
0000076d: DUP3
0000076e: ADD
0000076f: CALLDATALOAD
00000770: DUP12
00000771: DUP5
00000772: ADD
00000773: MSTORE
00000774: PUSH1 0x64
00000776: DUP3
00000777: ADD
00000778: CALLDATALOAD
00000779: SWAP3
0000077a: DUP7
0000077b: DUP5
0000077c: GT
0000077d: PUSH2 0x01ad
00000780: JUMPI
00000781: PUSH2 0x0792
00000784: DUP13
00000785: SWAP5
00000786: SWAP4
00000787: DUP11
00000788: DUP7
00000789: SWAP6
0000078a: CALLDATASIZE
0000078b: SWAP3
0000078c: ADD
0000078d: ADD
0000078e: PUSH2 0x06a0
00000791: JUMP
00000792: JUMPDEST
00000793: DUP7
00000794: DUP3
00000795: ADD
00000796: MSTORE
00000797: DUP2
00000798: MSTORE
00000799: ADD
0000079a: SWAP5
0000079b: ADD
0000079c: SWAP4
0000079d: PUSH2 0x0726
000007a0: JUMP
000007a1: JUMPDEST
000007a2: PUSH1 0x20
000007a4: CALLDATASIZE
000007a5: PUSH1 0x03
000007a7: NOT
000007a8: ADD
000007a9: SLT
000007aa: PUSH2 0x01ad
000007ad: JUMPI
000007ae: PUSH1 0x04
000007b0: CALLDATALOAD
000007b1: PUSH2 0x07b9
000007b4: DUP2
000007b5: PUSH2 0x0368
000007b8: JUMP
000007b9: JUMPDEST
000007ba: PUSH1 0x01
000007bc: PUSH1 0x01
000007be: PUSH1 0xa0
000007c0: SHL
000007c1: SUB
000007c2: SWAP1
000007c3: CALLER
000007c4: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
000007e5: DUP4
000007e6: AND
000007e7: EQ
000007e8: ISZERO
000007e9: DUP1
000007ea: PUSH2 0x083d
000007ed: JUMPI
000007ee: JUMPDEST
000007ef: PUSH2 0x061d
000007f2: JUMPI
000007f3: DUP1
000007f4: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00000815: SSTORE
00000816: AND
00000817: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
00000838: PUSH1 0x00
0000083a: DUP1
0000083b: LOG2
0000083c: STOP
0000083d: JUMPDEST
0000083e: POP
0000083f: ADDRESS
00000840: CALLER
00000841: EQ
00000842: ISZERO
00000843: PUSH2 0x07ee
00000846: JUMP
00000847: JUMPDEST
00000848: PUSH1 0x03
0000084a: NOT
0000084b: PUSH1 0x60
0000084d: CALLDATASIZE
0000084e: DUP3
0000084f: ADD
00000850: SLT
00000851: PUSH2 0x01ad
00000854: JUMPI
00000855: PUSH1 0x04
00000857: CALLDATALOAD
00000858: SWAP1
00000859: PUSH1 0x01
0000085b: PUSH1 0x01
0000085d: PUSH1 0x40
0000085f: SHL
00000860: SUB
00000861: DUP3
00000862: GT
00000863: PUSH2 0x01ad
00000866: JUMPI
00000867: PUSH2 0x0160
0000086a: SWAP1
0000086b: DUP3
0000086c: CALLDATASIZE
0000086d: SUB
0000086e: ADD
0000086f: SLT
00000870: PUSH2 0x01ad
00000873: JUMPI
00000874: PUSH2 0x0652
00000877: PUSH1 0x20
00000879: SWAP2
0000087a: PUSH1 0x44
0000087c: CALLDATALOAD
0000087d: SWAP1
0000087e: PUSH1 0x24
00000880: CALLDATALOAD
00000881: SWAP1
00000882: PUSH1 0x04
00000884: ADD
00000885: PUSH2 0x1559
00000888: JUMP
00000889: JUMPDEST
0000088a: CALLVALUE
0000088b: PUSH2 0x01ad
0000088e: JUMPI
0000088f: PUSH1 0x20
00000891: CALLDATASIZE
00000892: PUSH1 0x03
00000894: NOT
00000895: ADD
00000896: SLT
00000897: PUSH2 0x01ad
0000089a: JUMPI
0000089b: PUSH1 0x04
0000089d: CALLDATALOAD
0000089e: PUSH1 0x01
000008a0: PUSH1 0x01
000008a2: PUSH1 0xc0
000008a4: SHL
000008a5: SUB
000008a6: DUP2
000008a7: AND
000008a8: SWAP1
000008a9: DUP2
000008aa: SWAP1
000008ab: SUB
000008ac: PUSH2 0x01ad
000008af: JUMPI
000008b0: PUSH1 0x40
000008b2: MLOAD
000008b3: PUSH4 0x1aab3f0d
000008b8: PUSH1 0xe1
000008ba: SHL
000008bb: DUP2
000008bc: MSTORE
000008bd: ADDRESS
000008be: PUSH1 0x04
000008c0: DUP3
000008c1: ADD
000008c2: MSTORE
000008c3: PUSH1 0x24
000008c5: DUP2
000008c6: ADD
000008c7: SWAP2
000008c8: SWAP1
000008c9: SWAP2
000008ca: MSTORE
000008cb: PUSH1 0x20
000008cd: DUP2
000008ce: PUSH1 0x44
000008d0: DUP2
000008d1: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
000008f2: PUSH1 0x01
000008f4: PUSH1 0x01
000008f6: PUSH1 0xa0
000008f8: SHL
000008f9: SUB
000008fa: AND
000008fb: GAS
000008fc: STATICCALL
000008fd: DUP1
000008fe: ISZERO
000008ff: PUSH2 0x0618
00000902: JUMPI
00000903: PUSH2 0x032e
00000906: SWAP2
00000907: PUSH1 0x00
00000909: SWAP2
0000090a: PUSH2 0x091f
0000090d: JUMPI
0000090e: JUMPDEST
0000090f: POP
00000910: PUSH1 0x40
00000912: MLOAD
00000913: SWAP1
00000914: DUP2
00000915: MSTORE
00000916: SWAP1
00000917: DUP2
00000918: SWAP1
00000919: PUSH1 0x20
0000091b: DUP3
0000091c: ADD
0000091d: SWAP1
0000091e: JUMP
0000091f: JUMPDEST
00000920: PUSH2 0x0940
00000923: SWAP2
00000924: POP
00000925: PUSH1 0x20
00000927: RETURNDATASIZE
00000928: DUP2
00000929: GT
0000092a: PUSH2 0x0946
0000092d: JUMPI
0000092e: JUMPDEST
0000092f: PUSH2 0x0938
00000932: DUP2
00000933: DUP4
00000934: PUSH2 0x024c
00000937: JUMP
00000938: JUMPDEST
00000939: DUP2
0000093a: ADD
0000093b: SWAP1
0000093c: PUSH2 0x146e
0000093f: JUMP
00000940: JUMPDEST
00000941: CODESIZE
00000942: PUSH2 0x090e
00000945: JUMP
00000946: JUMPDEST
00000947: POP
00000948: RETURNDATASIZE
00000949: PUSH2 0x092e
0000094c: JUMP
0000094d: JUMPDEST
0000094e: CALLVALUE
0000094f: PUSH2 0x01ad
00000952: JUMPI
00000953: PUSH1 0x20
00000955: CALLDATASIZE
00000956: PUSH1 0x03
00000958: NOT
00000959: ADD
0000095a: SLT
0000095b: PUSH2 0x01ad
0000095e: JUMPI
0000095f: PUSH2 0x032e
00000962: PUSH2 0x0992
00000965: PUSH2 0x096c
00000968: PUSH2 0x046a
0000096b: JUMP
0000096c: JUMPDEST
0000096d: PUSH1 0x00
0000096f: PUSH1 0x60
00000971: PUSH1 0x40
00000973: MLOAD
00000974: PUSH2 0x097c
00000977: DUP2
00000978: PUSH2 0x01fb
0000097b: JUMP
0000097c: JUMPDEST
0000097d: DUP3
0000097e: DUP2
0000097f: MSTORE
00000980: DUP3
00000981: PUSH1 0x20
00000983: DUP3
00000984: ADD
00000985: MSTORE
00000986: DUP3
00000987: PUSH1 0x40
00000989: DUP3
0000098a: ADD
0000098b: MSTORE
0000098c: ADD
0000098d: MSTORE
0000098e: PUSH2 0x1121
00000991: JUMP
00000992: JUMPDEST
00000993: PUSH1 0x40
00000995: MLOAD
00000996: SWAP1
00000997: PUSH2 0x099f
0000099a: DUP3
0000099b: PUSH2 0x01fb
0000099e: JUMP
0000099f: JUMPDEST
000009a0: DUP1
000009a1: SLOAD
000009a2: PUSH6 0xffffffffffff
000009a9: DUP1
000009aa: DUP3
000009ab: AND
000009ac: DUP5
000009ad: MSTORE
000009ae: DUP2
000009af: PUSH1 0x30
000009b1: SHR
000009b2: AND
000009b3: PUSH1 0x20
000009b5: DUP5
000009b6: ADD
000009b7: MSTORE
000009b8: PUSH1 0x60
000009ba: SHR
000009bb: PUSH1 0x40
000009bd: DUP4
000009be: ADD
000009bf: MSTORE
000009c0: PUSH1 0x01
000009c2: DUP1
000009c3: DUP1
000009c4: PUSH1 0xa0
000009c6: SHL
000009c7: SUB
000009c8: SWAP2
000009c9: ADD
000009ca: SLOAD
000009cb: AND
000009cc: PUSH1 0x60
000009ce: DUP3
000009cf: ADD
000009d0: MSTORE
000009d1: PUSH1 0x40
000009d3: MLOAD
000009d4: SWAP2
000009d5: DUP3
000009d6: SWAP2
000009d7: DUP3
000009d8: SWAP2
000009d9: SWAP1
000009da: SWAP2
000009db: PUSH1 0x60
000009dd: PUSH1 0x80
000009df: DUP3
000009e0: ADD
000009e1: SWAP4
000009e2: PUSH6 0xffffffffffff
000009e9: DUP1
000009ea: DUP3
000009eb: MLOAD
000009ec: AND
000009ed: DUP5
000009ee: MSTORE
000009ef: PUSH1 0x20
000009f1: DUP3
000009f2: ADD
000009f3: MLOAD
000009f4: AND
000009f5: PUSH1 0x20
000009f7: DUP5
000009f8: ADD
000009f9: MSTORE
000009fa: DUP2
000009fb: PUSH1 0x01
000009fd: DUP1
000009fe: PUSH1 0xa0
00000a00: SHL
00000a01: SUB
00000a02: SWAP2
00000a03: DUP3
00000a04: PUSH1 0x40
00000a06: DUP3
00000a07: ADD
00000a08: MLOAD
00000a09: AND
00000a0a: PUSH1 0x40
00000a0c: DUP7
00000a0d: ADD
00000a0e: MSTORE
00000a0f: ADD
00000a10: MLOAD
00000a11: AND
00000a12: SWAP2
00000a13: ADD
00000a14: MSTORE
00000a15: JUMP
00000a16: JUMPDEST
00000a17: PUSH1 0x80
00000a19: CALLDATASIZE
00000a1a: PUSH1 0x03
00000a1c: NOT
00000a1d: ADD
00000a1e: SLT
00000a1f: PUSH2 0x01ad
00000a22: JUMPI
00000a23: PUSH1 0x04
00000a25: CALLDATALOAD
00000a26: PUSH2 0x0a2e
00000a29: DUP2
00000a2a: PUSH2 0x0368
00000a2d: JUMP
00000a2e: JUMPDEST
00000a2f: PUSH1 0x44
00000a31: CALLDATALOAD
00000a32: PUSH1 0x01
00000a34: PUSH1 0x01
00000a36: PUSH1 0x40
00000a38: SHL
00000a39: SUB
00000a3a: DUP2
00000a3b: GT
00000a3c: PUSH2 0x01ad
00000a3f: JUMPI
00000a40: PUSH2 0x0a4d
00000a43: SWAP1
00000a44: CALLDATASIZE
00000a45: SWAP1
00000a46: PUSH1 0x04
00000a48: ADD
00000a49: PUSH2 0x06a0
00000a4c: JUMP
00000a4d: JUMPDEST
00000a4e: SWAP1
00000a4f: PUSH1 0x64
00000a51: CALLDATALOAD
00000a52: PUSH1 0x02
00000a54: DUP2
00000a55: LT
00000a56: ISZERO
00000a57: PUSH2 0x01ad
00000a5a: JUMPI
00000a5b: CALLER
00000a5c: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000a7d: PUSH1 0x01
00000a7f: PUSH1 0x01
00000a81: PUSH1 0xa0
00000a83: SHL
00000a84: SUB
00000a85: AND
00000a86: EQ
00000a87: ISZERO
00000a88: DUP1
00000a89: PUSH2 0x0af0
00000a8c: JUMPI
00000a8d: JUMPDEST
00000a8e: DUP1
00000a8f: PUSH2 0x0adb
00000a92: JUMPI
00000a93: JUMPDEST
00000a94: PUSH2 0x061d
00000a97: JUMPI
00000a98: PUSH2 0x0aa0
00000a9b: DUP2
00000a9c: PUSH2 0x11d2
00000a9f: JUMP
00000aa0: JUMPDEST
00000aa1: PUSH2 0x0ac9
00000aa4: JUMPI
00000aa5: PUSH1 0x00
00000aa7: DUP3
00000aa8: DUP2
00000aa9: SWAP4
00000aaa: SWAP3
00000aab: PUSH1 0x20
00000aad: DUP4
00000aae: SWAP5
00000aaf: MLOAD
00000ab0: SWAP3
00000ab1: ADD
00000ab2: SWAP1
00000ab3: PUSH1 0x24
00000ab5: CALLDATALOAD
00000ab6: SWAP1
00000ab7: GAS
00000ab8: CALL
00000ab9: RETURNDATASIZE
00000aba: DUP3
00000abb: DUP1
00000abc: RETURNDATACOPY
00000abd: ISZERO
00000abe: PUSH2 0x0ac5
00000ac1: JUMPI
00000ac2: RETURNDATASIZE
00000ac3: SWAP1
00000ac4: RETURN
00000ac5: JUMPDEST
00000ac6: RETURNDATASIZE
00000ac7: SWAP1
00000ac8: REVERT
00000ac9: JUMPDEST
00000aca: PUSH1 0x40
00000acc: MLOAD
00000acd: PUSH4 0x67ce7759
00000ad2: PUSH1 0xe0
00000ad4: SHL
00000ad5: DUP2
00000ad6: MSTORE
00000ad7: PUSH1 0x04
00000ad9: SWAP1
00000ada: REVERT
00000adb: JUMPDEST
00000adc: POP
00000add: PUSH2 0x0aeb
00000ae0: PUSH2 0x0ae7
00000ae3: PUSH2 0x1d8c
00000ae6: JUMP
00000ae7: JUMPDEST
00000ae8: ISZERO
00000ae9: SWAP1
00000aea: JUMP
00000aeb: JUMPDEST
00000aec: PUSH2 0x0a93
00000aef: JUMP
00000af0: JUMPDEST
00000af1: POP
00000af2: ADDRESS
00000af3: CALLER
00000af4: EQ
00000af5: ISZERO
00000af6: PUSH2 0x0a8d
00000af9: JUMP
00000afa: JUMPDEST
00000afb: PUSH1 0x40
00000afd: MLOAD
00000afe: SWAP1
00000aff: PUSH2 0x0b07
00000b02: DUP3
00000b03: PUSH2 0x0216
00000b06: JUMP
00000b07: JUMPDEST
00000b08: PUSH1 0x05
00000b0a: DUP3
00000b0b: MSTORE
00000b0c: PUSH5 0x302e322e33
00000b12: PUSH1 0xd8
00000b14: SHL
00000b15: PUSH1 0x20
00000b17: DUP4
00000b18: ADD
00000b19: MSTORE
00000b1a: JUMP
00000b1b: JUMPDEST
00000b1c: CALLVALUE
00000b1d: PUSH2 0x01ad
00000b20: JUMPI
00000b21: PUSH1 0x00
00000b23: CALLDATASIZE
00000b24: PUSH1 0x03
00000b26: NOT
00000b27: ADD
00000b28: SLT
00000b29: PUSH2 0x01ad
00000b2c: JUMPI
00000b2d: PUSH2 0x032e
00000b30: PUSH2 0x031a
00000b33: PUSH2 0x0afa
00000b36: JUMP
00000b37: JUMPDEST
00000b38: SWAP1
00000b39: PUSH1 0x40
00000b3b: PUSH1 0x03
00000b3d: NOT
00000b3e: DUP4
00000b3f: ADD
00000b40: SLT
00000b41: PUSH2 0x01ad
00000b44: JUMPI
00000b45: PUSH1 0x04
00000b47: CALLDATALOAD
00000b48: PUSH2 0x0b50
00000b4b: DUP2
00000b4c: PUSH2 0x0368
00000b4f: JUMP
00000b50: JUMPDEST
00000b51: SWAP2
00000b52: PUSH1 0x24
00000b54: CALLDATALOAD
00000b55: SWAP1
00000b56: PUSH1 0x01
00000b58: PUSH1 0x01
00000b5a: PUSH1 0x40
00000b5c: SHL
00000b5d: SUB
00000b5e: DUP3
00000b5f: GT
00000b60: PUSH2 0x01ad
00000b63: JUMPI
00000b64: PUSH2 0x043a
00000b67: SWAP2
00000b68: PUSH1 0x04
00000b6a: ADD
00000b6b: PUSH2 0x0384
00000b6e: JUMP
00000b6f: JUMPDEST
00000b70: PUSH2 0x0b78
00000b73: CALLDATASIZE
00000b74: PUSH2 0x0b37
00000b77: JUMP
00000b78: JUMPDEST
00000b79: SWAP1
00000b7a: SWAP2
00000b7b: PUSH1 0x01
00000b7d: PUSH1 0x01
00000b7f: PUSH1 0xa0
00000b81: SHL
00000b82: SUB
00000b83: CALLER
00000b84: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000ba5: DUP3
00000ba6: AND
00000ba7: EQ
00000ba8: ISZERO
00000ba9: DUP1
00000baa: PUSH2 0x0c4b
00000bad: JUMPI
00000bae: JUMPDEST
00000baf: PUSH2 0x061d
00000bb2: JUMPI
00000bb3: DUP1
00000bb4: PUSH1 0x00
00000bb6: DUP1
00000bb7: MLOAD
00000bb8: PUSH1 0x20
00000bba: PUSH2 0x2171
00000bbd: DUP4
00000bbe: CODECOPY
00000bbf: DUP2
00000bc0: MLOAD
00000bc1: SWAP2
00000bc2: MSTORE
00000bc3: SLOAD
00000bc4: PUSH1 0x50
00000bc6: SHR
00000bc7: AND
00000bc8: SWAP2
00000bc9: PUSH2 0x0bd1
00000bcc: DUP2
00000bcd: PUSH2 0x2078
00000bd0: JUMP
00000bd1: JUMPDEST
00000bd2: AND
00000bd3: SWAP3
00000bd4: DUP4
00000bd5: PUSH1 0x40
00000bd7: MLOAD
00000bd8: SWAP4
00000bd9: PUSH1 0x00
00000bdb: SWAP6
00000bdc: DUP7
00000bdd: SWAP5
00000bde: PUSH32 0xa35f5cdc5fbabb614b4cd5064ce5543f43dc8fab0e4da41255230eb8aba2531c
00000bff: DUP7
00000c00: DUP1
00000c01: LOG3
00000c02: DUP2
00000c03: EXTCODESIZE
00000c04: ISZERO
00000c05: PUSH2 0x0c47
00000c08: JUMPI
00000c09: DUP4
00000c0a: DUP6
00000c0b: PUSH2 0x0c25
00000c0e: DUP2
00000c0f: SWAP6
00000c10: SWAP4
00000c11: DUP3
00000c12: SWAP5
00000c13: PUSH4 0x064acaab
00000c18: PUSH1 0xe1
00000c1a: SHL
00000c1b: DUP5
00000c1c: MSTORE
00000c1d: PUSH1 0x04
00000c1f: DUP5
00000c20: ADD
00000c21: PUSH2 0x18b6
00000c24: JUMP
00000c25: JUMPDEST
00000c26: SUB
00000c27: SWAP3
00000c28: GAS
00000c29: CALL
00000c2a: DUP1
00000c2b: ISZERO
00000c2c: PUSH2 0x0618
00000c2f: JUMPI
00000c30: PUSH2 0x0c37
00000c33: JUMPI
00000c34: POP
00000c35: DUP1
00000c36: RETURN
00000c37: JUMPDEST
00000c38: DUP1
00000c39: PUSH2 0x060c
00000c3c: PUSH2 0x0c44
00000c3f: SWAP3
00000c40: PUSH2 0x01c8
00000c43: JUMP
00000c44: JUMPDEST
00000c45: DUP1
00000c46: RETURN
00000c47: JUMPDEST
00000c48: DUP4
00000c49: DUP1
00000c4a: REVERT
00000c4b: JUMPDEST
00000c4c: POP
00000c4d: ADDRESS
00000c4e: CALLER
00000c4f: EQ
00000c50: ISZERO
00000c51: PUSH2 0x0bae
00000c54: JUMP
00000c55: JUMPDEST
00000c56: CALLVALUE
00000c57: PUSH2 0x01ad
00000c5a: JUMPI
00000c5b: PUSH1 0x00
00000c5d: CALLDATASIZE
00000c5e: PUSH1 0x03
00000c60: NOT
00000c61: ADD
00000c62: SLT
00000c63: PUSH2 0x01ad
00000c66: JUMPI
00000c67: PUSH1 0x20
00000c69: PUSH1 0x00
00000c6b: DUP1
00000c6c: MLOAD
00000c6d: PUSH1 0x20
00000c6f: PUSH2 0x2171
00000c72: DUP4
00000c73: CODECOPY
00000c74: DUP2
00000c75: MLOAD
00000c76: SWAP2
00000c77: MSTORE
00000c78: SLOAD
00000c79: PUSH1 0xe0
00000c7b: SHL
00000c7c: PUSH1 0x40
00000c7e: MLOAD
00000c7f: SWAP1
00000c80: PUSH4 0xffffffff
00000c85: PUSH1 0xe0
00000c87: SHL
00000c88: AND
00000c89: DUP2
00000c8a: MSTORE
00000c8b: RETURN
00000c8c: JUMPDEST
00000c8d: CALLVALUE
00000c8e: PUSH2 0x01ad
00000c91: JUMPI
00000c92: PUSH1 0x00
00000c94: CALLDATASIZE
00000c95: PUSH1 0x03
00000c97: NOT
00000c98: ADD
00000c99: SLT
00000c9a: PUSH2 0x01ad
00000c9d: JUMPI
00000c9e: PUSH2 0x0ce2
00000ca1: PUSH2 0x0ca8
00000ca4: PUSH2 0x029c
00000ca7: JUMP
00000ca8: JUMPDEST
00000ca9: PUSH2 0x0cb0
00000cac: PUSH2 0x0afa
00000caf: JUMP
00000cb0: JUMPDEST
00000cb1: SWAP1
00000cb2: PUSH1 0x40
00000cb4: MLOAD
00000cb5: SWAP3
00000cb6: DUP4
00000cb7: SWAP3
00000cb8: PUSH1 0x0f
00000cba: PUSH1 0xf8
00000cbc: SHL
00000cbd: DUP5
00000cbe: MSTORE
00000cbf: PUSH2 0x0cd4
00000cc2: PUSH1 0x20
00000cc4: SWAP4
00000cc5: PUSH1 0xe0
00000cc7: DUP6
00000cc8: DUP8
00000cc9: ADD
00000cca: MSTORE
00000ccb: PUSH1 0xe0
00000ccd: DUP7
00000cce: ADD
00000ccf: SWAP1
00000cd0: PUSH2 0x02be
00000cd3: JUMP
00000cd4: JUMPDEST
00000cd5: SWAP1
00000cd6: DUP5
00000cd7: DUP3
00000cd8: SUB
00000cd9: PUSH1 0x40
00000cdb: DUP7
00000cdc: ADD
00000cdd: MSTORE
00000cde: PUSH2 0x02be
00000ce1: JUMP
00000ce2: JUMPDEST
00000ce3: SWAP1
00000ce4: CHAINID
00000ce5: PUSH1 0x60
00000ce7: DUP5
00000ce8: ADD
00000ce9: MSTORE
00000cea: ADDRESS
00000ceb: PUSH1 0x80
00000ced: DUP5
00000cee: ADD
00000cef: MSTORE
00000cf0: PUSH1 0x00
00000cf2: PUSH1 0xa0
00000cf4: DUP5
00000cf5: ADD
00000cf6: MSTORE
00000cf7: DUP3
00000cf8: DUP3
00000cf9: SUB
00000cfa: PUSH1 0xc0
00000cfc: DUP5
00000cfd: ADD
00000cfe: MSTORE
00000cff: DUP1
00000d00: PUSH1 0x60
00000d02: MLOAD
00000d03: SWAP3
00000d04: DUP4
00000d05: DUP2
00000d06: MSTORE
00000d07: ADD
00000d08: SWAP2
00000d09: PUSH1 0x80
00000d0b: SWAP2
00000d0c: PUSH1 0x00
00000d0e: JUMPDEST
00000d0f: DUP3
00000d10: DUP2
00000d11: LT
00000d12: PUSH2 0x0d1d
00000d15: JUMPI
00000d16: POP
00000d17: POP
00000d18: POP
00000d19: POP
00000d1a: SUB
00000d1b: SWAP1
00000d1c: RETURN
00000d1d: JUMPDEST
00000d1e: DUP4
00000d1f: MLOAD
00000d20: DUP6
00000d21: MSTORE
00000d22: DUP7
00000d23: SWAP6
00000d24: POP
00000d25: SWAP4
00000d26: DUP2
00000d27: ADD
00000d28: SWAP4
00000d29: SWAP3
00000d2a: DUP2
00000d2b: ADD
00000d2c: SWAP3
00000d2d: PUSH1 0x01
00000d2f: ADD
00000d30: PUSH2 0x0d0e
00000d33: JUMP
00000d34: JUMPDEST
00000d35: CALLVALUE
00000d36: PUSH2 0x01ad
00000d39: JUMPI
00000d3a: PUSH1 0x00
00000d3c: CALLDATASIZE
00000d3d: PUSH1 0x03
00000d3f: NOT
00000d40: ADD
00000d41: SLT
00000d42: PUSH2 0x01ad
00000d45: JUMPI
00000d46: PUSH1 0x20
00000d48: PUSH1 0x00
00000d4a: DUP1
00000d4b: MLOAD
00000d4c: PUSH1 0x20
00000d4e: PUSH2 0x2171
00000d51: DUP4
00000d52: CODECOPY
00000d53: DUP2
00000d54: MLOAD
00000d55: SWAP2
00000d56: MSTORE
00000d57: SLOAD
00000d58: PUSH6 0xffffffffffff
00000d5f: PUSH1 0x40
00000d61: MLOAD
00000d62: SWAP2
00000d63: DUP4
00000d64: SHR
00000d65: AND
00000d66: DUP2
00000d67: MSTORE
00000d68: RETURN
00000d69: JUMPDEST
00000d6a: CALLVALUE
00000d6b: PUSH2 0x01ad
00000d6e: JUMPI
00000d6f: PUSH1 0x00
00000d71: CALLDATASIZE
00000d72: PUSH1 0x03
00000d74: NOT
00000d75: ADD
00000d76: SLT
00000d77: PUSH2 0x01ad
00000d7a: JUMPI
00000d7b: PUSH1 0x40
00000d7d: MLOAD
00000d7e: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000d9f: PUSH1 0x01
00000da1: PUSH1 0x01
00000da3: PUSH1 0xa0
00000da5: SHL
00000da6: SUB
00000da7: AND
00000da8: DUP2
00000da9: MSTORE
00000daa: PUSH1 0x20
00000dac: SWAP1
00000dad: RETURN
00000dae: JUMPDEST
00000daf: PUSH1 0x40
00000db1: CALLDATASIZE
00000db2: PUSH1 0x03
00000db4: NOT
00000db5: ADD
00000db6: SLT
00000db7: PUSH2 0x01ad
00000dba: JUMPI
00000dbb: PUSH1 0x04
00000dbd: CALLDATALOAD
00000dbe: PUSH2 0x0dc6
00000dc1: DUP2
00000dc2: PUSH2 0x0368
00000dc5: JUMP
00000dc6: JUMPDEST
00000dc7: PUSH1 0x24
00000dc9: CALLDATALOAD
00000dca: PUSH1 0x01
00000dcc: PUSH1 0x01
00000dce: PUSH1 0x40
00000dd0: SHL
00000dd1: SUB
00000dd2: DUP2
00000dd3: GT
00000dd4: PUSH2 0x01ad
00000dd7: JUMPI
00000dd8: PUSH2 0x0de5
00000ddb: SWAP1
00000ddc: CALLDATASIZE
00000ddd: SWAP1
00000dde: PUSH1 0x04
00000de0: ADD
00000de1: PUSH2 0x06a0
00000de4: JUMP
00000de5: JUMPDEST
00000de6: SWAP1
00000de7: CALLER
00000de8: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000e09: PUSH1 0x01
00000e0b: PUSH1 0x01
00000e0d: PUSH1 0xa0
00000e0f: SHL
00000e10: SUB
00000e11: AND
00000e12: EQ
00000e13: ISZERO
00000e14: DUP1
00000e15: PUSH2 0x0e51
00000e18: JUMPI
00000e19: JUMPDEST
00000e1a: DUP1
00000e1b: PUSH2 0x0e40
00000e1e: JUMPI
00000e1f: JUMPDEST
00000e20: PUSH2 0x061d
00000e23: JUMPI
00000e24: PUSH1 0x00
00000e26: DUP3
00000e27: DUP2
00000e28: SWAP4
00000e29: SWAP3
00000e2a: PUSH1 0x20
00000e2c: DUP4
00000e2d: SWAP5
00000e2e: MLOAD
00000e2f: SWAP3
00000e30: ADD
00000e31: SWAP1
00000e32: GAS
00000e33: DELEGATECALL
00000e34: RETURNDATASIZE
00000e35: DUP3
00000e36: DUP1
00000e37: RETURNDATACOPY
00000e38: ISZERO
00000e39: PUSH2 0x0ac5
00000e3c: JUMPI
00000e3d: RETURNDATASIZE
00000e3e: SWAP1
00000e3f: RETURN
00000e40: JUMPDEST
00000e41: POP
00000e42: PUSH2 0x0e4c
00000e45: PUSH2 0x0ae7
00000e48: PUSH2 0x1d8c
00000e4b: JUMP
00000e4c: JUMPDEST
00000e4d: PUSH2 0x0e1f
00000e50: JUMP
00000e51: JUMPDEST
00000e52: POP
00000e53: ADDRESS
00000e54: CALLER
00000e55: EQ
00000e56: ISZERO
00000e57: PUSH2 0x0e19
00000e5a: JUMP
00000e5b: JUMPDEST
00000e5c: SWAP2
00000e5d: DUP2
00000e5e: PUSH1 0x1f
00000e60: DUP5
00000e61: ADD
00000e62: SLT
00000e63: ISZERO
00000e64: PUSH2 0x01ad
00000e67: JUMPI
00000e68: DUP3
00000e69: CALLDATALOAD
00000e6a: SWAP2
00000e6b: PUSH1 0x01
00000e6d: PUSH1 0x01
00000e6f: PUSH1 0x40
00000e71: SHL
00000e72: SUB
00000e73: DUP4
00000e74: GT
00000e75: PUSH2 0x01ad
00000e78: JUMPI
00000e79: PUSH1 0x20
00000e7b: DUP1
00000e7c: DUP6
00000e7d: ADD
00000e7e: SWAP5
00000e7f: DUP5
00000e80: PUSH1 0x05
00000e82: SHL
00000e83: ADD
00000e84: ADD
00000e85: GT
00000e86: PUSH2 0x01ad
00000e89: JUMPI
00000e8a: JUMP
00000e8b: JUMPDEST
00000e8c: CALLVALUE
00000e8d: PUSH2 0x01ad
00000e90: JUMPI
00000e91: PUSH1 0xa0
00000e93: CALLDATASIZE
00000e94: PUSH1 0x03
00000e96: NOT
00000e97: ADD
00000e98: SLT
00000e99: PUSH2 0x01ad
00000e9c: JUMPI
00000e9d: PUSH2 0x0ea7
00000ea0: PUSH1 0x04
00000ea2: CALLDATALOAD
00000ea3: PUSH2 0x0368
00000ea6: JUMP
00000ea7: JUMPDEST
00000ea8: PUSH2 0x0eb2
00000eab: PUSH1 0x24
00000ead: CALLDATALOAD
00000eae: PUSH2 0x0368
00000eb1: JUMP
00000eb2: JUMPDEST
00000eb3: PUSH1 0x01
00000eb5: PUSH1 0x01
00000eb7: PUSH1 0x40
00000eb9: SHL
00000eba: SUB
00000ebb: PUSH1 0x44
00000ebd: CALLDATALOAD
00000ebe: DUP2
00000ebf: DUP2
00000ec0: GT
00000ec1: PUSH2 0x01ad
00000ec4: JUMPI
00000ec5: PUSH2 0x0ed2
00000ec8: SWAP1
00000ec9: CALLDATASIZE
00000eca: SWAP1
00000ecb: PUSH1 0x04
00000ecd: ADD
00000ece: PUSH2 0x0e5b
00000ed1: JUMP
00000ed2: JUMPDEST
00000ed3: POP
00000ed4: POP
00000ed5: PUSH1 0x64
00000ed7: CALLDATALOAD
00000ed8: DUP2
00000ed9: DUP2
00000eda: GT
00000edb: PUSH2 0x01ad
00000ede: JUMPI
00000edf: PUSH2 0x0eec
00000ee2: SWAP1
00000ee3: CALLDATASIZE
00000ee4: SWAP1
00000ee5: PUSH1 0x04
00000ee7: ADD
00000ee8: PUSH2 0x0e5b
00000eeb: JUMP
00000eec: JUMPDEST
00000eed: POP
00000eee: POP
00000eef: PUSH1 0x84
00000ef1: CALLDATALOAD
00000ef2: SWAP1
00000ef3: DUP2
00000ef4: GT
00000ef5: PUSH2 0x01ad
00000ef8: JUMPI
00000ef9: PUSH2 0x0f06
00000efc: SWAP1
00000efd: CALLDATASIZE
00000efe: SWAP1
00000eff: PUSH1 0x04
00000f01: ADD
00000f02: PUSH2 0x0384
00000f05: JUMP
00000f06: JUMPDEST
00000f07: POP
00000f08: POP
00000f09: PUSH1 0x40
00000f0b: MLOAD
00000f0c: PUSH4 0xbc197c81
00000f11: PUSH1 0xe0
00000f13: SHL
00000f14: DUP2
00000f15: MSTORE
00000f16: PUSH1 0x20
00000f18: SWAP1
00000f19: RETURN
00000f1a: JUMPDEST
00000f1b: CALLVALUE
00000f1c: PUSH2 0x01ad
00000f1f: JUMPI
00000f20: PUSH1 0x00
00000f22: CALLDATASIZE
00000f23: PUSH1 0x03
00000f25: NOT
00000f26: ADD
00000f27: SLT
00000f28: PUSH2 0x01ad
00000f2b: JUMPI
00000f2c: PUSH1 0x40
00000f2e: MLOAD
00000f2f: PUSH4 0x1aab3f0d
00000f34: PUSH1 0xe1
00000f36: SHL
00000f37: DUP2
00000f38: MSTORE
00000f39: ADDRESS
00000f3a: PUSH1 0x04
00000f3c: DUP3
00000f3d: ADD
00000f3e: MSTORE
00000f3f: PUSH1 0x00
00000f41: PUSH1 0x24
00000f43: DUP3
00000f44: ADD
00000f45: MSTORE
00000f46: PUSH1 0x20
00000f48: DUP2
00000f49: PUSH1 0x44
00000f4b: DUP2
00000f4c: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00000f6d: PUSH1 0x01
00000f6f: PUSH1 0x01
00000f71: PUSH1 0xa0
00000f73: SHL
00000f74: SUB
00000f75: AND
00000f76: GAS
00000f77: STATICCALL
00000f78: DUP1
00000f79: ISZERO
00000f7a: PUSH2 0x0618
00000f7d: JUMPI
00000f7e: PUSH2 0x032e
00000f81: SWAP2
00000f82: PUSH1 0x00
00000f84: SWAP2
00000f85: PUSH2 0x091f
00000f88: JUMPI
00000f89: POP
00000f8a: PUSH1 0x40
00000f8c: MLOAD
00000f8d: SWAP1
00000f8e: DUP2
00000f8f: MSTORE
00000f90: SWAP1
00000f91: DUP2
00000f92: SWAP1
00000f93: PUSH1 0x20
00000f95: DUP3
00000f96: ADD
00000f97: SWAP1
00000f98: JUMP
00000f99: JUMPDEST
00000f9a: PUSH2 0x0fa2
00000f9d: CALLDATASIZE
00000f9e: PUSH2 0x0b37
00000fa1: JUMP
00000fa2: JUMPDEST
00000fa3: PUSH1 0x00
00000fa5: DUP1
00000fa6: MLOAD
00000fa7: PUSH1 0x20
00000fa9: PUSH2 0x2171
00000fac: DUP4
00000fad: CODECOPY
00000fae: DUP2
00000faf: MLOAD
00000fb0: SWAP2
00000fb1: MSTORE
00000fb2: SLOAD
00000fb3: SWAP2
00000fb4: SWAP3
00000fb5: SWAP1
00000fb6: SWAP2
00000fb7: PUSH1 0x01
00000fb9: PUSH1 0x01
00000fbb: PUSH1 0xa0
00000fbd: SHL
00000fbe: SUB
00000fbf: SWAP2
00000fc0: SWAP1
00000fc1: PUSH1 0x50
00000fc3: SHR
00000fc4: DUP3
00000fc5: AND
00000fc6: PUSH2 0x1024
00000fc9: JUMPI
00000fca: PUSH2 0x0fd2
00000fcd: DUP2
00000fce: PUSH2 0x2078
00000fd1: JUMP
00000fd2: JUMPDEST
00000fd3: AND
00000fd4: SWAP2
00000fd5: DUP3
00000fd6: EXTCODESIZE
00000fd7: ISZERO
00000fd8: PUSH2 0x01ad
00000fdb: JUMPI
00000fdc: PUSH2 0x1007
00000fdf: SWAP3
00000fe0: PUSH1 0x00
00000fe2: SWAP3
00000fe3: DUP4
00000fe4: PUSH1 0x40
00000fe6: MLOAD
00000fe7: DUP1
00000fe8: SWAP7
00000fe9: DUP2
00000fea: SWAP6
00000feb: DUP3
00000fec: SWAP5
00000fed: PUSH4 0x064acaab
00000ff2: PUSH1 0xe1
00000ff4: SHL
00000ff5: DUP5
00000ff6: MSTORE
00000ff7: PUSH1 0x20
00000ff9: PUSH1 0x04
00000ffb: DUP6
00000ffc: ADD
00000ffd: MSTORE
00000ffe: PUSH1 0x24
00001000: DUP5
00001001: ADD
00001002: SWAP2
00001003: PUSH2 0x1895
00001006: JUMP
00001007: JUMPDEST
00001008: SUB
00001009: SWAP3
0000100a: GAS
0000100b: CALL
0000100c: DUP1
0000100d: ISZERO
0000100e: PUSH2 0x0618
00001011: JUMPI
00001012: PUSH2 0x1017
00001015: JUMPI
00001016: STOP
00001017: JUMPDEST
00001018: DUP1
00001019: PUSH2 0x060c
0000101c: PUSH2 0x001b
0000101f: SWAP3
00001020: PUSH2 0x01c8
00001023: JUMP
00001024: JUMPDEST
00001025: PUSH1 0x40
00001027: MLOAD
00001028: PUSH3 0xdc149f
0000102c: PUSH1 0xe4
0000102e: SHL
0000102f: DUP2
00001030: MSTORE
00001031: PUSH1 0x04
00001033: SWAP1
00001034: REVERT
00001035: JUMPDEST
00001036: PUSH1 0x20
00001038: CALLDATASIZE
00001039: PUSH1 0x03
0000103b: NOT
0000103c: ADD
0000103d: SLT
0000103e: PUSH2 0x01ad
00001041: JUMPI
00001042: PUSH2 0x1049
00001045: PUSH2 0x046a
00001048: JUMP
00001049: JUMPDEST
0000104a: CALLER
0000104b: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
0000106c: PUSH1 0x01
0000106e: PUSH1 0x01
00001070: PUSH1 0xa0
00001072: SHL
00001073: SUB
00001074: AND
00001075: EQ
00001076: ISZERO
00001077: DUP1
00001078: PUSH2 0x10bd
0000107b: JUMPI
0000107c: JUMPDEST
0000107d: PUSH2 0x061d
00001080: JUMPI
00001081: PUSH1 0x00
00001083: DUP1
00001084: MLOAD
00001085: PUSH1 0x20
00001087: PUSH2 0x2171
0000108a: DUP4
0000108b: CODECOPY
0000108c: DUP2
0000108d: MLOAD
0000108e: SWAP2
0000108f: MSTORE
00001090: SWAP1
00001091: DUP2
00001092: SLOAD
00001093: PUSH10 0xffffffffffff00000000
0000109e: TIMESTAMP
0000109f: PUSH1 0x20
000010a1: SHL
000010a2: AND
000010a3: SWAP2
000010a4: PUSH1 0xe0
000010a6: SHR
000010a7: SWAP1
000010a8: PUSH10 0xffffffffffffffffffff
000010b3: NOT
000010b4: AND
000010b5: OR
000010b6: OR
000010b7: SWAP1
000010b8: SSTORE
000010b9: PUSH1 0x00
000010bb: DUP1
000010bc: RETURN
000010bd: JUMPDEST
000010be: POP
000010bf: ADDRESS
000010c0: CALLER
000010c1: EQ
000010c2: ISZERO
000010c3: PUSH2 0x107c
000010c6: JUMP
000010c7: JUMPDEST
000010c8: CALLVALUE
000010c9: PUSH2 0x01ad
000010cc: JUMPI
000010cd: PUSH1 0xa0
000010cf: CALLDATASIZE
000010d0: PUSH1 0x03
000010d2: NOT
000010d3: ADD
000010d4: SLT
000010d5: PUSH2 0x01ad
000010d8: JUMPI
000010d9: PUSH2 0x10e3
000010dc: PUSH1 0x04
000010de: CALLDATALOAD
000010df: PUSH2 0x0368
000010e2: JUMP
000010e3: JUMPDEST
000010e4: PUSH2 0x10ee
000010e7: PUSH1 0x24
000010e9: CALLDATALOAD
000010ea: PUSH2 0x0368
000010ed: JUMP
000010ee: JUMPDEST
000010ef: PUSH1 0x84
000010f1: CALLDATALOAD
000010f2: PUSH1 0x01
000010f4: PUSH1 0x01
000010f6: PUSH1 0x40
000010f8: SHL
000010f9: SUB
000010fa: DUP2
000010fb: GT
000010fc: PUSH2 0x01ad
000010ff: JUMPI
00001100: PUSH2 0x110d
00001103: SWAP1
00001104: CALLDATASIZE
00001105: SWAP1
00001106: PUSH1 0x04
00001108: ADD
00001109: PUSH2 0x0384
0000110c: JUMP
0000110d: JUMPDEST
0000110e: POP
0000110f: POP
00001110: PUSH1 0x40
00001112: MLOAD
00001113: PUSH4 0xf23a6e61
00001118: PUSH1 0xe0
0000111a: SHL
0000111b: DUP2
0000111c: MSTORE
0000111d: PUSH1 0x20
0000111f: SWAP1
00001120: RETURN
00001121: JUMPDEST
00001122: PUSH4 0xffffffff
00001127: PUSH1 0xe0
00001129: SHL
0000112a: AND
0000112b: PUSH1 0x00
0000112d: MSTORE
0000112e: PUSH32 0x439ffe7df606b78489639bc0b827913bd09e1246fa6802968a5b3694c53e0dda
0000114f: PUSH1 0x20
00001151: MSTORE
00001152: PUSH1 0x40
00001154: PUSH1 0x00
00001156: KECCAK256
00001157: SWAP1
00001158: JUMP
00001159: JUMPDEST
0000115a: PUSH1 0x00
0000115c: PUSH2 0x116f
0000115f: DUP2
00001160: CALLDATALOAD
00001161: PUSH1 0x01
00001163: PUSH1 0x01
00001165: PUSH1 0xe0
00001167: SHL
00001168: SUB
00001169: NOT
0000116a: AND
0000116b: PUSH2 0x1121
0000116e: JUMP
0000116f: JUMPDEST
00001170: SLOAD
00001171: PUSH1 0x60
00001173: SHR
00001174: CALLER
00001175: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00001196: PUSH1 0x01
00001198: PUSH1 0x01
0000119a: PUSH1 0xa0
0000119c: SHL
0000119d: SUB
0000119e: AND
0000119f: EQ
000011a0: ISZERO
000011a1: DUP1
000011a2: PUSH2 0x11c3
000011a5: JUMPI
000011a6: JUMPDEST
000011a7: PUSH2 0x061d
000011aa: JUMPI
000011ab: DUP2
000011ac: DUP1
000011ad: SWAP2
000011ae: CALLDATASIZE
000011af: DUP3
000011b0: DUP1
000011b1: CALLDATACOPY
000011b2: DUP2
000011b3: CALLDATASIZE
000011b4: SWAP2
000011b5: GAS
000011b6: DELEGATECALL
000011b7: RETURNDATASIZE
000011b8: DUP3
000011b9: DUP1
000011ba: RETURNDATACOPY
000011bb: ISZERO
000011bc: PUSH2 0x0ac5
000011bf: JUMPI
000011c0: RETURNDATASIZE
000011c1: SWAP1
000011c2: RETURN
000011c3: JUMPDEST
000011c4: POP
000011c5: PUSH2 0x11cc
000011c8: PUSH2 0x1d8c
000011cb: JUMP
000011cc: JUMPDEST
000011cd: ISZERO
000011ce: PUSH2 0x11a6
000011d1: JUMP
000011d2: JUMPDEST
000011d3: PUSH1 0x02
000011d5: GT
000011d6: ISZERO
000011d7: PUSH2 0x11dc
000011da: JUMPI
000011db: JUMP
000011dc: JUMPDEST
000011dd: PUSH4 0x4e487b71
000011e2: PUSH1 0xe0
000011e4: SHL
000011e5: PUSH1 0x00
000011e7: MSTORE
000011e8: PUSH1 0x21
000011ea: PUSH1 0x04
000011ec: MSTORE
000011ed: PUSH1 0x24
000011ef: PUSH1 0x00
000011f1: REVERT
000011f2: JUMPDEST
000011f3: DUP1
000011f4: MLOAD
000011f5: DUP3
000011f6: LT
000011f7: ISZERO
000011f8: PUSH2 0x1206
000011fb: JUMPI
000011fc: PUSH1 0x20
000011fe: SWAP2
000011ff: PUSH1 0x05
00001201: SHL
00001202: ADD
00001203: ADD
00001204: SWAP1
00001205: JUMP
00001206: JUMPDEST
00001207: PUSH4 0x4e487b71
0000120c: PUSH1 0xe0
0000120e: SHL
0000120f: PUSH1 0x00
00001211: MSTORE
00001212: PUSH1 0x32
00001214: PUSH1 0x04
00001216: MSTORE
00001217: PUSH1 0x24
00001219: PUSH1 0x00
0000121b: REVERT
0000121c: JUMPDEST
0000121d: CALLER
0000121e: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
0000123f: PUSH1 0x01
00001241: PUSH1 0x01
00001243: PUSH1 0xa0
00001245: SHL
00001246: SUB
00001247: AND
00001248: EQ
00001249: ISZERO
0000124a: DUP1
0000124b: PUSH2 0x12a9
0000124e: JUMPI
0000124f: JUMPDEST
00001250: PUSH2 0x061d
00001253: JUMPI
00001254: DUP1
00001255: MLOAD
00001256: SWAP1
00001257: PUSH1 0x00
00001259: JUMPDEST
0000125a: DUP3
0000125b: DUP2
0000125c: LT
0000125d: PUSH2 0x1265
00001260: JUMPI
00001261: POP
00001262: POP
00001263: POP
00001264: JUMP
00001265: JUMPDEST
00001266: PUSH1 0x00
00001268: DUP1
00001269: PUSH2 0x1272
0000126c: DUP4
0000126d: DUP6
0000126e: PUSH2 0x11f2
00001271: JUMP
00001272: JUMPDEST
00001273: MLOAD
00001274: DUP1
00001275: MLOAD
00001276: PUSH1 0x01
00001278: PUSH1 0x01
0000127a: PUSH1 0xa0
0000127c: SHL
0000127d: SUB
0000127e: AND
0000127f: PUSH1 0x20
00001281: SWAP2
00001282: PUSH1 0x40
00001284: DUP4
00001285: DUP3
00001286: ADD
00001287: MLOAD
00001288: SWAP2
00001289: ADD
0000128a: MLOAD
0000128b: SWAP3
0000128c: DUP4
0000128d: MLOAD
0000128e: SWAP4
0000128f: ADD
00001290: SWAP2
00001291: GAS
00001292: CALL
00001293: RETURNDATASIZE
00001294: PUSH1 0x00
00001296: DUP1
00001297: RETURNDATACOPY
00001298: ISZERO
00001299: PUSH2 0x12a4
0000129c: JUMPI
0000129d: PUSH1 0x01
0000129f: ADD
000012a0: PUSH2 0x1259
000012a3: JUMP
000012a4: JUMPDEST
000012a5: RETURNDATASIZE
000012a6: PUSH1 0x00
000012a8: REVERT
000012a9: JUMPDEST
000012aa: POP
000012ab: PUSH2 0x12b5
000012ae: PUSH2 0x0ae7
000012b1: PUSH2 0x1d8c
000012b4: JUMP
000012b5: JUMPDEST
000012b6: PUSH2 0x124f
000012b9: JUMP
000012ba: JUMPDEST
000012bb: SWAP1
000012bc: PUSH1 0x04
000012be: GT
000012bf: PUSH2 0x01ad
000012c2: JUMPI
000012c3: SWAP1
000012c4: PUSH1 0x04
000012c6: SWAP1
000012c7: JUMP
000012c8: JUMPDEST
000012c9: SWAP1
000012ca: SWAP3
000012cb: SWAP2
000012cc: SWAP3
000012cd: DUP4
000012ce: PUSH1 0x04
000012d0: GT
000012d1: PUSH2 0x01ad
000012d4: JUMPI
000012d5: DUP4
000012d6: GT
000012d7: PUSH2 0x01ad
000012da: JUMPI
000012db: PUSH1 0x04
000012dd: ADD
000012de: SWAP2
000012df: PUSH1 0x03
000012e1: NOT
000012e2: ADD
000012e3: SWAP1
000012e4: JUMP
000012e5: JUMPDEST
000012e6: SWAP1
000012e7: PUSH1 0x24
000012e9: GT
000012ea: PUSH2 0x01ad
000012ed: JUMPI
000012ee: PUSH1 0x10
000012f0: ADD
000012f1: SWAP1
000012f2: PUSH1 0x14
000012f4: SWAP1
000012f5: JUMP
000012f6: JUMPDEST
000012f7: SWAP1
000012f8: PUSH1 0x58
000012fa: GT
000012fb: PUSH2 0x01ad
000012fe: JUMPI
000012ff: PUSH1 0x38
00001301: ADD
00001302: SWAP1
00001303: PUSH1 0x20
00001305: SWAP1
00001306: JUMP
00001307: JUMPDEST
00001308: SWAP1
00001309: PUSH1 0x24
0000130b: GT
0000130c: PUSH2 0x01ad
0000130f: JUMPI
00001310: PUSH1 0x04
00001312: ADD
00001313: SWAP1
00001314: PUSH1 0x20
00001316: SWAP1
00001317: JUMP
00001318: JUMPDEST
00001319: SWAP1
0000131a: PUSH1 0x38
0000131c: GT
0000131d: PUSH2 0x01ad
00001320: JUMPI
00001321: PUSH1 0x24
00001323: ADD
00001324: SWAP1
00001325: PUSH1 0x14
00001327: SWAP1
00001328: JUMP
00001329: JUMPDEST
0000132a: SWAP1
0000132b: PUSH1 0x0a
0000132d: GT
0000132e: PUSH2 0x01ad
00001331: JUMPI
00001332: PUSH1 0x04
00001334: ADD
00001335: SWAP1
00001336: PUSH1 0x06
00001338: SWAP1
00001339: JUMP
0000133a: JUMPDEST
0000133b: SWAP1
0000133c: PUSH1 0x10
0000133e: GT
0000133f: PUSH2 0x01ad
00001342: JUMPI
00001343: PUSH1 0x0a
00001345: ADD
00001346: SWAP1
00001347: PUSH1 0x06
00001349: SWAP1
0000134a: JUMP
0000134b: JUMPDEST
0000134c: SWAP1
0000134d: SWAP4
0000134e: SWAP3
0000134f: SWAP4
00001350: DUP5
00001351: DUP4
00001352: GT
00001353: PUSH2 0x01ad
00001356: JUMPI
00001357: DUP5
00001358: GT
00001359: PUSH2 0x01ad
0000135c: JUMPI
0000135d: DUP2
0000135e: ADD
0000135f: SWAP3
00001360: SUB
00001361: SWAP1
00001362: JUMP
00001363: JUMPDEST
00001364: PUSH1 0x01
00001366: PUSH1 0x01
00001368: PUSH1 0xe0
0000136a: SHL
0000136b: SUB
0000136c: NOT
0000136d: SWAP1
0000136e: CALLDATALOAD
0000136f: DUP2
00001370: DUP2
00001371: AND
00001372: SWAP4
00001373: SWAP3
00001374: PUSH1 0x04
00001376: DUP2
00001377: LT
00001378: PUSH2 0x1380
0000137b: JUMPI
0000137c: POP
0000137d: POP
0000137e: POP
0000137f: JUMP
00001380: JUMPDEST
00001381: PUSH1 0x04
00001383: SUB
00001384: PUSH1 0x03
00001386: SHL
00001387: DUP3
00001388: SWAP1
00001389: SHL
0000138a: AND
0000138b: AND
0000138c: SWAP2
0000138d: POP
0000138e: JUMP
0000138f: JUMPDEST
00001390: SWAP2
00001391: SWAP1
00001392: PUSH2 0x0160
00001395: DUP4
00001396: DUP3
00001397: SUB
00001398: SLT
00001399: PUSH2 0x01ad
0000139c: JUMPI
0000139d: PUSH2 0x13a4
000013a0: PUSH2 0x027c
000013a3: JUMP
000013a4: JUMPDEST
000013a5: SWAP3
000013a6: PUSH2 0x13ae
000013a9: DUP2
000013aa: PUSH2 0x0379
000013ad: JUMP
000013ae: JUMPDEST
000013af: DUP5
000013b0: MSTORE
000013b1: PUSH1 0x20
000013b3: DUP2
000013b4: ADD
000013b5: CALLDATALOAD
000013b6: PUSH1 0x20
000013b8: DUP6
000013b9: ADD
000013ba: MSTORE
000013bb: PUSH1 0x40
000013bd: DUP2
000013be: ADD
000013bf: CALLDATALOAD
000013c0: SWAP2
000013c1: PUSH1 0x01
000013c3: PUSH1 0x01
000013c5: PUSH1 0x40
000013c7: SHL
000013c8: SUB
000013c9: SWAP3
000013ca: DUP4
000013cb: DUP2
000013cc: GT
000013cd: PUSH2 0x01ad
000013d0: JUMPI
000013d1: DUP2
000013d2: PUSH2 0x13dc
000013d5: SWAP2
000013d6: DUP5
000013d7: ADD
000013d8: PUSH2 0x06a0
000013db: JUMP
000013dc: JUMPDEST
000013dd: PUSH1 0x40
000013df: DUP7
000013e0: ADD
000013e1: MSTORE
000013e2: PUSH1 0x60
000013e4: DUP3
000013e5: ADD
000013e6: CALLDATALOAD
000013e7: DUP4
000013e8: DUP2
000013e9: GT
000013ea: PUSH2 0x01ad
000013ed: JUMPI
000013ee: DUP2
000013ef: PUSH2 0x13f9
000013f2: SWAP2
000013f3: DUP5
000013f4: ADD
000013f5: PUSH2 0x06a0
000013f8: JUMP
000013f9: JUMPDEST
000013fa: PUSH1 0x60
000013fc: DUP7
000013fd: ADD
000013fe: MSTORE
000013ff: PUSH1 0x80
00001401: DUP3
00001402: ADD
00001403: CALLDATALOAD
00001404: PUSH1 0x80
00001406: DUP7
00001407: ADD
00001408: MSTORE
00001409: PUSH1 0xa0
0000140b: DUP3
0000140c: ADD
0000140d: CALLDATALOAD
0000140e: PUSH1 0xa0
00001410: DUP7
00001411: ADD
00001412: MSTORE
00001413: PUSH1 0xc0
00001415: DUP3
00001416: ADD
00001417: CALLDATALOAD
00001418: PUSH1 0xc0
0000141a: DUP7
0000141b: ADD
0000141c: MSTORE
0000141d: PUSH1 0xe0
0000141f: DUP3
00001420: ADD
00001421: CALLDATALOAD
00001422: PUSH1 0xe0
00001424: DUP7
00001425: ADD
00001426: MSTORE
00001427: PUSH2 0x0100
0000142a: DUP1
0000142b: DUP4
0000142c: ADD
0000142d: CALLDATALOAD
0000142e: SWAP1
0000142f: DUP7
00001430: ADD
00001431: MSTORE
00001432: PUSH2 0x0120
00001435: DUP1
00001436: DUP4
00001437: ADD
00001438: CALLDATALOAD
00001439: DUP5
0000143a: DUP2
0000143b: GT
0000143c: PUSH2 0x01ad
0000143f: JUMPI
00001440: DUP3
00001441: PUSH2 0x144b
00001444: SWAP2
00001445: DUP6
00001446: ADD
00001447: PUSH2 0x06a0
0000144a: JUMP
0000144b: JUMPDEST
0000144c: SWAP1
0000144d: DUP7
0000144e: ADD
0000144f: MSTORE
00001450: PUSH2 0x0140
00001453: SWAP3
00001454: DUP4
00001455: DUP4
00001456: ADD
00001457: CALLDATALOAD
00001458: SWAP1
00001459: DUP2
0000145a: GT
0000145b: PUSH2 0x01ad
0000145e: JUMPI
0000145f: PUSH2 0x1468
00001462: SWAP3
00001463: ADD
00001464: PUSH2 0x06a0
00001467: JUMP
00001468: JUMPDEST
00001469: SWAP1
0000146a: DUP4
0000146b: ADD
0000146c: MSTORE
0000146d: JUMP
0000146e: JUMPDEST
0000146f: SWAP1
00001470: DUP2
00001471: PUSH1 0x20
00001473: SWAP2
00001474: SUB
00001475: SLT
00001476: PUSH2 0x01ad
00001479: JUMPI
0000147a: MLOAD
0000147b: SWAP1
0000147c: JUMP
0000147d: JUMPDEST
0000147e: PUSH1 0x60
00001480: DUP1
00001481: DUP3
00001482: MSTORE
00001483: DUP3
00001484: MLOAD
00001485: PUSH1 0x01
00001487: PUSH1 0x01
00001489: PUSH1 0xa0
0000148b: SHL
0000148c: SUB
0000148d: AND
0000148e: SWAP1
0000148f: DUP3
00001490: ADD
00001491: MSTORE
00001492: SWAP2
00001493: SWAP4
00001494: SWAP3
00001495: SWAP2
00001496: PUSH1 0x40
00001498: SWAP2
00001499: PUSH2 0x1543
0000149c: SWAP1
0000149d: PUSH1 0x20
0000149f: DUP2
000014a0: ADD
000014a1: MLOAD
000014a2: PUSH1 0x80
000014a4: DUP5
000014a5: ADD
000014a6: MSTORE
000014a7: DUP4
000014a8: DUP2
000014a9: ADD
000014aa: MLOAD
000014ab: PUSH2 0x14c2
000014ae: PUSH2 0x0160
000014b1: SWAP2
000014b2: DUP3
000014b3: PUSH1 0xa0
000014b5: DUP8
000014b6: ADD
000014b7: MSTORE
000014b8: PUSH2 0x01c0
000014bb: DUP7
000014bc: ADD
000014bd: SWAP1
000014be: PUSH2 0x02be
000014c1: JUMP
000014c2: JUMPDEST
000014c3: SWAP1
000014c4: PUSH2 0x1530
000014c7: PUSH2 0x14e2
000014ca: PUSH1 0x60
000014cc: DUP6
000014cd: ADD
000014ce: MLOAD
000014cf: SWAP4
000014d0: PUSH1 0x5f
000014d2: NOT
000014d3: SWAP5
000014d4: DUP6
000014d5: DUP10
000014d6: DUP4
000014d7: SUB
000014d8: ADD
000014d9: PUSH1 0xc0
000014db: DUP11
000014dc: ADD
000014dd: MSTORE
000014de: PUSH2 0x02be
000014e1: JUMP
000014e2: JUMPDEST
000014e3: PUSH1 0x80
000014e5: DUP6
000014e6: ADD
000014e7: MLOAD
000014e8: PUSH1 0xe0
000014ea: DUP9
000014eb: ADD
000014ec: MSTORE
000014ed: PUSH1 0xa0
000014ef: DUP6
000014f0: ADD
000014f1: MLOAD
000014f2: SWAP3
000014f3: PUSH2 0x0100
000014f6: SWAP4
000014f7: DUP5
000014f8: DUP10
000014f9: ADD
000014fa: MSTORE
000014fb: PUSH1 0xc0
000014fd: DUP7
000014fe: ADD
000014ff: MLOAD
00001500: SWAP1
00001501: PUSH2 0x0120
00001504: SWAP2
00001505: DUP3
00001506: DUP11
00001507: ADD
00001508: MSTORE
00001509: PUSH1 0xe0
0000150b: DUP8
0000150c: ADD
0000150d: MLOAD
0000150e: SWAP5
0000150f: PUSH2 0x0140
00001512: SWAP6
00001513: DUP7
00001514: DUP12
00001515: ADD
00001516: MSTORE
00001517: DUP8
00001518: ADD
00001519: MLOAD
0000151a: SWAP1
0000151b: DUP10
0000151c: ADD
0000151d: MSTORE
0000151e: DUP6
0000151f: ADD
00001520: MLOAD
00001521: DUP5
00001522: DUP9
00001523: DUP4
00001524: SUB
00001525: ADD
00001526: PUSH2 0x0180
00001529: DUP10
0000152a: ADD
0000152b: MSTORE
0000152c: PUSH2 0x02be
0000152f: JUMP
00001530: JUMPDEST
00001531: SWAP3
00001532: ADD
00001533: MLOAD
00001534: SWAP1
00001535: DUP5
00001536: DUP4
00001537: SUB
00001538: ADD
00001539: PUSH2 0x01a0
0000153c: DUP6
0000153d: ADD
0000153e: MSTORE
0000153f: PUSH2 0x02be
00001542: JUMP
00001543: JUMPDEST
00001544: SWAP5
00001545: PUSH1 0x20
00001547: DUP3
00001548: ADD
00001549: MSTORE
0000154a: ADD
0000154b: MSTORE
0000154c: JUMP
0000154d: JUMPDEST
0000154e: PUSH1 0x40
00001550: MLOAD
00001551: RETURNDATASIZE
00001552: PUSH1 0x00
00001554: DUP3
00001555: RETURNDATACOPY
00001556: RETURNDATASIZE
00001557: SWAP1
00001558: REVERT
00001559: JUMPDEST
0000155a: PUSH1 0x01
0000155c: PUSH1 0x01
0000155e: PUSH1 0xa0
00001560: SHL
00001561: SUB
00001562: SWAP4
00001563: SWAP3
00001564: SWAP2
00001565: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789
00001586: DUP6
00001587: AND
00001588: CALLER
00001589: SUB
0000158a: PUSH2 0x1777
0000158d: JUMPI
0000158e: PUSH1 0x04
00001590: SWAP5
00001591: DUP6
00001592: CALLDATALOAD
00001593: SWAP3
00001594: DUP4
00001595: PUSH2 0x0144
00001598: DUP2
00001599: ADD
0000159a: CALLDATALOAD
0000159b: ADD
0000159c: SWAP2
0000159d: DUP8
0000159e: PUSH1 0x24
000015a0: DUP5
000015a1: ADD
000015a2: SWAP4
000015a3: ADD
000015a4: CALLDATALOAD
000015a5: SWAP5
000015a6: PUSH2 0x15b8
000015a9: PUSH2 0x15b2
000015ac: DUP8
000015ad: DUP7
000015ae: PUSH2 0x12ba
000015b1: JUMP
000015b2: JUMPDEST
000015b3: SWAP1
000015b4: PUSH2 0x1363
000015b7: JUMP
000015b8: JUMPDEST
000015b9: SWAP3
000015ba: PUSH1 0x01
000015bc: PUSH1 0x01
000015be: PUSH1 0xe0
000015c0: SHL
000015c1: SUB
000015c2: NOT
000015c3: DUP1
000015c4: DUP6
000015c5: AND
000015c6: SWAP2
000015c7: DUP3
000015c8: ISZERO
000015c9: PUSH2 0x1754
000015cc: JUMPI
000015cd: PUSH2 0x15d7
000015d0: SWAP1
000015d1: CALLDATASIZE
000015d2: SWAP1
000015d3: PUSH2 0x138f
000015d6: JUMP
000015d7: JUMPDEST
000015d8: SWAP5
000015d9: PUSH2 0x15f1
000015dc: PUSH1 0x00
000015de: DUP1
000015df: MLOAD
000015e0: PUSH1 0x20
000015e2: PUSH2 0x2171
000015e5: DUP4
000015e6: CODECOPY
000015e7: DUP2
000015e8: MLOAD
000015e9: SWAP2
000015ea: MSTORE
000015eb: SLOAD
000015ec: PUSH1 0xe0
000015ee: SHL
000015ef: SWAP1
000015f0: JUMP
000015f1: JUMPDEST
000015f2: AND
000015f3: AND
000015f4: ISZERO
000015f5: PUSH2 0x1609
000015f8: JUMPI
000015f9: PUSH1 0x40
000015fb: MLOAD
000015fc: PUSH4 0xfc2f51c5
00001601: PUSH1 0xe0
00001603: SHL
00001604: DUP2
00001605: MSTORE
00001606: DUP11
00001607: SWAP1
00001608: REVERT
00001609: JUMPDEST
0000160a: SWAP8
0000160b: SWAP9
0000160c: SWAP7
0000160d: SWAP8
0000160e: PUSH1 0x01
00001610: PUSH1 0xe0
00001612: SHL
00001613: DUP2
00001614: SUB
00001615: PUSH2 0x1703
00001618: JUMPI
00001619: POP
0000161a: SWAP1
0000161b: PUSH1 0x20
0000161d: SWAP6
0000161e: SWAP7
0000161f: PUSH2 0x1693
00001622: PUSH2 0x1661
00001625: PUSH2 0x1648
00001628: PUSH2 0x1643
0000162b: PUSH2 0x15b2
0000162e: DUP8
0000162f: PUSH1 0x64
00001631: PUSH1 0x00
00001633: SWAP10
00001634: ADD
00001635: CALLDATALOAD
00001636: ADD
00001637: PUSH1 0x24
00001639: DUP8
0000163a: DUP3
0000163b: ADD
0000163c: CALLDATALOAD
0000163d: SWAP2
0000163e: ADD
0000163f: PUSH2 0x12ba
00001642: JUMP
00001643: JUMPDEST
00001644: PUSH2 0x1121
00001647: JUMP
00001648: JUMPDEST
00001649: PUSH1 0x01
0000164b: DUP2
0000164c: ADD
0000164d: SLOAD
0000164e: SWAP1
0000164f: SWAP11
00001650: SWAP1
00001651: DUP2
00001652: SWAP1
00001653: PUSH1 0x01
00001655: PUSH1 0x01
00001657: PUSH1 0xa0
00001659: SHL
0000165a: SUB
0000165b: AND
0000165c: SWAP9
0000165d: PUSH2 0x12c8
00001660: JUMP
00001661: JUMPDEST
00001662: SWAP10
00001663: SLOAD
00001664: PUSH1 0xd0
00001666: DUP2
00001667: SWAP1
00001668: SHL
00001669: PUSH1 0x01
0000166b: PUSH1 0x01
0000166d: PUSH1 0xd0
0000166f: SHL
00001670: SUB
00001671: NOT
00001672: AND
00001673: PUSH1 0x70
00001675: SWAP2
00001676: SWAP1
00001677: SWAP2
00001678: SHL
00001679: PUSH6 0xffffffffffff
00001680: PUSH1 0xa0
00001682: SHL
00001683: AND
00001684: OR
00001685: SWAP10
00001686: JUMPDEST
00001687: DUP12
00001688: PUSH2 0x16f5
0000168b: JUMPI
0000168c: JUMPDEST
0000168d: CALLDATASIZE
0000168e: SWAP2
0000168f: PUSH2 0x065a
00001692: JUMP
00001693: JUMPDEST
00001694: PUSH2 0x0140
00001697: DUP6
00001698: ADD
00001699: MSTORE
0000169a: PUSH2 0x16b7
0000169d: PUSH1 0x40
0000169f: MLOAD
000016a0: SWAP10
000016a1: DUP11
000016a2: SWAP8
000016a3: DUP9
000016a4: SWAP7
000016a5: DUP8
000016a6: SWAP5
000016a7: PUSH4 0x3a871cdd
000016ac: PUSH1 0xe0
000016ae: SHL
000016af: DUP7
000016b0: MSTORE
000016b1: DUP6
000016b2: ADD
000016b3: PUSH2 0x147d
000016b6: JUMP
000016b7: JUMPDEST
000016b8: SUB
000016b9: SWAP4
000016ba: AND
000016bb: GAS
000016bc: CALL
000016bd: SWAP1
000016be: DUP2
000016bf: ISZERO
000016c0: PUSH2 0x0618
000016c3: JUMPI
000016c4: PUSH2 0x06bb
000016c7: SWAP3
000016c8: PUSH1 0x00
000016ca: SWAP3
000016cb: PUSH2 0x16d5
000016ce: JUMPI
000016cf: JUMPDEST
000016d0: POP
000016d1: PUSH2 0x20ee
000016d4: JUMP
000016d5: JUMPDEST
000016d6: PUSH2 0x16ee
000016d9: SWAP2
000016da: SWAP3
000016db: POP
000016dc: PUSH1 0x20
000016de: RETURNDATASIZE
000016df: DUP2
000016e0: GT
000016e1: PUSH2 0x0946
000016e4: JUMPI
000016e5: PUSH2 0x0938
000016e8: DUP2
000016e9: DUP4
000016ea: PUSH2 0x024c
000016ed: JUMP
000016ee: JUMPDEST
000016ef: SWAP1
000016f0: CODESIZE
000016f1: PUSH2 0x16cf
000016f4: JUMP
000016f5: JUMPDEST
000016f6: CALLVALUE
000016f7: DUP1
000016f8: DUP1
000016f9: DUP1
000016fa: DUP16
000016fb: CALLER
000016fc: GAS
000016fd: CALL
000016fe: POP
000016ff: PUSH2 0x168c
00001702: JUMP
00001703: JUMPDEST
00001704: SWAP1
00001705: SWAP6
00001706: SWAP4
00001707: SWAP2
00001708: SWAP1
00001709: PUSH1 0x01
0000170b: PUSH1 0xe1
0000170d: SHL
0000170e: SUB
0000170f: PUSH2 0x1747
00001712: JUMPI
00001713: PUSH2 0x173d
00001716: PUSH2 0x1693
00001719: SWAP5
0000171a: PUSH1 0x00
0000171c: SWAP4
0000171d: PUSH2 0x1738
00001720: PUSH2 0x15b2
00001723: DUP11
00001724: PUSH1 0x64
00001726: PUSH1 0x20
00001728: SWAP13
00001729: ADD
0000172a: CALLDATALOAD
0000172b: ADD
0000172c: PUSH1 0x24
0000172e: DUP14
0000172f: DUP3
00001730: ADD
00001731: CALLDATALOAD
00001732: SWAP2
00001733: ADD
00001734: PUSH2 0x12ba
00001737: JUMP
00001738: JUMPDEST
00001739: PUSH2 0x18c7
0000173c: JUMP
0000173d: JUMPDEST
0000173e: SWAP2
0000173f: SWAP10
00001740: SWAP3
00001741: SWAP7
00001742: SWAP2
00001743: PUSH2 0x1686
00001746: JUMP
00001747: JUMPDEST
00001748: POP
00001749: POP
0000174a: POP
0000174b: POP
0000174c: POP
0000174d: POP
0000174e: POP
0000174f: POP
00001750: PUSH1 0x01
00001752: SWAP1
00001753: JUMP
00001754: JUMPDEST
00001755: SWAP7
00001756: SWAP8
00001757: POP
00001758: POP
00001759: POP
0000175a: POP
0000175b: POP
0000175c: POP
0000175d: POP
0000175e: PUSH2 0x06bb
00001761: SWAP4
00001762: SWAP5
00001763: POP
00001764: DUP3
00001765: ISZERO
00001766: PUSH2 0x1ec0
00001769: JUMPI
0000176a: CALLVALUE
0000176b: CALLVALUE
0000176c: CALLVALUE
0000176d: CALLVALUE
0000176e: DUP7
0000176f: CALLER
00001770: GAS
00001771: CALL
00001772: POP
00001773: PUSH2 0x1ec0
00001776: JUMP
00001777: JUMPDEST
00001778: PUSH1 0x40
0000177a: MLOAD
0000177b: PUSH4 0x6b31ba15
00001780: PUSH1 0xe1
00001782: SHL
00001783: DUP2
00001784: MSTORE
00001785: PUSH1 0x04
00001787: SWAP1
00001788: REVERT
00001789: JUMPDEST
0000178a: PUSH12 0xffffffffffffffffffffffff
00001797: NOT
00001798: SWAP1
00001799: CALLDATALOAD
0000179a: DUP2
0000179b: DUP2
0000179c: AND
0000179d: SWAP4
0000179e: SWAP3
0000179f: PUSH1 0x14
000017a1: DUP2
000017a2: LT
000017a3: PUSH2 0x17ab
000017a6: JUMPI
000017a7: POP
000017a8: POP
000017a9: POP
000017aa: JUMP
000017ab: JUMPDEST
000017ac: PUSH1 0x14
000017ae: SUB
000017af: PUSH1 0x03
000017b1: SHL
000017b2: DUP3
000017b3: SWAP1
000017b4: SHL
000017b5: AND
000017b6: AND
000017b7: SWAP2
000017b8: POP
000017b9: JUMP
000017ba: JUMPDEST
000017bb: CALLDATALOAD
000017bc: SWAP1
000017bd: PUSH1 0x20
000017bf: DUP2
000017c0: LT
000017c1: PUSH2 0x17c8
000017c4: JUMPI
000017c5: POP
000017c6: SWAP1
000017c7: JUMP
000017c8: JUMPDEST
000017c9: PUSH1 0x00
000017cb: NOT
000017cc: SWAP1
000017cd: PUSH1 0x20
000017cf: SUB
000017d0: PUSH1 0x03
000017d2: SHL
000017d3: SHL
000017d4: AND
000017d5: SWAP1
000017d6: JUMP
000017d7: JUMPDEST
000017d8: PUSH1 0x01
000017da: PUSH1 0x01
000017dc: PUSH1 0xd0
000017de: SHL
000017df: SUB
000017e0: NOT
000017e1: SWAP1
000017e2: CALLDATALOAD
000017e3: DUP2
000017e4: DUP2
000017e5: AND
000017e6: SWAP4
000017e7: SWAP3
000017e8: PUSH1 0x06
000017ea: DUP2
000017eb: LT
000017ec: PUSH2 0x17f4
000017ef: JUMPI
000017f0: POP
000017f1: POP
000017f2: POP
000017f3: JUMP
000017f4: JUMPDEST
000017f5: PUSH1 0x06
000017f7: SUB
000017f8: PUSH1 0x03
000017fa: SHL
000017fb: DUP3
000017fc: SWAP1
000017fd: SHL
000017fe: AND
000017ff: AND
00001800: SWAP2
00001801: POP
00001802: JUMP
00001803: JUMPDEST
00001804: DUP2
00001805: MLOAD
00001806: PUSH1 0x20
00001808: DUP4
00001809: ADD
0000180a: MLOAD
0000180b: PUSH1 0x40
0000180d: DUP5
0000180e: ADD
0000180f: MLOAD
00001810: PUSH1 0x30
00001812: SWAP2
00001813: SWAP1
00001814: SWAP2
00001815: SHL
00001816: PUSH12 0xffffffffffff000000000000
00001823: AND
00001824: PUSH6 0xffffffffffff
0000182b: SWAP3
0000182c: SWAP1
0000182d: SWAP3
0000182e: AND
0000182f: SWAP2
00001830: SWAP1
00001831: SWAP2
00001832: OR
00001833: PUSH1 0x60
00001835: SWAP2
00001836: DUP3
00001837: SHL
00001838: PUSH12 0xffffffffffffffffffffffff
00001845: NOT
00001846: AND
00001847: OR
00001848: DUP3
00001849: SSTORE
0000184a: SWAP1
0000184b: SWAP2
0000184c: ADD
0000184d: MLOAD
0000184e: PUSH1 0x01
00001850: SWAP2
00001851: SWAP1
00001852: SWAP2
00001853: ADD
00001854: DUP1
00001855: SLOAD
00001856: PUSH1 0x01
00001858: PUSH1 0x01
0000185a: PUSH1 0xa0
0000185c: SHL
0000185d: SUB
0000185e: NOT
0000185f: AND
00001860: PUSH1 0x01
00001862: PUSH1 0x01
00001864: PUSH1 0xa0
00001866: SHL
00001867: SUB
00001868: SWAP3
00001869: SWAP1
0000186a: SWAP3
0000186b: AND
0000186c: SWAP2
0000186d: SWAP1
0000186e: SWAP2
0000186f: OR
00001870: SWAP1
00001871: SSTORE
00001872: JUMP
00001873: JUMPDEST
00001874: SWAP1
00001875: PUSH1 0x20
00001877: SWAP2
00001878: DUP1
00001879: DUP3
0000187a: MSTORE
0000187b: DUP1
0000187c: PUSH1 0x00
0000187e: DUP5
0000187f: DUP5
00001880: ADD
00001881: CALLDATACOPY
00001882: PUSH1 0x00
00001884: DUP3
00001885: DUP3
00001886: ADD
00001887: DUP5
00001888: ADD
00001889: MSTORE
0000188a: PUSH1 0x1f
0000188c: ADD
0000188d: PUSH1 0x1f
0000188f: NOT
00001890: AND
00001891: ADD
00001892: ADD
00001893: SWAP1
00001894: JUMP
00001895: JUMPDEST
00001896: SWAP1
00001897: DUP1
00001898: PUSH1 0x20
0000189a: SWAP4
0000189b: SWAP3
0000189c: DUP2
0000189d: DUP5
0000189e: MSTORE
0000189f: DUP5
000018a0: DUP5
000018a1: ADD
000018a2: CALLDATACOPY
000018a3: PUSH1 0x00
000018a5: DUP3
000018a6: DUP3
000018a7: ADD
000018a8: DUP5
000018a9: ADD
000018aa: MSTORE
000018ab: PUSH1 0x1f
000018ad: ADD
000018ae: PUSH1 0x1f
000018b0: NOT
000018b1: AND
000018b2: ADD
000018b3: ADD
000018b4: SWAP1
000018b5: JUMP
000018b6: JUMPDEST
000018b7: SWAP2
000018b8: PUSH1 0x20
000018ba: PUSH2 0x06bb
000018bd: SWAP4
000018be: DUP2
000018bf: DUP2
000018c0: MSTORE
000018c1: ADD
000018c2: SWAP2
000018c3: PUSH2 0x1895
000018c6: JUMP
000018c7: JUMPDEST
000018c8: SWAP2
000018c9: SWAP1
000018ca: PUSH2 0x18d3
000018cd: DUP3
000018ce: DUP3
000018cf: PUSH2 0x12e5
000018d2: JUMP
000018d3: JUMPDEST
000018d4: PUSH2 0x18dc
000018d7: SWAP2
000018d8: PUSH2 0x1789
000018db: JUMP
000018dc: JUMPDEST
000018dd: PUSH1 0x60
000018df: SHR
000018e0: SWAP4
000018e1: PUSH2 0x18ea
000018e4: DUP4
000018e5: DUP4
000018e6: PUSH2 0x12f6
000018e9: JUMP
000018ea: JUMPDEST
000018eb: PUSH2 0x18f3
000018ee: SWAP2
000018ef: PUSH2 0x17ba
000018f2: JUMP
000018f3: JUMPDEST
000018f4: PUSH1 0x58
000018f6: DUP4
000018f7: ADD
000018f8: PUSH1 0x78
000018fa: DUP3
000018fb: ADD
000018fc: SWAP5
000018fd: DUP6
000018fe: DUP4
000018ff: PUSH1 0x58
00001901: ADD
00001902: SWAP1
00001903: PUSH2 0x190d
00001906: SWAP2
00001907: DUP4
00001908: DUP9
00001909: PUSH2 0x134b
0000190c: JUMP
0000190d: JUMPDEST
0000190e: PUSH2 0x1916
00001911: SWAP2
00001912: PUSH2 0x17ba
00001915: JUMP
00001916: JUMPDEST
00001917: PUSH2 0x1920
0000191a: DUP3
0000191b: DUP8
0000191c: PUSH2 0x1307
0000191f: JUMP
00001920: JUMPDEST
00001921: PUSH2 0x1929
00001924: SWAP2
00001925: PUSH2 0x17ba
00001928: JUMP
00001929: JUMPDEST
0000192a: PUSH2 0x1933
0000192d: DUP4
0000192e: DUP9
0000192f: PUSH2 0x1318
00001932: JUMP
00001933: JUMPDEST
00001934: PUSH2 0x193c
00001937: SWAP2
00001938: PUSH2 0x1789
0000193b: JUMP
0000193c: JUMPDEST
0000193d: PUSH1 0x60
0000193f: SHR
00001940: PUSH2 0x194a
00001943: CALLDATASIZE
00001944: DUP8
00001945: DUP8
00001946: PUSH2 0x065a
00001949: JUMP
0000194a: JUMPDEST
0000194b: DUP1
0000194c: MLOAD
0000194d: PUSH1 0x20
0000194f: SWAP2
00001950: DUP3
00001951: ADD
00001952: KECCAK256
00001953: PUSH1 0x40
00001955: DUP1
00001956: MLOAD
00001957: PUSH32 0x3ce406685c1b3551d706d85a68afdaa49ac4e07b451ad9b8ff8b58c3ee964176
00001978: SWAP4
00001979: DUP2
0000197a: ADD
0000197b: SWAP4
0000197c: DUP5
0000197d: MSTORE
0000197e: PUSH1 0x01
00001980: PUSH1 0x01
00001982: PUSH1 0xe0
00001984: SHL
00001985: SUB
00001986: NOT
00001987: DUP15
00001988: AND
00001989: SWAP2
0000198a: DUP2
0000198b: ADD
0000198c: SWAP2
0000198d: SWAP1
0000198e: SWAP2
0000198f: MSTORE
00001990: PUSH1 0x60
00001992: DUP2
00001993: ADD
00001994: SWAP5
00001995: SWAP1
00001996: SWAP5
00001997: MSTORE
00001998: PUSH1 0x01
0000199a: PUSH1 0x01
0000199c: PUSH1 0xa0
0000199e: SHL
0000199f: SUB
000019a0: SWAP3
000019a1: SWAP1
000019a2: SWAP3
000019a3: AND
000019a4: PUSH1 0x80
000019a6: DUP5
000019a7: ADD
000019a8: MSTORE
000019a9: PUSH1 0xa0
000019ab: DUP1
000019ac: DUP5
000019ad: ADD
000019ae: SWAP3
000019af: SWAP1
000019b0: SWAP3
000019b1: MSTORE
000019b2: SWAP1
000019b3: DUP3
000019b4: MSTORE
000019b5: SWAP1
000019b6: PUSH2 0x19c0
000019b9: PUSH1 0xc0
000019bb: DUP3
000019bc: PUSH2 0x024c
000019bf: JUMP
000019c0: JUMPDEST
000019c1: MLOAD
000019c2: SWAP1
000019c3: KECCAK256
000019c4: PUSH2 0x19cc
000019c7: SWAP1
000019c8: PUSH2 0x1b1f
000019cb: JUMP
000019cc: JUMPDEST
000019cd: SWAP1
000019ce: DUP5
000019cf: ADD
000019d0: SWAP7
000019d1: PUSH1 0x78
000019d3: DUP9
000019d4: ADD
000019d5: PUSH2 0x19df
000019d8: SWAP2
000019d9: DUP5
000019da: DUP10
000019db: PUSH2 0x134b
000019de: JUMP
000019df: JUMPDEST
000019e0: SWAP1
000019e1: PUSH2 0x19e9
000019e4: SWAP3
000019e5: PUSH2 0x1f8c
000019e8: JUMP
000019e9: JUMPDEST
000019ea: PUSH2 0x19f3
000019ed: DUP3
000019ee: DUP8
000019ef: PUSH2 0x1307
000019f2: JUMP
000019f3: JUMPDEST
000019f4: PUSH1 0x01
000019f6: PUSH1 0x01
000019f8: PUSH1 0xa0
000019fa: SHL
000019fb: SUB
000019fc: NOT
000019fd: SWAP2
000019fe: PUSH2 0x1a07
00001a01: SWAP2
00001a02: SWAP1
00001a03: PUSH2 0x17ba
00001a06: JUMP
00001a07: JUMPDEST
00001a08: AND
00001a09: PUSH2 0x1a11
00001a0c: SWAP2
00001a0d: PUSH2 0x20ee
00001a10: JUMP
00001a11: JUMPDEST
00001a12: SWAP7
00001a13: PUSH1 0x78
00001a15: DUP7
00001a16: DUP9
00001a17: ADD
00001a18: ADD
00001a19: SWAP7
00001a1a: DUP3
00001a1b: SUB
00001a1c: PUSH1 0x77
00001a1e: NOT
00001a1f: ADD
00001a20: SWAP6
00001a21: PUSH2 0x1a2a
00001a24: DUP4
00001a25: DUP3
00001a26: PUSH2 0x1329
00001a29: JUMP
00001a2a: JUMPDEST
00001a2b: PUSH2 0x1a33
00001a2e: SWAP2
00001a2f: PUSH2 0x17d7
00001a32: JUMP
00001a33: JUMPDEST
00001a34: PUSH1 0xd0
00001a36: SHR
00001a37: SWAP3
00001a38: PUSH2 0x1a41
00001a3b: DUP2
00001a3c: DUP4
00001a3d: PUSH2 0x133a
00001a40: JUMP
00001a41: JUMPDEST
00001a42: PUSH2 0x1a4a
00001a45: SWAP2
00001a46: PUSH2 0x17d7
00001a49: JUMP
00001a4a: JUMPDEST
00001a4b: PUSH1 0xd0
00001a4d: SHR
00001a4e: SWAP2
00001a4f: PUSH2 0x1a58
00001a52: DUP3
00001a53: DUP3
00001a54: PUSH2 0x1318
00001a57: JUMP
00001a58: JUMPDEST
00001a59: PUSH2 0x1a61
00001a5c: SWAP2
00001a5d: PUSH2 0x1789
00001a60: JUMP
00001a61: JUMPDEST
00001a62: PUSH1 0x60
00001a64: SHR
00001a65: SWAP2
00001a66: PUSH2 0x1a6e
00001a69: SWAP2
00001a6a: PUSH2 0x12e5
00001a6d: JUMP
00001a6e: JUMPDEST
00001a6f: PUSH2 0x1a77
00001a72: SWAP2
00001a73: PUSH2 0x1789
00001a76: JUMP
00001a77: JUMPDEST
00001a78: PUSH1 0x60
00001a7a: SHR
00001a7b: SWAP2
00001a7c: PUSH2 0x1a83
00001a7f: PUSH2 0x026d
00001a82: JUMP
00001a83: JUMPDEST
00001a84: PUSH6 0xffffffffffff
00001a8b: SWAP1
00001a8c: SWAP6
00001a8d: AND
00001a8e: DUP6
00001a8f: MSTORE
00001a90: PUSH6 0xffffffffffff
00001a97: AND
00001a98: PUSH1 0x20
00001a9a: DUP6
00001a9b: ADD
00001a9c: MSTORE
00001a9d: PUSH1 0x01
00001a9f: PUSH1 0x01
00001aa1: PUSH1 0xa0
00001aa3: SHL
00001aa4: SUB
00001aa5: AND
00001aa6: PUSH1 0x40
00001aa8: DUP5
00001aa9: ADD
00001aaa: MSTORE
00001aab: PUSH1 0x01
00001aad: PUSH1 0x01
00001aaf: PUSH1 0xa0
00001ab1: SHL
00001ab2: SUB
00001ab3: AND
00001ab4: PUSH1 0x60
00001ab6: DUP4
00001ab7: ADD
00001ab8: MSTORE
00001ab9: PUSH2 0x1ac1
00001abc: SWAP1
00001abd: PUSH2 0x1121
00001ac0: JUMP
00001ac1: JUMPDEST
00001ac2: SWAP1
00001ac3: PUSH2 0x1acb
00001ac6: SWAP2
00001ac7: PUSH2 0x1803
00001aca: JUMP
00001acb: JUMPDEST
00001acc: PUSH1 0x01
00001ace: PUSH1 0x01
00001ad0: PUSH1 0xa0
00001ad2: SHL
00001ad3: SUB
00001ad4: DUP8
00001ad5: AND
00001ad6: SWAP2
00001ad7: DUP3
00001ad8: EXTCODESIZE
00001ad9: ISZERO
00001ada: PUSH2 0x01ad
00001add: JUMPI
00001ade: PUSH2 0x1b01
00001ae1: SWAP3
00001ae2: PUSH1 0x00
00001ae4: SWAP3
00001ae5: DUP4
00001ae6: PUSH1 0x40
00001ae8: MLOAD
00001ae9: DUP1
00001aea: SWAP7
00001aeb: DUP2
00001aec: SWAP6
00001aed: DUP3
00001aee: SWAP5
00001aef: PUSH4 0x064acaab
00001af4: PUSH1 0xe1
00001af6: SHL
00001af7: DUP5
00001af8: MSTORE
00001af9: PUSH1 0x04
00001afb: DUP5
00001afc: ADD
00001afd: PUSH2 0x18b6
00001b00: JUMP
00001b01: JUMPDEST
00001b02: SUB
00001b03: SWAP3
00001b04: GAS
00001b05: CALL
00001b06: DUP1
00001b07: ISZERO
00001b08: PUSH2 0x0618
00001b0b: JUMPI
00001b0c: PUSH2 0x1b12
00001b0f: JUMPI
00001b10: POP
00001b11: JUMP
00001b12: JUMPDEST
00001b13: DUP1
00001b14: PUSH2 0x060c
00001b17: PUSH2 0x027a
00001b1a: SWAP3
00001b1b: PUSH2 0x01c8
00001b1e: JUMP
00001b1f: JUMPDEST
00001b20: PUSH32 0x470bb15be946f544f872ed597995173a7016edfe194aac72bd042df5455e9769
00001b41: PUSH32 0x000000000000000000000000d3f582f6b4814e989ee8e96bc3175320b5a540ab
00001b62: ADDRESS
00001b63: EQ
00001b64: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001
00001b85: CHAINID
00001b86: EQ
00001b87: AND
00001b88: ISZERO
00001b89: PUSH2 0x1bac
00001b8c: JUMPI
00001b8d: JUMPDEST
00001b8e: PUSH8 0x1901000000000000
00001b97: PUSH1 0x00
00001b99: MSTORE
00001b9a: PUSH1 0x1a
00001b9c: MSTORE
00001b9d: PUSH1 0x3a
00001b9f: MSTORE
00001ba0: PUSH1 0x42
00001ba2: PUSH1 0x18
00001ba4: KECCAK256
00001ba5: SWAP1
00001ba6: PUSH1 0x00
00001ba8: PUSH1 0x3a
00001baa: MSTORE
00001bab: JUMP
00001bac: JUMPDEST
00001bad: POP
00001bae: PUSH1 0xa0
00001bb0: PUSH1 0x40
00001bb2: MLOAD
00001bb3: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00001bd4: DUP2
00001bd5: MSTORE
00001bd6: PUSH32 0x32ba20807d2fff2dbb34e0bcfa82982565bef566d4c0c633dc57b700b81c3427
00001bf7: PUSH1 0x20
00001bf9: DUP3
00001bfa: ADD
00001bfb: MSTORE
00001bfc: PUSH32 0x3524473bf9d21abe45b7f656e2f1380e9335b9d346503f037e8275c56c697796
00001c1d: PUSH1 0x40
00001c1f: DUP3
00001c20: ADD
00001c21: MSTORE
00001c22: CHAINID
00001c23: PUSH1 0x60
00001c25: DUP3
00001c26: ADD
00001c27: MSTORE
00001c28: ADDRESS
00001c29: PUSH1 0x80
00001c2b: DUP3
00001c2c: ADD
00001c2d: MSTORE
00001c2e: KECCAK256
00001c2f: PUSH2 0x1b8d
00001c32: JUMP
00001c33: JUMPDEST
00001c34: SWAP2
00001c35: PUSH2 0x1cf2
00001c38: SWAP2
00001c39: PUSH2 0x1cf7
00001c3c: SWAP4
00001c3d: PUSH2 0x1cdc
00001c40: PUSH2 0x1cea
00001c43: PUSH2 0x1c4a
00001c46: PUSH2 0x029c
00001c49: JUMP
00001c4a: JUMPDEST
00001c4b: PUSH2 0x1c52
00001c4e: PUSH2 0x0afa
00001c51: JUMP
00001c52: JUMPDEST
00001c53: SWAP1
00001c54: PUSH1 0x20
00001c56: DUP2
00001c57: MLOAD
00001c58: SWAP2
00001c59: ADD
00001c5a: KECCAK256
00001c5b: SWAP1
00001c5c: PUSH1 0x20
00001c5e: DUP2
00001c5f: MLOAD
00001c60: SWAP2
00001c61: ADD
00001c62: KECCAK256
00001c63: PUSH1 0x40
00001c65: MLOAD
00001c66: SWAP1
00001c67: PUSH1 0x20
00001c69: DUP3
00001c6a: ADD
00001c6b: SWAP3
00001c6c: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00001c8d: DUP5
00001c8e: MSTORE
00001c8f: PUSH1 0x40
00001c91: DUP4
00001c92: ADD
00001c93: MSTORE
00001c94: PUSH1 0x60
00001c96: DUP3
00001c97: ADD
00001c98: MSTORE
00001c99: CHAINID
00001c9a: PUSH1 0x80
00001c9c: DUP3
00001c9d: ADD
00001c9e: MSTORE
00001c9f: ADDRESS
00001ca0: PUSH1 0xa0
00001ca2: DUP3
00001ca3: ADD
00001ca4: MSTORE
00001ca5: PUSH1 0xa0
00001ca7: DUP2
00001ca8: MSTORE
00001ca9: PUSH2 0x1cb1
00001cac: DUP2
00001cad: PUSH2 0x0231
00001cb0: JUMP
00001cb1: JUMPDEST
00001cb2: MLOAD
00001cb3: SWAP1
00001cb4: KECCAK256
00001cb5: SWAP3
00001cb6: PUSH1 0x40
00001cb8: MLOAD
00001cb9: SWAP3
00001cba: DUP4
00001cbb: SWAP2
00001cbc: PUSH1 0x20
00001cbe: DUP4
00001cbf: ADD
00001cc0: SWAP6
00001cc1: DUP7
00001cc2: SWAP1
00001cc3: SWAP2
00001cc4: PUSH1 0x42
00001cc6: SWAP3
00001cc7: PUSH2 0x1901
00001cca: PUSH1 0xf0
00001ccc: SHL
00001ccd: DUP4
00001cce: MSTORE
00001ccf: PUSH1 0x02
00001cd1: DUP4
00001cd2: ADD
00001cd3: MSTORE
00001cd4: PUSH1 0x22
00001cd6: DUP3
00001cd7: ADD
00001cd8: MSTORE
00001cd9: ADD
00001cda: SWAP1
00001cdb: JUMP
00001cdc: JUMPDEST
00001cdd: SUB
00001cde: PUSH1 0x1f
00001ce0: NOT
00001ce1: DUP2
00001ce2: ADD
00001ce3: DUP4
00001ce4: MSTORE
00001ce5: DUP3
00001ce6: PUSH2 0x024c
00001ce9: JUMP
00001cea: JUMPDEST
00001ceb: MLOAD
00001cec: SWAP1
00001ced: KECCAK256
00001cee: PUSH2 0x1f8c
00001cf1: JUMP
00001cf2: JUMPDEST
00001cf3: PUSH2 0x20c5
00001cf6: JUMP
00001cf7: JUMPDEST
00001cf8: SWAP1
00001cf9: PUSH6 0xffffffffffff
00001d00: SWAP3
00001d01: DUP4
00001d02: TIMESTAMP
00001d03: SWAP2
00001d04: AND
00001d05: GT
00001d06: ISZERO
00001d07: SWAP3
00001d08: DUP4
00001d09: PUSH2 0x1d44
00001d0c: JUMPI
00001d0d: JUMPDEST
00001d0e: POP
00001d0f: POP
00001d10: DUP2
00001d11: PUSH2 0x1d32
00001d14: JUMPI
00001d15: JUMPDEST
00001d16: POP
00001d17: ISZERO
00001d18: PUSH2 0x1d26
00001d1b: JUMPI
00001d1c: PUSH4 0x0b135d3f
00001d21: PUSH1 0xe1
00001d23: SHL
00001d24: SWAP1
00001d25: JUMP
00001d26: JUMPDEST
00001d27: PUSH1 0x01
00001d29: PUSH1 0x01
00001d2b: PUSH1 0xe0
00001d2d: SHL
00001d2e: SUB
00001d2f: NOT
00001d30: SWAP1
00001d31: JUMP
00001d32: JUMPDEST
00001d33: PUSH1 0x01
00001d35: PUSH1 0x01
00001d37: PUSH1 0xa0
00001d39: SHL
00001d3a: SUB
00001d3b: AND
00001d3c: ISZERO
00001d3d: SWAP1
00001d3e: POP
00001d3f: CODESIZE
00001d40: PUSH2 0x1d15
00001d43: JUMP
00001d44: JUMPDEST
00001d45: TIMESTAMP
00001d46: SWAP2
00001d47: AND
00001d48: LT
00001d49: ISZERO
00001d4a: SWAP2
00001d4b: POP
00001d4c: CODESIZE
00001d4d: DUP1
00001d4e: PUSH2 0x1d0d
00001d51: JUMP
00001d52: JUMPDEST
00001d53: SWAP1
00001d54: DUP2
00001d55: PUSH1 0x20
00001d57: SWAP2
00001d58: SUB
00001d59: SLT
00001d5a: PUSH2 0x01ad
00001d5d: JUMPI
00001d5e: MLOAD
00001d5f: DUP1
00001d60: ISZERO
00001d61: ISZERO
00001d62: DUP2
00001d63: SUB
00001d64: PUSH2 0x01ad
00001d67: JUMPI
00001d68: SWAP1
00001d69: JUMP
00001d6a: JUMPDEST
00001d6b: PUSH1 0x01
00001d6d: PUSH1 0x01
00001d6f: PUSH1 0xa0
00001d71: SHL
00001d72: SUB
00001d73: SWAP1
00001d74: SWAP2
00001d75: AND
00001d76: DUP2
00001d77: MSTORE
00001d78: PUSH1 0x40
00001d7a: PUSH1 0x20
00001d7c: DUP3
00001d7d: ADD
00001d7e: DUP2
00001d7f: SWAP1
00001d80: MSTORE
00001d81: PUSH2 0x06bb
00001d84: SWAP3
00001d85: SWAP2
00001d86: ADD
00001d87: SWAP1
00001d88: PUSH2 0x1873
00001d8b: JUMP
00001d8c: JUMPDEST
00001d8d: PUSH2 0x1d96
00001d90: CALLDATASIZE
00001d91: CALLER
00001d92: PUSH2 0x1ff4
00001d95: JUMP
00001d96: JUMPDEST
00001d97: PUSH2 0x1ebb
00001d9a: JUMPI
00001d9b: PUSH2 0x1daf
00001d9e: PUSH1 0x00
00001da0: CALLDATALOAD
00001da1: PUSH1 0x01
00001da3: PUSH1 0x01
00001da5: PUSH1 0xe0
00001da7: SHL
00001da8: SUB
00001da9: NOT
00001daa: AND
00001dab: PUSH2 0x1121
00001dae: JUMP
00001daf: JUMPDEST
00001db0: PUSH1 0x01
00001db2: DUP2
00001db3: ADD
00001db4: SLOAD
00001db5: PUSH2 0x1dce
00001db8: SWAP1
00001db9: PUSH1 0x01
00001dbb: PUSH1 0x01
00001dbd: PUSH1 0xa0
00001dbf: SHL
00001dc0: SUB
00001dc1: AND
00001dc2: JUMPDEST
00001dc3: PUSH1 0x01
00001dc5: PUSH1 0x01
00001dc7: PUSH1 0xa0
00001dc9: SHL
00001dca: SUB
00001dcb: AND
00001dcc: SWAP1
00001dcd: JUMP
00001dce: JUMPDEST
00001dcf: SWAP1
00001dd0: PUSH1 0x01
00001dd2: PUSH1 0x01
00001dd4: PUSH1 0xa0
00001dd6: SHL
00001dd7: SUB
00001dd8: DUP3
00001dd9: AND
00001dda: ISZERO
00001ddb: SWAP1
00001ddc: DUP2
00001ddd: ISZERO
00001dde: PUSH2 0x1e7f
00001de1: JUMPI
00001de2: JUMPDEST
00001de3: DUP2
00001de4: ISZERO
00001de5: PUSH2 0x1e54
00001de8: JUMPI
00001de9: JUMPDEST
00001dea: POP
00001deb: ISZERO
00001dec: PUSH2 0x1df5
00001def: JUMPI
00001df0: POP
00001df1: PUSH1 0x00
00001df3: SWAP1
00001df4: JUMP
00001df5: JUMPDEST
00001df6: PUSH1 0x20
00001df8: PUSH1 0x40
00001dfa: MLOAD
00001dfb: DUP1
00001dfc: SWAP3
00001dfd: PUSH4 0x9ea9bd59
00001e02: PUSH1 0xe0
00001e04: SHL
00001e05: DUP3
00001e06: MSTORE
00001e07: DUP2
00001e08: DUP1
00001e09: PUSH2 0x1e16
00001e0c: CALLDATASIZE
00001e0d: CALLER
00001e0e: PUSH1 0x04
00001e10: DUP5
00001e11: ADD
00001e12: PUSH2 0x1d6a
00001e15: JUMP
00001e16: JUMPDEST
00001e17: SUB
00001e18: SWAP2
00001e19: GAS
00001e1a: STATICCALL
00001e1b: SWAP1
00001e1c: DUP2
00001e1d: ISZERO
00001e1e: PUSH2 0x0618
00001e21: JUMPI
00001e22: PUSH1 0x00
00001e24: SWAP2
00001e25: PUSH2 0x1e2c
00001e28: JUMPI
00001e29: POP
00001e2a: SWAP1
00001e2b: JUMP
00001e2c: JUMPDEST
00001e2d: PUSH2 0x06bb
00001e30: SWAP2
00001e31: POP
00001e32: PUSH1 0x20
00001e34: RETURNDATASIZE
00001e35: DUP2
00001e36: GT
00001e37: PUSH2 0x1e4d
00001e3a: JUMPI
00001e3b: JUMPDEST
00001e3c: PUSH2 0x1e45
00001e3f: DUP2
00001e40: DUP4
00001e41: PUSH2 0x024c
00001e44: JUMP
00001e45: JUMPDEST
00001e46: DUP2
00001e47: ADD
00001e48: SWAP1
00001e49: PUSH2 0x1d52
00001e4c: JUMP
00001e4d: JUMPDEST
00001e4e: POP
00001e4f: RETURNDATASIZE
00001e50: PUSH2 0x1e3b
00001e53: JUMP
00001e54: JUMPDEST
00001e55: SLOAD
00001e56: PUSH2 0x1e6e
00001e59: SWAP2
00001e5a: POP
00001e5b: PUSH6 0xffffffffffff
00001e62: AND
00001e63: JUMPDEST
00001e64: PUSH6 0xffffffffffff
00001e6b: AND
00001e6c: SWAP1
00001e6d: JUMP
00001e6e: JUMPDEST
00001e6f: PUSH6 0xffffffffffff
00001e76: TIMESTAMP
00001e77: SWAP2
00001e78: AND
00001e79: GT
00001e7a: CODESIZE
00001e7b: PUSH2 0x1de9
00001e7e: JUMP
00001e7f: JUMPDEST
00001e80: SWAP1
00001e81: POP
00001e82: PUSH6 0xffffffffffff
00001e89: PUSH2 0x1e9f
00001e8c: PUSH2 0x1e63
00001e8f: DUP4
00001e90: SLOAD
00001e91: PUSH6 0xffffffffffff
00001e98: SWAP1
00001e99: PUSH1 0x30
00001e9b: SHR
00001e9c: AND
00001e9d: SWAP1
00001e9e: JUMP
00001e9f: JUMPDEST
00001ea0: AND
00001ea1: DUP1
00001ea2: ISZERO
00001ea3: ISZERO
00001ea4: SWAP1
00001ea5: DUP2
00001ea6: PUSH2 0x1eb1
00001ea9: JUMPI
00001eaa: JUMPDEST
00001eab: POP
00001eac: SWAP1
00001ead: PUSH2 0x1de2
00001eb0: JUMP
00001eb1: JUMPDEST
00001eb2: SWAP1
00001eb3: POP
00001eb4: TIMESTAMP
00001eb5: GT
00001eb6: CODESIZE
00001eb7: PUSH2 0x1eaa
00001eba: JUMP
00001ebb: JUMPDEST
00001ebc: PUSH1 0x01
00001ebe: SWAP1
00001ebf: JUMP
00001ec0: JUMPDEST
00001ec1: SWAP1
00001ec2: SWAP2
00001ec3: PUSH2 0x1ecc
00001ec6: CALLDATASIZE
00001ec7: DUP4
00001ec8: PUSH2 0x138f
00001ecb: JUMP
00001ecc: JUMPDEST
00001ecd: PUSH2 0x0140
00001ed0: SWAP3
00001ed1: DUP4
00001ed2: DUP2
00001ed3: ADD
00001ed4: CALLDATALOAD
00001ed5: SWAP1
00001ed6: PUSH1 0x1e
00001ed8: NOT
00001ed9: DUP2
00001eda: CALLDATASIZE
00001edb: SUB
00001edc: ADD
00001edd: DUP3
00001ede: SLT
00001edf: ISZERO
00001ee0: PUSH2 0x01ad
00001ee3: JUMPI
00001ee4: ADD
00001ee5: SWAP4
00001ee6: DUP5
00001ee7: CALLDATALOAD
00001ee8: SWAP5
00001ee9: PUSH1 0x01
00001eeb: PUSH1 0x01
00001eed: PUSH1 0x40
00001eef: SHL
00001ef0: SUB
00001ef1: DUP7
00001ef2: GT
00001ef3: PUSH2 0x01ad
00001ef6: JUMPI
00001ef7: PUSH1 0x20
00001ef9: ADD
00001efa: SWAP4
00001efb: DUP6
00001efc: CALLDATASIZE
00001efd: SUB
00001efe: DUP6
00001eff: SGT
00001f00: PUSH2 0x01ad
00001f03: JUMPI
00001f04: PUSH2 0x1f16
00001f07: PUSH2 0x168c
00001f0a: DUP8
00001f0b: PUSH2 0x1f5e
00001f0e: SWAP9
00001f0f: PUSH1 0x20
00001f11: SWAP9
00001f12: PUSH2 0x12c8
00001f15: JUMP
00001f16: JUMPDEST
00001f17: SWAP1
00001f18: DUP4
00001f19: ADD
00001f1a: MSTORE
00001f1b: PUSH1 0x00
00001f1d: PUSH2 0x1f40
00001f20: PUSH2 0x1dc2
00001f23: PUSH1 0x00
00001f25: DUP1
00001f26: MLOAD
00001f27: PUSH1 0x20
00001f29: PUSH2 0x2171
00001f2c: DUP4
00001f2d: CODECOPY
00001f2e: DUP2
00001f2f: MLOAD
00001f30: SWAP2
00001f31: MSTORE
00001f32: SLOAD
00001f33: PUSH1 0x50
00001f35: SHR
00001f36: PUSH1 0x01
00001f38: DUP1
00001f39: PUSH1 0xa0
00001f3b: SHL
00001f3c: SUB
00001f3d: AND
00001f3e: SWAP1
00001f3f: JUMP
00001f40: JUMPDEST
00001f41: SWAP3
00001f42: PUSH1 0x40
00001f44: MLOAD
00001f45: SWAP7
00001f46: DUP8
00001f47: SWAP6
00001f48: DUP7
00001f49: SWAP5
00001f4a: DUP6
00001f4b: SWAP4
00001f4c: PUSH4 0x3a871cdd
00001f51: PUSH1 0xe0
00001f53: SHL
00001f54: DUP6
00001f55: MSTORE
00001f56: PUSH1 0x04
00001f58: DUP6
00001f59: ADD
00001f5a: PUSH2 0x147d
00001f5d: JUMP
00001f5e: JUMPDEST
00001f5f: SUB
00001f60: SWAP3
00001f61: GAS
00001f62: CALL
00001f63: SWAP1
00001f64: DUP2
00001f65: ISZERO
00001f66: PUSH2 0x0618
00001f69: JUMPI
00001f6a: PUSH1 0x00
00001f6c: SWAP2
00001f6d: PUSH2 0x1f74
00001f70: JUMPI
00001f71: POP
00001f72: SWAP1
00001f73: JUMP
00001f74: JUMPDEST
00001f75: PUSH2 0x06bb
00001f78: SWAP2
00001f79: POP
00001f7a: PUSH1 0x20
00001f7c: RETURNDATASIZE
00001f7d: DUP2
00001f7e: GT
00001f7f: PUSH2 0x0946
00001f82: JUMPI
00001f83: PUSH2 0x0938
00001f86: DUP2
00001f87: DUP4
00001f88: PUSH2 0x024c
00001f8b: JUMP
00001f8c: JUMPDEST
00001f8d: PUSH1 0x00
00001f8f: DUP1
00001f90: MLOAD
00001f91: PUSH1 0x20
00001f93: PUSH2 0x2171
00001f96: DUP4
00001f97: CODECOPY
00001f98: DUP2
00001f99: MLOAD
00001f9a: SWAP2
00001f9b: MSTORE
00001f9c: SLOAD
00001f9d: PUSH1 0x40
00001f9f: DUP1
00001fa0: MLOAD
00001fa1: PUSH4 0x199ed7c9
00001fa6: PUSH1 0xe1
00001fa8: SHL
00001fa9: DUP2
00001faa: MSTORE
00001fab: PUSH1 0x04
00001fad: DUP2
00001fae: ADD
00001faf: SWAP4
00001fb0: SWAP1
00001fb1: SWAP4
00001fb2: MSTORE
00001fb3: PUSH1 0x24
00001fb5: DUP4
00001fb6: ADD
00001fb7: MSTORE
00001fb8: SWAP1
00001fb9: SWAP3
00001fba: PUSH1 0x20
00001fbc: SWAP3
00001fbd: DUP5
00001fbe: SWAP3
00001fbf: PUSH1 0x50
00001fc1: SHR
00001fc2: PUSH1 0x01
00001fc4: PUSH1 0x01
00001fc6: PUSH1 0xa0
00001fc8: SHL
00001fc9: SUB
00001fca: AND
00001fcb: SWAP2
00001fcc: DUP4
00001fcd: SWAP2
00001fce: DUP3
00001fcf: SWAP2
00001fd0: PUSH2 0x1fde
00001fd3: SWAP2
00001fd4: PUSH1 0x44
00001fd6: DUP5
00001fd7: ADD
00001fd8: SWAP2
00001fd9: SWAP1
00001fda: PUSH2 0x1895
00001fdd: JUMP
00001fde: JUMPDEST
00001fdf: SUB
00001fe0: SWAP2
00001fe1: GAS
00001fe2: STATICCALL
00001fe3: SWAP1
00001fe4: DUP2
00001fe5: ISZERO
00001fe6: PUSH2 0x0618
00001fe9: JUMPI
00001fea: PUSH1 0x00
00001fec: SWAP2
00001fed: PUSH2 0x1f74
00001ff0: JUMPI
00001ff1: POP
00001ff2: SWAP1
00001ff3: JUMP
00001ff4: JUMPDEST
00001ff5: PUSH1 0x00
00001ff7: DUP1
00001ff8: MLOAD
00001ff9: PUSH1 0x20
00001ffb: PUSH2 0x2171
00001ffe: DUP4
00001fff: CODECOPY
00002000: DUP2
00002001: MLOAD
00002002: SWAP2
00002003: MSTORE
00002004: SLOAD
00002005: PUSH1 0x40
00002007: DUP1
00002008: MLOAD
00002009: PUSH4 0x9ea9bd59
0000200e: PUSH1 0xe0
00002010: SHL
00002011: DUP2
00002012: MSTORE
00002013: PUSH1 0x01
00002015: PUSH1 0x01
00002017: PUSH1 0xa0
00002019: SHL
0000201a: SUB
0000201b: SWAP4
0000201c: DUP5
0000201d: AND
0000201e: PUSH1 0x04
00002020: DUP3
00002021: ADD
00002022: MSTORE
00002023: PUSH1 0x24
00002025: DUP2
00002026: ADD
00002027: SWAP2
00002028: SWAP1
00002029: SWAP2
0000202a: MSTORE
0000202b: SWAP3
0000202c: PUSH1 0x20
0000202e: SWAP3
0000202f: DUP5
00002030: SWAP3
00002031: PUSH1 0x50
00002033: SHR
00002034: AND
00002035: SWAP1
00002036: DUP3
00002037: SWAP1
00002038: DUP2
00002039: SWAP1
0000203a: PUSH2 0x1e16
0000203d: SWAP1
0000203e: PUSH1 0x44
00002040: DUP4
00002041: ADD
00002042: SWAP1
00002043: PUSH2 0x1873
00002046: JUMP
00002047: JUMPDEST
00002048: PUSH32 0x88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874
00002069: PUSH1 0x40
0000206b: DUP1
0000206c: MLOAD
0000206d: CALLER
0000206e: DUP2
0000206f: MSTORE
00002070: CALLVALUE
00002071: PUSH1 0x20
00002073: DUP3
00002074: ADD
00002075: MSTORE
00002076: LOG1
00002077: JUMP
00002078: JUMPDEST
00002079: PUSH1 0x00
0000207b: DUP1
0000207c: MLOAD
0000207d: PUSH1 0x20
0000207f: PUSH2 0x2171
00002082: DUP4
00002083: CODECOPY
00002084: DUP2
00002085: MLOAD
00002086: SWAP2
00002087: MSTORE
00002088: DUP1
00002089: SLOAD
0000208a: PUSH32 0xffff0000000000000000000000000000000000000000ffffffffffffffffffff
000020ab: AND
000020ac: PUSH1 0x50
000020ae: SWAP3
000020af: SWAP1
000020b0: SWAP3
000020b1: SHL
000020b2: PUSH1 0x01
000020b4: PUSH1 0x50
000020b6: SHL
000020b7: PUSH1 0x01
000020b9: PUSH1 0xf0
000020bb: SHL
000020bc: SUB
000020bd: AND
000020be: SWAP2
000020bf: SWAP1
000020c0: SWAP2
000020c1: OR
000020c2: SWAP1
000020c3: SSTORE
000020c4: JUMP
000020c5: JUMPDEST
000020c6: DUP1
000020c7: PUSH6 0xffffffffffff
000020ce: SWAP2
000020cf: DUP3
000020d0: DUP2
000020d1: PUSH1 0xa0
000020d3: SHR
000020d4: AND
000020d5: SWAP3
000020d6: DUP4
000020d7: ISZERO
000020d8: PUSH1 0x01
000020da: EQ
000020db: PUSH2 0x20e6
000020de: JUMPI
000020df: JUMPDEST
000020e0: POP
000020e1: PUSH1 0xd0
000020e3: SHR
000020e4: SWAP3
000020e5: JUMP
000020e6: JUMPDEST
000020e7: SWAP3
000020e8: POP
000020e9: CODESIZE
000020ea: PUSH2 0x20df
000020ed: JUMP
000020ee: JUMPDEST
000020ef: DUP1
000020f0: DUP3
000020f1: XOR
000020f2: PUSH1 0x01
000020f4: PUSH1 0x01
000020f6: PUSH1 0xa0
000020f8: SHL
000020f9: SUB
000020fa: AND
000020fb: ISZERO
000020fc: PUSH1 0x01
000020fe: EQ
000020ff: PUSH2 0x2109
00002102: JUMPI
00002103: POP
00002104: POP
00002105: PUSH1 0x01
00002107: SWAP1
00002108: JUMP
00002109: JUMPDEST
0000210a: PUSH6 0xffffffffffff
00002111: PUSH1 0xa0
00002113: SHL
00002114: DUP2
00002115: DUP2
00002116: AND
00002117: SWAP3
00002118: PUSH6 0xffffffffffff
0000211f: PUSH1 0xa0
00002121: SHL
00002122: NOT
00002123: SWAP3
00002124: DUP4
00002125: AND
00002126: SWAP3
00002127: DUP2
00002128: AND
00002129: SWAP2
0000212a: SWAP1
0000212b: DUP5
0000212c: ISZERO
0000212d: PUSH2 0x2167
00002130: JUMPI
00002131: JUMPDEST
00002132: DUP2
00002133: AND
00002134: DUP1
00002135: ISZERO
00002136: PUSH2 0x2160
00002139: JUMPI
0000213a: JUMPDEST
0000213b: DUP5
0000213c: DUP2
0000213d: LT
0000213e: SWAP1
0000213f: DUP6
00002140: XOR
00002141: MUL
00002142: DUP1
00002143: DUP6
00002144: XOR
00002145: SWAP5
00002146: EQ
00002147: PUSH2 0x2158
0000214a: JUMPI
0000214b: JUMPDEST
0000214c: POP
0000214d: DUP2
0000214e: DUP2
0000214f: GT
00002150: SWAP1
00002151: DUP3
00002152: XOR
00002153: MUL
00002154: XOR
00002155: OR
00002156: SWAP1
00002157: JUMP
00002158: JUMPDEST
00002159: SWAP3
0000215a: POP
0000215b: CODESIZE
0000215c: PUSH2 0x214b
0000215f: JUMP
00002160: JUMPDEST
00002161: POP
00002162: DUP1
00002163: PUSH2 0x213a
00002166: JUMP
00002167: JUMPDEST
00002168: SWAP4
00002169: POP
0000216a: DUP1
0000216b: SWAP4
0000216c: PUSH2 0x2131
0000216f: JUMP
00002170: INVALID
00002171: NUMBER
00002172: SWAP16
00002173: INVALID
00002174: PUSH30

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: 0x48d693b4d93a5087c4e45b5e9d8582c68d5eb2c682bc53af1c424854926a1724
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x48d693b4d93a5087c4e45b5e9d8582c68d5eb2c682bc53af1c424854926a1724",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0b3dc354",
            "selector": "0x0b3dc354",
            "calldata_variants": [
                "0x0b3dc354",
                "0x0b3dc3540000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1626ba7e",
            "selector": "0x1626ba7e",
            "calldata_variants": [
                "0x1626ba7e",
                "0x1626ba7e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x29f8b174",
            "selector": "0x29f8b174",
            "calldata_variants": [
                "0x29f8b174",
                "0x29f8b1740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x333daf92",
            "selector": "0x333daf92",
            "calldata_variants": [
                "0x333daf92",
                "0x333daf920000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x34fcd5be",
            "selector": "0x34fcd5be",
            "calldata_variants": [
                "0x34fcd5be",
                "0x34fcd5be0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3635,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 4534,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x6d36ba0d255c1a18ab016c4403d1405fac2492ff65f1195dc1d497893f755bd6
call_targets: 0xd3f582f6b4814e989ee8e96bc3175320b5a540ab
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6d36ba0d255c1a18ab016c4403d1405fac2492ff65f1195dc1d497893f755bd6",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd3f582f6b4814e989ee8e96bc3175320b5a540ab"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0b3dc354",
            "selector": "0x0b3dc354",
            "calldata_variants": [
                "0x0b3dc354",
                "0x0b3dc3540000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1626ba7e",
            "selector": "0x1626ba7e",
            "calldata_variants": [
                "0x1626ba7e",
                "0x1626ba7e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x29f8b174",
            "selector": "0x29f8b174",
            "calldata_variants": [
                "0x29f8b174",
                "0x29f8b1740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x333daf92",
            "selector": "0x333daf92",
            "calldata_variants": [
                "0x333daf92",
                "0x333daf920000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x34fcd5be",
            "selector": "0x34fcd5be",
            "calldata_variants": [
                "0x34fcd5be",
                "0x34fcd5be0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1472,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2744,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3113,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 10,
    "guards_detected": [],
    "untrusted_call_count": 10
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x6d36ba0d255c1a18ab016c4403d1405fac2492ff65f1195dc1d497893f755bd6
call_targets: 0xd3f582f6b4814e989ee8e96bc3175320b5a540ab
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6d36ba0d255c1a18ab016c4403d1405fac2492ff65f1195dc1d497893f755bd6",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd3f582f6b4814e989ee8e96bc3175320b5a540ab"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0b3dc354",
            "selector": "0x0b3dc354",
            "calldata_variants": [
                "0x0b3dc354",
                "0x0b3dc3540000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1626ba7e",
            "selector": "0x1626ba7e",
            "calldata_variants": [
                "0x1626ba7e",
                "0x1626ba7e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x29f8b174",
            "selector": "0x29f8b174",
            "calldata_variants": [
                "0x29f8b174",
                "0x29f8b1740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x333daf92",
            "selector": "0x333daf92",
            "calldata_variants": [
                "0x333daf92",
                "0x333daf920000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x34fcd5be",
            "selector": "0x34fcd5be",
            "calldata_variants": [
                "0x34fcd5be",
                "0x34fcd5be0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1472,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2744,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3113,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 10,
    "guards_detected": []
}
high other codex Computed DELEGATECALL targets reachable (potential arbitrary code execution in caller context) 85 no
view
evidence_json
{
    "evidence": "detector_findings[0] reports untrusted_delegatecall_count=2 with computed targets and guards_detected=[]; examples at pc 3635 and pc 4534.",
    "locations": [
        "pc:0x0e33",
        "pc:0x11b6"
    ],
    "recommendation": "Restrict DELEGATECALL targets to a trusted, immutable allowlist (or verified codehash) and enforce strong access control/signature checks before any delegatecall path. Consider removing delegatecall if not strictly required.",
    "exploit_scenario": "If an attacker can influence the delegatecall target (directly or via storage), they can execute arbitrary code in the contract\u2019s storage context, potentially modifying critical state or draining funds. This risk is severe in UUPS/modular designs if access control or target validation is missing or bypassed."
}
medium reentrancy codex Untrusted external CALLs with ETH value possible 75 no
view
evidence_json
{
    "evidence": "detector_findings[1] and [2] show untrusted_call_count=10 with computed targets and value_expression_category='computed', guards_detected=[]; ETH value transfer possible at these CALL sites.",
    "locations": [
        "pc:0x05c0",
        "pc:0x0ab8",
        "pc:0x0c29",
        "pc:0x100b",
        "pc:0x1292",
        "pc:0x16bc",
        "pc:0x16fd",
        "pc:0x1771",
        "pc:0x1b05",
        "pc:0x1f62"
    ],
    "recommendation": "Ensure only authorized callers can trigger value-bearing external calls, validate call targets, and apply checks-effects-interactions or a reentrancy guard around sensitive state changes.",
    "exploit_scenario": "If user-controlled data can reach these CALLs, an attacker could redirect ETH transfers to arbitrary addresses or reenter through the callee, potentially breaking accounting invariants if state updates happen after the call. Bytecode evidence does not confirm any reentrancy guard or access control on these paths."
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 2
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 14
}