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

Analysis Run

019c0ea9-07df-7364-9b5a-b680cca460f9

complete
Chain ID
1
Address
Block Number
Created
Fri, Jan 30, 2026 11:28 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
SELFDESTRUCT present
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
41697 artifact.fetch complete 1 / 3 2 months ago
41698 proxy.resolve complete 1 / 3 2 months ago
41699 tool.cast_disasm complete 1 / 3 2 months ago
41700 analysis.bundle complete 1 / 3 2 months ago
41701 capability.graph complete 1 / 3 2 months ago
41702 detector.run complete 1 / 3 2 months ago
41703 validation.fork complete 1 / 3 2 months ago
42286 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 shows a computed external CALL (with potential ETH value) and a reachable SELFDESTRUCT. Both are flagged by detectors but the exact reachability/guarding is uncertain from bytecode-only evidence.
View stdout
{"no_findings":false,"summary":"Bytecode shows a computed external CALL (with potential ETH value) and a reachable SELFDESTRUCT. Both are flagged by detectors but the exact reachability/guarding is uncertain from bytecode-only evidence.","findings":[{"severity":"low","category":"reentrancy","title":"Computed external CALL before apparent state update (reentrancy/unsafe call risk if target is attacker-controlled)","exploit_scenario":"If the CALL target/value is derived from user input or mutable storage, an attacker could cause the contract to call out to a malicious contract before state is updated. That external contract could reenter and exploit inconsistent state. Validation hints the target may be constant (self), but it is not confirmed, so this remains uncertain.","recommendation":"Confirm the CALL target/source at pc:0x1eeb. If user-controlled, move state updates before the call (checks-effects-interactions), add a reentrancy guard, and/or restrict allowed call targets. If the call is intended to self, prefer internal calls to avoid external reentrancy paths.","evidence":"CALL at pc 7915 with computed target/value; SSTORE occurs later at pc 7974, suggesting effects after interaction. Returndata checking is unknown.","locations":["pc:0x1eeb","pc:0x1f26"]},{"severity":"medium","category":"other","title":"SELFDESTRUCT present and potentially reachable","exploit_scenario":"If a publicly reachable path can hit SELFDESTRUCT, an attacker could destroy the contract and force-send its balance to a chosen recipient. Guard detection shows msg.sender == 0xffff... (likely heuristic), so access control is uncertain.","recommendation":"Verify whether the SELFDESTRUCT path is reachable and guarded. If not strictly necessary, remove it or gate it behind strong access control (e.g., immutable admin).","evidence":"SELFDESTRUCT opcode at pc 8717; detector reports selfdestruct_count=1 and reachable sink (unvalidated).","locations":["pc:0x220d"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-m8n976t2
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0ef7-8da4-7363-9583-0611686e7dc9
--------
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-m8n976t2 succeeded in 7ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-m8n976t2 succeeded in 11ms:
{
  "analysis_artifact": {
    "address": "0xeb618e440fd758b9bc2946ccc55ff5390f441b5b",
    "artifact_hash": "0x626f32374c9b345736e4255d5273c16c2610cef77d188fdfcfdeb3ebe33a4b3e",
    "artifact_json": {
      "auth": {
        "guards": [
          {
            "pc": 2436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          },
          {
            "pc": 3808,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          },
          {
            "pc": 5929,
            "type": "msg_sender_eq_const",
exec
/bin/bash -lc 'rg -n "SELFDESTRUCT|selfdestruct|7915|callsite" BYTECODE_BUNDLE.json' in /tmp/codex-m8n976t2 succeeded in 17ms:
1079:          "hash": "0x977466dca7d2971df79158f45c20715d366135982dc380b45753764a528e1e0c",
4648:          "hash": "0x343e6e592f94dc25fb09cdd34b7248355637915a6656f8f4e4afd3363dd274c6",
7545:            "SELFDESTRUCT"
7558:      "callsites": [
7561:          "pc": 7915,
9669:            "selfdestruct": 1,
10064:            "selfdestruct": 1,
10459:            "selfdestruct": 1,
10854:            "selfdestruct": 1,
11249:            "selfdestruct": 1,
11644:            "selfdestruct": 1,
12039:            "selfdestruct": 1,
12434:            "selfdestruct": 1,
12829:            "selfdestruct": 1,
13224:            "selfdestruct": 1,
13619:            "selfdestruct": 1,
14014:            "selfdestruct": 1,
14409:            "selfdestruct": 1,
14804:            "selfdestruct": 1,
15199:            "selfdestruct": 1,
exec
/bin/bash -lc "sed -n '7520,7605p' BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 7ms:
        },
        {
          "end_pc": 8705,
          "hash": "0x200e639343c94d4440eb48a5b9c0e59646d12318a555fd16ae82187968e7e366",
          "opcodes": [
            "STOP"
          ],
          "start_pc": 8705
        },
        {
          "end_pc": 8716,
          "hash": "0x501f7caab0dd0406d857bbe1103a3b66e2e6fa9973191791c842b3c886b10b91",
          "opcodes": [
            "OP_A1",
            "PUSH6",
            "SHA3",
            "OP_ED",
            "INVALID"
          ],
          "start_pc": 8706
exec
/bin/bash -lc "sed -n '24670,24730p' BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 21ms:
        {
          "end_pc": 8716,
          "hash": "0x501f7caab0dd0406d857bbe1103a3b66e2e6fa9973191791c842b3c886b10b91",
          "id": "bb:8706",
          "start_pc": 8706,
          "type": "basic_block"
        },
        {
          "end_pc": 8717,
          "hash": "0x80b9c4f60f238411c0beb405371529abc54955954bb6c39d5fd7854906a0351e",
          "id": "bb:8717",
          "start_pc": 8717,
          "type": "basic_block"
        },
        {
          "end_pc": 8718,
          "hash": "0xd72c6717b3255c123f04e6c7c835622624fd897d39bdcc8ded68580865cf7ee9",
          "id": "bb:8718",
          "start_pc": 8718,
          "type": "basic_block"
exec
/bin/bash -lc 'rg -n "start_pc": 7893 -n BYTECODE_BUNDLE.json' in /tmp/codex-m8n976t2 exited 2 in 9ms:
rg: 7893: No such file or directory (os error 2)
exec
/bin/bash -lc 'rg -n "start_pc": 7893 BYTECODE_BUNDLE.json' in /tmp/codex-m8n976t2 exited 2 in 14ms:
rg: 7893: No such file or directory (os error 2)
exec
/bin/bash -lc "rg -n \"start_pc\\\": 7893\" BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 7ms:
6812:          "start_pc": 7893
24436:          "start_pc": 7893,
exec
/bin/bash -lc "sed -n '6790,6860p' BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 7ms:
            "POP",
            "PUSH1",
            "PUSH1",
            "MLOAD",
            "OP_80",
            "OP_83",
            "SUB",
            "OP_81",
            "OP_85",
            "OP_87",
            "PUSH2",
            "GAS",
            "SUB",
            "CALL",
            "OP_92",
            "POP",
            "POP",
            "POP",
            "ISZERO",
            "PUSH2",
exec
/bin/bash -lc "sed -n '6860,6935p' BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 9ms:
            "SSTORE",
            "POP"
          ],
          "start_pc": 7974
        },
        {
          "end_pc": 8049,
          "hash": "0x4884036b4c3663337890b6cc608c1a10d1f1071ad7126b933ded600ff6644124",
          "opcodes": [
            "JUMPDEST",
            "OP_85",
            "PUSH32",
            "PUSH1",
            "MLOAD",
            "PUSH1",
            "MLOAD",
            "OP_80",
            "OP_91",
            "SUB",
            "OP_90",
exec
/bin/bash -lc "sed -n '6745,6825p' BYTECODE_BUNDLE.json" in /tmp/codex-m8n976t2 succeeded in 8ms:
          "hash": "0x635d5f7903a5e2e095e4b645519e11c2d6b038138adf67c20a3ee053153e0733",
          "opcodes": [
            "JUMPDEST",
            "OP_81",
            "SLOAD",
            "OP_81",
            "MSTORE",
            "OP_90",
            "PUSH1",
            "ADD",
            "OP_90",
            "PUSH1",
            "ADD",
            "OP_80",
            "OP_83",
            "GT",
            "PUSH2",
            "JUMPI"
          ],
          "start_pc": 7864
codex
{"no_findings":false,"summary":"Bytecode shows a computed external CALL (with potential ETH value) and a reachable SELFDESTRUCT. Both are flagged by detectors but the exact reachability/guarding is uncertain from bytecode-only evidence.","findings":[{"severity":"low","category":"reentrancy","title":"Computed external CALL before apparent state update (reentrancy/unsafe call risk if target is attacker-controlled)","exploit_scenario":"If the CALL target/value is derived from user input or mutable storage, an attacker could cause the contract to call out to a malicious contract before state is updated. That external contract could reenter and exploit inconsistent state. Validation hints the target may be constant (self), but it is not confirmed, so this remains uncertain.","recommendation":"Confirm the CALL target/source at pc:0x1eeb. If user-controlled, move state updates before the call (checks-effects-interactions), add a reentrancy guard, and/or restrict allowed call targets. If the call is intended to self, prefer internal calls to avoid external reentrancy paths.","evidence":"CALL at pc 7915 with computed target/value; SSTORE occurs later at pc 7974, suggesting effects after interaction. Returndata checking is unknown.","locations":["pc:0x1eeb","pc:0x1f26"]},{"severity":"medium","category":"other","title":"SELFDESTRUCT present and potentially reachable","exploit_scenario":"If a publicly reachable path can hit SELFDESTRUCT, an attacker could destroy the contract and force-send its balance to a chosen recipient. Guard detection shows msg.sender == 0xffff... (likely heuristic), so access control is uncertain.","recommendation":"Verify whether the SELFDESTRUCT path is reachable and guarded. If not strictly necessary, remove it or gate it behind strong access control (e.g., immutable admin).","evidence":"SELFDESTRUCT opcode at pc 8717; detector reports selfdestruct_count=1 and reachable sink (unvalidated).","locations":["pc:0x220d"]}]}
tokens used
31,364
Metadata
{
    "codex": {
        "ran_at": "2026-01-30T12:55:06.043565+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 17500,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode shows a computed external CALL (with potential ETH value) and a reachable SELFDESTRUCT. Both are flagged by detectors but the exact reachability/guarding is uncertain from bytecode-only evidence.",
    "raw_final": {
        "summary": "Bytecode shows a computed external CALL (with potential ETH value) and a reachable SELFDESTRUCT. Both are flagged by detectors but the exact reachability/guarding is uncertain from bytecode-only evidence.",
        "findings": [
            {
                "title": "Computed external CALL before apparent state update (reentrancy/unsafe call risk if target is attacker-controlled)",
                "category": "reentrancy",
                "evidence": "CALL at pc 7915 with computed target/value; SSTORE occurs later at pc 7974, suggesting effects after interaction. Returndata checking is unknown.",
                "severity": "low",
                "locations": [
                    "pc:0x1eeb",
                    "pc:0x1f26"
                ],
                "recommendation": "Confirm the CALL target/source at pc:0x1eeb. If user-controlled, move state updates before the call (checks-effects-interactions), add a reentrancy guard, and/or restrict allowed call targets. If the call is intended to self, prefer internal calls to avoid external reentrancy paths.",
                "exploit_scenario": "If the CALL target/value is derived from user input or mutable storage, an attacker could cause the contract to call out to a malicious contract before state is updated. That external contract could reenter and exploit inconsistent state. Validation hints the target may be constant (self), but it is not confirmed, so this remains uncertain."
            },
            {
                "title": "SELFDESTRUCT present and potentially reachable",
                "category": "other",
                "evidence": "SELFDESTRUCT opcode at pc 8717; detector reports selfdestruct_count=1 and reachable sink (unvalidated).",
                "severity": "medium",
                "locations": [
                    "pc:0x220d"
                ],
                "recommendation": "Verify whether the SELFDESTRUCT path is reachable and guarded. If not strictly necessary, remove it or gate it behind strong access control (e.g., immutable admin).",
                "exploit_scenario": "If a publicly reachable path can hit SELFDESTRUCT, an attacker could destroy the contract and force-send its balance to a chosen recipient. Guard detection shows msg.sender == 0xffff... (likely heuristic), so access control is uncertain."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
1
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
0
Total opcodes
4908
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x013e
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002e: SWAP1
0000002f: DIV
00000030: PUSH4 0xffffffff
00000035: AND
00000036: DUP1
00000037: PUSH4 0x025e7c27
0000003c: EQ
0000003d: PUSH2 0x0198
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0x120da4df
00000047: EQ
00000048: PUSH2 0x01fb
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0x173825d9
00000052: EQ
00000053: PUSH2 0x0239
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0x20ea8d86
0000005d: EQ
0000005e: PUSH2 0x0272
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0x2f54bf6e
00000068: EQ
00000069: PUSH2 0x0295
0000006c: JUMPI
0000006d: DUP1
0000006e: PUSH4 0x3411c81c
00000073: EQ
00000074: PUSH2 0x02e6
00000077: JUMPI
00000078: DUP1
00000079: PUSH4 0x54741525
0000007e: EQ
0000007f: PUSH2 0x0340
00000082: JUMPI
00000083: DUP1
00000084: PUSH4 0x68d6b997
00000089: EQ
0000008a: PUSH2 0x0384
0000008d: JUMPI
0000008e: DUP1
0000008f: PUSH4 0x7065cb48
00000094: EQ
00000095: PUSH2 0x03bf
00000098: JUMPI
00000099: DUP1
0000009a: PUSH4 0x784547a7
0000009f: EQ
000000a0: PUSH2 0x03f8
000000a3: JUMPI
000000a4: DUP1
000000a5: PUSH4 0x7d1d8596
000000aa: EQ
000000ab: PUSH2 0x0433
000000ae: JUMPI
000000af: DUP1
000000b0: PUSH4 0x8b51d13f
000000b5: EQ
000000b6: PUSH2 0x0466
000000b9: JUMPI
000000ba: DUP1
000000bb: PUSH4 0x9ace38c2
000000c0: EQ
000000c1: PUSH2 0x049d
000000c4: JUMPI
000000c5: DUP1
000000c6: PUSH4 0xa0e67e2b
000000cb: EQ
000000cc: PUSH2 0x05a2
000000cf: JUMPI
000000d0: DUP1
000000d1: PUSH4 0xa8abe69a
000000d6: EQ
000000d7: PUSH2 0x060c
000000da: JUMPI
000000db: DUP1
000000dc: PUSH4 0xb5dc40c3
000000e1: EQ
000000e2: PUSH2 0x06a3
000000e5: JUMPI
000000e6: DUP1
000000e7: PUSH4 0xb77bf600
000000ec: EQ
000000ed: PUSH2 0x071b
000000f0: JUMPI
000000f1: DUP1
000000f2: PUSH4 0xba51a6df
000000f7: EQ
000000f8: PUSH2 0x0744
000000fb: JUMPI
000000fc: DUP1
000000fd: PUSH4 0xc01a8c84
00000102: EQ
00000103: PUSH2 0x0767
00000106: JUMPI
00000107: DUP1
00000108: PUSH4 0xc6427474
0000010d: EQ
0000010e: PUSH2 0x078a
00000111: JUMPI
00000112: DUP1
00000113: PUSH4 0xd74f8edd
00000118: EQ
00000119: PUSH2 0x0823
0000011c: JUMPI
0000011d: DUP1
0000011e: PUSH4 0xdc8452cd
00000123: EQ
00000124: PUSH2 0x084c
00000127: JUMPI
00000128: DUP1
00000129: PUSH4 0xe20056e6
0000012e: EQ
0000012f: PUSH2 0x0875
00000132: JUMPI
00000133: DUP1
00000134: PUSH4 0xee22610b
00000139: EQ
0000013a: PUSH2 0x08cd
0000013d: JUMPI
0000013e: JUMPDEST
0000013f: PUSH1 0x00
00000141: CALLVALUE
00000142: GT
00000143: ISZERO
00000144: PUSH2 0x0196
00000147: JUMPI
00000148: CALLER
00000149: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000015e: AND
0000015f: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
00000180: CALLVALUE
00000181: PUSH1 0x40
00000183: MLOAD
00000184: DUP1
00000185: DUP3
00000186: DUP2
00000187: MSTORE
00000188: PUSH1 0x20
0000018a: ADD
0000018b: SWAP2
0000018c: POP
0000018d: POP
0000018e: PUSH1 0x40
00000190: MLOAD
00000191: DUP1
00000192: SWAP2
00000193: SUB
00000194: SWAP1
00000195: LOG2
00000196: JUMPDEST
00000197: STOP
00000198: JUMPDEST
00000199: CALLVALUE
0000019a: ISZERO
0000019b: PUSH2 0x01a3
0000019e: JUMPI
0000019f: PUSH1 0x00
000001a1: DUP1
000001a2: REVERT
000001a3: JUMPDEST
000001a4: PUSH2 0x01b9
000001a7: PUSH1 0x04
000001a9: DUP1
000001aa: DUP1
000001ab: CALLDATALOAD
000001ac: SWAP1
000001ad: PUSH1 0x20
000001af: ADD
000001b0: SWAP1
000001b1: SWAP2
000001b2: SWAP1
000001b3: POP
000001b4: POP
000001b5: PUSH2 0x08f0
000001b8: JUMP
000001b9: JUMPDEST
000001ba: PUSH1 0x40
000001bc: MLOAD
000001bd: DUP1
000001be: DUP3
000001bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001d4: AND
000001d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001ea: AND
000001eb: DUP2
000001ec: MSTORE
000001ed: PUSH1 0x20
000001ef: ADD
000001f0: SWAP2
000001f1: POP
000001f2: POP
000001f3: PUSH1 0x40
000001f5: MLOAD
000001f6: DUP1
000001f7: SWAP2
000001f8: SUB
000001f9: SWAP1
000001fa: RETURN
000001fb: JUMPDEST
000001fc: CALLVALUE
000001fd: ISZERO
000001fe: PUSH2 0x0206
00000201: JUMPI
00000202: PUSH1 0x00
00000204: DUP1
00000205: REVERT
00000206: JUMPDEST
00000207: PUSH2 0x021c
0000020a: PUSH1 0x04
0000020c: DUP1
0000020d: DUP1
0000020e: CALLDATALOAD
0000020f: SWAP1
00000210: PUSH1 0x20
00000212: ADD
00000213: SWAP1
00000214: SWAP2
00000215: SWAP1
00000216: POP
00000217: POP
00000218: PUSH2 0x092f
0000021b: JUMP
0000021c: JUMPDEST
0000021d: PUSH1 0x40
0000021f: MLOAD
00000220: DUP1
00000221: DUP4
00000222: DUP2
00000223: MSTORE
00000224: PUSH1 0x20
00000226: ADD
00000227: DUP3
00000228: DUP2
00000229: MSTORE
0000022a: PUSH1 0x20
0000022c: ADD
0000022d: SWAP3
0000022e: POP
0000022f: POP
00000230: POP
00000231: PUSH1 0x40
00000233: MLOAD
00000234: DUP1
00000235: SWAP2
00000236: SUB
00000237: SWAP1
00000238: RETURN
00000239: JUMPDEST
0000023a: CALLVALUE
0000023b: ISZERO
0000023c: PUSH2 0x0244
0000023f: JUMPI
00000240: PUSH1 0x00
00000242: DUP1
00000243: REVERT
00000244: JUMPDEST
00000245: PUSH2 0x0270
00000248: PUSH1 0x04
0000024a: DUP1
0000024b: DUP1
0000024c: CALLDATALOAD
0000024d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000262: AND
00000263: SWAP1
00000264: PUSH1 0x20
00000266: ADD
00000267: SWAP1
00000268: SWAP2
00000269: SWAP1
0000026a: POP
0000026b: POP
0000026c: PUSH2 0x096a
0000026f: JUMP
00000270: JUMPDEST
00000271: STOP
00000272: JUMPDEST
00000273: CALLVALUE
00000274: ISZERO
00000275: PUSH2 0x027d
00000278: JUMPI
00000279: PUSH1 0x00
0000027b: DUP1
0000027c: REVERT
0000027d: JUMPDEST
0000027e: PUSH2 0x0293
00000281: PUSH1 0x04
00000283: DUP1
00000284: DUP1
00000285: CALLDATALOAD
00000286: SWAP1
00000287: PUSH1 0x20
00000289: ADD
0000028a: SWAP1
0000028b: SWAP2
0000028c: SWAP1
0000028d: POP
0000028e: POP
0000028f: PUSH2 0x0c06
00000292: JUMP
00000293: JUMPDEST
00000294: STOP
00000295: JUMPDEST
00000296: CALLVALUE
00000297: ISZERO
00000298: PUSH2 0x02a0
0000029b: JUMPI
0000029c: PUSH1 0x00
0000029e: DUP1
0000029f: REVERT
000002a0: JUMPDEST
000002a1: PUSH2 0x02cc
000002a4: PUSH1 0x04
000002a6: DUP1
000002a7: DUP1
000002a8: CALLDATALOAD
000002a9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002be: AND
000002bf: SWAP1
000002c0: PUSH1 0x20
000002c2: ADD
000002c3: SWAP1
000002c4: SWAP2
000002c5: SWAP1
000002c6: POP
000002c7: POP
000002c8: PUSH2 0x0dae
000002cb: JUMP
000002cc: JUMPDEST
000002cd: PUSH1 0x40
000002cf: MLOAD
000002d0: DUP1
000002d1: DUP3
000002d2: ISZERO
000002d3: ISZERO
000002d4: ISZERO
000002d5: ISZERO
000002d6: DUP2
000002d7: MSTORE
000002d8: PUSH1 0x20
000002da: ADD
000002db: SWAP2
000002dc: POP
000002dd: POP
000002de: PUSH1 0x40
000002e0: MLOAD
000002e1: DUP1
000002e2: SWAP2
000002e3: SUB
000002e4: SWAP1
000002e5: RETURN
000002e6: JUMPDEST
000002e7: CALLVALUE
000002e8: ISZERO
000002e9: PUSH2 0x02f1
000002ec: JUMPI
000002ed: PUSH1 0x00
000002ef: DUP1
000002f0: REVERT
000002f1: JUMPDEST
000002f2: PUSH2 0x0326
000002f5: PUSH1 0x04
000002f7: DUP1
000002f8: DUP1
000002f9: CALLDATALOAD
000002fa: SWAP1
000002fb: PUSH1 0x20
000002fd: ADD
000002fe: SWAP1
000002ff: SWAP2
00000300: SWAP1
00000301: DUP1
00000302: CALLDATALOAD
00000303: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000318: AND
00000319: SWAP1
0000031a: PUSH1 0x20
0000031c: ADD
0000031d: SWAP1
0000031e: SWAP2
0000031f: SWAP1
00000320: POP
00000321: POP
00000322: PUSH2 0x0dce
00000325: JUMP
00000326: JUMPDEST
00000327: PUSH1 0x40
00000329: MLOAD
0000032a: DUP1
0000032b: DUP3
0000032c: ISZERO
0000032d: ISZERO
0000032e: ISZERO
0000032f: ISZERO
00000330: DUP2
00000331: MSTORE
00000332: PUSH1 0x20
00000334: ADD
00000335: SWAP2
00000336: POP
00000337: POP
00000338: PUSH1 0x40
0000033a: MLOAD
0000033b: DUP1
0000033c: SWAP2
0000033d: SUB
0000033e: SWAP1
0000033f: RETURN
00000340: JUMPDEST
00000341: CALLVALUE
00000342: ISZERO
00000343: PUSH2 0x034b
00000346: JUMPI
00000347: PUSH1 0x00
00000349: DUP1
0000034a: REVERT
0000034b: JUMPDEST
0000034c: PUSH2 0x036e
0000034f: PUSH1 0x04
00000351: DUP1
00000352: DUP1
00000353: CALLDATALOAD
00000354: ISZERO
00000355: ISZERO
00000356: SWAP1
00000357: PUSH1 0x20
00000359: ADD
0000035a: SWAP1
0000035b: SWAP2
0000035c: SWAP1
0000035d: DUP1
0000035e: CALLDATALOAD
0000035f: ISZERO
00000360: ISZERO
00000361: SWAP1
00000362: PUSH1 0x20
00000364: ADD
00000365: SWAP1
00000366: SWAP2
00000367: SWAP1
00000368: POP
00000369: POP
0000036a: PUSH2 0x0dfd
0000036d: JUMP
0000036e: JUMPDEST
0000036f: PUSH1 0x40
00000371: MLOAD
00000372: DUP1
00000373: DUP3
00000374: DUP2
00000375: MSTORE
00000376: PUSH1 0x20
00000378: ADD
00000379: SWAP2
0000037a: POP
0000037b: POP
0000037c: PUSH1 0x40
0000037e: MLOAD
0000037f: DUP1
00000380: SWAP2
00000381: SUB
00000382: SWAP1
00000383: RETURN
00000384: JUMPDEST
00000385: CALLVALUE
00000386: ISZERO
00000387: PUSH2 0x038f
0000038a: JUMPI
0000038b: PUSH1 0x00
0000038d: DUP1
0000038e: REVERT
0000038f: JUMPDEST
00000390: PUSH2 0x03a5
00000393: PUSH1 0x04
00000395: DUP1
00000396: DUP1
00000397: CALLDATALOAD
00000398: SWAP1
00000399: PUSH1 0x20
0000039b: ADD
0000039c: SWAP1
0000039d: SWAP2
0000039e: SWAP1
0000039f: POP
000003a0: POP
000003a1: PUSH2 0x0e8f
000003a4: JUMP
000003a5: JUMPDEST
000003a6: PUSH1 0x40
000003a8: MLOAD
000003a9: DUP1
000003aa: DUP3
000003ab: ISZERO
000003ac: ISZERO
000003ad: ISZERO
000003ae: ISZERO
000003af: DUP2
000003b0: MSTORE
000003b1: PUSH1 0x20
000003b3: ADD
000003b4: SWAP2
000003b5: POP
000003b6: POP
000003b7: PUSH1 0x40
000003b9: MLOAD
000003ba: DUP1
000003bb: SWAP2
000003bc: SUB
000003bd: SWAP1
000003be: RETURN
000003bf: JUMPDEST
000003c0: CALLVALUE
000003c1: ISZERO
000003c2: PUSH2 0x03ca
000003c5: JUMPI
000003c6: PUSH1 0x00
000003c8: DUP1
000003c9: REVERT
000003ca: JUMPDEST
000003cb: PUSH2 0x03f6
000003ce: PUSH1 0x04
000003d0: DUP1
000003d1: DUP1
000003d2: CALLDATALOAD
000003d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003e8: AND
000003e9: SWAP1
000003ea: PUSH1 0x20
000003ec: ADD
000003ed: SWAP1
000003ee: SWAP2
000003ef: SWAP1
000003f0: POP
000003f1: POP
000003f2: PUSH2 0x0ec8
000003f5: JUMP
000003f6: JUMPDEST
000003f7: STOP
000003f8: JUMPDEST
000003f9: CALLVALUE
000003fa: ISZERO
000003fb: PUSH2 0x0403
000003fe: JUMPI
000003ff: PUSH1 0x00
00000401: DUP1
00000402: REVERT
00000403: JUMPDEST
00000404: PUSH2 0x0419
00000407: PUSH1 0x04
00000409: DUP1
0000040a: DUP1
0000040b: CALLDATALOAD
0000040c: SWAP1
0000040d: PUSH1 0x20
0000040f: ADD
00000410: SWAP1
00000411: SWAP2
00000412: SWAP1
00000413: POP
00000414: POP
00000415: PUSH2 0x10c8
00000418: JUMP
00000419: JUMPDEST
0000041a: PUSH1 0x40
0000041c: MLOAD
0000041d: DUP1
0000041e: DUP3
0000041f: ISZERO
00000420: ISZERO
00000421: ISZERO
00000422: ISZERO
00000423: DUP2
00000424: MSTORE
00000425: PUSH1 0x20
00000427: ADD
00000428: SWAP2
00000429: POP
0000042a: POP
0000042b: PUSH1 0x40
0000042d: MLOAD
0000042e: DUP1
0000042f: SWAP2
00000430: SUB
00000431: SWAP1
00000432: RETURN
00000433: JUMPDEST
00000434: CALLVALUE
00000435: ISZERO
00000436: PUSH2 0x043e
00000439: JUMPI
0000043a: PUSH1 0x00
0000043c: DUP1
0000043d: REVERT
0000043e: JUMPDEST
0000043f: PUSH2 0x0446
00000442: PUSH2 0x11ae
00000445: JUMP
00000446: JUMPDEST
00000447: PUSH1 0x40
00000449: MLOAD
0000044a: DUP1
0000044b: DUP3
0000044c: PUSH3 0xffffff
00000450: AND
00000451: PUSH3 0xffffff
00000455: AND
00000456: DUP2
00000457: MSTORE
00000458: PUSH1 0x20
0000045a: ADD
0000045b: SWAP2
0000045c: POP
0000045d: POP
0000045e: PUSH1 0x40
00000460: MLOAD
00000461: DUP1
00000462: SWAP2
00000463: SUB
00000464: SWAP1
00000465: RETURN
00000466: JUMPDEST
00000467: CALLVALUE
00000468: ISZERO
00000469: PUSH2 0x0471
0000046c: JUMPI
0000046d: PUSH1 0x00
0000046f: DUP1
00000470: REVERT
00000471: JUMPDEST
00000472: PUSH2 0x0487
00000475: PUSH1 0x04
00000477: DUP1
00000478: DUP1
00000479: CALLDATALOAD
0000047a: SWAP1
0000047b: PUSH1 0x20
0000047d: ADD
0000047e: SWAP1
0000047f: SWAP2
00000480: SWAP1
00000481: POP
00000482: POP
00000483: PUSH2 0x11c3
00000486: JUMP
00000487: JUMPDEST
00000488: PUSH1 0x40
0000048a: MLOAD
0000048b: DUP1
0000048c: DUP3
0000048d: DUP2
0000048e: MSTORE
0000048f: PUSH1 0x20
00000491: ADD
00000492: SWAP2
00000493: POP
00000494: POP
00000495: PUSH1 0x40
00000497: MLOAD
00000498: DUP1
00000499: SWAP2
0000049a: SUB
0000049b: SWAP1
0000049c: RETURN
0000049d: JUMPDEST
0000049e: CALLVALUE
0000049f: ISZERO
000004a0: PUSH2 0x04a8
000004a3: JUMPI
000004a4: PUSH1 0x00
000004a6: DUP1
000004a7: REVERT
000004a8: JUMPDEST
000004a9: PUSH2 0x04be
000004ac: PUSH1 0x04
000004ae: DUP1
000004af: DUP1
000004b0: CALLDATALOAD
000004b1: SWAP1
000004b2: PUSH1 0x20
000004b4: ADD
000004b5: SWAP1
000004b6: SWAP2
000004b7: SWAP1
000004b8: POP
000004b9: POP
000004ba: PUSH2 0x128f
000004bd: JUMP
000004be: JUMPDEST
000004bf: PUSH1 0x40
000004c1: MLOAD
000004c2: DUP1
000004c3: DUP7
000004c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004d9: AND
000004da: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004ef: AND
000004f0: DUP2
000004f1: MSTORE
000004f2: PUSH1 0x20
000004f4: ADD
000004f5: DUP6
000004f6: DUP2
000004f7: MSTORE
000004f8: PUSH1 0x20
000004fa: ADD
000004fb: DUP1
000004fc: PUSH1 0x20
000004fe: ADD
000004ff: DUP5
00000500: ISZERO
00000501: ISZERO
00000502: ISZERO
00000503: ISZERO
00000504: DUP2
00000505: MSTORE
00000506: PUSH1 0x20
00000508: ADD
00000509: DUP4
0000050a: DUP2
0000050b: MSTORE
0000050c: PUSH1 0x20
0000050e: ADD
0000050f: DUP3
00000510: DUP2
00000511: SUB
00000512: DUP3
00000513: MSTORE
00000514: DUP6
00000515: DUP2
00000516: DUP2
00000517: SLOAD
00000518: PUSH1 0x01
0000051a: DUP2
0000051b: PUSH1 0x01
0000051d: AND
0000051e: ISZERO
0000051f: PUSH2 0x0100
00000522: MUL
00000523: SUB
00000524: AND
00000525: PUSH1 0x02
00000527: SWAP1
00000528: DIV
00000529: DUP2
0000052a: MSTORE
0000052b: PUSH1 0x20
0000052d: ADD
0000052e: SWAP2
0000052f: POP
00000530: DUP1
00000531: SLOAD
00000532: PUSH1 0x01
00000534: DUP2
00000535: PUSH1 0x01
00000537: AND
00000538: ISZERO
00000539: PUSH2 0x0100
0000053c: MUL
0000053d: SUB
0000053e: AND
0000053f: PUSH1 0x02
00000541: SWAP1
00000542: DIV
00000543: DUP1
00000544: ISZERO
00000545: PUSH2 0x058f
00000548: JUMPI
00000549: DUP1
0000054a: PUSH1 0x1f
0000054c: LT
0000054d: PUSH2 0x0564
00000550: JUMPI
00000551: PUSH2 0x0100
00000554: DUP1
00000555: DUP4
00000556: SLOAD
00000557: DIV
00000558: MUL
00000559: DUP4
0000055a: MSTORE
0000055b: SWAP2
0000055c: PUSH1 0x20
0000055e: ADD
0000055f: SWAP2
00000560: PUSH2 0x058f
00000563: JUMP
00000564: JUMPDEST
00000565: DUP3
00000566: ADD
00000567: SWAP2
00000568: SWAP1
00000569: PUSH1 0x00
0000056b: MSTORE
0000056c: PUSH1 0x20
0000056e: PUSH1 0x00
00000570: KECCAK256
00000571: SWAP1
00000572: JUMPDEST
00000573: DUP2
00000574: SLOAD
00000575: DUP2
00000576: MSTORE
00000577: SWAP1
00000578: PUSH1 0x01
0000057a: ADD
0000057b: SWAP1
0000057c: PUSH1 0x20
0000057e: ADD
0000057f: DUP1
00000580: DUP4
00000581: GT
00000582: PUSH2 0x0572
00000585: JUMPI
00000586: DUP3
00000587: SWAP1
00000588: SUB
00000589: PUSH1 0x1f
0000058b: AND
0000058c: DUP3
0000058d: ADD
0000058e: SWAP2
0000058f: JUMPDEST
00000590: POP
00000591: POP
00000592: SWAP7
00000593: POP
00000594: POP
00000595: POP
00000596: POP
00000597: POP
00000598: POP
00000599: POP
0000059a: PUSH1 0x40
0000059c: MLOAD
0000059d: DUP1
0000059e: SWAP2
0000059f: SUB
000005a0: SWAP1
000005a1: RETURN
000005a2: JUMPDEST
000005a3: CALLVALUE
000005a4: ISZERO
000005a5: PUSH2 0x05ad
000005a8: JUMPI
000005a9: PUSH1 0x00
000005ab: DUP1
000005ac: REVERT
000005ad: JUMPDEST
000005ae: PUSH2 0x05b5
000005b1: PUSH2 0x12f1
000005b4: JUMP
000005b5: JUMPDEST
000005b6: PUSH1 0x40
000005b8: MLOAD
000005b9: DUP1
000005ba: DUP1
000005bb: PUSH1 0x20
000005bd: ADD
000005be: DUP3
000005bf: DUP2
000005c0: SUB
000005c1: DUP3
000005c2: MSTORE
000005c3: DUP4
000005c4: DUP2
000005c5: DUP2
000005c6: MLOAD
000005c7: DUP2
000005c8: MSTORE
000005c9: PUSH1 0x20
000005cb: ADD
000005cc: SWAP2
000005cd: POP
000005ce: DUP1
000005cf: MLOAD
000005d0: SWAP1
000005d1: PUSH1 0x20
000005d3: ADD
000005d4: SWAP1
000005d5: PUSH1 0x20
000005d7: MUL
000005d8: DUP1
000005d9: DUP4
000005da: DUP4
000005db: PUSH1 0x00
000005dd: JUMPDEST
000005de: DUP4
000005df: DUP2
000005e0: LT
000005e1: ISZERO
000005e2: PUSH2 0x05f8
000005e5: JUMPI
000005e6: DUP1
000005e7: DUP3
000005e8: ADD
000005e9: MLOAD
000005ea: DUP2
000005eb: DUP5
000005ec: ADD
000005ed: MSTORE
000005ee: PUSH1 0x20
000005f0: DUP2
000005f1: ADD
000005f2: SWAP1
000005f3: POP
000005f4: PUSH2 0x05dd
000005f7: JUMP
000005f8: JUMPDEST
000005f9: POP
000005fa: POP
000005fb: POP
000005fc: POP
000005fd: SWAP1
000005fe: POP
000005ff: ADD
00000600: SWAP3
00000601: POP
00000602: POP
00000603: POP
00000604: PUSH1 0x40
00000606: MLOAD
00000607: DUP1
00000608: SWAP2
00000609: SUB
0000060a: SWAP1
0000060b: RETURN
0000060c: JUMPDEST
0000060d: CALLVALUE
0000060e: ISZERO
0000060f: PUSH2 0x0617
00000612: JUMPI
00000613: PUSH1 0x00
00000615: DUP1
00000616: REVERT
00000617: JUMPDEST
00000618: PUSH2 0x064c
0000061b: PUSH1 0x04
0000061d: DUP1
0000061e: DUP1
0000061f: CALLDATALOAD
00000620: SWAP1
00000621: PUSH1 0x20
00000623: ADD
00000624: SWAP1
00000625: SWAP2
00000626: SWAP1
00000627: DUP1
00000628: CALLDATALOAD
00000629: SWAP1
0000062a: PUSH1 0x20
0000062c: ADD
0000062d: SWAP1
0000062e: SWAP2
0000062f: SWAP1
00000630: DUP1
00000631: CALLDATALOAD
00000632: ISZERO
00000633: ISZERO
00000634: SWAP1
00000635: PUSH1 0x20
00000637: ADD
00000638: SWAP1
00000639: SWAP2
0000063a: SWAP1
0000063b: DUP1
0000063c: CALLDATALOAD
0000063d: ISZERO
0000063e: ISZERO
0000063f: SWAP1
00000640: PUSH1 0x20
00000642: ADD
00000643: SWAP1
00000644: SWAP2
00000645: SWAP1
00000646: POP
00000647: POP
00000648: PUSH2 0x1385
0000064b: JUMP
0000064c: JUMPDEST
0000064d: PUSH1 0x40
0000064f: MLOAD
00000650: DUP1
00000651: DUP1
00000652: PUSH1 0x20
00000654: ADD
00000655: DUP3
00000656: DUP2
00000657: SUB
00000658: DUP3
00000659: MSTORE
0000065a: DUP4
0000065b: DUP2
0000065c: DUP2
0000065d: MLOAD
0000065e: DUP2
0000065f: MSTORE
00000660: PUSH1 0x20
00000662: ADD
00000663: SWAP2
00000664: POP
00000665: DUP1
00000666: MLOAD
00000667: SWAP1
00000668: PUSH1 0x20
0000066a: ADD
0000066b: SWAP1
0000066c: PUSH1 0x20
0000066e: MUL
0000066f: DUP1
00000670: DUP4
00000671: DUP4
00000672: PUSH1 0x00
00000674: JUMPDEST
00000675: DUP4
00000676: DUP2
00000677: LT
00000678: ISZERO
00000679: PUSH2 0x068f
0000067c: JUMPI
0000067d: DUP1
0000067e: DUP3
0000067f: ADD
00000680: MLOAD
00000681: DUP2
00000682: DUP5
00000683: ADD
00000684: MSTORE
00000685: PUSH1 0x20
00000687: DUP2
00000688: ADD
00000689: SWAP1
0000068a: POP
0000068b: PUSH2 0x0674
0000068e: JUMP
0000068f: JUMPDEST
00000690: POP
00000691: POP
00000692: POP
00000693: POP
00000694: SWAP1
00000695: POP
00000696: ADD
00000697: SWAP3
00000698: POP
00000699: POP
0000069a: POP
0000069b: PUSH1 0x40
0000069d: MLOAD
0000069e: DUP1
0000069f: SWAP2
000006a0: SUB
000006a1: SWAP1
000006a2: RETURN
000006a3: JUMPDEST
000006a4: CALLVALUE
000006a5: ISZERO
000006a6: PUSH2 0x06ae
000006a9: JUMPI
000006aa: PUSH1 0x00
000006ac: DUP1
000006ad: REVERT
000006ae: JUMPDEST
000006af: PUSH2 0x06c4
000006b2: PUSH1 0x04
000006b4: DUP1
000006b5: DUP1
000006b6: CALLDATALOAD
000006b7: SWAP1
000006b8: PUSH1 0x20
000006ba: ADD
000006bb: SWAP1
000006bc: SWAP2
000006bd: SWAP1
000006be: POP
000006bf: POP
000006c0: PUSH2 0x14e1
000006c3: JUMP
000006c4: JUMPDEST
000006c5: PUSH1 0x40
000006c7: MLOAD
000006c8: DUP1
000006c9: DUP1
000006ca: PUSH1 0x20
000006cc: ADD
000006cd: DUP3
000006ce: DUP2
000006cf: SUB
000006d0: DUP3
000006d1: MSTORE
000006d2: DUP4
000006d3: DUP2
000006d4: DUP2
000006d5: MLOAD
000006d6: DUP2
000006d7: MSTORE
000006d8: PUSH1 0x20
000006da: ADD
000006db: SWAP2
000006dc: POP
000006dd: DUP1
000006de: MLOAD
000006df: SWAP1
000006e0: PUSH1 0x20
000006e2: ADD
000006e3: SWAP1
000006e4: PUSH1 0x20
000006e6: MUL
000006e7: DUP1
000006e8: DUP4
000006e9: DUP4
000006ea: PUSH1 0x00
000006ec: JUMPDEST
000006ed: DUP4
000006ee: DUP2
000006ef: LT
000006f0: ISZERO
000006f1: PUSH2 0x0707
000006f4: JUMPI
000006f5: DUP1
000006f6: DUP3
000006f7: ADD
000006f8: MLOAD
000006f9: DUP2
000006fa: DUP5
000006fb: ADD
000006fc: MSTORE
000006fd: PUSH1 0x20
000006ff: DUP2
00000700: ADD
00000701: SWAP1
00000702: POP
00000703: PUSH2 0x06ec
00000706: JUMP
00000707: JUMPDEST
00000708: POP
00000709: POP
0000070a: POP
0000070b: POP
0000070c: SWAP1
0000070d: POP
0000070e: ADD
0000070f: SWAP3
00000710: POP
00000711: POP
00000712: POP
00000713: PUSH1 0x40
00000715: MLOAD
00000716: DUP1
00000717: SWAP2
00000718: SUB
00000719: SWAP1
0000071a: RETURN
0000071b: JUMPDEST
0000071c: CALLVALUE
0000071d: ISZERO
0000071e: PUSH2 0x0726
00000721: JUMPI
00000722: PUSH1 0x00
00000724: DUP1
00000725: REVERT
00000726: JUMPDEST
00000727: PUSH2 0x072e
0000072a: PUSH2 0x170b
0000072d: JUMP
0000072e: JUMPDEST
0000072f: PUSH1 0x40
00000731: MLOAD
00000732: DUP1
00000733: DUP3
00000734: DUP2
00000735: MSTORE
00000736: PUSH1 0x20
00000738: ADD
00000739: SWAP2
0000073a: POP
0000073b: POP
0000073c: PUSH1 0x40
0000073e: MLOAD
0000073f: DUP1
00000740: SWAP2
00000741: SUB
00000742: SWAP1
00000743: RETURN
00000744: JUMPDEST
00000745: CALLVALUE
00000746: ISZERO
00000747: PUSH2 0x074f
0000074a: JUMPI
0000074b: PUSH1 0x00
0000074d: DUP1
0000074e: REVERT
0000074f: JUMPDEST
00000750: PUSH2 0x0765
00000753: PUSH1 0x04
00000755: DUP1
00000756: DUP1
00000757: CALLDATALOAD
00000758: SWAP1
00000759: PUSH1 0x20
0000075b: ADD
0000075c: SWAP1
0000075d: SWAP2
0000075e: SWAP1
0000075f: POP
00000760: POP
00000761: PUSH2 0x1711
00000764: JUMP
00000765: JUMPDEST
00000766: STOP
00000767: JUMPDEST
00000768: CALLVALUE
00000769: ISZERO
0000076a: PUSH2 0x0772
0000076d: JUMPI
0000076e: PUSH1 0x00
00000770: DUP1
00000771: REVERT
00000772: JUMPDEST
00000773: PUSH2 0x0788
00000776: PUSH1 0x04
00000778: DUP1
00000779: DUP1
0000077a: CALLDATALOAD
0000077b: SWAP1
0000077c: PUSH1 0x20
0000077e: ADD
0000077f: SWAP1
00000780: SWAP2
00000781: SWAP1
00000782: POP
00000783: POP
00000784: PUSH2 0x17c9
00000787: JUMP
00000788: JUMPDEST
00000789: STOP
0000078a: JUMPDEST
0000078b: CALLVALUE
0000078c: ISZERO
0000078d: PUSH2 0x0795
00000790: JUMPI
00000791: PUSH1 0x00
00000793: DUP1
00000794: REVERT
00000795: JUMPDEST
00000796: PUSH2 0x080d
00000799: PUSH1 0x04
0000079b: DUP1
0000079c: DUP1
0000079d: CALLDATALOAD
0000079e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007b3: AND
000007b4: SWAP1
000007b5: PUSH1 0x20
000007b7: ADD
000007b8: SWAP1
000007b9: SWAP2
000007ba: SWAP1
000007bb: DUP1
000007bc: CALLDATALOAD
000007bd: SWAP1
000007be: PUSH1 0x20
000007c0: ADD
000007c1: SWAP1
000007c2: SWAP2
000007c3: SWAP1
000007c4: DUP1
000007c5: CALLDATALOAD
000007c6: SWAP1
000007c7: PUSH1 0x20
000007c9: ADD
000007ca: SWAP1
000007cb: DUP3
000007cc: ADD
000007cd: DUP1
000007ce: CALLDATALOAD
000007cf: SWAP1
000007d0: PUSH1 0x20
000007d2: ADD
000007d3: SWAP1
000007d4: DUP1
000007d5: DUP1
000007d6: PUSH1 0x1f
000007d8: ADD
000007d9: PUSH1 0x20
000007db: DUP1
000007dc: SWAP2
000007dd: DIV
000007de: MUL
000007df: PUSH1 0x20
000007e1: ADD
000007e2: PUSH1 0x40
000007e4: MLOAD
000007e5: SWAP1
000007e6: DUP2
000007e7: ADD
000007e8: PUSH1 0x40
000007ea: MSTORE
000007eb: DUP1
000007ec: SWAP4
000007ed: SWAP3
000007ee: SWAP2
000007ef: SWAP1
000007f0: DUP2
000007f1: DUP2
000007f2: MSTORE
000007f3: PUSH1 0x20
000007f5: ADD
000007f6: DUP4
000007f7: DUP4
000007f8: DUP1
000007f9: DUP3
000007fa: DUP5
000007fb: CALLDATACOPY
000007fc: DUP3
000007fd: ADD
000007fe: SWAP2
000007ff: POP
00000800: POP
00000801: POP
00000802: POP
00000803: POP
00000804: POP
00000805: SWAP2
00000806: SWAP1
00000807: POP
00000808: POP
00000809: PUSH2 0x19a5
0000080c: JUMP
0000080d: JUMPDEST
0000080e: PUSH1 0x40
00000810: MLOAD
00000811: DUP1
00000812: DUP3
00000813: DUP2
00000814: MSTORE
00000815: PUSH1 0x20
00000817: ADD
00000818: SWAP2
00000819: POP
0000081a: POP
0000081b: PUSH1 0x40
0000081d: MLOAD
0000081e: DUP1
0000081f: SWAP2
00000820: SUB
00000821: SWAP1
00000822: RETURN
00000823: JUMPDEST
00000824: CALLVALUE
00000825: ISZERO
00000826: PUSH2 0x082e
00000829: JUMPI
0000082a: PUSH1 0x00
0000082c: DUP1
0000082d: REVERT
0000082e: JUMPDEST
0000082f: PUSH2 0x0836
00000832: PUSH2 0x19c4
00000835: JUMP
00000836: JUMPDEST
00000837: PUSH1 0x40
00000839: MLOAD
0000083a: DUP1
0000083b: DUP3
0000083c: DUP2
0000083d: MSTORE
0000083e: PUSH1 0x20
00000840: ADD
00000841: SWAP2
00000842: POP
00000843: POP
00000844: PUSH1 0x40
00000846: MLOAD
00000847: DUP1
00000848: SWAP2
00000849: SUB
0000084a: SWAP1
0000084b: RETURN
0000084c: JUMPDEST
0000084d: CALLVALUE
0000084e: ISZERO
0000084f: PUSH2 0x0857
00000852: JUMPI
00000853: PUSH1 0x00
00000855: DUP1
00000856: REVERT
00000857: JUMPDEST
00000858: PUSH2 0x085f
0000085b: PUSH2 0x19c9
0000085e: JUMP
0000085f: JUMPDEST
00000860: PUSH1 0x40
00000862: MLOAD
00000863: DUP1
00000864: DUP3
00000865: DUP2
00000866: MSTORE
00000867: PUSH1 0x20
00000869: ADD
0000086a: SWAP2
0000086b: POP
0000086c: POP
0000086d: PUSH1 0x40
0000086f: MLOAD
00000870: DUP1
00000871: SWAP2
00000872: SUB
00000873: SWAP1
00000874: RETURN
00000875: JUMPDEST
00000876: CALLVALUE
00000877: ISZERO
00000878: PUSH2 0x0880
0000087b: JUMPI
0000087c: PUSH1 0x00
0000087e: DUP1
0000087f: REVERT
00000880: JUMPDEST
00000881: PUSH2 0x08cb
00000884: PUSH1 0x04
00000886: DUP1
00000887: DUP1
00000888: CALLDATALOAD
00000889: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000089e: AND
0000089f: SWAP1
000008a0: PUSH1 0x20
000008a2: ADD
000008a3: SWAP1
000008a4: SWAP2
000008a5: SWAP1
000008a6: DUP1
000008a7: CALLDATALOAD
000008a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008bd: AND
000008be: SWAP1
000008bf: PUSH1 0x20
000008c1: ADD
000008c2: SWAP1
000008c3: SWAP2
000008c4: SWAP1
000008c5: POP
000008c6: POP
000008c7: PUSH2 0x19cf
000008ca: JUMP
000008cb: JUMPDEST
000008cc: STOP
000008cd: JUMPDEST
000008ce: CALLVALUE
000008cf: ISZERO
000008d0: PUSH2 0x08d8
000008d3: JUMPI
000008d4: PUSH1 0x00
000008d6: DUP1
000008d7: REVERT
000008d8: JUMPDEST
000008d9: PUSH2 0x08ee
000008dc: PUSH1 0x04
000008de: DUP1
000008df: DUP1
000008e0: CALLDATALOAD
000008e1: SWAP1
000008e2: PUSH1 0x20
000008e4: ADD
000008e5: SWAP1
000008e6: SWAP2
000008e7: SWAP1
000008e8: POP
000008e9: POP
000008ea: PUSH2 0x1ce6
000008ed: JUMP
000008ee: JUMPDEST
000008ef: STOP
000008f0: JUMPDEST
000008f1: PUSH1 0x03
000008f3: DUP2
000008f4: DUP2
000008f5: SLOAD
000008f6: DUP2
000008f7: LT
000008f8: ISZERO
000008f9: ISZERO
000008fa: PUSH2 0x08ff
000008fd: JUMPI
000008fe: INVALID
000008ff: JUMPDEST
00000900: SWAP1
00000901: PUSH1 0x00
00000903: MSTORE
00000904: PUSH1 0x20
00000906: PUSH1 0x00
00000908: KECCAK256
00000909: SWAP1
0000090a: ADD
0000090b: PUSH1 0x00
0000090d: SWAP2
0000090e: POP
0000090f: SLOAD
00000910: SWAP1
00000911: PUSH2 0x0100
00000914: EXP
00000915: SWAP1
00000916: DIV
00000917: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000092c: AND
0000092d: DUP2
0000092e: JUMP
0000092f: JUMPDEST
00000930: PUSH1 0x00
00000932: DUP1
00000933: TIMESTAMP
00000934: SWAP2
00000935: POP
00000936: PUSH1 0x06
00000938: PUSH1 0x00
0000093a: SWAP1
0000093b: SLOAD
0000093c: SWAP1
0000093d: PUSH2 0x0100
00000940: EXP
00000941: SWAP1
00000942: DIV
00000943: PUSH3 0xffffff
00000947: AND
00000948: PUSH3 0xffffff
0000094c: AND
0000094d: PUSH1 0x00
0000094f: DUP1
00000950: DUP6
00000951: DUP2
00000952: MSTORE
00000953: PUSH1 0x20
00000955: ADD
00000956: SWAP1
00000957: DUP2
00000958: MSTORE
00000959: PUSH1 0x20
0000095b: ADD
0000095c: PUSH1 0x00
0000095e: KECCAK256
0000095f: PUSH1 0x04
00000961: ADD
00000962: SLOAD
00000963: ADD
00000964: SWAP1
00000965: POP
00000966: SWAP2
00000967: POP
00000968: SWAP2
00000969: JUMP
0000096a: JUMPDEST
0000096b: PUSH1 0x00
0000096d: ADDRESS
0000096e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000983: AND
00000984: CALLER
00000985: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000099a: AND
0000099b: EQ
0000099c: ISZERO
0000099d: ISZERO
0000099e: PUSH2 0x09a6
000009a1: JUMPI
000009a2: PUSH1 0x00
000009a4: DUP1
000009a5: REVERT
000009a6: JUMPDEST
000009a7: DUP2
000009a8: PUSH1 0x02
000009aa: PUSH1 0x00
000009ac: DUP3
000009ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009c2: AND
000009c3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009d8: AND
000009d9: DUP2
000009da: MSTORE
000009db: PUSH1 0x20
000009dd: ADD
000009de: SWAP1
000009df: DUP2
000009e0: MSTORE
000009e1: PUSH1 0x20
000009e3: ADD
000009e4: PUSH1 0x00
000009e6: KECCAK256
000009e7: PUSH1 0x00
000009e9: SWAP1
000009ea: SLOAD
000009eb: SWAP1
000009ec: PUSH2 0x0100
000009ef: EXP
000009f0: SWAP1
000009f1: DIV
000009f2: PUSH1 0xff
000009f4: AND
000009f5: ISZERO
000009f6: ISZERO
000009f7: PUSH2 0x09ff
000009fa: JUMPI
000009fb: PUSH1 0x00
000009fd: DUP1
000009fe: REVERT
000009ff: JUMPDEST
00000a00: PUSH1 0x00
00000a02: PUSH1 0x02
00000a04: PUSH1 0x00
00000a06: DUP6
00000a07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a1c: AND
00000a1d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a32: AND
00000a33: DUP2
00000a34: MSTORE
00000a35: PUSH1 0x20
00000a37: ADD
00000a38: SWAP1
00000a39: DUP2
00000a3a: MSTORE
00000a3b: PUSH1 0x20
00000a3d: ADD
00000a3e: PUSH1 0x00
00000a40: KECCAK256
00000a41: PUSH1 0x00
00000a43: PUSH2 0x0100
00000a46: EXP
00000a47: DUP2
00000a48: SLOAD
00000a49: DUP2
00000a4a: PUSH1 0xff
00000a4c: MUL
00000a4d: NOT
00000a4e: AND
00000a4f: SWAP1
00000a50: DUP4
00000a51: ISZERO
00000a52: ISZERO
00000a53: MUL
00000a54: OR
00000a55: SWAP1
00000a56: SSTORE
00000a57: POP
00000a58: PUSH1 0x00
00000a5a: SWAP2
00000a5b: POP
00000a5c: JUMPDEST
00000a5d: PUSH1 0x01
00000a5f: PUSH1 0x03
00000a61: DUP1
00000a62: SLOAD
00000a63: SWAP1
00000a64: POP
00000a65: SUB
00000a66: DUP3
00000a67: LT
00000a68: ISZERO
00000a69: PUSH2 0x0b87
00000a6c: JUMPI
00000a6d: DUP3
00000a6e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a83: AND
00000a84: PUSH1 0x03
00000a86: DUP4
00000a87: DUP2
00000a88: SLOAD
00000a89: DUP2
00000a8a: LT
00000a8b: ISZERO
00000a8c: ISZERO
00000a8d: PUSH2 0x0a92
00000a90: JUMPI
00000a91: INVALID
00000a92: JUMPDEST
00000a93: SWAP1
00000a94: PUSH1 0x00
00000a96: MSTORE
00000a97: PUSH1 0x20
00000a99: PUSH1 0x00
00000a9b: KECCAK256
00000a9c: SWAP1
00000a9d: ADD
00000a9e: PUSH1 0x00
00000aa0: SWAP1
00000aa1: SLOAD
00000aa2: SWAP1
00000aa3: PUSH2 0x0100
00000aa6: EXP
00000aa7: SWAP1
00000aa8: DIV
00000aa9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000abe: AND
00000abf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ad4: AND
00000ad5: EQ
00000ad6: ISZERO
00000ad7: PUSH2 0x0b7a
00000ada: JUMPI
00000adb: PUSH1 0x03
00000add: PUSH1 0x01
00000adf: PUSH1 0x03
00000ae1: DUP1
00000ae2: SLOAD
00000ae3: SWAP1
00000ae4: POP
00000ae5: SUB
00000ae6: DUP2
00000ae7: SLOAD
00000ae8: DUP2
00000ae9: LT
00000aea: ISZERO
00000aeb: ISZERO
00000aec: PUSH2 0x0af1
00000aef: JUMPI
00000af0: INVALID
00000af1: JUMPDEST
00000af2: SWAP1
00000af3: PUSH1 0x00
00000af5: MSTORE
00000af6: PUSH1 0x20
00000af8: PUSH1 0x00
00000afa: KECCAK256
00000afb: SWAP1
00000afc: ADD
00000afd: PUSH1 0x00
00000aff: SWAP1
00000b00: SLOAD
00000b01: SWAP1
00000b02: PUSH2 0x0100
00000b05: EXP
00000b06: SWAP1
00000b07: DIV
00000b08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b1d: AND
00000b1e: PUSH1 0x03
00000b20: DUP4
00000b21: DUP2
00000b22: SLOAD
00000b23: DUP2
00000b24: LT
00000b25: ISZERO
00000b26: ISZERO
00000b27: PUSH2 0x0b2c
00000b2a: JUMPI
00000b2b: INVALID
00000b2c: JUMPDEST
00000b2d: SWAP1
00000b2e: PUSH1 0x00
00000b30: MSTORE
00000b31: PUSH1 0x20
00000b33: PUSH1 0x00
00000b35: KECCAK256
00000b36: SWAP1
00000b37: ADD
00000b38: PUSH1 0x00
00000b3a: PUSH2 0x0100
00000b3d: EXP
00000b3e: DUP2
00000b3f: SLOAD
00000b40: DUP2
00000b41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b56: MUL
00000b57: NOT
00000b58: AND
00000b59: SWAP1
00000b5a: DUP4
00000b5b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b70: AND
00000b71: MUL
00000b72: OR
00000b73: SWAP1
00000b74: SSTORE
00000b75: POP
00000b76: PUSH2 0x0b87
00000b79: JUMP
00000b7a: JUMPDEST
00000b7b: DUP2
00000b7c: DUP1
00000b7d: PUSH1 0x01
00000b7f: ADD
00000b80: SWAP3
00000b81: POP
00000b82: POP
00000b83: PUSH2 0x0a5c
00000b86: JUMP
00000b87: JUMPDEST
00000b88: PUSH1 0x01
00000b8a: PUSH1 0x03
00000b8c: DUP2
00000b8d: DUP2
00000b8e: DUP1
00000b8f: SLOAD
00000b90: SWAP1
00000b91: POP
00000b92: SUB
00000b93: SWAP2
00000b94: POP
00000b95: DUP2
00000b96: PUSH2 0x0b9f
00000b99: SWAP2
00000b9a: SWAP1
00000b9b: PUSH2 0x20dc
00000b9e: JUMP
00000b9f: JUMPDEST
00000ba0: POP
00000ba1: PUSH1 0x03
00000ba3: DUP1
00000ba4: SLOAD
00000ba5: SWAP1
00000ba6: POP
00000ba7: PUSH1 0x04
00000ba9: SLOAD
00000baa: GT
00000bab: ISZERO
00000bac: PUSH2 0x0bbe
00000baf: JUMPI
00000bb0: PUSH2 0x0bbd
00000bb3: PUSH1 0x03
00000bb5: DUP1
00000bb6: SLOAD
00000bb7: SWAP1
00000bb8: POP
00000bb9: PUSH2 0x1711
00000bbc: JUMP
00000bbd: JUMPDEST
00000bbe: JUMPDEST
00000bbf: DUP3
00000bc0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bd5: AND
00000bd6: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
00000bf7: PUSH1 0x40
00000bf9: MLOAD
00000bfa: PUSH1 0x40
00000bfc: MLOAD
00000bfd: DUP1
00000bfe: SWAP2
00000bff: SUB
00000c00: SWAP1
00000c01: LOG2
00000c02: POP
00000c03: POP
00000c04: POP
00000c05: JUMP
00000c06: JUMPDEST
00000c07: CALLER
00000c08: PUSH1 0x02
00000c0a: PUSH1 0x00
00000c0c: DUP3
00000c0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c22: AND
00000c23: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c38: AND
00000c39: DUP2
00000c3a: MSTORE
00000c3b: PUSH1 0x20
00000c3d: ADD
00000c3e: SWAP1
00000c3f: DUP2
00000c40: MSTORE
00000c41: PUSH1 0x20
00000c43: ADD
00000c44: PUSH1 0x00
00000c46: KECCAK256
00000c47: PUSH1 0x00
00000c49: SWAP1
00000c4a: SLOAD
00000c4b: SWAP1
00000c4c: PUSH2 0x0100
00000c4f: EXP
00000c50: SWAP1
00000c51: DIV
00000c52: PUSH1 0xff
00000c54: AND
00000c55: ISZERO
00000c56: ISZERO
00000c57: PUSH2 0x0c5f
00000c5a: JUMPI
00000c5b: PUSH1 0x00
00000c5d: DUP1
00000c5e: REVERT
00000c5f: JUMPDEST
00000c60: DUP2
00000c61: CALLER
00000c62: PUSH1 0x01
00000c64: PUSH1 0x00
00000c66: DUP4
00000c67: DUP2
00000c68: MSTORE
00000c69: PUSH1 0x20
00000c6b: ADD
00000c6c: SWAP1
00000c6d: DUP2
00000c6e: MSTORE
00000c6f: PUSH1 0x20
00000c71: ADD
00000c72: PUSH1 0x00
00000c74: KECCAK256
00000c75: PUSH1 0x00
00000c77: DUP3
00000c78: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c8d: AND
00000c8e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ca3: AND
00000ca4: DUP2
00000ca5: MSTORE
00000ca6: PUSH1 0x20
00000ca8: ADD
00000ca9: SWAP1
00000caa: DUP2
00000cab: MSTORE
00000cac: PUSH1 0x20
00000cae: ADD
00000caf: PUSH1 0x00
00000cb1: KECCAK256
00000cb2: PUSH1 0x00
00000cb4: SWAP1
00000cb5: SLOAD
00000cb6: SWAP1
00000cb7: PUSH2 0x0100
00000cba: EXP
00000cbb: SWAP1
00000cbc: DIV
00000cbd: PUSH1 0xff
00000cbf: AND
00000cc0: ISZERO
00000cc1: ISZERO
00000cc2: PUSH2 0x0cca
00000cc5: JUMPI
00000cc6: PUSH1 0x00
00000cc8: DUP1
00000cc9: REVERT
00000cca: JUMPDEST
00000ccb: DUP4
00000ccc: PUSH1 0x00
00000cce: DUP1
00000ccf: DUP3
00000cd0: DUP2
00000cd1: MSTORE
00000cd2: PUSH1 0x20
00000cd4: ADD
00000cd5: SWAP1
00000cd6: DUP2
00000cd7: MSTORE
00000cd8: PUSH1 0x20
00000cda: ADD
00000cdb: PUSH1 0x00
00000cdd: KECCAK256
00000cde: PUSH1 0x03
00000ce0: ADD
00000ce1: PUSH1 0x00
00000ce3: SWAP1
00000ce4: SLOAD
00000ce5: SWAP1
00000ce6: PUSH2 0x0100
00000ce9: EXP
00000cea: SWAP1
00000ceb: DIV
00000cec: PUSH1 0xff
00000cee: AND
00000cef: ISZERO
00000cf0: ISZERO
00000cf1: ISZERO
00000cf2: PUSH2 0x0cfa
00000cf5: JUMPI
00000cf6: PUSH1 0x00
00000cf8: DUP1
00000cf9: REVERT
00000cfa: JUMPDEST
00000cfb: PUSH1 0x00
00000cfd: PUSH1 0x01
00000cff: PUSH1 0x00
00000d01: DUP8
00000d02: DUP2
00000d03: MSTORE
00000d04: PUSH1 0x20
00000d06: ADD
00000d07: SWAP1
00000d08: DUP2
00000d09: MSTORE
00000d0a: PUSH1 0x20
00000d0c: ADD
00000d0d: PUSH1 0x00
00000d0f: KECCAK256
00000d10: PUSH1 0x00
00000d12: CALLER
00000d13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d28: AND
00000d29: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d3e: AND
00000d3f: DUP2
00000d40: MSTORE
00000d41: PUSH1 0x20
00000d43: ADD
00000d44: SWAP1
00000d45: DUP2
00000d46: MSTORE
00000d47: PUSH1 0x20
00000d49: ADD
00000d4a: PUSH1 0x00
00000d4c: KECCAK256
00000d4d: PUSH1 0x00
00000d4f: PUSH2 0x0100
00000d52: EXP
00000d53: DUP2
00000d54: SLOAD
00000d55: DUP2
00000d56: PUSH1 0xff
00000d58: MUL
00000d59: NOT
00000d5a: AND
00000d5b: SWAP1
00000d5c: DUP4
00000d5d: ISZERO
00000d5e: ISZERO
00000d5f: MUL
00000d60: OR
00000d61: SWAP1
00000d62: SSTORE
00000d63: POP
00000d64: DUP5
00000d65: CALLER
00000d66: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d7b: AND
00000d7c: PUSH32 0xf6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e9
00000d9d: PUSH1 0x40
00000d9f: MLOAD
00000da0: PUSH1 0x40
00000da2: MLOAD
00000da3: DUP1
00000da4: SWAP2
00000da5: SUB
00000da6: SWAP1
00000da7: LOG3
00000da8: POP
00000da9: POP
00000daa: POP
00000dab: POP
00000dac: POP
00000dad: JUMP
00000dae: JUMPDEST
00000daf: PUSH1 0x02
00000db1: PUSH1 0x20
00000db3: MSTORE
00000db4: DUP1
00000db5: PUSH1 0x00
00000db7: MSTORE
00000db8: PUSH1 0x40
00000dba: PUSH1 0x00
00000dbc: KECCAK256
00000dbd: PUSH1 0x00
00000dbf: SWAP2
00000dc0: POP
00000dc1: SLOAD
00000dc2: SWAP1
00000dc3: PUSH2 0x0100
00000dc6: EXP
00000dc7: SWAP1
00000dc8: DIV
00000dc9: PUSH1 0xff
00000dcb: AND
00000dcc: DUP2
00000dcd: JUMP
00000dce: JUMPDEST
00000dcf: PUSH1 0x01
00000dd1: PUSH1 0x20
00000dd3: MSTORE
00000dd4: DUP2
00000dd5: PUSH1 0x00
00000dd7: MSTORE
00000dd8: PUSH1 0x40
00000dda: PUSH1 0x00
00000ddc: KECCAK256
00000ddd: PUSH1 0x20
00000ddf: MSTORE
00000de0: DUP1
00000de1: PUSH1 0x00
00000de3: MSTORE
00000de4: PUSH1 0x40
00000de6: PUSH1 0x00
00000de8: KECCAK256
00000de9: PUSH1 0x00
00000deb: SWAP2
00000dec: POP
00000ded: SWAP2
00000dee: POP
00000def: SWAP1
00000df0: SLOAD
00000df1: SWAP1
00000df2: PUSH2 0x0100
00000df5: EXP
00000df6: SWAP1
00000df7: DIV
00000df8: PUSH1 0xff
00000dfa: AND
00000dfb: DUP2
00000dfc: JUMP
00000dfd: JUMPDEST
00000dfe: PUSH1 0x00
00000e00: DUP1
00000e01: PUSH1 0x00
00000e03: SWAP1
00000e04: POP
00000e05: JUMPDEST
00000e06: PUSH1 0x05
00000e08: SLOAD
00000e09: DUP2
00000e0a: LT
00000e0b: ISZERO
00000e0c: PUSH2 0x0e88
00000e0f: JUMPI
00000e10: DUP4
00000e11: DUP1
00000e12: ISZERO
00000e13: PUSH2 0x0e3c
00000e16: JUMPI
00000e17: POP
00000e18: PUSH1 0x00
00000e1a: DUP1
00000e1b: DUP3
00000e1c: DUP2
00000e1d: MSTORE
00000e1e: PUSH1 0x20
00000e20: ADD
00000e21: SWAP1
00000e22: DUP2
00000e23: MSTORE
00000e24: PUSH1 0x20
00000e26: ADD
00000e27: PUSH1 0x00
00000e29: KECCAK256
00000e2a: PUSH1 0x03
00000e2c: ADD
00000e2d: PUSH1 0x00
00000e2f: SWAP1
00000e30: SLOAD
00000e31: SWAP1
00000e32: PUSH2 0x0100
00000e35: EXP
00000e36: SWAP1
00000e37: DIV
00000e38: PUSH1 0xff
00000e3a: AND
00000e3b: ISZERO
00000e3c: JUMPDEST
00000e3d: DUP1
00000e3e: PUSH2 0x0e6f
00000e41: JUMPI
00000e42: POP
00000e43: DUP3
00000e44: DUP1
00000e45: ISZERO
00000e46: PUSH2 0x0e6e
00000e49: JUMPI
00000e4a: POP
00000e4b: PUSH1 0x00
00000e4d: DUP1
00000e4e: DUP3
00000e4f: DUP2
00000e50: MSTORE
00000e51: PUSH1 0x20
00000e53: ADD
00000e54: SWAP1
00000e55: DUP2
00000e56: MSTORE
00000e57: PUSH1 0x20
00000e59: ADD
00000e5a: PUSH1 0x00
00000e5c: KECCAK256
00000e5d: PUSH1 0x03
00000e5f: ADD
00000e60: PUSH1 0x00
00000e62: SWAP1
00000e63: SLOAD
00000e64: SWAP1
00000e65: PUSH2 0x0100
00000e68: EXP
00000e69: SWAP1
00000e6a: DIV
00000e6b: PUSH1 0xff
00000e6d: AND
00000e6e: JUMPDEST
00000e6f: JUMPDEST
00000e70: ISZERO
00000e71: PUSH2 0x0e7b
00000e74: JUMPI
00000e75: PUSH1 0x01
00000e77: DUP3
00000e78: ADD
00000e79: SWAP2
00000e7a: POP
00000e7b: JUMPDEST
00000e7c: DUP1
00000e7d: DUP1
00000e7e: PUSH1 0x01
00000e80: ADD
00000e81: SWAP2
00000e82: POP
00000e83: POP
00000e84: PUSH2 0x0e05
00000e87: JUMP
00000e88: JUMPDEST
00000e89: POP
00000e8a: SWAP3
00000e8b: SWAP2
00000e8c: POP
00000e8d: POP
00000e8e: JUMP
00000e8f: JUMPDEST
00000e90: PUSH1 0x00
00000e92: PUSH1 0x06
00000e94: PUSH1 0x00
00000e96: SWAP1
00000e97: SLOAD
00000e98: SWAP1
00000e99: PUSH2 0x0100
00000e9c: EXP
00000e9d: SWAP1
00000e9e: DIV
00000e9f: PUSH3 0xffffff
00000ea3: AND
00000ea4: PUSH3 0xffffff
00000ea8: AND
00000ea9: PUSH1 0x00
00000eab: DUP1
00000eac: DUP5
00000ead: DUP2
00000eae: MSTORE
00000eaf: PUSH1 0x20
00000eb1: ADD
00000eb2: SWAP1
00000eb3: DUP2
00000eb4: MSTORE
00000eb5: PUSH1 0x20
00000eb7: ADD
00000eb8: PUSH1 0x00
00000eba: KECCAK256
00000ebb: PUSH1 0x04
00000ebd: ADD
00000ebe: SLOAD
00000ebf: ADD
00000ec0: TIMESTAMP
00000ec1: LT
00000ec2: SWAP1
00000ec3: POP
00000ec4: SWAP2
00000ec5: SWAP1
00000ec6: POP
00000ec7: JUMP
00000ec8: JUMPDEST
00000ec9: ADDRESS
00000eca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000edf: AND
00000ee0: CALLER
00000ee1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ef6: AND
00000ef7: EQ
00000ef8: ISZERO
00000ef9: ISZERO
00000efa: PUSH2 0x0f02
00000efd: JUMPI
00000efe: PUSH1 0x00
00000f00: DUP1
00000f01: REVERT
00000f02: JUMPDEST
00000f03: DUP1
00000f04: PUSH1 0x02
00000f06: PUSH1 0x00
00000f08: DUP3
00000f09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f1e: AND
00000f1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f34: AND
00000f35: DUP2
00000f36: MSTORE
00000f37: PUSH1 0x20
00000f39: ADD
00000f3a: SWAP1
00000f3b: DUP2
00000f3c: MSTORE
00000f3d: PUSH1 0x20
00000f3f: ADD
00000f40: PUSH1 0x00
00000f42: KECCAK256
00000f43: PUSH1 0x00
00000f45: SWAP1
00000f46: SLOAD
00000f47: SWAP1
00000f48: PUSH2 0x0100
00000f4b: EXP
00000f4c: SWAP1
00000f4d: DIV
00000f4e: PUSH1 0xff
00000f50: AND
00000f51: ISZERO
00000f52: ISZERO
00000f53: ISZERO
00000f54: PUSH2 0x0f5c
00000f57: JUMPI
00000f58: PUSH1 0x00
00000f5a: DUP1
00000f5b: REVERT
00000f5c: JUMPDEST
00000f5d: DUP2
00000f5e: PUSH1 0x00
00000f60: DUP2
00000f61: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f76: AND
00000f77: EQ
00000f78: ISZERO
00000f79: ISZERO
00000f7a: ISZERO
00000f7b: PUSH2 0x0f83
00000f7e: JUMPI
00000f7f: PUSH1 0x00
00000f81: DUP1
00000f82: REVERT
00000f83: JUMPDEST
00000f84: PUSH1 0x01
00000f86: PUSH1 0x03
00000f88: DUP1
00000f89: SLOAD
00000f8a: SWAP1
00000f8b: POP
00000f8c: ADD
00000f8d: PUSH1 0x04
00000f8f: SLOAD
00000f90: PUSH1 0x32
00000f92: DUP3
00000f93: GT
00000f94: ISZERO
00000f95: DUP1
00000f96: ISZERO
00000f97: PUSH2 0x0fa0
00000f9a: JUMPI
00000f9b: POP
00000f9c: DUP2
00000f9d: DUP2
00000f9e: GT
00000f9f: ISZERO
00000fa0: JUMPDEST
00000fa1: DUP1
00000fa2: ISZERO
00000fa3: PUSH2 0x0fac
00000fa6: JUMPI
00000fa7: POP
00000fa8: PUSH1 0x00
00000faa: DUP2
00000fab: GT
00000fac: JUMPDEST
00000fad: DUP1
00000fae: ISZERO
00000faf: PUSH2 0x0fb8
00000fb2: JUMPI
00000fb3: POP
00000fb4: PUSH1 0x00
00000fb6: DUP3
00000fb7: GT
00000fb8: JUMPDEST
00000fb9: ISZERO
00000fba: ISZERO
00000fbb: PUSH2 0x0fc3
00000fbe: JUMPI
00000fbf: PUSH1 0x00
00000fc1: DUP1
00000fc2: REVERT
00000fc3: JUMPDEST
00000fc4: PUSH1 0x01
00000fc6: PUSH1 0x02
00000fc8: PUSH1 0x00
00000fca: DUP8
00000fcb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fe0: AND
00000fe1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ff6: AND
00000ff7: DUP2
00000ff8: MSTORE
00000ff9: PUSH1 0x20
00000ffb: ADD
00000ffc: SWAP1
00000ffd: DUP2
00000ffe: MSTORE
00000fff: PUSH1 0x20
00001001: ADD
00001002: PUSH1 0x00
00001004: KECCAK256
00001005: PUSH1 0x00
00001007: PUSH2 0x0100
0000100a: EXP
0000100b: DUP2
0000100c: SLOAD
0000100d: DUP2
0000100e: PUSH1 0xff
00001010: MUL
00001011: NOT
00001012: AND
00001013: SWAP1
00001014: DUP4
00001015: ISZERO
00001016: ISZERO
00001017: MUL
00001018: OR
00001019: SWAP1
0000101a: SSTORE
0000101b: POP
0000101c: PUSH1 0x03
0000101e: DUP1
0000101f: SLOAD
00001020: DUP1
00001021: PUSH1 0x01
00001023: ADD
00001024: DUP3
00001025: DUP2
00001026: PUSH2 0x102f
00001029: SWAP2
0000102a: SWAP1
0000102b: PUSH2 0x2108
0000102e: JUMP
0000102f: JUMPDEST
00001030: SWAP2
00001031: PUSH1 0x00
00001033: MSTORE
00001034: PUSH1 0x20
00001036: PUSH1 0x00
00001038: KECCAK256
00001039: SWAP1
0000103a: ADD
0000103b: PUSH1 0x00
0000103d: DUP8
0000103e: SWAP1
0000103f: SWAP2
00001040: SWAP1
00001041: SWAP2
00001042: PUSH2 0x0100
00001045: EXP
00001046: DUP2
00001047: SLOAD
00001048: DUP2
00001049: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000105e: MUL
0000105f: NOT
00001060: AND
00001061: SWAP1
00001062: DUP4
00001063: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001078: AND
00001079: MUL
0000107a: OR
0000107b: SWAP1
0000107c: SSTORE
0000107d: POP
0000107e: POP
0000107f: DUP5
00001080: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001095: AND
00001096: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
000010b7: PUSH1 0x40
000010b9: MLOAD
000010ba: PUSH1 0x40
000010bc: MLOAD
000010bd: DUP1
000010be: SWAP2
000010bf: SUB
000010c0: SWAP1
000010c1: LOG2
000010c2: POP
000010c3: POP
000010c4: POP
000010c5: POP
000010c6: POP
000010c7: JUMP
000010c8: JUMPDEST
000010c9: PUSH1 0x00
000010cb: DUP1
000010cc: PUSH1 0x00
000010ce: DUP1
000010cf: SWAP2
000010d0: POP
000010d1: PUSH1 0x00
000010d3: SWAP1
000010d4: POP
000010d5: JUMPDEST
000010d6: PUSH1 0x03
000010d8: DUP1
000010d9: SLOAD
000010da: SWAP1
000010db: POP
000010dc: DUP2
000010dd: LT
000010de: ISZERO
000010df: PUSH2 0x11a6
000010e2: JUMPI
000010e3: PUSH1 0x01
000010e5: PUSH1 0x00
000010e7: DUP6
000010e8: DUP2
000010e9: MSTORE
000010ea: PUSH1 0x20
000010ec: ADD
000010ed: SWAP1
000010ee: DUP2
000010ef: MSTORE
000010f0: PUSH1 0x20
000010f2: ADD
000010f3: PUSH1 0x00
000010f5: KECCAK256
000010f6: PUSH1 0x00
000010f8: PUSH1 0x03
000010fa: DUP4
000010fb: DUP2
000010fc: SLOAD
000010fd: DUP2
000010fe: LT
000010ff: ISZERO
00001100: ISZERO
00001101: PUSH2 0x1106
00001104: JUMPI
00001105: INVALID
00001106: JUMPDEST
00001107: SWAP1
00001108: PUSH1 0x00
0000110a: MSTORE
0000110b: PUSH1 0x20
0000110d: PUSH1 0x00
0000110f: KECCAK256
00001110: SWAP1
00001111: ADD
00001112: PUSH1 0x00
00001114: SWAP1
00001115: SLOAD
00001116: SWAP1
00001117: PUSH2 0x0100
0000111a: EXP
0000111b: SWAP1
0000111c: DIV
0000111d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001132: AND
00001133: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001148: AND
00001149: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000115e: AND
0000115f: DUP2
00001160: MSTORE
00001161: PUSH1 0x20
00001163: ADD
00001164: SWAP1
00001165: DUP2
00001166: MSTORE
00001167: PUSH1 0x20
00001169: ADD
0000116a: PUSH1 0x00
0000116c: KECCAK256
0000116d: PUSH1 0x00
0000116f: SWAP1
00001170: SLOAD
00001171: SWAP1
00001172: PUSH2 0x0100
00001175: EXP
00001176: SWAP1
00001177: DIV
00001178: PUSH1 0xff
0000117a: AND
0000117b: ISZERO
0000117c: PUSH2 0x1186
0000117f: JUMPI
00001180: PUSH1 0x01
00001182: DUP3
00001183: ADD
00001184: SWAP2
00001185: POP
00001186: JUMPDEST
00001187: PUSH1 0x04
00001189: SLOAD
0000118a: DUP3
0000118b: EQ
0000118c: ISZERO
0000118d: PUSH2 0x1199
00001190: JUMPI
00001191: PUSH1 0x01
00001193: SWAP3
00001194: POP
00001195: PUSH2 0x11a7
00001198: JUMP
00001199: JUMPDEST
0000119a: DUP1
0000119b: DUP1
0000119c: PUSH1 0x01
0000119e: ADD
0000119f: SWAP2
000011a0: POP
000011a1: POP
000011a2: PUSH2 0x10d5
000011a5: JUMP
000011a6: JUMPDEST
000011a7: JUMPDEST
000011a8: POP
000011a9: POP
000011aa: SWAP2
000011ab: SWAP1
000011ac: POP
000011ad: JUMP
000011ae: JUMPDEST
000011af: PUSH1 0x06
000011b1: PUSH1 0x00
000011b3: SWAP1
000011b4: SLOAD
000011b5: SWAP1
000011b6: PUSH2 0x0100
000011b9: EXP
000011ba: SWAP1
000011bb: DIV
000011bc: PUSH3 0xffffff
000011c0: AND
000011c1: DUP2
000011c2: JUMP
000011c3: JUMPDEST
000011c4: PUSH1 0x00
000011c6: DUP1
000011c7: PUSH1 0x00
000011c9: SWAP1
000011ca: POP
000011cb: JUMPDEST
000011cc: PUSH1 0x03
000011ce: DUP1
000011cf: SLOAD
000011d0: SWAP1
000011d1: POP
000011d2: DUP2
000011d3: LT
000011d4: ISZERO
000011d5: PUSH2 0x1289
000011d8: JUMPI
000011d9: PUSH1 0x01
000011db: PUSH1 0x00
000011dd: DUP5
000011de: DUP2
000011df: MSTORE
000011e0: PUSH1 0x20
000011e2: ADD
000011e3: SWAP1
000011e4: DUP2
000011e5: MSTORE
000011e6: PUSH1 0x20
000011e8: ADD
000011e9: PUSH1 0x00
000011eb: KECCAK256
000011ec: PUSH1 0x00
000011ee: PUSH1 0x03
000011f0: DUP4
000011f1: DUP2
000011f2: SLOAD
000011f3: DUP2
000011f4: LT
000011f5: ISZERO
000011f6: ISZERO
000011f7: PUSH2 0x11fc
000011fa: JUMPI
000011fb: INVALID
000011fc: JUMPDEST
000011fd: SWAP1
000011fe: PUSH1 0x00
00001200: MSTORE
00001201: PUSH1 0x20
00001203: PUSH1 0x00
00001205: KECCAK256
00001206: SWAP1
00001207: ADD
00001208: PUSH1 0x00
0000120a: SWAP1
0000120b: SLOAD
0000120c: SWAP1
0000120d: PUSH2 0x0100
00001210: EXP
00001211: SWAP1
00001212: DIV
00001213: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001228: AND
00001229: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000123e: AND
0000123f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001254: AND
00001255: DUP2
00001256: MSTORE
00001257: PUSH1 0x20
00001259: ADD
0000125a: SWAP1
0000125b: DUP2
0000125c: MSTORE
0000125d: PUSH1 0x20
0000125f: ADD
00001260: PUSH1 0x00
00001262: KECCAK256
00001263: PUSH1 0x00
00001265: SWAP1
00001266: SLOAD
00001267: SWAP1
00001268: PUSH2 0x0100
0000126b: EXP
0000126c: SWAP1
0000126d: DIV
0000126e: PUSH1 0xff
00001270: AND
00001271: ISZERO
00001272: PUSH2 0x127c
00001275: JUMPI
00001276: PUSH1 0x01
00001278: DUP3
00001279: ADD
0000127a: SWAP2
0000127b: POP
0000127c: JUMPDEST
0000127d: DUP1
0000127e: DUP1
0000127f: PUSH1 0x01
00001281: ADD
00001282: SWAP2
00001283: POP
00001284: POP
00001285: PUSH2 0x11cb
00001288: JUMP
00001289: JUMPDEST
0000128a: POP
0000128b: SWAP2
0000128c: SWAP1
0000128d: POP
0000128e: JUMP
0000128f: JUMPDEST
00001290: PUSH1 0x00
00001292: PUSH1 0x20
00001294: MSTORE
00001295: DUP1
00001296: PUSH1 0x00
00001298: MSTORE
00001299: PUSH1 0x40
0000129b: PUSH1 0x00
0000129d: KECCAK256
0000129e: PUSH1 0x00
000012a0: SWAP2
000012a1: POP
000012a2: SWAP1
000012a3: POP
000012a4: DUP1
000012a5: PUSH1 0x00
000012a7: ADD
000012a8: PUSH1 0x00
000012aa: SWAP1
000012ab: SLOAD
000012ac: SWAP1
000012ad: PUSH2 0x0100
000012b0: EXP
000012b1: SWAP1
000012b2: DIV
000012b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012c8: AND
000012c9: SWAP1
000012ca: DUP1
000012cb: PUSH1 0x01
000012cd: ADD
000012ce: SLOAD
000012cf: SWAP1
000012d0: DUP1
000012d1: PUSH1 0x02
000012d3: ADD
000012d4: SWAP1
000012d5: DUP1
000012d6: PUSH1 0x03
000012d8: ADD
000012d9: PUSH1 0x00
000012db: SWAP1
000012dc: SLOAD
000012dd: SWAP1
000012de: PUSH2 0x0100
000012e1: EXP
000012e2: SWAP1
000012e3: DIV
000012e4: PUSH1 0xff
000012e6: AND
000012e7: SWAP1
000012e8: DUP1
000012e9: PUSH1 0x04
000012eb: ADD
000012ec: SLOAD
000012ed: SWAP1
000012ee: POP
000012ef: DUP6
000012f0: JUMP
000012f1: JUMPDEST
000012f2: PUSH2 0x12f9
000012f5: PUSH2 0x2134
000012f8: JUMP
000012f9: JUMPDEST
000012fa: PUSH1 0x03
000012fc: DUP1
000012fd: SLOAD
000012fe: DUP1
000012ff: PUSH1 0x20
00001301: MUL
00001302: PUSH1 0x20
00001304: ADD
00001305: PUSH1 0x40
00001307: MLOAD
00001308: SWAP1
00001309: DUP2
0000130a: ADD
0000130b: PUSH1 0x40
0000130d: MSTORE
0000130e: DUP1
0000130f: SWAP3
00001310: SWAP2
00001311: SWAP1
00001312: DUP2
00001313: DUP2
00001314: MSTORE
00001315: PUSH1 0x20
00001317: ADD
00001318: DUP3
00001319: DUP1
0000131a: SLOAD
0000131b: DUP1
0000131c: ISZERO
0000131d: PUSH2 0x137b
00001320: JUMPI
00001321: PUSH1 0x20
00001323: MUL
00001324: DUP3
00001325: ADD
00001326: SWAP2
00001327: SWAP1
00001328: PUSH1 0x00
0000132a: MSTORE
0000132b: PUSH1 0x20
0000132d: PUSH1 0x00
0000132f: KECCAK256
00001330: SWAP1
00001331: JUMPDEST
00001332: DUP2
00001333: PUSH1 0x00
00001335: SWAP1
00001336: SLOAD
00001337: SWAP1
00001338: PUSH2 0x0100
0000133b: EXP
0000133c: SWAP1
0000133d: DIV
0000133e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001353: AND
00001354: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001369: AND
0000136a: DUP2
0000136b: MSTORE
0000136c: PUSH1 0x20
0000136e: ADD
0000136f: SWAP1
00001370: PUSH1 0x01
00001372: ADD
00001373: SWAP1
00001374: DUP1
00001375: DUP4
00001376: GT
00001377: PUSH2 0x1331
0000137a: JUMPI
0000137b: JUMPDEST
0000137c: POP
0000137d: POP
0000137e: POP
0000137f: POP
00001380: POP
00001381: SWAP1
00001382: POP
00001383: SWAP1
00001384: JUMP
00001385: JUMPDEST
00001386: PUSH2 0x138d
00001389: PUSH2 0x2148
0000138c: JUMP
0000138d: JUMPDEST
0000138e: PUSH2 0x1395
00001391: PUSH2 0x2148
00001394: JUMP
00001395: JUMPDEST
00001396: PUSH1 0x00
00001398: DUP1
00001399: PUSH1 0x05
0000139b: SLOAD
0000139c: PUSH1 0x40
0000139e: MLOAD
0000139f: DUP1
000013a0: MSIZE
000013a1: LT
000013a2: PUSH2 0x13a8
000013a5: JUMPI
000013a6: POP
000013a7: MSIZE
000013a8: JUMPDEST
000013a9: SWAP1
000013aa: DUP1
000013ab: DUP3
000013ac: MSTORE
000013ad: DUP1
000013ae: PUSH1 0x20
000013b0: MUL
000013b1: PUSH1 0x20
000013b3: ADD
000013b4: DUP3
000013b5: ADD
000013b6: PUSH1 0x40
000013b8: MSTORE
000013b9: POP
000013ba: SWAP3
000013bb: POP
000013bc: PUSH1 0x00
000013be: SWAP2
000013bf: POP
000013c0: PUSH1 0x00
000013c2: SWAP1
000013c3: POP
000013c4: JUMPDEST
000013c5: PUSH1 0x05
000013c7: SLOAD
000013c8: DUP2
000013c9: LT
000013ca: ISZERO
000013cb: PUSH2 0x1464
000013ce: JUMPI
000013cf: DUP6
000013d0: DUP1
000013d1: ISZERO
000013d2: PUSH2 0x13fb
000013d5: JUMPI
000013d6: POP
000013d7: PUSH1 0x00
000013d9: DUP1
000013da: DUP3
000013db: DUP2
000013dc: MSTORE
000013dd: PUSH1 0x20
000013df: ADD
000013e0: SWAP1
000013e1: DUP2
000013e2: MSTORE
000013e3: PUSH1 0x20
000013e5: ADD
000013e6: PUSH1 0x00
000013e8: KECCAK256
000013e9: PUSH1 0x03
000013eb: ADD
000013ec: PUSH1 0x00
000013ee: SWAP1
000013ef: SLOAD
000013f0: SWAP1
000013f1: PUSH2 0x0100
000013f4: EXP
000013f5: SWAP1
000013f6: DIV
000013f7: PUSH1 0xff
000013f9: AND
000013fa: ISZERO
000013fb: JUMPDEST
000013fc: DUP1
000013fd: PUSH2 0x142e
00001400: JUMPI
00001401: POP
00001402: DUP5
00001403: DUP1
00001404: ISZERO
00001405: PUSH2 0x142d
00001408: JUMPI
00001409: POP
0000140a: PUSH1 0x00
0000140c: DUP1
0000140d: DUP3
0000140e: DUP2
0000140f: MSTORE
00001410: PUSH1 0x20
00001412: ADD
00001413: SWAP1
00001414: DUP2
00001415: MSTORE
00001416: PUSH1 0x20
00001418: ADD
00001419: PUSH1 0x00
0000141b: KECCAK256
0000141c: PUSH1 0x03
0000141e: ADD
0000141f: PUSH1 0x00
00001421: SWAP1
00001422: SLOAD
00001423: SWAP1
00001424: PUSH2 0x0100
00001427: EXP
00001428: SWAP1
00001429: DIV
0000142a: PUSH1 0xff
0000142c: AND
0000142d: JUMPDEST
0000142e: JUMPDEST
0000142f: ISZERO
00001430: PUSH2 0x1457
00001433: JUMPI
00001434: DUP1
00001435: DUP4
00001436: DUP4
00001437: DUP2
00001438: MLOAD
00001439: DUP2
0000143a: LT
0000143b: ISZERO
0000143c: ISZERO
0000143d: PUSH2 0x1442
00001440: JUMPI
00001441: INVALID
00001442: JUMPDEST
00001443: SWAP1
00001444: PUSH1 0x20
00001446: ADD
00001447: SWAP1
00001448: PUSH1 0x20
0000144a: MUL
0000144b: ADD
0000144c: DUP2
0000144d: DUP2
0000144e: MSTORE
0000144f: POP
00001450: POP
00001451: PUSH1 0x01
00001453: DUP3
00001454: ADD
00001455: SWAP2
00001456: POP
00001457: JUMPDEST
00001458: DUP1
00001459: DUP1
0000145a: PUSH1 0x01
0000145c: ADD
0000145d: SWAP2
0000145e: POP
0000145f: POP
00001460: PUSH2 0x13c4
00001463: JUMP
00001464: JUMPDEST
00001465: DUP8
00001466: DUP8
00001467: SUB
00001468: PUSH1 0x40
0000146a: MLOAD
0000146b: DUP1
0000146c: MSIZE
0000146d: LT
0000146e: PUSH2 0x1474
00001471: JUMPI
00001472: POP
00001473: MSIZE
00001474: JUMPDEST
00001475: SWAP1
00001476: DUP1
00001477: DUP3
00001478: MSTORE
00001479: DUP1
0000147a: PUSH1 0x20
0000147c: MUL
0000147d: PUSH1 0x20
0000147f: ADD
00001480: DUP3
00001481: ADD
00001482: PUSH1 0x40
00001484: MSTORE
00001485: POP
00001486: SWAP4
00001487: POP
00001488: DUP8
00001489: SWAP1
0000148a: POP
0000148b: JUMPDEST
0000148c: DUP7
0000148d: DUP2
0000148e: LT
0000148f: ISZERO
00001490: PUSH2 0x14d6
00001493: JUMPI
00001494: DUP3
00001495: DUP2
00001496: DUP2
00001497: MLOAD
00001498: DUP2
00001499: LT
0000149a: ISZERO
0000149b: ISZERO
0000149c: PUSH2 0x14a1
0000149f: JUMPI
000014a0: INVALID
000014a1: JUMPDEST
000014a2: SWAP1
000014a3: PUSH1 0x20
000014a5: ADD
000014a6: SWAP1
000014a7: PUSH1 0x20
000014a9: MUL
000014aa: ADD
000014ab: MLOAD
000014ac: DUP5
000014ad: DUP10
000014ae: DUP4
000014af: SUB
000014b0: DUP2
000014b1: MLOAD
000014b2: DUP2
000014b3: LT
000014b4: ISZERO
000014b5: ISZERO
000014b6: PUSH2 0x14bb
000014b9: JUMPI
000014ba: INVALID
000014bb: JUMPDEST
000014bc: SWAP1
000014bd: PUSH1 0x20
000014bf: ADD
000014c0: SWAP1
000014c1: PUSH1 0x20
000014c3: MUL
000014c4: ADD
000014c5: DUP2
000014c6: DUP2
000014c7: MSTORE
000014c8: POP
000014c9: POP
000014ca: DUP1
000014cb: DUP1
000014cc: PUSH1 0x01
000014ce: ADD
000014cf: SWAP2
000014d0: POP
000014d1: POP
000014d2: PUSH2 0x148b
000014d5: JUMP
000014d6: JUMPDEST
000014d7: POP
000014d8: POP
000014d9: POP
000014da: SWAP5
000014db: SWAP4
000014dc: POP
000014dd: POP
000014de: POP
000014df: POP
000014e0: JUMP
000014e1: JUMPDEST
000014e2: PUSH2 0x14e9
000014e5: PUSH2 0x2134
000014e8: JUMP
000014e9: JUMPDEST
000014ea: PUSH2 0x14f1
000014ed: PUSH2 0x2134
000014f0: JUMP
000014f1: JUMPDEST
000014f2: PUSH1 0x00
000014f4: DUP1
000014f5: PUSH1 0x03
000014f7: DUP1
000014f8: SLOAD
000014f9: SWAP1
000014fa: POP
000014fb: PUSH1 0x40
000014fd: MLOAD
000014fe: DUP1
000014ff: MSIZE
00001500: LT
00001501: PUSH2 0x1507
00001504: JUMPI
00001505: POP
00001506: MSIZE
00001507: JUMPDEST
00001508: SWAP1
00001509: DUP1
0000150a: DUP3
0000150b: MSTORE
0000150c: DUP1
0000150d: PUSH1 0x20
0000150f: MUL
00001510: PUSH1 0x20
00001512: ADD
00001513: DUP3
00001514: ADD
00001515: PUSH1 0x40
00001517: MSTORE
00001518: POP
00001519: SWAP3
0000151a: POP
0000151b: PUSH1 0x00
0000151d: SWAP2
0000151e: POP
0000151f: PUSH1 0x00
00001521: SWAP1
00001522: POP
00001523: JUMPDEST
00001524: PUSH1 0x03
00001526: DUP1
00001527: SLOAD
00001528: SWAP1
00001529: POP
0000152a: DUP2
0000152b: LT
0000152c: ISZERO
0000152d: PUSH2 0x1666
00001530: JUMPI
00001531: PUSH1 0x01
00001533: PUSH1 0x00
00001535: DUP7
00001536: DUP2
00001537: MSTORE
00001538: PUSH1 0x20
0000153a: ADD
0000153b: SWAP1
0000153c: DUP2
0000153d: MSTORE
0000153e: PUSH1 0x20
00001540: ADD
00001541: PUSH1 0x00
00001543: KECCAK256
00001544: PUSH1 0x00
00001546: PUSH1 0x03
00001548: DUP4
00001549: DUP2
0000154a: SLOAD
0000154b: DUP2
0000154c: LT
0000154d: ISZERO
0000154e: ISZERO
0000154f: PUSH2 0x1554
00001552: JUMPI
00001553: INVALID
00001554: JUMPDEST
00001555: SWAP1
00001556: PUSH1 0x00
00001558: MSTORE
00001559: PUSH1 0x20
0000155b: PUSH1 0x00
0000155d: KECCAK256
0000155e: SWAP1
0000155f: ADD
00001560: PUSH1 0x00
00001562: SWAP1
00001563: SLOAD
00001564: SWAP1
00001565: PUSH2 0x0100
00001568: EXP
00001569: SWAP1
0000156a: DIV
0000156b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001580: AND
00001581: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001596: AND
00001597: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015ac: AND
000015ad: DUP2
000015ae: MSTORE
000015af: PUSH1 0x20
000015b1: ADD
000015b2: SWAP1
000015b3: DUP2
000015b4: MSTORE
000015b5: PUSH1 0x20
000015b7: ADD
000015b8: PUSH1 0x00
000015ba: KECCAK256
000015bb: PUSH1 0x00
000015bd: SWAP1
000015be: SLOAD
000015bf: SWAP1
000015c0: PUSH2 0x0100
000015c3: EXP
000015c4: SWAP1
000015c5: DIV
000015c6: PUSH1 0xff
000015c8: AND
000015c9: ISZERO
000015ca: PUSH2 0x1659
000015cd: JUMPI
000015ce: PUSH1 0x03
000015d0: DUP2
000015d1: DUP2
000015d2: SLOAD
000015d3: DUP2
000015d4: LT
000015d5: ISZERO
000015d6: ISZERO
000015d7: PUSH2 0x15dc
000015da: JUMPI
000015db: INVALID
000015dc: JUMPDEST
000015dd: SWAP1
000015de: PUSH1 0x00
000015e0: MSTORE
000015e1: PUSH1 0x20
000015e3: PUSH1 0x00
000015e5: KECCAK256
000015e6: SWAP1
000015e7: ADD
000015e8: PUSH1 0x00
000015ea: SWAP1
000015eb: SLOAD
000015ec: SWAP1
000015ed: PUSH2 0x0100
000015f0: EXP
000015f1: SWAP1
000015f2: DIV
000015f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001608: AND
00001609: DUP4
0000160a: DUP4
0000160b: DUP2
0000160c: MLOAD
0000160d: DUP2
0000160e: LT
0000160f: ISZERO
00001610: ISZERO
00001611: PUSH2 0x1616
00001614: JUMPI
00001615: INVALID
00001616: JUMPDEST
00001617: SWAP1
00001618: PUSH1 0x20
0000161a: ADD
0000161b: SWAP1
0000161c: PUSH1 0x20
0000161e: MUL
0000161f: ADD
00001620: SWAP1
00001621: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001636: AND
00001637: SWAP1
00001638: DUP2
00001639: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000164e: AND
0000164f: DUP2
00001650: MSTORE
00001651: POP
00001652: POP
00001653: PUSH1 0x01
00001655: DUP3
00001656: ADD
00001657: SWAP2
00001658: POP
00001659: JUMPDEST
0000165a: DUP1
0000165b: DUP1
0000165c: PUSH1 0x01
0000165e: ADD
0000165f: SWAP2
00001660: POP
00001661: POP
00001662: PUSH2 0x1523
00001665: JUMP
00001666: JUMPDEST
00001667: DUP2
00001668: PUSH1 0x40
0000166a: MLOAD
0000166b: DUP1
0000166c: MSIZE
0000166d: LT
0000166e: PUSH2 0x1674
00001671: JUMPI
00001672: POP
00001673: MSIZE
00001674: JUMPDEST
00001675: SWAP1
00001676: DUP1
00001677: DUP3
00001678: MSTORE
00001679: DUP1
0000167a: PUSH1 0x20
0000167c: MUL
0000167d: PUSH1 0x20
0000167f: ADD
00001680: DUP3
00001681: ADD
00001682: PUSH1 0x40
00001684: MSTORE
00001685: POP
00001686: SWAP4
00001687: POP
00001688: PUSH1 0x00
0000168a: SWAP1
0000168b: POP
0000168c: JUMPDEST
0000168d: DUP2
0000168e: DUP2
0000168f: LT
00001690: ISZERO
00001691: PUSH2 0x1703
00001694: JUMPI
00001695: DUP3
00001696: DUP2
00001697: DUP2
00001698: MLOAD
00001699: DUP2
0000169a: LT
0000169b: ISZERO
0000169c: ISZERO
0000169d: PUSH2 0x16a2
000016a0: JUMPI
000016a1: INVALID
000016a2: JUMPDEST
000016a3: SWAP1
000016a4: PUSH1 0x20
000016a6: ADD
000016a7: SWAP1
000016a8: PUSH1 0x20
000016aa: MUL
000016ab: ADD
000016ac: MLOAD
000016ad: DUP5
000016ae: DUP3
000016af: DUP2
000016b0: MLOAD
000016b1: DUP2
000016b2: LT
000016b3: ISZERO
000016b4: ISZERO
000016b5: PUSH2 0x16ba
000016b8: JUMPI
000016b9: INVALID
000016ba: JUMPDEST
000016bb: SWAP1
000016bc: PUSH1 0x20
000016be: ADD
000016bf: SWAP1
000016c0: PUSH1 0x20
000016c2: MUL
000016c3: ADD
000016c4: SWAP1
000016c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016da: AND
000016db: SWAP1
000016dc: DUP2
000016dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016f2: AND
000016f3: DUP2
000016f4: MSTORE
000016f5: POP
000016f6: POP
000016f7: DUP1
000016f8: DUP1
000016f9: PUSH1 0x01
000016fb: ADD
000016fc: SWAP2
000016fd: POP
000016fe: POP
000016ff: PUSH2 0x168c
00001702: JUMP
00001703: JUMPDEST
00001704: POP
00001705: POP
00001706: POP
00001707: SWAP2
00001708: SWAP1
00001709: POP
0000170a: JUMP
0000170b: JUMPDEST
0000170c: PUSH1 0x05
0000170e: SLOAD
0000170f: DUP2
00001710: JUMP
00001711: JUMPDEST
00001712: ADDRESS
00001713: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001728: AND
00001729: CALLER
0000172a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000173f: AND
00001740: EQ
00001741: ISZERO
00001742: ISZERO
00001743: PUSH2 0x174b
00001746: JUMPI
00001747: PUSH1 0x00
00001749: DUP1
0000174a: REVERT
0000174b: JUMPDEST
0000174c: PUSH1 0x03
0000174e: DUP1
0000174f: SLOAD
00001750: SWAP1
00001751: POP
00001752: DUP2
00001753: PUSH1 0x32
00001755: DUP3
00001756: GT
00001757: ISZERO
00001758: DUP1
00001759: ISZERO
0000175a: PUSH2 0x1763
0000175d: JUMPI
0000175e: POP
0000175f: DUP2
00001760: DUP2
00001761: GT
00001762: ISZERO
00001763: JUMPDEST
00001764: DUP1
00001765: ISZERO
00001766: PUSH2 0x176f
00001769: JUMPI
0000176a: POP
0000176b: PUSH1 0x00
0000176d: DUP2
0000176e: GT
0000176f: JUMPDEST
00001770: DUP1
00001771: ISZERO
00001772: PUSH2 0x177b
00001775: JUMPI
00001776: POP
00001777: PUSH1 0x00
00001779: DUP3
0000177a: GT
0000177b: JUMPDEST
0000177c: ISZERO
0000177d: ISZERO
0000177e: PUSH2 0x1786
00001781: JUMPI
00001782: PUSH1 0x00
00001784: DUP1
00001785: REVERT
00001786: JUMPDEST
00001787: DUP3
00001788: PUSH1 0x04
0000178a: DUP2
0000178b: SWAP1
0000178c: SSTORE
0000178d: POP
0000178e: PUSH32 0xa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a
000017af: DUP4
000017b0: PUSH1 0x40
000017b2: MLOAD
000017b3: DUP1
000017b4: DUP3
000017b5: DUP2
000017b6: MSTORE
000017b7: PUSH1 0x20
000017b9: ADD
000017ba: SWAP2
000017bb: POP
000017bc: POP
000017bd: PUSH1 0x40
000017bf: MLOAD
000017c0: DUP1
000017c1: SWAP2
000017c2: SUB
000017c3: SWAP1
000017c4: LOG1
000017c5: POP
000017c6: POP
000017c7: POP
000017c8: JUMP
000017c9: JUMPDEST
000017ca: CALLER
000017cb: PUSH1 0x02
000017cd: PUSH1 0x00
000017cf: DUP3
000017d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017e5: AND
000017e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017fb: AND
000017fc: DUP2
000017fd: MSTORE
000017fe: PUSH1 0x20
00001800: ADD
00001801: SWAP1
00001802: DUP2
00001803: MSTORE
00001804: PUSH1 0x20
00001806: ADD
00001807: PUSH1 0x00
00001809: KECCAK256
0000180a: PUSH1 0x00
0000180c: SWAP1
0000180d: SLOAD
0000180e: SWAP1
0000180f: PUSH2 0x0100
00001812: EXP
00001813: SWAP1
00001814: DIV
00001815: PUSH1 0xff
00001817: AND
00001818: ISZERO
00001819: ISZERO
0000181a: PUSH2 0x1822
0000181d: JUMPI
0000181e: PUSH1 0x00
00001820: DUP1
00001821: REVERT
00001822: JUMPDEST
00001823: DUP2
00001824: PUSH1 0x00
00001826: DUP1
00001827: PUSH1 0x00
00001829: DUP4
0000182a: DUP2
0000182b: MSTORE
0000182c: PUSH1 0x20
0000182e: ADD
0000182f: SWAP1
00001830: DUP2
00001831: MSTORE
00001832: PUSH1 0x20
00001834: ADD
00001835: PUSH1 0x00
00001837: KECCAK256
00001838: PUSH1 0x00
0000183a: ADD
0000183b: PUSH1 0x00
0000183d: SWAP1
0000183e: SLOAD
0000183f: SWAP1
00001840: PUSH2 0x0100
00001843: EXP
00001844: SWAP1
00001845: DIV
00001846: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000185b: AND
0000185c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001871: AND
00001872: GT
00001873: ISZERO
00001874: ISZERO
00001875: PUSH2 0x187d
00001878: JUMPI
00001879: PUSH1 0x00
0000187b: DUP1
0000187c: REVERT
0000187d: JUMPDEST
0000187e: DUP3
0000187f: CALLER
00001880: PUSH1 0x01
00001882: PUSH1 0x00
00001884: DUP4
00001885: DUP2
00001886: MSTORE
00001887: PUSH1 0x20
00001889: ADD
0000188a: SWAP1
0000188b: DUP2
0000188c: MSTORE
0000188d: PUSH1 0x20
0000188f: ADD
00001890: PUSH1 0x00
00001892: KECCAK256
00001893: PUSH1 0x00
00001895: DUP3
00001896: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018ab: AND
000018ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018c1: AND
000018c2: DUP2
000018c3: MSTORE
000018c4: PUSH1 0x20
000018c6: ADD
000018c7: SWAP1
000018c8: DUP2
000018c9: MSTORE
000018ca: PUSH1 0x20
000018cc: ADD
000018cd: PUSH1 0x00
000018cf: KECCAK256
000018d0: PUSH1 0x00
000018d2: SWAP1
000018d3: SLOAD
000018d4: SWAP1
000018d5: PUSH2 0x0100
000018d8: EXP
000018d9: SWAP1
000018da: DIV
000018db: PUSH1 0xff
000018dd: AND
000018de: ISZERO
000018df: ISZERO
000018e0: ISZERO
000018e1: PUSH2 0x18e9
000018e4: JUMPI
000018e5: PUSH1 0x00
000018e7: DUP1
000018e8: REVERT
000018e9: JUMPDEST
000018ea: PUSH1 0x01
000018ec: DUP1
000018ed: PUSH1 0x00
000018ef: DUP8
000018f0: DUP2
000018f1: MSTORE
000018f2: PUSH1 0x20
000018f4: ADD
000018f5: SWAP1
000018f6: DUP2
000018f7: MSTORE
000018f8: PUSH1 0x20
000018fa: ADD
000018fb: PUSH1 0x00
000018fd: KECCAK256
000018fe: PUSH1 0x00
00001900: CALLER
00001901: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001916: AND
00001917: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000192c: AND
0000192d: DUP2
0000192e: MSTORE
0000192f: PUSH1 0x20
00001931: ADD
00001932: SWAP1
00001933: DUP2
00001934: MSTORE
00001935: PUSH1 0x20
00001937: ADD
00001938: PUSH1 0x00
0000193a: KECCAK256
0000193b: PUSH1 0x00
0000193d: PUSH2 0x0100
00001940: EXP
00001941: DUP2
00001942: SLOAD
00001943: DUP2
00001944: PUSH1 0xff
00001946: MUL
00001947: NOT
00001948: AND
00001949: SWAP1
0000194a: DUP4
0000194b: ISZERO
0000194c: ISZERO
0000194d: MUL
0000194e: OR
0000194f: SWAP1
00001950: SSTORE
00001951: POP
00001952: DUP5
00001953: CALLER
00001954: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001969: AND
0000196a: PUSH32 0x4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef
0000198b: PUSH1 0x40
0000198d: MLOAD
0000198e: PUSH1 0x40
00001990: MLOAD
00001991: DUP1
00001992: SWAP2
00001993: SUB
00001994: SWAP1
00001995: LOG3
00001996: PUSH2 0x199e
00001999: DUP6
0000199a: PUSH2 0x1ce6
0000199d: JUMP
0000199e: JUMPDEST
0000199f: POP
000019a0: POP
000019a1: POP
000019a2: POP
000019a3: POP
000019a4: JUMP
000019a5: JUMPDEST
000019a6: PUSH1 0x00
000019a8: PUSH2 0x19b2
000019ab: DUP5
000019ac: DUP5
000019ad: DUP5
000019ae: PUSH2 0x1f7a
000019b1: JUMP
000019b2: JUMPDEST
000019b3: SWAP1
000019b4: POP
000019b5: PUSH2 0x19bd
000019b8: DUP2
000019b9: PUSH2 0x17c9
000019bc: JUMP
000019bd: JUMPDEST
000019be: SWAP4
000019bf: SWAP3
000019c0: POP
000019c1: POP
000019c2: POP
000019c3: JUMP
000019c4: JUMPDEST
000019c5: PUSH1 0x32
000019c7: DUP2
000019c8: JUMP
000019c9: JUMPDEST
000019ca: PUSH1 0x04
000019cc: SLOAD
000019cd: DUP2
000019ce: JUMP
000019cf: JUMPDEST
000019d0: PUSH1 0x00
000019d2: ADDRESS
000019d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019e8: AND
000019e9: CALLER
000019ea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019ff: AND
00001a00: EQ
00001a01: ISZERO
00001a02: ISZERO
00001a03: PUSH2 0x1a0b
00001a06: JUMPI
00001a07: PUSH1 0x00
00001a09: DUP1
00001a0a: REVERT
00001a0b: JUMPDEST
00001a0c: DUP3
00001a0d: PUSH1 0x02
00001a0f: PUSH1 0x00
00001a11: DUP3
00001a12: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a27: AND
00001a28: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a3d: AND
00001a3e: DUP2
00001a3f: MSTORE
00001a40: PUSH1 0x20
00001a42: ADD
00001a43: SWAP1
00001a44: DUP2
00001a45: MSTORE
00001a46: PUSH1 0x20
00001a48: ADD
00001a49: PUSH1 0x00
00001a4b: KECCAK256
00001a4c: PUSH1 0x00
00001a4e: SWAP1
00001a4f: SLOAD
00001a50: SWAP1
00001a51: PUSH2 0x0100
00001a54: EXP
00001a55: SWAP1
00001a56: DIV
00001a57: PUSH1 0xff
00001a59: AND
00001a5a: ISZERO
00001a5b: ISZERO
00001a5c: PUSH2 0x1a64
00001a5f: JUMPI
00001a60: PUSH1 0x00
00001a62: DUP1
00001a63: REVERT
00001a64: JUMPDEST
00001a65: DUP3
00001a66: PUSH1 0x02
00001a68: PUSH1 0x00
00001a6a: DUP3
00001a6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a80: AND
00001a81: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a96: AND
00001a97: DUP2
00001a98: MSTORE
00001a99: PUSH1 0x20
00001a9b: ADD
00001a9c: SWAP1
00001a9d: DUP2
00001a9e: MSTORE
00001a9f: PUSH1 0x20
00001aa1: ADD
00001aa2: PUSH1 0x00
00001aa4: KECCAK256
00001aa5: PUSH1 0x00
00001aa7: SWAP1
00001aa8: SLOAD
00001aa9: SWAP1
00001aaa: PUSH2 0x0100
00001aad: EXP
00001aae: SWAP1
00001aaf: DIV
00001ab0: PUSH1 0xff
00001ab2: AND
00001ab3: ISZERO
00001ab4: ISZERO
00001ab5: ISZERO
00001ab6: PUSH2 0x1abe
00001ab9: JUMPI
00001aba: PUSH1 0x00
00001abc: DUP1
00001abd: REVERT
00001abe: JUMPDEST
00001abf: PUSH1 0x00
00001ac1: SWAP3
00001ac2: POP
00001ac3: JUMPDEST
00001ac4: PUSH1 0x03
00001ac6: DUP1
00001ac7: SLOAD
00001ac8: SWAP1
00001ac9: POP
00001aca: DUP4
00001acb: LT
00001acc: ISZERO
00001acd: PUSH2 0x1ba9
00001ad0: JUMPI
00001ad1: DUP5
00001ad2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ae7: AND
00001ae8: PUSH1 0x03
00001aea: DUP5
00001aeb: DUP2
00001aec: SLOAD
00001aed: DUP2
00001aee: LT
00001aef: ISZERO
00001af0: ISZERO
00001af1: PUSH2 0x1af6
00001af4: JUMPI
00001af5: INVALID
00001af6: JUMPDEST
00001af7: SWAP1
00001af8: PUSH1 0x00
00001afa: MSTORE
00001afb: PUSH1 0x20
00001afd: PUSH1 0x00
00001aff: KECCAK256
00001b00: SWAP1
00001b01: ADD
00001b02: PUSH1 0x00
00001b04: SWAP1
00001b05: SLOAD
00001b06: SWAP1
00001b07: PUSH2 0x0100
00001b0a: EXP
00001b0b: SWAP1
00001b0c: DIV
00001b0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b22: AND
00001b23: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b38: AND
00001b39: EQ
00001b3a: ISZERO
00001b3b: PUSH2 0x1b9c
00001b3e: JUMPI
00001b3f: DUP4
00001b40: PUSH1 0x03
00001b42: DUP5
00001b43: DUP2
00001b44: SLOAD
00001b45: DUP2
00001b46: LT
00001b47: ISZERO
00001b48: ISZERO
00001b49: PUSH2 0x1b4e
00001b4c: JUMPI
00001b4d: INVALID
00001b4e: JUMPDEST
00001b4f: SWAP1
00001b50: PUSH1 0x00
00001b52: MSTORE
00001b53: PUSH1 0x20
00001b55: PUSH1 0x00
00001b57: KECCAK256
00001b58: SWAP1
00001b59: ADD
00001b5a: PUSH1 0x00
00001b5c: PUSH2 0x0100
00001b5f: EXP
00001b60: DUP2
00001b61: SLOAD
00001b62: DUP2
00001b63: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b78: MUL
00001b79: NOT
00001b7a: AND
00001b7b: SWAP1
00001b7c: DUP4
00001b7d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b92: AND
00001b93: MUL
00001b94: OR
00001b95: SWAP1
00001b96: SSTORE
00001b97: POP
00001b98: PUSH2 0x1ba9
00001b9b: JUMP
00001b9c: JUMPDEST
00001b9d: DUP3
00001b9e: DUP1
00001b9f: PUSH1 0x01
00001ba1: ADD
00001ba2: SWAP4
00001ba3: POP
00001ba4: POP
00001ba5: PUSH2 0x1ac3
00001ba8: JUMP
00001ba9: JUMPDEST
00001baa: PUSH1 0x00
00001bac: PUSH1 0x02
00001bae: PUSH1 0x00
00001bb0: DUP8
00001bb1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bc6: AND
00001bc7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bdc: AND
00001bdd: DUP2
00001bde: MSTORE
00001bdf: PUSH1 0x20
00001be1: ADD
00001be2: SWAP1
00001be3: DUP2
00001be4: MSTORE
00001be5: PUSH1 0x20
00001be7: ADD
00001be8: PUSH1 0x00
00001bea: KECCAK256
00001beb: PUSH1 0x00
00001bed: PUSH2 0x0100
00001bf0: EXP
00001bf1: DUP2
00001bf2: SLOAD
00001bf3: DUP2
00001bf4: PUSH1 0xff
00001bf6: MUL
00001bf7: NOT
00001bf8: AND
00001bf9: SWAP1
00001bfa: DUP4
00001bfb: ISZERO
00001bfc: ISZERO
00001bfd: MUL
00001bfe: OR
00001bff: SWAP1
00001c00: SSTORE
00001c01: POP
00001c02: PUSH1 0x01
00001c04: PUSH1 0x02
00001c06: PUSH1 0x00
00001c08: DUP7
00001c09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c1e: AND
00001c1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c34: AND
00001c35: DUP2
00001c36: MSTORE
00001c37: PUSH1 0x20
00001c39: ADD
00001c3a: SWAP1
00001c3b: DUP2
00001c3c: MSTORE
00001c3d: PUSH1 0x20
00001c3f: ADD
00001c40: PUSH1 0x00
00001c42: KECCAK256
00001c43: PUSH1 0x00
00001c45: PUSH2 0x0100
00001c48: EXP
00001c49: DUP2
00001c4a: SLOAD
00001c4b: DUP2
00001c4c: PUSH1 0xff
00001c4e: MUL
00001c4f: NOT
00001c50: AND
00001c51: SWAP1
00001c52: DUP4
00001c53: ISZERO
00001c54: ISZERO
00001c55: MUL
00001c56: OR
00001c57: SWAP1
00001c58: SSTORE
00001c59: POP
00001c5a: DUP5
00001c5b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c70: AND
00001c71: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
00001c92: PUSH1 0x40
00001c94: MLOAD
00001c95: PUSH1 0x40
00001c97: MLOAD
00001c98: DUP1
00001c99: SWAP2
00001c9a: SUB
00001c9b: SWAP1
00001c9c: LOG2
00001c9d: DUP4
00001c9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001cb3: AND
00001cb4: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
00001cd5: PUSH1 0x40
00001cd7: MLOAD
00001cd8: PUSH1 0x40
00001cda: MLOAD
00001cdb: DUP1
00001cdc: SWAP2
00001cdd: SUB
00001cde: SWAP1
00001cdf: LOG2
00001ce0: POP
00001ce1: POP
00001ce2: POP
00001ce3: POP
00001ce4: POP
00001ce5: JUMP
00001ce6: JUMPDEST
00001ce7: PUSH1 0x00
00001ce9: CALLER
00001cea: PUSH1 0x02
00001cec: PUSH1 0x00
00001cee: DUP3
00001cef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d04: AND
00001d05: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d1a: AND
00001d1b: DUP2
00001d1c: MSTORE
00001d1d: PUSH1 0x20
00001d1f: ADD
00001d20: SWAP1
00001d21: DUP2
00001d22: MSTORE
00001d23: PUSH1 0x20
00001d25: ADD
00001d26: PUSH1 0x00
00001d28: KECCAK256
00001d29: PUSH1 0x00
00001d2b: SWAP1
00001d2c: SLOAD
00001d2d: SWAP1
00001d2e: PUSH2 0x0100
00001d31: EXP
00001d32: SWAP1
00001d33: DIV
00001d34: PUSH1 0xff
00001d36: AND
00001d37: ISZERO
00001d38: ISZERO
00001d39: PUSH2 0x1d41
00001d3c: JUMPI
00001d3d: PUSH1 0x00
00001d3f: DUP1
00001d40: REVERT
00001d41: JUMPDEST
00001d42: DUP3
00001d43: CALLER
00001d44: PUSH1 0x01
00001d46: PUSH1 0x00
00001d48: DUP4
00001d49: DUP2
00001d4a: MSTORE
00001d4b: PUSH1 0x20
00001d4d: ADD
00001d4e: SWAP1
00001d4f: DUP2
00001d50: MSTORE
00001d51: PUSH1 0x20
00001d53: ADD
00001d54: PUSH1 0x00
00001d56: KECCAK256
00001d57: PUSH1 0x00
00001d59: DUP3
00001d5a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d6f: AND
00001d70: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d85: AND
00001d86: DUP2
00001d87: MSTORE
00001d88: PUSH1 0x20
00001d8a: ADD
00001d8b: SWAP1
00001d8c: DUP2
00001d8d: MSTORE
00001d8e: PUSH1 0x20
00001d90: ADD
00001d91: PUSH1 0x00
00001d93: KECCAK256
00001d94: PUSH1 0x00
00001d96: SWAP1
00001d97: SLOAD
00001d98: SWAP1
00001d99: PUSH2 0x0100
00001d9c: EXP
00001d9d: SWAP1
00001d9e: DIV
00001d9f: PUSH1 0xff
00001da1: AND
00001da2: ISZERO
00001da3: ISZERO
00001da4: PUSH2 0x1dac
00001da7: JUMPI
00001da8: PUSH1 0x00
00001daa: DUP1
00001dab: REVERT
00001dac: JUMPDEST
00001dad: DUP5
00001dae: PUSH1 0x00
00001db0: DUP1
00001db1: DUP3
00001db2: DUP2
00001db3: MSTORE
00001db4: PUSH1 0x20
00001db6: ADD
00001db7: SWAP1
00001db8: DUP2
00001db9: MSTORE
00001dba: PUSH1 0x20
00001dbc: ADD
00001dbd: PUSH1 0x00
00001dbf: KECCAK256
00001dc0: PUSH1 0x03
00001dc2: ADD
00001dc3: PUSH1 0x00
00001dc5: SWAP1
00001dc6: SLOAD
00001dc7: SWAP1
00001dc8: PUSH2 0x0100
00001dcb: EXP
00001dcc: SWAP1
00001dcd: DIV
00001dce: PUSH1 0xff
00001dd0: AND
00001dd1: ISZERO
00001dd2: ISZERO
00001dd3: ISZERO
00001dd4: PUSH2 0x1ddc
00001dd7: JUMPI
00001dd8: PUSH1 0x00
00001dda: DUP1
00001ddb: REVERT
00001ddc: JUMPDEST
00001ddd: PUSH1 0x00
00001ddf: DUP1
00001de0: DUP8
00001de1: DUP2
00001de2: MSTORE
00001de3: PUSH1 0x20
00001de5: ADD
00001de6: SWAP1
00001de7: DUP2
00001de8: MSTORE
00001de9: PUSH1 0x20
00001deb: ADD
00001dec: PUSH1 0x00
00001dee: KECCAK256
00001def: SWAP5
00001df0: POP
00001df1: PUSH2 0x1df9
00001df4: DUP7
00001df5: PUSH2 0x10c8
00001df8: JUMP
00001df9: JUMPDEST
00001dfa: DUP1
00001dfb: ISZERO
00001dfc: PUSH2 0x1e0a
00001dff: JUMPI
00001e00: POP
00001e01: PUSH2 0x1e09
00001e04: DUP7
00001e05: PUSH2 0x0e8f
00001e08: JUMP
00001e09: JUMPDEST
00001e0a: JUMPDEST
00001e0b: ISZERO
00001e0c: PUSH2 0x1f44
00001e0f: JUMPI
00001e10: PUSH1 0x01
00001e12: DUP6
00001e13: PUSH1 0x03
00001e15: ADD
00001e16: PUSH1 0x00
00001e18: PUSH2 0x0100
00001e1b: EXP
00001e1c: DUP2
00001e1d: SLOAD
00001e1e: DUP2
00001e1f: PUSH1 0xff
00001e21: MUL
00001e22: NOT
00001e23: AND
00001e24: SWAP1
00001e25: DUP4
00001e26: ISZERO
00001e27: ISZERO
00001e28: MUL
00001e29: OR
00001e2a: SWAP1
00001e2b: SSTORE
00001e2c: POP
00001e2d: DUP5
00001e2e: PUSH1 0x00
00001e30: ADD
00001e31: PUSH1 0x00
00001e33: SWAP1
00001e34: SLOAD
00001e35: SWAP1
00001e36: PUSH2 0x0100
00001e39: EXP
00001e3a: SWAP1
00001e3b: DIV
00001e3c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e51: AND
00001e52: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e67: AND
00001e68: DUP6
00001e69: PUSH1 0x01
00001e6b: ADD
00001e6c: SLOAD
00001e6d: DUP7
00001e6e: PUSH1 0x02
00001e70: ADD
00001e71: PUSH1 0x40
00001e73: MLOAD
00001e74: DUP1
00001e75: DUP3
00001e76: DUP1
00001e77: SLOAD
00001e78: PUSH1 0x01
00001e7a: DUP2
00001e7b: PUSH1 0x01
00001e7d: AND
00001e7e: ISZERO
00001e7f: PUSH2 0x0100
00001e82: MUL
00001e83: SUB
00001e84: AND
00001e85: PUSH1 0x02
00001e87: SWAP1
00001e88: DIV
00001e89: DUP1
00001e8a: ISZERO
00001e8b: PUSH2 0x1ed5
00001e8e: JUMPI
00001e8f: DUP1
00001e90: PUSH1 0x1f
00001e92: LT
00001e93: PUSH2 0x1eaa
00001e96: JUMPI
00001e97: PUSH2 0x0100
00001e9a: DUP1
00001e9b: DUP4
00001e9c: SLOAD
00001e9d: DIV
00001e9e: MUL
00001e9f: DUP4
00001ea0: MSTORE
00001ea1: SWAP2
00001ea2: PUSH1 0x20
00001ea4: ADD
00001ea5: SWAP2
00001ea6: PUSH2 0x1ed5
00001ea9: JUMP
00001eaa: JUMPDEST
00001eab: DUP3
00001eac: ADD
00001ead: SWAP2
00001eae: SWAP1
00001eaf: PUSH1 0x00
00001eb1: MSTORE
00001eb2: PUSH1 0x20
00001eb4: PUSH1 0x00
00001eb6: KECCAK256
00001eb7: SWAP1
00001eb8: JUMPDEST
00001eb9: DUP2
00001eba: SLOAD
00001ebb: DUP2
00001ebc: MSTORE
00001ebd: SWAP1
00001ebe: PUSH1 0x01
00001ec0: ADD
00001ec1: SWAP1
00001ec2: PUSH1 0x20
00001ec4: ADD
00001ec5: DUP1
00001ec6: DUP4
00001ec7: GT
00001ec8: PUSH2 0x1eb8
00001ecb: JUMPI
00001ecc: DUP3
00001ecd: SWAP1
00001ece: SUB
00001ecf: PUSH1 0x1f
00001ed1: AND
00001ed2: DUP3
00001ed3: ADD
00001ed4: SWAP2
00001ed5: JUMPDEST
00001ed6: POP
00001ed7: POP
00001ed8: SWAP2
00001ed9: POP
00001eda: POP
00001edb: PUSH1 0x00
00001edd: PUSH1 0x40
00001edf: MLOAD
00001ee0: DUP1
00001ee1: DUP4
00001ee2: SUB
00001ee3: DUP2
00001ee4: DUP6
00001ee5: DUP8
00001ee6: PUSH2 0x8796
00001ee9: GAS
00001eea: SUB
00001eeb: CALL
00001eec: SWAP3
00001eed: POP
00001eee: POP
00001eef: POP
00001ef0: ISZERO
00001ef1: PUSH2 0x1f26
00001ef4: JUMPI
00001ef5: DUP6
00001ef6: PUSH32 0x33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed75
00001f17: PUSH1 0x40
00001f19: MLOAD
00001f1a: PUSH1 0x40
00001f1c: MLOAD
00001f1d: DUP1
00001f1e: SWAP2
00001f1f: SUB
00001f20: SWAP1
00001f21: LOG2
00001f22: PUSH2 0x1f72
00001f25: JUMP
00001f26: JUMPDEST
00001f27: PUSH1 0x00
00001f29: DUP6
00001f2a: PUSH1 0x03
00001f2c: ADD
00001f2d: PUSH1 0x00
00001f2f: PUSH2 0x0100
00001f32: EXP
00001f33: DUP2
00001f34: SLOAD
00001f35: DUP2
00001f36: PUSH1 0xff
00001f38: MUL
00001f39: NOT
00001f3a: AND
00001f3b: SWAP1
00001f3c: DUP4
00001f3d: ISZERO
00001f3e: ISZERO
00001f3f: MUL
00001f40: OR
00001f41: SWAP1
00001f42: SSTORE
00001f43: POP
00001f44: JUMPDEST
00001f45: DUP6
00001f46: PUSH32 0x526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b79236
00001f67: PUSH1 0x40
00001f69: MLOAD
00001f6a: PUSH1 0x40
00001f6c: MLOAD
00001f6d: DUP1
00001f6e: SWAP2
00001f6f: SUB
00001f70: SWAP1
00001f71: LOG2
00001f72: JUMPDEST
00001f73: POP
00001f74: POP
00001f75: POP
00001f76: POP
00001f77: POP
00001f78: POP
00001f79: JUMP
00001f7a: JUMPDEST
00001f7b: PUSH1 0x00
00001f7d: DUP4
00001f7e: PUSH1 0x00
00001f80: DUP2
00001f81: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f96: AND
00001f97: EQ
00001f98: ISZERO
00001f99: ISZERO
00001f9a: ISZERO
00001f9b: PUSH2 0x1fa3
00001f9e: JUMPI
00001f9f: PUSH1 0x00
00001fa1: DUP1
00001fa2: REVERT
00001fa3: JUMPDEST
00001fa4: PUSH1 0x05
00001fa6: SLOAD
00001fa7: SWAP2
00001fa8: POP
00001fa9: PUSH1 0xa0
00001fab: PUSH1 0x40
00001fad: MLOAD
00001fae: SWAP1
00001faf: DUP2
00001fb0: ADD
00001fb1: PUSH1 0x40
00001fb3: MSTORE
00001fb4: DUP1
00001fb5: DUP7
00001fb6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fcb: AND
00001fcc: DUP2
00001fcd: MSTORE
00001fce: PUSH1 0x20
00001fd0: ADD
00001fd1: DUP6
00001fd2: DUP2
00001fd3: MSTORE
00001fd4: PUSH1 0x20
00001fd6: ADD
00001fd7: DUP5
00001fd8: DUP2
00001fd9: MSTORE
00001fda: PUSH1 0x20
00001fdc: ADD
00001fdd: PUSH1 0x00
00001fdf: ISZERO
00001fe0: ISZERO
00001fe1: DUP2
00001fe2: MSTORE
00001fe3: PUSH1 0x20
00001fe5: ADD
00001fe6: TIMESTAMP
00001fe7: DUP2
00001fe8: MSTORE
00001fe9: POP
00001fea: PUSH1 0x00
00001fec: DUP1
00001fed: DUP5
00001fee: DUP2
00001fef: MSTORE
00001ff0: PUSH1 0x20
00001ff2: ADD
00001ff3: SWAP1
00001ff4: DUP2
00001ff5: MSTORE
00001ff6: PUSH1 0x20
00001ff8: ADD
00001ff9: PUSH1 0x00
00001ffb: KECCAK256
00001ffc: PUSH1 0x00
00001ffe: DUP3
00001fff: ADD
00002000: MLOAD
00002001: DUP2
00002002: PUSH1 0x00
00002004: ADD
00002005: PUSH1 0x00
00002007: PUSH2 0x0100
0000200a: EXP
0000200b: DUP2
0000200c: SLOAD
0000200d: DUP2
0000200e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002023: MUL
00002024: NOT
00002025: AND
00002026: SWAP1
00002027: DUP4
00002028: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000203d: AND
0000203e: MUL
0000203f: OR
00002040: SWAP1
00002041: SSTORE
00002042: POP
00002043: PUSH1 0x20
00002045: DUP3
00002046: ADD
00002047: MLOAD
00002048: DUP2
00002049: PUSH1 0x01
0000204b: ADD
0000204c: SSTORE
0000204d: PUSH1 0x40
0000204f: DUP3
00002050: ADD
00002051: MLOAD
00002052: DUP2
00002053: PUSH1 0x02
00002055: ADD
00002056: SWAP1
00002057: DUP1
00002058: MLOAD
00002059: SWAP1
0000205a: PUSH1 0x20
0000205c: ADD
0000205d: SWAP1
0000205e: PUSH2 0x2068
00002061: SWAP3
00002062: SWAP2
00002063: SWAP1
00002064: PUSH2 0x215c
00002067: JUMP
00002068: JUMPDEST
00002069: POP
0000206a: PUSH1 0x60
0000206c: DUP3
0000206d: ADD
0000206e: MLOAD
0000206f: DUP2
00002070: PUSH1 0x03
00002072: ADD
00002073: PUSH1 0x00
00002075: PUSH2 0x0100
00002078: EXP
00002079: DUP2
0000207a: SLOAD
0000207b: DUP2
0000207c: PUSH1 0xff
0000207e: MUL
0000207f: NOT
00002080: AND
00002081: SWAP1
00002082: DUP4
00002083: ISZERO
00002084: ISZERO
00002085: MUL
00002086: OR
00002087: SWAP1
00002088: SSTORE
00002089: POP
0000208a: PUSH1 0x80
0000208c: DUP3
0000208d: ADD
0000208e: MLOAD
0000208f: DUP2
00002090: PUSH1 0x04
00002092: ADD
00002093: SSTORE
00002094: SWAP1
00002095: POP
00002096: POP
00002097: PUSH1 0x01
00002099: PUSH1 0x05
0000209b: PUSH1 0x00
0000209d: DUP3
0000209e: DUP3
0000209f: SLOAD
000020a0: ADD
000020a1: SWAP3
000020a2: POP
000020a3: POP
000020a4: DUP2
000020a5: SWAP1
000020a6: SSTORE
000020a7: POP
000020a8: DUP2
000020a9: PUSH32 0xc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e51
000020ca: PUSH1 0x40
000020cc: MLOAD
000020cd: PUSH1 0x40
000020cf: MLOAD
000020d0: DUP1
000020d1: SWAP2
000020d2: SUB
000020d3: SWAP1
000020d4: LOG2
000020d5: POP
000020d6: SWAP4
000020d7: SWAP3
000020d8: POP
000020d9: POP
000020da: POP
000020db: JUMP
000020dc: JUMPDEST
000020dd: DUP2
000020de: SLOAD
000020df: DUP2
000020e0: DUP4
000020e1: SSTORE
000020e2: DUP2
000020e3: DUP2
000020e4: ISZERO
000020e5: GT
000020e6: PUSH2 0x2103
000020e9: JUMPI
000020ea: DUP2
000020eb: DUP4
000020ec: PUSH1 0x00
000020ee: MSTORE
000020ef: PUSH1 0x20
000020f1: PUSH1 0x00
000020f3: KECCAK256
000020f4: SWAP2
000020f5: DUP3
000020f6: ADD
000020f7: SWAP2
000020f8: ADD
000020f9: PUSH2 0x2102
000020fc: SWAP2
000020fd: SWAP1
000020fe: PUSH2 0x21dc
00002101: JUMP
00002102: JUMPDEST
00002103: JUMPDEST
00002104: POP
00002105: POP
00002106: POP
00002107: JUMP
00002108: JUMPDEST
00002109: DUP2
0000210a: SLOAD
0000210b: DUP2
0000210c: DUP4
0000210d: SSTORE
0000210e: DUP2
0000210f: DUP2
00002110: ISZERO
00002111: GT
00002112: PUSH2 0x212f
00002115: JUMPI
00002116: DUP2
00002117: DUP4
00002118: PUSH1 0x00
0000211a: MSTORE
0000211b: PUSH1 0x20
0000211d: PUSH1 0x00
0000211f: KECCAK256
00002120: SWAP2
00002121: DUP3
00002122: ADD
00002123: SWAP2
00002124: ADD
00002125: PUSH2 0x212e
00002128: SWAP2
00002129: SWAP1
0000212a: PUSH2 0x21dc
0000212d: JUMP
0000212e: JUMPDEST
0000212f: JUMPDEST
00002130: POP
00002131: POP
00002132: POP
00002133: JUMP
00002134: JUMPDEST
00002135: PUSH1 0x20
00002137: PUSH1 0x40
00002139: MLOAD
0000213a: SWAP1
0000213b: DUP2
0000213c: ADD
0000213d: PUSH1 0x40
0000213f: MSTORE
00002140: DUP1
00002141: PUSH1 0x00
00002143: DUP2
00002144: MSTORE
00002145: POP
00002146: SWAP1
00002147: JUMP
00002148: JUMPDEST
00002149: PUSH1 0x20
0000214b: PUSH1 0x40
0000214d: MLOAD
0000214e: SWAP1
0000214f: DUP2
00002150: ADD
00002151: PUSH1 0x40
00002153: MSTORE
00002154: DUP1
00002155: PUSH1 0x00
00002157: DUP2
00002158: MSTORE
00002159: POP
0000215a: SWAP1
0000215b: JUMP
0000215c: JUMPDEST
0000215d: DUP3
0000215e: DUP1
0000215f: SLOAD
00002160: PUSH1 0x01
00002162: DUP2
00002163: PUSH1 0x01
00002165: AND
00002166: ISZERO
00002167: PUSH2 0x0100
0000216a: MUL
0000216b: SUB
0000216c: AND
0000216d: PUSH1 0x02
0000216f: SWAP1
00002170: DIV
00002171: SWAP1
00002172: PUSH1 0x00
00002174: MSTORE
00002175: PUSH1 0x20
00002177: PUSH1 0x00
00002179: KECCAK256
0000217a: SWAP1
0000217b: PUSH1 0x1f
0000217d: ADD
0000217e: PUSH1 0x20
00002180: SWAP1
00002181: DIV
00002182: DUP2
00002183: ADD
00002184: SWAP3
00002185: DUP3
00002186: PUSH1 0x1f
00002188: LT
00002189: PUSH2 0x219d
0000218c: JUMPI
0000218d: DUP1
0000218e: MLOAD
0000218f: PUSH1 0xff
00002191: NOT
00002192: AND
00002193: DUP4
00002194: DUP1
00002195: ADD
00002196: OR
00002197: DUP6
00002198: SSTORE
00002199: PUSH2 0x21cb
0000219c: JUMP
0000219d: JUMPDEST
0000219e: DUP3
0000219f: DUP1
000021a0: ADD
000021a1: PUSH1 0x01
000021a3: ADD
000021a4: DUP6
000021a5: SSTORE
000021a6: DUP3
000021a7: ISZERO
000021a8: PUSH2 0x21cb
000021ab: JUMPI
000021ac: SWAP2
000021ad: DUP3
000021ae: ADD
000021af: JUMPDEST
000021b0: DUP3
000021b1: DUP2
000021b2: GT
000021b3: ISZERO
000021b4: PUSH2 0x21ca
000021b7: JUMPI
000021b8: DUP3
000021b9: MLOAD
000021ba: DUP3
000021bb: SSTORE
000021bc: SWAP2
000021bd: PUSH1 0x20
000021bf: ADD
000021c0: SWAP2
000021c1: SWAP1
000021c2: PUSH1 0x01
000021c4: ADD
000021c5: SWAP1
000021c6: PUSH2 0x21af
000021c9: JUMP
000021ca: JUMPDEST
000021cb: JUMPDEST
000021cc: POP
000021cd: SWAP1
000021ce: POP
000021cf: PUSH2 0x21d8
000021d2: SWAP2
000021d3: SWAP1
000021d4: PUSH2 0x21dc
000021d7: JUMP
000021d8: JUMPDEST
000021d9: POP
000021da: SWAP1
000021db: JUMP
000021dc: JUMPDEST
000021dd: PUSH2 0x21fe
000021e0: SWAP2
000021e1: SWAP1
000021e2: JUMPDEST
000021e3: DUP1
000021e4: DUP3
000021e5: GT
000021e6: ISZERO
000021e7: PUSH2 0x21fa
000021ea: JUMPI
000021eb: PUSH1 0x00
000021ed: DUP2
000021ee: PUSH1 0x00
000021f0: SWAP1
000021f1: SSTORE
000021f2: POP
000021f3: PUSH1 0x01
000021f5: ADD
000021f6: PUSH2 0x21e2
000021f9: JUMP
000021fa: JUMPDEST
000021fb: POP
000021fc: SWAP1
000021fd: JUMP
000021fe: JUMPDEST
000021ff: SWAP1
00002200: JUMP
00002201: STOP
00002202: LOG1
00002203: PUSH6 0x627a7a723058
0000220a: KECCAK256
0000220b: UNKNOWN(0xED)
0000220c: INVALID
0000220d: SELFDESTRUCT
0000220e: PUSH30 0x18545a9a1917b2d6275e86ca4eadae92da2afb1dd38d79bc25f5202f0029

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other cast SELFDESTRUCT present 85 no
view
evidence_json
{
    "notes": "selfdestruct can remove contract code and send funds; review reachability",
    "selfdestruct_count": 1
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x434e1677c19a10a38f867ddfc8111f691367eca74ff42d6c56ca9c0a0d27fd88
call_targets: 0xeb618e440fd758b9bc2946ccc55ff5390f441b5b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x434e1677c19a10a38f867ddfc8111f691367eca74ff42d6c56ca9c0a0d27fd88",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xeb618e440fd758b9bc2946ccc55ff5390f441b5b"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x120da4df",
            "selector": "0x120da4df",
            "calldata_variants": [
                "0x120da4df",
                "0x120da4df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x20ea8d86",
            "selector": "0x20ea8d86",
            "calldata_variants": [
                "0x20ea8d86",
                "0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3411c81c",
            "selector": "0x3411c81c",
            "calldata_variants": [
                "0x3411c81c",
                "0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54741525",
            "selector": "0x54741525",
            "calldata_variants": [
                "0x54741525",
                "0x547415250000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 7915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [
        {
            "pc": 2436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3808,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 5929,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 6633,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 1
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x434e1677c19a10a38f867ddfc8111f691367eca74ff42d6c56ca9c0a0d27fd88
call_targets: 0xeb618e440fd758b9bc2946ccc55ff5390f441b5b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x434e1677c19a10a38f867ddfc8111f691367eca74ff42d6c56ca9c0a0d27fd88",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xeb618e440fd758b9bc2946ccc55ff5390f441b5b"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x120da4df",
            "selector": "0x120da4df",
            "calldata_variants": [
                "0x120da4df",
                "0x120da4df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x20ea8d86",
            "selector": "0x20ea8d86",
            "calldata_variants": [
                "0x20ea8d86",
                "0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3411c81c",
            "selector": "0x3411c81c",
            "calldata_variants": [
                "0x3411c81c",
                "0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54741525",
            "selector": "0x54741525",
            "calldata_variants": [
                "0x54741525",
                "0x547415250000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 7915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": [
        {
            "pc": 2436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3808,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 5929,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 6633,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 no no
view
trace_id: 0xa7ca7bfd9d67a9a9d509f0737629dbe8b9372b1841ebc7fe58a5135b3544a5f5
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xa7ca7bfd9d67a9a9d509f0737629dbe8b9372b1841ebc7fe58a5135b3544a5f5",
    "confirmed": false,
    "trace_mode": "structLogs",
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x120da4df",
            "selector": "0x120da4df",
            "calldata_variants": [
                "0x120da4df",
                "0x120da4df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x20ea8d86",
            "selector": "0x20ea8d86",
            "calldata_variants": [
                "0x20ea8d86",
                "0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3411c81c",
            "selector": "0x3411c81c",
            "calldata_variants": [
                "0x3411c81c",
                "0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54741525",
            "selector": "0x54741525",
            "calldata_variants": [
                "0x54741525",
                "0x547415250000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 2436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3808,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 5929,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 6633,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "selfdestruct_count": 1
}
medium other codex SELFDESTRUCT present and potentially reachable 75 no
view
evidence_json
{
    "evidence": "SELFDESTRUCT opcode at pc 8717; detector reports selfdestruct_count=1 and reachable sink (unvalidated).",
    "locations": [
        "pc:0x220d"
    ],
    "recommendation": "Verify whether the SELFDESTRUCT path is reachable and guarded. If not strictly necessary, remove it or gate it behind strong access control (e.g., immutable admin).",
    "exploit_scenario": "If a publicly reachable path can hit SELFDESTRUCT, an attacker could destroy the contract and force-send its balance to a chosen recipient. Guard detection shows msg.sender == 0xffff... (likely heuristic), so access control is uncertain."
}
low reentrancy codex Computed external CALL before apparent state update (reentrancy/unsafe call risk if target is attacker-controlled) 65 no
view
evidence_json
{
    "evidence": "CALL at pc 7915 with computed target/value; SSTORE occurs later at pc 7974, suggesting effects after interaction. Returndata checking is unknown.",
    "locations": [
        "pc:0x1eeb",
        "pc:0x1f26"
    ],
    "recommendation": "Confirm the CALL target/source at pc:0x1eeb. If user-controlled, move state updates before the call (checks-effects-interactions), add a reentrancy guard, and/or restrict allowed call targets. If the call is intended to self, prefer internal calls to avoid external reentrancy paths.",
    "exploit_scenario": "If the CALL target/value is derived from user input or mutable storage, an attacker could cause the contract to call out to a malicious contract before state is updated. That external contract could reenter and exploit inconsistent state. Validation hints the target may be constant (self), but it is not confirmed, so this remains uncertain."
}