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

Analysis Run

019ba9bc-ec6f-7149-8a86-ad2ee8cbb230

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 9:08 PM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
37783 artifact.fetch complete 1 / 3 3 months ago
37784 proxy.resolve complete 1 / 3 3 months ago
37785 tool.cast_disasm complete 1 / 3 3 months ago
37786 analysis.bundle complete 1 / 3 3 months ago
37787 capability.graph complete 1 / 3 3 months ago
37788 detector.run complete 1 / 3 3 months ago
37789 validation.fork complete 1 / 3 3 months ago
37911 report.consolidate complete 1 / 6 3 months ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Bytecode contains multiple low-level CALL sites with computed targets/values and at least one CALL where success handling is unclear; depending on how inputs are controlled at runtime, this could enable unintended external interactions or silent failures.
View stdout
{"no_findings":false,"summary":"Bytecode contains multiple low-level CALL sites with computed targets/values and at least one CALL where success handling is unclear; depending on how inputs are controlled at runtime, this could enable unintended external interactions or silent failures.","findings":[{"severity":"medium","category":"other","title":"Computed CALL targets/values may allow unintended external calls with ETH","exploit_scenario":"If any of the computed CALL targets/values are influenced by untrusted inputs (e.g., user-provided addresses or payloads), an attacker could trigger calls to arbitrary contracts, potentially transferring ETH or reentering before state updates. The detector trace saw a constant self-target in one run, but this was not confirmed and may be input-dependent.","recommendation":"Constrain CALL targets to trusted addresses (allowlist or immutable endpoint), validate value sources, and ensure state is updated before external calls. Consider reentrancy guards on external-call paths and explicit success checks when failure should revert.","evidence":"detector_findings: \"Untrusted CALL target/value reachable\" (call_count=8) with target/value marked computed; callsites list shows CALLs at pc 0x0ed0, 0x0f89, 0x11b1, 0x141a, 0x1bbf, 0x2f94, 0x32cf, 0x35fe. Validation_json shows a single trace with constant self-target but not confirmed, so input sensitivity remains uncertain.","locations":["pc:0xed0","pc:0xf89","pc:0x11b1","pc:0x141a","pc:0x1bbf","pc:0x2f94","pc:0x32cf","pc:0x35fe"]},{"severity":"low","category":"other","title":"CALL success handling unclear at pc 0x2f94 (possible silent failure)","exploit_scenario":"If this CALL is used to forward value or invoke a receiver hook, and the success flag is ignored, a failed call could leave token/accounting state updated while the external effect did not occur, leading to stuck funds or inconsistent balances. Bytecode-only analysis cannot confirm intended semantics.","recommendation":"Explicitly check the CALL success flag and revert or store failed payloads for retry, depending on intended nonblocking behavior. Ensure accounting state changes are aligned with call outcomes.","evidence":"callsites entry for pc 12180 (0x2f94) shows CALL with `returndata_checked: null`; the immediate post-call sequence does not show a clear success gate in the local snippet, so failure handling is uncertain.","locations":["pc:0x2f94"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-5aswk2f_
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: xhigh
reasoning summaries: auto
session id: 019ba9e6-7c8a-7700-85bd-482168959ae8
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

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

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

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

thinking
**Reading BYTECODE_BUNDLE.json**
exec
/bin/bash -lc ls in /tmp/codex-5aswk2f_ succeeded in 6ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-5aswk2f_ succeeded in 8ms:
{
  "analysis_artifact": {
    "address": "0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1",
    "artifact_hash": "0x96f63bd44f4a193d2169825f2f3048bc65e769e54cf124dbef7e0e2f88075832",
    "artifact_json": {
      "auth": {
        "guards": [
          {
            "pc": 12358,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          }
        ]
      },
      "basic_blocks": [
        {
          "end_pc": 12,
          "hash": "0xa3508d9ee0c2083b16b14499c804c86da2856d363c799e1a2e96490ac266a15b",
          "opcodes": [
            "PUSH1",

thinking
**Analyzing bytecode bundle structure**
exec
/bin/bash -lc 'rg -n "storage" BYTECODE_BUNDLE.json | head -n 40' in /tmp/codex-5aswk2f_ succeeded in 7ms:
30289:          "storage": {
30444:          "storage": {
30599:          "storage": {
30754:          "storage": {
30909:          "storage": {
31064:          "storage": {
31219:          "storage": {
31374:          "storage": {
31529:          "storage": {
31684:          "storage": {
31839:          "storage": {
31994:          "storage": {
32149:          "storage": {
32304:          "storage": {
32459:          "storage": {
32614:          "storage": {
32769:          "storage": {
32924:          "storage": {
33079:          "storage": {
33234:          "storage": {

thinking
**Examining storage sections for context**
exec
/bin/bash -lc "sed -n '30270,30330p' BYTECODE_BUNDLE.json" in /tmp/codex-5aswk2f_ succeeded in 41ms:
      "functions": [
        {
          "auth": {
            "guards": [
              {
                "pc": 12358,
                "type": "msg_sender_eq_const",
                "value": "0xffffffffffffffffffffffffffffffffffffffff"
              }
            ]
          },
          "entry_pc": 3744095035,
          "selector": "0xdf2a5b3b",
          "sinks": {
            "call": 8,
            "delegatecall": 0,
            "selfdestruct": 0,
            "staticcall": 2
          },
          "storage": {

thinking
**Analyzing function callsites and risks**
exec
/bin/bash -lc "rg -n \"\\\"pc\\\": 3792\" -n BYTECODE_BUNDLE.json" in /tmp/codex-5aswk2f_ succeeded in 26ms:
23832:          "pc": 3792,
53657:          "pc": 3792,
53989:            "pc": 3792,
54047:            "pc": 3792,

thinking
**Inspecting relevant areas**
exec
/bin/bash -lc "sed -n '23810,23870p' BYTECODE_BUNDLE.json" in /tmp/codex-5aswk2f_ succeeded in 12ms:
            "ADDRESS",
            "OP_97",
            "OP_A8",
            "OP_CB",
            "PUSH20",
            "GT",
            "STOP"
          ],
          "start_pc": 24293
        },
        {
          "end_pc": 24334,
          "hash": "0xfe90508261559800993ba2464bde4c80e06c9dfbc50b8aed37e2a57f501b067e",
          "opcodes": [
            "CALLER"
          ],
          "start_pc": 24334
        }
      ],
      "callsites": [

thinking
**Reviewing callsite and guard patterns**
exec
/bin/bash -lc 'rg -n "360894a1|be70|eip1967|proxy" BYTECODE_BUNDLE.json' in /tmp/codex-5aswk2f_ succeeded in 7ms:
9567:          "hash": "0xa54c5c49c2f686849be6abe70d21678f771aef22e0c08d2ae52bfbfa81d9528b",
12998:          "hash": "0x3672d569ddc572f3d62d8914759d56264334d27be7097923034e35ed000c9f1c",
14721:          "hash": "0xe6776f576748aca74fc105ef871ddbe7057d4e2af2f6d9ebb3ba3f653722d8c1",
37001:        "proxy": "0",
37006:      "proxy_evidence": {
37007:        "status": "not_proxy"
37011:    "is_proxy": false,
47405:          "hash": "0xa54c5c49c2f686849be6abe70d21678f771aef22e0c08d2ae52bfbfa81d9528b",
48777:          "hash": "0x3672d569ddc572f3d62d8914759d56264334d27be7097923034e35ed000c9f1c",
49610:          "hash": "0xe6776f576748aca74fc105ef871ddbe7057d4e2af2f6d9ebb3ba3f653722d8c1",

thinking
**Verifying proxy status**
exec
/bin/bash -lc "sed -n '36980,37030p' BYTECODE_BUNDLE.json" in /tmp/codex-5aswk2f_ succeeded in 12ms:
    "version": "analysis_artifact_v1"
  },
  "analysis_run": {
    "address": "0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1",
    "block_number": null,
    "chain_id": 1,
    "child_links": [],
    "created_at": "2026-01-10T21:08:09.000000Z",
    "id": "019ba9bc-ec6f-7149-8a86-ad2ee8cbb230",
    "parent_links": [],
    "status": "running",
    "updated_at": "2026-01-10T21:08:27.000000Z"
  },
  "artifact": {
    "codehash": "0x8878a417bc31126a4fd01951945faea5b0b7b8637006fd54f0d58719193cd2c8",
    "compiler_json": {
      "compiler_version": null,
      "etherscan": {
        "contract_name": null,
        "implementation": null,

thinking
**Analyzing bytecode for vulnerabilities**

I’m examining runtime bytecode and analysis data to identify potential security issues, focusing on functions that write to storage without guard checks, evidence of ReentrancyGuard usage, and LayerZero bridging components; I plan to script JSON parsing with Python to systematically find functions that might have risky storage writes lacking proper access control.
exec
/bin/bash -lc "python - <<'PY'
import json
from collections import defaultdict

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)

cg=data.get('analysis_artifact',{}).get('artifact_json',{})
funcs=cg.get('functions',[])

# Determine guard presence per function
rows=[]
for fn in funcs:
    selector=fn.get('selector')
    entry=fn.get('entry_pc')
    auth=fn.get('auth',{})
    guards=auth.get('guards',[])
    sinks=fn.get('sinks',{})
    storage=fn.get('storage',{})
    slots=storage.get('slots',[])
    sstores=[s for s in slots if s.get('op')=='SSTORE']
    sloads=[s for s in slots if s.get('op')=='SLOAD']
    if sstores:
        rows.append((selector, entry, len(sstores), len(sloads), len(guards)))

# sort by sstore count desc
rows.sort(key=lambda x:(-x[2], x[0] or ''))
print('functions with SSTORE:')
for r in rows:
    print(r)

# show those with SSTORE and no guards
print('\\nSSTORE with no guards:')
for r in rows:
    if r[4]==0:
        print(r)
PY" in /tmp/codex-5aswk2f_ succeeded in 53ms:
functions with SSTORE:
('0x01ffc9a7', 117300739, 2, 24, 1)
('0x06fdde03', 132176663, 2, 24, 1)
('0x07e0db17', 157198259, 2, 24, 1)
('0x095ea7b3', None, 2, 24, 1)
('0x10ddb137', 282964279, 2, 24, 1)
('0x18160ddd', 599290589, 2, 24, 1)
('0x23b872dd', 706764349, 2, 24, 1)
('0x2a205e3d', 773487949, 2, 24, 1)
('0x2e1a7d4d', None, 2, 24, 1)
('0x313ce567', 961581905, 2, 24, 1)
('0x39509351', 1032534262, 2, 24, 1)
('0x3d8b38f6', 1121344141, 2, 24, 1)
('0x42d65a8d', 1148650773, 2, 24, 1)
('0x44770515', None, 2, 24, 1)
('0x4c42899a', 1279429018, 2, 24, 1)
('0x51905636', 1535918566, 2, 24, 1)
('0x5b8c41e6', 1722637450, 2, 24, 1)
('0x66ad5c8a', 1889567281, 2, 24, 1)
('0x70a08231', 1901074598, 2, 24, 1)

thinking
**Investigating function storage counts**
exec
/bin/bash -lc "python - <<'PY'
import json
from collections import Counter

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)

graph=data.get('capability_graph',{}).get('graph_json',{})
print(graph.keys())
# maybe contains functions detail
print('edges', len(graph.get('edges',[])))
print('nodes', len(graph.get('nodes',[])))
# show node types counts
ct=Counter(n.get('type') for n in graph.get('nodes',[]))
print('node types:', ct)
# show some nodes with function type
func_nodes=[n for n in graph.get('nodes',[]) if n.get('type')=='function']
print('func nodes', len(func_nodes))
print(func_nodes[:5])
PY" in /tmp/codex-5aswk2f_ succeeded in 72ms:
dict_keys(['edges', 'nodes', 'version'])
edges 1293
nodes 1505
node types: Counter({'basic_block': 1451, 'function': 42, 'callsite': 10, 'sink': 2})
func nodes 42
[{'entry_pc': 3744095035, 'id': 'fn:0xdf2a5b3b', 'selector': '0xdf2a5b3b', 'type': 'function'}, {'entry_pc': 3951915703, 'id': 'fn:0xeab45d9c', 'selector': '0xeab45d9c', 'type': 'function'}, {'entry_pc': 3982662748, 'id': 'fn:0xeb8d72b7', 'selector': '0xeb8d72b7', 'type': 'function'}, {'entry_pc': 4076725131, 'id': 'fn:0xed629c5c', 'selector': '0xed629c5c', 'type': 'function'}, {'entry_pc': 4125932988, 'id': 'fn:0xf2fde38b', 'selector': '0xf2fde38b', 'type': 'function'}]

thinking
**Verifying per-function storage data**
exec
/bin/bash -lc "python - <<'PY'
import json
with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
funcs=data['analysis_artifact']['artifact_json']['functions']
# find two specific selectors
for sel in ['0x06fdde03','0xf2fde38b']:
    fn=next((f for f in funcs if f.get('selector')==sel), None)
    print(sel, 'entry_pc', fn.get('entry_pc'))
    print('auth', fn.get('auth'))
    print('storage slots len', len(fn.get('storage',{}).get('slots',[])))
    print('first 5 slots', fn.get('storage',{}).get('slots',[])[:5])
    print('sinks', fn.get('sinks'))
    print('----')
PY" in /tmp/codex-5aswk2f_ succeeded in 66ms:
0x06fdde03 entry_pc 132176663
auth {'guards': [{'pc': 12358, 'type': 'msg_sender_eq_const', 'value': '0xffffffffffffffffffffffffffffffffffffffff'}]}
storage slots len 26
first 5 slots [{'op': 'SLOAD', 'pc': 2981, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000100'}, {'op': 'SLOAD', 'pc': 3526, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000009'}, {'op': 'SLOAD', 'pc': 3599, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000100'}, {'op': 'SLOAD', 'pc': 4006, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000008'}, {'op': 'SLOAD', 'pc': 4321, 'slot': '0x000000000000000000000000000000000000000000000000000000000000000b'}]
sinks {'call': 8, 'delegatecall': 0, 'selfdestruct': 0, 'staticcall': 2}
----
0xf2fde38b entry_pc 4125932988
auth {'guards': [{'pc': 12358, 'type': 'msg_sender_eq_const', 'value': '0xffffffffffffffffffffffffffffffffffffffff'}]}
storage slots len 26
first 5 slots [{'op': 'SLOAD', 'pc': 2981, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000100'}, {'op': 'SLOAD', 'pc': 3526, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000009'}, {'op': 'SLOAD', 'pc': 3599, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000100'}, {'op': 'SLOAD', 'pc': 4006, 'slot': '0x0000000000000000000000000000000000000000000000000000000000000008'}, {'op': 'SLOAD', 'pc': 4321, 'slot': '0x000000000000000000000000000000000000000000000000000000000000000b'}]
sinks {'call': 8, 'delegatecall': 0, 'selfdestruct': 0, 'staticcall': 2}
----

thinking
**Planning EVM disassembly for callsite analysis**

I’m preparing to write a Python disassembler to parse runtime bytecode and identify instructions around callsite PCs. This will help reveal call targets and values by mapping byte offsets to opcodes and immediates, since existing data lacks full detail. By inspecting instructions around callsites, I hope to clarify whether external calls are truly untrusted or false positives.
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# opcode map
opmap={}
# fill op names
for i in range(0x00,0x100):
    opmap[i]=f'OP_{i:02X}'
# common ops
names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

# disassemble
ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

# index by pc
pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pcs=[3792,3977,4246,4529,5146,7103,12180,13007,13822]

for call_pc in call_pcs:
    idx=pc_index.get(call_pc)
    if idx is None:
        print('no instruction at',call_pc)
        continue
    start=max(0,idx-12)
    end=min(len(ins), idx+8)
    print('\\n-- context for pc',call_pc,'--')
    for j in range(start,end):
        pc,name,imm=ins[j]
        if imm is not None:
            print(f'{pc:05d}: {name} 0x{imm}')
        else:
            print(f'{pc:05d}: {name}')
PY" in /tmp/codex-5aswk2f_ succeeded in 79ms:

-- context for pc 3792 --
03777: EXTCODESIZE
03778: ISZERO
03779: DUP1
03780: ISZERO
03781: PUSH2 0x0ecd
03784: JUMPI
03785: PUSH1 0x00
03787: DUP1
03788: REVERT
03789: JUMPDEST
03790: POP
03791: GAS
03792: CALL
03793: ISZERO
03794: DUP1
03795: ISZERO
03796: PUSH2 0x0ee1
03799: JUMPI

thinking
**Analyzing call target resolution**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# opcode map
opmap={}
for i in range(0x00,0x100):
    opmap[i]=f'OP_{i:02X}'

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

# disassemble
ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

# index by pc
pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pcs=[3792,3977,4529,5146,7103,12180,13007,13822]

for call_pc in call_pcs:
    idx=pc_index.get(call_pc)
    if idx is None:
        print('no instruction at',call_pc)
        continue
    start=max(0,idx-40)
    end=min(len(ins), idx+15)
    print('\\n-- extended context for pc',call_pc,'--')
    for j in range(start,end):
        pc,name,imm=ins[j]
        if imm is not None:
            print(f'{pc:05d}: {name} 0x{imm}')
        else:
            print(f'{pc:05d}: {name}')
PY" in /tmp/codex-5aswk2f_ succeeded in 73ms:

-- extended context for pc 3792 --
03735: DUP3
03736: PUSH1 0x40
03738: MLOAD
03739: DUP3
03740: PUSH4 0xffffffff
03745: AND
03746: PUSH1 0xe0
03748: SHL
03749: DUP2
03750: MSTORE
03751: PUSH1 0x04
03753: ADD
03754: PUSH2 0x0eb3
03757: SWAP2
03758: SWAP1
03759: PUSH2 0x3ce6
03762: JUMP
03763: JUMPDEST

thinking
**Investigating low-level CALL patterns and value handling**

I'm examining EVM CALL instruction sequences to understand how calls with ETH value are made and whether they pose reentrancy risks. I’m parsing stack usages, symbolic addresses, and constant endpoints, trying to identify trusted versus untrusted calls, especially focusing on withdraw-like functions that use call with full gas, which might open reentrancy vulnerabilities without proper guards. I'll also locate relevant function selectors in the bytecode to analyze these vulnerable code paths more precisely.
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# simple disasm to map PUSH4 values to pcs
pcs=[]
pc=0
while pc < len(bytecode):
    op=bytecode[pc]
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=bytecode[pc+1:pc+1+n]
        if op==0x63 and n==4:
            pcs.append((pc, imm.hex()))
        pc+=1+n
    else:
        pc+=1

# find selector 2e1a7d4d
for pc,val in pcs:
    if val=='2e1a7d4d':
        print('PUSH4 0x2e1a7d4d at pc', pc)

# also find 0xd0e30db0
for pc,val in pcs:
    if val=='d0e30db0':
        print('PUSH4 0xd0e30db0 at pc', pc)
PY" in /tmp/codex-5aswk2f_ succeeded in 45ms:
PUSH4 0x2e1a7d4d at pc 534
PUSH4 0xd0e30db0 at pc 146

thinking
**Analyzing external calls and reentrancy risks**

I'm investigating the dispatch function's external calls, trying to infer which belong to withdraw operations by spotting typical ETH transfers and examining stack states near CALL instructions. Since reentrancy guards might be used but aren't obvious from bytecode alone, I'm wary of potential vulnerabilities when calls send ETH to computed addresses without clear checks. I'll piece together function mappings from program counters and explore call graph edges to identify which functions invoke these calls to better assess risks.
exec
/bin/bash -lc "python - <<'PY'
import json
from collections import defaultdict

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)

graph=data['capability_graph']['graph_json']
# inspect edge format
edge=graph['edges'][0]
print(edge)

# find edges that link function -> callsite or callsite -> function
# show unique edge keys
print('edge keys', edge.keys())

# Build adjacency mapping
adj=defaultdict(list)
for e in graph['edges']:
    src=e.get('source') or e.get('from') or e.get('src') or e.get('start')
    dst=e.get('target') or e.get('to') or e.get('dst') or e.get('end')
    if src is None or dst is None:
        # attempt other keys
        if 'src' in e and 'dst' in e:
            src=e['src']; dst=e['dst']
    if src is None or dst is None:
        continue
    adj[src].append(dst)

# list callsite nodes
callsites=[n['id'] for n in graph['nodes'] if n['type']=='callsite']
print('callsites', callsites)

# attempt to find functions that reach callsite via edges (direct)
func_nodes=[n for n in graph['nodes'] if n['type']=='function']
func_ids={n['id']:n for n in func_nodes}

# edges from function to callsite?
for cs in callsites:
    # find sources that point to cs
    sources=[src for src, dsts in adj.items() if cs in dsts]
    funcs=[s for s in sources if s in func_ids]
    if funcs:
        print(cs, 'called from functions', funcs)
PY" in /tmp/codex-5aswk2f_ succeeded in 44ms:
{'from': 'bb:0', 'to': 'bb:607', 'type': 'control_flow'}
edge keys dict_keys(['from', 'to', 'type'])
callsites ['call:3792', 'call:3977', 'call:4246', 'call:4529', 'call:5146', 'call:7103', 'call:8507', 'call:12180', 'call:13007', 'call:13822']

thinking
**Examining edge connections for callsites**
exec
/bin/bash -lc "python - <<'PY'
import json
from collections import defaultdict

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)

graph=data['capability_graph']['graph_json']

# index nodes by id
nodes={n['id']:n for n in graph['nodes']}

# collect edges where to is callsite
edges_to_call=[e for e in graph['edges'] if e.get('to','').startswith('call:')]
print('edges_to_call count', len(edges_to_call))
print(edges_to_call[:5])

# check edges from function to basic blocks? maybe type 'contains'
edge_types=set(e.get('type') for e in graph['edges'])
print('edge types', edge_types)

# find path from function to callsite: maybe function->basic_block, basic_block->callsite
# Build adjacency list
adj=defaultdict(list)
for e in graph['edges']:
    adj[e['from']].append(e['to'])

# For each function, see if it can reach callsite via simple DFS but might be heavy; we can attempt for one callsite.
from collections import deque
funcs=[n['id'] for n in graph['nodes'] if n['type']=='function']
callsite='call:4529'

# Build reverse adjacency for quick source detection
rev=defaultdict(list)
for e in graph['edges']:
    rev[e['to']].append(e['from'])

# find nearest function upstream by BFS on reverse graph
for cs in ['call:3792','call:3977','call:4529','call:5146','call:7103','call:12180','call:13007','call:13822']:
    seen=set([cs])
    dq=deque([(cs,0)])
    found=None
    while dq and found is None:
        node,depth=dq.popleft()
        for src in rev.get(node,[]):
            if src in seen: continue
            if src in funcs:
                found=src
                break
            seen.add(src)
            if depth<50:
                dq.append((src,depth+1))
    print(cs, 'closest function', found)
PY" in /tmp/codex-5aswk2f_ succeeded in 67ms:
edges_to_call count 10
[{'from': 'bb:3789', 'to': 'call:3792', 'type': 'contains'}, {'from': 'bb:3974', 'to': 'call:3977', 'type': 'contains'}, {'from': 'bb:4235', 'to': 'call:4246', 'type': 'contains'}, {'from': 'bb:4516', 'to': 'call:4529', 'type': 'contains'}, {'from': 'bb:5143', 'to': 'call:5146', 'type': 'contains'}]
edge types {'control_flow', 'entry', 'control_flow_fallthrough', 'contains', 'capability'}
call:3792 closest function None
call:3977 closest function None
call:4529 closest function None
call:5146 closest function None
call:7103 closest function None
call:12180 closest function None
call:13007 closest function None
call:13822 closest function None

thinking
**Inspecting "entry" edge types**
exec
/bin/bash -lc "python - <<'PY'
import json
from collections import defaultdict

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)

graph=data['capability_graph']['graph_json']
entry_edges=[e for e in graph['edges'] if e.get('type')=='entry']
print('entry edges count', len(entry_edges))
print(entry_edges[:5])
PY" in /tmp/codex-5aswk2f_ succeeded in 81ms:
entry edges count 34
[{'from': 'fn:0xdf2a5b3b', 'to': 'bb:3744095035', 'type': 'entry'}, {'from': 'fn:0xeab45d9c', 'to': 'bb:3951915703', 'type': 'entry'}, {'from': 'fn:0xeb8d72b7', 'to': 'bb:3982662748', 'type': 'entry'}, {'from': 'fn:0xed629c5c', 'to': 'bb:4076725131', 'type': 'entry'}, {'from': 'fn:0xf2fde38b', 'to': 'bb:4125932988', 'type': 'entry'}]

thinking
**Analyzing function entry PCs and callsites**

I'm noticing that function entry PCs seem hashed or misencoded, making it hard to map callsites to functions. The callsites use normal PC values, but function entries have huge IDs, likely hashed. This means I need to focus findings on callsites themselves, especially around external calls, potential reentrancy, and access control nuances. There's evidence of Ownable usage, but guard detection might be missing or inaccurate, so I want to check bytecode patterns for owner checks and scrutinize storage slots to understand state variables like owner and endpoint. I'll look for signs of reentrancy and risk from untrusted external calls, especially related to cross-chain messaging and withdraw logic.
exec
/bin/bash -lc 'rg -n "storage_slots|slots" BYTECODE_BUNDLE.json | head -n 20' in /tmp/codex-5aswk2f_ succeeded in 8ms:
30291:            "slots": [
30446:            "slots": [
30601:            "slots": [
30756:            "slots": [
30911:            "slots": [
31066:            "slots": [
31221:            "slots": [
31376:            "slots": [
31531:            "slots": [
31686:            "slots": [
31841:            "slots": [
31996:            "slots": [
32151:            "slots": [
32306:            "slots": [
32461:            "slots": [
32616:            "slots": [
32771:            "slots": [
32926:            "slots": [
33081:            "slots": [
33236:            "slots": [

thinking
**Analyzing external call risks and access controls**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble
opmap={}
for i in range(256):
    opmap[i]=f'OP_{i:02X}'

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pc=4529
idx=pc_index[call_pc]
start=max(0,idx-120)
end=min(len(ins), idx+20)
for j in range(start,end):
    pc,name,imm=ins[j]
    if imm is not None:
        print(f'{pc:05d}: {name} 0x{imm}')
    else:
        print(f'{pc:05d}: {name}')
PY" in /tmp/codex-5aswk2f_ succeeded in 61ms:
04282: DUP1
04283: PUSH1 0x40
04285: MSTORE
04286: POP
04287: DUP2
04288: ADD
04289: SWAP1
04290: PUSH2 0x10cb
04293: SWAP2
04294: SWAP1
04295: PUSH2 0x462f
04298: JUMP
04299: JUMPDEST
04300: SWAP3
04301: POP
04302: SWAP3
04303: POP
04304: POP
04305: SWAP8
04306: POP

thinking
**Analyzing reentrancy guard usage**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble
opmap={}
for i in range(256):
    opmap[i]=f'OP_{i:02X}'

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pc=13822
idx=pc_index[call_pc]
start=max(0,idx-120)
end=min(len(ins), idx+20)
for j in range(start,end):
    pc,name,imm=ins[j]
    if imm is not None:
        print(f'{pc:05d}: {name} 0x{imm}')
    else:
        print(f'{pc:05d}: {name}')
PY" in /tmp/codex-5aswk2f_ succeeded in 84ms:
13566: MLOAD
13567: LT
13568: ISZERO
13569: PUSH2 0x353f
13572: JUMPI
13573: PUSH1 0x40
13575: MLOAD
13576: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
13609: DUP2
13610: MSTORE
13611: PUSH1 0x04
13613: ADD
13614: PUSH2 0x3536
13617: SWAP1
13618: PUSH2 0x5de1
13621: JUMP
13622: JUMPDEST
13623: PUSH1 0x40
13625: MLOAD
13626: DUP1

thinking
**Analyzing potential reentrancy risks**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble
opmap={}
for i in range(256):
    opmap[i]=f'OP_{i:02X}'

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pc=12180
idx=pc_index[call_pc]
start=max(0,idx-120)
end=min(len(ins), idx+30)
for j in range(start,end):
    pc,name,imm=ins[j]
    if imm is not None:
        print(f'{pc:05d}: {name} 0x{imm}')
    else:
        print(f'{pc:05d}: {name}')
PY" in /tmp/codex-5aswk2f_ succeeded in 70ms:
12022: POP
12023: PUSH1 0x20
12025: DUP2
12026: ADD
12027: SWAP1
12028: POP
12029: PUSH2 0x2ee4
12032: JUMP
12033: JUMPDEST
12034: POP
12035: DUP7
12036: DUP6
12037: MSTORE
12038: PUSH1 0x1f
12040: NOT
12041: PUSH1 0x1f
12043: DUP4
12044: ADD
12045: AND
12046: PUSH1 0x40

thinking
**Analyzing unchecked call return and reentrancy risks**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble
opmap={}
for i in range(256):
    opmap[i]=f'OP_{i:02X}'

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}
for k,v in names.items():
    opmap[k]=v

ins=[]
pc=0
b=bytecode
while pc < len(b):
    op=b[pc]
    name=opmap.get(op, f'OP_{op:02X}')
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=b[pc+1:pc+1+n]
        ins.append((pc,name,imm.hex()))
        pc+=1+n
    else:
        ins.append((pc,name,None))
        pc+=1

pc_index={i[0]:idx for idx,i in enumerate(ins)}

call_pc=13822
idx=pc_index[call_pc]
start=max(0,idx-200)
end=min(len(ins), idx+10)
ss=[(pc,name,imm) for pc,name,imm in ins[start:end] if name=='SSTORE']
print('SSTOREs near call', ss)
PY" in /tmp/codex-5aswk2f_ succeeded in 111ms:
SSTOREs near call []

thinking
**Analyzing external calls and symbolic stack**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble into list with pc
ops=[]
pc=0
while pc < len(bytecode):
    op=bytecode[pc]
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=bytecode[pc+1:pc+1+n]
        ops.append((pc, op, imm))
        pc+=1+n
    else:
        ops.append((pc, op, None))
        pc+=1

# Build map pc->index
pc_index={pc:i for i,(pc,op,imm) in enumerate(ops)}

# opcode names
names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}

# simple symbolic executor for linear segment

def simulate(start_pc, end_pc, stack_depth=20):
    stack=[f's{i}' for i in range(stack_depth)]  # s0 top? We'll treat stack[0] as top
    mem={}
    pc=start_pc
    idx=pc_index[pc]
    while idx < len(ops):
        pc,op,imm=ops[idx]
        name=names.get(op,f'OP_{op:02X}')
        # print(pc, name, imm.hex() if imm else '')
        if pc==end_pc:
            # stop before executing end_pc
            break
        # handle
        if 0x60 <= op <= 0x7f:
            stack.insert(0, f'0x{imm.hex()}')
        elif 0x80 <= op <= 0x8f:
            n=op-0x7f
            if len(stack) >= n:
                stack.insert(0, stack[n-1])
            else:
                stack.insert(0, f'unk_dup{n}')
        elif 0x90 <= op <= 0x9f:
            n=op-0x8f
            if len(stack) > n:
                stack[0], stack[n] = stack[n], stack[0]
        elif op==0x50: # POP
            if stack: stack.pop(0)
        elif op==0x52: # MSTORE
            if len(stack)>=2:
                offset=stack.pop(0)
                value=stack.pop(0)
                mem[offset]=value
        elif op==0x51: # MLOAD
            if stack:
                offset=stack.pop(0)
                val=mem.get(offset, f'mem[{offset}]')
                stack.insert(0, val)
        elif op==0x54: # SLOAD
            if stack:
                slot=stack.pop(0)
                stack.insert(0, f'sload[{slot}]')
        elif op==0x55: # SSTORE
            if len(stack)>=2:
                slot=stack.pop(0)
                val=stack.pop(0)
        elif op in (0x01,0x03,0x02,0x04,0x10,0x11,0x14,0x15,0x16,0x17,0x18,0x1b,0x1c,0x1d,0x19,0x1a,0x20):
            # binary/unary ops: pop args and push expr
            if op==0x15 or op==0x19:
                if stack:
                    a=stack.pop(0)
                    stack.insert(0, f'{name}({a})')
            else:
                if len(stack)>=2:
                    a=stack.pop(0)
                    b=stack.pop(0)
                    stack.insert(0, f'{name}({a},{b})')
        elif op==0x5a: # GAS
            stack.insert(0,'gas')
        elif op==0x33: # CALLER
            stack.insert(0,'caller')
        elif op==0x30: # ADDRESS
            stack.insert(0,'address')
        elif op==0x34: # CALLVALUE
            stack.insert(0,'callvalue')
        elif op==0x36: # CALLDATASIZE
            stack.insert(0,'calldatasize')
        elif op==0x35: # CALLDATALOAD
            if stack:
                ofs=stack.pop(0)
                stack.insert(0, f'calldata[{ofs}]')
        elif op==0x37: # CALLDATACOPY
            # pop 3
            for _ in range(3):
                if stack: stack.pop(0)
        elif op==0x3d: # RETURNDATASIZE
            stack.insert(0,'returndatasize')
        elif op==0x3e: # RETURNDATACOPY
            for _ in range(3):
                if stack: stack.pop(0)
        elif op==0x5b: # JUMPDEST
            pass
        elif op==0xf1: # CALL
            # pop 7, push success
            args=[stack.pop(0) if stack else 'unk' for _ in range(7)]
            # args order: gas, to, value, in_offset, in_size, out_offset, out_size
            gas,to,value,inoff,insz,outoff,outsz=args
            stack.insert(0, f'call_success')
            return {'pc':pc,'gas':gas,'to':to,'value':value,'args':args,'stack':stack}
        # ignore others
        idx+=1
    return None

# simulate for call at 12180 starting at 12074
res=simulate(12074,12180, stack_depth=25)
print('call12180', res)

# simulate for call at 13822 starting at 13761
res=simulate(13761,13822, stack_depth=25)
print('call13822', res)

# simulate for call at 4529 starting at 4469
res=simulate(4469,4529, stack_depth=25)
print('call4529', res)
PY" in /tmp/codex-5aswk2f_ succeeded in 51ms:
call12180 None
call13822 None
call4529 None

thinking
**Adjusting simulation to include CALL execution**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble
ops=[]
pc=0
while pc < len(bytecode):
    op=bytecode[pc]
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=bytecode[pc+1:pc+1+n]
        ops.append((pc, op, imm))
        pc+=1+n
    else:
        ops.append((pc, op, None))
        pc+=1

pc_index={pc:i for i,(pc,op,imm) in enumerate(ops)}

names={
0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
0x20:'SHA3',
0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
}

def simulate(start_pc, call_pc, stack_depth=30, max_steps=400):
    stack=[f's{i}' for i in range(stack_depth)]  # s0 top
    mem={}
    idx=pc_index[start_pc]
    steps=0
    while idx < len(ops) and steps < max_steps:
        pc,op,imm=ops[idx]
        name=names.get(op,f'OP_{op:02X}')
        if op==0xf1 and pc==call_pc:
            # CALL: gas,to,value, in_offset, in_size, out_offset, out_size
            args=[stack.pop(0) if stack else 'unk' for _ in range(7)]
            gas,to,value,inoff,insz,outoff,outsz=args
            return {'pc':pc,'gas':gas,'to':to,'value':value,'args':args,'stack_top':stack[:5]}
        if 0x60 <= op <= 0x7f:
            stack.insert(0, f'0x{imm.hex()}')
        elif 0x80 <= op <= 0x8f:
            n=op-0x7f
            stack.insert(0, stack[n-1] if len(stack)>=n else f'unk_dup{n}')
        elif 0x90 <= op <= 0x9f:
            n=op-0x8f
            if len(stack)>n:
                stack[0], stack[n]=stack[n], stack[0]
        elif op==0x50:
            if stack: stack.pop(0)
        elif op==0x52:
            if len(stack)>=2:
                offset=stack.pop(0); value=stack.pop(0); mem[offset]=value
        elif op==0x51:
            if stack:
                offset=stack.pop(0); stack.insert(0, mem.get(offset, f'mem[{offset}]'))
        elif op==0x54:
            if stack:
                slot=stack.pop(0); stack.insert(0, f'sload[{slot}]')
        elif op==0x55:
            if len(stack)>=2:
                slot=stack.pop(0); val=stack.pop(0)
        elif op in (0x01,0x03,0x02,0x04,0x10,0x11,0x14,0x15,0x16,0x17,0x18,0x1b,0x1c,0x1d,0x19,0x1a,0x20):
            if op==0x15 or op==0x19:
                if stack:
                    a=stack.pop(0); stack.insert(0, f'{name}({a})')
            else:
                if len(stack)>=2:
                    a=stack.pop(0); b=stack.pop(0); stack.insert(0, f'{name}({a},{b})')
        elif op==0x5a:
            stack.insert(0,'gas')
        elif op==0x33:
            stack.insert(0,'caller')
        elif op==0x30:
            stack.insert(0,'address')
        elif op==0x34:
            stack.insert(0,'callvalue')
        elif op==0x36:
            stack.insert(0,'calldatasize')
        elif op==0x35:
            if stack:
                ofs=stack.pop(0); stack.insert(0,f'calldata[{ofs}]')
        elif op==0x37:
            for _ in range(3):
                if stack: stack.pop(0)
        elif op==0x3d:
            stack.insert(0,'returndatasize')
        elif op==0x3e:
            for _ in range(3):
                if stack: stack.pop(0)
        elif op==0x5b:
            pass
        # ignore control flow (jumps)
        idx+=1
        steps+=1
    return None

for start,call in [(12074,12180),(13761,13822),(4469,4529)]:
    res=simulate(start,call,stack_depth=40)
    print('start',start,'call',call,'->',res)
PY" in /tmp/codex-5aswk2f_ succeeded in 58ms:
start 12074 call 12180 -> {'pc': 12180, 'gas': '0x00', 'to': '0x00', 'value': '0x00', 'args': ['0x00', '0x00', '0x00', 'ADD(AND(0xffff,s1),0x20)', 'mem[AND(0xffff,s1)]', '0x00', '0x00'], 'stack_top': ['ISZERO(0x3e26)', 'mem[0x40]', '0x2f50', '0x2f51', 'ISZERO(GT(AND(0xffff,s1),0xffffffffffffffff))']}
start 13761 call 13822 -> {'pc': 13822, 'gas': 'gas', 'to': '0x35f1', 'value': 'mem[0x40]', 'args': ['gas', '0x35f1', 'mem[0x40]', 'mem[0x40]', 'SUB(0x476d,mem[0x40])', 'mem[0x40]', '0x00'], 'stack_top': ['0x476d', 'mem[0x40]', '0x35f1', '0x2a1b', 'AND(0xffffffffffffffffffffffffffffffffffffffff,s0)']}
start 4469 call 4529 -> {'pc': 4529, 'gas': 'gas', 'to': '0x11a4', 'value': 'mem[0x40]', 'args': ['gas', '0x11a4', 'mem[0x40]', 'mem[0x40]', 'SUB(0x476d,mem[0x40])', 'mem[0x40]', '0x00'], 'stack_top': ['0x476d', 'mem[0x40]', '0x11a4', '0x2a1b', 'AND(0xffffffffffffffffffffffffffffffffffffffff,caller)']}

thinking
**Evaluating symbolic simulation limits**

This symbolic simulation is very rough due to ignoring control flow and memory semantics, so its results are likely unreliable. I see it suggests an obviously wrong call with zero gas, zero value, and zero target because we don’t track real values or memory. Given this, I’ll avoid deep symbolic reasoning and instead look for the constant address in the code via disassembly to check if any CALL uses it nearby. I’ll search for PUSH20 0x66a71dce and inspect calls around it.
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

# disassemble into list
ops=[]
pc=0
while pc < len(bytecode):
    op=bytecode[pc]
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=bytecode[pc+1:pc+1+n]
        ops.append((pc, op, imm))
        pc+=1+n
    else:
        ops.append((pc, op, None))
        pc+=1

# find PUSH20 0x66a71dce...
addr='66a71dcef29a0ffbdbe3c6a460a3b5bc225cd675'
indices=[i for i,(pc,op,imm) in enumerate(ops) if op==0x73 and imm.hex()==addr]
print('found',len(indices))
for idx in indices[:5]:
    pc,op,imm=ops[idx]
    print('pc',pc)
    # show context around this push20
    for j in range(max(0,idx-8), min(len(ops), idx+8)):
        pc2,op2,imm2=ops[j]
        name = 'PUSH20' if op2==0x73 else hex(op2)
        if imm2 is not None:
            print(f'{pc2:05d}: {name} 0x{imm2.hex()}')
        else:
            print(f'{pc2:05d}: {name}')
    print('---')
PY" in /tmp/codex-5aswk2f_ succeeded in 48ms:
found 0

thinking
**Searching for PUSH32 opcode with address suffix**
exec
/bin/bash -lc "python - <<'PY'
import json

with open('BYTECODE_BUNDLE.json') as f:
    data=json.load(f)
bytecode_hex=data['artifact']['runtime_bytecode']['full']
if bytecode_hex.startswith('0x'):
    bytecode_hex=bytecode_hex[2:]
bytecode=bytes.fromhex(bytecode_hex)

ops=[]
pc=0
while pc < len(bytecode):
    op=bytecode[pc]
    if 0x60 <= op <= 0x7f:
        n=op-0x5f
        imm=bytecode[pc+1:pc+1+n]
        ops.append((pc, op, imm))
        pc+=1+n
    else:
        ops.append((pc, op, None))
        pc+=1

addr='66a71dcef29a0ffbdbe3c6a460a3b5bc225cd675'
indices=[]
for i,(pc,op,imm) in enumerate(ops):
    if op==0x7f and imm.hex().endswith(addr):
        indices.append(i)

print('found',len(indices))
for idx in indices[:3]:
    pc,op,imm=ops[idx]
    print('pc',pc,'imm',imm.hex())
    for j in range(max(0,idx-6), min(len(ops), idx+6)):
        pc2,op2,imm2=ops[j]
        name=f'PUSH{op2-0x5f}' if 0x60<=op2<=0x7f else hex(op2)
        if imm2 is not None:
            print(f'{pc2:05d}: {name} 0x{imm2.hex()}')
        else:
            print(f'{pc2:05d}: {name}')
    print('---')
PY" in /tmp/codex-5aswk2f_ succeeded in 49ms:
found 9
pc 2729 imm 00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
02723: 0x91
02724: 0x3
02725: 0x90
02726: 0xa2
02727: 0x56
02728: 0x5b
02729: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
02762: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
02783: 0x16
02784: PUSH2 0x0ae7
02787: PUSH2 0x22df
02790: 0x56
---
pc 3675 imm 00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
03665: 0x56
03666: 0x5b
03667: PUSH2 0x0e5a
03670: PUSH2 0x24c6

thinking
**Analyzing external calls and call success checks**
exec
/bin/bash -lc "python - <<'PY'
pcs=[3792,3977,4529,5146,7103,12180,13007,13822]
for pc in pcs:
    print(pc, hex(pc))
PY" in /tmp/codex-5aswk2f_ succeeded in 16ms:
3792 0xed0
3977 0xf89
4529 0x11b1
5146 0x141a
7103 0x1bbf
12180 0x2f94
13007 0x32cf
13822 0x35fe

thinking
**Summarizing bytecode CALL findings**

I'm carefully reviewing bytecode CALL sites for potential issues, distinguishing between computed CALLs that might be attacker-controlled and CALLs lacking clear success checks. I’m preparing a JSON report with severity levels, categories, exploit scenarios, and recommendations, ensuring to highlight uncertainties from static analysis and clearly citing evidence from callsite PCs and disassembly.
codex
{"no_findings":false,"summary":"Bytecode contains multiple low-level CALL sites with computed targets/values and at least one CALL where success handling is unclear; depending on how inputs are controlled at runtime, this could enable unintended external interactions or silent failures.","findings":[{"severity":"medium","category":"other","title":"Computed CALL targets/values may allow unintended external calls with ETH","exploit_scenario":"If any of the computed CALL targets/values are influenced by untrusted inputs (e.g., user-provided addresses or payloads), an attacker could trigger calls to arbitrary contracts, potentially transferring ETH or reentering before state updates. The detector trace saw a constant self-target in one run, but this was not confirmed and may be input-dependent.","recommendation":"Constrain CALL targets to trusted addresses (allowlist or immutable endpoint), validate value sources, and ensure state is updated before external calls. Consider reentrancy guards on external-call paths and explicit success checks when failure should revert.","evidence":"detector_findings: \"Untrusted CALL target/value reachable\" (call_count=8) with target/value marked computed; callsites list shows CALLs at pc 0x0ed0, 0x0f89, 0x11b1, 0x141a, 0x1bbf, 0x2f94, 0x32cf, 0x35fe. Validation_json shows a single trace with constant self-target but not confirmed, so input sensitivity remains uncertain.","locations":["pc:0xed0","pc:0xf89","pc:0x11b1","pc:0x141a","pc:0x1bbf","pc:0x2f94","pc:0x32cf","pc:0x35fe"]},{"severity":"low","category":"other","title":"CALL success handling unclear at pc 0x2f94 (possible silent failure)","exploit_scenario":"If this CALL is used to forward value or invoke a receiver hook, and the success flag is ignored, a failed call could leave token/accounting state updated while the external effect did not occur, leading to stuck funds or inconsistent balances. Bytecode-only analysis cannot confirm intended semantics.","recommendation":"Explicitly check the CALL success flag and revert or store failed payloads for retry, depending on intended nonblocking behavior. Ensure accounting state changes are aligned with call outcomes.","evidence":"callsites entry for pc 12180 (0x2f94) shows CALL with `returndata_checked: null`; the immediate post-call sequence does not show a clear success gate in the local snippet, so failure handling is uncertain.","locations":["pc:0x2f94"]}]}
tokens used
109,273
Metadata
{
    "codex": {
        "ran_at": "2026-01-10T22:04:04.612230+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 48672,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode contains multiple low-level CALL sites with computed targets/values and at least one CALL where success handling is unclear; depending on how inputs are controlled at runtime, this could enable unintended external interactions or silent failures.",
    "raw_final": {
        "summary": "Bytecode contains multiple low-level CALL sites with computed targets/values and at least one CALL where success handling is unclear; depending on how inputs are controlled at runtime, this could enable unintended external interactions or silent failures.",
        "findings": [
            {
                "title": "Computed CALL targets/values may allow unintended external calls with ETH",
                "category": "other",
                "evidence": "detector_findings: \"Untrusted CALL target/value reachable\" (call_count=8) with target/value marked computed; callsites list shows CALLs at pc 0x0ed0, 0x0f89, 0x11b1, 0x141a, 0x1bbf, 0x2f94, 0x32cf, 0x35fe. Validation_json shows a single trace with constant self-target but not confirmed, so input sensitivity remains uncertain.",
                "severity": "medium",
                "locations": [
                    "pc:0xed0",
                    "pc:0xf89",
                    "pc:0x11b1",
                    "pc:0x141a",
                    "pc:0x1bbf",
                    "pc:0x2f94",
                    "pc:0x32cf",
                    "pc:0x35fe"
                ],
                "recommendation": "Constrain CALL targets to trusted addresses (allowlist or immutable endpoint), validate value sources, and ensure state is updated before external calls. Consider reentrancy guards on external-call paths and explicit success checks when failure should revert.",
                "exploit_scenario": "If any of the computed CALL targets/values are influenced by untrusted inputs (e.g., user-provided addresses or payloads), an attacker could trigger calls to arbitrary contracts, potentially transferring ETH or reentering before state updates. The detector trace saw a constant self-target in one run, but this was not confirmed and may be input-dependent."
            },
            {
                "title": "CALL success handling unclear at pc 0x2f94 (possible silent failure)",
                "category": "other",
                "evidence": "callsites entry for pc 12180 (0x2f94) shows CALL with `returndata_checked: null`; the immediate post-call sequence does not show a clear success gate in the local snippet, so failure handling is uncertain.",
                "severity": "low",
                "locations": [
                    "pc:0x2f94"
                ],
                "recommendation": "Explicitly check the CALL success flag and revert or store failed payloads for retry, depending on intended nonblocking behavior. Ensure accounting state changes are aligned with call outcomes.",
                "exploit_scenario": "If this CALL is used to forward value or invoke a receiver hook, and the success flag is ignored, a failed call could leave token/accounting state updated while the external effect did not occur, leading to stuck funds or inconsistent balances. Bytecode-only analysis cannot confirm intended semantics."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
10
EXT*/BALANCE
5
Total opcodes
13655
Flags
heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x025f
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x7533d788
00000019: GT
0000001a: PUSH2 0x0144
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xbaf3292d
00000024: GT
00000025: PUSH2 0x00b6
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xdf2a5b3b
0000002f: GT
00000030: PUSH2 0x007a
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xdf2a5b3b
0000003a: EQ
0000003b: PUSH2 0x0942
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xeab45d9c
00000045: EQ
00000046: PUSH2 0x096b
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xeb8d72b7
00000050: EQ
00000051: PUSH2 0x0994
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xed629c5c
0000005b: EQ
0000005c: PUSH2 0x09bd
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xf2fde38b
00000066: EQ
00000067: PUSH2 0x09e8
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0xf5ecbdbc
00000071: EQ
00000072: PUSH2 0x0a11
00000075: JUMPI
00000076: PUSH2 0x026e
00000079: JUMP
0000007a: JUMPDEST
0000007b: DUP1
0000007c: PUSH4 0xbaf3292d
00000081: EQ
00000082: PUSH2 0x088d
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xcbed8b9c
0000008c: EQ
0000008d: PUSH2 0x08b6
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xd0e30db0
00000097: EQ
00000098: PUSH2 0x08df
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xd1deba1f
000000a2: EQ
000000a3: PUSH2 0x08e9
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0xdd62ed3e
000000ad: EQ
000000ae: PUSH2 0x0905
000000b1: JUMPI
000000b2: PUSH2 0x026e
000000b5: JUMP
000000b6: JUMPDEST
000000b7: DUP1
000000b8: PUSH4 0x95d89b41
000000bd: GT
000000be: PUSH2 0x0108
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0x95d89b41
000000c8: EQ
000000c9: PUSH2 0x0757
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0x9f38369a
000000d3: EQ
000000d4: PUSH2 0x0782
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0xa457c2d7
000000de: EQ
000000df: PUSH2 0x07bf
000000e2: JUMPI
000000e3: DUP1
000000e4: PUSH4 0xa6c3d165
000000e9: EQ
000000ea: PUSH2 0x07fc
000000ed: JUMPI
000000ee: DUP1
000000ef: PUSH4 0xa9059cbb
000000f4: EQ
000000f5: PUSH2 0x0825
000000f8: JUMPI
000000f9: DUP1
000000fa: PUSH4 0xb353aaa7
000000ff: EQ
00000100: PUSH2 0x0862
00000103: JUMPI
00000104: PUSH2 0x026e
00000107: JUMP
00000108: JUMPDEST
00000109: DUP1
0000010a: PUSH4 0x7533d788
0000010f: EQ
00000110: PUSH2 0x065c
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x8cfd8f5c
0000011a: EQ
0000011b: PUSH2 0x0699
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0x8da5cb5b
00000125: EQ
00000126: PUSH2 0x06d6
00000129: JUMPI
0000012a: DUP1
0000012b: PUSH4 0x9358928b
00000130: EQ
00000131: PUSH2 0x0701
00000134: JUMPI
00000135: DUP1
00000136: PUSH4 0x950c8a74
0000013b: EQ
0000013c: PUSH2 0x072c
0000013f: JUMPI
00000140: PUSH2 0x026e
00000143: JUMP
00000144: JUMPDEST
00000145: DUP1
00000146: PUSH4 0x313ce567
0000014b: GT
0000014c: PUSH2 0x01dd
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x4c42899a
00000156: GT
00000157: PUSH2 0x01a1
0000015a: JUMPI
0000015b: DUP1
0000015c: PUSH4 0x4c42899a
00000161: EQ
00000162: PUSH2 0x055b
00000165: JUMPI
00000166: DUP1
00000167: PUSH4 0x51905636
0000016c: EQ
0000016d: PUSH2 0x0586
00000170: JUMPI
00000171: DUP1
00000172: PUSH4 0x5b8c41e6
00000177: EQ
00000178: PUSH2 0x05a2
0000017b: JUMPI
0000017c: DUP1
0000017d: PUSH4 0x66ad5c8a
00000182: EQ
00000183: PUSH2 0x05df
00000186: JUMPI
00000187: DUP1
00000188: PUSH4 0x70a08231
0000018d: EQ
0000018e: PUSH2 0x0608
00000191: JUMPI
00000192: DUP1
00000193: PUSH4 0x715018a6
00000198: EQ
00000199: PUSH2 0x0645
0000019c: JUMPI
0000019d: PUSH2 0x026e
000001a0: JUMP
000001a1: JUMPDEST
000001a2: DUP1
000001a3: PUSH4 0x313ce567
000001a8: EQ
000001a9: PUSH2 0x0462
000001ac: JUMPI
000001ad: DUP1
000001ae: PUSH4 0x39509351
000001b3: EQ
000001b4: PUSH2 0x048d
000001b7: JUMPI
000001b8: DUP1
000001b9: PUSH4 0x3d8b38f6
000001be: EQ
000001bf: PUSH2 0x04ca
000001c2: JUMPI
000001c3: DUP1
000001c4: PUSH4 0x42d65a8d
000001c9: EQ
000001ca: PUSH2 0x0507
000001cd: JUMPI
000001ce: DUP1
000001cf: PUSH4 0x44770515
000001d4: EQ
000001d5: PUSH2 0x0530
000001d8: JUMPI
000001d9: PUSH2 0x026e
000001dc: JUMP
000001dd: JUMPDEST
000001de: DUP1
000001df: PUSH4 0x10ddb137
000001e4: GT
000001e5: PUSH2 0x0224
000001e8: JUMPI
000001e9: DUP1
000001ea: PUSH4 0x10ddb137
000001ef: EQ
000001f0: PUSH2 0x036a
000001f3: JUMPI
000001f4: DUP1
000001f5: PUSH4 0x18160ddd
000001fa: EQ
000001fb: PUSH2 0x0393
000001fe: JUMPI
000001ff: DUP1
00000200: PUSH4 0x23b872dd
00000205: EQ
00000206: PUSH2 0x03be
00000209: JUMPI
0000020a: DUP1
0000020b: PUSH4 0x2a205e3d
00000210: EQ
00000211: PUSH2 0x03fb
00000214: JUMPI
00000215: DUP1
00000216: PUSH4 0x2e1a7d4d
0000021b: EQ
0000021c: PUSH2 0x0439
0000021f: JUMPI
00000220: PUSH2 0x026e
00000223: JUMP
00000224: JUMPDEST
00000225: DUP1
00000226: PUSH3 0x1d3567
0000022a: EQ
0000022b: PUSH2 0x0273
0000022e: JUMPI
0000022f: DUP1
00000230: PUSH4 0x01ffc9a7
00000235: EQ
00000236: PUSH2 0x029c
00000239: JUMPI
0000023a: DUP1
0000023b: PUSH4 0x06fdde03
00000240: EQ
00000241: PUSH2 0x02d9
00000244: JUMPI
00000245: DUP1
00000246: PUSH4 0x07e0db17
0000024b: EQ
0000024c: PUSH2 0x0304
0000024f: JUMPI
00000250: DUP1
00000251: PUSH4 0x095ea7b3
00000256: EQ
00000257: PUSH2 0x032d
0000025a: JUMPI
0000025b: PUSH2 0x026e
0000025e: JUMP
0000025f: JUMPDEST
00000260: CALLDATASIZE
00000261: PUSH2 0x026e
00000264: JUMPI
00000265: PUSH2 0x026c
00000268: PUSH2 0x0a4e
0000026b: JUMP
0000026c: JUMPDEST
0000026d: STOP
0000026e: JUMPDEST
0000026f: PUSH1 0x00
00000271: DUP1
00000272: REVERT
00000273: JUMPDEST
00000274: CALLVALUE
00000275: DUP1
00000276: ISZERO
00000277: PUSH2 0x027f
0000027a: JUMPI
0000027b: PUSH1 0x00
0000027d: DUP1
0000027e: REVERT
0000027f: JUMPDEST
00000280: POP
00000281: PUSH2 0x029a
00000284: PUSH1 0x04
00000286: DUP1
00000287: CALLDATASIZE
00000288: SUB
00000289: DUP2
0000028a: ADD
0000028b: SWAP1
0000028c: PUSH2 0x0295
0000028f: SWAP2
00000290: SWAP1
00000291: PUSH2 0x3770
00000294: JUMP
00000295: JUMPDEST
00000296: PUSH2 0x0aa8
00000299: JUMP
0000029a: JUMPDEST
0000029b: STOP
0000029c: JUMPDEST
0000029d: CALLVALUE
0000029e: DUP1
0000029f: ISZERO
000002a0: PUSH2 0x02a8
000002a3: JUMPI
000002a4: PUSH1 0x00
000002a6: DUP1
000002a7: REVERT
000002a8: JUMPDEST
000002a9: POP
000002aa: PUSH2 0x02c3
000002ad: PUSH1 0x04
000002af: DUP1
000002b0: CALLDATASIZE
000002b1: SUB
000002b2: DUP2
000002b3: ADD
000002b4: SWAP1
000002b5: PUSH2 0x02be
000002b8: SWAP2
000002b9: SWAP1
000002ba: PUSH2 0x386f
000002bd: JUMP
000002be: JUMPDEST
000002bf: PUSH2 0x0cfe
000002c2: JUMP
000002c3: JUMPDEST
000002c4: PUSH1 0x40
000002c6: MLOAD
000002c7: PUSH2 0x02d0
000002ca: SWAP2
000002cb: SWAP1
000002cc: PUSH2 0x38b7
000002cf: JUMP
000002d0: JUMPDEST
000002d1: PUSH1 0x40
000002d3: MLOAD
000002d4: DUP1
000002d5: SWAP2
000002d6: SUB
000002d7: SWAP1
000002d8: RETURN
000002d9: JUMPDEST
000002da: CALLVALUE
000002db: DUP1
000002dc: ISZERO
000002dd: PUSH2 0x02e5
000002e0: JUMPI
000002e1: PUSH1 0x00
000002e3: DUP1
000002e4: REVERT
000002e5: JUMPDEST
000002e6: POP
000002e7: PUSH2 0x02ee
000002ea: PUSH2 0x0dc0
000002ed: JUMP
000002ee: JUMPDEST
000002ef: PUSH1 0x40
000002f1: MLOAD
000002f2: PUSH2 0x02fb
000002f5: SWAP2
000002f6: SWAP1
000002f7: PUSH2 0x3962
000002fa: JUMP
000002fb: JUMPDEST
000002fc: PUSH1 0x40
000002fe: MLOAD
000002ff: DUP1
00000300: SWAP2
00000301: SUB
00000302: SWAP1
00000303: RETURN
00000304: JUMPDEST
00000305: CALLVALUE
00000306: DUP1
00000307: ISZERO
00000308: PUSH2 0x0310
0000030b: JUMPI
0000030c: PUSH1 0x00
0000030e: DUP1
0000030f: REVERT
00000310: JUMPDEST
00000311: POP
00000312: PUSH2 0x032b
00000315: PUSH1 0x04
00000317: DUP1
00000318: CALLDATASIZE
00000319: SUB
0000031a: DUP2
0000031b: ADD
0000031c: SWAP1
0000031d: PUSH2 0x0326
00000320: SWAP2
00000321: SWAP1
00000322: PUSH2 0x3984
00000325: JUMP
00000326: JUMPDEST
00000327: PUSH2 0x0e52
0000032a: JUMP
0000032b: JUMPDEST
0000032c: STOP
0000032d: JUMPDEST
0000032e: CALLVALUE
0000032f: DUP1
00000330: ISZERO
00000331: PUSH2 0x0339
00000334: JUMPI
00000335: PUSH1 0x00
00000337: DUP1
00000338: REVERT
00000339: JUMPDEST
0000033a: POP
0000033b: PUSH2 0x0354
0000033e: PUSH1 0x04
00000340: DUP1
00000341: CALLDATASIZE
00000342: SUB
00000343: DUP2
00000344: ADD
00000345: SWAP1
00000346: PUSH2 0x034f
00000349: SWAP2
0000034a: SWAP1
0000034b: PUSH2 0x3a45
0000034e: JUMP
0000034f: JUMPDEST
00000350: PUSH2 0x0ee8
00000353: JUMP
00000354: JUMPDEST
00000355: PUSH1 0x40
00000357: MLOAD
00000358: PUSH2 0x0361
0000035b: SWAP2
0000035c: SWAP1
0000035d: PUSH2 0x38b7
00000360: JUMP
00000361: JUMPDEST
00000362: PUSH1 0x40
00000364: MLOAD
00000365: DUP1
00000366: SWAP2
00000367: SUB
00000368: SWAP1
00000369: RETURN
0000036a: JUMPDEST
0000036b: CALLVALUE
0000036c: DUP1
0000036d: ISZERO
0000036e: PUSH2 0x0376
00000371: JUMPI
00000372: PUSH1 0x00
00000374: DUP1
00000375: REVERT
00000376: JUMPDEST
00000377: POP
00000378: PUSH2 0x0391
0000037b: PUSH1 0x04
0000037d: DUP1
0000037e: CALLDATASIZE
0000037f: SUB
00000380: DUP2
00000381: ADD
00000382: SWAP1
00000383: PUSH2 0x038c
00000386: SWAP2
00000387: SWAP1
00000388: PUSH2 0x3984
0000038b: JUMP
0000038c: JUMPDEST
0000038d: PUSH2 0x0f0b
00000390: JUMP
00000391: JUMPDEST
00000392: STOP
00000393: JUMPDEST
00000394: CALLVALUE
00000395: DUP1
00000396: ISZERO
00000397: PUSH2 0x039f
0000039a: JUMPI
0000039b: PUSH1 0x00
0000039d: DUP1
0000039e: REVERT
0000039f: JUMPDEST
000003a0: POP
000003a1: PUSH2 0x03a8
000003a4: PUSH2 0x0fa1
000003a7: JUMP
000003a8: JUMPDEST
000003a9: PUSH1 0x40
000003ab: MLOAD
000003ac: PUSH2 0x03b5
000003af: SWAP2
000003b0: SWAP1
000003b1: PUSH2 0x3a94
000003b4: JUMP
000003b5: JUMPDEST
000003b6: PUSH1 0x40
000003b8: MLOAD
000003b9: DUP1
000003ba: SWAP2
000003bb: SUB
000003bc: SWAP1
000003bd: RETURN
000003be: JUMPDEST
000003bf: CALLVALUE
000003c0: DUP1
000003c1: ISZERO
000003c2: PUSH2 0x03ca
000003c5: JUMPI
000003c6: PUSH1 0x00
000003c8: DUP1
000003c9: REVERT
000003ca: JUMPDEST
000003cb: POP
000003cc: PUSH2 0x03e5
000003cf: PUSH1 0x04
000003d1: DUP1
000003d2: CALLDATASIZE
000003d3: SUB
000003d4: DUP2
000003d5: ADD
000003d6: SWAP1
000003d7: PUSH2 0x03e0
000003da: SWAP2
000003db: SWAP1
000003dc: PUSH2 0x3aaf
000003df: JUMP
000003e0: JUMPDEST
000003e1: PUSH2 0x0fab
000003e4: JUMP
000003e5: JUMPDEST
000003e6: PUSH1 0x40
000003e8: MLOAD
000003e9: PUSH2 0x03f2
000003ec: SWAP2
000003ed: SWAP1
000003ee: PUSH2 0x38b7
000003f1: JUMP
000003f2: JUMPDEST
000003f3: PUSH1 0x40
000003f5: MLOAD
000003f6: DUP1
000003f7: SWAP2
000003f8: SUB
000003f9: SWAP1
000003fa: RETURN
000003fb: JUMPDEST
000003fc: CALLVALUE
000003fd: DUP1
000003fe: ISZERO
000003ff: PUSH2 0x0407
00000402: JUMPI
00000403: PUSH1 0x00
00000405: DUP1
00000406: REVERT
00000407: JUMPDEST
00000408: POP
00000409: PUSH2 0x0422
0000040c: PUSH1 0x04
0000040e: DUP1
0000040f: CALLDATASIZE
00000410: SUB
00000411: DUP2
00000412: ADD
00000413: SWAP1
00000414: PUSH2 0x041d
00000417: SWAP2
00000418: SWAP1
00000419: PUSH2 0x3b2e
0000041c: JUMP
0000041d: JUMPDEST
0000041e: PUSH2 0x0fda
00000421: JUMP
00000422: JUMPDEST
00000423: PUSH1 0x40
00000425: MLOAD
00000426: PUSH2 0x0430
00000429: SWAP3
0000042a: SWAP2
0000042b: SWAP1
0000042c: PUSH2 0x3bea
0000042f: JUMP
00000430: JUMPDEST
00000431: PUSH1 0x40
00000433: MLOAD
00000434: DUP1
00000435: SWAP2
00000436: SUB
00000437: SWAP1
00000438: RETURN
00000439: JUMPDEST
0000043a: CALLVALUE
0000043b: DUP1
0000043c: ISZERO
0000043d: PUSH2 0x0445
00000440: JUMPI
00000441: PUSH1 0x00
00000443: DUP1
00000444: REVERT
00000445: JUMPDEST
00000446: POP
00000447: PUSH2 0x0460
0000044a: PUSH1 0x04
0000044c: DUP1
0000044d: CALLDATASIZE
0000044e: SUB
0000044f: DUP2
00000450: ADD
00000451: SWAP1
00000452: PUSH2 0x045b
00000455: SWAP2
00000456: SWAP1
00000457: PUSH2 0x3c13
0000045a: JUMP
0000045b: JUMPDEST
0000045c: PUSH2 0x10dc
0000045f: JUMP
00000460: JUMPDEST
00000461: STOP
00000462: JUMPDEST
00000463: CALLVALUE
00000464: DUP1
00000465: ISZERO
00000466: PUSH2 0x046e
00000469: JUMPI
0000046a: PUSH1 0x00
0000046c: DUP1
0000046d: REVERT
0000046e: JUMPDEST
0000046f: POP
00000470: PUSH2 0x0477
00000473: PUSH2 0x1284
00000476: JUMP
00000477: JUMPDEST
00000478: PUSH1 0x40
0000047a: MLOAD
0000047b: PUSH2 0x0484
0000047e: SWAP2
0000047f: SWAP1
00000480: PUSH2 0x3c5c
00000483: JUMP
00000484: JUMPDEST
00000485: PUSH1 0x40
00000487: MLOAD
00000488: DUP1
00000489: SWAP2
0000048a: SUB
0000048b: SWAP1
0000048c: RETURN
0000048d: JUMPDEST
0000048e: CALLVALUE
0000048f: DUP1
00000490: ISZERO
00000491: PUSH2 0x0499
00000494: JUMPI
00000495: PUSH1 0x00
00000497: DUP1
00000498: REVERT
00000499: JUMPDEST
0000049a: POP
0000049b: PUSH2 0x04b4
0000049e: PUSH1 0x04
000004a0: DUP1
000004a1: CALLDATASIZE
000004a2: SUB
000004a3: DUP2
000004a4: ADD
000004a5: SWAP1
000004a6: PUSH2 0x04af
000004a9: SWAP2
000004aa: SWAP1
000004ab: PUSH2 0x3a45
000004ae: JUMP
000004af: JUMPDEST
000004b0: PUSH2 0x128d
000004b3: JUMP
000004b4: JUMPDEST
000004b5: PUSH1 0x40
000004b7: MLOAD
000004b8: PUSH2 0x04c1
000004bb: SWAP2
000004bc: SWAP1
000004bd: PUSH2 0x38b7
000004c0: JUMP
000004c1: JUMPDEST
000004c2: PUSH1 0x40
000004c4: MLOAD
000004c5: DUP1
000004c6: SWAP2
000004c7: SUB
000004c8: SWAP1
000004c9: RETURN
000004ca: JUMPDEST
000004cb: CALLVALUE
000004cc: DUP1
000004cd: ISZERO
000004ce: PUSH2 0x04d6
000004d1: JUMPI
000004d2: PUSH1 0x00
000004d4: DUP1
000004d5: REVERT
000004d6: JUMPDEST
000004d7: POP
000004d8: PUSH2 0x04f1
000004db: PUSH1 0x04
000004dd: DUP1
000004de: CALLDATASIZE
000004df: SUB
000004e0: DUP2
000004e1: ADD
000004e2: SWAP1
000004e3: PUSH2 0x04ec
000004e6: SWAP2
000004e7: SWAP1
000004e8: PUSH2 0x3c77
000004eb: JUMP
000004ec: JUMPDEST
000004ed: PUSH2 0x12c4
000004f0: JUMP
000004f1: JUMPDEST
000004f2: PUSH1 0x40
000004f4: MLOAD
000004f5: PUSH2 0x04fe
000004f8: SWAP2
000004f9: SWAP1
000004fa: PUSH2 0x38b7
000004fd: JUMP
000004fe: JUMPDEST
000004ff: PUSH1 0x40
00000501: MLOAD
00000502: DUP1
00000503: SWAP2
00000504: SUB
00000505: SWAP1
00000506: RETURN
00000507: JUMPDEST
00000508: CALLVALUE
00000509: DUP1
0000050a: ISZERO
0000050b: PUSH2 0x0513
0000050e: JUMPI
0000050f: PUSH1 0x00
00000511: DUP1
00000512: REVERT
00000513: JUMPDEST
00000514: POP
00000515: PUSH2 0x052e
00000518: PUSH1 0x04
0000051a: DUP1
0000051b: CALLDATASIZE
0000051c: SUB
0000051d: DUP2
0000051e: ADD
0000051f: SWAP1
00000520: PUSH2 0x0529
00000523: SWAP2
00000524: SWAP1
00000525: PUSH2 0x3c77
00000528: JUMP
00000529: JUMPDEST
0000052a: PUSH2 0x1398
0000052d: JUMP
0000052e: JUMPDEST
0000052f: STOP
00000530: JUMPDEST
00000531: CALLVALUE
00000532: DUP1
00000533: ISZERO
00000534: PUSH2 0x053c
00000537: JUMPI
00000538: PUSH1 0x00
0000053a: DUP1
0000053b: REVERT
0000053c: JUMPDEST
0000053d: POP
0000053e: PUSH2 0x0545
00000541: PUSH2 0x1434
00000544: JUMP
00000545: JUMPDEST
00000546: PUSH1 0x40
00000548: MLOAD
00000549: PUSH2 0x0552
0000054c: SWAP2
0000054d: SWAP1
0000054e: PUSH2 0x3a94
00000551: JUMP
00000552: JUMPDEST
00000553: PUSH1 0x40
00000555: MLOAD
00000556: DUP1
00000557: SWAP2
00000558: SUB
00000559: SWAP1
0000055a: RETURN
0000055b: JUMPDEST
0000055c: CALLVALUE
0000055d: DUP1
0000055e: ISZERO
0000055f: PUSH2 0x0567
00000562: JUMPI
00000563: PUSH1 0x00
00000565: DUP1
00000566: REVERT
00000567: JUMPDEST
00000568: POP
00000569: PUSH2 0x0570
0000056c: PUSH2 0x1439
0000056f: JUMP
00000570: JUMPDEST
00000571: PUSH1 0x40
00000573: MLOAD
00000574: PUSH2 0x057d
00000577: SWAP2
00000578: SWAP1
00000579: PUSH2 0x3ce6
0000057c: JUMP
0000057d: JUMPDEST
0000057e: PUSH1 0x40
00000580: MLOAD
00000581: DUP1
00000582: SWAP2
00000583: SUB
00000584: SWAP1
00000585: RETURN
00000586: JUMPDEST
00000587: PUSH2 0x05a0
0000058a: PUSH1 0x04
0000058c: DUP1
0000058d: CALLDATASIZE
0000058e: SUB
0000058f: DUP2
00000590: ADD
00000591: SWAP1
00000592: PUSH2 0x059b
00000595: SWAP2
00000596: SWAP1
00000597: PUSH2 0x3d3f
0000059a: JUMP
0000059b: JUMPDEST
0000059c: PUSH2 0x143e
0000059f: JUMP
000005a0: JUMPDEST
000005a1: STOP
000005a2: JUMPDEST
000005a3: CALLVALUE
000005a4: DUP1
000005a5: ISZERO
000005a6: PUSH2 0x05ae
000005a9: JUMPI
000005aa: PUSH1 0x00
000005ac: DUP1
000005ad: REVERT
000005ae: JUMPDEST
000005af: POP
000005b0: PUSH2 0x05c9
000005b3: PUSH1 0x04
000005b5: DUP1
000005b6: CALLDATASIZE
000005b7: SUB
000005b8: DUP2
000005b9: ADD
000005ba: SWAP1
000005bb: PUSH2 0x05c4
000005be: SWAP2
000005bf: SWAP1
000005c0: PUSH2 0x3f51
000005c3: JUMP
000005c4: JUMPDEST
000005c5: PUSH2 0x14e0
000005c8: JUMP
000005c9: JUMPDEST
000005ca: PUSH1 0x40
000005cc: MLOAD
000005cd: PUSH2 0x05d6
000005d0: SWAP2
000005d1: SWAP1
000005d2: PUSH2 0x3fd9
000005d5: JUMP
000005d6: JUMPDEST
000005d7: PUSH1 0x40
000005d9: MLOAD
000005da: DUP1
000005db: SWAP2
000005dc: SUB
000005dd: SWAP1
000005de: RETURN
000005df: JUMPDEST
000005e0: CALLVALUE
000005e1: DUP1
000005e2: ISZERO
000005e3: PUSH2 0x05eb
000005e6: JUMPI
000005e7: PUSH1 0x00
000005e9: DUP1
000005ea: REVERT
000005eb: JUMPDEST
000005ec: POP
000005ed: PUSH2 0x0606
000005f0: PUSH1 0x04
000005f2: DUP1
000005f3: CALLDATASIZE
000005f4: SUB
000005f5: DUP2
000005f6: ADD
000005f7: SWAP1
000005f8: PUSH2 0x0601
000005fb: SWAP2
000005fc: SWAP1
000005fd: PUSH2 0x3770
00000600: JUMP
00000601: JUMPDEST
00000602: PUSH2 0x1528
00000605: JUMP
00000606: JUMPDEST
00000607: STOP
00000608: JUMPDEST
00000609: CALLVALUE
0000060a: DUP1
0000060b: ISZERO
0000060c: PUSH2 0x0614
0000060f: JUMPI
00000610: PUSH1 0x00
00000612: DUP1
00000613: REVERT
00000614: JUMPDEST
00000615: POP
00000616: PUSH2 0x062f
00000619: PUSH1 0x04
0000061b: DUP1
0000061c: CALLDATASIZE
0000061d: SUB
0000061e: DUP2
0000061f: ADD
00000620: SWAP1
00000621: PUSH2 0x062a
00000624: SWAP2
00000625: SWAP1
00000626: PUSH2 0x3ff4
00000629: JUMP
0000062a: JUMPDEST
0000062b: PUSH2 0x1639
0000062e: JUMP
0000062f: JUMPDEST
00000630: PUSH1 0x40
00000632: MLOAD
00000633: PUSH2 0x063c
00000636: SWAP2
00000637: SWAP1
00000638: PUSH2 0x3a94
0000063b: JUMP
0000063c: JUMPDEST
0000063d: PUSH1 0x40
0000063f: MLOAD
00000640: DUP1
00000641: SWAP2
00000642: SUB
00000643: SWAP1
00000644: RETURN
00000645: JUMPDEST
00000646: CALLVALUE
00000647: DUP1
00000648: ISZERO
00000649: PUSH2 0x0651
0000064c: JUMPI
0000064d: PUSH1 0x00
0000064f: DUP1
00000650: REVERT
00000651: JUMPDEST
00000652: POP
00000653: PUSH2 0x065a
00000656: PUSH2 0x1682
00000659: JUMP
0000065a: JUMPDEST
0000065b: STOP
0000065c: JUMPDEST
0000065d: CALLVALUE
0000065e: DUP1
0000065f: ISZERO
00000660: PUSH2 0x0668
00000663: JUMPI
00000664: PUSH1 0x00
00000666: DUP1
00000667: REVERT
00000668: JUMPDEST
00000669: POP
0000066a: PUSH2 0x0683
0000066d: PUSH1 0x04
0000066f: DUP1
00000670: CALLDATASIZE
00000671: SUB
00000672: DUP2
00000673: ADD
00000674: SWAP1
00000675: PUSH2 0x067e
00000678: SWAP2
00000679: SWAP1
0000067a: PUSH2 0x3984
0000067d: JUMP
0000067e: JUMPDEST
0000067f: PUSH2 0x1696
00000682: JUMP
00000683: JUMPDEST
00000684: PUSH1 0x40
00000686: MLOAD
00000687: PUSH2 0x0690
0000068a: SWAP2
0000068b: SWAP1
0000068c: PUSH2 0x4076
0000068f: JUMP
00000690: JUMPDEST
00000691: PUSH1 0x40
00000693: MLOAD
00000694: DUP1
00000695: SWAP2
00000696: SUB
00000697: SWAP1
00000698: RETURN
00000699: JUMPDEST
0000069a: CALLVALUE
0000069b: DUP1
0000069c: ISZERO
0000069d: PUSH2 0x06a5
000006a0: JUMPI
000006a1: PUSH1 0x00
000006a3: DUP1
000006a4: REVERT
000006a5: JUMPDEST
000006a6: POP
000006a7: PUSH2 0x06c0
000006aa: PUSH1 0x04
000006ac: DUP1
000006ad: CALLDATASIZE
000006ae: SUB
000006af: DUP2
000006b0: ADD
000006b1: SWAP1
000006b2: PUSH2 0x06bb
000006b5: SWAP2
000006b6: SWAP1
000006b7: PUSH2 0x4098
000006ba: JUMP
000006bb: JUMPDEST
000006bc: PUSH2 0x1736
000006bf: JUMP
000006c0: JUMPDEST
000006c1: PUSH1 0x40
000006c3: MLOAD
000006c4: PUSH2 0x06cd
000006c7: SWAP2
000006c8: SWAP1
000006c9: PUSH2 0x3a94
000006cc: JUMP
000006cd: JUMPDEST
000006ce: PUSH1 0x40
000006d0: MLOAD
000006d1: DUP1
000006d2: SWAP2
000006d3: SUB
000006d4: SWAP1
000006d5: RETURN
000006d6: JUMPDEST
000006d7: CALLVALUE
000006d8: DUP1
000006d9: ISZERO
000006da: PUSH2 0x06e2
000006dd: JUMPI
000006de: PUSH1 0x00
000006e0: DUP1
000006e1: REVERT
000006e2: JUMPDEST
000006e3: POP
000006e4: PUSH2 0x06eb
000006e7: PUSH2 0x175b
000006ea: JUMP
000006eb: JUMPDEST
000006ec: PUSH1 0x40
000006ee: MLOAD
000006ef: PUSH2 0x06f8
000006f2: SWAP2
000006f3: SWAP1
000006f4: PUSH2 0x40e7
000006f7: JUMP
000006f8: JUMPDEST
000006f9: PUSH1 0x40
000006fb: MLOAD
000006fc: DUP1
000006fd: SWAP2
000006fe: SUB
000006ff: SWAP1
00000700: RETURN
00000701: JUMPDEST
00000702: CALLVALUE
00000703: DUP1
00000704: ISZERO
00000705: PUSH2 0x070d
00000708: JUMPI
00000709: PUSH1 0x00
0000070b: DUP1
0000070c: REVERT
0000070d: JUMPDEST
0000070e: POP
0000070f: PUSH2 0x0716
00000712: PUSH2 0x1784
00000715: JUMP
00000716: JUMPDEST
00000717: PUSH1 0x40
00000719: MLOAD
0000071a: PUSH2 0x0723
0000071d: SWAP2
0000071e: SWAP1
0000071f: PUSH2 0x3a94
00000722: JUMP
00000723: JUMPDEST
00000724: PUSH1 0x40
00000726: MLOAD
00000727: DUP1
00000728: SWAP2
00000729: SUB
0000072a: SWAP1
0000072b: RETURN
0000072c: JUMPDEST
0000072d: CALLVALUE
0000072e: DUP1
0000072f: ISZERO
00000730: PUSH2 0x0738
00000733: JUMPI
00000734: PUSH1 0x00
00000736: DUP1
00000737: REVERT
00000738: JUMPDEST
00000739: POP
0000073a: PUSH2 0x0741
0000073d: PUSH2 0x1793
00000740: JUMP
00000741: JUMPDEST
00000742: PUSH1 0x40
00000744: MLOAD
00000745: PUSH2 0x074e
00000748: SWAP2
00000749: SWAP1
0000074a: PUSH2 0x40e7
0000074d: JUMP
0000074e: JUMPDEST
0000074f: PUSH1 0x40
00000751: MLOAD
00000752: DUP1
00000753: SWAP2
00000754: SUB
00000755: SWAP1
00000756: RETURN
00000757: JUMPDEST
00000758: CALLVALUE
00000759: DUP1
0000075a: ISZERO
0000075b: PUSH2 0x0763
0000075e: JUMPI
0000075f: PUSH1 0x00
00000761: DUP1
00000762: REVERT
00000763: JUMPDEST
00000764: POP
00000765: PUSH2 0x076c
00000768: PUSH2 0x17b9
0000076b: JUMP
0000076c: JUMPDEST
0000076d: PUSH1 0x40
0000076f: MLOAD
00000770: PUSH2 0x0779
00000773: SWAP2
00000774: SWAP1
00000775: PUSH2 0x3962
00000778: JUMP
00000779: JUMPDEST
0000077a: PUSH1 0x40
0000077c: MLOAD
0000077d: DUP1
0000077e: SWAP2
0000077f: SUB
00000780: SWAP1
00000781: RETURN
00000782: JUMPDEST
00000783: CALLVALUE
00000784: DUP1
00000785: ISZERO
00000786: PUSH2 0x078e
00000789: JUMPI
0000078a: PUSH1 0x00
0000078c: DUP1
0000078d: REVERT
0000078e: JUMPDEST
0000078f: POP
00000790: PUSH2 0x07a9
00000793: PUSH1 0x04
00000795: DUP1
00000796: CALLDATASIZE
00000797: SUB
00000798: DUP2
00000799: ADD
0000079a: SWAP1
0000079b: PUSH2 0x07a4
0000079e: SWAP2
0000079f: SWAP1
000007a0: PUSH2 0x3984
000007a3: JUMP
000007a4: JUMPDEST
000007a5: PUSH2 0x184b
000007a8: JUMP
000007a9: JUMPDEST
000007aa: PUSH1 0x40
000007ac: MLOAD
000007ad: PUSH2 0x07b6
000007b0: SWAP2
000007b1: SWAP1
000007b2: PUSH2 0x4076
000007b5: JUMP
000007b6: JUMPDEST
000007b7: PUSH1 0x40
000007b9: MLOAD
000007ba: DUP1
000007bb: SWAP2
000007bc: SUB
000007bd: SWAP1
000007be: RETURN
000007bf: JUMPDEST
000007c0: CALLVALUE
000007c1: DUP1
000007c2: ISZERO
000007c3: PUSH2 0x07cb
000007c6: JUMPI
000007c7: PUSH1 0x00
000007c9: DUP1
000007ca: REVERT
000007cb: JUMPDEST
000007cc: POP
000007cd: PUSH2 0x07e6
000007d0: PUSH1 0x04
000007d2: DUP1
000007d3: CALLDATASIZE
000007d4: SUB
000007d5: DUP2
000007d6: ADD
000007d7: SWAP1
000007d8: PUSH2 0x07e1
000007db: SWAP2
000007dc: SWAP1
000007dd: PUSH2 0x3a45
000007e0: JUMP
000007e1: JUMPDEST
000007e2: PUSH2 0x1964
000007e5: JUMP
000007e6: JUMPDEST
000007e7: PUSH1 0x40
000007e9: MLOAD
000007ea: PUSH2 0x07f3
000007ed: SWAP2
000007ee: SWAP1
000007ef: PUSH2 0x38b7
000007f2: JUMP
000007f3: JUMPDEST
000007f4: PUSH1 0x40
000007f6: MLOAD
000007f7: DUP1
000007f8: SWAP2
000007f9: SUB
000007fa: SWAP1
000007fb: RETURN
000007fc: JUMPDEST
000007fd: CALLVALUE
000007fe: DUP1
000007ff: ISZERO
00000800: PUSH2 0x0808
00000803: JUMPI
00000804: PUSH1 0x00
00000806: DUP1
00000807: REVERT
00000808: JUMPDEST
00000809: POP
0000080a: PUSH2 0x0823
0000080d: PUSH1 0x04
0000080f: DUP1
00000810: CALLDATASIZE
00000811: SUB
00000812: DUP2
00000813: ADD
00000814: SWAP1
00000815: PUSH2 0x081e
00000818: SWAP2
00000819: SWAP1
0000081a: PUSH2 0x3c77
0000081d: JUMP
0000081e: JUMPDEST
0000081f: PUSH2 0x19db
00000822: JUMP
00000823: JUMPDEST
00000824: STOP
00000825: JUMPDEST
00000826: CALLVALUE
00000827: DUP1
00000828: ISZERO
00000829: PUSH2 0x0831
0000082c: JUMPI
0000082d: PUSH1 0x00
0000082f: DUP1
00000830: REVERT
00000831: JUMPDEST
00000832: POP
00000833: PUSH2 0x084c
00000836: PUSH1 0x04
00000838: DUP1
00000839: CALLDATASIZE
0000083a: SUB
0000083b: DUP2
0000083c: ADD
0000083d: SWAP1
0000083e: PUSH2 0x0847
00000841: SWAP2
00000842: SWAP1
00000843: PUSH2 0x3a45
00000846: JUMP
00000847: JUMPDEST
00000848: PUSH2 0x1a6f
0000084b: JUMP
0000084c: JUMPDEST
0000084d: PUSH1 0x40
0000084f: MLOAD
00000850: PUSH2 0x0859
00000853: SWAP2
00000854: SWAP1
00000855: PUSH2 0x38b7
00000858: JUMP
00000859: JUMPDEST
0000085a: PUSH1 0x40
0000085c: MLOAD
0000085d: DUP1
0000085e: SWAP2
0000085f: SUB
00000860: SWAP1
00000861: RETURN
00000862: JUMPDEST
00000863: CALLVALUE
00000864: DUP1
00000865: ISZERO
00000866: PUSH2 0x086e
00000869: JUMPI
0000086a: PUSH1 0x00
0000086c: DUP1
0000086d: REVERT
0000086e: JUMPDEST
0000086f: POP
00000870: PUSH2 0x0877
00000873: PUSH2 0x1a92
00000876: JUMP
00000877: JUMPDEST
00000878: PUSH1 0x40
0000087a: MLOAD
0000087b: PUSH2 0x0884
0000087e: SWAP2
0000087f: SWAP1
00000880: PUSH2 0x4161
00000883: JUMP
00000884: JUMPDEST
00000885: PUSH1 0x40
00000887: MLOAD
00000888: DUP1
00000889: SWAP2
0000088a: SUB
0000088b: SWAP1
0000088c: RETURN
0000088d: JUMPDEST
0000088e: CALLVALUE
0000088f: DUP1
00000890: ISZERO
00000891: PUSH2 0x0899
00000894: JUMPI
00000895: PUSH1 0x00
00000897: DUP1
00000898: REVERT
00000899: JUMPDEST
0000089a: POP
0000089b: PUSH2 0x08b4
0000089e: PUSH1 0x04
000008a0: DUP1
000008a1: CALLDATASIZE
000008a2: SUB
000008a3: DUP2
000008a4: ADD
000008a5: SWAP1
000008a6: PUSH2 0x08af
000008a9: SWAP2
000008aa: SWAP1
000008ab: PUSH2 0x3ff4
000008ae: JUMP
000008af: JUMPDEST
000008b0: PUSH2 0x1ab6
000008b3: JUMP
000008b4: JUMPDEST
000008b5: STOP
000008b6: JUMPDEST
000008b7: CALLVALUE
000008b8: DUP1
000008b9: ISZERO
000008ba: PUSH2 0x08c2
000008bd: JUMPI
000008be: PUSH1 0x00
000008c0: DUP1
000008c1: REVERT
000008c2: JUMPDEST
000008c3: POP
000008c4: PUSH2 0x08dd
000008c7: PUSH1 0x04
000008c9: DUP1
000008ca: CALLDATASIZE
000008cb: SUB
000008cc: DUP2
000008cd: ADD
000008ce: SWAP1
000008cf: PUSH2 0x08d8
000008d2: SWAP2
000008d3: SWAP1
000008d4: PUSH2 0x417c
000008d7: JUMP
000008d8: JUMPDEST
000008d9: PUSH2 0x1b39
000008dc: JUMP
000008dd: JUMPDEST
000008de: STOP
000008df: JUMPDEST
000008e0: PUSH2 0x08e7
000008e3: PUSH2 0x0a4e
000008e6: JUMP
000008e7: JUMPDEST
000008e8: STOP
000008e9: JUMPDEST
000008ea: PUSH2 0x0903
000008ed: PUSH1 0x04
000008ef: DUP1
000008f0: CALLDATASIZE
000008f1: SUB
000008f2: DUP2
000008f3: ADD
000008f4: SWAP1
000008f5: PUSH2 0x08fe
000008f8: SWAP2
000008f9: SWAP1
000008fa: PUSH2 0x3770
000008fd: JUMP
000008fe: JUMPDEST
000008ff: PUSH2 0x1bdb
00000902: JUMP
00000903: JUMPDEST
00000904: STOP
00000905: JUMPDEST
00000906: CALLVALUE
00000907: DUP1
00000908: ISZERO
00000909: PUSH2 0x0911
0000090c: JUMPI
0000090d: PUSH1 0x00
0000090f: DUP1
00000910: REVERT
00000911: JUMPDEST
00000912: POP
00000913: PUSH2 0x092c
00000916: PUSH1 0x04
00000918: DUP1
00000919: CALLDATASIZE
0000091a: SUB
0000091b: DUP2
0000091c: ADD
0000091d: SWAP1
0000091e: PUSH2 0x0927
00000921: SWAP2
00000922: SWAP1
00000923: PUSH2 0x4204
00000926: JUMP
00000927: JUMPDEST
00000928: PUSH2 0x1e1e
0000092b: JUMP
0000092c: JUMPDEST
0000092d: PUSH1 0x40
0000092f: MLOAD
00000930: PUSH2 0x0939
00000933: SWAP2
00000934: SWAP1
00000935: PUSH2 0x3a94
00000938: JUMP
00000939: JUMPDEST
0000093a: PUSH1 0x40
0000093c: MLOAD
0000093d: DUP1
0000093e: SWAP2
0000093f: SUB
00000940: SWAP1
00000941: RETURN
00000942: JUMPDEST
00000943: CALLVALUE
00000944: DUP1
00000945: ISZERO
00000946: PUSH2 0x094e
00000949: JUMPI
0000094a: PUSH1 0x00
0000094c: DUP1
0000094d: REVERT
0000094e: JUMPDEST
0000094f: POP
00000950: PUSH2 0x0969
00000953: PUSH1 0x04
00000955: DUP1
00000956: CALLDATASIZE
00000957: SUB
00000958: DUP2
00000959: ADD
0000095a: SWAP1
0000095b: PUSH2 0x0964
0000095e: SWAP2
0000095f: SWAP1
00000960: PUSH2 0x4244
00000963: JUMP
00000964: JUMPDEST
00000965: PUSH2 0x1ea5
00000968: JUMP
00000969: JUMPDEST
0000096a: STOP
0000096b: JUMPDEST
0000096c: CALLVALUE
0000096d: DUP1
0000096e: ISZERO
0000096f: PUSH2 0x0977
00000972: JUMPI
00000973: PUSH1 0x00
00000975: DUP1
00000976: REVERT
00000977: JUMPDEST
00000978: POP
00000979: PUSH2 0x0992
0000097c: PUSH1 0x04
0000097e: DUP1
0000097f: CALLDATASIZE
00000980: SUB
00000981: DUP2
00000982: ADD
00000983: SWAP1
00000984: PUSH2 0x098d
00000987: SWAP2
00000988: SWAP1
00000989: PUSH2 0x4297
0000098c: JUMP
0000098d: JUMPDEST
0000098e: PUSH2 0x1f69
00000991: JUMP
00000992: JUMPDEST
00000993: STOP
00000994: JUMPDEST
00000995: CALLVALUE
00000996: DUP1
00000997: ISZERO
00000998: PUSH2 0x09a0
0000099b: JUMPI
0000099c: PUSH1 0x00
0000099e: DUP1
0000099f: REVERT
000009a0: JUMPDEST
000009a1: POP
000009a2: PUSH2 0x09bb
000009a5: PUSH1 0x04
000009a7: DUP1
000009a8: CALLDATASIZE
000009a9: SUB
000009aa: DUP2
000009ab: ADD
000009ac: SWAP1
000009ad: PUSH2 0x09b6
000009b0: SWAP2
000009b1: SWAP1
000009b2: PUSH2 0x3c77
000009b5: JUMP
000009b6: JUMPDEST
000009b7: PUSH2 0x1fc5
000009ba: JUMP
000009bb: JUMPDEST
000009bc: STOP
000009bd: JUMPDEST
000009be: CALLVALUE
000009bf: DUP1
000009c0: ISZERO
000009c1: PUSH2 0x09c9
000009c4: JUMPI
000009c5: PUSH1 0x00
000009c7: DUP1
000009c8: REVERT
000009c9: JUMPDEST
000009ca: POP
000009cb: PUSH2 0x09d2
000009ce: PUSH2 0x2038
000009d1: JUMP
000009d2: JUMPDEST
000009d3: PUSH1 0x40
000009d5: MLOAD
000009d6: PUSH2 0x09df
000009d9: SWAP2
000009da: SWAP1
000009db: PUSH2 0x38b7
000009de: JUMP
000009df: JUMPDEST
000009e0: PUSH1 0x40
000009e2: MLOAD
000009e3: DUP1
000009e4: SWAP2
000009e5: SUB
000009e6: SWAP1
000009e7: RETURN
000009e8: JUMPDEST
000009e9: CALLVALUE
000009ea: DUP1
000009eb: ISZERO
000009ec: PUSH2 0x09f4
000009ef: JUMPI
000009f0: PUSH1 0x00
000009f2: DUP1
000009f3: REVERT
000009f4: JUMPDEST
000009f5: POP
000009f6: PUSH2 0x0a0f
000009f9: PUSH1 0x04
000009fb: DUP1
000009fc: CALLDATASIZE
000009fd: SUB
000009fe: DUP2
000009ff: ADD
00000a00: SWAP1
00000a01: PUSH2 0x0a0a
00000a04: SWAP2
00000a05: SWAP1
00000a06: PUSH2 0x3ff4
00000a09: JUMP
00000a0a: JUMPDEST
00000a0b: PUSH2 0x204b
00000a0e: JUMP
00000a0f: JUMPDEST
00000a10: STOP
00000a11: JUMPDEST
00000a12: CALLVALUE
00000a13: DUP1
00000a14: ISZERO
00000a15: PUSH2 0x0a1d
00000a18: JUMPI
00000a19: PUSH1 0x00
00000a1b: DUP1
00000a1c: REVERT
00000a1d: JUMPDEST
00000a1e: POP
00000a1f: PUSH2 0x0a38
00000a22: PUSH1 0x04
00000a24: DUP1
00000a25: CALLDATASIZE
00000a26: SUB
00000a27: DUP2
00000a28: ADD
00000a29: SWAP1
00000a2a: PUSH2 0x0a33
00000a2d: SWAP2
00000a2e: SWAP1
00000a2f: PUSH2 0x42c4
00000a32: JUMP
00000a33: JUMPDEST
00000a34: PUSH2 0x20ce
00000a37: JUMP
00000a38: JUMPDEST
00000a39: PUSH1 0x40
00000a3b: MLOAD
00000a3c: PUSH2 0x0a45
00000a3f: SWAP2
00000a40: SWAP1
00000a41: PUSH2 0x4076
00000a44: JUMP
00000a45: JUMPDEST
00000a46: PUSH1 0x40
00000a48: MLOAD
00000a49: DUP1
00000a4a: SWAP2
00000a4b: SUB
00000a4c: SWAP1
00000a4d: RETURN
00000a4e: JUMPDEST
00000a4f: PUSH2 0x0a58
00000a52: CALLER
00000a53: CALLVALUE
00000a54: PUSH2 0x217f
00000a57: JUMP
00000a58: JUMPDEST
00000a59: CALLER
00000a5a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a6f: AND
00000a70: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
00000a91: CALLVALUE
00000a92: PUSH1 0x40
00000a94: MLOAD
00000a95: PUSH2 0x0a9e
00000a98: SWAP2
00000a99: SWAP1
00000a9a: PUSH2 0x3a94
00000a9d: JUMP
00000a9e: JUMPDEST
00000a9f: PUSH1 0x40
00000aa1: MLOAD
00000aa2: DUP1
00000aa3: SWAP2
00000aa4: SUB
00000aa5: SWAP1
00000aa6: LOG2
00000aa7: JUMP
00000aa8: JUMPDEST
00000aa9: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00000aca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000adf: AND
00000ae0: PUSH2 0x0ae7
00000ae3: PUSH2 0x22df
00000ae6: JUMP
00000ae7: JUMPDEST
00000ae8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000afd: AND
00000afe: EQ
00000aff: PUSH2 0x0b3d
00000b02: JUMPI
00000b03: PUSH1 0x40
00000b05: MLOAD
00000b06: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000b27: DUP2
00000b28: MSTORE
00000b29: PUSH1 0x04
00000b2b: ADD
00000b2c: PUSH2 0x0b34
00000b2f: SWAP1
00000b30: PUSH2 0x4377
00000b33: JUMP
00000b34: JUMPDEST
00000b35: PUSH1 0x40
00000b37: MLOAD
00000b38: DUP1
00000b39: SWAP2
00000b3a: SUB
00000b3b: SWAP1
00000b3c: REVERT
00000b3d: JUMPDEST
00000b3e: PUSH1 0x00
00000b40: PUSH1 0x01
00000b42: PUSH1 0x00
00000b44: DUP9
00000b45: PUSH2 0xffff
00000b48: AND
00000b49: PUSH2 0xffff
00000b4c: AND
00000b4d: DUP2
00000b4e: MSTORE
00000b4f: PUSH1 0x20
00000b51: ADD
00000b52: SWAP1
00000b53: DUP2
00000b54: MSTORE
00000b55: PUSH1 0x20
00000b57: ADD
00000b58: PUSH1 0x00
00000b5a: KECCAK256
00000b5b: DUP1
00000b5c: SLOAD
00000b5d: PUSH2 0x0b65
00000b60: SWAP1
00000b61: PUSH2 0x43c6
00000b64: JUMP
00000b65: JUMPDEST
00000b66: DUP1
00000b67: PUSH1 0x1f
00000b69: ADD
00000b6a: PUSH1 0x20
00000b6c: DUP1
00000b6d: SWAP2
00000b6e: DIV
00000b6f: MUL
00000b70: PUSH1 0x20
00000b72: ADD
00000b73: PUSH1 0x40
00000b75: MLOAD
00000b76: SWAP1
00000b77: DUP2
00000b78: ADD
00000b79: PUSH1 0x40
00000b7b: MSTORE
00000b7c: DUP1
00000b7d: SWAP3
00000b7e: SWAP2
00000b7f: SWAP1
00000b80: DUP2
00000b81: DUP2
00000b82: MSTORE
00000b83: PUSH1 0x20
00000b85: ADD
00000b86: DUP3
00000b87: DUP1
00000b88: SLOAD
00000b89: PUSH2 0x0b91
00000b8c: SWAP1
00000b8d: PUSH2 0x43c6
00000b90: JUMP
00000b91: JUMPDEST
00000b92: DUP1
00000b93: ISZERO
00000b94: PUSH2 0x0bde
00000b97: JUMPI
00000b98: DUP1
00000b99: PUSH1 0x1f
00000b9b: LT
00000b9c: PUSH2 0x0bb3
00000b9f: JUMPI
00000ba0: PUSH2 0x0100
00000ba3: DUP1
00000ba4: DUP4
00000ba5: SLOAD
00000ba6: DIV
00000ba7: MUL
00000ba8: DUP4
00000ba9: MSTORE
00000baa: SWAP2
00000bab: PUSH1 0x20
00000bad: ADD
00000bae: SWAP2
00000baf: PUSH2 0x0bde
00000bb2: JUMP
00000bb3: JUMPDEST
00000bb4: DUP3
00000bb5: ADD
00000bb6: SWAP2
00000bb7: SWAP1
00000bb8: PUSH1 0x00
00000bba: MSTORE
00000bbb: PUSH1 0x20
00000bbd: PUSH1 0x00
00000bbf: KECCAK256
00000bc0: SWAP1
00000bc1: JUMPDEST
00000bc2: DUP2
00000bc3: SLOAD
00000bc4: DUP2
00000bc5: MSTORE
00000bc6: SWAP1
00000bc7: PUSH1 0x01
00000bc9: ADD
00000bca: SWAP1
00000bcb: PUSH1 0x20
00000bcd: ADD
00000bce: DUP1
00000bcf: DUP4
00000bd0: GT
00000bd1: PUSH2 0x0bc1
00000bd4: JUMPI
00000bd5: DUP3
00000bd6: SWAP1
00000bd7: SUB
00000bd8: PUSH1 0x1f
00000bda: AND
00000bdb: DUP3
00000bdc: ADD
00000bdd: SWAP2
00000bde: JUMPDEST
00000bdf: POP
00000be0: POP
00000be1: POP
00000be2: POP
00000be3: POP
00000be4: SWAP1
00000be5: POP
00000be6: DUP1
00000be7: MLOAD
00000be8: DUP7
00000be9: DUP7
00000bea: SWAP1
00000beb: POP
00000bec: EQ
00000bed: DUP1
00000bee: ISZERO
00000bef: PUSH2 0x0bf9
00000bf2: JUMPI
00000bf3: POP
00000bf4: PUSH1 0x00
00000bf6: DUP2
00000bf7: MLOAD
00000bf8: GT
00000bf9: JUMPDEST
00000bfa: DUP1
00000bfb: ISZERO
00000bfc: PUSH2 0x0c22
00000bff: JUMPI
00000c00: POP
00000c01: DUP1
00000c02: DUP1
00000c03: MLOAD
00000c04: SWAP1
00000c05: PUSH1 0x20
00000c07: ADD
00000c08: KECCAK256
00000c09: DUP7
00000c0a: DUP7
00000c0b: PUSH1 0x40
00000c0d: MLOAD
00000c0e: PUSH2 0x0c18
00000c11: SWAP3
00000c12: SWAP2
00000c13: SWAP1
00000c14: PUSH2 0x4427
00000c17: JUMP
00000c18: JUMPDEST
00000c19: PUSH1 0x40
00000c1b: MLOAD
00000c1c: DUP1
00000c1d: SWAP2
00000c1e: SUB
00000c1f: SWAP1
00000c20: KECCAK256
00000c21: EQ
00000c22: JUMPDEST
00000c23: PUSH2 0x0c61
00000c26: JUMPI
00000c27: PUSH1 0x40
00000c29: MLOAD
00000c2a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c4b: DUP2
00000c4c: MSTORE
00000c4d: PUSH1 0x04
00000c4f: ADD
00000c50: PUSH2 0x0c58
00000c53: SWAP1
00000c54: PUSH2 0x44b2
00000c57: JUMP
00000c58: JUMPDEST
00000c59: PUSH1 0x40
00000c5b: MLOAD
00000c5c: DUP1
00000c5d: SWAP2
00000c5e: SUB
00000c5f: SWAP1
00000c60: REVERT
00000c61: JUMPDEST
00000c62: PUSH2 0x0cf5
00000c65: DUP8
00000c66: DUP8
00000c67: DUP8
00000c68: DUP1
00000c69: DUP1
00000c6a: PUSH1 0x1f
00000c6c: ADD
00000c6d: PUSH1 0x20
00000c6f: DUP1
00000c70: SWAP2
00000c71: DIV
00000c72: MUL
00000c73: PUSH1 0x20
00000c75: ADD
00000c76: PUSH1 0x40
00000c78: MLOAD
00000c79: SWAP1
00000c7a: DUP2
00000c7b: ADD
00000c7c: PUSH1 0x40
00000c7e: MSTORE
00000c7f: DUP1
00000c80: SWAP4
00000c81: SWAP3
00000c82: SWAP2
00000c83: SWAP1
00000c84: DUP2
00000c85: DUP2
00000c86: MSTORE
00000c87: PUSH1 0x20
00000c89: ADD
00000c8a: DUP4
00000c8b: DUP4
00000c8c: DUP1
00000c8d: DUP3
00000c8e: DUP5
00000c8f: CALLDATACOPY
00000c90: PUSH1 0x00
00000c92: DUP2
00000c93: DUP5
00000c94: ADD
00000c95: MSTORE
00000c96: PUSH1 0x1f
00000c98: NOT
00000c99: PUSH1 0x1f
00000c9b: DUP3
00000c9c: ADD
00000c9d: AND
00000c9e: SWAP1
00000c9f: POP
00000ca0: DUP1
00000ca1: DUP4
00000ca2: ADD
00000ca3: SWAP3
00000ca4: POP
00000ca5: POP
00000ca6: POP
00000ca7: POP
00000ca8: POP
00000ca9: POP
00000caa: POP
00000cab: DUP7
00000cac: DUP7
00000cad: DUP7
00000cae: DUP1
00000caf: DUP1
00000cb0: PUSH1 0x1f
00000cb2: ADD
00000cb3: PUSH1 0x20
00000cb5: DUP1
00000cb6: SWAP2
00000cb7: DIV
00000cb8: MUL
00000cb9: PUSH1 0x20
00000cbb: ADD
00000cbc: PUSH1 0x40
00000cbe: MLOAD
00000cbf: SWAP1
00000cc0: DUP2
00000cc1: ADD
00000cc2: PUSH1 0x40
00000cc4: MSTORE
00000cc5: DUP1
00000cc6: SWAP4
00000cc7: SWAP3
00000cc8: SWAP2
00000cc9: SWAP1
00000cca: DUP2
00000ccb: DUP2
00000ccc: MSTORE
00000ccd: PUSH1 0x20
00000ccf: ADD
00000cd0: DUP4
00000cd1: DUP4
00000cd2: DUP1
00000cd3: DUP3
00000cd4: DUP5
00000cd5: CALLDATACOPY
00000cd6: PUSH1 0x00
00000cd8: DUP2
00000cd9: DUP5
00000cda: ADD
00000cdb: MSTORE
00000cdc: PUSH1 0x1f
00000cde: NOT
00000cdf: PUSH1 0x1f
00000ce1: DUP3
00000ce2: ADD
00000ce3: AND
00000ce4: SWAP1
00000ce5: POP
00000ce6: DUP1
00000ce7: DUP4
00000ce8: ADD
00000ce9: SWAP3
00000cea: POP
00000ceb: POP
00000cec: POP
00000ced: POP
00000cee: POP
00000cef: POP
00000cf0: POP
00000cf1: PUSH2 0x22e7
00000cf4: JUMP
00000cf5: JUMPDEST
00000cf6: POP
00000cf7: POP
00000cf8: POP
00000cf9: POP
00000cfa: POP
00000cfb: POP
00000cfc: POP
00000cfd: JUMP
00000cfe: JUMPDEST
00000cff: PUSH1 0x00
00000d01: DUP1
00000d02: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000d1f: NOT
00000d20: AND
00000d21: DUP3
00000d22: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000d3f: NOT
00000d40: AND
00000d41: EQ
00000d42: DUP1
00000d43: PUSH2 0x0da9
00000d46: JUMPI
00000d47: POP
00000d48: PUSH32 0x36372b0700000000000000000000000000000000000000000000000000000000
00000d69: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000d86: NOT
00000d87: AND
00000d88: DUP3
00000d89: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000da6: NOT
00000da7: AND
00000da8: EQ
00000da9: JUMPDEST
00000daa: DUP1
00000dab: PUSH2 0x0db9
00000dae: JUMPI
00000daf: POP
00000db0: PUSH2 0x0db8
00000db3: DUP3
00000db4: PUSH2 0x244c
00000db7: JUMP
00000db8: JUMPDEST
00000db9: JUMPDEST
00000dba: SWAP1
00000dbb: POP
00000dbc: SWAP2
00000dbd: SWAP1
00000dbe: POP
00000dbf: JUMP
00000dc0: JUMPDEST
00000dc1: PUSH1 0x60
00000dc3: PUSH1 0x09
00000dc5: DUP1
00000dc6: SLOAD
00000dc7: PUSH2 0x0dcf
00000dca: SWAP1
00000dcb: PUSH2 0x43c6
00000dce: JUMP
00000dcf: JUMPDEST
00000dd0: DUP1
00000dd1: PUSH1 0x1f
00000dd3: ADD
00000dd4: PUSH1 0x20
00000dd6: DUP1
00000dd7: SWAP2
00000dd8: DIV
00000dd9: MUL
00000dda: PUSH1 0x20
00000ddc: ADD
00000ddd: PUSH1 0x40
00000ddf: MLOAD
00000de0: SWAP1
00000de1: DUP2
00000de2: ADD
00000de3: PUSH1 0x40
00000de5: MSTORE
00000de6: DUP1
00000de7: SWAP3
00000de8: SWAP2
00000de9: SWAP1
00000dea: DUP2
00000deb: DUP2
00000dec: MSTORE
00000ded: PUSH1 0x20
00000def: ADD
00000df0: DUP3
00000df1: DUP1
00000df2: SLOAD
00000df3: PUSH2 0x0dfb
00000df6: SWAP1
00000df7: PUSH2 0x43c6
00000dfa: JUMP
00000dfb: JUMPDEST
00000dfc: DUP1
00000dfd: ISZERO
00000dfe: PUSH2 0x0e48
00000e01: JUMPI
00000e02: DUP1
00000e03: PUSH1 0x1f
00000e05: LT
00000e06: PUSH2 0x0e1d
00000e09: JUMPI
00000e0a: PUSH2 0x0100
00000e0d: DUP1
00000e0e: DUP4
00000e0f: SLOAD
00000e10: DIV
00000e11: MUL
00000e12: DUP4
00000e13: MSTORE
00000e14: SWAP2
00000e15: PUSH1 0x20
00000e17: ADD
00000e18: SWAP2
00000e19: PUSH2 0x0e48
00000e1c: JUMP
00000e1d: JUMPDEST
00000e1e: DUP3
00000e1f: ADD
00000e20: SWAP2
00000e21: SWAP1
00000e22: PUSH1 0x00
00000e24: MSTORE
00000e25: PUSH1 0x20
00000e27: PUSH1 0x00
00000e29: KECCAK256
00000e2a: SWAP1
00000e2b: JUMPDEST
00000e2c: DUP2
00000e2d: SLOAD
00000e2e: DUP2
00000e2f: MSTORE
00000e30: SWAP1
00000e31: PUSH1 0x01
00000e33: ADD
00000e34: SWAP1
00000e35: PUSH1 0x20
00000e37: ADD
00000e38: DUP1
00000e39: DUP4
00000e3a: GT
00000e3b: PUSH2 0x0e2b
00000e3e: JUMPI
00000e3f: DUP3
00000e40: SWAP1
00000e41: SUB
00000e42: PUSH1 0x1f
00000e44: AND
00000e45: DUP3
00000e46: ADD
00000e47: SWAP2
00000e48: JUMPDEST
00000e49: POP
00000e4a: POP
00000e4b: POP
00000e4c: POP
00000e4d: POP
00000e4e: SWAP1
00000e4f: POP
00000e50: SWAP1
00000e51: JUMP
00000e52: JUMPDEST
00000e53: PUSH2 0x0e5a
00000e56: PUSH2 0x24c6
00000e59: JUMP
00000e5a: JUMPDEST
00000e5b: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00000e7c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e91: AND
00000e92: PUSH4 0x07e0db17
00000e97: DUP3
00000e98: PUSH1 0x40
00000e9a: MLOAD
00000e9b: DUP3
00000e9c: PUSH4 0xffffffff
00000ea1: AND
00000ea2: PUSH1 0xe0
00000ea4: SHL
00000ea5: DUP2
00000ea6: MSTORE
00000ea7: PUSH1 0x04
00000ea9: ADD
00000eaa: PUSH2 0x0eb3
00000ead: SWAP2
00000eae: SWAP1
00000eaf: PUSH2 0x3ce6
00000eb2: JUMP
00000eb3: JUMPDEST
00000eb4: PUSH1 0x00
00000eb6: PUSH1 0x40
00000eb8: MLOAD
00000eb9: DUP1
00000eba: DUP4
00000ebb: SUB
00000ebc: DUP2
00000ebd: PUSH1 0x00
00000ebf: DUP8
00000ec0: DUP1
00000ec1: EXTCODESIZE
00000ec2: ISZERO
00000ec3: DUP1
00000ec4: ISZERO
00000ec5: PUSH2 0x0ecd
00000ec8: JUMPI
00000ec9: PUSH1 0x00
00000ecb: DUP1
00000ecc: REVERT
00000ecd: JUMPDEST
00000ece: POP
00000ecf: GAS
00000ed0: CALL
00000ed1: ISZERO
00000ed2: DUP1
00000ed3: ISZERO
00000ed4: PUSH2 0x0ee1
00000ed7: JUMPI
00000ed8: RETURNDATASIZE
00000ed9: PUSH1 0x00
00000edb: DUP1
00000edc: RETURNDATACOPY
00000edd: RETURNDATASIZE
00000ede: PUSH1 0x00
00000ee0: REVERT
00000ee1: JUMPDEST
00000ee2: POP
00000ee3: POP
00000ee4: POP
00000ee5: POP
00000ee6: POP
00000ee7: JUMP
00000ee8: JUMPDEST
00000ee9: PUSH1 0x00
00000eeb: DUP1
00000eec: PUSH2 0x0ef3
00000eef: PUSH2 0x22df
00000ef2: JUMP
00000ef3: JUMPDEST
00000ef4: SWAP1
00000ef5: POP
00000ef6: PUSH2 0x0f00
00000ef9: DUP2
00000efa: DUP6
00000efb: DUP6
00000efc: PUSH2 0x2544
00000eff: JUMP
00000f00: JUMPDEST
00000f01: PUSH1 0x01
00000f03: SWAP2
00000f04: POP
00000f05: POP
00000f06: SWAP3
00000f07: SWAP2
00000f08: POP
00000f09: POP
00000f0a: JUMP
00000f0b: JUMPDEST
00000f0c: PUSH2 0x0f13
00000f0f: PUSH2 0x24c6
00000f12: JUMP
00000f13: JUMPDEST
00000f14: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00000f35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f4a: AND
00000f4b: PUSH4 0x10ddb137
00000f50: DUP3
00000f51: PUSH1 0x40
00000f53: MLOAD
00000f54: DUP3
00000f55: PUSH4 0xffffffff
00000f5a: AND
00000f5b: PUSH1 0xe0
00000f5d: SHL
00000f5e: DUP2
00000f5f: MSTORE
00000f60: PUSH1 0x04
00000f62: ADD
00000f63: PUSH2 0x0f6c
00000f66: SWAP2
00000f67: SWAP1
00000f68: PUSH2 0x3ce6
00000f6b: JUMP
00000f6c: JUMPDEST
00000f6d: PUSH1 0x00
00000f6f: PUSH1 0x40
00000f71: MLOAD
00000f72: DUP1
00000f73: DUP4
00000f74: SUB
00000f75: DUP2
00000f76: PUSH1 0x00
00000f78: DUP8
00000f79: DUP1
00000f7a: EXTCODESIZE
00000f7b: ISZERO
00000f7c: DUP1
00000f7d: ISZERO
00000f7e: PUSH2 0x0f86
00000f81: JUMPI
00000f82: PUSH1 0x00
00000f84: DUP1
00000f85: REVERT
00000f86: JUMPDEST
00000f87: POP
00000f88: GAS
00000f89: CALL
00000f8a: ISZERO
00000f8b: DUP1
00000f8c: ISZERO
00000f8d: PUSH2 0x0f9a
00000f90: JUMPI
00000f91: RETURNDATASIZE
00000f92: PUSH1 0x00
00000f94: DUP1
00000f95: RETURNDATACOPY
00000f96: RETURNDATASIZE
00000f97: PUSH1 0x00
00000f99: REVERT
00000f9a: JUMPDEST
00000f9b: POP
00000f9c: POP
00000f9d: POP
00000f9e: POP
00000f9f: POP
00000fa0: JUMP
00000fa1: JUMPDEST
00000fa2: PUSH1 0x00
00000fa4: PUSH1 0x08
00000fa6: SLOAD
00000fa7: SWAP1
00000fa8: POP
00000fa9: SWAP1
00000faa: JUMP
00000fab: JUMPDEST
00000fac: PUSH1 0x00
00000fae: DUP1
00000faf: PUSH2 0x0fb6
00000fb2: PUSH2 0x22df
00000fb5: JUMP
00000fb6: JUMPDEST
00000fb7: SWAP1
00000fb8: POP
00000fb9: PUSH2 0x0fc3
00000fbc: DUP6
00000fbd: DUP3
00000fbe: DUP6
00000fbf: PUSH2 0x270d
00000fc2: JUMP
00000fc3: JUMPDEST
00000fc4: PUSH2 0x0fce
00000fc7: DUP6
00000fc8: DUP6
00000fc9: DUP6
00000fca: PUSH2 0x2799
00000fcd: JUMP
00000fce: JUMPDEST
00000fcf: PUSH1 0x01
00000fd1: SWAP2
00000fd2: POP
00000fd3: POP
00000fd4: SWAP4
00000fd5: SWAP3
00000fd6: POP
00000fd7: POP
00000fd8: POP
00000fd9: JUMP
00000fda: JUMPDEST
00000fdb: PUSH1 0x00
00000fdd: DUP1
00000fde: PUSH1 0x00
00000fe0: DUP1
00000fe1: CALLER
00000fe2: PUSH1 0x40
00000fe4: MLOAD
00000fe5: PUSH1 0x20
00000fe7: ADD
00000fe8: PUSH2 0x0ff1
00000feb: SWAP2
00000fec: SWAP1
00000fed: PUSH2 0x451a
00000ff0: JUMP
00000ff1: JUMPDEST
00000ff2: PUSH1 0x40
00000ff4: MLOAD
00000ff5: PUSH1 0x20
00000ff7: DUP2
00000ff8: DUP4
00000ff9: SUB
00000ffa: SUB
00000ffb: DUP2
00000ffc: MSTORE
00000ffd: SWAP1
00000ffe: PUSH1 0x40
00001000: MSTORE
00001001: DUP11
00001002: DUP11
00001003: DUP11
00001004: PUSH1 0x40
00001006: MLOAD
00001007: PUSH1 0x20
00001009: ADD
0000100a: PUSH2 0x1017
0000100d: SWAP6
0000100e: SWAP5
0000100f: SWAP4
00001010: SWAP3
00001011: SWAP2
00001012: SWAP1
00001013: PUSH2 0x4562
00001016: JUMP
00001017: JUMPDEST
00001018: PUSH1 0x40
0000101a: MLOAD
0000101b: PUSH1 0x20
0000101d: DUP2
0000101e: DUP4
0000101f: SUB
00001020: SUB
00001021: DUP2
00001022: MSTORE
00001023: SWAP1
00001024: PUSH1 0x40
00001026: MSTORE
00001027: SWAP1
00001028: POP
00001029: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
0000104a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000105f: AND
00001060: PUSH4 0x40a7bb10
00001065: DUP12
00001066: ADDRESS
00001067: DUP5
00001068: DUP11
00001069: DUP11
0000106a: DUP11
0000106b: PUSH1 0x40
0000106d: MLOAD
0000106e: DUP8
0000106f: PUSH4 0xffffffff
00001074: AND
00001075: PUSH1 0xe0
00001077: SHL
00001078: DUP2
00001079: MSTORE
0000107a: PUSH1 0x04
0000107c: ADD
0000107d: PUSH2 0x108b
00001080: SWAP7
00001081: SWAP6
00001082: SWAP5
00001083: SWAP4
00001084: SWAP3
00001085: SWAP2
00001086: SWAP1
00001087: PUSH2 0x45b7
0000108a: JUMP
0000108b: JUMPDEST
0000108c: PUSH1 0x40
0000108e: DUP1
0000108f: MLOAD
00001090: DUP1
00001091: DUP4
00001092: SUB
00001093: DUP2
00001094: DUP7
00001095: GAS
00001096: STATICCALL
00001097: ISZERO
00001098: DUP1
00001099: ISZERO
0000109a: PUSH2 0x10a7
0000109d: JUMPI
0000109e: RETURNDATASIZE
0000109f: PUSH1 0x00
000010a1: DUP1
000010a2: RETURNDATACOPY
000010a3: RETURNDATASIZE
000010a4: PUSH1 0x00
000010a6: REVERT
000010a7: JUMPDEST
000010a8: POP
000010a9: POP
000010aa: POP
000010ab: POP
000010ac: PUSH1 0x40
000010ae: MLOAD
000010af: RETURNDATASIZE
000010b0: PUSH1 0x1f
000010b2: NOT
000010b3: PUSH1 0x1f
000010b5: DUP3
000010b6: ADD
000010b7: AND
000010b8: DUP3
000010b9: ADD
000010ba: DUP1
000010bb: PUSH1 0x40
000010bd: MSTORE
000010be: POP
000010bf: DUP2
000010c0: ADD
000010c1: SWAP1
000010c2: PUSH2 0x10cb
000010c5: SWAP2
000010c6: SWAP1
000010c7: PUSH2 0x462f
000010ca: JUMP
000010cb: JUMPDEST
000010cc: SWAP3
000010cd: POP
000010ce: SWAP3
000010cf: POP
000010d0: POP
000010d1: SWAP8
000010d2: POP
000010d3: SWAP8
000010d4: SWAP6
000010d5: POP
000010d6: POP
000010d7: POP
000010d8: POP
000010d9: POP
000010da: POP
000010db: JUMP
000010dc: JUMPDEST
000010dd: PUSH1 0x02
000010df: PUSH1 0x0b
000010e1: SLOAD
000010e2: SUB
000010e3: PUSH2 0x1121
000010e6: JUMPI
000010e7: PUSH1 0x40
000010e9: MLOAD
000010ea: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000110b: DUP2
0000110c: MSTORE
0000110d: PUSH1 0x04
0000110f: ADD
00001110: PUSH2 0x1118
00001113: SWAP1
00001114: PUSH2 0x46bb
00001117: JUMP
00001118: JUMPDEST
00001119: PUSH1 0x40
0000111b: MLOAD
0000111c: DUP1
0000111d: SWAP2
0000111e: SUB
0000111f: SWAP1
00001120: REVERT
00001121: JUMPDEST
00001122: PUSH1 0x02
00001124: PUSH1 0x0b
00001126: DUP2
00001127: SWAP1
00001128: SSTORE
00001129: POP
0000112a: DUP1
0000112b: PUSH2 0x1133
0000112e: CALLER
0000112f: PUSH2 0x1639
00001132: JUMP
00001133: JUMPDEST
00001134: LT
00001135: ISZERO
00001136: PUSH2 0x1174
00001139: JUMPI
0000113a: PUSH1 0x40
0000113c: MLOAD
0000113d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000115e: DUP2
0000115f: MSTORE
00001160: PUSH1 0x04
00001162: ADD
00001163: PUSH2 0x116b
00001166: SWAP1
00001167: PUSH2 0x4727
0000116a: JUMP
0000116b: JUMPDEST
0000116c: PUSH1 0x40
0000116e: MLOAD
0000116f: DUP1
00001170: SWAP2
00001171: SUB
00001172: SWAP1
00001173: REVERT
00001174: JUMPDEST
00001175: PUSH2 0x117e
00001178: CALLER
00001179: DUP3
0000117a: PUSH2 0x2a1b
0000117d: JUMP
0000117e: JUMPDEST
0000117f: PUSH1 0x00
00001181: CALLER
00001182: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001197: AND
00001198: DUP3
00001199: PUSH1 0x40
0000119b: MLOAD
0000119c: PUSH2 0x11a4
0000119f: SWAP1
000011a0: PUSH2 0x476d
000011a3: JUMP
000011a4: JUMPDEST
000011a5: PUSH1 0x00
000011a7: PUSH1 0x40
000011a9: MLOAD
000011aa: DUP1
000011ab: DUP4
000011ac: SUB
000011ad: DUP2
000011ae: DUP6
000011af: DUP8
000011b0: GAS
000011b1: CALL
000011b2: SWAP3
000011b3: POP
000011b4: POP
000011b5: POP
000011b6: RETURNDATASIZE
000011b7: DUP1
000011b8: PUSH1 0x00
000011ba: DUP2
000011bb: EQ
000011bc: PUSH2 0x11e1
000011bf: JUMPI
000011c0: PUSH1 0x40
000011c2: MLOAD
000011c3: SWAP2
000011c4: POP
000011c5: PUSH1 0x1f
000011c7: NOT
000011c8: PUSH1 0x3f
000011ca: RETURNDATASIZE
000011cb: ADD
000011cc: AND
000011cd: DUP3
000011ce: ADD
000011cf: PUSH1 0x40
000011d1: MSTORE
000011d2: RETURNDATASIZE
000011d3: DUP3
000011d4: MSTORE
000011d5: RETURNDATASIZE
000011d6: PUSH1 0x00
000011d8: PUSH1 0x20
000011da: DUP5
000011db: ADD
000011dc: RETURNDATACOPY
000011dd: PUSH2 0x11e6
000011e0: JUMP
000011e1: JUMPDEST
000011e2: PUSH1 0x60
000011e4: SWAP2
000011e5: POP
000011e6: JUMPDEST
000011e7: POP
000011e8: POP
000011e9: SWAP1
000011ea: POP
000011eb: DUP1
000011ec: PUSH2 0x122a
000011ef: JUMPI
000011f0: PUSH1 0x40
000011f2: MLOAD
000011f3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001214: DUP2
00001215: MSTORE
00001216: PUSH1 0x04
00001218: ADD
00001219: PUSH2 0x1221
0000121c: SWAP1
0000121d: PUSH2 0x47ce
00001220: JUMP
00001221: JUMPDEST
00001222: PUSH1 0x40
00001224: MLOAD
00001225: DUP1
00001226: SWAP2
00001227: SUB
00001228: SWAP1
00001229: REVERT
0000122a: JUMPDEST
0000122b: CALLER
0000122c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001241: AND
00001242: PUSH32 0x7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65
00001263: DUP4
00001264: PUSH1 0x40
00001266: MLOAD
00001267: PUSH2 0x1270
0000126a: SWAP2
0000126b: SWAP1
0000126c: PUSH2 0x3a94
0000126f: JUMP
00001270: JUMPDEST
00001271: PUSH1 0x40
00001273: MLOAD
00001274: DUP1
00001275: SWAP2
00001276: SUB
00001277: SWAP1
00001278: LOG2
00001279: POP
0000127a: PUSH1 0x01
0000127c: PUSH1 0x0b
0000127e: DUP2
0000127f: SWAP1
00001280: SSTORE
00001281: POP
00001282: POP
00001283: JUMP
00001284: JUMPDEST
00001285: PUSH1 0x00
00001287: PUSH1 0x12
00001289: SWAP1
0000128a: POP
0000128b: SWAP1
0000128c: JUMP
0000128d: JUMPDEST
0000128e: PUSH1 0x00
00001290: DUP1
00001291: PUSH2 0x1298
00001294: PUSH2 0x22df
00001297: JUMP
00001298: JUMPDEST
00001299: SWAP1
0000129a: POP
0000129b: PUSH2 0x12b9
0000129e: DUP2
0000129f: DUP6
000012a0: DUP6
000012a1: PUSH2 0x12aa
000012a4: DUP6
000012a5: DUP10
000012a6: PUSH2 0x1e1e
000012a9: JUMP
000012aa: JUMPDEST
000012ab: PUSH2 0x12b4
000012ae: SWAP2
000012af: SWAP1
000012b0: PUSH2 0x481d
000012b3: JUMP
000012b4: JUMPDEST
000012b5: PUSH2 0x2544
000012b8: JUMP
000012b9: JUMPDEST
000012ba: PUSH1 0x01
000012bc: SWAP2
000012bd: POP
000012be: POP
000012bf: SWAP3
000012c0: SWAP2
000012c1: POP
000012c2: POP
000012c3: JUMP
000012c4: JUMPDEST
000012c5: PUSH1 0x00
000012c7: DUP1
000012c8: PUSH1 0x01
000012ca: PUSH1 0x00
000012cc: DUP7
000012cd: PUSH2 0xffff
000012d0: AND
000012d1: PUSH2 0xffff
000012d4: AND
000012d5: DUP2
000012d6: MSTORE
000012d7: PUSH1 0x20
000012d9: ADD
000012da: SWAP1
000012db: DUP2
000012dc: MSTORE
000012dd: PUSH1 0x20
000012df: ADD
000012e0: PUSH1 0x00
000012e2: KECCAK256
000012e3: DUP1
000012e4: SLOAD
000012e5: PUSH2 0x12ed
000012e8: SWAP1
000012e9: PUSH2 0x43c6
000012ec: JUMP
000012ed: JUMPDEST
000012ee: DUP1
000012ef: PUSH1 0x1f
000012f1: ADD
000012f2: PUSH1 0x20
000012f4: DUP1
000012f5: SWAP2
000012f6: DIV
000012f7: MUL
000012f8: PUSH1 0x20
000012fa: ADD
000012fb: PUSH1 0x40
000012fd: MLOAD
000012fe: SWAP1
000012ff: DUP2
00001300: ADD
00001301: PUSH1 0x40
00001303: MSTORE
00001304: DUP1
00001305: SWAP3
00001306: SWAP2
00001307: SWAP1
00001308: DUP2
00001309: DUP2
0000130a: MSTORE
0000130b: PUSH1 0x20
0000130d: ADD
0000130e: DUP3
0000130f: DUP1
00001310: SLOAD
00001311: PUSH2 0x1319
00001314: SWAP1
00001315: PUSH2 0x43c6
00001318: JUMP
00001319: JUMPDEST
0000131a: DUP1
0000131b: ISZERO
0000131c: PUSH2 0x1366
0000131f: JUMPI
00001320: DUP1
00001321: PUSH1 0x1f
00001323: LT
00001324: PUSH2 0x133b
00001327: JUMPI
00001328: PUSH2 0x0100
0000132b: DUP1
0000132c: DUP4
0000132d: SLOAD
0000132e: DIV
0000132f: MUL
00001330: DUP4
00001331: MSTORE
00001332: SWAP2
00001333: PUSH1 0x20
00001335: ADD
00001336: SWAP2
00001337: PUSH2 0x1366
0000133a: JUMP
0000133b: JUMPDEST
0000133c: DUP3
0000133d: ADD
0000133e: SWAP2
0000133f: SWAP1
00001340: PUSH1 0x00
00001342: MSTORE
00001343: PUSH1 0x20
00001345: PUSH1 0x00
00001347: KECCAK256
00001348: SWAP1
00001349: JUMPDEST
0000134a: DUP2
0000134b: SLOAD
0000134c: DUP2
0000134d: MSTORE
0000134e: SWAP1
0000134f: PUSH1 0x01
00001351: ADD
00001352: SWAP1
00001353: PUSH1 0x20
00001355: ADD
00001356: DUP1
00001357: DUP4
00001358: GT
00001359: PUSH2 0x1349
0000135c: JUMPI
0000135d: DUP3
0000135e: SWAP1
0000135f: SUB
00001360: PUSH1 0x1f
00001362: AND
00001363: DUP3
00001364: ADD
00001365: SWAP2
00001366: JUMPDEST
00001367: POP
00001368: POP
00001369: POP
0000136a: POP
0000136b: POP
0000136c: SWAP1
0000136d: POP
0000136e: DUP4
0000136f: DUP4
00001370: PUSH1 0x40
00001372: MLOAD
00001373: PUSH2 0x137d
00001376: SWAP3
00001377: SWAP2
00001378: SWAP1
00001379: PUSH2 0x4427
0000137c: JUMP
0000137d: JUMPDEST
0000137e: PUSH1 0x40
00001380: MLOAD
00001381: DUP1
00001382: SWAP2
00001383: SUB
00001384: SWAP1
00001385: KECCAK256
00001386: DUP2
00001387: DUP1
00001388: MLOAD
00001389: SWAP1
0000138a: PUSH1 0x20
0000138c: ADD
0000138d: KECCAK256
0000138e: EQ
0000138f: SWAP2
00001390: POP
00001391: POP
00001392: SWAP4
00001393: SWAP3
00001394: POP
00001395: POP
00001396: POP
00001397: JUMP
00001398: JUMPDEST
00001399: PUSH2 0x13a0
0000139c: PUSH2 0x24c6
0000139f: JUMP
000013a0: JUMPDEST
000013a1: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
000013c2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000013d7: AND
000013d8: PUSH4 0x42d65a8d
000013dd: DUP5
000013de: DUP5
000013df: DUP5
000013e0: PUSH1 0x40
000013e2: MLOAD
000013e3: DUP5
000013e4: PUSH4 0xffffffff
000013e9: AND
000013ea: PUSH1 0xe0
000013ec: SHL
000013ed: DUP2
000013ee: MSTORE
000013ef: PUSH1 0x04
000013f1: ADD
000013f2: PUSH2 0x13fd
000013f5: SWAP4
000013f6: SWAP3
000013f7: SWAP2
000013f8: SWAP1
000013f9: PUSH2 0x4851
000013fc: JUMP
000013fd: JUMPDEST
000013fe: PUSH1 0x00
00001400: PUSH1 0x40
00001402: MLOAD
00001403: DUP1
00001404: DUP4
00001405: SUB
00001406: DUP2
00001407: PUSH1 0x00
00001409: DUP8
0000140a: DUP1
0000140b: EXTCODESIZE
0000140c: ISZERO
0000140d: DUP1
0000140e: ISZERO
0000140f: PUSH2 0x1417
00001412: JUMPI
00001413: PUSH1 0x00
00001415: DUP1
00001416: REVERT
00001417: JUMPDEST
00001418: POP
00001419: GAS
0000141a: CALL
0000141b: ISZERO
0000141c: DUP1
0000141d: ISZERO
0000141e: PUSH2 0x142b
00001421: JUMPI
00001422: RETURNDATASIZE
00001423: PUSH1 0x00
00001425: DUP1
00001426: RETURNDATACOPY
00001427: RETURNDATASIZE
00001428: PUSH1 0x00
0000142a: REVERT
0000142b: JUMPDEST
0000142c: POP
0000142d: POP
0000142e: POP
0000142f: POP
00001430: POP
00001431: POP
00001432: POP
00001433: JUMP
00001434: JUMPDEST
00001435: PUSH1 0x00
00001437: DUP2
00001438: JUMP
00001439: JUMPDEST
0000143a: PUSH1 0x00
0000143c: DUP2
0000143d: JUMP
0000143e: JUMPDEST
0000143f: PUSH2 0x14d5
00001442: DUP10
00001443: DUP10
00001444: DUP10
00001445: DUP10
00001446: DUP1
00001447: DUP1
00001448: PUSH1 0x1f
0000144a: ADD
0000144b: PUSH1 0x20
0000144d: DUP1
0000144e: SWAP2
0000144f: DIV
00001450: MUL
00001451: PUSH1 0x20
00001453: ADD
00001454: PUSH1 0x40
00001456: MLOAD
00001457: SWAP1
00001458: DUP2
00001459: ADD
0000145a: PUSH1 0x40
0000145c: MSTORE
0000145d: DUP1
0000145e: SWAP4
0000145f: SWAP3
00001460: SWAP2
00001461: SWAP1
00001462: DUP2
00001463: DUP2
00001464: MSTORE
00001465: PUSH1 0x20
00001467: ADD
00001468: DUP4
00001469: DUP4
0000146a: DUP1
0000146b: DUP3
0000146c: DUP5
0000146d: CALLDATACOPY
0000146e: PUSH1 0x00
00001470: DUP2
00001471: DUP5
00001472: ADD
00001473: MSTORE
00001474: PUSH1 0x1f
00001476: NOT
00001477: PUSH1 0x1f
00001479: DUP3
0000147a: ADD
0000147b: AND
0000147c: SWAP1
0000147d: POP
0000147e: DUP1
0000147f: DUP4
00001480: ADD
00001481: SWAP3
00001482: POP
00001483: POP
00001484: POP
00001485: POP
00001486: POP
00001487: POP
00001488: POP
00001489: DUP9
0000148a: DUP9
0000148b: DUP9
0000148c: DUP9
0000148d: DUP9
0000148e: DUP1
0000148f: DUP1
00001490: PUSH1 0x1f
00001492: ADD
00001493: PUSH1 0x20
00001495: DUP1
00001496: SWAP2
00001497: DIV
00001498: MUL
00001499: PUSH1 0x20
0000149b: ADD
0000149c: PUSH1 0x40
0000149e: MLOAD
0000149f: SWAP1
000014a0: DUP2
000014a1: ADD
000014a2: PUSH1 0x40
000014a4: MSTORE
000014a5: DUP1
000014a6: SWAP4
000014a7: SWAP3
000014a8: SWAP2
000014a9: SWAP1
000014aa: DUP2
000014ab: DUP2
000014ac: MSTORE
000014ad: PUSH1 0x20
000014af: ADD
000014b0: DUP4
000014b1: DUP4
000014b2: DUP1
000014b3: DUP3
000014b4: DUP5
000014b5: CALLDATACOPY
000014b6: PUSH1 0x00
000014b8: DUP2
000014b9: DUP5
000014ba: ADD
000014bb: MSTORE
000014bc: PUSH1 0x1f
000014be: NOT
000014bf: PUSH1 0x1f
000014c1: DUP3
000014c2: ADD
000014c3: AND
000014c4: SWAP1
000014c5: POP
000014c6: DUP1
000014c7: DUP4
000014c8: ADD
000014c9: SWAP3
000014ca: POP
000014cb: POP
000014cc: POP
000014cd: POP
000014ce: POP
000014cf: POP
000014d0: POP
000014d1: PUSH2 0x2bf3
000014d4: JUMP
000014d5: JUMPDEST
000014d6: POP
000014d7: POP
000014d8: POP
000014d9: POP
000014da: POP
000014db: POP
000014dc: POP
000014dd: POP
000014de: POP
000014df: JUMP
000014e0: JUMPDEST
000014e1: PUSH1 0x04
000014e3: PUSH1 0x20
000014e5: MSTORE
000014e6: DUP3
000014e7: PUSH1 0x00
000014e9: MSTORE
000014ea: PUSH1 0x40
000014ec: PUSH1 0x00
000014ee: KECCAK256
000014ef: DUP3
000014f0: DUP1
000014f1: MLOAD
000014f2: PUSH1 0x20
000014f4: DUP2
000014f5: ADD
000014f6: DUP3
000014f7: ADD
000014f8: DUP1
000014f9: MLOAD
000014fa: DUP5
000014fb: DUP3
000014fc: MSTORE
000014fd: PUSH1 0x20
000014ff: DUP4
00001500: ADD
00001501: PUSH1 0x20
00001503: DUP6
00001504: ADD
00001505: KECCAK256
00001506: DUP2
00001507: DUP4
00001508: MSTORE
00001509: DUP1
0000150a: SWAP6
0000150b: POP
0000150c: POP
0000150d: POP
0000150e: POP
0000150f: POP
00001510: POP
00001511: PUSH1 0x20
00001513: MSTORE
00001514: DUP1
00001515: PUSH1 0x00
00001517: MSTORE
00001518: PUSH1 0x40
0000151a: PUSH1 0x00
0000151c: KECCAK256
0000151d: PUSH1 0x00
0000151f: SWAP3
00001520: POP
00001521: SWAP3
00001522: POP
00001523: POP
00001524: POP
00001525: SLOAD
00001526: DUP2
00001527: JUMP
00001528: JUMPDEST
00001529: ADDRESS
0000152a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000153f: AND
00001540: PUSH2 0x1547
00001543: PUSH2 0x22df
00001546: JUMP
00001547: JUMPDEST
00001548: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000155d: AND
0000155e: EQ
0000155f: PUSH2 0x159d
00001562: JUMPI
00001563: PUSH1 0x40
00001565: MLOAD
00001566: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001587: DUP2
00001588: MSTORE
00001589: PUSH1 0x04
0000158b: ADD
0000158c: PUSH2 0x1594
0000158f: SWAP1
00001590: PUSH2 0x48f5
00001593: JUMP
00001594: JUMPDEST
00001595: PUSH1 0x40
00001597: MLOAD
00001598: DUP1
00001599: SWAP2
0000159a: SUB
0000159b: SWAP1
0000159c: REVERT
0000159d: JUMPDEST
0000159e: PUSH2 0x1631
000015a1: DUP7
000015a2: DUP7
000015a3: DUP7
000015a4: DUP1
000015a5: DUP1
000015a6: PUSH1 0x1f
000015a8: ADD
000015a9: PUSH1 0x20
000015ab: DUP1
000015ac: SWAP2
000015ad: DIV
000015ae: MUL
000015af: PUSH1 0x20
000015b1: ADD
000015b2: PUSH1 0x40
000015b4: MLOAD
000015b5: SWAP1
000015b6: DUP2
000015b7: ADD
000015b8: PUSH1 0x40
000015ba: MSTORE
000015bb: DUP1
000015bc: SWAP4
000015bd: SWAP3
000015be: SWAP2
000015bf: SWAP1
000015c0: DUP2
000015c1: DUP2
000015c2: MSTORE
000015c3: PUSH1 0x20
000015c5: ADD
000015c6: DUP4
000015c7: DUP4
000015c8: DUP1
000015c9: DUP3
000015ca: DUP5
000015cb: CALLDATACOPY
000015cc: PUSH1 0x00
000015ce: DUP2
000015cf: DUP5
000015d0: ADD
000015d1: MSTORE
000015d2: PUSH1 0x1f
000015d4: NOT
000015d5: PUSH1 0x1f
000015d7: DUP3
000015d8: ADD
000015d9: AND
000015da: SWAP1
000015db: POP
000015dc: DUP1
000015dd: DUP4
000015de: ADD
000015df: SWAP3
000015e0: POP
000015e1: POP
000015e2: POP
000015e3: POP
000015e4: POP
000015e5: POP
000015e6: POP
000015e7: DUP6
000015e8: DUP6
000015e9: DUP6
000015ea: DUP1
000015eb: DUP1
000015ec: PUSH1 0x1f
000015ee: ADD
000015ef: PUSH1 0x20
000015f1: DUP1
000015f2: SWAP2
000015f3: DIV
000015f4: MUL
000015f5: PUSH1 0x20
000015f7: ADD
000015f8: PUSH1 0x40
000015fa: MLOAD
000015fb: SWAP1
000015fc: DUP2
000015fd: ADD
000015fe: PUSH1 0x40
00001600: MSTORE
00001601: DUP1
00001602: SWAP4
00001603: SWAP3
00001604: SWAP2
00001605: SWAP1
00001606: DUP2
00001607: DUP2
00001608: MSTORE
00001609: PUSH1 0x20
0000160b: ADD
0000160c: DUP4
0000160d: DUP4
0000160e: DUP1
0000160f: DUP3
00001610: DUP5
00001611: CALLDATACOPY
00001612: PUSH1 0x00
00001614: DUP2
00001615: DUP5
00001616: ADD
00001617: MSTORE
00001618: PUSH1 0x1f
0000161a: NOT
0000161b: PUSH1 0x1f
0000161d: DUP3
0000161e: ADD
0000161f: AND
00001620: SWAP1
00001621: POP
00001622: DUP1
00001623: DUP4
00001624: ADD
00001625: SWAP3
00001626: POP
00001627: POP
00001628: POP
00001629: POP
0000162a: POP
0000162b: POP
0000162c: POP
0000162d: PUSH2 0x2cd2
00001630: JUMP
00001631: JUMPDEST
00001632: POP
00001633: POP
00001634: POP
00001635: POP
00001636: POP
00001637: POP
00001638: JUMP
00001639: JUMPDEST
0000163a: PUSH1 0x00
0000163c: PUSH1 0x06
0000163e: PUSH1 0x00
00001640: DUP4
00001641: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001656: AND
00001657: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000166c: AND
0000166d: DUP2
0000166e: MSTORE
0000166f: PUSH1 0x20
00001671: ADD
00001672: SWAP1
00001673: DUP2
00001674: MSTORE
00001675: PUSH1 0x20
00001677: ADD
00001678: PUSH1 0x00
0000167a: KECCAK256
0000167b: SLOAD
0000167c: SWAP1
0000167d: POP
0000167e: SWAP2
0000167f: SWAP1
00001680: POP
00001681: JUMP
00001682: JUMPDEST
00001683: PUSH2 0x168a
00001686: PUSH2 0x24c6
00001689: JUMP
0000168a: JUMPDEST
0000168b: PUSH2 0x1694
0000168e: PUSH1 0x00
00001690: PUSH2 0x2d3e
00001693: JUMP
00001694: JUMPDEST
00001695: JUMP
00001696: JUMPDEST
00001697: PUSH1 0x01
00001699: PUSH1 0x20
0000169b: MSTORE
0000169c: DUP1
0000169d: PUSH1 0x00
0000169f: MSTORE
000016a0: PUSH1 0x40
000016a2: PUSH1 0x00
000016a4: KECCAK256
000016a5: PUSH1 0x00
000016a7: SWAP2
000016a8: POP
000016a9: SWAP1
000016aa: POP
000016ab: DUP1
000016ac: SLOAD
000016ad: PUSH2 0x16b5
000016b0: SWAP1
000016b1: PUSH2 0x43c6
000016b4: JUMP
000016b5: JUMPDEST
000016b6: DUP1
000016b7: PUSH1 0x1f
000016b9: ADD
000016ba: PUSH1 0x20
000016bc: DUP1
000016bd: SWAP2
000016be: DIV
000016bf: MUL
000016c0: PUSH1 0x20
000016c2: ADD
000016c3: PUSH1 0x40
000016c5: MLOAD
000016c6: SWAP1
000016c7: DUP2
000016c8: ADD
000016c9: PUSH1 0x40
000016cb: MSTORE
000016cc: DUP1
000016cd: SWAP3
000016ce: SWAP2
000016cf: SWAP1
000016d0: DUP2
000016d1: DUP2
000016d2: MSTORE
000016d3: PUSH1 0x20
000016d5: ADD
000016d6: DUP3
000016d7: DUP1
000016d8: SLOAD
000016d9: PUSH2 0x16e1
000016dc: SWAP1
000016dd: PUSH2 0x43c6
000016e0: JUMP
000016e1: JUMPDEST
000016e2: DUP1
000016e3: ISZERO
000016e4: PUSH2 0x172e
000016e7: JUMPI
000016e8: DUP1
000016e9: PUSH1 0x1f
000016eb: LT
000016ec: PUSH2 0x1703
000016ef: JUMPI
000016f0: PUSH2 0x0100
000016f3: DUP1
000016f4: DUP4
000016f5: SLOAD
000016f6: DIV
000016f7: MUL
000016f8: DUP4
000016f9: MSTORE
000016fa: SWAP2
000016fb: PUSH1 0x20
000016fd: ADD
000016fe: SWAP2
000016ff: PUSH2 0x172e
00001702: JUMP
00001703: JUMPDEST
00001704: DUP3
00001705: ADD
00001706: SWAP2
00001707: SWAP1
00001708: PUSH1 0x00
0000170a: MSTORE
0000170b: PUSH1 0x20
0000170d: PUSH1 0x00
0000170f: KECCAK256
00001710: SWAP1
00001711: JUMPDEST
00001712: DUP2
00001713: SLOAD
00001714: DUP2
00001715: MSTORE
00001716: SWAP1
00001717: PUSH1 0x01
00001719: ADD
0000171a: SWAP1
0000171b: PUSH1 0x20
0000171d: ADD
0000171e: DUP1
0000171f: DUP4
00001720: GT
00001721: PUSH2 0x1711
00001724: JUMPI
00001725: DUP3
00001726: SWAP1
00001727: SUB
00001728: PUSH1 0x1f
0000172a: AND
0000172b: DUP3
0000172c: ADD
0000172d: SWAP2
0000172e: JUMPDEST
0000172f: POP
00001730: POP
00001731: POP
00001732: POP
00001733: POP
00001734: DUP2
00001735: JUMP
00001736: JUMPDEST
00001737: PUSH1 0x02
00001739: PUSH1 0x20
0000173b: MSTORE
0000173c: DUP2
0000173d: PUSH1 0x00
0000173f: MSTORE
00001740: PUSH1 0x40
00001742: PUSH1 0x00
00001744: KECCAK256
00001745: PUSH1 0x20
00001747: MSTORE
00001748: DUP1
00001749: PUSH1 0x00
0000174b: MSTORE
0000174c: PUSH1 0x40
0000174e: PUSH1 0x00
00001750: KECCAK256
00001751: PUSH1 0x00
00001753: SWAP2
00001754: POP
00001755: SWAP2
00001756: POP
00001757: POP
00001758: SLOAD
00001759: DUP2
0000175a: JUMP
0000175b: JUMPDEST
0000175c: PUSH1 0x00
0000175e: DUP1
0000175f: PUSH1 0x00
00001761: SWAP1
00001762: SLOAD
00001763: SWAP1
00001764: PUSH2 0x0100
00001767: EXP
00001768: SWAP1
00001769: DIV
0000176a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000177f: AND
00001780: SWAP1
00001781: POP
00001782: SWAP1
00001783: JUMP
00001784: JUMPDEST
00001785: PUSH1 0x00
00001787: PUSH2 0x178e
0000178a: PUSH2 0x0fa1
0000178d: JUMP
0000178e: JUMPDEST
0000178f: SWAP1
00001790: POP
00001791: SWAP1
00001792: JUMP
00001793: JUMPDEST
00001794: PUSH1 0x03
00001796: PUSH1 0x00
00001798: SWAP1
00001799: SLOAD
0000179a: SWAP1
0000179b: PUSH2 0x0100
0000179e: EXP
0000179f: SWAP1
000017a0: DIV
000017a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017b6: AND
000017b7: DUP2
000017b8: JUMP
000017b9: JUMPDEST
000017ba: PUSH1 0x60
000017bc: PUSH1 0x0a
000017be: DUP1
000017bf: SLOAD
000017c0: PUSH2 0x17c8
000017c3: SWAP1
000017c4: PUSH2 0x43c6
000017c7: JUMP
000017c8: JUMPDEST
000017c9: DUP1
000017ca: PUSH1 0x1f
000017cc: ADD
000017cd: PUSH1 0x20
000017cf: DUP1
000017d0: SWAP2
000017d1: DIV
000017d2: MUL
000017d3: PUSH1 0x20
000017d5: ADD
000017d6: PUSH1 0x40
000017d8: MLOAD
000017d9: SWAP1
000017da: DUP2
000017db: ADD
000017dc: PUSH1 0x40
000017de: MSTORE
000017df: DUP1
000017e0: SWAP3
000017e1: SWAP2
000017e2: SWAP1
000017e3: DUP2
000017e4: DUP2
000017e5: MSTORE
000017e6: PUSH1 0x20
000017e8: ADD
000017e9: DUP3
000017ea: DUP1
000017eb: SLOAD
000017ec: PUSH2 0x17f4
000017ef: SWAP1
000017f0: PUSH2 0x43c6
000017f3: JUMP
000017f4: JUMPDEST
000017f5: DUP1
000017f6: ISZERO
000017f7: PUSH2 0x1841
000017fa: JUMPI
000017fb: DUP1
000017fc: PUSH1 0x1f
000017fe: LT
000017ff: PUSH2 0x1816
00001802: JUMPI
00001803: PUSH2 0x0100
00001806: DUP1
00001807: DUP4
00001808: SLOAD
00001809: DIV
0000180a: MUL
0000180b: DUP4
0000180c: MSTORE
0000180d: SWAP2
0000180e: PUSH1 0x20
00001810: ADD
00001811: SWAP2
00001812: PUSH2 0x1841
00001815: JUMP
00001816: JUMPDEST
00001817: DUP3
00001818: ADD
00001819: SWAP2
0000181a: SWAP1
0000181b: PUSH1 0x00
0000181d: MSTORE
0000181e: PUSH1 0x20
00001820: PUSH1 0x00
00001822: KECCAK256
00001823: SWAP1
00001824: JUMPDEST
00001825: DUP2
00001826: SLOAD
00001827: DUP2
00001828: MSTORE
00001829: SWAP1
0000182a: PUSH1 0x01
0000182c: ADD
0000182d: SWAP1
0000182e: PUSH1 0x20
00001830: ADD
00001831: DUP1
00001832: DUP4
00001833: GT
00001834: PUSH2 0x1824
00001837: JUMPI
00001838: DUP3
00001839: SWAP1
0000183a: SUB
0000183b: PUSH1 0x1f
0000183d: AND
0000183e: DUP3
0000183f: ADD
00001840: SWAP2
00001841: JUMPDEST
00001842: POP
00001843: POP
00001844: POP
00001845: POP
00001846: POP
00001847: SWAP1
00001848: POP
00001849: SWAP1
0000184a: JUMP
0000184b: JUMPDEST
0000184c: PUSH1 0x60
0000184e: PUSH1 0x00
00001850: PUSH1 0x01
00001852: PUSH1 0x00
00001854: DUP5
00001855: PUSH2 0xffff
00001858: AND
00001859: PUSH2 0xffff
0000185c: AND
0000185d: DUP2
0000185e: MSTORE
0000185f: PUSH1 0x20
00001861: ADD
00001862: SWAP1
00001863: DUP2
00001864: MSTORE
00001865: PUSH1 0x20
00001867: ADD
00001868: PUSH1 0x00
0000186a: KECCAK256
0000186b: DUP1
0000186c: SLOAD
0000186d: PUSH2 0x1875
00001870: SWAP1
00001871: PUSH2 0x43c6
00001874: JUMP
00001875: JUMPDEST
00001876: DUP1
00001877: PUSH1 0x1f
00001879: ADD
0000187a: PUSH1 0x20
0000187c: DUP1
0000187d: SWAP2
0000187e: DIV
0000187f: MUL
00001880: PUSH1 0x20
00001882: ADD
00001883: PUSH1 0x40
00001885: MLOAD
00001886: SWAP1
00001887: DUP2
00001888: ADD
00001889: PUSH1 0x40
0000188b: MSTORE
0000188c: DUP1
0000188d: SWAP3
0000188e: SWAP2
0000188f: SWAP1
00001890: DUP2
00001891: DUP2
00001892: MSTORE
00001893: PUSH1 0x20
00001895: ADD
00001896: DUP3
00001897: DUP1
00001898: SLOAD
00001899: PUSH2 0x18a1
0000189c: SWAP1
0000189d: PUSH2 0x43c6
000018a0: JUMP
000018a1: JUMPDEST
000018a2: DUP1
000018a3: ISZERO
000018a4: PUSH2 0x18ee
000018a7: JUMPI
000018a8: DUP1
000018a9: PUSH1 0x1f
000018ab: LT
000018ac: PUSH2 0x18c3
000018af: JUMPI
000018b0: PUSH2 0x0100
000018b3: DUP1
000018b4: DUP4
000018b5: SLOAD
000018b6: DIV
000018b7: MUL
000018b8: DUP4
000018b9: MSTORE
000018ba: SWAP2
000018bb: PUSH1 0x20
000018bd: ADD
000018be: SWAP2
000018bf: PUSH2 0x18ee
000018c2: JUMP
000018c3: JUMPDEST
000018c4: DUP3
000018c5: ADD
000018c6: SWAP2
000018c7: SWAP1
000018c8: PUSH1 0x00
000018ca: MSTORE
000018cb: PUSH1 0x20
000018cd: PUSH1 0x00
000018cf: KECCAK256
000018d0: SWAP1
000018d1: JUMPDEST
000018d2: DUP2
000018d3: SLOAD
000018d4: DUP2
000018d5: MSTORE
000018d6: SWAP1
000018d7: PUSH1 0x01
000018d9: ADD
000018da: SWAP1
000018db: PUSH1 0x20
000018dd: ADD
000018de: DUP1
000018df: DUP4
000018e0: GT
000018e1: PUSH2 0x18d1
000018e4: JUMPI
000018e5: DUP3
000018e6: SWAP1
000018e7: SUB
000018e8: PUSH1 0x1f
000018ea: AND
000018eb: DUP3
000018ec: ADD
000018ed: SWAP2
000018ee: JUMPDEST
000018ef: POP
000018f0: POP
000018f1: POP
000018f2: POP
000018f3: POP
000018f4: SWAP1
000018f5: POP
000018f6: PUSH1 0x00
000018f8: DUP2
000018f9: MLOAD
000018fa: SUB
000018fb: PUSH2 0x1939
000018fe: JUMPI
000018ff: PUSH1 0x40
00001901: MLOAD
00001902: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001923: DUP2
00001924: MSTORE
00001925: PUSH1 0x04
00001927: ADD
00001928: PUSH2 0x1930
0000192b: SWAP1
0000192c: PUSH2 0x4961
0000192f: JUMP
00001930: JUMPDEST
00001931: PUSH1 0x40
00001933: MLOAD
00001934: DUP1
00001935: SWAP2
00001936: SUB
00001937: SWAP1
00001938: REVERT
00001939: JUMPDEST
0000193a: PUSH2 0x195c
0000193d: PUSH1 0x00
0000193f: PUSH1 0x14
00001941: DUP4
00001942: MLOAD
00001943: PUSH2 0x194c
00001946: SWAP2
00001947: SWAP1
00001948: PUSH2 0x4981
0000194b: JUMP
0000194c: JUMPDEST
0000194d: DUP4
0000194e: PUSH2 0x2e02
00001951: SWAP1
00001952: SWAP3
00001953: SWAP2
00001954: SWAP1
00001955: PUSH4 0xffffffff
0000195a: AND
0000195b: JUMP
0000195c: JUMPDEST
0000195d: SWAP2
0000195e: POP
0000195f: POP
00001960: SWAP2
00001961: SWAP1
00001962: POP
00001963: JUMP
00001964: JUMPDEST
00001965: PUSH1 0x00
00001967: DUP1
00001968: PUSH2 0x196f
0000196b: PUSH2 0x22df
0000196e: JUMP
0000196f: JUMPDEST
00001970: SWAP1
00001971: POP
00001972: PUSH1 0x00
00001974: PUSH2 0x197d
00001977: DUP3
00001978: DUP7
00001979: PUSH2 0x1e1e
0000197c: JUMP
0000197d: JUMPDEST
0000197e: SWAP1
0000197f: POP
00001980: DUP4
00001981: DUP2
00001982: LT
00001983: ISZERO
00001984: PUSH2 0x19c2
00001987: JUMPI
00001988: PUSH1 0x40
0000198a: MLOAD
0000198b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000019ac: DUP2
000019ad: MSTORE
000019ae: PUSH1 0x04
000019b0: ADD
000019b1: PUSH2 0x19b9
000019b4: SWAP1
000019b5: PUSH2 0x4a27
000019b8: JUMP
000019b9: JUMPDEST
000019ba: PUSH1 0x40
000019bc: MLOAD
000019bd: DUP1
000019be: SWAP2
000019bf: SUB
000019c0: SWAP1
000019c1: REVERT
000019c2: JUMPDEST
000019c3: PUSH2 0x19cf
000019c6: DUP3
000019c7: DUP7
000019c8: DUP7
000019c9: DUP5
000019ca: SUB
000019cb: PUSH2 0x2544
000019ce: JUMP
000019cf: JUMPDEST
000019d0: PUSH1 0x01
000019d2: SWAP3
000019d3: POP
000019d4: POP
000019d5: POP
000019d6: SWAP3
000019d7: SWAP2
000019d8: POP
000019d9: POP
000019da: JUMP
000019db: JUMPDEST
000019dc: PUSH2 0x19e3
000019df: PUSH2 0x24c6
000019e2: JUMP
000019e3: JUMPDEST
000019e4: DUP2
000019e5: DUP2
000019e6: ADDRESS
000019e7: PUSH1 0x40
000019e9: MLOAD
000019ea: PUSH1 0x20
000019ec: ADD
000019ed: PUSH2 0x19f8
000019f0: SWAP4
000019f1: SWAP3
000019f2: SWAP2
000019f3: SWAP1
000019f4: PUSH2 0x4a47
000019f7: JUMP
000019f8: JUMPDEST
000019f9: PUSH1 0x40
000019fb: MLOAD
000019fc: PUSH1 0x20
000019fe: DUP2
000019ff: DUP4
00001a00: SUB
00001a01: SUB
00001a02: DUP2
00001a03: MSTORE
00001a04: SWAP1
00001a05: PUSH1 0x40
00001a07: MSTORE
00001a08: PUSH1 0x01
00001a0a: PUSH1 0x00
00001a0c: DUP6
00001a0d: PUSH2 0xffff
00001a10: AND
00001a11: PUSH2 0xffff
00001a14: AND
00001a15: DUP2
00001a16: MSTORE
00001a17: PUSH1 0x20
00001a19: ADD
00001a1a: SWAP1
00001a1b: DUP2
00001a1c: MSTORE
00001a1d: PUSH1 0x20
00001a1f: ADD
00001a20: PUSH1 0x00
00001a22: KECCAK256
00001a23: SWAP1
00001a24: DUP2
00001a25: PUSH2 0x1a2e
00001a28: SWAP2
00001a29: SWAP1
00001a2a: PUSH2 0x4c13
00001a2d: JUMP
00001a2e: JUMPDEST
00001a2f: POP
00001a30: PUSH32 0x8c0400cfe2d1199b1a725c78960bcc2a344d869b80590d0f2bd005db15a572ce
00001a51: DUP4
00001a52: DUP4
00001a53: DUP4
00001a54: PUSH1 0x40
00001a56: MLOAD
00001a57: PUSH2 0x1a62
00001a5a: SWAP4
00001a5b: SWAP3
00001a5c: SWAP2
00001a5d: SWAP1
00001a5e: PUSH2 0x4851
00001a61: JUMP
00001a62: JUMPDEST
00001a63: PUSH1 0x40
00001a65: MLOAD
00001a66: DUP1
00001a67: SWAP2
00001a68: SUB
00001a69: SWAP1
00001a6a: LOG1
00001a6b: POP
00001a6c: POP
00001a6d: POP
00001a6e: JUMP
00001a6f: JUMPDEST
00001a70: PUSH1 0x00
00001a72: DUP1
00001a73: PUSH2 0x1a7a
00001a76: PUSH2 0x22df
00001a79: JUMP
00001a7a: JUMPDEST
00001a7b: SWAP1
00001a7c: POP
00001a7d: PUSH2 0x1a87
00001a80: DUP2
00001a81: DUP6
00001a82: DUP6
00001a83: PUSH2 0x2799
00001a86: JUMP
00001a87: JUMPDEST
00001a88: PUSH1 0x01
00001a8a: SWAP2
00001a8b: POP
00001a8c: POP
00001a8d: SWAP3
00001a8e: SWAP2
00001a8f: POP
00001a90: POP
00001a91: JUMP
00001a92: JUMPDEST
00001a93: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00001ab4: DUP2
00001ab5: JUMP
00001ab6: JUMPDEST
00001ab7: PUSH2 0x1abe
00001aba: PUSH2 0x24c6
00001abd: JUMP
00001abe: JUMPDEST
00001abf: DUP1
00001ac0: PUSH1 0x03
00001ac2: PUSH1 0x00
00001ac4: PUSH2 0x0100
00001ac7: EXP
00001ac8: DUP2
00001ac9: SLOAD
00001aca: DUP2
00001acb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ae0: MUL
00001ae1: NOT
00001ae2: AND
00001ae3: SWAP1
00001ae4: DUP4
00001ae5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001afa: AND
00001afb: MUL
00001afc: OR
00001afd: SWAP1
00001afe: SSTORE
00001aff: POP
00001b00: PUSH32 0x5db758e995a17ec1ad84bdef7e8c3293a0bd6179bcce400dff5d4c3d87db726b
00001b21: DUP2
00001b22: PUSH1 0x40
00001b24: MLOAD
00001b25: PUSH2 0x1b2e
00001b28: SWAP2
00001b29: SWAP1
00001b2a: PUSH2 0x40e7
00001b2d: JUMP
00001b2e: JUMPDEST
00001b2f: PUSH1 0x40
00001b31: MLOAD
00001b32: DUP1
00001b33: SWAP2
00001b34: SUB
00001b35: SWAP1
00001b36: LOG1
00001b37: POP
00001b38: JUMP
00001b39: JUMPDEST
00001b3a: PUSH2 0x1b41
00001b3d: PUSH2 0x24c6
00001b40: JUMP
00001b41: JUMPDEST
00001b42: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00001b63: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b78: AND
00001b79: PUSH4 0xcbed8b9c
00001b7e: DUP7
00001b7f: DUP7
00001b80: DUP7
00001b81: DUP7
00001b82: DUP7
00001b83: PUSH1 0x40
00001b85: MLOAD
00001b86: DUP7
00001b87: PUSH4 0xffffffff
00001b8c: AND
00001b8d: PUSH1 0xe0
00001b8f: SHL
00001b90: DUP2
00001b91: MSTORE
00001b92: PUSH1 0x04
00001b94: ADD
00001b95: PUSH2 0x1ba2
00001b98: SWAP6
00001b99: SWAP5
00001b9a: SWAP4
00001b9b: SWAP3
00001b9c: SWAP2
00001b9d: SWAP1
00001b9e: PUSH2 0x4ce5
00001ba1: JUMP
00001ba2: JUMPDEST
00001ba3: PUSH1 0x00
00001ba5: PUSH1 0x40
00001ba7: MLOAD
00001ba8: DUP1
00001ba9: DUP4
00001baa: SUB
00001bab: DUP2
00001bac: PUSH1 0x00
00001bae: DUP8
00001baf: DUP1
00001bb0: EXTCODESIZE
00001bb1: ISZERO
00001bb2: DUP1
00001bb3: ISZERO
00001bb4: PUSH2 0x1bbc
00001bb7: JUMPI
00001bb8: PUSH1 0x00
00001bba: DUP1
00001bbb: REVERT
00001bbc: JUMPDEST
00001bbd: POP
00001bbe: GAS
00001bbf: CALL
00001bc0: ISZERO
00001bc1: DUP1
00001bc2: ISZERO
00001bc3: PUSH2 0x1bd0
00001bc6: JUMPI
00001bc7: RETURNDATASIZE
00001bc8: PUSH1 0x00
00001bca: DUP1
00001bcb: RETURNDATACOPY
00001bcc: RETURNDATASIZE
00001bcd: PUSH1 0x00
00001bcf: REVERT
00001bd0: JUMPDEST
00001bd1: POP
00001bd2: POP
00001bd3: POP
00001bd4: POP
00001bd5: POP
00001bd6: POP
00001bd7: POP
00001bd8: POP
00001bd9: POP
00001bda: JUMP
00001bdb: JUMPDEST
00001bdc: PUSH1 0x00
00001bde: PUSH1 0x04
00001be0: PUSH1 0x00
00001be2: DUP9
00001be3: PUSH2 0xffff
00001be6: AND
00001be7: PUSH2 0xffff
00001bea: AND
00001beb: DUP2
00001bec: MSTORE
00001bed: PUSH1 0x20
00001bef: ADD
00001bf0: SWAP1
00001bf1: DUP2
00001bf2: MSTORE
00001bf3: PUSH1 0x20
00001bf5: ADD
00001bf6: PUSH1 0x00
00001bf8: KECCAK256
00001bf9: DUP7
00001bfa: DUP7
00001bfb: PUSH1 0x40
00001bfd: MLOAD
00001bfe: PUSH2 0x1c08
00001c01: SWAP3
00001c02: SWAP2
00001c03: SWAP1
00001c04: PUSH2 0x4427
00001c07: JUMP
00001c08: JUMPDEST
00001c09: SWAP1
00001c0a: DUP2
00001c0b: MSTORE
00001c0c: PUSH1 0x20
00001c0e: ADD
00001c0f: PUSH1 0x40
00001c11: MLOAD
00001c12: DUP1
00001c13: SWAP2
00001c14: SUB
00001c15: SWAP1
00001c16: KECCAK256
00001c17: PUSH1 0x00
00001c19: DUP6
00001c1a: PUSH8 0xffffffffffffffff
00001c23: AND
00001c24: PUSH8 0xffffffffffffffff
00001c2d: AND
00001c2e: DUP2
00001c2f: MSTORE
00001c30: PUSH1 0x20
00001c32: ADD
00001c33: SWAP1
00001c34: DUP2
00001c35: MSTORE
00001c36: PUSH1 0x20
00001c38: ADD
00001c39: PUSH1 0x00
00001c3b: KECCAK256
00001c3c: SLOAD
00001c3d: SWAP1
00001c3e: POP
00001c3f: PUSH1 0x00
00001c41: DUP1
00001c42: SHL
00001c43: DUP2
00001c44: SUB
00001c45: PUSH2 0x1c83
00001c48: JUMPI
00001c49: PUSH1 0x40
00001c4b: MLOAD
00001c4c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001c6d: DUP2
00001c6e: MSTORE
00001c6f: PUSH1 0x04
00001c71: ADD
00001c72: PUSH2 0x1c7a
00001c75: SWAP1
00001c76: PUSH2 0x4da5
00001c79: JUMP
00001c7a: JUMPDEST
00001c7b: PUSH1 0x40
00001c7d: MLOAD
00001c7e: DUP1
00001c7f: SWAP2
00001c80: SUB
00001c81: SWAP1
00001c82: REVERT
00001c83: JUMPDEST
00001c84: DUP1
00001c85: DUP4
00001c86: DUP4
00001c87: PUSH1 0x40
00001c89: MLOAD
00001c8a: PUSH2 0x1c94
00001c8d: SWAP3
00001c8e: SWAP2
00001c8f: SWAP1
00001c90: PUSH2 0x4427
00001c93: JUMP
00001c94: JUMPDEST
00001c95: PUSH1 0x40
00001c97: MLOAD
00001c98: DUP1
00001c99: SWAP2
00001c9a: SUB
00001c9b: SWAP1
00001c9c: KECCAK256
00001c9d: EQ
00001c9e: PUSH2 0x1cdc
00001ca1: JUMPI
00001ca2: PUSH1 0x40
00001ca4: MLOAD
00001ca5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001cc6: DUP2
00001cc7: MSTORE
00001cc8: PUSH1 0x04
00001cca: ADD
00001ccb: PUSH2 0x1cd3
00001cce: SWAP1
00001ccf: PUSH2 0x4e37
00001cd2: JUMP
00001cd3: JUMPDEST
00001cd4: PUSH1 0x40
00001cd6: MLOAD
00001cd7: DUP1
00001cd8: SWAP2
00001cd9: SUB
00001cda: SWAP1
00001cdb: REVERT
00001cdc: JUMPDEST
00001cdd: PUSH1 0x00
00001cdf: DUP1
00001ce0: SHL
00001ce1: PUSH1 0x04
00001ce3: PUSH1 0x00
00001ce5: DUP10
00001ce6: PUSH2 0xffff
00001ce9: AND
00001cea: PUSH2 0xffff
00001ced: AND
00001cee: DUP2
00001cef: MSTORE
00001cf0: PUSH1 0x20
00001cf2: ADD
00001cf3: SWAP1
00001cf4: DUP2
00001cf5: MSTORE
00001cf6: PUSH1 0x20
00001cf8: ADD
00001cf9: PUSH1 0x00
00001cfb: KECCAK256
00001cfc: DUP8
00001cfd: DUP8
00001cfe: PUSH1 0x40
00001d00: MLOAD
00001d01: PUSH2 0x1d0b
00001d04: SWAP3
00001d05: SWAP2
00001d06: SWAP1
00001d07: PUSH2 0x4427
00001d0a: JUMP
00001d0b: JUMPDEST
00001d0c: SWAP1
00001d0d: DUP2
00001d0e: MSTORE
00001d0f: PUSH1 0x20
00001d11: ADD
00001d12: PUSH1 0x40
00001d14: MLOAD
00001d15: DUP1
00001d16: SWAP2
00001d17: SUB
00001d18: SWAP1
00001d19: KECCAK256
00001d1a: PUSH1 0x00
00001d1c: DUP7
00001d1d: PUSH8 0xffffffffffffffff
00001d26: AND
00001d27: PUSH8 0xffffffffffffffff
00001d30: AND
00001d31: DUP2
00001d32: MSTORE
00001d33: PUSH1 0x20
00001d35: ADD
00001d36: SWAP1
00001d37: DUP2
00001d38: MSTORE
00001d39: PUSH1 0x20
00001d3b: ADD
00001d3c: PUSH1 0x00
00001d3e: KECCAK256
00001d3f: DUP2
00001d40: SWAP1
00001d41: SSTORE
00001d42: POP
00001d43: PUSH2 0x1dd6
00001d46: DUP8
00001d47: DUP8
00001d48: DUP8
00001d49: DUP1
00001d4a: DUP1
00001d4b: PUSH1 0x1f
00001d4d: ADD
00001d4e: PUSH1 0x20
00001d50: DUP1
00001d51: SWAP2
00001d52: DIV
00001d53: MUL
00001d54: PUSH1 0x20
00001d56: ADD
00001d57: PUSH1 0x40
00001d59: MLOAD
00001d5a: SWAP1
00001d5b: DUP2
00001d5c: ADD
00001d5d: PUSH1 0x40
00001d5f: MSTORE
00001d60: DUP1
00001d61: SWAP4
00001d62: SWAP3
00001d63: SWAP2
00001d64: SWAP1
00001d65: DUP2
00001d66: DUP2
00001d67: MSTORE
00001d68: PUSH1 0x20
00001d6a: ADD
00001d6b: DUP4
00001d6c: DUP4
00001d6d: DUP1
00001d6e: DUP3
00001d6f: DUP5
00001d70: CALLDATACOPY
00001d71: PUSH1 0x00
00001d73: DUP2
00001d74: DUP5
00001d75: ADD
00001d76: MSTORE
00001d77: PUSH1 0x1f
00001d79: NOT
00001d7a: PUSH1 0x1f
00001d7c: DUP3
00001d7d: ADD
00001d7e: AND
00001d7f: SWAP1
00001d80: POP
00001d81: DUP1
00001d82: DUP4
00001d83: ADD
00001d84: SWAP3
00001d85: POP
00001d86: POP
00001d87: POP
00001d88: POP
00001d89: POP
00001d8a: POP
00001d8b: POP
00001d8c: DUP7
00001d8d: DUP7
00001d8e: DUP7
00001d8f: DUP1
00001d90: DUP1
00001d91: PUSH1 0x1f
00001d93: ADD
00001d94: PUSH1 0x20
00001d96: DUP1
00001d97: SWAP2
00001d98: DIV
00001d99: MUL
00001d9a: PUSH1 0x20
00001d9c: ADD
00001d9d: PUSH1 0x40
00001d9f: MLOAD
00001da0: SWAP1
00001da1: DUP2
00001da2: ADD
00001da3: PUSH1 0x40
00001da5: MSTORE
00001da6: DUP1
00001da7: SWAP4
00001da8: SWAP3
00001da9: SWAP2
00001daa: SWAP1
00001dab: DUP2
00001dac: DUP2
00001dad: MSTORE
00001dae: PUSH1 0x20
00001db0: ADD
00001db1: DUP4
00001db2: DUP4
00001db3: DUP1
00001db4: DUP3
00001db5: DUP5
00001db6: CALLDATACOPY
00001db7: PUSH1 0x00
00001db9: DUP2
00001dba: DUP5
00001dbb: ADD
00001dbc: MSTORE
00001dbd: PUSH1 0x1f
00001dbf: NOT
00001dc0: PUSH1 0x1f
00001dc2: DUP3
00001dc3: ADD
00001dc4: AND
00001dc5: SWAP1
00001dc6: POP
00001dc7: DUP1
00001dc8: DUP4
00001dc9: ADD
00001dca: SWAP3
00001dcb: POP
00001dcc: POP
00001dcd: POP
00001dce: POP
00001dcf: POP
00001dd0: POP
00001dd1: POP
00001dd2: PUSH2 0x2cd2
00001dd5: JUMP
00001dd6: JUMPDEST
00001dd7: PUSH32 0xc264d91f3adc5588250e1551f547752ca0cfa8f6b530d243b9f9f4cab10ea8e5
00001df8: DUP8
00001df9: DUP8
00001dfa: DUP8
00001dfb: DUP8
00001dfc: DUP6
00001dfd: PUSH1 0x40
00001dff: MLOAD
00001e00: PUSH2 0x1e0d
00001e03: SWAP6
00001e04: SWAP5
00001e05: SWAP4
00001e06: SWAP3
00001e07: SWAP2
00001e08: SWAP1
00001e09: PUSH2 0x4e66
00001e0c: JUMP
00001e0d: JUMPDEST
00001e0e: PUSH1 0x40
00001e10: MLOAD
00001e11: DUP1
00001e12: SWAP2
00001e13: SUB
00001e14: SWAP1
00001e15: LOG1
00001e16: POP
00001e17: POP
00001e18: POP
00001e19: POP
00001e1a: POP
00001e1b: POP
00001e1c: POP
00001e1d: JUMP
00001e1e: JUMPDEST
00001e1f: PUSH1 0x00
00001e21: PUSH1 0x07
00001e23: PUSH1 0x00
00001e25: DUP5
00001e26: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e3b: AND
00001e3c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e51: AND
00001e52: DUP2
00001e53: MSTORE
00001e54: PUSH1 0x20
00001e56: ADD
00001e57: SWAP1
00001e58: DUP2
00001e59: MSTORE
00001e5a: PUSH1 0x20
00001e5c: ADD
00001e5d: PUSH1 0x00
00001e5f: KECCAK256
00001e60: PUSH1 0x00
00001e62: DUP4
00001e63: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e78: AND
00001e79: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e8e: AND
00001e8f: DUP2
00001e90: MSTORE
00001e91: PUSH1 0x20
00001e93: ADD
00001e94: SWAP1
00001e95: DUP2
00001e96: MSTORE
00001e97: PUSH1 0x20
00001e99: ADD
00001e9a: PUSH1 0x00
00001e9c: KECCAK256
00001e9d: SLOAD
00001e9e: SWAP1
00001e9f: POP
00001ea0: SWAP3
00001ea1: SWAP2
00001ea2: POP
00001ea3: POP
00001ea4: JUMP
00001ea5: JUMPDEST
00001ea6: PUSH2 0x1ead
00001ea9: PUSH2 0x24c6
00001eac: JUMP
00001ead: JUMPDEST
00001eae: PUSH1 0x00
00001eb0: DUP2
00001eb1: GT
00001eb2: PUSH2 0x1ef0
00001eb5: JUMPI
00001eb6: PUSH1 0x40
00001eb8: MLOAD
00001eb9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001eda: DUP2
00001edb: MSTORE
00001edc: PUSH1 0x04
00001ede: ADD
00001edf: PUSH2 0x1ee7
00001ee2: SWAP1
00001ee3: PUSH2 0x4f00
00001ee6: JUMP
00001ee7: JUMPDEST
00001ee8: PUSH1 0x40
00001eea: MLOAD
00001eeb: DUP1
00001eec: SWAP2
00001eed: SUB
00001eee: SWAP1
00001eef: REVERT
00001ef0: JUMPDEST
00001ef1: DUP1
00001ef2: PUSH1 0x02
00001ef4: PUSH1 0x00
00001ef6: DUP6
00001ef7: PUSH2 0xffff
00001efa: AND
00001efb: PUSH2 0xffff
00001efe: AND
00001eff: DUP2
00001f00: MSTORE
00001f01: PUSH1 0x20
00001f03: ADD
00001f04: SWAP1
00001f05: DUP2
00001f06: MSTORE
00001f07: PUSH1 0x20
00001f09: ADD
00001f0a: PUSH1 0x00
00001f0c: KECCAK256
00001f0d: PUSH1 0x00
00001f0f: DUP5
00001f10: PUSH2 0xffff
00001f13: AND
00001f14: PUSH2 0xffff
00001f17: AND
00001f18: DUP2
00001f19: MSTORE
00001f1a: PUSH1 0x20
00001f1c: ADD
00001f1d: SWAP1
00001f1e: DUP2
00001f1f: MSTORE
00001f20: PUSH1 0x20
00001f22: ADD
00001f23: PUSH1 0x00
00001f25: KECCAK256
00001f26: DUP2
00001f27: SWAP1
00001f28: SSTORE
00001f29: POP
00001f2a: PUSH32 0x9d5c7c0b934da8fefa9c7760c98383778a12dfbfc0c3b3106518f43fb9508ac0
00001f4b: DUP4
00001f4c: DUP4
00001f4d: DUP4
00001f4e: PUSH1 0x40
00001f50: MLOAD
00001f51: PUSH2 0x1f5c
00001f54: SWAP4
00001f55: SWAP3
00001f56: SWAP2
00001f57: SWAP1
00001f58: PUSH2 0x4f20
00001f5b: JUMP
00001f5c: JUMPDEST
00001f5d: PUSH1 0x40
00001f5f: MLOAD
00001f60: DUP1
00001f61: SWAP2
00001f62: SUB
00001f63: SWAP1
00001f64: LOG1
00001f65: POP
00001f66: POP
00001f67: POP
00001f68: JUMP
00001f69: JUMPDEST
00001f6a: PUSH2 0x1f71
00001f6d: PUSH2 0x24c6
00001f70: JUMP
00001f71: JUMPDEST
00001f72: DUP1
00001f73: PUSH1 0x05
00001f75: PUSH1 0x00
00001f77: PUSH2 0x0100
00001f7a: EXP
00001f7b: DUP2
00001f7c: SLOAD
00001f7d: DUP2
00001f7e: PUSH1 0xff
00001f80: MUL
00001f81: NOT
00001f82: AND
00001f83: SWAP1
00001f84: DUP4
00001f85: ISZERO
00001f86: ISZERO
00001f87: MUL
00001f88: OR
00001f89: SWAP1
00001f8a: SSTORE
00001f8b: POP
00001f8c: PUSH32 0x1584ad594a70cbe1e6515592e1272a987d922b097ead875069cebe8b40c004a4
00001fad: DUP2
00001fae: PUSH1 0x40
00001fb0: MLOAD
00001fb1: PUSH2 0x1fba
00001fb4: SWAP2
00001fb5: SWAP1
00001fb6: PUSH2 0x38b7
00001fb9: JUMP
00001fba: JUMPDEST
00001fbb: PUSH1 0x40
00001fbd: MLOAD
00001fbe: DUP1
00001fbf: SWAP2
00001fc0: SUB
00001fc1: SWAP1
00001fc2: LOG1
00001fc3: POP
00001fc4: JUMP
00001fc5: JUMPDEST
00001fc6: PUSH2 0x1fcd
00001fc9: PUSH2 0x24c6
00001fcc: JUMP
00001fcd: JUMPDEST
00001fce: DUP2
00001fcf: DUP2
00001fd0: PUSH1 0x01
00001fd2: PUSH1 0x00
00001fd4: DUP7
00001fd5: PUSH2 0xffff
00001fd8: AND
00001fd9: PUSH2 0xffff
00001fdc: AND
00001fdd: DUP2
00001fde: MSTORE
00001fdf: PUSH1 0x20
00001fe1: ADD
00001fe2: SWAP1
00001fe3: DUP2
00001fe4: MSTORE
00001fe5: PUSH1 0x20
00001fe7: ADD
00001fe8: PUSH1 0x00
00001fea: KECCAK256
00001feb: SWAP2
00001fec: DUP3
00001fed: PUSH2 0x1ff7
00001ff0: SWAP3
00001ff1: SWAP2
00001ff2: SWAP1
00001ff3: PUSH2 0x4f62
00001ff6: JUMP
00001ff7: JUMPDEST
00001ff8: POP
00001ff9: PUSH32 0xfa41487ad5d6728f0b19276fa1eddc16558578f5109fc39d2dc33c3230470dab
0000201a: DUP4
0000201b: DUP4
0000201c: DUP4
0000201d: PUSH1 0x40
0000201f: MLOAD
00002020: PUSH2 0x202b
00002023: SWAP4
00002024: SWAP3
00002025: SWAP2
00002026: SWAP1
00002027: PUSH2 0x4851
0000202a: JUMP
0000202b: JUMPDEST
0000202c: PUSH1 0x40
0000202e: MLOAD
0000202f: DUP1
00002030: SWAP2
00002031: SUB
00002032: SWAP1
00002033: LOG1
00002034: POP
00002035: POP
00002036: POP
00002037: JUMP
00002038: JUMPDEST
00002039: PUSH1 0x05
0000203b: PUSH1 0x00
0000203d: SWAP1
0000203e: SLOAD
0000203f: SWAP1
00002040: PUSH2 0x0100
00002043: EXP
00002044: SWAP1
00002045: DIV
00002046: PUSH1 0xff
00002048: AND
00002049: DUP2
0000204a: JUMP
0000204b: JUMPDEST
0000204c: PUSH2 0x2053
0000204f: PUSH2 0x24c6
00002052: JUMP
00002053: JUMPDEST
00002054: PUSH1 0x00
00002056: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000206b: AND
0000206c: DUP2
0000206d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002082: AND
00002083: SUB
00002084: PUSH2 0x20c2
00002087: JUMPI
00002088: PUSH1 0x40
0000208a: MLOAD
0000208b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000020ac: DUP2
000020ad: MSTORE
000020ae: PUSH1 0x04
000020b0: ADD
000020b1: PUSH2 0x20b9
000020b4: SWAP1
000020b5: PUSH2 0x50a4
000020b8: JUMP
000020b9: JUMPDEST
000020ba: PUSH1 0x40
000020bc: MLOAD
000020bd: DUP1
000020be: SWAP2
000020bf: SUB
000020c0: SWAP1
000020c1: REVERT
000020c2: JUMPDEST
000020c3: PUSH2 0x20cb
000020c6: DUP2
000020c7: PUSH2 0x2d3e
000020ca: JUMP
000020cb: JUMPDEST
000020cc: POP
000020cd: JUMP
000020ce: JUMPDEST
000020cf: PUSH1 0x60
000020d1: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
000020f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002107: AND
00002108: PUSH4 0xf5ecbdbc
0000210d: DUP7
0000210e: DUP7
0000210f: ADDRESS
00002110: DUP7
00002111: PUSH1 0x40
00002113: MLOAD
00002114: DUP6
00002115: PUSH4 0xffffffff
0000211a: AND
0000211b: PUSH1 0xe0
0000211d: SHL
0000211e: DUP2
0000211f: MSTORE
00002120: PUSH1 0x04
00002122: ADD
00002123: PUSH2 0x212f
00002126: SWAP5
00002127: SWAP4
00002128: SWAP3
00002129: SWAP2
0000212a: SWAP1
0000212b: PUSH2 0x50c4
0000212e: JUMP
0000212f: JUMPDEST
00002130: PUSH1 0x00
00002132: PUSH1 0x40
00002134: MLOAD
00002135: DUP1
00002136: DUP4
00002137: SUB
00002138: DUP2
00002139: DUP7
0000213a: GAS
0000213b: STATICCALL
0000213c: ISZERO
0000213d: DUP1
0000213e: ISZERO
0000213f: PUSH2 0x214c
00002142: JUMPI
00002143: RETURNDATASIZE
00002144: PUSH1 0x00
00002146: DUP1
00002147: RETURNDATACOPY
00002148: RETURNDATASIZE
00002149: PUSH1 0x00
0000214b: REVERT
0000214c: JUMPDEST
0000214d: POP
0000214e: POP
0000214f: POP
00002150: POP
00002151: PUSH1 0x40
00002153: MLOAD
00002154: RETURNDATASIZE
00002155: PUSH1 0x00
00002157: DUP3
00002158: RETURNDATACOPY
00002159: RETURNDATASIZE
0000215a: PUSH1 0x1f
0000215c: NOT
0000215d: PUSH1 0x1f
0000215f: DUP3
00002160: ADD
00002161: AND
00002162: DUP3
00002163: ADD
00002164: DUP1
00002165: PUSH1 0x40
00002167: MSTORE
00002168: POP
00002169: DUP2
0000216a: ADD
0000216b: SWAP1
0000216c: PUSH2 0x2175
0000216f: SWAP2
00002170: SWAP1
00002171: PUSH2 0x5179
00002174: JUMP
00002175: JUMPDEST
00002176: SWAP1
00002177: POP
00002178: SWAP5
00002179: SWAP4
0000217a: POP
0000217b: POP
0000217c: POP
0000217d: POP
0000217e: JUMP
0000217f: JUMPDEST
00002180: PUSH1 0x00
00002182: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002197: AND
00002198: DUP3
00002199: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021ae: AND
000021af: SUB
000021b0: PUSH2 0x21ee
000021b3: JUMPI
000021b4: PUSH1 0x40
000021b6: MLOAD
000021b7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000021d8: DUP2
000021d9: MSTORE
000021da: PUSH1 0x04
000021dc: ADD
000021dd: PUSH2 0x21e5
000021e0: SWAP1
000021e1: PUSH2 0x520e
000021e4: JUMP
000021e5: JUMPDEST
000021e6: PUSH1 0x40
000021e8: MLOAD
000021e9: DUP1
000021ea: SWAP2
000021eb: SUB
000021ec: SWAP1
000021ed: REVERT
000021ee: JUMPDEST
000021ef: PUSH2 0x21fa
000021f2: PUSH1 0x00
000021f4: DUP4
000021f5: DUP4
000021f6: PUSH2 0x2f20
000021f9: JUMP
000021fa: JUMPDEST
000021fb: DUP1
000021fc: PUSH1 0x08
000021fe: PUSH1 0x00
00002200: DUP3
00002201: DUP3
00002202: SLOAD
00002203: PUSH2 0x220c
00002206: SWAP2
00002207: SWAP1
00002208: PUSH2 0x481d
0000220b: JUMP
0000220c: JUMPDEST
0000220d: SWAP3
0000220e: POP
0000220f: POP
00002210: DUP2
00002211: SWAP1
00002212: SSTORE
00002213: POP
00002214: DUP1
00002215: PUSH1 0x06
00002217: PUSH1 0x00
00002219: DUP5
0000221a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000222f: AND
00002230: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002245: AND
00002246: DUP2
00002247: MSTORE
00002248: PUSH1 0x20
0000224a: ADD
0000224b: SWAP1
0000224c: DUP2
0000224d: MSTORE
0000224e: PUSH1 0x20
00002250: ADD
00002251: PUSH1 0x00
00002253: KECCAK256
00002254: PUSH1 0x00
00002256: DUP3
00002257: DUP3
00002258: SLOAD
00002259: PUSH2 0x2262
0000225c: SWAP2
0000225d: SWAP1
0000225e: PUSH2 0x481d
00002261: JUMP
00002262: JUMPDEST
00002263: SWAP3
00002264: POP
00002265: POP
00002266: DUP2
00002267: SWAP1
00002268: SSTORE
00002269: POP
0000226a: DUP2
0000226b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002280: AND
00002281: PUSH1 0x00
00002283: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002298: AND
00002299: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
000022ba: DUP4
000022bb: PUSH1 0x40
000022bd: MLOAD
000022be: PUSH2 0x22c7
000022c1: SWAP2
000022c2: SWAP1
000022c3: PUSH2 0x3a94
000022c6: JUMP
000022c7: JUMPDEST
000022c8: PUSH1 0x40
000022ca: MLOAD
000022cb: DUP1
000022cc: SWAP2
000022cd: SUB
000022ce: SWAP1
000022cf: LOG3
000022d0: PUSH2 0x22db
000022d3: PUSH1 0x00
000022d5: DUP4
000022d6: DUP4
000022d7: PUSH2 0x2f25
000022da: JUMP
000022db: JUMPDEST
000022dc: POP
000022dd: POP
000022de: JUMP
000022df: JUMPDEST
000022e0: PUSH1 0x00
000022e2: CALLER
000022e3: SWAP1
000022e4: POP
000022e5: SWAP1
000022e6: JUMP
000022e7: JUMPDEST
000022e8: PUSH1 0x00
000022ea: DUP1
000022eb: PUSH2 0x2393
000022ee: GAS
000022ef: PUSH1 0x96
000022f1: PUSH4 0x66ad5c8a
000022f6: PUSH1 0xe0
000022f8: SHL
000022f9: DUP10
000022fa: DUP10
000022fb: DUP10
000022fc: DUP10
000022fd: PUSH1 0x40
000022ff: MLOAD
00002300: PUSH1 0x24
00002302: ADD
00002303: PUSH2 0x230f
00002306: SWAP5
00002307: SWAP4
00002308: SWAP3
00002309: SWAP2
0000230a: SWAP1
0000230b: PUSH2 0x522e
0000230e: JUMP
0000230f: JUMPDEST
00002310: PUSH1 0x40
00002312: MLOAD
00002313: PUSH1 0x20
00002315: DUP2
00002316: DUP4
00002317: SUB
00002318: SUB
00002319: DUP2
0000231a: MSTORE
0000231b: SWAP1
0000231c: PUSH1 0x40
0000231e: MSTORE
0000231f: SWAP1
00002320: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000233d: NOT
0000233e: AND
0000233f: PUSH1 0x20
00002341: DUP3
00002342: ADD
00002343: DUP1
00002344: MLOAD
00002345: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002362: DUP4
00002363: DUP2
00002364: DUP4
00002365: AND
00002366: OR
00002367: DUP4
00002368: MSTORE
00002369: POP
0000236a: POP
0000236b: POP
0000236c: POP
0000236d: ADDRESS
0000236e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002383: AND
00002384: PUSH2 0x2f2a
00002387: SWAP1
00002388: SWAP4
00002389: SWAP3
0000238a: SWAP2
0000238b: SWAP1
0000238c: PUSH4 0xffffffff
00002391: AND
00002392: JUMP
00002393: JUMPDEST
00002394: SWAP2
00002395: POP
00002396: SWAP2
00002397: POP
00002398: DUP2
00002399: PUSH2 0x2444
0000239c: JUMPI
0000239d: DUP3
0000239e: DUP1
0000239f: MLOAD
000023a0: SWAP1
000023a1: PUSH1 0x20
000023a3: ADD
000023a4: KECCAK256
000023a5: PUSH1 0x04
000023a7: PUSH1 0x00
000023a9: DUP9
000023aa: PUSH2 0xffff
000023ad: AND
000023ae: PUSH2 0xffff
000023b1: AND
000023b2: DUP2
000023b3: MSTORE
000023b4: PUSH1 0x20
000023b6: ADD
000023b7: SWAP1
000023b8: DUP2
000023b9: MSTORE
000023ba: PUSH1 0x20
000023bc: ADD
000023bd: PUSH1 0x00
000023bf: KECCAK256
000023c0: DUP7
000023c1: PUSH1 0x40
000023c3: MLOAD
000023c4: PUSH2 0x23cd
000023c7: SWAP2
000023c8: SWAP1
000023c9: PUSH2 0x52b2
000023cc: JUMP
000023cd: JUMPDEST
000023ce: SWAP1
000023cf: DUP2
000023d0: MSTORE
000023d1: PUSH1 0x20
000023d3: ADD
000023d4: PUSH1 0x40
000023d6: MLOAD
000023d7: DUP1
000023d8: SWAP2
000023d9: SUB
000023da: SWAP1
000023db: KECCAK256
000023dc: PUSH1 0x00
000023de: DUP7
000023df: PUSH8 0xffffffffffffffff
000023e8: AND
000023e9: PUSH8 0xffffffffffffffff
000023f2: AND
000023f3: DUP2
000023f4: MSTORE
000023f5: PUSH1 0x20
000023f7: ADD
000023f8: SWAP1
000023f9: DUP2
000023fa: MSTORE
000023fb: PUSH1 0x20
000023fd: ADD
000023fe: PUSH1 0x00
00002400: KECCAK256
00002401: DUP2
00002402: SWAP1
00002403: SSTORE
00002404: POP
00002405: PUSH32 0xe183f33de2837795525b4792ca4cd60535bd77c53b7e7030060bfcf5734d6b0c
00002426: DUP7
00002427: DUP7
00002428: DUP7
00002429: DUP7
0000242a: DUP6
0000242b: PUSH1 0x40
0000242d: MLOAD
0000242e: PUSH2 0x243b
00002431: SWAP6
00002432: SWAP5
00002433: SWAP4
00002434: SWAP3
00002435: SWAP2
00002436: SWAP1
00002437: PUSH2 0x52c9
0000243a: JUMP
0000243b: JUMPDEST
0000243c: PUSH1 0x40
0000243e: MLOAD
0000243f: DUP1
00002440: SWAP2
00002441: SUB
00002442: SWAP1
00002443: LOG1
00002444: JUMPDEST
00002445: POP
00002446: POP
00002447: POP
00002448: POP
00002449: POP
0000244a: POP
0000244b: JUMP
0000244c: JUMPDEST
0000244d: PUSH1 0x00
0000244f: PUSH32 0xe8e89a8000000000000000000000000000000000000000000000000000000000
00002470: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000248d: NOT
0000248e: AND
0000248f: DUP3
00002490: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000024ad: NOT
000024ae: AND
000024af: EQ
000024b0: DUP1
000024b1: PUSH2 0x24bf
000024b4: JUMPI
000024b5: POP
000024b6: PUSH2 0x24be
000024b9: DUP3
000024ba: PUSH2 0x2fc2
000024bd: JUMP
000024be: JUMPDEST
000024bf: JUMPDEST
000024c0: SWAP1
000024c1: POP
000024c2: SWAP2
000024c3: SWAP1
000024c4: POP
000024c5: JUMP
000024c6: JUMPDEST
000024c7: PUSH2 0x24ce
000024ca: PUSH2 0x22df
000024cd: JUMP
000024ce: JUMPDEST
000024cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024e4: AND
000024e5: PUSH2 0x24ec
000024e8: PUSH2 0x175b
000024eb: JUMP
000024ec: JUMPDEST
000024ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002502: AND
00002503: EQ
00002504: PUSH2 0x2542
00002507: JUMPI
00002508: PUSH1 0x40
0000250a: MLOAD
0000250b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000252c: DUP2
0000252d: MSTORE
0000252e: PUSH1 0x04
00002530: ADD
00002531: PUSH2 0x2539
00002534: SWAP1
00002535: PUSH2 0x537d
00002538: JUMP
00002539: JUMPDEST
0000253a: PUSH1 0x40
0000253c: MLOAD
0000253d: DUP1
0000253e: SWAP2
0000253f: SUB
00002540: SWAP1
00002541: REVERT
00002542: JUMPDEST
00002543: JUMP
00002544: JUMPDEST
00002545: PUSH1 0x00
00002547: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000255c: AND
0000255d: DUP4
0000255e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002573: AND
00002574: SUB
00002575: PUSH2 0x25b3
00002578: JUMPI
00002579: PUSH1 0x40
0000257b: MLOAD
0000257c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000259d: DUP2
0000259e: MSTORE
0000259f: PUSH1 0x04
000025a1: ADD
000025a2: PUSH2 0x25aa
000025a5: SWAP1
000025a6: PUSH2 0x540f
000025a9: JUMP
000025aa: JUMPDEST
000025ab: PUSH1 0x40
000025ad: MLOAD
000025ae: DUP1
000025af: SWAP2
000025b0: SUB
000025b1: SWAP1
000025b2: REVERT
000025b3: JUMPDEST
000025b4: PUSH1 0x00
000025b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025cb: AND
000025cc: DUP3
000025cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025e2: AND
000025e3: SUB
000025e4: PUSH2 0x2622
000025e7: JUMPI
000025e8: PUSH1 0x40
000025ea: MLOAD
000025eb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000260c: DUP2
0000260d: MSTORE
0000260e: PUSH1 0x04
00002610: ADD
00002611: PUSH2 0x2619
00002614: SWAP1
00002615: PUSH2 0x54a1
00002618: JUMP
00002619: JUMPDEST
0000261a: PUSH1 0x40
0000261c: MLOAD
0000261d: DUP1
0000261e: SWAP2
0000261f: SUB
00002620: SWAP1
00002621: REVERT
00002622: JUMPDEST
00002623: DUP1
00002624: PUSH1 0x07
00002626: PUSH1 0x00
00002628: DUP6
00002629: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000263e: AND
0000263f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002654: AND
00002655: DUP2
00002656: MSTORE
00002657: PUSH1 0x20
00002659: ADD
0000265a: SWAP1
0000265b: DUP2
0000265c: MSTORE
0000265d: PUSH1 0x20
0000265f: ADD
00002660: PUSH1 0x00
00002662: KECCAK256
00002663: PUSH1 0x00
00002665: DUP5
00002666: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000267b: AND
0000267c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002691: AND
00002692: DUP2
00002693: MSTORE
00002694: PUSH1 0x20
00002696: ADD
00002697: SWAP1
00002698: DUP2
00002699: MSTORE
0000269a: PUSH1 0x20
0000269c: ADD
0000269d: PUSH1 0x00
0000269f: KECCAK256
000026a0: DUP2
000026a1: SWAP1
000026a2: SSTORE
000026a3: POP
000026a4: DUP2
000026a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026ba: AND
000026bb: DUP4
000026bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026d1: AND
000026d2: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
000026f3: DUP4
000026f4: PUSH1 0x40
000026f6: MLOAD
000026f7: PUSH2 0x2700
000026fa: SWAP2
000026fb: SWAP1
000026fc: PUSH2 0x3a94
000026ff: JUMP
00002700: JUMPDEST
00002701: PUSH1 0x40
00002703: MLOAD
00002704: DUP1
00002705: SWAP2
00002706: SUB
00002707: SWAP1
00002708: LOG3
00002709: POP
0000270a: POP
0000270b: POP
0000270c: JUMP
0000270d: JUMPDEST
0000270e: PUSH1 0x00
00002710: PUSH2 0x2719
00002713: DUP5
00002714: DUP5
00002715: PUSH2 0x1e1e
00002718: JUMP
00002719: JUMPDEST
0000271a: SWAP1
0000271b: POP
0000271c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000273d: DUP2
0000273e: EQ
0000273f: PUSH2 0x2793
00002742: JUMPI
00002743: DUP2
00002744: DUP2
00002745: LT
00002746: ISZERO
00002747: PUSH2 0x2785
0000274a: JUMPI
0000274b: PUSH1 0x40
0000274d: MLOAD
0000274e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000276f: DUP2
00002770: MSTORE
00002771: PUSH1 0x04
00002773: ADD
00002774: PUSH2 0x277c
00002777: SWAP1
00002778: PUSH2 0x550d
0000277b: JUMP
0000277c: JUMPDEST
0000277d: PUSH1 0x40
0000277f: MLOAD
00002780: DUP1
00002781: SWAP2
00002782: SUB
00002783: SWAP1
00002784: REVERT
00002785: JUMPDEST
00002786: PUSH2 0x2792
00002789: DUP5
0000278a: DUP5
0000278b: DUP5
0000278c: DUP5
0000278d: SUB
0000278e: PUSH2 0x2544
00002791: JUMP
00002792: JUMPDEST
00002793: JUMPDEST
00002794: POP
00002795: POP
00002796: POP
00002797: POP
00002798: JUMP
00002799: JUMPDEST
0000279a: PUSH1 0x00
0000279c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027b1: AND
000027b2: DUP4
000027b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027c8: AND
000027c9: SUB
000027ca: PUSH2 0x2808
000027cd: JUMPI
000027ce: PUSH1 0x40
000027d0: MLOAD
000027d1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000027f2: DUP2
000027f3: MSTORE
000027f4: PUSH1 0x04
000027f6: ADD
000027f7: PUSH2 0x27ff
000027fa: SWAP1
000027fb: PUSH2 0x559f
000027fe: JUMP
000027ff: JUMPDEST
00002800: PUSH1 0x40
00002802: MLOAD
00002803: DUP1
00002804: SWAP2
00002805: SUB
00002806: SWAP1
00002807: REVERT
00002808: JUMPDEST
00002809: PUSH1 0x00
0000280b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002820: AND
00002821: DUP3
00002822: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002837: AND
00002838: SUB
00002839: PUSH2 0x2877
0000283c: JUMPI
0000283d: PUSH1 0x40
0000283f: MLOAD
00002840: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002861: DUP2
00002862: MSTORE
00002863: PUSH1 0x04
00002865: ADD
00002866: PUSH2 0x286e
00002869: SWAP1
0000286a: PUSH2 0x5631
0000286d: JUMP
0000286e: JUMPDEST
0000286f: PUSH1 0x40
00002871: MLOAD
00002872: DUP1
00002873: SWAP2
00002874: SUB
00002875: SWAP1
00002876: REVERT
00002877: JUMPDEST
00002878: PUSH2 0x2882
0000287b: DUP4
0000287c: DUP4
0000287d: DUP4
0000287e: PUSH2 0x2f20
00002881: JUMP
00002882: JUMPDEST
00002883: PUSH1 0x00
00002885: PUSH1 0x06
00002887: PUSH1 0x00
00002889: DUP6
0000288a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000289f: AND
000028a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000028b5: AND
000028b6: DUP2
000028b7: MSTORE
000028b8: PUSH1 0x20
000028ba: ADD
000028bb: SWAP1
000028bc: DUP2
000028bd: MSTORE
000028be: PUSH1 0x20
000028c0: ADD
000028c1: PUSH1 0x00
000028c3: KECCAK256
000028c4: SLOAD
000028c5: SWAP1
000028c6: POP
000028c7: DUP2
000028c8: DUP2
000028c9: LT
000028ca: ISZERO
000028cb: PUSH2 0x2909
000028ce: JUMPI
000028cf: PUSH1 0x40
000028d1: MLOAD
000028d2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000028f3: DUP2
000028f4: MSTORE
000028f5: PUSH1 0x04
000028f7: ADD
000028f8: PUSH2 0x2900
000028fb: SWAP1
000028fc: PUSH2 0x56c3
000028ff: JUMP
00002900: JUMPDEST
00002901: PUSH1 0x40
00002903: MLOAD
00002904: DUP1
00002905: SWAP2
00002906: SUB
00002907: SWAP1
00002908: REVERT
00002909: JUMPDEST
0000290a: DUP2
0000290b: DUP2
0000290c: SUB
0000290d: PUSH1 0x06
0000290f: PUSH1 0x00
00002911: DUP7
00002912: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002927: AND
00002928: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000293d: AND
0000293e: DUP2
0000293f: MSTORE
00002940: PUSH1 0x20
00002942: ADD
00002943: SWAP1
00002944: DUP2
00002945: MSTORE
00002946: PUSH1 0x20
00002948: ADD
00002949: PUSH1 0x00
0000294b: KECCAK256
0000294c: DUP2
0000294d: SWAP1
0000294e: SSTORE
0000294f: POP
00002950: DUP2
00002951: PUSH1 0x06
00002953: PUSH1 0x00
00002955: DUP6
00002956: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000296b: AND
0000296c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002981: AND
00002982: DUP2
00002983: MSTORE
00002984: PUSH1 0x20
00002986: ADD
00002987: SWAP1
00002988: DUP2
00002989: MSTORE
0000298a: PUSH1 0x20
0000298c: ADD
0000298d: PUSH1 0x00
0000298f: KECCAK256
00002990: PUSH1 0x00
00002992: DUP3
00002993: DUP3
00002994: SLOAD
00002995: PUSH2 0x299e
00002998: SWAP2
00002999: SWAP1
0000299a: PUSH2 0x481d
0000299d: JUMP
0000299e: JUMPDEST
0000299f: SWAP3
000029a0: POP
000029a1: POP
000029a2: DUP2
000029a3: SWAP1
000029a4: SSTORE
000029a5: POP
000029a6: DUP3
000029a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000029bc: AND
000029bd: DUP5
000029be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000029d3: AND
000029d4: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
000029f5: DUP5
000029f6: PUSH1 0x40
000029f8: MLOAD
000029f9: PUSH2 0x2a02
000029fc: SWAP2
000029fd: SWAP1
000029fe: PUSH2 0x3a94
00002a01: JUMP
00002a02: JUMPDEST
00002a03: PUSH1 0x40
00002a05: MLOAD
00002a06: DUP1
00002a07: SWAP2
00002a08: SUB
00002a09: SWAP1
00002a0a: LOG3
00002a0b: PUSH2 0x2a15
00002a0e: DUP5
00002a0f: DUP5
00002a10: DUP5
00002a11: PUSH2 0x2f25
00002a14: JUMP
00002a15: JUMPDEST
00002a16: POP
00002a17: POP
00002a18: POP
00002a19: POP
00002a1a: JUMP
00002a1b: JUMPDEST
00002a1c: PUSH1 0x00
00002a1e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a33: AND
00002a34: DUP3
00002a35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a4a: AND
00002a4b: SUB
00002a4c: PUSH2 0x2a8a
00002a4f: JUMPI
00002a50: PUSH1 0x40
00002a52: MLOAD
00002a53: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002a74: DUP2
00002a75: MSTORE
00002a76: PUSH1 0x04
00002a78: ADD
00002a79: PUSH2 0x2a81
00002a7c: SWAP1
00002a7d: PUSH2 0x5755
00002a80: JUMP
00002a81: JUMPDEST
00002a82: PUSH1 0x40
00002a84: MLOAD
00002a85: DUP1
00002a86: SWAP2
00002a87: SUB
00002a88: SWAP1
00002a89: REVERT
00002a8a: JUMPDEST
00002a8b: PUSH2 0x2a96
00002a8e: DUP3
00002a8f: PUSH1 0x00
00002a91: DUP4
00002a92: PUSH2 0x2f20
00002a95: JUMP
00002a96: JUMPDEST
00002a97: PUSH1 0x00
00002a99: PUSH1 0x06
00002a9b: PUSH1 0x00
00002a9d: DUP5
00002a9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ab3: AND
00002ab4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ac9: AND
00002aca: DUP2
00002acb: MSTORE
00002acc: PUSH1 0x20
00002ace: ADD
00002acf: SWAP1
00002ad0: DUP2
00002ad1: MSTORE
00002ad2: PUSH1 0x20
00002ad4: ADD
00002ad5: PUSH1 0x00
00002ad7: KECCAK256
00002ad8: SLOAD
00002ad9: SWAP1
00002ada: POP
00002adb: DUP2
00002adc: DUP2
00002add: LT
00002ade: ISZERO
00002adf: PUSH2 0x2b1d
00002ae2: JUMPI
00002ae3: PUSH1 0x40
00002ae5: MLOAD
00002ae6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002b07: DUP2
00002b08: MSTORE
00002b09: PUSH1 0x04
00002b0b: ADD
00002b0c: PUSH2 0x2b14
00002b0f: SWAP1
00002b10: PUSH2 0x57e7
00002b13: JUMP
00002b14: JUMPDEST
00002b15: PUSH1 0x40
00002b17: MLOAD
00002b18: DUP1
00002b19: SWAP2
00002b1a: SUB
00002b1b: SWAP1
00002b1c: REVERT
00002b1d: JUMPDEST
00002b1e: DUP2
00002b1f: DUP2
00002b20: SUB
00002b21: PUSH1 0x06
00002b23: PUSH1 0x00
00002b25: DUP6
00002b26: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b3b: AND
00002b3c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b51: AND
00002b52: DUP2
00002b53: MSTORE
00002b54: PUSH1 0x20
00002b56: ADD
00002b57: SWAP1
00002b58: DUP2
00002b59: MSTORE
00002b5a: PUSH1 0x20
00002b5c: ADD
00002b5d: PUSH1 0x00
00002b5f: KECCAK256
00002b60: DUP2
00002b61: SWAP1
00002b62: SSTORE
00002b63: POP
00002b64: DUP2
00002b65: PUSH1 0x08
00002b67: PUSH1 0x00
00002b69: DUP3
00002b6a: DUP3
00002b6b: SLOAD
00002b6c: PUSH2 0x2b75
00002b6f: SWAP2
00002b70: SWAP1
00002b71: PUSH2 0x4981
00002b74: JUMP
00002b75: JUMPDEST
00002b76: SWAP3
00002b77: POP
00002b78: POP
00002b79: DUP2
00002b7a: SWAP1
00002b7b: SSTORE
00002b7c: POP
00002b7d: PUSH1 0x00
00002b7f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b94: AND
00002b95: DUP4
00002b96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002bab: AND
00002bac: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00002bcd: DUP5
00002bce: PUSH1 0x40
00002bd0: MLOAD
00002bd1: PUSH2 0x2bda
00002bd4: SWAP2
00002bd5: SWAP1
00002bd6: PUSH2 0x3a94
00002bd9: JUMP
00002bda: JUMPDEST
00002bdb: PUSH1 0x40
00002bdd: MLOAD
00002bde: DUP1
00002bdf: SWAP2
00002be0: SUB
00002be1: SWAP1
00002be2: LOG3
00002be3: PUSH2 0x2bee
00002be6: DUP4
00002be7: PUSH1 0x00
00002be9: DUP5
00002bea: PUSH2 0x2f25
00002bed: JUMP
00002bee: JUMPDEST
00002bef: POP
00002bf0: POP
00002bf1: POP
00002bf2: JUMP
00002bf3: JUMPDEST
00002bf4: PUSH1 0x00
00002bf6: PUSH2 0x2c01
00002bf9: DUP9
00002bfa: DUP9
00002bfb: DUP9
00002bfc: DUP9
00002bfd: PUSH2 0x302c
00002c00: JUMP
00002c01: JUMPDEST
00002c02: SWAP1
00002c03: POP
00002c04: PUSH1 0x00
00002c06: DUP1
00002c07: DUP10
00002c08: PUSH1 0x40
00002c0a: MLOAD
00002c0b: PUSH1 0x20
00002c0d: ADD
00002c0e: PUSH2 0x2c17
00002c11: SWAP2
00002c12: SWAP1
00002c13: PUSH2 0x451a
00002c16: JUMP
00002c17: JUMPDEST
00002c18: PUSH1 0x40
00002c1a: MLOAD
00002c1b: PUSH1 0x20
00002c1d: DUP2
00002c1e: DUP4
00002c1f: SUB
00002c20: SUB
00002c21: DUP2
00002c22: MSTORE
00002c23: SWAP1
00002c24: PUSH1 0x40
00002c26: MSTORE
00002c27: DUP9
00002c28: DUP9
00002c29: PUSH1 0x40
00002c2b: MLOAD
00002c2c: PUSH1 0x20
00002c2e: ADD
00002c2f: PUSH2 0x2c3b
00002c32: SWAP5
00002c33: SWAP4
00002c34: SWAP3
00002c35: SWAP2
00002c36: SWAP1
00002c37: PUSH2 0x5807
00002c3a: JUMP
00002c3b: JUMPDEST
00002c3c: PUSH1 0x40
00002c3e: MLOAD
00002c3f: PUSH1 0x20
00002c41: DUP2
00002c42: DUP4
00002c43: SUB
00002c44: SUB
00002c45: DUP2
00002c46: MSTORE
00002c47: SWAP1
00002c48: PUSH1 0x40
00002c4a: MSTORE
00002c4b: SWAP1
00002c4c: POP
00002c4d: PUSH1 0x05
00002c4f: PUSH1 0x00
00002c51: SWAP1
00002c52: SLOAD
00002c53: SWAP1
00002c54: PUSH2 0x0100
00002c57: EXP
00002c58: SWAP1
00002c59: DIV
00002c5a: PUSH1 0xff
00002c5c: AND
00002c5d: ISZERO
00002c5e: PUSH2 0x2c74
00002c61: JUMPI
00002c62: PUSH2 0x2c6f
00002c65: DUP9
00002c66: PUSH1 0x00
00002c68: DUP6
00002c69: PUSH1 0x00
00002c6b: PUSH2 0x3084
00002c6e: JUMP
00002c6f: JUMPDEST
00002c70: PUSH2 0x2cb9
00002c73: JUMP
00002c74: JUMPDEST
00002c75: PUSH1 0x00
00002c77: DUP4
00002c78: MLOAD
00002c79: EQ
00002c7a: PUSH2 0x2cb8
00002c7d: JUMPI
00002c7e: PUSH1 0x40
00002c80: MLOAD
00002c81: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002ca2: DUP2
00002ca3: MSTORE
00002ca4: PUSH1 0x04
00002ca6: ADD
00002ca7: PUSH2 0x2caf
00002caa: SWAP1
00002cab: PUSH2 0x58cc
00002cae: JUMP
00002caf: JUMPDEST
00002cb0: PUSH1 0x40
00002cb2: MLOAD
00002cb3: DUP1
00002cb4: SWAP2
00002cb5: SUB
00002cb6: SWAP1
00002cb7: REVERT
00002cb8: JUMPDEST
00002cb9: JUMPDEST
00002cba: PUSH2 0x2cc7
00002cbd: DUP9
00002cbe: DUP3
00002cbf: DUP8
00002cc0: DUP8
00002cc1: DUP8
00002cc2: DUP8
00002cc3: PUSH2 0x3163
00002cc6: JUMP
00002cc7: JUMPDEST
00002cc8: POP
00002cc9: POP
00002cca: POP
00002ccb: POP
00002ccc: POP
00002ccd: POP
00002cce: POP
00002ccf: POP
00002cd0: POP
00002cd1: JUMP
00002cd2: JUMPDEST
00002cd3: PUSH1 0x00
00002cd5: PUSH1 0x20
00002cd7: DUP3
00002cd8: ADD
00002cd9: MLOAD
00002cda: SWAP1
00002cdb: POP
00002cdc: PUSH1 0x00
00002cde: PUSH2 0xffff
00002ce1: AND
00002ce2: DUP2
00002ce3: PUSH2 0xffff
00002ce6: AND
00002ce7: SUB
00002ce8: PUSH2 0x2cfc
00002ceb: JUMPI
00002cec: PUSH2 0x2cf7
00002cef: DUP6
00002cf0: DUP6
00002cf1: DUP6
00002cf2: DUP6
00002cf3: PUSH2 0x32ee
00002cf6: JUMP
00002cf7: JUMPDEST
00002cf8: PUSH2 0x2d37
00002cfb: JUMP
00002cfc: JUMPDEST
00002cfd: PUSH1 0x40
00002cff: MLOAD
00002d00: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002d21: DUP2
00002d22: MSTORE
00002d23: PUSH1 0x04
00002d25: ADD
00002d26: PUSH2 0x2d2e
00002d29: SWAP1
00002d2a: PUSH2 0x5938
00002d2d: JUMP
00002d2e: JUMPDEST
00002d2f: PUSH1 0x40
00002d31: MLOAD
00002d32: DUP1
00002d33: SWAP2
00002d34: SUB
00002d35: SWAP1
00002d36: REVERT
00002d37: JUMPDEST
00002d38: POP
00002d39: POP
00002d3a: POP
00002d3b: POP
00002d3c: POP
00002d3d: JUMP
00002d3e: JUMPDEST
00002d3f: PUSH1 0x00
00002d41: DUP1
00002d42: PUSH1 0x00
00002d44: SWAP1
00002d45: SLOAD
00002d46: SWAP1
00002d47: PUSH2 0x0100
00002d4a: EXP
00002d4b: SWAP1
00002d4c: DIV
00002d4d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d62: AND
00002d63: SWAP1
00002d64: POP
00002d65: DUP2
00002d66: PUSH1 0x00
00002d68: DUP1
00002d69: PUSH2 0x0100
00002d6c: EXP
00002d6d: DUP2
00002d6e: SLOAD
00002d6f: DUP2
00002d70: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d85: MUL
00002d86: NOT
00002d87: AND
00002d88: SWAP1
00002d89: DUP4
00002d8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d9f: AND
00002da0: MUL
00002da1: OR
00002da2: SWAP1
00002da3: SSTORE
00002da4: POP
00002da5: DUP2
00002da6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002dbb: AND
00002dbc: DUP2
00002dbd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002dd2: AND
00002dd3: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002df4: PUSH1 0x40
00002df6: MLOAD
00002df7: PUSH1 0x40
00002df9: MLOAD
00002dfa: DUP1
00002dfb: SWAP2
00002dfc: SUB
00002dfd: SWAP1
00002dfe: LOG3
00002dff: POP
00002e00: POP
00002e01: JUMP
00002e02: JUMPDEST
00002e03: PUSH1 0x60
00002e05: DUP2
00002e06: PUSH1 0x1f
00002e08: DUP4
00002e09: PUSH2 0x2e12
00002e0c: SWAP2
00002e0d: SWAP1
00002e0e: PUSH2 0x481d
00002e11: JUMP
00002e12: JUMPDEST
00002e13: LT
00002e14: ISZERO
00002e15: PUSH2 0x2e53
00002e18: JUMPI
00002e19: PUSH1 0x40
00002e1b: MLOAD
00002e1c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002e3d: DUP2
00002e3e: MSTORE
00002e3f: PUSH1 0x04
00002e41: ADD
00002e42: PUSH2 0x2e4a
00002e45: SWAP1
00002e46: PUSH2 0x59a4
00002e49: JUMP
00002e4a: JUMPDEST
00002e4b: PUSH1 0x40
00002e4d: MLOAD
00002e4e: DUP1
00002e4f: SWAP2
00002e50: SUB
00002e51: SWAP1
00002e52: REVERT
00002e53: JUMPDEST
00002e54: DUP2
00002e55: DUP4
00002e56: PUSH2 0x2e5f
00002e59: SWAP2
00002e5a: SWAP1
00002e5b: PUSH2 0x481d
00002e5e: JUMP
00002e5f: JUMPDEST
00002e60: DUP5
00002e61: MLOAD
00002e62: LT
00002e63: ISZERO
00002e64: PUSH2 0x2ea2
00002e67: JUMPI
00002e68: PUSH1 0x40
00002e6a: MLOAD
00002e6b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002e8c: DUP2
00002e8d: MSTORE
00002e8e: PUSH1 0x04
00002e90: ADD
00002e91: PUSH2 0x2e99
00002e94: SWAP1
00002e95: PUSH2 0x5a10
00002e98: JUMP
00002e99: JUMPDEST
00002e9a: PUSH1 0x40
00002e9c: MLOAD
00002e9d: DUP1
00002e9e: SWAP2
00002e9f: SUB
00002ea0: SWAP1
00002ea1: REVERT
00002ea2: JUMPDEST
00002ea3: PUSH1 0x60
00002ea5: DUP3
00002ea6: ISZERO
00002ea7: PUSH1 0x00
00002ea9: DUP2
00002eaa: EQ
00002eab: PUSH2 0x2ec3
00002eae: JUMPI
00002eaf: PUSH1 0x40
00002eb1: MLOAD
00002eb2: SWAP2
00002eb3: POP
00002eb4: PUSH1 0x00
00002eb6: DUP3
00002eb7: MSTORE
00002eb8: PUSH1 0x20
00002eba: DUP3
00002ebb: ADD
00002ebc: PUSH1 0x40
00002ebe: MSTORE
00002ebf: PUSH2 0x2f14
00002ec2: JUMP
00002ec3: JUMPDEST
00002ec4: PUSH1 0x40
00002ec6: MLOAD
00002ec7: SWAP2
00002ec8: POP
00002ec9: PUSH1 0x1f
00002ecb: DUP5
00002ecc: AND
00002ecd: DUP1
00002ece: ISZERO
00002ecf: PUSH1 0x20
00002ed1: MUL
00002ed2: DUP2
00002ed3: DUP5
00002ed4: ADD
00002ed5: ADD
00002ed6: DUP6
00002ed7: DUP2
00002ed8: ADD
00002ed9: DUP8
00002eda: DUP4
00002edb: ISZERO
00002edc: PUSH1 0x20
00002ede: MUL
00002edf: DUP5
00002ee0: DUP12
00002ee1: ADD
00002ee2: ADD
00002ee3: ADD
00002ee4: JUMPDEST
00002ee5: DUP2
00002ee6: DUP4
00002ee7: LT
00002ee8: ISZERO
00002ee9: PUSH2 0x2f01
00002eec: JUMPI
00002eed: DUP1
00002eee: MLOAD
00002eef: DUP4
00002ef0: MSTORE
00002ef1: PUSH1 0x20
00002ef3: DUP4
00002ef4: ADD
00002ef5: SWAP3
00002ef6: POP
00002ef7: PUSH1 0x20
00002ef9: DUP2
00002efa: ADD
00002efb: SWAP1
00002efc: POP
00002efd: PUSH2 0x2ee4
00002f00: JUMP
00002f01: JUMPDEST
00002f02: POP
00002f03: DUP7
00002f04: DUP6
00002f05: MSTORE
00002f06: PUSH1 0x1f
00002f08: NOT
00002f09: PUSH1 0x1f
00002f0b: DUP4
00002f0c: ADD
00002f0d: AND
00002f0e: PUSH1 0x40
00002f10: MSTORE
00002f11: POP
00002f12: POP
00002f13: POP
00002f14: JUMPDEST
00002f15: POP
00002f16: DUP1
00002f17: SWAP2
00002f18: POP
00002f19: POP
00002f1a: SWAP4
00002f1b: SWAP3
00002f1c: POP
00002f1d: POP
00002f1e: POP
00002f1f: JUMP
00002f20: JUMPDEST
00002f21: POP
00002f22: POP
00002f23: POP
00002f24: JUMP
00002f25: JUMPDEST
00002f26: POP
00002f27: POP
00002f28: POP
00002f29: JUMP
00002f2a: JUMPDEST
00002f2b: PUSH1 0x00
00002f2d: PUSH1 0x60
00002f2f: PUSH1 0x00
00002f31: DUP1
00002f32: PUSH1 0x00
00002f34: DUP7
00002f35: PUSH2 0xffff
00002f38: AND
00002f39: PUSH8 0xffffffffffffffff
00002f42: DUP2
00002f43: GT
00002f44: ISZERO
00002f45: PUSH2 0x2f51
00002f48: JUMPI
00002f49: PUSH2 0x2f50
00002f4c: PUSH2 0x3e26
00002f4f: JUMP
00002f50: JUMPDEST
00002f51: JUMPDEST
00002f52: PUSH1 0x40
00002f54: MLOAD
00002f55: SWAP1
00002f56: DUP1
00002f57: DUP3
00002f58: MSTORE
00002f59: DUP1
00002f5a: PUSH1 0x1f
00002f5c: ADD
00002f5d: PUSH1 0x1f
00002f5f: NOT
00002f60: AND
00002f61: PUSH1 0x20
00002f63: ADD
00002f64: DUP3
00002f65: ADD
00002f66: PUSH1 0x40
00002f68: MSTORE
00002f69: DUP1
00002f6a: ISZERO
00002f6b: PUSH2 0x2f83
00002f6e: JUMPI
00002f6f: DUP2
00002f70: PUSH1 0x20
00002f72: ADD
00002f73: PUSH1 0x01
00002f75: DUP3
00002f76: MUL
00002f77: DUP1
00002f78: CALLDATASIZE
00002f79: DUP4
00002f7a: CALLDATACOPY
00002f7b: DUP1
00002f7c: DUP3
00002f7d: ADD
00002f7e: SWAP2
00002f7f: POP
00002f80: POP
00002f81: SWAP1
00002f82: POP
00002f83: JUMPDEST
00002f84: POP
00002f85: SWAP1
00002f86: POP
00002f87: PUSH1 0x00
00002f89: DUP1
00002f8a: DUP8
00002f8b: MLOAD
00002f8c: PUSH1 0x20
00002f8e: DUP10
00002f8f: ADD
00002f90: PUSH1 0x00
00002f92: DUP14
00002f93: DUP14
00002f94: CALL
00002f95: SWAP2
00002f96: POP
00002f97: RETURNDATASIZE
00002f98: SWAP3
00002f99: POP
00002f9a: DUP7
00002f9b: DUP4
00002f9c: GT
00002f9d: ISZERO
00002f9e: PUSH2 0x2fa5
00002fa1: JUMPI
00002fa2: DUP7
00002fa3: SWAP3
00002fa4: POP
00002fa5: JUMPDEST
00002fa6: DUP3
00002fa7: DUP2
00002fa8: MSTORE
00002fa9: DUP3
00002faa: PUSH1 0x00
00002fac: PUSH1 0x20
00002fae: DUP4
00002faf: ADD
00002fb0: RETURNDATACOPY
00002fb1: DUP2
00002fb2: DUP2
00002fb3: SWAP5
00002fb4: POP
00002fb5: SWAP5
00002fb6: POP
00002fb7: POP
00002fb8: POP
00002fb9: POP
00002fba: SWAP5
00002fbb: POP
00002fbc: SWAP5
00002fbd: SWAP3
00002fbe: POP
00002fbf: POP
00002fc0: POP
00002fc1: JUMP
00002fc2: JUMPDEST
00002fc3: PUSH1 0x00
00002fc5: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000
00002fe6: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003003: NOT
00003004: AND
00003005: DUP3
00003006: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003023: NOT
00003024: AND
00003025: EQ
00003026: SWAP1
00003027: POP
00003028: SWAP2
00003029: SWAP1
0000302a: POP
0000302b: JUMP
0000302c: JUMPDEST
0000302d: PUSH1 0x00
0000302f: DUP5
00003030: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003045: AND
00003046: CALLER
00003047: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000305c: AND
0000305d: EQ
0000305e: PUSH2 0x3070
00003061: JUMPI
00003062: PUSH2 0x306b
00003065: DUP6
00003066: DUP4
00003067: PUSH2 0x3390
0000306a: JUMP
0000306b: JUMPDEST
0000306c: PUSH2 0x307a
0000306f: JUMP
00003070: JUMPDEST
00003071: PUSH2 0x3079
00003074: DUP3
00003075: PUSH2 0x3451
00003078: JUMP
00003079: JUMPDEST
0000307a: JUMPDEST
0000307b: SWAP1
0000307c: POP
0000307d: SWAP5
0000307e: SWAP4
0000307f: POP
00003080: POP
00003081: POP
00003082: POP
00003083: JUMP
00003084: JUMPDEST
00003085: PUSH1 0x00
00003087: PUSH2 0x308f
0000308a: DUP4
0000308b: PUSH2 0x34f8
0000308e: JUMP
0000308f: JUMPDEST
00003090: SWAP1
00003091: POP
00003092: PUSH1 0x00
00003094: DUP3
00003095: PUSH1 0x02
00003097: PUSH1 0x00
00003099: DUP9
0000309a: PUSH2 0xffff
0000309d: AND
0000309e: PUSH2 0xffff
000030a1: AND
000030a2: DUP2
000030a3: MSTORE
000030a4: PUSH1 0x20
000030a6: ADD
000030a7: SWAP1
000030a8: DUP2
000030a9: MSTORE
000030aa: PUSH1 0x20
000030ac: ADD
000030ad: PUSH1 0x00
000030af: KECCAK256
000030b0: PUSH1 0x00
000030b2: DUP8
000030b3: PUSH2 0xffff
000030b6: AND
000030b7: PUSH2 0xffff
000030ba: AND
000030bb: DUP2
000030bc: MSTORE
000030bd: PUSH1 0x20
000030bf: ADD
000030c0: SWAP1
000030c1: DUP2
000030c2: MSTORE
000030c3: PUSH1 0x20
000030c5: ADD
000030c6: PUSH1 0x00
000030c8: KECCAK256
000030c9: SLOAD
000030ca: PUSH2 0x30d3
000030cd: SWAP2
000030ce: SWAP1
000030cf: PUSH2 0x481d
000030d2: JUMP
000030d3: JUMPDEST
000030d4: SWAP1
000030d5: POP
000030d6: PUSH1 0x00
000030d8: DUP2
000030d9: GT
000030da: PUSH2 0x3118
000030dd: JUMPI
000030de: PUSH1 0x40
000030e0: MLOAD
000030e1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003102: DUP2
00003103: MSTORE
00003104: PUSH1 0x04
00003106: ADD
00003107: PUSH2 0x310f
0000310a: SWAP1
0000310b: PUSH2 0x5a7c
0000310e: JUMP
0000310f: JUMPDEST
00003110: PUSH1 0x40
00003112: MLOAD
00003113: DUP1
00003114: SWAP2
00003115: SUB
00003116: SWAP1
00003117: REVERT
00003118: JUMPDEST
00003119: DUP1
0000311a: DUP3
0000311b: LT
0000311c: ISZERO
0000311d: PUSH2 0x315b
00003120: JUMPI
00003121: PUSH1 0x40
00003123: MLOAD
00003124: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003145: DUP2
00003146: MSTORE
00003147: PUSH1 0x04
00003149: ADD
0000314a: PUSH2 0x3152
0000314d: SWAP1
0000314e: PUSH2 0x5ae8
00003151: JUMP
00003152: JUMPDEST
00003153: PUSH1 0x40
00003155: MLOAD
00003156: DUP1
00003157: SWAP2
00003158: SUB
00003159: SWAP1
0000315a: REVERT
0000315b: JUMPDEST
0000315c: POP
0000315d: POP
0000315e: POP
0000315f: POP
00003160: POP
00003161: POP
00003162: JUMP
00003163: JUMPDEST
00003164: PUSH1 0x00
00003166: PUSH1 0x01
00003168: PUSH1 0x00
0000316a: DUP9
0000316b: PUSH2 0xffff
0000316e: AND
0000316f: PUSH2 0xffff
00003172: AND
00003173: DUP2
00003174: MSTORE
00003175: PUSH1 0x20
00003177: ADD
00003178: SWAP1
00003179: DUP2
0000317a: MSTORE
0000317b: PUSH1 0x20
0000317d: ADD
0000317e: PUSH1 0x00
00003180: KECCAK256
00003181: DUP1
00003182: SLOAD
00003183: PUSH2 0x318b
00003186: SWAP1
00003187: PUSH2 0x43c6
0000318a: JUMP
0000318b: JUMPDEST
0000318c: DUP1
0000318d: PUSH1 0x1f
0000318f: ADD
00003190: PUSH1 0x20
00003192: DUP1
00003193: SWAP2
00003194: DIV
00003195: MUL
00003196: PUSH1 0x20
00003198: ADD
00003199: PUSH1 0x40
0000319b: MLOAD
0000319c: SWAP1
0000319d: DUP2
0000319e: ADD
0000319f: PUSH1 0x40
000031a1: MSTORE
000031a2: DUP1
000031a3: SWAP3
000031a4: SWAP2
000031a5: SWAP1
000031a6: DUP2
000031a7: DUP2
000031a8: MSTORE
000031a9: PUSH1 0x20
000031ab: ADD
000031ac: DUP3
000031ad: DUP1
000031ae: SLOAD
000031af: PUSH2 0x31b7
000031b2: SWAP1
000031b3: PUSH2 0x43c6
000031b6: JUMP
000031b7: JUMPDEST
000031b8: DUP1
000031b9: ISZERO
000031ba: PUSH2 0x3204
000031bd: JUMPI
000031be: DUP1
000031bf: PUSH1 0x1f
000031c1: LT
000031c2: PUSH2 0x31d9
000031c5: JUMPI
000031c6: PUSH2 0x0100
000031c9: DUP1
000031ca: DUP4
000031cb: SLOAD
000031cc: DIV
000031cd: MUL
000031ce: DUP4
000031cf: MSTORE
000031d0: SWAP2
000031d1: PUSH1 0x20
000031d3: ADD
000031d4: SWAP2
000031d5: PUSH2 0x3204
000031d8: JUMP
000031d9: JUMPDEST
000031da: DUP3
000031db: ADD
000031dc: SWAP2
000031dd: SWAP1
000031de: PUSH1 0x00
000031e0: MSTORE
000031e1: PUSH1 0x20
000031e3: PUSH1 0x00
000031e5: KECCAK256
000031e6: SWAP1
000031e7: JUMPDEST
000031e8: DUP2
000031e9: SLOAD
000031ea: DUP2
000031eb: MSTORE
000031ec: SWAP1
000031ed: PUSH1 0x01
000031ef: ADD
000031f0: SWAP1
000031f1: PUSH1 0x20
000031f3: ADD
000031f4: DUP1
000031f5: DUP4
000031f6: GT
000031f7: PUSH2 0x31e7
000031fa: JUMPI
000031fb: DUP3
000031fc: SWAP1
000031fd: SUB
000031fe: PUSH1 0x1f
00003200: AND
00003201: DUP3
00003202: ADD
00003203: SWAP2
00003204: JUMPDEST
00003205: POP
00003206: POP
00003207: POP
00003208: POP
00003209: POP
0000320a: SWAP1
0000320b: POP
0000320c: PUSH1 0x00
0000320e: DUP2
0000320f: MLOAD
00003210: SUB
00003211: PUSH2 0x324f
00003214: JUMPI
00003215: PUSH1 0x40
00003217: MLOAD
00003218: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003239: DUP2
0000323a: MSTORE
0000323b: PUSH1 0x04
0000323d: ADD
0000323e: PUSH2 0x3246
00003241: SWAP1
00003242: PUSH2 0x5b7a
00003245: JUMP
00003246: JUMPDEST
00003247: PUSH1 0x40
00003249: MLOAD
0000324a: DUP1
0000324b: SWAP2
0000324c: SUB
0000324d: SWAP1
0000324e: REVERT
0000324f: JUMPDEST
00003250: PUSH32 0x00000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675
00003271: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003286: AND
00003287: PUSH4 0xc5803100
0000328c: DUP4
0000328d: DUP10
0000328e: DUP5
0000328f: DUP11
00003290: DUP11
00003291: DUP11
00003292: DUP11
00003293: PUSH1 0x40
00003295: MLOAD
00003296: DUP9
00003297: PUSH4 0xffffffff
0000329c: AND
0000329d: PUSH1 0xe0
0000329f: SHL
000032a0: DUP2
000032a1: MSTORE
000032a2: PUSH1 0x04
000032a4: ADD
000032a5: PUSH2 0x32b3
000032a8: SWAP7
000032a9: SWAP6
000032aa: SWAP5
000032ab: SWAP4
000032ac: SWAP3
000032ad: SWAP2
000032ae: SWAP1
000032af: PUSH2 0x5ba9
000032b2: JUMP
000032b3: JUMPDEST
000032b4: PUSH1 0x00
000032b6: PUSH1 0x40
000032b8: MLOAD
000032b9: DUP1
000032ba: DUP4
000032bb: SUB
000032bc: DUP2
000032bd: DUP6
000032be: DUP9
000032bf: DUP1
000032c0: EXTCODESIZE
000032c1: ISZERO
000032c2: DUP1
000032c3: ISZERO
000032c4: PUSH2 0x32cc
000032c7: JUMPI
000032c8: PUSH1 0x00
000032ca: DUP1
000032cb: REVERT
000032cc: JUMPDEST
000032cd: POP
000032ce: GAS
000032cf: CALL
000032d0: ISZERO
000032d1: DUP1
000032d2: ISZERO
000032d3: PUSH2 0x32e0
000032d6: JUMPI
000032d7: RETURNDATASIZE
000032d8: PUSH1 0x00
000032da: DUP1
000032db: RETURNDATACOPY
000032dc: RETURNDATASIZE
000032dd: PUSH1 0x00
000032df: REVERT
000032e0: JUMPDEST
000032e1: POP
000032e2: POP
000032e3: POP
000032e4: POP
000032e5: POP
000032e6: POP
000032e7: POP
000032e8: POP
000032e9: POP
000032ea: POP
000032eb: POP
000032ec: POP
000032ed: JUMP
000032ee: JUMPDEST
000032ef: PUSH1 0x00
000032f1: DUP1
000032f2: PUSH1 0x00
000032f4: DUP4
000032f5: DUP1
000032f6: PUSH1 0x20
000032f8: ADD
000032f9: SWAP1
000032fa: MLOAD
000032fb: DUP2
000032fc: ADD
000032fd: SWAP1
000032fe: PUSH2 0x3307
00003301: SWAP2
00003302: SWAP1
00003303: PUSH2 0x5c34
00003306: JUMP
00003307: JUMPDEST
00003308: SWAP4
00003309: POP
0000330a: SWAP4
0000330b: POP
0000330c: SWAP4
0000330d: POP
0000330e: POP
0000330f: PUSH1 0x00
00003311: PUSH2 0x3324
00003314: PUSH1 0x00
00003316: DUP5
00003317: PUSH2 0x354b
0000331a: SWAP1
0000331b: SWAP2
0000331c: SWAP1
0000331d: PUSH4 0xffffffff
00003322: AND
00003323: JUMP
00003324: JUMPDEST
00003325: SWAP1
00003326: POP
00003327: PUSH2 0x3331
0000332a: DUP9
0000332b: DUP3
0000332c: DUP5
0000332d: PUSH2 0x35c1
00003330: JUMP
00003331: JUMPDEST
00003332: DUP1
00003333: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003348: AND
00003349: DUP9
0000334a: PUSH2 0xffff
0000334d: AND
0000334e: PUSH32 0x776434b505c7beb3db155c58df6c88985bf7c31730767e43ec773005059fed7a
0000336f: DUP7
00003370: DUP6
00003371: PUSH1 0x40
00003373: MLOAD
00003374: PUSH2 0x337e
00003377: SWAP3
00003378: SWAP2
00003379: SWAP1
0000337a: PUSH2 0x5cd3
0000337d: JUMP
0000337e: JUMPDEST
0000337f: PUSH1 0x40
00003381: MLOAD
00003382: DUP1
00003383: SWAP2
00003384: SUB
00003385: SWAP1
00003386: LOG3
00003387: POP
00003388: POP
00003389: POP
0000338a: POP
0000338b: POP
0000338c: POP
0000338d: POP
0000338e: POP
0000338f: JUMP
00003390: JUMPDEST
00003391: PUSH1 0x00
00003393: DUP1
00003394: PUSH2 0x339c
00003397: DUP5
00003398: PUSH2 0x1639
0000339b: JUMP
0000339c: JUMPDEST
0000339d: SWAP1
0000339e: POP
0000339f: DUP3
000033a0: DUP2
000033a1: LT
000033a2: ISZERO
000033a3: PUSH2 0x3430
000033a6: JUMPI
000033a7: DUP3
000033a8: CALLVALUE
000033a9: DUP3
000033aa: PUSH2 0x33b3
000033ad: SWAP2
000033ae: SWAP1
000033af: PUSH2 0x481d
000033b2: JUMP
000033b3: JUMPDEST
000033b4: LT
000033b5: ISZERO
000033b6: PUSH2 0x33f4
000033b9: JUMPI
000033ba: PUSH1 0x40
000033bc: MLOAD
000033bd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000033de: DUP2
000033df: MSTORE
000033e0: PUSH1 0x04
000033e2: ADD
000033e3: PUSH2 0x33eb
000033e6: SWAP1
000033e7: PUSH2 0x5d75
000033ea: JUMP
000033eb: JUMPDEST
000033ec: PUSH1 0x40
000033ee: MLOAD
000033ef: DUP1
000033f0: SWAP2
000033f1: SUB
000033f2: SWAP1
000033f3: REVERT
000033f4: JUMPDEST
000033f5: PUSH1 0x00
000033f7: DUP2
000033f8: DUP5
000033f9: PUSH2 0x3402
000033fc: SWAP2
000033fd: SWAP1
000033fe: PUSH2 0x4981
00003401: JUMP
00003402: JUMPDEST
00003403: SWAP1
00003404: POP
00003405: PUSH2 0x340e
00003408: CALLER
00003409: DUP3
0000340a: PUSH2 0x217f
0000340d: JUMP
0000340e: JUMPDEST
0000340f: PUSH2 0x3419
00003412: CALLER
00003413: ADDRESS
00003414: DUP4
00003415: PUSH2 0x2799
00003418: JUMP
00003419: JUMPDEST
0000341a: DUP2
0000341b: SWAP4
0000341c: POP
0000341d: DUP1
0000341e: CALLVALUE
0000341f: PUSH2 0x3428
00003422: SWAP2
00003423: SWAP1
00003424: PUSH2 0x4981
00003427: JUMP
00003428: JUMPDEST
00003429: SWAP3
0000342a: POP
0000342b: POP
0000342c: PUSH2 0x3434
0000342f: JUMP
00003430: JUMPDEST
00003431: CALLVALUE
00003432: SWAP2
00003433: POP
00003434: JUMPDEST
00003435: PUSH2 0x343f
00003438: DUP5
00003439: CALLER
0000343a: DUP6
0000343b: PUSH2 0x270d
0000343e: JUMP
0000343f: JUMPDEST
00003440: PUSH2 0x344a
00003443: DUP5
00003444: ADDRESS
00003445: DUP6
00003446: PUSH2 0x2799
00003449: JUMP
0000344a: JUMPDEST
0000344b: POP
0000344c: SWAP3
0000344d: SWAP2
0000344e: POP
0000344f: POP
00003450: JUMP
00003451: JUMPDEST
00003452: PUSH1 0x00
00003454: DUP1
00003455: PUSH2 0x345d
00003458: CALLER
00003459: PUSH2 0x1639
0000345c: JUMP
0000345d: JUMPDEST
0000345e: SWAP1
0000345f: POP
00003460: DUP3
00003461: DUP2
00003462: LT
00003463: ISZERO
00003464: PUSH2 0x34e3
00003467: JUMPI
00003468: DUP3
00003469: CALLVALUE
0000346a: DUP3
0000346b: PUSH2 0x3474
0000346e: SWAP2
0000346f: SWAP1
00003470: PUSH2 0x481d
00003473: JUMP
00003474: JUMPDEST
00003475: LT
00003476: ISZERO
00003477: PUSH2 0x34b5
0000347a: JUMPI
0000347b: PUSH1 0x40
0000347d: MLOAD
0000347e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000349f: DUP2
000034a0: MSTORE
000034a1: PUSH1 0x04
000034a3: ADD
000034a4: PUSH2 0x34ac
000034a7: SWAP1
000034a8: PUSH2 0x5d75
000034ab: JUMP
000034ac: JUMPDEST
000034ad: PUSH1 0x40
000034af: MLOAD
000034b0: DUP1
000034b1: SWAP2
000034b2: SUB
000034b3: SWAP1
000034b4: REVERT
000034b5: JUMPDEST
000034b6: PUSH1 0x00
000034b8: DUP2
000034b9: DUP5
000034ba: PUSH2 0x34c3
000034bd: SWAP2
000034be: SWAP1
000034bf: PUSH2 0x4981
000034c2: JUMP
000034c3: JUMPDEST
000034c4: SWAP1
000034c5: POP
000034c6: PUSH2 0x34cf
000034c9: CALLER
000034ca: DUP3
000034cb: PUSH2 0x217f
000034ce: JUMP
000034cf: JUMPDEST
000034d0: DUP1
000034d1: CALLVALUE
000034d2: PUSH2 0x34db
000034d5: SWAP2
000034d6: SWAP1
000034d7: PUSH2 0x4981
000034da: JUMP
000034db: JUMPDEST
000034dc: SWAP3
000034dd: POP
000034de: POP
000034df: PUSH2 0x34e7
000034e2: JUMP
000034e3: JUMPDEST
000034e4: CALLVALUE
000034e5: SWAP2
000034e6: POP
000034e7: JUMPDEST
000034e8: PUSH2 0x34f2
000034eb: CALLER
000034ec: ADDRESS
000034ed: DUP6
000034ee: PUSH2 0x2799
000034f1: JUMP
000034f2: JUMPDEST
000034f3: POP
000034f4: SWAP2
000034f5: SWAP1
000034f6: POP
000034f7: JUMP
000034f8: JUMPDEST
000034f9: PUSH1 0x00
000034fb: PUSH1 0x22
000034fd: DUP3
000034fe: MLOAD
000034ff: LT
00003500: ISZERO
00003501: PUSH2 0x353f
00003504: JUMPI
00003505: PUSH1 0x40
00003507: MLOAD
00003508: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003529: DUP2
0000352a: MSTORE
0000352b: PUSH1 0x04
0000352d: ADD
0000352e: PUSH2 0x3536
00003531: SWAP1
00003532: PUSH2 0x5de1
00003535: JUMP
00003536: JUMPDEST
00003537: PUSH1 0x40
00003539: MLOAD
0000353a: DUP1
0000353b: SWAP2
0000353c: SUB
0000353d: SWAP1
0000353e: REVERT
0000353f: JUMPDEST
00003540: PUSH1 0x22
00003542: DUP3
00003543: ADD
00003544: MLOAD
00003545: SWAP1
00003546: POP
00003547: SWAP2
00003548: SWAP1
00003549: POP
0000354a: JUMP
0000354b: JUMPDEST
0000354c: PUSH1 0x00
0000354e: PUSH1 0x14
00003550: DUP3
00003551: PUSH2 0x355a
00003554: SWAP2
00003555: SWAP1
00003556: PUSH2 0x481d
00003559: JUMP
0000355a: JUMPDEST
0000355b: DUP4
0000355c: MLOAD
0000355d: LT
0000355e: ISZERO
0000355f: PUSH2 0x359d
00003562: JUMPI
00003563: PUSH1 0x40
00003565: MLOAD
00003566: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003587: DUP2
00003588: MSTORE
00003589: PUSH1 0x04
0000358b: ADD
0000358c: PUSH2 0x3594
0000358f: SWAP1
00003590: PUSH2 0x5e4d
00003593: JUMP
00003594: JUMPDEST
00003595: PUSH1 0x40
00003597: MLOAD
00003598: DUP1
00003599: SWAP2
0000359a: SUB
0000359b: SWAP1
0000359c: REVERT
0000359d: JUMPDEST
0000359e: PUSH1 0x00
000035a0: PUSH13 0x01000000000000000000000000
000035ae: DUP4
000035af: PUSH1 0x20
000035b1: DUP7
000035b2: ADD
000035b3: ADD
000035b4: MLOAD
000035b5: DIV
000035b6: SWAP1
000035b7: POP
000035b8: DUP1
000035b9: SWAP2
000035ba: POP
000035bb: POP
000035bc: SWAP3
000035bd: SWAP2
000035be: POP
000035bf: POP
000035c0: JUMP
000035c1: JUMPDEST
000035c2: PUSH2 0x35cb
000035c5: ADDRESS
000035c6: DUP3
000035c7: PUSH2 0x2a1b
000035ca: JUMP
000035cb: JUMPDEST
000035cc: PUSH1 0x00
000035ce: DUP3
000035cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000035e4: AND
000035e5: DUP3
000035e6: PUSH1 0x40
000035e8: MLOAD
000035e9: PUSH2 0x35f1
000035ec: SWAP1
000035ed: PUSH2 0x476d
000035f0: JUMP
000035f1: JUMPDEST
000035f2: PUSH1 0x00
000035f4: PUSH1 0x40
000035f6: MLOAD
000035f7: DUP1
000035f8: DUP4
000035f9: SUB
000035fa: DUP2
000035fb: DUP6
000035fc: DUP8
000035fd: GAS
000035fe: CALL
000035ff: SWAP3
00003600: POP
00003601: POP
00003602: POP
00003603: RETURNDATASIZE
00003604: DUP1
00003605: PUSH1 0x00
00003607: DUP2
00003608: EQ
00003609: PUSH2 0x362e
0000360c: JUMPI
0000360d: PUSH1 0x40
0000360f: MLOAD
00003610: SWAP2
00003611: POP
00003612: PUSH1 0x1f
00003614: NOT
00003615: PUSH1 0x3f
00003617: RETURNDATASIZE
00003618: ADD
00003619: AND
0000361a: DUP3
0000361b: ADD
0000361c: PUSH1 0x40
0000361e: MSTORE
0000361f: RETURNDATASIZE
00003620: DUP3
00003621: MSTORE
00003622: RETURNDATASIZE
00003623: PUSH1 0x00
00003625: PUSH1 0x20
00003627: DUP5
00003628: ADD
00003629: RETURNDATACOPY
0000362a: PUSH2 0x3633
0000362d: JUMP
0000362e: JUMPDEST
0000362f: PUSH1 0x60
00003631: SWAP2
00003632: POP
00003633: JUMPDEST
00003634: POP
00003635: POP
00003636: SWAP1
00003637: POP
00003638: DUP1
00003639: PUSH2 0x3677
0000363c: JUMPI
0000363d: PUSH1 0x40
0000363f: MLOAD
00003640: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003661: DUP2
00003662: MSTORE
00003663: PUSH1 0x04
00003665: ADD
00003666: PUSH2 0x366e
00003669: SWAP1
0000366a: PUSH2 0x5eb9
0000366d: JUMP
0000366e: JUMPDEST
0000366f: PUSH1 0x40
00003671: MLOAD
00003672: DUP1
00003673: SWAP2
00003674: SUB
00003675: SWAP1
00003676: REVERT
00003677: JUMPDEST
00003678: POP
00003679: POP
0000367a: POP
0000367b: POP
0000367c: JUMP
0000367d: JUMPDEST
0000367e: PUSH1 0x00
00003680: PUSH1 0x40
00003682: MLOAD
00003683: SWAP1
00003684: POP
00003685: SWAP1
00003686: JUMP
00003687: JUMPDEST
00003688: PUSH1 0x00
0000368a: DUP1
0000368b: REVERT
0000368c: JUMPDEST
0000368d: PUSH1 0x00
0000368f: DUP1
00003690: REVERT
00003691: JUMPDEST
00003692: PUSH1 0x00
00003694: PUSH2 0xffff
00003697: DUP3
00003698: AND
00003699: SWAP1
0000369a: POP
0000369b: SWAP2
0000369c: SWAP1
0000369d: POP
0000369e: JUMP
0000369f: JUMPDEST
000036a0: PUSH2 0x36a8
000036a3: DUP2
000036a4: PUSH2 0x3691
000036a7: JUMP
000036a8: JUMPDEST
000036a9: DUP2
000036aa: EQ
000036ab: PUSH2 0x36b3
000036ae: JUMPI
000036af: PUSH1 0x00
000036b1: DUP1
000036b2: REVERT
000036b3: JUMPDEST
000036b4: POP
000036b5: JUMP
000036b6: JUMPDEST
000036b7: PUSH1 0x00
000036b9: DUP2
000036ba: CALLDATALOAD
000036bb: SWAP1
000036bc: POP
000036bd: PUSH2 0x36c5
000036c0: DUP2
000036c1: PUSH2 0x369f
000036c4: JUMP
000036c5: JUMPDEST
000036c6: SWAP3
000036c7: SWAP2
000036c8: POP
000036c9: POP
000036ca: JUMP
000036cb: JUMPDEST
000036cc: PUSH1 0x00
000036ce: DUP1
000036cf: REVERT
000036d0: JUMPDEST
000036d1: PUSH1 0x00
000036d3: DUP1
000036d4: REVERT
000036d5: JUMPDEST
000036d6: PUSH1 0x00
000036d8: DUP1
000036d9: REVERT
000036da: JUMPDEST
000036db: PUSH1 0x00
000036dd: DUP1
000036de: DUP4
000036df: PUSH1 0x1f
000036e1: DUP5
000036e2: ADD
000036e3: SLT
000036e4: PUSH2 0x36f0
000036e7: JUMPI
000036e8: PUSH2 0x36ef
000036eb: PUSH2 0x36cb
000036ee: JUMP
000036ef: JUMPDEST
000036f0: JUMPDEST
000036f1: DUP3
000036f2: CALLDATALOAD
000036f3: SWAP1
000036f4: POP
000036f5: PUSH8 0xffffffffffffffff
000036fe: DUP2
000036ff: GT
00003700: ISZERO
00003701: PUSH2 0x370d
00003704: JUMPI
00003705: PUSH2 0x370c
00003708: PUSH2 0x36d0
0000370b: JUMP
0000370c: JUMPDEST
0000370d: JUMPDEST
0000370e: PUSH1 0x20
00003710: DUP4
00003711: ADD
00003712: SWAP2
00003713: POP
00003714: DUP4
00003715: PUSH1 0x01
00003717: DUP3
00003718: MUL
00003719: DUP4
0000371a: ADD
0000371b: GT
0000371c: ISZERO
0000371d: PUSH2 0x3729
00003720: JUMPI
00003721: PUSH2 0x3728
00003724: PUSH2 0x36d5
00003727: JUMP
00003728: JUMPDEST
00003729: JUMPDEST
0000372a: SWAP3
0000372b: POP
0000372c: SWAP3
0000372d: SWAP1
0000372e: POP
0000372f: JUMP
00003730: JUMPDEST
00003731: PUSH1 0x00
00003733: PUSH8 0xffffffffffffffff
0000373c: DUP3
0000373d: AND
0000373e: SWAP1
0000373f: POP
00003740: SWAP2
00003741: SWAP1
00003742: POP
00003743: JUMP
00003744: JUMPDEST
00003745: PUSH2 0x374d
00003748: DUP2
00003749: PUSH2 0x3730
0000374c: JUMP
0000374d: JUMPDEST
0000374e: DUP2
0000374f: EQ
00003750: PUSH2 0x3758
00003753: JUMPI
00003754: PUSH1 0x00
00003756: DUP1
00003757: REVERT
00003758: JUMPDEST
00003759: POP
0000375a: JUMP
0000375b: JUMPDEST
0000375c: PUSH1 0x00
0000375e: DUP2
0000375f: CALLDATALOAD
00003760: SWAP1
00003761: POP
00003762: PUSH2 0x376a
00003765: DUP2
00003766: PUSH2 0x3744
00003769: JUMP
0000376a: JUMPDEST
0000376b: SWAP3
0000376c: SWAP2
0000376d: POP
0000376e: POP
0000376f: JUMP
00003770: JUMPDEST
00003771: PUSH1 0x00
00003773: DUP1
00003774: PUSH1 0x00
00003776: DUP1
00003777: PUSH1 0x00
00003779: DUP1
0000377a: PUSH1 0x80
0000377c: DUP8
0000377d: DUP10
0000377e: SUB
0000377f: SLT
00003780: ISZERO
00003781: PUSH2 0x378d
00003784: JUMPI
00003785: PUSH2 0x378c
00003788: PUSH2 0x3687
0000378b: JUMP
0000378c: JUMPDEST
0000378d: JUMPDEST
0000378e: PUSH1 0x00
00003790: PUSH2 0x379b
00003793: DUP10
00003794: DUP3
00003795: DUP11
00003796: ADD
00003797: PUSH2 0x36b6
0000379a: JUMP
0000379b: JUMPDEST
0000379c: SWAP7
0000379d: POP
0000379e: POP
0000379f: PUSH1 0x20
000037a1: DUP8
000037a2: ADD
000037a3: CALLDATALOAD
000037a4: PUSH8 0xffffffffffffffff
000037ad: DUP2
000037ae: GT
000037af: ISZERO
000037b0: PUSH2 0x37bc
000037b3: JUMPI
000037b4: PUSH2 0x37bb
000037b7: PUSH2 0x368c
000037ba: JUMP
000037bb: JUMPDEST
000037bc: JUMPDEST
000037bd: PUSH2 0x37c8
000037c0: DUP10
000037c1: DUP3
000037c2: DUP11
000037c3: ADD
000037c4: PUSH2 0x36da
000037c7: JUMP
000037c8: JUMPDEST
000037c9: SWAP6
000037ca: POP
000037cb: SWAP6
000037cc: POP
000037cd: POP
000037ce: PUSH1 0x40
000037d0: PUSH2 0x37db
000037d3: DUP10
000037d4: DUP3
000037d5: DUP11
000037d6: ADD
000037d7: PUSH2 0x375b
000037da: JUMP
000037db: JUMPDEST
000037dc: SWAP4
000037dd: POP
000037de: POP
000037df: PUSH1 0x60
000037e1: DUP8
000037e2: ADD
000037e3: CALLDATALOAD
000037e4: PUSH8 0xffffffffffffffff
000037ed: DUP2
000037ee: GT
000037ef: ISZERO
000037f0: PUSH2 0x37fc
000037f3: JUMPI
000037f4: PUSH2 0x37fb
000037f7: PUSH2 0x368c
000037fa: JUMP
000037fb: JUMPDEST
000037fc: JUMPDEST
000037fd: PUSH2 0x3808
00003800: DUP10
00003801: DUP3
00003802: DUP11
00003803: ADD
00003804: PUSH2 0x36da
00003807: JUMP
00003808: JUMPDEST
00003809: SWAP3
0000380a: POP
0000380b: SWAP3
0000380c: POP
0000380d: POP
0000380e: SWAP3
0000380f: SWAP6
00003810: POP
00003811: SWAP3
00003812: SWAP6
00003813: POP
00003814: SWAP3
00003815: SWAP6
00003816: JUMP
00003817: JUMPDEST
00003818: PUSH1 0x00
0000381a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000383b: DUP3
0000383c: AND
0000383d: SWAP1
0000383e: POP
0000383f: SWAP2
00003840: SWAP1
00003841: POP
00003842: JUMP
00003843: JUMPDEST
00003844: PUSH2 0x384c
00003847: DUP2
00003848: PUSH2 0x3817
0000384b: JUMP
0000384c: JUMPDEST
0000384d: DUP2
0000384e: EQ
0000384f: PUSH2 0x3857
00003852: JUMPI
00003853: PUSH1 0x00
00003855: DUP1
00003856: REVERT
00003857: JUMPDEST
00003858: POP
00003859: JUMP
0000385a: JUMPDEST
0000385b: PUSH1 0x00
0000385d: DUP2
0000385e: CALLDATALOAD
0000385f: SWAP1
00003860: POP
00003861: PUSH2 0x3869
00003864: DUP2
00003865: PUSH2 0x3843
00003868: JUMP
00003869: JUMPDEST
0000386a: SWAP3
0000386b: SWAP2
0000386c: POP
0000386d: POP
0000386e: JUMP
0000386f: JUMPDEST
00003870: PUSH1 0x00
00003872: PUSH1 0x20
00003874: DUP3
00003875: DUP5
00003876: SUB
00003877: SLT
00003878: ISZERO
00003879: PUSH2 0x3885
0000387c: JUMPI
0000387d: PUSH2 0x3884
00003880: PUSH2 0x3687
00003883: JUMP
00003884: JUMPDEST
00003885: JUMPDEST
00003886: PUSH1 0x00
00003888: PUSH2 0x3893
0000388b: DUP5
0000388c: DUP3
0000388d: DUP6
0000388e: ADD
0000388f: PUSH2 0x385a
00003892: JUMP
00003893: JUMPDEST
00003894: SWAP2
00003895: POP
00003896: POP
00003897: SWAP3
00003898: SWAP2
00003899: POP
0000389a: POP
0000389b: JUMP
0000389c: JUMPDEST
0000389d: PUSH1 0x00
0000389f: DUP2
000038a0: ISZERO
000038a1: ISZERO
000038a2: SWAP1
000038a3: POP
000038a4: SWAP2
000038a5: SWAP1
000038a6: POP
000038a7: JUMP
000038a8: JUMPDEST
000038a9: PUSH2 0x38b1
000038ac: DUP2
000038ad: PUSH2 0x389c
000038b0: JUMP
000038b1: JUMPDEST
000038b2: DUP3
000038b3: MSTORE
000038b4: POP
000038b5: POP
000038b6: JUMP
000038b7: JUMPDEST
000038b8: PUSH1 0x00
000038ba: PUSH1 0x20
000038bc: DUP3
000038bd: ADD
000038be: SWAP1
000038bf: POP
000038c0: PUSH2 0x38cc
000038c3: PUSH1 0x00
000038c5: DUP4
000038c6: ADD
000038c7: DUP5
000038c8: PUSH2 0x38a8
000038cb: JUMP
000038cc: JUMPDEST
000038cd: SWAP3
000038ce: SWAP2
000038cf: POP
000038d0: POP
000038d1: JUMP
000038d2: JUMPDEST
000038d3: PUSH1 0x00
000038d5: DUP2
000038d6: MLOAD
000038d7: SWAP1
000038d8: POP
000038d9: SWAP2
000038da: SWAP1
000038db: POP
000038dc: JUMP
000038dd: JUMPDEST
000038de: PUSH1 0x00
000038e0: DUP3
000038e1: DUP3
000038e2: MSTORE
000038e3: PUSH1 0x20
000038e5: DUP3
000038e6: ADD
000038e7: SWAP1
000038e8: POP
000038e9: SWAP3
000038ea: SWAP2
000038eb: POP
000038ec: POP
000038ed: JUMP
000038ee: JUMPDEST
000038ef: PUSH1 0x00
000038f1: JUMPDEST
000038f2: DUP4
000038f3: DUP2
000038f4: LT
000038f5: ISZERO
000038f6: PUSH2 0x390c
000038f9: JUMPI
000038fa: DUP1
000038fb: DUP3
000038fc: ADD
000038fd: MLOAD
000038fe: DUP2
000038ff: DUP5
00003900: ADD
00003901: MSTORE
00003902: PUSH1 0x20
00003904: DUP2
00003905: ADD
00003906: SWAP1
00003907: POP
00003908: PUSH2 0x38f1
0000390b: JUMP
0000390c: JUMPDEST
0000390d: PUSH1 0x00
0000390f: DUP5
00003910: DUP5
00003911: ADD
00003912: MSTORE
00003913: POP
00003914: POP
00003915: POP
00003916: POP
00003917: JUMP
00003918: JUMPDEST
00003919: PUSH1 0x00
0000391b: PUSH1 0x1f
0000391d: NOT
0000391e: PUSH1 0x1f
00003920: DUP4
00003921: ADD
00003922: AND
00003923: SWAP1
00003924: POP
00003925: SWAP2
00003926: SWAP1
00003927: POP
00003928: JUMP
00003929: JUMPDEST
0000392a: PUSH1 0x00
0000392c: PUSH2 0x3934
0000392f: DUP3
00003930: PUSH2 0x38d2
00003933: JUMP
00003934: JUMPDEST
00003935: PUSH2 0x393e
00003938: DUP2
00003939: DUP6
0000393a: PUSH2 0x38dd
0000393d: JUMP
0000393e: JUMPDEST
0000393f: SWAP4
00003940: POP
00003941: PUSH2 0x394e
00003944: DUP2
00003945: DUP6
00003946: PUSH1 0x20
00003948: DUP7
00003949: ADD
0000394a: PUSH2 0x38ee
0000394d: JUMP
0000394e: JUMPDEST
0000394f: PUSH2 0x3957
00003952: DUP2
00003953: PUSH2 0x3918
00003956: JUMP
00003957: JUMPDEST
00003958: DUP5
00003959: ADD
0000395a: SWAP2
0000395b: POP
0000395c: POP
0000395d: SWAP3
0000395e: SWAP2
0000395f: POP
00003960: POP
00003961: JUMP
00003962: JUMPDEST
00003963: PUSH1 0x00
00003965: PUSH1 0x20
00003967: DUP3
00003968: ADD
00003969: SWAP1
0000396a: POP
0000396b: DUP2
0000396c: DUP2
0000396d: SUB
0000396e: PUSH1 0x00
00003970: DUP4
00003971: ADD
00003972: MSTORE
00003973: PUSH2 0x397c
00003976: DUP2
00003977: DUP5
00003978: PUSH2 0x3929
0000397b: JUMP
0000397c: JUMPDEST
0000397d: SWAP1
0000397e: POP
0000397f: SWAP3
00003980: SWAP2
00003981: POP
00003982: POP
00003983: JUMP
00003984: JUMPDEST
00003985: PUSH1 0x00
00003987: PUSH1 0x20
00003989: DUP3
0000398a: DUP5
0000398b: SUB
0000398c: SLT
0000398d: ISZERO
0000398e: PUSH2 0x399a
00003991: JUMPI
00003992: PUSH2 0x3999
00003995: PUSH2 0x3687
00003998: JUMP
00003999: JUMPDEST
0000399a: JUMPDEST
0000399b: PUSH1 0x00
0000399d: PUSH2 0x39a8
000039a0: DUP5
000039a1: DUP3
000039a2: DUP6
000039a3: ADD
000039a4: PUSH2 0x36b6
000039a7: JUMP
000039a8: JUMPDEST
000039a9: SWAP2
000039aa: POP
000039ab: POP
000039ac: SWAP3
000039ad: SWAP2
000039ae: POP
000039af: POP
000039b0: JUMP
000039b1: JUMPDEST
000039b2: PUSH1 0x00
000039b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000039c9: DUP3
000039ca: AND
000039cb: SWAP1
000039cc: POP
000039cd: SWAP2
000039ce: SWAP1
000039cf: POP
000039d0: JUMP
000039d1: JUMPDEST
000039d2: PUSH1 0x00
000039d4: PUSH2 0x39dc
000039d7: DUP3
000039d8: PUSH2 0x39b1
000039db: JUMP
000039dc: JUMPDEST
000039dd: SWAP1
000039de: POP
000039df: SWAP2
000039e0: SWAP1
000039e1: POP
000039e2: JUMP
000039e3: JUMPDEST
000039e4: PUSH2 0x39ec
000039e7: DUP2
000039e8: PUSH2 0x39d1
000039eb: JUMP
000039ec: JUMPDEST
000039ed: DUP2
000039ee: EQ
000039ef: PUSH2 0x39f7
000039f2: JUMPI
000039f3: PUSH1 0x00
000039f5: DUP1
000039f6: REVERT
000039f7: JUMPDEST
000039f8: POP
000039f9: JUMP
000039fa: JUMPDEST
000039fb: PUSH1 0x00
000039fd: DUP2
000039fe: CALLDATALOAD
000039ff: SWAP1
00003a00: POP
00003a01: PUSH2 0x3a09
00003a04: DUP2
00003a05: PUSH2 0x39e3
00003a08: JUMP
00003a09: JUMPDEST
00003a0a: SWAP3
00003a0b: SWAP2
00003a0c: POP
00003a0d: POP
00003a0e: JUMP
00003a0f: JUMPDEST
00003a10: PUSH1 0x00
00003a12: DUP2
00003a13: SWAP1
00003a14: POP
00003a15: SWAP2
00003a16: SWAP1
00003a17: POP
00003a18: JUMP
00003a19: JUMPDEST
00003a1a: PUSH2 0x3a22
00003a1d: DUP2
00003a1e: PUSH2 0x3a0f
00003a21: JUMP
00003a22: JUMPDEST
00003a23: DUP2
00003a24: EQ
00003a25: PUSH2 0x3a2d
00003a28: JUMPI
00003a29: PUSH1 0x00
00003a2b: DUP1
00003a2c: REVERT
00003a2d: JUMPDEST
00003a2e: POP
00003a2f: JUMP
00003a30: JUMPDEST
00003a31: PUSH1 0x00
00003a33: DUP2
00003a34: CALLDATALOAD
00003a35: SWAP1
00003a36: POP
00003a37: PUSH2 0x3a3f
00003a3a: DUP2
00003a3b: PUSH2 0x3a19
00003a3e: JUMP
00003a3f: JUMPDEST
00003a40: SWAP3
00003a41: SWAP2
00003a42: POP
00003a43: POP
00003a44: JUMP
00003a45: JUMPDEST
00003a46: PUSH1 0x00
00003a48: DUP1
00003a49: PUSH1 0x40
00003a4b: DUP4
00003a4c: DUP6
00003a4d: SUB
00003a4e: SLT
00003a4f: ISZERO
00003a50: PUSH2 0x3a5c
00003a53: JUMPI
00003a54: PUSH2 0x3a5b
00003a57: PUSH2 0x3687
00003a5a: JUMP
00003a5b: JUMPDEST
00003a5c: JUMPDEST
00003a5d: PUSH1 0x00
00003a5f: PUSH2 0x3a6a
00003a62: DUP6
00003a63: DUP3
00003a64: DUP7
00003a65: ADD
00003a66: PUSH2 0x39fa
00003a69: JUMP
00003a6a: JUMPDEST
00003a6b: SWAP3
00003a6c: POP
00003a6d: POP
00003a6e: PUSH1 0x20
00003a70: PUSH2 0x3a7b
00003a73: DUP6
00003a74: DUP3
00003a75: DUP7
00003a76: ADD
00003a77: PUSH2 0x3a30
00003a7a: JUMP
00003a7b: JUMPDEST
00003a7c: SWAP2
00003a7d: POP
00003a7e: POP
00003a7f: SWAP3
00003a80: POP
00003a81: SWAP3
00003a82: SWAP1
00003a83: POP
00003a84: JUMP
00003a85: JUMPDEST
00003a86: PUSH2 0x3a8e
00003a89: DUP2
00003a8a: PUSH2 0x3a0f
00003a8d: JUMP
00003a8e: JUMPDEST
00003a8f: DUP3
00003a90: MSTORE
00003a91: POP
00003a92: POP
00003a93: JUMP
00003a94: JUMPDEST
00003a95: PUSH1 0x00
00003a97: PUSH1 0x20
00003a99: DUP3
00003a9a: ADD
00003a9b: SWAP1
00003a9c: POP
00003a9d: PUSH2 0x3aa9
00003aa0: PUSH1 0x00
00003aa2: DUP4
00003aa3: ADD
00003aa4: DUP5
00003aa5: PUSH2 0x3a85
00003aa8: JUMP
00003aa9: JUMPDEST
00003aaa: SWAP3
00003aab: SWAP2
00003aac: POP
00003aad: POP
00003aae: JUMP
00003aaf: JUMPDEST
00003ab0: PUSH1 0x00
00003ab2: DUP1
00003ab3: PUSH1 0x00
00003ab5: PUSH1 0x60
00003ab7: DUP5
00003ab8: DUP7
00003ab9: SUB
00003aba: SLT
00003abb: ISZERO
00003abc: PUSH2 0x3ac8
00003abf: JUMPI
00003ac0: PUSH2 0x3ac7
00003ac3: PUSH2 0x3687
00003ac6: JUMP
00003ac7: JUMPDEST
00003ac8: JUMPDEST
00003ac9: PUSH1 0x00
00003acb: PUSH2 0x3ad6
00003ace: DUP7
00003acf: DUP3
00003ad0: DUP8
00003ad1: ADD
00003ad2: PUSH2 0x39fa
00003ad5: JUMP
00003ad6: JUMPDEST
00003ad7: SWAP4
00003ad8: POP
00003ad9: POP
00003ada: PUSH1 0x20
00003adc: PUSH2 0x3ae7
00003adf: DUP7
00003ae0: DUP3
00003ae1: DUP8
00003ae2: ADD
00003ae3: PUSH2 0x39fa
00003ae6: JUMP
00003ae7: JUMPDEST
00003ae8: SWAP3
00003ae9: POP
00003aea: POP
00003aeb: PUSH1 0x40
00003aed: PUSH2 0x3af8
00003af0: DUP7
00003af1: DUP3
00003af2: DUP8
00003af3: ADD
00003af4: PUSH2 0x3a30
00003af7: JUMP
00003af8: JUMPDEST
00003af9: SWAP2
00003afa: POP
00003afb: POP
00003afc: SWAP3
00003afd: POP
00003afe: SWAP3
00003aff: POP
00003b00: SWAP3
00003b01: JUMP
00003b02: JUMPDEST
00003b03: PUSH2 0x3b0b
00003b06: DUP2
00003b07: PUSH2 0x389c
00003b0a: JUMP
00003b0b: JUMPDEST
00003b0c: DUP2
00003b0d: EQ
00003b0e: PUSH2 0x3b16
00003b11: JUMPI
00003b12: PUSH1 0x00
00003b14: DUP1
00003b15: REVERT
00003b16: JUMPDEST
00003b17: POP
00003b18: JUMP
00003b19: JUMPDEST
00003b1a: PUSH1 0x00
00003b1c: DUP2
00003b1d: CALLDATALOAD
00003b1e: SWAP1
00003b1f: POP
00003b20: PUSH2 0x3b28
00003b23: DUP2
00003b24: PUSH2 0x3b02
00003b27: JUMP
00003b28: JUMPDEST
00003b29: SWAP3
00003b2a: SWAP2
00003b2b: POP
00003b2c: POP
00003b2d: JUMP
00003b2e: JUMPDEST
00003b2f: PUSH1 0x00
00003b31: DUP1
00003b32: PUSH1 0x00
00003b34: DUP1
00003b35: PUSH1 0x00
00003b37: DUP1
00003b38: PUSH1 0x00
00003b3a: PUSH1 0xa0
00003b3c: DUP9
00003b3d: DUP11
00003b3e: SUB
00003b3f: SLT
00003b40: ISZERO
00003b41: PUSH2 0x3b4d
00003b44: JUMPI
00003b45: PUSH2 0x3b4c
00003b48: PUSH2 0x3687
00003b4b: JUMP
00003b4c: JUMPDEST
00003b4d: JUMPDEST
00003b4e: PUSH1 0x00
00003b50: PUSH2 0x3b5b
00003b53: DUP11
00003b54: DUP3
00003b55: DUP12
00003b56: ADD
00003b57: PUSH2 0x36b6
00003b5a: JUMP
00003b5b: JUMPDEST
00003b5c: SWAP8
00003b5d: POP
00003b5e: POP
00003b5f: PUSH1 0x20
00003b61: DUP9
00003b62: ADD
00003b63: CALLDATALOAD
00003b64: PUSH8 0xffffffffffffffff
00003b6d: DUP2
00003b6e: GT
00003b6f: ISZERO
00003b70: PUSH2 0x3b7c
00003b73: JUMPI
00003b74: PUSH2 0x3b7b
00003b77: PUSH2 0x368c
00003b7a: JUMP
00003b7b: JUMPDEST
00003b7c: JUMPDEST
00003b7d: PUSH2 0x3b88
00003b80: DUP11
00003b81: DUP3
00003b82: DUP12
00003b83: ADD
00003b84: PUSH2 0x36da
00003b87: JUMP
00003b88: JUMPDEST
00003b89: SWAP7
00003b8a: POP
00003b8b: SWAP7
00003b8c: POP
00003b8d: POP
00003b8e: PUSH1 0x40
00003b90: PUSH2 0x3b9b
00003b93: DUP11
00003b94: DUP3
00003b95: DUP12
00003b96: ADD
00003b97: PUSH2 0x3a30
00003b9a: JUMP
00003b9b: JUMPDEST
00003b9c: SWAP5
00003b9d: POP
00003b9e: POP
00003b9f: PUSH1 0x60
00003ba1: PUSH2 0x3bac
00003ba4: DUP11
00003ba5: DUP3
00003ba6: DUP12
00003ba7: ADD
00003ba8: PUSH2 0x3b19
00003bab: JUMP
00003bac: JUMPDEST
00003bad: SWAP4
00003bae: POP
00003baf: POP
00003bb0: PUSH1 0x80
00003bb2: DUP9
00003bb3: ADD
00003bb4: CALLDATALOAD
00003bb5: PUSH8 0xffffffffffffffff
00003bbe: DUP2
00003bbf: GT
00003bc0: ISZERO
00003bc1: PUSH2 0x3bcd
00003bc4: JUMPI
00003bc5: PUSH2 0x3bcc
00003bc8: PUSH2 0x368c
00003bcb: JUMP
00003bcc: JUMPDEST
00003bcd: JUMPDEST
00003bce: PUSH2 0x3bd9
00003bd1: DUP11
00003bd2: DUP3
00003bd3: DUP12
00003bd4: ADD
00003bd5: PUSH2 0x36da
00003bd8: JUMP
00003bd9: JUMPDEST
00003bda: SWAP3
00003bdb: POP
00003bdc: SWAP3
00003bdd: POP
00003bde: POP
00003bdf: SWAP3
00003be0: SWAP6
00003be1: SWAP9
00003be2: SWAP2
00003be3: SWAP5
00003be4: SWAP8
00003be5: POP
00003be6: SWAP3
00003be7: SWAP6
00003be8: POP
00003be9: JUMP
00003bea: JUMPDEST
00003beb: PUSH1 0x00
00003bed: PUSH1 0x40
00003bef: DUP3
00003bf0: ADD
00003bf1: SWAP1
00003bf2: POP
00003bf3: PUSH2 0x3bff
00003bf6: PUSH1 0x00
00003bf8: DUP4
00003bf9: ADD
00003bfa: DUP6
00003bfb: PUSH2 0x3a85
00003bfe: JUMP
00003bff: JUMPDEST
00003c00: PUSH2 0x3c0c
00003c03: PUSH1 0x20
00003c05: DUP4
00003c06: ADD
00003c07: DUP5
00003c08: PUSH2 0x3a85
00003c0b: JUMP
00003c0c: JUMPDEST
00003c0d: SWAP4
00003c0e: SWAP3
00003c0f: POP
00003c10: POP
00003c11: POP
00003c12: JUMP
00003c13: JUMPDEST
00003c14: PUSH1 0x00
00003c16: PUSH1 0x20
00003c18: DUP3
00003c19: DUP5
00003c1a: SUB
00003c1b: SLT
00003c1c: ISZERO
00003c1d: PUSH2 0x3c29
00003c20: JUMPI
00003c21: PUSH2 0x3c28
00003c24: PUSH2 0x3687
00003c27: JUMP
00003c28: JUMPDEST
00003c29: JUMPDEST
00003c2a: PUSH1 0x00
00003c2c: PUSH2 0x3c37
00003c2f: DUP5
00003c30: DUP3
00003c31: DUP6
00003c32: ADD
00003c33: PUSH2 0x3a30
00003c36: JUMP
00003c37: JUMPDEST
00003c38: SWAP2
00003c39: POP
00003c3a: POP
00003c3b: SWAP3
00003c3c: SWAP2
00003c3d: POP
00003c3e: POP
00003c3f: JUMP
00003c40: JUMPDEST
00003c41: PUSH1 0x00
00003c43: PUSH1 0xff
00003c45: DUP3
00003c46: AND
00003c47: SWAP1
00003c48: POP
00003c49: SWAP2
00003c4a: SWAP1
00003c4b: POP
00003c4c: JUMP
00003c4d: JUMPDEST
00003c4e: PUSH2 0x3c56
00003c51: DUP2
00003c52: PUSH2 0x3c40
00003c55: JUMP
00003c56: JUMPDEST
00003c57: DUP3
00003c58: MSTORE
00003c59: POP
00003c5a: POP
00003c5b: JUMP
00003c5c: JUMPDEST
00003c5d: PUSH1 0x00
00003c5f: PUSH1 0x20
00003c61: DUP3
00003c62: ADD
00003c63: SWAP1
00003c64: POP
00003c65: PUSH2 0x3c71
00003c68: PUSH1 0x00
00003c6a: DUP4
00003c6b: ADD
00003c6c: DUP5
00003c6d: PUSH2 0x3c4d
00003c70: JUMP
00003c71: JUMPDEST
00003c72: SWAP3
00003c73: SWAP2
00003c74: POP
00003c75: POP
00003c76: JUMP
00003c77: JUMPDEST
00003c78: PUSH1 0x00
00003c7a: DUP1
00003c7b: PUSH1 0x00
00003c7d: PUSH1 0x40
00003c7f: DUP5
00003c80: DUP7
00003c81: SUB
00003c82: SLT
00003c83: ISZERO
00003c84: PUSH2 0x3c90
00003c87: JUMPI
00003c88: PUSH2 0x3c8f
00003c8b: PUSH2 0x3687
00003c8e: JUMP
00003c8f: JUMPDEST
00003c90: JUMPDEST
00003c91: PUSH1 0x00
00003c93: PUSH2 0x3c9e
00003c96: DUP7
00003c97: DUP3
00003c98: DUP8
00003c99: ADD
00003c9a: PUSH2 0x36b6
00003c9d: JUMP
00003c9e: JUMPDEST
00003c9f: SWAP4
00003ca0: POP
00003ca1: POP
00003ca2: PUSH1 0x20
00003ca4: DUP5
00003ca5: ADD
00003ca6: CALLDATALOAD
00003ca7: PUSH8 0xffffffffffffffff
00003cb0: DUP2
00003cb1: GT
00003cb2: ISZERO
00003cb3: PUSH2 0x3cbf
00003cb6: JUMPI
00003cb7: PUSH2 0x3cbe
00003cba: PUSH2 0x368c
00003cbd: JUMP
00003cbe: JUMPDEST
00003cbf: JUMPDEST
00003cc0: PUSH2 0x3ccb
00003cc3: DUP7
00003cc4: DUP3
00003cc5: DUP8
00003cc6: ADD
00003cc7: PUSH2 0x36da
00003cca: JUMP
00003ccb: JUMPDEST
00003ccc: SWAP3
00003ccd: POP
00003cce: SWAP3
00003ccf: POP
00003cd0: POP
00003cd1: SWAP3
00003cd2: POP
00003cd3: SWAP3
00003cd4: POP
00003cd5: SWAP3
00003cd6: JUMP
00003cd7: JUMPDEST
00003cd8: PUSH2 0x3ce0
00003cdb: DUP2
00003cdc: PUSH2 0x3691
00003cdf: JUMP
00003ce0: JUMPDEST
00003ce1: DUP3
00003ce2: MSTORE
00003ce3: POP
00003ce4: POP
00003ce5: JUMP
00003ce6: JUMPDEST
00003ce7: PUSH1 0x00
00003ce9: PUSH1 0x20
00003ceb: DUP3
00003cec: ADD
00003ced: SWAP1
00003cee: POP
00003cef: PUSH2 0x3cfb
00003cf2: PUSH1 0x00
00003cf4: DUP4
00003cf5: ADD
00003cf6: DUP5
00003cf7: PUSH2 0x3cd7
00003cfa: JUMP
00003cfb: JUMPDEST
00003cfc: SWAP3
00003cfd: SWAP2
00003cfe: POP
00003cff: POP
00003d00: JUMP
00003d01: JUMPDEST
00003d02: PUSH1 0x00
00003d04: PUSH2 0x3d0c
00003d07: DUP3
00003d08: PUSH2 0x39b1
00003d0b: JUMP
00003d0c: JUMPDEST
00003d0d: SWAP1
00003d0e: POP
00003d0f: SWAP2
00003d10: SWAP1
00003d11: POP
00003d12: JUMP
00003d13: JUMPDEST
00003d14: PUSH2 0x3d1c
00003d17: DUP2
00003d18: PUSH2 0x3d01
00003d1b: JUMP
00003d1c: JUMPDEST
00003d1d: DUP2
00003d1e: EQ
00003d1f: PUSH2 0x3d27
00003d22: JUMPI
00003d23: PUSH1 0x00
00003d25: DUP1
00003d26: REVERT
00003d27: JUMPDEST
00003d28: POP
00003d29: JUMP
00003d2a: JUMPDEST
00003d2b: PUSH1 0x00
00003d2d: DUP2
00003d2e: CALLDATALOAD
00003d2f: SWAP1
00003d30: POP
00003d31: PUSH2 0x3d39
00003d34: DUP2
00003d35: PUSH2 0x3d13
00003d38: JUMP
00003d39: JUMPDEST
00003d3a: SWAP3
00003d3b: SWAP2
00003d3c: POP
00003d3d: POP
00003d3e: JUMP
00003d3f: JUMPDEST
00003d40: PUSH1 0x00
00003d42: DUP1
00003d43: PUSH1 0x00
00003d45: DUP1
00003d46: PUSH1 0x00
00003d48: DUP1
00003d49: PUSH1 0x00
00003d4b: DUP1
00003d4c: PUSH1 0x00
00003d4e: PUSH1 0xe0
00003d50: DUP11
00003d51: DUP13
00003d52: SUB
00003d53: SLT
00003d54: ISZERO
00003d55: PUSH2 0x3d61
00003d58: JUMPI
00003d59: PUSH2 0x3d60
00003d5c: PUSH2 0x3687
00003d5f: JUMP
00003d60: JUMPDEST
00003d61: JUMPDEST
00003d62: PUSH1 0x00
00003d64: PUSH2 0x3d6f
00003d67: DUP13
00003d68: DUP3
00003d69: DUP14
00003d6a: ADD
00003d6b: PUSH2 0x39fa
00003d6e: JUMP
00003d6f: JUMPDEST
00003d70: SWAP10
00003d71: POP
00003d72: POP
00003d73: PUSH1 0x20
00003d75: PUSH2 0x3d80
00003d78: DUP13
00003d79: DUP3
00003d7a: DUP14
00003d7b: ADD
00003d7c: PUSH2 0x36b6
00003d7f: JUMP
00003d80: JUMPDEST
00003d81: SWAP9
00003d82: POP
00003d83: POP
00003d84: PUSH1 0x40
00003d86: DUP11
00003d87: ADD
00003d88: CALLDATALOAD
00003d89: PUSH8 0xffffffffffffffff
00003d92: DUP2
00003d93: GT
00003d94: ISZERO
00003d95: PUSH2 0x3da1
00003d98: JUMPI
00003d99: PUSH2 0x3da0
00003d9c: PUSH2 0x368c
00003d9f: JUMP
00003da0: JUMPDEST
00003da1: JUMPDEST
00003da2: PUSH2 0x3dad
00003da5: DUP13
00003da6: DUP3
00003da7: DUP14
00003da8: ADD
00003da9: PUSH2 0x36da
00003dac: JUMP
00003dad: JUMPDEST
00003dae: SWAP8
00003daf: POP
00003db0: SWAP8
00003db1: POP
00003db2: POP
00003db3: PUSH1 0x60
00003db5: PUSH2 0x3dc0
00003db8: DUP13
00003db9: DUP3
00003dba: DUP14
00003dbb: ADD
00003dbc: PUSH2 0x3a30
00003dbf: JUMP
00003dc0: JUMPDEST
00003dc1: SWAP6
00003dc2: POP
00003dc3: POP
00003dc4: PUSH1 0x80
00003dc6: PUSH2 0x3dd1
00003dc9: DUP13
00003dca: DUP3
00003dcb: DUP14
00003dcc: ADD
00003dcd: PUSH2 0x3d2a
00003dd0: JUMP
00003dd1: JUMPDEST
00003dd2: SWAP5
00003dd3: POP
00003dd4: POP
00003dd5: PUSH1 0xa0
00003dd7: PUSH2 0x3de2
00003dda: DUP13
00003ddb: DUP3
00003ddc: DUP14
00003ddd: ADD
00003dde: PUSH2 0x39fa
00003de1: JUMP
00003de2: JUMPDEST
00003de3: SWAP4
00003de4: POP
00003de5: POP
00003de6: PUSH1 0xc0
00003de8: DUP11
00003de9: ADD
00003dea: CALLDATALOAD
00003deb: PUSH8 0xffffffffffffffff
00003df4: DUP2
00003df5: GT
00003df6: ISZERO
00003df7: PUSH2 0x3e03
00003dfa: JUMPI
00003dfb: PUSH2 0x3e02
00003dfe: PUSH2 0x368c
00003e01: JUMP
00003e02: JUMPDEST
00003e03: JUMPDEST
00003e04: PUSH2 0x3e0f
00003e07: DUP13
00003e08: DUP3
00003e09: DUP14
00003e0a: ADD
00003e0b: PUSH2 0x36da
00003e0e: JUMP
00003e0f: JUMPDEST
00003e10: SWAP3
00003e11: POP
00003e12: SWAP3
00003e13: POP
00003e14: POP
00003e15: SWAP3
00003e16: SWAP6
00003e17: SWAP9
00003e18: POP
00003e19: SWAP3
00003e1a: SWAP6
00003e1b: SWAP9
00003e1c: POP
00003e1d: SWAP3
00003e1e: SWAP6
00003e1f: SWAP9
00003e20: JUMP
00003e21: JUMPDEST
00003e22: PUSH1 0x00
00003e24: DUP1
00003e25: REVERT
00003e26: JUMPDEST
00003e27: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003e48: PUSH1 0x00
00003e4a: MSTORE
00003e4b: PUSH1 0x41
00003e4d: PUSH1 0x04
00003e4f: MSTORE
00003e50: PUSH1 0x24
00003e52: PUSH1 0x00
00003e54: REVERT
00003e55: JUMPDEST
00003e56: PUSH2 0x3e5e
00003e59: DUP3
00003e5a: PUSH2 0x3918
00003e5d: JUMP
00003e5e: JUMPDEST
00003e5f: DUP2
00003e60: ADD
00003e61: DUP2
00003e62: DUP2
00003e63: LT
00003e64: PUSH8 0xffffffffffffffff
00003e6d: DUP3
00003e6e: GT
00003e6f: OR
00003e70: ISZERO
00003e71: PUSH2 0x3e7d
00003e74: JUMPI
00003e75: PUSH2 0x3e7c
00003e78: PUSH2 0x3e26
00003e7b: JUMP
00003e7c: JUMPDEST
00003e7d: JUMPDEST
00003e7e: DUP1
00003e7f: PUSH1 0x40
00003e81: MSTORE
00003e82: POP
00003e83: POP
00003e84: POP
00003e85: JUMP
00003e86: JUMPDEST
00003e87: PUSH1 0x00
00003e89: PUSH2 0x3e90
00003e8c: PUSH2 0x367d
00003e8f: JUMP
00003e90: JUMPDEST
00003e91: SWAP1
00003e92: POP
00003e93: PUSH2 0x3e9c
00003e96: DUP3
00003e97: DUP3
00003e98: PUSH2 0x3e55
00003e9b: JUMP
00003e9c: JUMPDEST
00003e9d: SWAP2
00003e9e: SWAP1
00003e9f: POP
00003ea0: JUMP
00003ea1: JUMPDEST
00003ea2: PUSH1 0x00
00003ea4: PUSH8 0xffffffffffffffff
00003ead: DUP3
00003eae: GT
00003eaf: ISZERO
00003eb0: PUSH2 0x3ebc
00003eb3: JUMPI
00003eb4: PUSH2 0x3ebb
00003eb7: PUSH2 0x3e26
00003eba: JUMP
00003ebb: JUMPDEST
00003ebc: JUMPDEST
00003ebd: PUSH2 0x3ec5
00003ec0: DUP3
00003ec1: PUSH2 0x3918
00003ec4: JUMP
00003ec5: JUMPDEST
00003ec6: SWAP1
00003ec7: POP
00003ec8: PUSH1 0x20
00003eca: DUP2
00003ecb: ADD
00003ecc: SWAP1
00003ecd: POP
00003ece: SWAP2
00003ecf: SWAP1
00003ed0: POP
00003ed1: JUMP
00003ed2: JUMPDEST
00003ed3: DUP3
00003ed4: DUP2
00003ed5: DUP4
00003ed6: CALLDATACOPY
00003ed7: PUSH1 0x00
00003ed9: DUP4
00003eda: DUP4
00003edb: ADD
00003edc: MSTORE
00003edd: POP
00003ede: POP
00003edf: POP
00003ee0: JUMP
00003ee1: JUMPDEST
00003ee2: PUSH1 0x00
00003ee4: PUSH2 0x3ef4
00003ee7: PUSH2 0x3eef
00003eea: DUP5
00003eeb: PUSH2 0x3ea1
00003eee: JUMP
00003eef: JUMPDEST
00003ef0: PUSH2 0x3e86
00003ef3: JUMP
00003ef4: JUMPDEST
00003ef5: SWAP1
00003ef6: POP
00003ef7: DUP3
00003ef8: DUP2
00003ef9: MSTORE
00003efa: PUSH1 0x20
00003efc: DUP2
00003efd: ADD
00003efe: DUP5
00003eff: DUP5
00003f00: DUP5
00003f01: ADD
00003f02: GT
00003f03: ISZERO
00003f04: PUSH2 0x3f10
00003f07: JUMPI
00003f08: PUSH2 0x3f0f
00003f0b: PUSH2 0x3e21
00003f0e: JUMP
00003f0f: JUMPDEST
00003f10: JUMPDEST
00003f11: PUSH2 0x3f1b
00003f14: DUP5
00003f15: DUP3
00003f16: DUP6
00003f17: PUSH2 0x3ed2
00003f1a: JUMP
00003f1b: JUMPDEST
00003f1c: POP
00003f1d: SWAP4
00003f1e: SWAP3
00003f1f: POP
00003f20: POP
00003f21: POP
00003f22: JUMP
00003f23: JUMPDEST
00003f24: PUSH1 0x00
00003f26: DUP3
00003f27: PUSH1 0x1f
00003f29: DUP4
00003f2a: ADD
00003f2b: SLT
00003f2c: PUSH2 0x3f38
00003f2f: JUMPI
00003f30: PUSH2 0x3f37
00003f33: PUSH2 0x36cb
00003f36: JUMP
00003f37: JUMPDEST
00003f38: JUMPDEST
00003f39: DUP2
00003f3a: CALLDATALOAD
00003f3b: PUSH2 0x3f48
00003f3e: DUP5
00003f3f: DUP3
00003f40: PUSH1 0x20
00003f42: DUP7
00003f43: ADD
00003f44: PUSH2 0x3ee1
00003f47: JUMP
00003f48: JUMPDEST
00003f49: SWAP2
00003f4a: POP
00003f4b: POP
00003f4c: SWAP3
00003f4d: SWAP2
00003f4e: POP
00003f4f: POP
00003f50: JUMP
00003f51: JUMPDEST
00003f52: PUSH1 0x00
00003f54: DUP1
00003f55: PUSH1 0x00
00003f57: PUSH1 0x60
00003f59: DUP5
00003f5a: DUP7
00003f5b: SUB
00003f5c: SLT
00003f5d: ISZERO
00003f5e: PUSH2 0x3f6a
00003f61: JUMPI
00003f62: PUSH2 0x3f69
00003f65: PUSH2 0x3687
00003f68: JUMP
00003f69: JUMPDEST
00003f6a: JUMPDEST
00003f6b: PUSH1 0x00
00003f6d: PUSH2 0x3f78
00003f70: DUP7
00003f71: DUP3
00003f72: DUP8
00003f73: ADD
00003f74: PUSH2 0x36b6
00003f77: JUMP
00003f78: JUMPDEST
00003f79: SWAP4
00003f7a: POP
00003f7b: POP
00003f7c: PUSH1 0x20
00003f7e: DUP5
00003f7f: ADD
00003f80: CALLDATALOAD
00003f81: PUSH8 0xffffffffffffffff
00003f8a: DUP2
00003f8b: GT
00003f8c: ISZERO
00003f8d: PUSH2 0x3f99
00003f90: JUMPI
00003f91: PUSH2 0x3f98
00003f94: PUSH2 0x368c
00003f97: JUMP
00003f98: JUMPDEST
00003f99: JUMPDEST
00003f9a: PUSH2 0x3fa5
00003f9d: DUP7
00003f9e: DUP3
00003f9f: DUP8
00003fa0: ADD
00003fa1: PUSH2 0x3f23
00003fa4: JUMP
00003fa5: JUMPDEST
00003fa6: SWAP3
00003fa7: POP
00003fa8: POP
00003fa9: PUSH1 0x40
00003fab: PUSH2 0x3fb6
00003fae: DUP7
00003faf: DUP3
00003fb0: DUP8
00003fb1: ADD
00003fb2: PUSH2 0x375b
00003fb5: JUMP
00003fb6: JUMPDEST
00003fb7: SWAP2
00003fb8: POP
00003fb9: POP
00003fba: SWAP3
00003fbb: POP
00003fbc: SWAP3
00003fbd: POP
00003fbe: SWAP3
00003fbf: JUMP
00003fc0: JUMPDEST
00003fc1: PUSH1 0x00
00003fc3: DUP2
00003fc4: SWAP1
00003fc5: POP
00003fc6: SWAP2
00003fc7: SWAP1
00003fc8: POP
00003fc9: JUMP
00003fca: JUMPDEST
00003fcb: PUSH2 0x3fd3
00003fce: DUP2
00003fcf: PUSH2 0x3fc0
00003fd2: JUMP
00003fd3: JUMPDEST
00003fd4: DUP3
00003fd5: MSTORE
00003fd6: POP
00003fd7: POP
00003fd8: JUMP
00003fd9: JUMPDEST
00003fda: PUSH1 0x00
00003fdc: PUSH1 0x20
00003fde: DUP3
00003fdf: ADD
00003fe0: SWAP1
00003fe1: POP
00003fe2: PUSH2 0x3fee
00003fe5: PUSH1 0x00
00003fe7: DUP4
00003fe8: ADD
00003fe9: DUP5
00003fea: PUSH2 0x3fca
00003fed: JUMP
00003fee: JUMPDEST
00003fef: SWAP3
00003ff0: SWAP2
00003ff1: POP
00003ff2: POP
00003ff3: JUMP
00003ff4: JUMPDEST
00003ff5: PUSH1 0x00
00003ff7: PUSH1 0x20
00003ff9: DUP3
00003ffa: DUP5
00003ffb: SUB
00003ffc: SLT
00003ffd: ISZERO
00003ffe: PUSH2 0x400a
00004001: JUMPI
00004002: PUSH2 0x4009
00004005: PUSH2 0x3687
00004008: JUMP
00004009: JUMPDEST
0000400a: JUMPDEST
0000400b: PUSH1 0x00
0000400d: PUSH2 0x4018
00004010: DUP5
00004011: DUP3
00004012: DUP6
00004013: ADD
00004014: PUSH2 0x39fa
00004017: JUMP
00004018: JUMPDEST
00004019: SWAP2
0000401a: POP
0000401b: POP
0000401c: SWAP3
0000401d: SWAP2
0000401e: POP
0000401f: POP
00004020: JUMP
00004021: JUMPDEST
00004022: PUSH1 0x00
00004024: DUP2
00004025: MLOAD
00004026: SWAP1
00004027: POP
00004028: SWAP2
00004029: SWAP1
0000402a: POP
0000402b: JUMP
0000402c: JUMPDEST
0000402d: PUSH1 0x00
0000402f: DUP3
00004030: DUP3
00004031: MSTORE
00004032: PUSH1 0x20
00004034: DUP3
00004035: ADD
00004036: SWAP1
00004037: POP
00004038: SWAP3
00004039: SWAP2
0000403a: POP
0000403b: POP
0000403c: JUMP
0000403d: JUMPDEST
0000403e: PUSH1 0x00
00004040: PUSH2 0x4048
00004043: DUP3
00004044: PUSH2 0x4021
00004047: JUMP
00004048: JUMPDEST
00004049: PUSH2 0x4052
0000404c: DUP2
0000404d: DUP6
0000404e: PUSH2 0x402c
00004051: JUMP
00004052: JUMPDEST
00004053: SWAP4
00004054: POP
00004055: PUSH2 0x4062
00004058: DUP2
00004059: DUP6
0000405a: PUSH1 0x20
0000405c: DUP7
0000405d: ADD
0000405e: PUSH2 0x38ee
00004061: JUMP
00004062: JUMPDEST
00004063: PUSH2 0x406b
00004066: DUP2
00004067: PUSH2 0x3918
0000406a: JUMP
0000406b: JUMPDEST
0000406c: DUP5
0000406d: ADD
0000406e: SWAP2
0000406f: POP
00004070: POP
00004071: SWAP3
00004072: SWAP2
00004073: POP
00004074: POP
00004075: JUMP
00004076: JUMPDEST
00004077: PUSH1 0x00
00004079: PUSH1 0x20
0000407b: DUP3
0000407c: ADD
0000407d: SWAP1
0000407e: POP
0000407f: DUP2
00004080: DUP2
00004081: SUB
00004082: PUSH1 0x00
00004084: DUP4
00004085: ADD
00004086: MSTORE
00004087: PUSH2 0x4090
0000408a: DUP2
0000408b: DUP5
0000408c: PUSH2 0x403d
0000408f: JUMP
00004090: JUMPDEST
00004091: SWAP1
00004092: POP
00004093: SWAP3
00004094: SWAP2
00004095: POP
00004096: POP
00004097: JUMP
00004098: JUMPDEST
00004099: PUSH1 0x00
0000409b: DUP1
0000409c: PUSH1 0x40
0000409e: DUP4
0000409f: DUP6
000040a0: SUB
000040a1: SLT
000040a2: ISZERO
000040a3: PUSH2 0x40af
000040a6: JUMPI
000040a7: PUSH2 0x40ae
000040aa: PUSH2 0x3687
000040ad: JUMP
000040ae: JUMPDEST
000040af: JUMPDEST
000040b0: PUSH1 0x00
000040b2: PUSH2 0x40bd
000040b5: DUP6
000040b6: DUP3
000040b7: DUP7
000040b8: ADD
000040b9: PUSH2 0x36b6
000040bc: JUMP
000040bd: JUMPDEST
000040be: SWAP3
000040bf: POP
000040c0: POP
000040c1: PUSH1 0x20
000040c3: PUSH2 0x40ce
000040c6: DUP6
000040c7: DUP3
000040c8: DUP7
000040c9: ADD
000040ca: PUSH2 0x36b6
000040cd: JUMP
000040ce: JUMPDEST
000040cf: SWAP2
000040d0: POP
000040d1: POP
000040d2: SWAP3
000040d3: POP
000040d4: SWAP3
000040d5: SWAP1
000040d6: POP
000040d7: JUMP
000040d8: JUMPDEST
000040d9: PUSH2 0x40e1
000040dc: DUP2
000040dd: PUSH2 0x39d1
000040e0: JUMP
000040e1: JUMPDEST
000040e2: DUP3
000040e3: MSTORE
000040e4: POP
000040e5: POP
000040e6: JUMP
000040e7: JUMPDEST
000040e8: PUSH1 0x00
000040ea: PUSH1 0x20
000040ec: DUP3
000040ed: ADD
000040ee: SWAP1
000040ef: POP
000040f0: PUSH2 0x40fc
000040f3: PUSH1 0x00
000040f5: DUP4
000040f6: ADD
000040f7: DUP5
000040f8: PUSH2 0x40d8
000040fb: JUMP
000040fc: JUMPDEST
000040fd: SWAP3
000040fe: SWAP2
000040ff: POP
00004100: POP
00004101: JUMP
00004102: JUMPDEST
00004103: PUSH1 0x00
00004105: DUP2
00004106: SWAP1
00004107: POP
00004108: SWAP2
00004109: SWAP1
0000410a: POP
0000410b: JUMP
0000410c: JUMPDEST
0000410d: PUSH1 0x00
0000410f: PUSH2 0x4127
00004112: PUSH2 0x4122
00004115: PUSH2 0x411d
00004118: DUP5
00004119: PUSH2 0x39b1
0000411c: JUMP
0000411d: JUMPDEST
0000411e: PUSH2 0x4102
00004121: JUMP
00004122: JUMPDEST
00004123: PUSH2 0x39b1
00004126: JUMP
00004127: JUMPDEST
00004128: SWAP1
00004129: POP
0000412a: SWAP2
0000412b: SWAP1
0000412c: POP
0000412d: JUMP
0000412e: JUMPDEST
0000412f: PUSH1 0x00
00004131: PUSH2 0x4139
00004134: DUP3
00004135: PUSH2 0x410c
00004138: JUMP
00004139: JUMPDEST
0000413a: SWAP1
0000413b: POP
0000413c: SWAP2
0000413d: SWAP1
0000413e: POP
0000413f: JUMP
00004140: JUMPDEST
00004141: PUSH1 0x00
00004143: PUSH2 0x414b
00004146: DUP3
00004147: PUSH2 0x412e
0000414a: JUMP
0000414b: JUMPDEST
0000414c: SWAP1
0000414d: POP
0000414e: SWAP2
0000414f: SWAP1
00004150: POP
00004151: JUMP
00004152: JUMPDEST
00004153: PUSH2 0x415b
00004156: DUP2
00004157: PUSH2 0x4140
0000415a: JUMP
0000415b: JUMPDEST
0000415c: DUP3
0000415d: MSTORE
0000415e: POP
0000415f: POP
00004160: JUMP
00004161: JUMPDEST
00004162: PUSH1 0x00
00004164: PUSH1 0x20
00004166: DUP3
00004167: ADD
00004168: SWAP1
00004169: POP
0000416a: PUSH2 0x4176
0000416d: PUSH1 0x00
0000416f: DUP4
00004170: ADD
00004171: DUP5
00004172: PUSH2 0x4152
00004175: JUMP
00004176: JUMPDEST
00004177: SWAP3
00004178: SWAP2
00004179: POP
0000417a: POP
0000417b: JUMP
0000417c: JUMPDEST
0000417d: PUSH1 0x00
0000417f: DUP1
00004180: PUSH1 0x00
00004182: DUP1
00004183: PUSH1 0x00
00004185: PUSH1 0x80
00004187: DUP7
00004188: DUP9
00004189: SUB
0000418a: SLT
0000418b: ISZERO
0000418c: PUSH2 0x4198
0000418f: JUMPI
00004190: PUSH2 0x4197
00004193: PUSH2 0x3687
00004196: JUMP
00004197: JUMPDEST
00004198: JUMPDEST
00004199: PUSH1 0x00
0000419b: PUSH2 0x41a6
0000419e: DUP9
0000419f: DUP3
000041a0: DUP10
000041a1: ADD
000041a2: PUSH2 0x36b6
000041a5: JUMP
000041a6: JUMPDEST
000041a7: SWAP6
000041a8: POP
000041a9: POP
000041aa: PUSH1 0x20
000041ac: PUSH2 0x41b7
000041af: DUP9
000041b0: DUP3
000041b1: DUP10
000041b2: ADD
000041b3: PUSH2 0x36b6
000041b6: JUMP
000041b7: JUMPDEST
000041b8: SWAP5
000041b9: POP
000041ba: POP
000041bb: PUSH1 0x40
000041bd: PUSH2 0x41c8
000041c0: DUP9
000041c1: DUP3
000041c2: DUP10
000041c3: ADD
000041c4: PUSH2 0x3a30
000041c7: JUMP
000041c8: JUMPDEST
000041c9: SWAP4
000041ca: POP
000041cb: POP
000041cc: PUSH1 0x60
000041ce: DUP7
000041cf: ADD
000041d0: CALLDATALOAD
000041d1: PUSH8 0xffffffffffffffff
000041da: DUP2
000041db: GT
000041dc: ISZERO
000041dd: PUSH2 0x41e9
000041e0: JUMPI
000041e1: PUSH2 0x41e8
000041e4: PUSH2 0x368c
000041e7: JUMP
000041e8: JUMPDEST
000041e9: JUMPDEST
000041ea: PUSH2 0x41f5
000041ed: DUP9
000041ee: DUP3
000041ef: DUP10
000041f0: ADD
000041f1: PUSH2 0x36da
000041f4: JUMP
000041f5: JUMPDEST
000041f6: SWAP3
000041f7: POP
000041f8: SWAP3
000041f9: POP
000041fa: POP
000041fb: SWAP3
000041fc: SWAP6
000041fd: POP
000041fe: SWAP3
000041ff: SWAP6
00004200: SWAP1
00004201: SWAP4
00004202: POP
00004203: JUMP
00004204: JUMPDEST
00004205: PUSH1 0x00
00004207: DUP1
00004208: PUSH1 0x40
0000420a: DUP4
0000420b: DUP6
0000420c: SUB
0000420d: SLT
0000420e: ISZERO
0000420f: PUSH2 0x421b
00004212: JUMPI
00004213: PUSH2 0x421a
00004216: PUSH2 0x3687
00004219: JUMP
0000421a: JUMPDEST
0000421b: JUMPDEST
0000421c: PUSH1 0x00
0000421e: PUSH2 0x4229
00004221: DUP6
00004222: DUP3
00004223: DUP7
00004224: ADD
00004225: PUSH2 0x39fa
00004228: JUMP
00004229: JUMPDEST
0000422a: SWAP3
0000422b: POP
0000422c: POP
0000422d: PUSH1 0x20
0000422f: PUSH2 0x423a
00004232: DUP6
00004233: DUP3
00004234: DUP7
00004235: ADD
00004236: PUSH2 0x39fa
00004239: JUMP
0000423a: JUMPDEST
0000423b: SWAP2
0000423c: POP
0000423d: POP
0000423e: SWAP3
0000423f: POP
00004240: SWAP3
00004241: SWAP1
00004242: POP
00004243: JUMP
00004244: JUMPDEST
00004245: PUSH1 0x00
00004247: DUP1
00004248: PUSH1 0x00
0000424a: PUSH1 0x60
0000424c: DUP5
0000424d: DUP7
0000424e: SUB
0000424f: SLT
00004250: ISZERO
00004251: PUSH2 0x425d
00004254: JUMPI
00004255: PUSH2 0x425c
00004258: PUSH2 0x3687
0000425b: JUMP
0000425c: JUMPDEST
0000425d: JUMPDEST
0000425e: PUSH1 0x00
00004260: PUSH2 0x426b
00004263: DUP7
00004264: DUP3
00004265: DUP8
00004266: ADD
00004267: PUSH2 0x36b6
0000426a: JUMP
0000426b: JUMPDEST
0000426c: SWAP4
0000426d: POP
0000426e: POP
0000426f: PUSH1 0x20
00004271: PUSH2 0x427c
00004274: DUP7
00004275: DUP3
00004276: DUP8
00004277: ADD
00004278: PUSH2 0x36b6
0000427b: JUMP
0000427c: JUMPDEST
0000427d: SWAP3
0000427e: POP
0000427f: POP
00004280: PUSH1 0x40
00004282: PUSH2 0x428d
00004285: DUP7
00004286: DUP3
00004287: DUP8
00004288: ADD
00004289: PUSH2 0x3a30
0000428c: JUMP
0000428d: JUMPDEST
0000428e: SWAP2
0000428f: POP
00004290: POP
00004291: SWAP3
00004292: POP
00004293: SWAP3
00004294: POP
00004295: SWAP3
00004296: JUMP
00004297: JUMPDEST
00004298: PUSH1 0x00
0000429a: PUSH1 0x20
0000429c: DUP3
0000429d: DUP5
0000429e: SUB
0000429f: SLT
000042a0: ISZERO
000042a1: PUSH2 0x42ad
000042a4: JUMPI
000042a5: PUSH2 0x42ac
000042a8: PUSH2 0x3687
000042ab: JUMP
000042ac: JUMPDEST
000042ad: JUMPDEST
000042ae: PUSH1 0x00
000042b0: PUSH2 0x42bb
000042b3: DUP5
000042b4: DUP3
000042b5: DUP6
000042b6: ADD
000042b7: PUSH2 0x3b19
000042ba: JUMP
000042bb: JUMPDEST
000042bc: SWAP2
000042bd: POP
000042be: POP
000042bf: SWAP3
000042c0: SWAP2
000042c1: POP
000042c2: POP
000042c3: JUMP
000042c4: JUMPDEST
000042c5: PUSH1 0x00
000042c7: DUP1
000042c8: PUSH1 0x00
000042ca: DUP1
000042cb: PUSH1 0x80
000042cd: DUP6
000042ce: DUP8
000042cf: SUB
000042d0: SLT
000042d1: ISZERO
000042d2: PUSH2 0x42de
000042d5: JUMPI
000042d6: PUSH2 0x42dd
000042d9: PUSH2 0x3687
000042dc: JUMP
000042dd: JUMPDEST
000042de: JUMPDEST
000042df: PUSH1 0x00
000042e1: PUSH2 0x42ec
000042e4: DUP8
000042e5: DUP3
000042e6: DUP9
000042e7: ADD
000042e8: PUSH2 0x36b6
000042eb: JUMP
000042ec: JUMPDEST
000042ed: SWAP5
000042ee: POP
000042ef: POP
000042f0: PUSH1 0x20
000042f2: PUSH2 0x42fd
000042f5: DUP8
000042f6: DUP3
000042f7: DUP9
000042f8: ADD
000042f9: PUSH2 0x36b6
000042fc: JUMP
000042fd: JUMPDEST
000042fe: SWAP4
000042ff: POP
00004300: POP
00004301: PUSH1 0x40
00004303: PUSH2 0x430e
00004306: DUP8
00004307: DUP3
00004308: DUP9
00004309: ADD
0000430a: PUSH2 0x39fa
0000430d: JUMP
0000430e: JUMPDEST
0000430f: SWAP3
00004310: POP
00004311: POP
00004312: PUSH1 0x60
00004314: PUSH2 0x431f
00004317: DUP8
00004318: DUP3
00004319: DUP9
0000431a: ADD
0000431b: PUSH2 0x3a30
0000431e: JUMP
0000431f: JUMPDEST
00004320: SWAP2
00004321: POP
00004322: POP
00004323: SWAP3
00004324: SWAP6
00004325: SWAP2
00004326: SWAP5
00004327: POP
00004328: SWAP3
00004329: POP
0000432a: JUMP
0000432b: JUMPDEST
0000432c: PUSH32 0x4c7a4170703a20696e76616c696420656e64706f696e742063616c6c65720000
0000434d: PUSH1 0x00
0000434f: DUP3
00004350: ADD
00004351: MSTORE
00004352: POP
00004353: JUMP
00004354: JUMPDEST
00004355: PUSH1 0x00
00004357: PUSH2 0x4361
0000435a: PUSH1 0x1e
0000435c: DUP4
0000435d: PUSH2 0x38dd
00004360: JUMP
00004361: JUMPDEST
00004362: SWAP2
00004363: POP
00004364: PUSH2 0x436c
00004367: DUP3
00004368: PUSH2 0x432b
0000436b: JUMP
0000436c: JUMPDEST
0000436d: PUSH1 0x20
0000436f: DUP3
00004370: ADD
00004371: SWAP1
00004372: POP
00004373: SWAP2
00004374: SWAP1
00004375: POP
00004376: JUMP
00004377: JUMPDEST
00004378: PUSH1 0x00
0000437a: PUSH1 0x20
0000437c: DUP3
0000437d: ADD
0000437e: SWAP1
0000437f: POP
00004380: DUP2
00004381: DUP2
00004382: SUB
00004383: PUSH1 0x00
00004385: DUP4
00004386: ADD
00004387: MSTORE
00004388: PUSH2 0x4390
0000438b: DUP2
0000438c: PUSH2 0x4354
0000438f: JUMP
00004390: JUMPDEST
00004391: SWAP1
00004392: POP
00004393: SWAP2
00004394: SWAP1
00004395: POP
00004396: JUMP
00004397: JUMPDEST
00004398: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
000043b9: PUSH1 0x00
000043bb: MSTORE
000043bc: PUSH1 0x22
000043be: PUSH1 0x04
000043c0: MSTORE
000043c1: PUSH1 0x24
000043c3: PUSH1 0x00
000043c5: REVERT
000043c6: JUMPDEST
000043c7: PUSH1 0x00
000043c9: PUSH1 0x02
000043cb: DUP3
000043cc: DIV
000043cd: SWAP1
000043ce: POP
000043cf: PUSH1 0x01
000043d1: DUP3
000043d2: AND
000043d3: DUP1
000043d4: PUSH2 0x43de
000043d7: JUMPI
000043d8: PUSH1 0x7f
000043da: DUP3
000043db: AND
000043dc: SWAP2
000043dd: POP
000043de: JUMPDEST
000043df: PUSH1 0x20
000043e1: DUP3
000043e2: LT
000043e3: DUP2
000043e4: SUB
000043e5: PUSH2 0x43f1
000043e8: JUMPI
000043e9: PUSH2 0x43f0
000043ec: PUSH2 0x4397
000043ef: JUMP
000043f0: JUMPDEST
000043f1: JUMPDEST
000043f2: POP
000043f3: SWAP2
000043f4: SWAP1
000043f5: POP
000043f6: JUMP
000043f7: JUMPDEST
000043f8: PUSH1 0x00
000043fa: DUP2
000043fb: SWAP1
000043fc: POP
000043fd: SWAP3
000043fe: SWAP2
000043ff: POP
00004400: POP
00004401: JUMP
00004402: JUMPDEST
00004403: PUSH1 0x00
00004405: PUSH2 0x440e
00004408: DUP4
00004409: DUP6
0000440a: PUSH2 0x43f7
0000440d: JUMP
0000440e: JUMPDEST
0000440f: SWAP4
00004410: POP
00004411: PUSH2 0x441b
00004414: DUP4
00004415: DUP6
00004416: DUP5
00004417: PUSH2 0x3ed2
0000441a: JUMP
0000441b: JUMPDEST
0000441c: DUP3
0000441d: DUP5
0000441e: ADD
0000441f: SWAP1
00004420: POP
00004421: SWAP4
00004422: SWAP3
00004423: POP
00004424: POP
00004425: POP
00004426: JUMP
00004427: JUMPDEST
00004428: PUSH1 0x00
0000442a: PUSH2 0x4434
0000442d: DUP3
0000442e: DUP5
0000442f: DUP7
00004430: PUSH2 0x4402
00004433: JUMP
00004434: JUMPDEST
00004435: SWAP2
00004436: POP
00004437: DUP2
00004438: SWAP1
00004439: POP
0000443a: SWAP4
0000443b: SWAP3
0000443c: POP
0000443d: POP
0000443e: POP
0000443f: JUMP
00004440: JUMPDEST
00004441: PUSH32 0x4c7a4170703a20696e76616c696420736f757263652073656e64696e6720636f
00004462: PUSH1 0x00
00004464: DUP3
00004465: ADD
00004466: MSTORE
00004467: PUSH32 0x6e74726163740000000000000000000000000000000000000000000000000000
00004488: PUSH1 0x20
0000448a: DUP3
0000448b: ADD
0000448c: MSTORE
0000448d: POP
0000448e: JUMP
0000448f: JUMPDEST
00004490: PUSH1 0x00
00004492: PUSH2 0x449c
00004495: PUSH1 0x26
00004497: DUP4
00004498: PUSH2 0x38dd
0000449b: JUMP
0000449c: JUMPDEST
0000449d: SWAP2
0000449e: POP
0000449f: PUSH2 0x44a7
000044a2: DUP3
000044a3: PUSH2 0x4440
000044a6: JUMP
000044a7: JUMPDEST
000044a8: PUSH1 0x40
000044aa: DUP3
000044ab: ADD
000044ac: SWAP1
000044ad: POP
000044ae: SWAP2
000044af: SWAP1
000044b0: POP
000044b1: JUMP
000044b2: JUMPDEST
000044b3: PUSH1 0x00
000044b5: PUSH1 0x20
000044b7: DUP3
000044b8: ADD
000044b9: SWAP1
000044ba: POP
000044bb: DUP2
000044bc: DUP2
000044bd: SUB
000044be: PUSH1 0x00
000044c0: DUP4
000044c1: ADD
000044c2: MSTORE
000044c3: PUSH2 0x44cb
000044c6: DUP2
000044c7: PUSH2 0x448f
000044ca: JUMP
000044cb: JUMPDEST
000044cc: SWAP1
000044cd: POP
000044ce: SWAP2
000044cf: SWAP1
000044d0: POP
000044d1: JUMP
000044d2: JUMPDEST
000044d3: PUSH1 0x00
000044d5: DUP2
000044d6: PUSH1 0x60
000044d8: SHL
000044d9: SWAP1
000044da: POP
000044db: SWAP2
000044dc: SWAP1
000044dd: POP
000044de: JUMP
000044df: JUMPDEST
000044e0: PUSH1 0x00
000044e2: PUSH2 0x44ea
000044e5: DUP3
000044e6: PUSH2 0x44d2
000044e9: JUMP
000044ea: JUMPDEST
000044eb: SWAP1
000044ec: POP
000044ed: SWAP2
000044ee: SWAP1
000044ef: POP
000044f0: JUMP
000044f1: JUMPDEST
000044f2: PUSH1 0x00
000044f4: PUSH2 0x44fc
000044f7: DUP3
000044f8: PUSH2 0x44df
000044fb: JUMP
000044fc: JUMPDEST
000044fd: SWAP1
000044fe: POP
000044ff: SWAP2
00004500: SWAP1
00004501: POP
00004502: JUMP
00004503: JUMPDEST
00004504: PUSH2 0x4514
00004507: PUSH2 0x450f
0000450a: DUP3
0000450b: PUSH2 0x39d1
0000450e: JUMP
0000450f: JUMPDEST
00004510: PUSH2 0x44f1
00004513: JUMP
00004514: JUMPDEST
00004515: DUP3
00004516: MSTORE
00004517: POP
00004518: POP
00004519: JUMP
0000451a: JUMPDEST
0000451b: PUSH1 0x00
0000451d: PUSH2 0x4526
00004520: DUP3
00004521: DUP5
00004522: PUSH2 0x4503
00004525: JUMP
00004526: JUMPDEST
00004527: PUSH1 0x14
00004529: DUP3
0000452a: ADD
0000452b: SWAP2
0000452c: POP
0000452d: DUP2
0000452e: SWAP1
0000452f: POP
00004530: SWAP3
00004531: SWAP2
00004532: POP
00004533: POP
00004534: JUMP
00004535: JUMPDEST
00004536: PUSH1 0x00
00004538: PUSH2 0x4541
0000453b: DUP4
0000453c: DUP6
0000453d: PUSH2 0x402c
00004540: JUMP
00004541: JUMPDEST
00004542: SWAP4
00004543: POP
00004544: PUSH2 0x454e
00004547: DUP4
00004548: DUP6
00004549: DUP5
0000454a: PUSH2 0x3ed2
0000454d: JUMP
0000454e: JUMPDEST
0000454f: PUSH2 0x4557
00004552: DUP4
00004553: PUSH2 0x3918
00004556: JUMP
00004557: JUMPDEST
00004558: DUP5
00004559: ADD
0000455a: SWAP1
0000455b: POP
0000455c: SWAP4
0000455d: SWAP3
0000455e: POP
0000455f: POP
00004560: POP
00004561: JUMP
00004562: JUMPDEST
00004563: PUSH1 0x00
00004565: PUSH1 0x80
00004567: DUP3
00004568: ADD
00004569: SWAP1
0000456a: POP
0000456b: PUSH2 0x4577
0000456e: PUSH1 0x00
00004570: DUP4
00004571: ADD
00004572: DUP9
00004573: PUSH2 0x3cd7
00004576: JUMP
00004577: JUMPDEST
00004578: DUP2
00004579: DUP2
0000457a: SUB
0000457b: PUSH1 0x20
0000457d: DUP4
0000457e: ADD
0000457f: MSTORE
00004580: PUSH2 0x4589
00004583: DUP2
00004584: DUP8
00004585: PUSH2 0x403d
00004588: JUMP
00004589: JUMPDEST
0000458a: SWAP1
0000458b: POP
0000458c: DUP2
0000458d: DUP2
0000458e: SUB
0000458f: PUSH1 0x40
00004591: DUP4
00004592: ADD
00004593: MSTORE
00004594: PUSH2 0x459e
00004597: DUP2
00004598: DUP6
00004599: DUP8
0000459a: PUSH2 0x4535
0000459d: JUMP
0000459e: JUMPDEST
0000459f: SWAP1
000045a0: POP
000045a1: PUSH2 0x45ad
000045a4: PUSH1 0x60
000045a6: DUP4
000045a7: ADD
000045a8: DUP5
000045a9: PUSH2 0x3a85
000045ac: JUMP
000045ad: JUMPDEST
000045ae: SWAP7
000045af: SWAP6
000045b0: POP
000045b1: POP
000045b2: POP
000045b3: POP
000045b4: POP
000045b5: POP
000045b6: JUMP
000045b7: JUMPDEST
000045b8: PUSH1 0x00
000045ba: PUSH1 0xa0
000045bc: DUP3
000045bd: ADD
000045be: SWAP1
000045bf: POP
000045c0: PUSH2 0x45cc
000045c3: PUSH1 0x00
000045c5: DUP4
000045c6: ADD
000045c7: DUP10
000045c8: PUSH2 0x3cd7
000045cb: JUMP
000045cc: JUMPDEST
000045cd: PUSH2 0x45d9
000045d0: PUSH1 0x20
000045d2: DUP4
000045d3: ADD
000045d4: DUP9
000045d5: PUSH2 0x40d8
000045d8: JUMP
000045d9: JUMPDEST
000045da: DUP2
000045db: DUP2
000045dc: SUB
000045dd: PUSH1 0x40
000045df: DUP4
000045e0: ADD
000045e1: MSTORE
000045e2: PUSH2 0x45eb
000045e5: DUP2
000045e6: DUP8
000045e7: PUSH2 0x403d
000045ea: JUMP
000045eb: JUMPDEST
000045ec: SWAP1
000045ed: POP
000045ee: PUSH2 0x45fa
000045f1: PUSH1 0x60
000045f3: DUP4
000045f4: ADD
000045f5: DUP7
000045f6: PUSH2 0x38a8
000045f9: JUMP
000045fa: JUMPDEST
000045fb: DUP2
000045fc: DUP2
000045fd: SUB
000045fe: PUSH1 0x80
00004600: DUP4
00004601: ADD
00004602: MSTORE
00004603: PUSH2 0x460d
00004606: DUP2
00004607: DUP5
00004608: DUP7
00004609: PUSH2 0x4535
0000460c: JUMP
0000460d: JUMPDEST
0000460e: SWAP1
0000460f: POP
00004610: SWAP8
00004611: SWAP7
00004612: POP
00004613: POP
00004614: POP
00004615: POP
00004616: POP
00004617: POP
00004618: POP
00004619: JUMP
0000461a: JUMPDEST
0000461b: PUSH1 0x00
0000461d: DUP2
0000461e: MLOAD
0000461f: SWAP1
00004620: POP
00004621: PUSH2 0x4629
00004624: DUP2
00004625: PUSH2 0x3a19
00004628: JUMP
00004629: JUMPDEST
0000462a: SWAP3
0000462b: SWAP2
0000462c: POP
0000462d: POP
0000462e: JUMP
0000462f: JUMPDEST
00004630: PUSH1 0x00
00004632: DUP1
00004633: PUSH1 0x40
00004635: DUP4
00004636: DUP6
00004637: SUB
00004638: SLT
00004639: ISZERO
0000463a: PUSH2 0x4646
0000463d: JUMPI
0000463e: PUSH2 0x4645
00004641: PUSH2 0x3687
00004644: JUMP
00004645: JUMPDEST
00004646: JUMPDEST
00004647: PUSH1 0x00
00004649: PUSH2 0x4654
0000464c: DUP6
0000464d: DUP3
0000464e: DUP7
0000464f: ADD
00004650: PUSH2 0x461a
00004653: JUMP
00004654: JUMPDEST
00004655: SWAP3
00004656: POP
00004657: POP
00004658: PUSH1 0x20
0000465a: PUSH2 0x4665
0000465d: DUP6
0000465e: DUP3
0000465f: DUP7
00004660: ADD
00004661: PUSH2 0x461a
00004664: JUMP
00004665: JUMPDEST
00004666: SWAP2
00004667: POP
00004668: POP
00004669: SWAP3
0000466a: POP
0000466b: SWAP3
0000466c: SWAP1
0000466d: POP
0000466e: JUMP
0000466f: JUMPDEST
00004670: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00
00004691: PUSH1 0x00
00004693: DUP3
00004694: ADD
00004695: MSTORE
00004696: POP
00004697: JUMP
00004698: JUMPDEST
00004699: PUSH1 0x00
0000469b: PUSH2 0x46a5
0000469e: PUSH1 0x1f
000046a0: DUP4
000046a1: PUSH2 0x38dd
000046a4: JUMP
000046a5: JUMPDEST
000046a6: SWAP2
000046a7: POP
000046a8: PUSH2 0x46b0
000046ab: DUP3
000046ac: PUSH2 0x466f
000046af: JUMP
000046b0: JUMPDEST
000046b1: PUSH1 0x20
000046b3: DUP3
000046b4: ADD
000046b5: SWAP1
000046b6: POP
000046b7: SWAP2
000046b8: SWAP1
000046b9: POP
000046ba: JUMP
000046bb: JUMPDEST
000046bc: PUSH1 0x00
000046be: PUSH1 0x20
000046c0: DUP3
000046c1: ADD
000046c2: SWAP1
000046c3: POP
000046c4: DUP2
000046c5: DUP2
000046c6: SUB
000046c7: PUSH1 0x00
000046c9: DUP4
000046ca: ADD
000046cb: MSTORE
000046cc: PUSH2 0x46d4
000046cf: DUP2
000046d0: PUSH2 0x4698
000046d3: JUMP
000046d4: JUMPDEST
000046d5: SWAP1
000046d6: POP
000046d7: SWAP2
000046d8: SWAP1
000046d9: POP
000046da: JUMP
000046db: JUMPDEST
000046dc: PUSH32 0x4e61746976654f46543a20496e73756666696369656e742062616c616e63652e
000046fd: PUSH1 0x00
000046ff: DUP3
00004700: ADD
00004701: MSTORE
00004702: POP
00004703: JUMP
00004704: JUMPDEST
00004705: PUSH1 0x00
00004707: PUSH2 0x4711
0000470a: PUSH1 0x20
0000470c: DUP4
0000470d: PUSH2 0x38dd
00004710: JUMP
00004711: JUMPDEST
00004712: SWAP2
00004713: POP
00004714: PUSH2 0x471c
00004717: DUP3
00004718: PUSH2 0x46db
0000471b: JUMP
0000471c: JUMPDEST
0000471d: PUSH1 0x20
0000471f: DUP3
00004720: ADD
00004721: SWAP1
00004722: POP
00004723: SWAP2
00004724: SWAP1
00004725: POP
00004726: JUMP
00004727: JUMPDEST
00004728: PUSH1 0x00
0000472a: PUSH1 0x20
0000472c: DUP3
0000472d: ADD
0000472e: SWAP1
0000472f: POP
00004730: DUP2
00004731: DUP2
00004732: SUB
00004733: PUSH1 0x00
00004735: DUP4
00004736: ADD
00004737: MSTORE
00004738: PUSH2 0x4740
0000473b: DUP2
0000473c: PUSH2 0x4704
0000473f: JUMP
00004740: JUMPDEST
00004741: SWAP1
00004742: POP
00004743: SWAP2
00004744: SWAP1
00004745: POP
00004746: JUMP
00004747: JUMPDEST
00004748: POP
00004749: JUMP
0000474a: JUMPDEST
0000474b: PUSH1 0x00
0000474d: PUSH2 0x4757
00004750: PUSH1 0x00
00004752: DUP4
00004753: PUSH2 0x43f7
00004756: JUMP
00004757: JUMPDEST
00004758: SWAP2
00004759: POP
0000475a: PUSH2 0x4762
0000475d: DUP3
0000475e: PUSH2 0x4747
00004761: JUMP
00004762: JUMPDEST
00004763: PUSH1 0x00
00004765: DUP3
00004766: ADD
00004767: SWAP1
00004768: POP
00004769: SWAP2
0000476a: SWAP1
0000476b: POP
0000476c: JUMP
0000476d: JUMPDEST
0000476e: PUSH1 0x00
00004770: PUSH2 0x4778
00004773: DUP3
00004774: PUSH2 0x474a
00004777: JUMP
00004778: JUMPDEST
00004779: SWAP2
0000477a: POP
0000477b: DUP2
0000477c: SWAP1
0000477d: POP
0000477e: SWAP2
0000477f: SWAP1
00004780: POP
00004781: JUMP
00004782: JUMPDEST
00004783: PUSH32 0x4e61746976654f46543a206661696c656420746f20756e777261700000000000
000047a4: PUSH1 0x00
000047a6: DUP3
000047a7: ADD
000047a8: MSTORE
000047a9: POP
000047aa: JUMP
000047ab: JUMPDEST
000047ac: PUSH1 0x00
000047ae: PUSH2 0x47b8
000047b1: PUSH1 0x1b
000047b3: DUP4
000047b4: PUSH2 0x38dd
000047b7: JUMP
000047b8: JUMPDEST
000047b9: SWAP2
000047ba: POP
000047bb: PUSH2 0x47c3
000047be: DUP3
000047bf: PUSH2 0x4782
000047c2: JUMP
000047c3: JUMPDEST
000047c4: PUSH1 0x20
000047c6: DUP3
000047c7: ADD
000047c8: SWAP1
000047c9: POP
000047ca: SWAP2
000047cb: SWAP1
000047cc: POP
000047cd: JUMP
000047ce: JUMPDEST
000047cf: PUSH1 0x00
000047d1: PUSH1 0x20
000047d3: DUP3
000047d4: ADD
000047d5: SWAP1
000047d6: POP
000047d7: DUP2
000047d8: DUP2
000047d9: SUB
000047da: PUSH1 0x00
000047dc: DUP4
000047dd: ADD
000047de: MSTORE
000047df: PUSH2 0x47e7
000047e2: DUP2
000047e3: PUSH2 0x47ab
000047e6: JUMP
000047e7: JUMPDEST
000047e8: SWAP1
000047e9: POP
000047ea: SWAP2
000047eb: SWAP1
000047ec: POP
000047ed: JUMP
000047ee: JUMPDEST
000047ef: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004810: PUSH1 0x00
00004812: MSTORE
00004813: PUSH1 0x11
00004815: PUSH1 0x04
00004817: MSTORE
00004818: PUSH1 0x24
0000481a: PUSH1 0x00
0000481c: REVERT
0000481d: JUMPDEST
0000481e: PUSH1 0x00
00004820: PUSH2 0x4828
00004823: DUP3
00004824: PUSH2 0x3a0f
00004827: JUMP
00004828: JUMPDEST
00004829: SWAP2
0000482a: POP
0000482b: PUSH2 0x4833
0000482e: DUP4
0000482f: PUSH2 0x3a0f
00004832: JUMP
00004833: JUMPDEST
00004834: SWAP3
00004835: POP
00004836: DUP3
00004837: DUP3
00004838: ADD
00004839: SWAP1
0000483a: POP
0000483b: DUP1
0000483c: DUP3
0000483d: GT
0000483e: ISZERO
0000483f: PUSH2 0x484b
00004842: JUMPI
00004843: PUSH2 0x484a
00004846: PUSH2 0x47ee
00004849: JUMP
0000484a: JUMPDEST
0000484b: JUMPDEST
0000484c: SWAP3
0000484d: SWAP2
0000484e: POP
0000484f: POP
00004850: JUMP
00004851: JUMPDEST
00004852: PUSH1 0x00
00004854: PUSH1 0x40
00004856: DUP3
00004857: ADD
00004858: SWAP1
00004859: POP
0000485a: PUSH2 0x4866
0000485d: PUSH1 0x00
0000485f: DUP4
00004860: ADD
00004861: DUP7
00004862: PUSH2 0x3cd7
00004865: JUMP
00004866: JUMPDEST
00004867: DUP2
00004868: DUP2
00004869: SUB
0000486a: PUSH1 0x20
0000486c: DUP4
0000486d: ADD
0000486e: MSTORE
0000486f: PUSH2 0x4879
00004872: DUP2
00004873: DUP5
00004874: DUP7
00004875: PUSH2 0x4535
00004878: JUMP
00004879: JUMPDEST
0000487a: SWAP1
0000487b: POP
0000487c: SWAP5
0000487d: SWAP4
0000487e: POP
0000487f: POP
00004880: POP
00004881: POP
00004882: JUMP
00004883: JUMPDEST
00004884: PUSH32 0x4e6f6e626c6f636b696e674c7a4170703a2063616c6c6572206d757374206265
000048a5: PUSH1 0x00
000048a7: DUP3
000048a8: ADD
000048a9: MSTORE
000048aa: PUSH32 0x204c7a4170700000000000000000000000000000000000000000000000000000
000048cb: PUSH1 0x20
000048cd: DUP3
000048ce: ADD
000048cf: MSTORE
000048d0: POP
000048d1: JUMP
000048d2: JUMPDEST
000048d3: PUSH1 0x00
000048d5: PUSH2 0x48df
000048d8: PUSH1 0x26
000048da: DUP4
000048db: PUSH2 0x38dd
000048de: JUMP
000048df: JUMPDEST
000048e0: SWAP2
000048e1: POP
000048e2: PUSH2 0x48ea
000048e5: DUP3
000048e6: PUSH2 0x4883
000048e9: JUMP
000048ea: JUMPDEST
000048eb: PUSH1 0x40
000048ed: DUP3
000048ee: ADD
000048ef: SWAP1
000048f0: POP
000048f1: SWAP2
000048f2: SWAP1
000048f3: POP
000048f4: JUMP
000048f5: JUMPDEST
000048f6: PUSH1 0x00
000048f8: PUSH1 0x20
000048fa: DUP3
000048fb: ADD
000048fc: SWAP1
000048fd: POP
000048fe: DUP2
000048ff: DUP2
00004900: SUB
00004901: PUSH1 0x00
00004903: DUP4
00004904: ADD
00004905: MSTORE
00004906: PUSH2 0x490e
00004909: DUP2
0000490a: PUSH2 0x48d2
0000490d: JUMP
0000490e: JUMPDEST
0000490f: SWAP1
00004910: POP
00004911: SWAP2
00004912: SWAP1
00004913: POP
00004914: JUMP
00004915: JUMPDEST
00004916: PUSH32 0x4c7a4170703a206e6f20747275737465642070617468207265636f7264000000
00004937: PUSH1 0x00
00004939: DUP3
0000493a: ADD
0000493b: MSTORE
0000493c: POP
0000493d: JUMP
0000493e: JUMPDEST
0000493f: PUSH1 0x00
00004941: PUSH2 0x494b
00004944: PUSH1 0x1d
00004946: DUP4
00004947: PUSH2 0x38dd
0000494a: JUMP
0000494b: JUMPDEST
0000494c: SWAP2
0000494d: POP
0000494e: PUSH2 0x4956
00004951: DUP3
00004952: PUSH2 0x4915
00004955: JUMP
00004956: JUMPDEST
00004957: PUSH1 0x20
00004959: DUP3
0000495a: ADD
0000495b: SWAP1
0000495c: POP
0000495d: SWAP2
0000495e: SWAP1
0000495f: POP
00004960: JUMP
00004961: JUMPDEST
00004962: PUSH1 0x00
00004964: PUSH1 0x20
00004966: DUP3
00004967: ADD
00004968: SWAP1
00004969: POP
0000496a: DUP2
0000496b: DUP2
0000496c: SUB
0000496d: PUSH1 0x00
0000496f: DUP4
00004970: ADD
00004971: MSTORE
00004972: PUSH2 0x497a
00004975: DUP2
00004976: PUSH2 0x493e
00004979: JUMP
0000497a: JUMPDEST
0000497b: SWAP1
0000497c: POP
0000497d: SWAP2
0000497e: SWAP1
0000497f: POP
00004980: JUMP
00004981: JUMPDEST
00004982: PUSH1 0x00
00004984: PUSH2 0x498c
00004987: DUP3
00004988: PUSH2 0x3a0f
0000498b: JUMP
0000498c: JUMPDEST
0000498d: SWAP2
0000498e: POP
0000498f: PUSH2 0x4997
00004992: DUP4
00004993: PUSH2 0x3a0f
00004996: JUMP
00004997: JUMPDEST
00004998: SWAP3
00004999: POP
0000499a: DUP3
0000499b: DUP3
0000499c: SUB
0000499d: SWAP1
0000499e: POP
0000499f: DUP2
000049a0: DUP2
000049a1: GT
000049a2: ISZERO
000049a3: PUSH2 0x49af
000049a6: JUMPI
000049a7: PUSH2 0x49ae
000049aa: PUSH2 0x47ee
000049ad: JUMP
000049ae: JUMPDEST
000049af: JUMPDEST
000049b0: SWAP3
000049b1: SWAP2
000049b2: POP
000049b3: POP
000049b4: JUMP
000049b5: JUMPDEST
000049b6: PUSH32 0x45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77
000049d7: PUSH1 0x00
000049d9: DUP3
000049da: ADD
000049db: MSTORE
000049dc: PUSH32 0x207a65726f000000000000000000000000000000000000000000000000000000
000049fd: PUSH1 0x20
000049ff: DUP3
00004a00: ADD
00004a01: MSTORE
00004a02: POP
00004a03: JUMP
00004a04: JUMPDEST
00004a05: PUSH1 0x00
00004a07: PUSH2 0x4a11
00004a0a: PUSH1 0x25
00004a0c: DUP4
00004a0d: PUSH2 0x38dd
00004a10: JUMP
00004a11: JUMPDEST
00004a12: SWAP2
00004a13: POP
00004a14: PUSH2 0x4a1c
00004a17: DUP3
00004a18: PUSH2 0x49b5
00004a1b: JUMP
00004a1c: JUMPDEST
00004a1d: PUSH1 0x40
00004a1f: DUP3
00004a20: ADD
00004a21: SWAP1
00004a22: POP
00004a23: SWAP2
00004a24: SWAP1
00004a25: POP
00004a26: JUMP
00004a27: JUMPDEST
00004a28: PUSH1 0x00
00004a2a: PUSH1 0x20
00004a2c: DUP3
00004a2d: ADD
00004a2e: SWAP1
00004a2f: POP
00004a30: DUP2
00004a31: DUP2
00004a32: SUB
00004a33: PUSH1 0x00
00004a35: DUP4
00004a36: ADD
00004a37: MSTORE
00004a38: PUSH2 0x4a40
00004a3b: DUP2
00004a3c: PUSH2 0x4a04
00004a3f: JUMP
00004a40: JUMPDEST
00004a41: SWAP1
00004a42: POP
00004a43: SWAP2
00004a44: SWAP1
00004a45: POP
00004a46: JUMP
00004a47: JUMPDEST
00004a48: PUSH1 0x00
00004a4a: PUSH2 0x4a54
00004a4d: DUP3
00004a4e: DUP6
00004a4f: DUP8
00004a50: PUSH2 0x4402
00004a53: JUMP
00004a54: JUMPDEST
00004a55: SWAP2
00004a56: POP
00004a57: PUSH2 0x4a60
00004a5a: DUP3
00004a5b: DUP5
00004a5c: PUSH2 0x4503
00004a5f: JUMP
00004a60: JUMPDEST
00004a61: PUSH1 0x14
00004a63: DUP3
00004a64: ADD
00004a65: SWAP2
00004a66: POP
00004a67: DUP2
00004a68: SWAP1
00004a69: POP
00004a6a: SWAP5
00004a6b: SWAP4
00004a6c: POP
00004a6d: POP
00004a6e: POP
00004a6f: POP
00004a70: JUMP
00004a71: JUMPDEST
00004a72: PUSH1 0x00
00004a74: DUP2
00004a75: SWAP1
00004a76: POP
00004a77: DUP2
00004a78: PUSH1 0x00
00004a7a: MSTORE
00004a7b: PUSH1 0x20
00004a7d: PUSH1 0x00
00004a7f: KECCAK256
00004a80: SWAP1
00004a81: POP
00004a82: SWAP2
00004a83: SWAP1
00004a84: POP
00004a85: JUMP
00004a86: JUMPDEST
00004a87: PUSH1 0x00
00004a89: PUSH1 0x20
00004a8b: PUSH1 0x1f
00004a8d: DUP4
00004a8e: ADD
00004a8f: DIV
00004a90: SWAP1
00004a91: POP
00004a92: SWAP2
00004a93: SWAP1
00004a94: POP
00004a95: JUMP
00004a96: JUMPDEST
00004a97: PUSH1 0x00
00004a99: DUP3
00004a9a: DUP3
00004a9b: SHL
00004a9c: SWAP1
00004a9d: POP
00004a9e: SWAP3
00004a9f: SWAP2
00004aa0: POP
00004aa1: POP
00004aa2: JUMP
00004aa3: JUMPDEST
00004aa4: PUSH1 0x00
00004aa6: PUSH1 0x08
00004aa8: DUP4
00004aa9: MUL
00004aaa: PUSH2 0x4ad3
00004aad: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004ace: DUP3
00004acf: PUSH2 0x4a96
00004ad2: JUMP
00004ad3: JUMPDEST
00004ad4: PUSH2 0x4add
00004ad7: DUP7
00004ad8: DUP4
00004ad9: PUSH2 0x4a96
00004adc: JUMP
00004add: JUMPDEST
00004ade: SWAP6
00004adf: POP
00004ae0: DUP1
00004ae1: NOT
00004ae2: DUP5
00004ae3: AND
00004ae4: SWAP4
00004ae5: POP
00004ae6: DUP1
00004ae7: DUP7
00004ae8: AND
00004ae9: DUP5
00004aea: OR
00004aeb: SWAP3
00004aec: POP
00004aed: POP
00004aee: POP
00004aef: SWAP4
00004af0: SWAP3
00004af1: POP
00004af2: POP
00004af3: POP
00004af4: JUMP
00004af5: JUMPDEST
00004af6: PUSH1 0x00
00004af8: PUSH2 0x4b10
00004afb: PUSH2 0x4b0b
00004afe: PUSH2 0x4b06
00004b01: DUP5
00004b02: PUSH2 0x3a0f
00004b05: JUMP
00004b06: JUMPDEST
00004b07: PUSH2 0x4102
00004b0a: JUMP
00004b0b: JUMPDEST
00004b0c: PUSH2 0x3a0f
00004b0f: JUMP
00004b10: JUMPDEST
00004b11: SWAP1
00004b12: POP
00004b13: SWAP2
00004b14: SWAP1
00004b15: POP
00004b16: JUMP
00004b17: JUMPDEST
00004b18: PUSH1 0x00
00004b1a: DUP2
00004b1b: SWAP1
00004b1c: POP
00004b1d: SWAP2
00004b1e: SWAP1
00004b1f: POP
00004b20: JUMP
00004b21: JUMPDEST
00004b22: PUSH2 0x4b2a
00004b25: DUP4
00004b26: PUSH2 0x4af5
00004b29: JUMP
00004b2a: JUMPDEST
00004b2b: PUSH2 0x4b3e
00004b2e: PUSH2 0x4b36
00004b31: DUP3
00004b32: PUSH2 0x4b17
00004b35: JUMP
00004b36: JUMPDEST
00004b37: DUP5
00004b38: DUP5
00004b39: SLOAD
00004b3a: PUSH2 0x4aa3
00004b3d: JUMP
00004b3e: JUMPDEST
00004b3f: DUP3
00004b40: SSTORE
00004b41: POP
00004b42: POP
00004b43: POP
00004b44: POP
00004b45: JUMP
00004b46: JUMPDEST
00004b47: PUSH1 0x00
00004b49: SWAP1
00004b4a: JUMP
00004b4b: JUMPDEST
00004b4c: PUSH2 0x4b53
00004b4f: PUSH2 0x4b46
00004b52: JUMP
00004b53: JUMPDEST
00004b54: PUSH2 0x4b5e
00004b57: DUP2
00004b58: DUP5
00004b59: DUP5
00004b5a: PUSH2 0x4b21
00004b5d: JUMP
00004b5e: JUMPDEST
00004b5f: POP
00004b60: POP
00004b61: POP
00004b62: JUMP
00004b63: JUMPDEST
00004b64: JUMPDEST
00004b65: DUP2
00004b66: DUP2
00004b67: LT
00004b68: ISZERO
00004b69: PUSH2 0x4b82
00004b6c: JUMPI
00004b6d: PUSH2 0x4b77
00004b70: PUSH1 0x00
00004b72: DUP3
00004b73: PUSH2 0x4b4b
00004b76: JUMP
00004b77: JUMPDEST
00004b78: PUSH1 0x01
00004b7a: DUP2
00004b7b: ADD
00004b7c: SWAP1
00004b7d: POP
00004b7e: PUSH2 0x4b64
00004b81: JUMP
00004b82: JUMPDEST
00004b83: POP
00004b84: POP
00004b85: JUMP
00004b86: JUMPDEST
00004b87: PUSH1 0x1f
00004b89: DUP3
00004b8a: GT
00004b8b: ISZERO
00004b8c: PUSH2 0x4bc7
00004b8f: JUMPI
00004b90: PUSH2 0x4b98
00004b93: DUP2
00004b94: PUSH2 0x4a71
00004b97: JUMP
00004b98: JUMPDEST
00004b99: PUSH2 0x4ba1
00004b9c: DUP5
00004b9d: PUSH2 0x4a86
00004ba0: JUMP
00004ba1: JUMPDEST
00004ba2: DUP2
00004ba3: ADD
00004ba4: PUSH1 0x20
00004ba6: DUP6
00004ba7: LT
00004ba8: ISZERO
00004ba9: PUSH2 0x4bb0
00004bac: JUMPI
00004bad: DUP2
00004bae: SWAP1
00004baf: POP
00004bb0: JUMPDEST
00004bb1: PUSH2 0x4bc4
00004bb4: PUSH2 0x4bbc
00004bb7: DUP6
00004bb8: PUSH2 0x4a86
00004bbb: JUMP
00004bbc: JUMPDEST
00004bbd: DUP4
00004bbe: ADD
00004bbf: DUP3
00004bc0: PUSH2 0x4b63
00004bc3: JUMP
00004bc4: JUMPDEST
00004bc5: POP
00004bc6: POP
00004bc7: JUMPDEST
00004bc8: POP
00004bc9: POP
00004bca: POP
00004bcb: JUMP
00004bcc: JUMPDEST
00004bcd: PUSH1 0x00
00004bcf: DUP3
00004bd0: DUP3
00004bd1: SHR
00004bd2: SWAP1
00004bd3: POP
00004bd4: SWAP3
00004bd5: SWAP2
00004bd6: POP
00004bd7: POP
00004bd8: JUMP
00004bd9: JUMPDEST
00004bda: PUSH1 0x00
00004bdc: PUSH2 0x4bea
00004bdf: PUSH1 0x00
00004be1: NOT
00004be2: DUP5
00004be3: PUSH1 0x08
00004be5: MUL
00004be6: PUSH2 0x4bcc
00004be9: JUMP
00004bea: JUMPDEST
00004beb: NOT
00004bec: DUP1
00004bed: DUP4
00004bee: AND
00004bef: SWAP2
00004bf0: POP
00004bf1: POP
00004bf2: SWAP3
00004bf3: SWAP2
00004bf4: POP
00004bf5: POP
00004bf6: JUMP
00004bf7: JUMPDEST
00004bf8: PUSH1 0x00
00004bfa: PUSH2 0x4c03
00004bfd: DUP4
00004bfe: DUP4
00004bff: PUSH2 0x4bd9
00004c02: JUMP
00004c03: JUMPDEST
00004c04: SWAP2
00004c05: POP
00004c06: DUP3
00004c07: PUSH1 0x02
00004c09: MUL
00004c0a: DUP3
00004c0b: OR
00004c0c: SWAP1
00004c0d: POP
00004c0e: SWAP3
00004c0f: SWAP2
00004c10: POP
00004c11: POP
00004c12: JUMP
00004c13: JUMPDEST
00004c14: PUSH2 0x4c1c
00004c17: DUP3
00004c18: PUSH2 0x4021
00004c1b: JUMP
00004c1c: JUMPDEST
00004c1d: PUSH8 0xffffffffffffffff
00004c26: DUP2
00004c27: GT
00004c28: ISZERO
00004c29: PUSH2 0x4c35
00004c2c: JUMPI
00004c2d: PUSH2 0x4c34
00004c30: PUSH2 0x3e26
00004c33: JUMP
00004c34: JUMPDEST
00004c35: JUMPDEST
00004c36: PUSH2 0x4c3f
00004c39: DUP3
00004c3a: SLOAD
00004c3b: PUSH2 0x43c6
00004c3e: JUMP
00004c3f: JUMPDEST
00004c40: PUSH2 0x4c4a
00004c43: DUP3
00004c44: DUP3
00004c45: DUP6
00004c46: PUSH2 0x4b86
00004c49: JUMP
00004c4a: JUMPDEST
00004c4b: PUSH1 0x00
00004c4d: PUSH1 0x20
00004c4f: SWAP1
00004c50: POP
00004c51: PUSH1 0x1f
00004c53: DUP4
00004c54: GT
00004c55: PUSH1 0x01
00004c57: DUP2
00004c58: EQ
00004c59: PUSH2 0x4c7d
00004c5c: JUMPI
00004c5d: PUSH1 0x00
00004c5f: DUP5
00004c60: ISZERO
00004c61: PUSH2 0x4c6b
00004c64: JUMPI
00004c65: DUP3
00004c66: DUP8
00004c67: ADD
00004c68: MLOAD
00004c69: SWAP1
00004c6a: POP
00004c6b: JUMPDEST
00004c6c: PUSH2 0x4c75
00004c6f: DUP6
00004c70: DUP3
00004c71: PUSH2 0x4bf7
00004c74: JUMP
00004c75: JUMPDEST
00004c76: DUP7
00004c77: SSTORE
00004c78: POP
00004c79: PUSH2 0x4cdd
00004c7c: JUMP
00004c7d: JUMPDEST
00004c7e: PUSH1 0x1f
00004c80: NOT
00004c81: DUP5
00004c82: AND
00004c83: PUSH2 0x4c8b
00004c86: DUP7
00004c87: PUSH2 0x4a71
00004c8a: JUMP
00004c8b: JUMPDEST
00004c8c: PUSH1 0x00
00004c8e: JUMPDEST
00004c8f: DUP3
00004c90: DUP2
00004c91: LT
00004c92: ISZERO
00004c93: PUSH2 0x4cb3
00004c96: JUMPI
00004c97: DUP5
00004c98: DUP10
00004c99: ADD
00004c9a: MLOAD
00004c9b: DUP3
00004c9c: SSTORE
00004c9d: PUSH1 0x01
00004c9f: DUP3
00004ca0: ADD
00004ca1: SWAP2
00004ca2: POP
00004ca3: PUSH1 0x20
00004ca5: DUP6
00004ca6: ADD
00004ca7: SWAP5
00004ca8: POP
00004ca9: PUSH1 0x20
00004cab: DUP2
00004cac: ADD
00004cad: SWAP1
00004cae: POP
00004caf: PUSH2 0x4c8e
00004cb2: JUMP
00004cb3: JUMPDEST
00004cb4: DUP7
00004cb5: DUP4
00004cb6: LT
00004cb7: ISZERO
00004cb8: PUSH2 0x4cd0
00004cbb: JUMPI
00004cbc: DUP5
00004cbd: DUP10
00004cbe: ADD
00004cbf: MLOAD
00004cc0: PUSH2 0x4ccc
00004cc3: PUSH1 0x1f
00004cc5: DUP10
00004cc6: AND
00004cc7: DUP3
00004cc8: PUSH2 0x4bd9
00004ccb: JUMP
00004ccc: JUMPDEST
00004ccd: DUP4
00004cce: SSTORE
00004ccf: POP
00004cd0: JUMPDEST
00004cd1: PUSH1 0x01
00004cd3: PUSH1 0x02
00004cd5: DUP9
00004cd6: MUL
00004cd7: ADD
00004cd8: DUP9
00004cd9: SSTORE
00004cda: POP
00004cdb: POP
00004cdc: POP
00004cdd: JUMPDEST
00004cde: POP
00004cdf: POP
00004ce0: POP
00004ce1: POP
00004ce2: POP
00004ce3: POP
00004ce4: JUMP
00004ce5: JUMPDEST
00004ce6: PUSH1 0x00
00004ce8: PUSH1 0x80
00004cea: DUP3
00004ceb: ADD
00004cec: SWAP1
00004ced: POP
00004cee: PUSH2 0x4cfa
00004cf1: PUSH1 0x00
00004cf3: DUP4
00004cf4: ADD
00004cf5: DUP9
00004cf6: PUSH2 0x3cd7
00004cf9: JUMP
00004cfa: JUMPDEST
00004cfb: PUSH2 0x4d07
00004cfe: PUSH1 0x20
00004d00: DUP4
00004d01: ADD
00004d02: DUP8
00004d03: PUSH2 0x3cd7
00004d06: JUMP
00004d07: JUMPDEST
00004d08: PUSH2 0x4d14
00004d0b: PUSH1 0x40
00004d0d: DUP4
00004d0e: ADD
00004d0f: DUP7
00004d10: PUSH2 0x3a85
00004d13: JUMP
00004d14: JUMPDEST
00004d15: DUP2
00004d16: DUP2
00004d17: SUB
00004d18: PUSH1 0x60
00004d1a: DUP4
00004d1b: ADD
00004d1c: MSTORE
00004d1d: PUSH2 0x4d27
00004d20: DUP2
00004d21: DUP5
00004d22: DUP7
00004d23: PUSH2 0x4535
00004d26: JUMP
00004d27: JUMPDEST
00004d28: SWAP1
00004d29: POP
00004d2a: SWAP7
00004d2b: SWAP6
00004d2c: POP
00004d2d: POP
00004d2e: POP
00004d2f: POP
00004d30: POP
00004d31: POP
00004d32: JUMP
00004d33: JUMPDEST
00004d34: PUSH32 0x4e6f6e626c6f636b696e674c7a4170703a206e6f2073746f726564206d657373
00004d55: PUSH1 0x00
00004d57: DUP3
00004d58: ADD
00004d59: MSTORE
00004d5a: PUSH32 0x6167650000000000000000000000000000000000000000000000000000000000
00004d7b: PUSH1 0x20
00004d7d: DUP3
00004d7e: ADD
00004d7f: MSTORE
00004d80: POP
00004d81: JUMP
00004d82: JUMPDEST
00004d83: PUSH1 0x00
00004d85: PUSH2 0x4d8f
00004d88: PUSH1 0x23
00004d8a: DUP4
00004d8b: PUSH2 0x38dd
00004d8e: JUMP
00004d8f: JUMPDEST
00004d90: SWAP2
00004d91: POP
00004d92: PUSH2 0x4d9a
00004d95: DUP3
00004d96: PUSH2 0x4d33
00004d99: JUMP
00004d9a: JUMPDEST
00004d9b: PUSH1 0x40
00004d9d: DUP3
00004d9e: ADD
00004d9f: SWAP1
00004da0: POP
00004da1: SWAP2
00004da2: SWAP1
00004da3: POP
00004da4: JUMP
00004da5: JUMPDEST
00004da6: PUSH1 0x00
00004da8: PUSH1 0x20
00004daa: DUP3
00004dab: ADD
00004dac: SWAP1
00004dad: POP
00004dae: DUP2
00004daf: DUP2
00004db0: SUB
00004db1: PUSH1 0x00
00004db3: DUP4
00004db4: ADD
00004db5: MSTORE
00004db6: PUSH2 0x4dbe
00004db9: DUP2
00004dba: PUSH2 0x4d82
00004dbd: JUMP
00004dbe: JUMPDEST
00004dbf: SWAP1
00004dc0: POP
00004dc1: SWAP2
00004dc2: SWAP1
00004dc3: POP
00004dc4: JUMP
00004dc5: JUMPDEST
00004dc6: PUSH32 0x4e6f6e626c6f636b696e674c7a4170703a20696e76616c6964207061796c6f61
00004de7: PUSH1 0x00
00004de9: DUP3
00004dea: ADD
00004deb: MSTORE
00004dec: PUSH32 0x6400000000000000000000000000000000000000000000000000000000000000
00004e0d: PUSH1 0x20
00004e0f: DUP3
00004e10: ADD
00004e11: MSTORE
00004e12: POP
00004e13: JUMP
00004e14: JUMPDEST
00004e15: PUSH1 0x00
00004e17: PUSH2 0x4e21
00004e1a: PUSH1 0x21
00004e1c: DUP4
00004e1d: PUSH2 0x38dd
00004e20: JUMP
00004e21: JUMPDEST
00004e22: SWAP2
00004e23: POP
00004e24: PUSH2 0x4e2c
00004e27: DUP3
00004e28: PUSH2 0x4dc5
00004e2b: JUMP
00004e2c: JUMPDEST
00004e2d: PUSH1 0x40
00004e2f: DUP3
00004e30: ADD
00004e31: SWAP1
00004e32: POP
00004e33: SWAP2
00004e34: SWAP1
00004e35: POP
00004e36: JUMP
00004e37: JUMPDEST
00004e38: PUSH1 0x00
00004e3a: PUSH1 0x20
00004e3c: DUP3
00004e3d: ADD
00004e3e: SWAP1
00004e3f: POP
00004e40: DUP2
00004e41: DUP2
00004e42: SUB
00004e43: PUSH1 0x00
00004e45: DUP4
00004e46: ADD
00004e47: MSTORE
00004e48: PUSH2 0x4e50
00004e4b: DUP2
00004e4c: PUSH2 0x4e14
00004e4f: JUMP
00004e50: JUMPDEST
00004e51: SWAP1
00004e52: POP
00004e53: SWAP2
00004e54: SWAP1
00004e55: POP
00004e56: JUMP
00004e57: JUMPDEST
00004e58: PUSH2 0x4e60
00004e5b: DUP2
00004e5c: PUSH2 0x3730
00004e5f: JUMP
00004e60: JUMPDEST
00004e61: DUP3
00004e62: MSTORE
00004e63: POP
00004e64: POP
00004e65: JUMP
00004e66: JUMPDEST
00004e67: PUSH1 0x00
00004e69: PUSH1 0x80
00004e6b: DUP3
00004e6c: ADD
00004e6d: SWAP1
00004e6e: POP
00004e6f: PUSH2 0x4e7b
00004e72: PUSH1 0x00
00004e74: DUP4
00004e75: ADD
00004e76: DUP9
00004e77: PUSH2 0x3cd7
00004e7a: JUMP
00004e7b: JUMPDEST
00004e7c: DUP2
00004e7d: DUP2
00004e7e: SUB
00004e7f: PUSH1 0x20
00004e81: DUP4
00004e82: ADD
00004e83: MSTORE
00004e84: PUSH2 0x4e8e
00004e87: DUP2
00004e88: DUP7
00004e89: DUP9
00004e8a: PUSH2 0x4535
00004e8d: JUMP
00004e8e: JUMPDEST
00004e8f: SWAP1
00004e90: POP
00004e91: PUSH2 0x4e9d
00004e94: PUSH1 0x40
00004e96: DUP4
00004e97: ADD
00004e98: DUP6
00004e99: PUSH2 0x4e57
00004e9c: JUMP
00004e9d: JUMPDEST
00004e9e: PUSH2 0x4eaa
00004ea1: PUSH1 0x60
00004ea3: DUP4
00004ea4: ADD
00004ea5: DUP5
00004ea6: PUSH2 0x3fca
00004ea9: JUMP
00004eaa: JUMPDEST
00004eab: SWAP7
00004eac: SWAP6
00004ead: POP
00004eae: POP
00004eaf: POP
00004eb0: POP
00004eb1: POP
00004eb2: POP
00004eb3: JUMP
00004eb4: JUMPDEST
00004eb5: PUSH32 0x4c7a4170703a20696e76616c6964206d696e4761730000000000000000000000
00004ed6: PUSH1 0x00
00004ed8: DUP3
00004ed9: ADD
00004eda: MSTORE
00004edb: POP
00004edc: JUMP
00004edd: JUMPDEST
00004ede: PUSH1 0x00
00004ee0: PUSH2 0x4eea
00004ee3: PUSH1 0x15
00004ee5: DUP4
00004ee6: PUSH2 0x38dd
00004ee9: JUMP
00004eea: JUMPDEST
00004eeb: SWAP2
00004eec: POP
00004eed: PUSH2 0x4ef5
00004ef0: DUP3
00004ef1: PUSH2 0x4eb4
00004ef4: JUMP
00004ef5: JUMPDEST
00004ef6: PUSH1 0x20
00004ef8: DUP3
00004ef9: ADD
00004efa: SWAP1
00004efb: POP
00004efc: SWAP2
00004efd: SWAP1
00004efe: POP
00004eff: JUMP
00004f00: JUMPDEST
00004f01: PUSH1 0x00
00004f03: PUSH1 0x20
00004f05: DUP3
00004f06: ADD
00004f07: SWAP1
00004f08: POP
00004f09: DUP2
00004f0a: DUP2
00004f0b: SUB
00004f0c: PUSH1 0x00
00004f0e: DUP4
00004f0f: ADD
00004f10: MSTORE
00004f11: PUSH2 0x4f19
00004f14: DUP2
00004f15: PUSH2 0x4edd
00004f18: JUMP
00004f19: JUMPDEST
00004f1a: SWAP1
00004f1b: POP
00004f1c: SWAP2
00004f1d: SWAP1
00004f1e: POP
00004f1f: JUMP
00004f20: JUMPDEST
00004f21: PUSH1 0x00
00004f23: PUSH1 0x60
00004f25: DUP3
00004f26: ADD
00004f27: SWAP1
00004f28: POP
00004f29: PUSH2 0x4f35
00004f2c: PUSH1 0x00
00004f2e: DUP4
00004f2f: ADD
00004f30: DUP7
00004f31: PUSH2 0x3cd7
00004f34: JUMP
00004f35: JUMPDEST
00004f36: PUSH2 0x4f42
00004f39: PUSH1 0x20
00004f3b: DUP4
00004f3c: ADD
00004f3d: DUP6
00004f3e: PUSH2 0x3cd7
00004f41: JUMP
00004f42: JUMPDEST
00004f43: PUSH2 0x4f4f
00004f46: PUSH1 0x40
00004f48: DUP4
00004f49: ADD
00004f4a: DUP5
00004f4b: PUSH2 0x3a85
00004f4e: JUMP
00004f4f: JUMPDEST
00004f50: SWAP5
00004f51: SWAP4
00004f52: POP
00004f53: POP
00004f54: POP
00004f55: POP
00004f56: JUMP
00004f57: JUMPDEST
00004f58: PUSH1 0x00
00004f5a: DUP3
00004f5b: SWAP1
00004f5c: POP
00004f5d: SWAP3
00004f5e: SWAP2
00004f5f: POP
00004f60: POP
00004f61: JUMP
00004f62: JUMPDEST
00004f63: PUSH2 0x4f6c
00004f66: DUP4
00004f67: DUP4
00004f68: PUSH2 0x4f57
00004f6b: JUMP
00004f6c: JUMPDEST
00004f6d: PUSH8 0xffffffffffffffff
00004f76: DUP2
00004f77: GT
00004f78: ISZERO
00004f79: PUSH2 0x4f85
00004f7c: JUMPI
00004f7d: PUSH2 0x4f84
00004f80: PUSH2 0x3e26
00004f83: JUMP
00004f84: JUMPDEST
00004f85: JUMPDEST
00004f86: PUSH2 0x4f8f
00004f89: DUP3
00004f8a: SLOAD
00004f8b: PUSH2 0x43c6
00004f8e: JUMP
00004f8f: JUMPDEST
00004f90: PUSH2 0x4f9a
00004f93: DUP3
00004f94: DUP3
00004f95: DUP6
00004f96: PUSH2 0x4b86
00004f99: JUMP
00004f9a: JUMPDEST
00004f9b: PUSH1 0x00
00004f9d: PUSH1 0x1f
00004f9f: DUP4
00004fa0: GT
00004fa1: PUSH1 0x01
00004fa3: DUP2
00004fa4: EQ
00004fa5: PUSH2 0x4fc9
00004fa8: JUMPI
00004fa9: PUSH1 0x00
00004fab: DUP5
00004fac: ISZERO
00004fad: PUSH2 0x4fb7
00004fb0: JUMPI
00004fb1: DUP3
00004fb2: DUP8
00004fb3: ADD
00004fb4: CALLDATALOAD
00004fb5: SWAP1
00004fb6: POP
00004fb7: JUMPDEST
00004fb8: PUSH2 0x4fc1
00004fbb: DUP6
00004fbc: DUP3
00004fbd: PUSH2 0x4bf7
00004fc0: JUMP
00004fc1: JUMPDEST
00004fc2: DUP7
00004fc3: SSTORE
00004fc4: POP
00004fc5: PUSH2 0x5029
00004fc8: JUMP
00004fc9: JUMPDEST
00004fca: PUSH1 0x1f
00004fcc: NOT
00004fcd: DUP5
00004fce: AND
00004fcf: PUSH2 0x4fd7
00004fd2: DUP7
00004fd3: PUSH2 0x4a71
00004fd6: JUMP
00004fd7: JUMPDEST
00004fd8: PUSH1 0x00
00004fda: JUMPDEST
00004fdb: DUP3
00004fdc: DUP2
00004fdd: LT
00004fde: ISZERO
00004fdf: PUSH2 0x4fff
00004fe2: JUMPI
00004fe3: DUP5
00004fe4: DUP10
00004fe5: ADD
00004fe6: CALLDATALOAD
00004fe7: DUP3
00004fe8: SSTORE
00004fe9: PUSH1 0x01
00004feb: DUP3
00004fec: ADD
00004fed: SWAP2
00004fee: POP
00004fef: PUSH1 0x20
00004ff1: DUP6
00004ff2: ADD
00004ff3: SWAP5
00004ff4: POP
00004ff5: PUSH1 0x20
00004ff7: DUP2
00004ff8: ADD
00004ff9: SWAP1
00004ffa: POP
00004ffb: PUSH2 0x4fda
00004ffe: JUMP
00004fff: JUMPDEST
00005000: DUP7
00005001: DUP4
00005002: LT
00005003: ISZERO
00005004: PUSH2 0x501c
00005007: JUMPI
00005008: DUP5
00005009: DUP10
0000500a: ADD
0000500b: CALLDATALOAD
0000500c: PUSH2 0x5018
0000500f: PUSH1 0x1f
00005011: DUP10
00005012: AND
00005013: DUP3
00005014: PUSH2 0x4bd9
00005017: JUMP
00005018: JUMPDEST
00005019: DUP4
0000501a: SSTORE
0000501b: POP
0000501c: JUMPDEST
0000501d: PUSH1 0x01
0000501f: PUSH1 0x02
00005021: DUP9
00005022: MUL
00005023: ADD
00005024: DUP9
00005025: SSTORE
00005026: POP
00005027: POP
00005028: POP
00005029: JUMPDEST
0000502a: POP
0000502b: POP
0000502c: POP
0000502d: POP
0000502e: POP
0000502f: POP
00005030: POP
00005031: JUMP
00005032: JUMPDEST
00005033: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061
00005054: PUSH1 0x00
00005056: DUP3
00005057: ADD
00005058: MSTORE
00005059: PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000
0000507a: PUSH1 0x20
0000507c: DUP3
0000507d: ADD
0000507e: MSTORE
0000507f: POP
00005080: JUMP
00005081: JUMPDEST
00005082: PUSH1 0x00
00005084: PUSH2 0x508e
00005087: PUSH1 0x26
00005089: DUP4
0000508a: PUSH2 0x38dd
0000508d: JUMP
0000508e: JUMPDEST
0000508f: SWAP2
00005090: POP
00005091: PUSH2 0x5099
00005094: DUP3
00005095: PUSH2 0x5032
00005098: JUMP
00005099: JUMPDEST
0000509a: PUSH1 0x40
0000509c: DUP3
0000509d: ADD
0000509e: SWAP1
0000509f: POP
000050a0: SWAP2
000050a1: SWAP1
000050a2: POP
000050a3: JUMP
000050a4: JUMPDEST
000050a5: PUSH1 0x00
000050a7: PUSH1 0x20
000050a9: DUP3
000050aa: ADD
000050ab: SWAP1
000050ac: POP
000050ad: DUP2
000050ae: DUP2
000050af: SUB
000050b0: PUSH1 0x00
000050b2: DUP4
000050b3: ADD
000050b4: MSTORE
000050b5: PUSH2 0x50bd
000050b8: DUP2
000050b9: PUSH2 0x5081
000050bc: JUMP
000050bd: JUMPDEST
000050be: SWAP1
000050bf: POP
000050c0: SWAP2
000050c1: SWAP1
000050c2: POP
000050c3: JUMP
000050c4: JUMPDEST
000050c5: PUSH1 0x00
000050c7: PUSH1 0x80
000050c9: DUP3
000050ca: ADD
000050cb: SWAP1
000050cc: POP
000050cd: PUSH2 0x50d9
000050d0: PUSH1 0x00
000050d2: DUP4
000050d3: ADD
000050d4: DUP8
000050d5: PUSH2 0x3cd7
000050d8: JUMP
000050d9: JUMPDEST
000050da: PUSH2 0x50e6
000050dd: PUSH1 0x20
000050df: DUP4
000050e0: ADD
000050e1: DUP7
000050e2: PUSH2 0x3cd7
000050e5: JUMP
000050e6: JUMPDEST
000050e7: PUSH2 0x50f3
000050ea: PUSH1 0x40
000050ec: DUP4
000050ed: ADD
000050ee: DUP6
000050ef: PUSH2 0x40d8
000050f2: JUMP
000050f3: JUMPDEST
000050f4: PUSH2 0x5100
000050f7: PUSH1 0x60
000050f9: DUP4
000050fa: ADD
000050fb: DUP5
000050fc: PUSH2 0x3a85
000050ff: JUMP
00005100: JUMPDEST
00005101: SWAP6
00005102: SWAP5
00005103: POP
00005104: POP
00005105: POP
00005106: POP
00005107: POP
00005108: JUMP
00005109: JUMPDEST
0000510a: PUSH1 0x00
0000510c: PUSH2 0x511c
0000510f: PUSH2 0x5117
00005112: DUP5
00005113: PUSH2 0x3ea1
00005116: JUMP
00005117: JUMPDEST
00005118: PUSH2 0x3e86
0000511b: JUMP
0000511c: JUMPDEST
0000511d: SWAP1
0000511e: POP
0000511f: DUP3
00005120: DUP2
00005121: MSTORE
00005122: PUSH1 0x20
00005124: DUP2
00005125: ADD
00005126: DUP5
00005127: DUP5
00005128: DUP5
00005129: ADD
0000512a: GT
0000512b: ISZERO
0000512c: PUSH2 0x5138
0000512f: JUMPI
00005130: PUSH2 0x5137
00005133: PUSH2 0x3e21
00005136: JUMP
00005137: JUMPDEST
00005138: JUMPDEST
00005139: PUSH2 0x5143
0000513c: DUP5
0000513d: DUP3
0000513e: DUP6
0000513f: PUSH2 0x38ee
00005142: JUMP
00005143: JUMPDEST
00005144: POP
00005145: SWAP4
00005146: SWAP3
00005147: POP
00005148: POP
00005149: POP
0000514a: JUMP
0000514b: JUMPDEST
0000514c: PUSH1 0x00
0000514e: DUP3
0000514f: PUSH1 0x1f
00005151: DUP4
00005152: ADD
00005153: SLT
00005154: PUSH2 0x5160
00005157: JUMPI
00005158: PUSH2 0x515f
0000515b: PUSH2 0x36cb
0000515e: JUMP
0000515f: JUMPDEST
00005160: JUMPDEST
00005161: DUP2
00005162: MLOAD
00005163: PUSH2 0x5170
00005166: DUP5
00005167: DUP3
00005168: PUSH1 0x20
0000516a: DUP7
0000516b: ADD
0000516c: PUSH2 0x5109
0000516f: JUMP
00005170: JUMPDEST
00005171: SWAP2
00005172: POP
00005173: POP
00005174: SWAP3
00005175: SWAP2
00005176: POP
00005177: POP
00005178: JUMP
00005179: JUMPDEST
0000517a: PUSH1 0x00
0000517c: PUSH1 0x20
0000517e: DUP3
0000517f: DUP5
00005180: SUB
00005181: SLT
00005182: ISZERO
00005183: PUSH2 0x518f
00005186: JUMPI
00005187: PUSH2 0x518e
0000518a: PUSH2 0x3687
0000518d: JUMP
0000518e: JUMPDEST
0000518f: JUMPDEST
00005190: PUSH1 0x00
00005192: DUP3
00005193: ADD
00005194: MLOAD
00005195: PUSH8 0xffffffffffffffff
0000519e: DUP2
0000519f: GT
000051a0: ISZERO
000051a1: PUSH2 0x51ad
000051a4: JUMPI
000051a5: PUSH2 0x51ac
000051a8: PUSH2 0x368c
000051ab: JUMP
000051ac: JUMPDEST
000051ad: JUMPDEST
000051ae: PUSH2 0x51b9
000051b1: DUP5
000051b2: DUP3
000051b3: DUP6
000051b4: ADD
000051b5: PUSH2 0x514b
000051b8: JUMP
000051b9: JUMPDEST
000051ba: SWAP2
000051bb: POP
000051bc: POP
000051bd: SWAP3
000051be: SWAP2
000051bf: POP
000051c0: POP
000051c1: JUMP
000051c2: JUMPDEST
000051c3: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300
000051e4: PUSH1 0x00
000051e6: DUP3
000051e7: ADD
000051e8: MSTORE
000051e9: POP
000051ea: JUMP
000051eb: JUMPDEST
000051ec: PUSH1 0x00
000051ee: PUSH2 0x51f8
000051f1: PUSH1 0x1f
000051f3: DUP4
000051f4: PUSH2 0x38dd
000051f7: JUMP
000051f8: JUMPDEST
000051f9: SWAP2
000051fa: POP
000051fb: PUSH2 0x5203
000051fe: DUP3
000051ff: PUSH2 0x51c2
00005202: JUMP
00005203: JUMPDEST
00005204: PUSH1 0x20
00005206: DUP3
00005207: ADD
00005208: SWAP1
00005209: POP
0000520a: SWAP2
0000520b: SWAP1
0000520c: POP
0000520d: JUMP
0000520e: JUMPDEST
0000520f: PUSH1 0x00
00005211: PUSH1 0x20
00005213: DUP3
00005214: ADD
00005215: SWAP1
00005216: POP
00005217: DUP2
00005218: DUP2
00005219: SUB
0000521a: PUSH1 0x00
0000521c: DUP4
0000521d: ADD
0000521e: MSTORE
0000521f: PUSH2 0x5227
00005222: DUP2
00005223: PUSH2 0x51eb
00005226: JUMP
00005227: JUMPDEST
00005228: SWAP1
00005229: POP
0000522a: SWAP2
0000522b: SWAP1
0000522c: POP
0000522d: JUMP
0000522e: JUMPDEST
0000522f: PUSH1 0x00
00005231: PUSH1 0x80
00005233: DUP3
00005234: ADD
00005235: SWAP1
00005236: POP
00005237: PUSH2 0x5243
0000523a: PUSH1 0x00
0000523c: DUP4
0000523d: ADD
0000523e: DUP8
0000523f: PUSH2 0x3cd7
00005242: JUMP
00005243: JUMPDEST
00005244: DUP2
00005245: DUP2
00005246: SUB
00005247: PUSH1 0x20
00005249: DUP4
0000524a: ADD
0000524b: MSTORE
0000524c: PUSH2 0x5255
0000524f: DUP2
00005250: DUP7
00005251: PUSH2 0x403d
00005254: JUMP
00005255: JUMPDEST
00005256: SWAP1
00005257: POP
00005258: PUSH2 0x5264
0000525b: PUSH1 0x40
0000525d: DUP4
0000525e: ADD
0000525f: DUP6
00005260: PUSH2 0x4e57
00005263: JUMP
00005264: JUMPDEST
00005265: DUP2
00005266: DUP2
00005267: SUB
00005268: PUSH1 0x60
0000526a: DUP4
0000526b: ADD
0000526c: MSTORE
0000526d: PUSH2 0x5276
00005270: DUP2
00005271: DUP5
00005272: PUSH2 0x403d
00005275: JUMP
00005276: JUMPDEST
00005277: SWAP1
00005278: POP
00005279: SWAP6
0000527a: SWAP5
0000527b: POP
0000527c: POP
0000527d: POP
0000527e: POP
0000527f: POP
00005280: JUMP
00005281: JUMPDEST
00005282: PUSH1 0x00
00005284: PUSH2 0x528c
00005287: DUP3
00005288: PUSH2 0x4021
0000528b: JUMP
0000528c: JUMPDEST
0000528d: PUSH2 0x5296
00005290: DUP2
00005291: DUP6
00005292: PUSH2 0x43f7
00005295: JUMP
00005296: JUMPDEST
00005297: SWAP4
00005298: POP
00005299: PUSH2 0x52a6
0000529c: DUP2
0000529d: DUP6
0000529e: PUSH1 0x20
000052a0: DUP7
000052a1: ADD
000052a2: PUSH2 0x38ee
000052a5: JUMP
000052a6: JUMPDEST
000052a7: DUP1
000052a8: DUP5
000052a9: ADD
000052aa: SWAP2
000052ab: POP
000052ac: POP
000052ad: SWAP3
000052ae: SWAP2
000052af: POP
000052b0: POP
000052b1: JUMP
000052b2: JUMPDEST
000052b3: PUSH1 0x00
000052b5: PUSH2 0x52be
000052b8: DUP3
000052b9: DUP5
000052ba: PUSH2 0x5281
000052bd: JUMP
000052be: JUMPDEST
000052bf: SWAP2
000052c0: POP
000052c1: DUP2
000052c2: SWAP1
000052c3: POP
000052c4: SWAP3
000052c5: SWAP2
000052c6: POP
000052c7: POP
000052c8: JUMP
000052c9: JUMPDEST
000052ca: PUSH1 0x00
000052cc: PUSH1 0xa0
000052ce: DUP3
000052cf: ADD
000052d0: SWAP1
000052d1: POP
000052d2: PUSH2 0x52de
000052d5: PUSH1 0x00
000052d7: DUP4
000052d8: ADD
000052d9: DUP9
000052da: PUSH2 0x3cd7
000052dd: JUMP
000052de: JUMPDEST
000052df: DUP2
000052e0: DUP2
000052e1: SUB
000052e2: PUSH1 0x20
000052e4: DUP4
000052e5: ADD
000052e6: MSTORE
000052e7: PUSH2 0x52f0
000052ea: DUP2
000052eb: DUP8
000052ec: PUSH2 0x403d
000052ef: JUMP
000052f0: JUMPDEST
000052f1: SWAP1
000052f2: POP
000052f3: PUSH2 0x52ff
000052f6: PUSH1 0x40
000052f8: DUP4
000052f9: ADD
000052fa: DUP7
000052fb: PUSH2 0x4e57
000052fe: JUMP
000052ff: JUMPDEST
00005300: DUP2
00005301: DUP2
00005302: SUB
00005303: PUSH1 0x60
00005305: DUP4
00005306: ADD
00005307: MSTORE
00005308: PUSH2 0x5311
0000530b: DUP2
0000530c: DUP6
0000530d: PUSH2 0x403d
00005310: JUMP
00005311: JUMPDEST
00005312: SWAP1
00005313: POP
00005314: DUP2
00005315: DUP2
00005316: SUB
00005317: PUSH1 0x80
00005319: DUP4
0000531a: ADD
0000531b: MSTORE
0000531c: PUSH2 0x5325
0000531f: DUP2
00005320: DUP5
00005321: PUSH2 0x403d
00005324: JUMP
00005325: JUMPDEST
00005326: SWAP1
00005327: POP
00005328: SWAP7
00005329: SWAP6
0000532a: POP
0000532b: POP
0000532c: POP
0000532d: POP
0000532e: POP
0000532f: POP
00005330: JUMP
00005331: JUMPDEST
00005332: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00005353: PUSH1 0x00
00005355: DUP3
00005356: ADD
00005357: MSTORE
00005358: POP
00005359: JUMP
0000535a: JUMPDEST
0000535b: PUSH1 0x00
0000535d: PUSH2 0x5367
00005360: PUSH1 0x20
00005362: DUP4
00005363: PUSH2 0x38dd
00005366: JUMP
00005367: JUMPDEST
00005368: SWAP2
00005369: POP
0000536a: PUSH2 0x5372
0000536d: DUP3
0000536e: PUSH2 0x5331
00005371: JUMP
00005372: JUMPDEST
00005373: PUSH1 0x20
00005375: DUP3
00005376: ADD
00005377: SWAP1
00005378: POP
00005379: SWAP2
0000537a: SWAP1
0000537b: POP
0000537c: JUMP
0000537d: JUMPDEST
0000537e: PUSH1 0x00
00005380: PUSH1 0x20
00005382: DUP3
00005383: ADD
00005384: SWAP1
00005385: POP
00005386: DUP2
00005387: DUP2
00005388: SUB
00005389: PUSH1 0x00
0000538b: DUP4
0000538c: ADD
0000538d: MSTORE
0000538e: PUSH2 0x5396
00005391: DUP2
00005392: PUSH2 0x535a
00005395: JUMP
00005396: JUMPDEST
00005397: SWAP1
00005398: POP
00005399: SWAP2
0000539a: SWAP1
0000539b: POP
0000539c: JUMP
0000539d: JUMPDEST
0000539e: PUSH32 0x45524332303a20617070726f76652066726f6d20746865207a65726f20616464
000053bf: PUSH1 0x00
000053c1: DUP3
000053c2: ADD
000053c3: MSTORE
000053c4: PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000
000053e5: PUSH1 0x20
000053e7: DUP3
000053e8: ADD
000053e9: MSTORE
000053ea: POP
000053eb: JUMP
000053ec: JUMPDEST
000053ed: PUSH1 0x00
000053ef: PUSH2 0x53f9
000053f2: PUSH1 0x24
000053f4: DUP4
000053f5: PUSH2 0x38dd
000053f8: JUMP
000053f9: JUMPDEST
000053fa: SWAP2
000053fb: POP
000053fc: PUSH2 0x5404
000053ff: DUP3
00005400: PUSH2 0x539d
00005403: JUMP
00005404: JUMPDEST
00005405: PUSH1 0x40
00005407: DUP3
00005408: ADD
00005409: SWAP1
0000540a: POP
0000540b: SWAP2
0000540c: SWAP1
0000540d: POP
0000540e: JUMP
0000540f: JUMPDEST
00005410: PUSH1 0x00
00005412: PUSH1 0x20
00005414: DUP3
00005415: ADD
00005416: SWAP1
00005417: POP
00005418: DUP2
00005419: DUP2
0000541a: SUB
0000541b: PUSH1 0x00
0000541d: DUP4
0000541e: ADD
0000541f: MSTORE
00005420: PUSH2 0x5428
00005423: DUP2
00005424: PUSH2 0x53ec
00005427: JUMP
00005428: JUMPDEST
00005429: SWAP1
0000542a: POP
0000542b: SWAP2
0000542c: SWAP1
0000542d: POP
0000542e: JUMP
0000542f: JUMPDEST
00005430: PUSH32 0x45524332303a20617070726f766520746f20746865207a65726f206164647265
00005451: PUSH1 0x00
00005453: DUP3
00005454: ADD
00005455: MSTORE
00005456: PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000
00005477: PUSH1 0x20
00005479: DUP3
0000547a: ADD
0000547b: MSTORE
0000547c: POP
0000547d: JUMP
0000547e: JUMPDEST
0000547f: PUSH1 0x00
00005481: PUSH2 0x548b
00005484: PUSH1 0x22
00005486: DUP4
00005487: PUSH2 0x38dd
0000548a: JUMP
0000548b: JUMPDEST
0000548c: SWAP2
0000548d: POP
0000548e: PUSH2 0x5496
00005491: DUP3
00005492: PUSH2 0x542f
00005495: JUMP
00005496: JUMPDEST
00005497: PUSH1 0x40
00005499: DUP3
0000549a: ADD
0000549b: SWAP1
0000549c: POP
0000549d: SWAP2
0000549e: SWAP1
0000549f: POP
000054a0: JUMP
000054a1: JUMPDEST
000054a2: PUSH1 0x00
000054a4: PUSH1 0x20
000054a6: DUP3
000054a7: ADD
000054a8: SWAP1
000054a9: POP
000054aa: DUP2
000054ab: DUP2
000054ac: SUB
000054ad: PUSH1 0x00
000054af: DUP4
000054b0: ADD
000054b1: MSTORE
000054b2: PUSH2 0x54ba
000054b5: DUP2
000054b6: PUSH2 0x547e
000054b9: JUMP
000054ba: JUMPDEST
000054bb: SWAP1
000054bc: POP
000054bd: SWAP2
000054be: SWAP1
000054bf: POP
000054c0: JUMP
000054c1: JUMPDEST
000054c2: PUSH32 0x45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000
000054e3: PUSH1 0x00
000054e5: DUP3
000054e6: ADD
000054e7: MSTORE
000054e8: POP
000054e9: JUMP
000054ea: JUMPDEST
000054eb: PUSH1 0x00
000054ed: PUSH2 0x54f7
000054f0: PUSH1 0x1d
000054f2: DUP4
000054f3: PUSH2 0x38dd
000054f6: JUMP
000054f7: JUMPDEST
000054f8: SWAP2
000054f9: POP
000054fa: PUSH2 0x5502
000054fd: DUP3
000054fe: PUSH2 0x54c1
00005501: JUMP
00005502: JUMPDEST
00005503: PUSH1 0x20
00005505: DUP3
00005506: ADD
00005507: SWAP1
00005508: POP
00005509: SWAP2
0000550a: SWAP1
0000550b: POP
0000550c: JUMP
0000550d: JUMPDEST
0000550e: PUSH1 0x00
00005510: PUSH1 0x20
00005512: DUP3
00005513: ADD
00005514: SWAP1
00005515: POP
00005516: DUP2
00005517: DUP2
00005518: SUB
00005519: PUSH1 0x00
0000551b: DUP4
0000551c: ADD
0000551d: MSTORE
0000551e: PUSH2 0x5526
00005521: DUP2
00005522: PUSH2 0x54ea
00005525: JUMP
00005526: JUMPDEST
00005527: SWAP1
00005528: POP
00005529: SWAP2
0000552a: SWAP1
0000552b: POP
0000552c: JUMP
0000552d: JUMPDEST
0000552e: PUSH32 0x45524332303a207472616e736665722066726f6d20746865207a65726f206164
0000554f: PUSH1 0x00
00005551: DUP3
00005552: ADD
00005553: MSTORE
00005554: PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000
00005575: PUSH1 0x20
00005577: DUP3
00005578: ADD
00005579: MSTORE
0000557a: POP
0000557b: JUMP
0000557c: JUMPDEST
0000557d: PUSH1 0x00
0000557f: PUSH2 0x5589
00005582: PUSH1 0x25
00005584: DUP4
00005585: PUSH2 0x38dd
00005588: JUMP
00005589: JUMPDEST
0000558a: SWAP2
0000558b: POP
0000558c: PUSH2 0x5594
0000558f: DUP3
00005590: PUSH2 0x552d
00005593: JUMP
00005594: JUMPDEST
00005595: PUSH1 0x40
00005597: DUP3
00005598: ADD
00005599: SWAP1
0000559a: POP
0000559b: SWAP2
0000559c: SWAP1
0000559d: POP
0000559e: JUMP
0000559f: JUMPDEST
000055a0: PUSH1 0x00
000055a2: PUSH1 0x20
000055a4: DUP3
000055a5: ADD
000055a6: SWAP1
000055a7: POP
000055a8: DUP2
000055a9: DUP2
000055aa: SUB
000055ab: PUSH1 0x00
000055ad: DUP4
000055ae: ADD
000055af: MSTORE
000055b0: PUSH2 0x55b8
000055b3: DUP2
000055b4: PUSH2 0x557c
000055b7: JUMP
000055b8: JUMPDEST
000055b9: SWAP1
000055ba: POP
000055bb: SWAP2
000055bc: SWAP1
000055bd: POP
000055be: JUMP
000055bf: JUMPDEST
000055c0: PUSH32 0x45524332303a207472616e7366657220746f20746865207a65726f2061646472
000055e1: PUSH1 0x00
000055e3: DUP3
000055e4: ADD
000055e5: MSTORE
000055e6: PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000
00005607: PUSH1 0x20
00005609: DUP3
0000560a: ADD
0000560b: MSTORE
0000560c: POP
0000560d: JUMP
0000560e: JUMPDEST
0000560f: PUSH1 0x00
00005611: PUSH2 0x561b
00005614: PUSH1 0x23
00005616: DUP4
00005617: PUSH2 0x38dd
0000561a: JUMP
0000561b: JUMPDEST
0000561c: SWAP2
0000561d: POP
0000561e: PUSH2 0x5626
00005621: DUP3
00005622: PUSH2 0x55bf
00005625: JUMP
00005626: JUMPDEST
00005627: PUSH1 0x40
00005629: DUP3
0000562a: ADD
0000562b: SWAP1
0000562c: POP
0000562d: SWAP2
0000562e: SWAP1
0000562f: POP
00005630: JUMP
00005631: JUMPDEST
00005632: PUSH1 0x00
00005634: PUSH1 0x20
00005636: DUP3
00005637: ADD
00005638: SWAP1
00005639: POP
0000563a: DUP2
0000563b: DUP2
0000563c: SUB
0000563d: PUSH1 0x00
0000563f: DUP4
00005640: ADD
00005641: MSTORE
00005642: PUSH2 0x564a
00005645: DUP2
00005646: PUSH2 0x560e
00005649: JUMP
0000564a: JUMPDEST
0000564b: SWAP1
0000564c: POP
0000564d: SWAP2
0000564e: SWAP1
0000564f: POP
00005650: JUMP
00005651: JUMPDEST
00005652: PUSH32 0x45524332303a207472616e7366657220616d6f756e7420657863656564732062
00005673: PUSH1 0x00
00005675: DUP3
00005676: ADD
00005677: MSTORE
00005678: PUSH32 0x616c616e63650000000000000000000000000000000000000000000000000000
00005699: PUSH1 0x20
0000569b: DUP3
0000569c: ADD
0000569d: MSTORE
0000569e: POP
0000569f: JUMP
000056a0: JUMPDEST
000056a1: PUSH1 0x00
000056a3: PUSH2 0x56ad
000056a6: PUSH1 0x26
000056a8: DUP4
000056a9: PUSH2 0x38dd
000056ac: JUMP
000056ad: JUMPDEST
000056ae: SWAP2
000056af: POP
000056b0: PUSH2 0x56b8
000056b3: DUP3
000056b4: PUSH2 0x5651
000056b7: JUMP
000056b8: JUMPDEST
000056b9: PUSH1 0x40
000056bb: DUP3
000056bc: ADD
000056bd: SWAP1
000056be: POP
000056bf: SWAP2
000056c0: SWAP1
000056c1: POP
000056c2: JUMP
000056c3: JUMPDEST
000056c4: PUSH1 0x00
000056c6: PUSH1 0x20
000056c8: DUP3
000056c9: ADD
000056ca: SWAP1
000056cb: POP
000056cc: DUP2
000056cd: DUP2
000056ce: SUB
000056cf: PUSH1 0x00
000056d1: DUP4
000056d2: ADD
000056d3: MSTORE
000056d4: PUSH2 0x56dc
000056d7: DUP2
000056d8: PUSH2 0x56a0
000056db: JUMP
000056dc: JUMPDEST
000056dd: SWAP1
000056de: POP
000056df: SWAP2
000056e0: SWAP1
000056e1: POP
000056e2: JUMP
000056e3: JUMPDEST
000056e4: PUSH32 0x45524332303a206275726e2066726f6d20746865207a65726f20616464726573
00005705: PUSH1 0x00
00005707: DUP3
00005708: ADD
00005709: MSTORE
0000570a: PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000
0000572b: PUSH1 0x20
0000572d: DUP3
0000572e: ADD
0000572f: MSTORE
00005730: POP
00005731: JUMP
00005732: JUMPDEST
00005733: PUSH1 0x00
00005735: PUSH2 0x573f
00005738: PUSH1 0x21
0000573a: DUP4
0000573b: PUSH2 0x38dd
0000573e: JUMP
0000573f: JUMPDEST
00005740: SWAP2
00005741: POP
00005742: PUSH2 0x574a
00005745: DUP3
00005746: PUSH2 0x56e3
00005749: JUMP
0000574a: JUMPDEST
0000574b: PUSH1 0x40
0000574d: DUP3
0000574e: ADD
0000574f: SWAP1
00005750: POP
00005751: SWAP2
00005752: SWAP1
00005753: POP
00005754: JUMP
00005755: JUMPDEST
00005756: PUSH1 0x00
00005758: PUSH1 0x20
0000575a: DUP3
0000575b: ADD
0000575c: SWAP1
0000575d: POP
0000575e: DUP2
0000575f: DUP2
00005760: SUB
00005761: PUSH1 0x00
00005763: DUP4
00005764: ADD
00005765: MSTORE
00005766: PUSH2 0x576e
00005769: DUP2
0000576a: PUSH2 0x5732
0000576d: JUMP
0000576e: JUMPDEST
0000576f: SWAP1
00005770: POP
00005771: SWAP2
00005772: SWAP1
00005773: POP
00005774: JUMP
00005775: JUMPDEST
00005776: PUSH32 0x45524332303a206275726e20616d6f756e7420657863656564732062616c616e
00005797: PUSH1 0x00
00005799: DUP3
0000579a: ADD
0000579b: MSTORE
0000579c: PUSH32 0x6365000000000000000000000000000000000000000000000000000000000000
000057bd: PUSH1 0x20
000057bf: DUP3
000057c0: ADD
000057c1: MSTORE
000057c2: POP
000057c3: JUMP
000057c4: JUMPDEST
000057c5: PUSH1 0x00
000057c7: PUSH2 0x57d1
000057ca: PUSH1 0x22
000057cc: DUP4
000057cd: PUSH2 0x38dd
000057d0: JUMP
000057d1: JUMPDEST
000057d2: SWAP2
000057d3: POP
000057d4: PUSH2 0x57dc
000057d7: DUP3
000057d8: PUSH2 0x5775
000057db: JUMP
000057dc: JUMPDEST
000057dd: PUSH1 0x40
000057df: DUP3
000057e0: ADD
000057e1: SWAP1
000057e2: POP
000057e3: SWAP2
000057e4: SWAP1
000057e5: POP
000057e6: JUMP
000057e7: JUMPDEST
000057e8: PUSH1 0x00
000057ea: PUSH1 0x20
000057ec: DUP3
000057ed: ADD
000057ee: SWAP1
000057ef: POP
000057f0: DUP2
000057f1: DUP2
000057f2: SUB
000057f3: PUSH1 0x00
000057f5: DUP4
000057f6: ADD
000057f7: MSTORE
000057f8: PUSH2 0x5800
000057fb: DUP2
000057fc: PUSH2 0x57c4
000057ff: JUMP
00005800: JUMPDEST
00005801: SWAP1
00005802: POP
00005803: SWAP2
00005804: SWAP1
00005805: POP
00005806: JUMP
00005807: JUMPDEST
00005808: PUSH1 0x00
0000580a: PUSH1 0x80
0000580c: DUP3
0000580d: ADD
0000580e: SWAP1
0000580f: POP
00005810: PUSH2 0x581c
00005813: PUSH1 0x00
00005815: DUP4
00005816: ADD
00005817: DUP8
00005818: PUSH2 0x3cd7
0000581b: JUMP
0000581c: JUMPDEST
0000581d: DUP2
0000581e: DUP2
0000581f: SUB
00005820: PUSH1 0x20
00005822: DUP4
00005823: ADD
00005824: MSTORE
00005825: PUSH2 0x582e
00005828: DUP2
00005829: DUP7
0000582a: PUSH2 0x403d
0000582d: JUMP
0000582e: JUMPDEST
0000582f: SWAP1
00005830: POP
00005831: DUP2
00005832: DUP2
00005833: SUB
00005834: PUSH1 0x40
00005836: DUP4
00005837: ADD
00005838: MSTORE
00005839: PUSH2 0x5842
0000583c: DUP2
0000583d: DUP6
0000583e: PUSH2 0x403d
00005841: JUMP
00005842: JUMPDEST
00005843: SWAP1
00005844: POP
00005845: PUSH2 0x5851
00005848: PUSH1 0x60
0000584a: DUP4
0000584b: ADD
0000584c: DUP5
0000584d: PUSH2 0x3a85
00005850: JUMP
00005851: JUMPDEST
00005852: SWAP6
00005853: SWAP5
00005854: POP
00005855: POP
00005856: POP
00005857: POP
00005858: POP
00005859: JUMP
0000585a: JUMPDEST
0000585b: PUSH32 0x4e61746976654f46543a205f61646170746572506172616d73206d7573742062
0000587c: PUSH1 0x00
0000587e: DUP3
0000587f: ADD
00005880: MSTORE
00005881: PUSH32 0x6520656d7074792e000000000000000000000000000000000000000000000000
000058a2: PUSH1 0x20
000058a4: DUP3
000058a5: ADD
000058a6: MSTORE
000058a7: POP
000058a8: JUMP
000058a9: JUMPDEST
000058aa: PUSH1 0x00
000058ac: PUSH2 0x58b6
000058af: PUSH1 0x28
000058b1: DUP4
000058b2: PUSH2 0x38dd
000058b5: JUMP
000058b6: JUMPDEST
000058b7: SWAP2
000058b8: POP
000058b9: PUSH2 0x58c1
000058bc: DUP3
000058bd: PUSH2 0x585a
000058c0: JUMP
000058c1: JUMPDEST
000058c2: PUSH1 0x40
000058c4: DUP3
000058c5: ADD
000058c6: SWAP1
000058c7: POP
000058c8: SWAP2
000058c9: SWAP1
000058ca: POP
000058cb: JUMP
000058cc: JUMPDEST
000058cd: PUSH1 0x00
000058cf: PUSH1 0x20
000058d1: DUP3
000058d2: ADD
000058d3: SWAP1
000058d4: POP
000058d5: DUP2
000058d6: DUP2
000058d7: SUB
000058d8: PUSH1 0x00
000058da: DUP4
000058db: ADD
000058dc: MSTORE
000058dd: PUSH2 0x58e5
000058e0: DUP2
000058e1: PUSH2 0x58a9
000058e4: JUMP
000058e5: JUMPDEST
000058e6: SWAP1
000058e7: POP
000058e8: SWAP2
000058e9: SWAP1
000058ea: POP
000058eb: JUMP
000058ec: JUMPDEST
000058ed: PUSH32 0x4f4654436f72653a20756e6b6e6f776e207061636b6574207479706500000000
0000590e: PUSH1 0x00
00005910: DUP3
00005911: ADD
00005912: MSTORE
00005913: POP
00005914: JUMP
00005915: JUMPDEST
00005916: PUSH1 0x00
00005918: PUSH2 0x5922
0000591b: PUSH1 0x1c
0000591d: DUP4
0000591e: PUSH2 0x38dd
00005921: JUMP
00005922: JUMPDEST
00005923: SWAP2
00005924: POP
00005925: PUSH2 0x592d
00005928: DUP3
00005929: PUSH2 0x58ec
0000592c: JUMP
0000592d: JUMPDEST
0000592e: PUSH1 0x20
00005930: DUP3
00005931: ADD
00005932: SWAP1
00005933: POP
00005934: SWAP2
00005935: SWAP1
00005936: POP
00005937: JUMP
00005938: JUMPDEST
00005939: PUSH1 0x00
0000593b: PUSH1 0x20
0000593d: DUP3
0000593e: ADD
0000593f: SWAP1
00005940: POP
00005941: DUP2
00005942: DUP2
00005943: SUB
00005944: PUSH1 0x00
00005946: DUP4
00005947: ADD
00005948: MSTORE
00005949: PUSH2 0x5951
0000594c: DUP2
0000594d: PUSH2 0x5915
00005950: JUMP
00005951: JUMPDEST
00005952: SWAP1
00005953: POP
00005954: SWAP2
00005955: SWAP1
00005956: POP
00005957: JUMP
00005958: JUMPDEST
00005959: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000
0000597a: PUSH1 0x00
0000597c: DUP3
0000597d: ADD
0000597e: MSTORE
0000597f: POP
00005980: JUMP
00005981: JUMPDEST
00005982: PUSH1 0x00
00005984: PUSH2 0x598e
00005987: PUSH1 0x0e
00005989: DUP4
0000598a: PUSH2 0x38dd
0000598d: JUMP
0000598e: JUMPDEST
0000598f: SWAP2
00005990: POP
00005991: PUSH2 0x5999
00005994: DUP3
00005995: PUSH2 0x5958
00005998: JUMP
00005999: JUMPDEST
0000599a: PUSH1 0x20
0000599c: DUP3
0000599d: ADD
0000599e: SWAP1
0000599f: POP
000059a0: SWAP2
000059a1: SWAP1
000059a2: POP
000059a3: JUMP
000059a4: JUMPDEST
000059a5: PUSH1 0x00
000059a7: PUSH1 0x20
000059a9: DUP3
000059aa: ADD
000059ab: SWAP1
000059ac: POP
000059ad: DUP2
000059ae: DUP2
000059af: SUB
000059b0: PUSH1 0x00
000059b2: DUP4
000059b3: ADD
000059b4: MSTORE
000059b5: PUSH2 0x59bd
000059b8: DUP2
000059b9: PUSH2 0x5981
000059bc: JUMP
000059bd: JUMPDEST
000059be: SWAP1
000059bf: POP
000059c0: SWAP2
000059c1: SWAP1
000059c2: POP
000059c3: JUMP
000059c4: JUMPDEST
000059c5: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000
000059e6: PUSH1 0x00
000059e8: DUP3
000059e9: ADD
000059ea: MSTORE
000059eb: POP
000059ec: JUMP
000059ed: JUMPDEST
000059ee: PUSH1 0x00
000059f0: PUSH2 0x59fa
000059f3: PUSH1 0x11
000059f5: DUP4
000059f6: PUSH2 0x38dd
000059f9: JUMP
000059fa: JUMPDEST
000059fb: SWAP2
000059fc: POP
000059fd: PUSH2 0x5a05
00005a00: DUP3
00005a01: PUSH2 0x59c4
00005a04: JUMP
00005a05: JUMPDEST
00005a06: PUSH1 0x20
00005a08: DUP3
00005a09: ADD
00005a0a: SWAP1
00005a0b: POP
00005a0c: SWAP2
00005a0d: SWAP1
00005a0e: POP
00005a0f: JUMP
00005a10: JUMPDEST
00005a11: PUSH1 0x00
00005a13: PUSH1 0x20
00005a15: DUP3
00005a16: ADD
00005a17: SWAP1
00005a18: POP
00005a19: DUP2
00005a1a: DUP2
00005a1b: SUB
00005a1c: PUSH1 0x00
00005a1e: DUP4
00005a1f: ADD
00005a20: MSTORE
00005a21: PUSH2 0x5a29
00005a24: DUP2
00005a25: PUSH2 0x59ed
00005a28: JUMP
00005a29: JUMPDEST
00005a2a: SWAP1
00005a2b: POP
00005a2c: SWAP2
00005a2d: SWAP1
00005a2e: POP
00005a2f: JUMP
00005a30: JUMPDEST
00005a31: PUSH32 0x4c7a4170703a206d696e4761734c696d6974206e6f7420736574000000000000
00005a52: PUSH1 0x00
00005a54: DUP3
00005a55: ADD
00005a56: MSTORE
00005a57: POP
00005a58: JUMP
00005a59: JUMPDEST
00005a5a: PUSH1 0x00
00005a5c: PUSH2 0x5a66
00005a5f: PUSH1 0x1a
00005a61: DUP4
00005a62: PUSH2 0x38dd
00005a65: JUMP
00005a66: JUMPDEST
00005a67: SWAP2
00005a68: POP
00005a69: PUSH2 0x5a71
00005a6c: DUP3
00005a6d: PUSH2 0x5a30
00005a70: JUMP
00005a71: JUMPDEST
00005a72: PUSH1 0x20
00005a74: DUP3
00005a75: ADD
00005a76: SWAP1
00005a77: POP
00005a78: SWAP2
00005a79: SWAP1
00005a7a: POP
00005a7b: JUMP
00005a7c: JUMPDEST
00005a7d: PUSH1 0x00
00005a7f: PUSH1 0x20
00005a81: DUP3
00005a82: ADD
00005a83: SWAP1
00005a84: POP
00005a85: DUP2
00005a86: DUP2
00005a87: SUB
00005a88: PUSH1 0x00
00005a8a: DUP4
00005a8b: ADD
00005a8c: MSTORE
00005a8d: PUSH2 0x5a95
00005a90: DUP2
00005a91: PUSH2 0x5a59
00005a94: JUMP
00005a95: JUMPDEST
00005a96: SWAP1
00005a97: POP
00005a98: SWAP2
00005a99: SWAP1
00005a9a: POP
00005a9b: JUMP
00005a9c: JUMPDEST
00005a9d: PUSH32 0x4c7a4170703a20676173206c696d697420697320746f6f206c6f770000000000
00005abe: PUSH1 0x00
00005ac0: DUP3
00005ac1: ADD
00005ac2: MSTORE
00005ac3: POP
00005ac4: JUMP
00005ac5: JUMPDEST
00005ac6: PUSH1 0x00
00005ac8: PUSH2 0x5ad2
00005acb: PUSH1 0x1b
00005acd: DUP4
00005ace: PUSH2 0x38dd
00005ad1: JUMP
00005ad2: JUMPDEST
00005ad3: SWAP2
00005ad4: POP
00005ad5: PUSH2 0x5add
00005ad8: DUP3
00005ad9: PUSH2 0x5a9c
00005adc: JUMP
00005add: JUMPDEST
00005ade: PUSH1 0x20
00005ae0: DUP3
00005ae1: ADD
00005ae2: SWAP1
00005ae3: POP
00005ae4: SWAP2
00005ae5: SWAP1
00005ae6: POP
00005ae7: JUMP
00005ae8: JUMPDEST
00005ae9: PUSH1 0x00
00005aeb: PUSH1 0x20
00005aed: DUP3
00005aee: ADD
00005aef: SWAP1
00005af0: POP
00005af1: DUP2
00005af2: DUP2
00005af3: SUB
00005af4: PUSH1 0x00
00005af6: DUP4
00005af7: ADD
00005af8: MSTORE
00005af9: PUSH2 0x5b01
00005afc: DUP2
00005afd: PUSH2 0x5ac5
00005b00: JUMP
00005b01: JUMPDEST
00005b02: SWAP1
00005b03: POP
00005b04: SWAP2
00005b05: SWAP1
00005b06: POP
00005b07: JUMP
00005b08: JUMPDEST
00005b09: PUSH32 0x4c7a4170703a2064657374696e6174696f6e20636861696e206973206e6f7420
00005b2a: PUSH1 0x00
00005b2c: DUP3
00005b2d: ADD
00005b2e: MSTORE
00005b2f: PUSH32 0x61207472757374656420736f7572636500000000000000000000000000000000
00005b50: PUSH1 0x20
00005b52: DUP3
00005b53: ADD
00005b54: MSTORE
00005b55: POP
00005b56: JUMP
00005b57: JUMPDEST
00005b58: PUSH1 0x00
00005b5a: PUSH2 0x5b64
00005b5d: PUSH1 0x30
00005b5f: DUP4
00005b60: PUSH2 0x38dd
00005b63: JUMP
00005b64: JUMPDEST
00005b65: SWAP2
00005b66: POP
00005b67: PUSH2 0x5b6f
00005b6a: DUP3
00005b6b: PUSH2 0x5b08
00005b6e: JUMP
00005b6f: JUMPDEST
00005b70: PUSH1 0x40
00005b72: DUP3
00005b73: ADD
00005b74: SWAP1
00005b75: POP
00005b76: SWAP2
00005b77: SWAP1
00005b78: POP
00005b79: JUMP
00005b7a: JUMPDEST
00005b7b: PUSH1 0x00
00005b7d: PUSH1 0x20
00005b7f: DUP3
00005b80: ADD
00005b81: SWAP1
00005b82: POP
00005b83: DUP2
00005b84: DUP2
00005b85: SUB
00005b86: PUSH1 0x00
00005b88: DUP4
00005b89: ADD
00005b8a: MSTORE
00005b8b: PUSH2 0x5b93
00005b8e: DUP2
00005b8f: PUSH2 0x5b57
00005b92: JUMP
00005b93: JUMPDEST
00005b94: SWAP1
00005b95: POP
00005b96: SWAP2
00005b97: SWAP1
00005b98: POP
00005b99: JUMP
00005b9a: JUMPDEST
00005b9b: PUSH2 0x5ba3
00005b9e: DUP2
00005b9f: PUSH2 0x3d01
00005ba2: JUMP
00005ba3: JUMPDEST
00005ba4: DUP3
00005ba5: MSTORE
00005ba6: POP
00005ba7: POP
00005ba8: JUMP
00005ba9: JUMPDEST
00005baa: PUSH1 0x00
00005bac: PUSH1 0xc0
00005bae: DUP3
00005baf: ADD
00005bb0: SWAP1
00005bb1: POP
00005bb2: PUSH2 0x5bbe
00005bb5: PUSH1 0x00
00005bb7: DUP4
00005bb8: ADD
00005bb9: DUP10
00005bba: PUSH2 0x3cd7
00005bbd: JUMP
00005bbe: JUMPDEST
00005bbf: DUP2
00005bc0: DUP2
00005bc1: SUB
00005bc2: PUSH1 0x20
00005bc4: DUP4
00005bc5: ADD
00005bc6: MSTORE
00005bc7: PUSH2 0x5bd0
00005bca: DUP2
00005bcb: DUP9
00005bcc: PUSH2 0x403d
00005bcf: JUMP
00005bd0: JUMPDEST
00005bd1: SWAP1
00005bd2: POP
00005bd3: DUP2
00005bd4: DUP2
00005bd5: SUB
00005bd6: PUSH1 0x40
00005bd8: DUP4
00005bd9: ADD
00005bda: MSTORE
00005bdb: PUSH2 0x5be4
00005bde: DUP2
00005bdf: DUP8
00005be0: PUSH2 0x403d
00005be3: JUMP
00005be4: JUMPDEST
00005be5: SWAP1
00005be6: POP
00005be7: PUSH2 0x5bf3
00005bea: PUSH1 0x60
00005bec: DUP4
00005bed: ADD
00005bee: DUP7
00005bef: PUSH2 0x5b9a
00005bf2: JUMP
00005bf3: JUMPDEST
00005bf4: PUSH2 0x5c00
00005bf7: PUSH1 0x80
00005bf9: DUP4
00005bfa: ADD
00005bfb: DUP6
00005bfc: PUSH2 0x40d8
00005bff: JUMP
00005c00: JUMPDEST
00005c01: DUP2
00005c02: DUP2
00005c03: SUB
00005c04: PUSH1 0xa0
00005c06: DUP4
00005c07: ADD
00005c08: MSTORE
00005c09: PUSH2 0x5c12
00005c0c: DUP2
00005c0d: DUP5
00005c0e: PUSH2 0x403d
00005c11: JUMP
00005c12: JUMPDEST
00005c13: SWAP1
00005c14: POP
00005c15: SWAP8
00005c16: SWAP7
00005c17: POP
00005c18: POP
00005c19: POP
00005c1a: POP
00005c1b: POP
00005c1c: POP
00005c1d: POP
00005c1e: JUMP
00005c1f: JUMPDEST
00005c20: PUSH1 0x00
00005c22: DUP2
00005c23: MLOAD
00005c24: SWAP1
00005c25: POP
00005c26: PUSH2 0x5c2e
00005c29: DUP2
00005c2a: PUSH2 0x369f
00005c2d: JUMP
00005c2e: JUMPDEST
00005c2f: SWAP3
00005c30: SWAP2
00005c31: POP
00005c32: POP
00005c33: JUMP
00005c34: JUMPDEST
00005c35: PUSH1 0x00
00005c37: DUP1
00005c38: PUSH1 0x00
00005c3a: DUP1
00005c3b: PUSH1 0x80
00005c3d: DUP6
00005c3e: DUP8
00005c3f: SUB
00005c40: SLT
00005c41: ISZERO
00005c42: PUSH2 0x5c4e
00005c45: JUMPI
00005c46: PUSH2 0x5c4d
00005c49: PUSH2 0x3687
00005c4c: JUMP
00005c4d: JUMPDEST
00005c4e: JUMPDEST
00005c4f: PUSH1 0x00
00005c51: PUSH2 0x5c5c
00005c54: DUP8
00005c55: DUP3
00005c56: DUP9
00005c57: ADD
00005c58: PUSH2 0x5c1f
00005c5b: JUMP
00005c5c: JUMPDEST
00005c5d: SWAP5
00005c5e: POP
00005c5f: POP
00005c60: PUSH1 0x20
00005c62: DUP6
00005c63: ADD
00005c64: MLOAD
00005c65: PUSH8 0xffffffffffffffff
00005c6e: DUP2
00005c6f: GT
00005c70: ISZERO
00005c71: PUSH2 0x5c7d
00005c74: JUMPI
00005c75: PUSH2 0x5c7c
00005c78: PUSH2 0x368c
00005c7b: JUMP
00005c7c: JUMPDEST
00005c7d: JUMPDEST
00005c7e: PUSH2 0x5c89
00005c81: DUP8
00005c82: DUP3
00005c83: DUP9
00005c84: ADD
00005c85: PUSH2 0x514b
00005c88: JUMP
00005c89: JUMPDEST
00005c8a: SWAP4
00005c8b: POP
00005c8c: POP
00005c8d: PUSH1 0x40
00005c8f: DUP6
00005c90: ADD
00005c91: MLOAD
00005c92: PUSH8 0xffffffffffffffff
00005c9b: DUP2
00005c9c: GT
00005c9d: ISZERO
00005c9e: PUSH2 0x5caa
00005ca1: JUMPI
00005ca2: PUSH2 0x5ca9
00005ca5: PUSH2 0x368c
00005ca8: JUMP
00005ca9: JUMPDEST
00005caa: JUMPDEST
00005cab: PUSH2 0x5cb6
00005cae: DUP8
00005caf: DUP3
00005cb0: DUP9
00005cb1: ADD
00005cb2: PUSH2 0x514b
00005cb5: JUMP
00005cb6: JUMPDEST
00005cb7: SWAP3
00005cb8: POP
00005cb9: POP
00005cba: PUSH1 0x60
00005cbc: PUSH2 0x5cc7
00005cbf: DUP8
00005cc0: DUP3
00005cc1: DUP9
00005cc2: ADD
00005cc3: PUSH2 0x461a
00005cc6: JUMP
00005cc7: JUMPDEST
00005cc8: SWAP2
00005cc9: POP
00005cca: POP
00005ccb: SWAP3
00005ccc: SWAP6
00005ccd: SWAP2
00005cce: SWAP5
00005ccf: POP
00005cd0: SWAP3
00005cd1: POP
00005cd2: JUMP
00005cd3: JUMPDEST
00005cd4: PUSH1 0x00
00005cd6: PUSH1 0x40
00005cd8: DUP3
00005cd9: ADD
00005cda: SWAP1
00005cdb: POP
00005cdc: DUP2
00005cdd: DUP2
00005cde: SUB
00005cdf: PUSH1 0x00
00005ce1: DUP4
00005ce2: ADD
00005ce3: MSTORE
00005ce4: PUSH2 0x5ced
00005ce7: DUP2
00005ce8: DUP6
00005ce9: PUSH2 0x403d
00005cec: JUMP
00005ced: JUMPDEST
00005cee: SWAP1
00005cef: POP
00005cf0: PUSH2 0x5cfc
00005cf3: PUSH1 0x20
00005cf5: DUP4
00005cf6: ADD
00005cf7: DUP5
00005cf8: PUSH2 0x3a85
00005cfb: JUMP
00005cfc: JUMPDEST
00005cfd: SWAP4
00005cfe: SWAP3
00005cff: POP
00005d00: POP
00005d01: POP
00005d02: JUMP
00005d03: JUMPDEST
00005d04: PUSH32 0x4e61746976654f46543a20496e73756666696369656e74206d73672e76616c75
00005d25: PUSH1 0x00
00005d27: DUP3
00005d28: ADD
00005d29: MSTORE
00005d2a: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000
00005d4b: PUSH1 0x20
00005d4d: DUP3
00005d4e: ADD
00005d4f: MSTORE
00005d50: POP
00005d51: JUMP
00005d52: JUMPDEST
00005d53: PUSH1 0x00
00005d55: PUSH2 0x5d5f
00005d58: PUSH1 0x21
00005d5a: DUP4
00005d5b: PUSH2 0x38dd
00005d5e: JUMP
00005d5f: JUMPDEST
00005d60: SWAP2
00005d61: POP
00005d62: PUSH2 0x5d6a
00005d65: DUP3
00005d66: PUSH2 0x5d03
00005d69: JUMP
00005d6a: JUMPDEST
00005d6b: PUSH1 0x40
00005d6d: DUP3
00005d6e: ADD
00005d6f: SWAP1
00005d70: POP
00005d71: SWAP2
00005d72: SWAP1
00005d73: POP
00005d74: JUMP
00005d75: JUMPDEST
00005d76: PUSH1 0x00
00005d78: PUSH1 0x20
00005d7a: DUP3
00005d7b: ADD
00005d7c: SWAP1
00005d7d: POP
00005d7e: DUP2
00005d7f: DUP2
00005d80: SUB
00005d81: PUSH1 0x00
00005d83: DUP4
00005d84: ADD
00005d85: MSTORE
00005d86: PUSH2 0x5d8e
00005d89: DUP2
00005d8a: PUSH2 0x5d52
00005d8d: JUMP
00005d8e: JUMPDEST
00005d8f: SWAP1
00005d90: POP
00005d91: SWAP2
00005d92: SWAP1
00005d93: POP
00005d94: JUMP
00005d95: JUMPDEST
00005d96: PUSH32 0x4c7a4170703a20696e76616c69642061646170746572506172616d7300000000
00005db7: PUSH1 0x00
00005db9: DUP3
00005dba: ADD
00005dbb: MSTORE
00005dbc: POP
00005dbd: JUMP
00005dbe: JUMPDEST
00005dbf: PUSH1 0x00
00005dc1: PUSH2 0x5dcb
00005dc4: PUSH1 0x1c
00005dc6: DUP4
00005dc7: PUSH2 0x38dd
00005dca: JUMP
00005dcb: JUMPDEST
00005dcc: SWAP2
00005dcd: POP
00005dce: PUSH2 0x5dd6
00005dd1: DUP3
00005dd2: PUSH2 0x5d95
00005dd5: JUMP
00005dd6: JUMPDEST
00005dd7: PUSH1 0x20
00005dd9: DUP3
00005dda: ADD
00005ddb: SWAP1
00005ddc: POP
00005ddd: SWAP2
00005dde: SWAP1
00005ddf: POP
00005de0: JUMP
00005de1: JUMPDEST
00005de2: PUSH1 0x00
00005de4: PUSH1 0x20
00005de6: DUP3
00005de7: ADD
00005de8: SWAP1
00005de9: POP
00005dea: DUP2
00005deb: DUP2
00005dec: SUB
00005ded: PUSH1 0x00
00005def: DUP4
00005df0: ADD
00005df1: MSTORE
00005df2: PUSH2 0x5dfa
00005df5: DUP2
00005df6: PUSH2 0x5dbe
00005df9: JUMP
00005dfa: JUMPDEST
00005dfb: SWAP1
00005dfc: POP
00005dfd: SWAP2
00005dfe: SWAP1
00005dff: POP
00005e00: JUMP
00005e01: JUMPDEST
00005e02: PUSH32 0x746f416464726573735f6f75744f66426f756e64730000000000000000000000
00005e23: PUSH1 0x00
00005e25: DUP3
00005e26: ADD
00005e27: MSTORE
00005e28: POP
00005e29: JUMP
00005e2a: JUMPDEST
00005e2b: PUSH1 0x00
00005e2d: PUSH2 0x5e37
00005e30: PUSH1 0x15
00005e32: DUP4
00005e33: PUSH2 0x38dd
00005e36: JUMP
00005e37: JUMPDEST
00005e38: SWAP2
00005e39: POP
00005e3a: PUSH2 0x5e42
00005e3d: DUP3
00005e3e: PUSH2 0x5e01
00005e41: JUMP
00005e42: JUMPDEST
00005e43: PUSH1 0x20
00005e45: DUP3
00005e46: ADD
00005e47: SWAP1
00005e48: POP
00005e49: SWAP2
00005e4a: SWAP1
00005e4b: POP
00005e4c: JUMP
00005e4d: JUMPDEST
00005e4e: PUSH1 0x00
00005e50: PUSH1 0x20
00005e52: DUP3
00005e53: ADD
00005e54: SWAP1
00005e55: POP
00005e56: DUP2
00005e57: DUP2
00005e58: SUB
00005e59: PUSH1 0x00
00005e5b: DUP4
00005e5c: ADD
00005e5d: MSTORE
00005e5e: PUSH2 0x5e66
00005e61: DUP2
00005e62: PUSH2 0x5e2a
00005e65: JUMP
00005e66: JUMPDEST
00005e67: SWAP1
00005e68: POP
00005e69: SWAP2
00005e6a: SWAP1
00005e6b: POP
00005e6c: JUMP
00005e6d: JUMPDEST
00005e6e: PUSH32 0x4e61746976654f46543a206661696c656420746f205f637265646974546f0000
00005e8f: PUSH1 0x00
00005e91: DUP3
00005e92: ADD
00005e93: MSTORE
00005e94: POP
00005e95: JUMP
00005e96: JUMPDEST
00005e97: PUSH1 0x00
00005e99: PUSH2 0x5ea3
00005e9c: PUSH1 0x1e
00005e9e: DUP4
00005e9f: PUSH2 0x38dd
00005ea2: JUMP
00005ea3: JUMPDEST
00005ea4: SWAP2
00005ea5: POP
00005ea6: PUSH2 0x5eae
00005ea9: DUP3
00005eaa: PUSH2 0x5e6d
00005ead: JUMP
00005eae: JUMPDEST
00005eaf: PUSH1 0x20
00005eb1: DUP3
00005eb2: ADD
00005eb3: SWAP1
00005eb4: POP
00005eb5: SWAP2
00005eb6: SWAP1
00005eb7: POP
00005eb8: JUMP
00005eb9: JUMPDEST
00005eba: PUSH1 0x00
00005ebc: PUSH1 0x20
00005ebe: DUP3
00005ebf: ADD
00005ec0: SWAP1
00005ec1: POP
00005ec2: DUP2
00005ec3: DUP2
00005ec4: SUB
00005ec5: PUSH1 0x00
00005ec7: DUP4
00005ec8: ADD
00005ec9: MSTORE
00005eca: PUSH2 0x5ed2
00005ecd: DUP2
00005ece: PUSH2 0x5e96
00005ed1: JUMP
00005ed2: JUMPDEST
00005ed3: SWAP1
00005ed4: POP
00005ed5: SWAP2
00005ed6: SWAP1
00005ed7: POP
00005ed8: JUMP
00005ed9: INVALID
00005eda: LOG2
00005edb: PUSH5 0x6970667358
00005ee1: UNKNOWN(0x22)
00005ee2: SLT
00005ee3: KECCAK256
00005ee4: JUMPI
00005ee5: MCOPY
00005ee6: UNKNOWN(0xE5)
00005ee7: UNKNOWN(0x2D)
00005ee8: SWAP5
00005ee9: UNKNOWN(0xBE)
00005eea: UNKNOWN(0xD9)
00005eeb: SWAP16
00005eec: UNKNOWN(0xAA)
00005eed: MSTORE8
00005eee: ISZERO
00005eef: SWAP14
00005ef0: GT
00005ef1: UNKNOWN(0xC7)
00005ef2: UNKNOWN(0xCE)
00005ef3: ADDRESS
00005ef4: SWAP8
00005ef5: UNKNOWN(0xA8)
00005ef6: UNKNOWN(0xCB)
00005ef7: PUSH20 0x3fd76f07f079f82edb758b1a64736f6c63430008
00005f0c: GT
00005f0d: STOP
00005f0e: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xd6d798b826c4eb1c5958ce95065a75e895dffc092f681161c1a3408c887765fd
call_targets: 0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd6d798b826c4eb1c5958ce95065a75e895dffc092f681161c1a3408c887765fd",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1"
    ],
    "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": "0xdf2a5b3b",
            "selector": "0xdf2a5b3b",
            "calldata_variants": [
                "0xdf2a5b3b",
                "0xdf2a5b3b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeab45d9c",
            "selector": "0xeab45d9c",
            "calldata_variants": [
                "0xeab45d9c",
                "0xeab45d9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb8d72b7",
            "selector": "0xeb8d72b7",
            "calldata_variants": [
                "0xeb8d72b7",
                "0xeb8d72b70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xed629c5c",
            "selector": "0xed629c5c",
            "calldata_variants": [
                "0xed629c5c",
                "0xed629c5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5ecbdbc",
            "selector": "0xf5ecbdbc",
            "calldata_variants": [
                "0xf5ecbdbc",
                "0xf5ecbdbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbaf3292d",
            "selector": "0xbaf3292d",
            "calldata_variants": [
                "0xbaf3292d",
                "0xbaf3292d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcbed8b9c",
            "selector": "0xcbed8b9c",
            "calldata_variants": [
                "0xcbed8b9c",
                "0xcbed8b9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3792,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3977,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4529,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 8,
    "guards_detected": [
        {
            "pc": 12358,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 8
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xd6d798b826c4eb1c5958ce95065a75e895dffc092f681161c1a3408c887765fd
call_targets: 0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd6d798b826c4eb1c5958ce95065a75e895dffc092f681161c1a3408c887765fd",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1edb8bded80e1b87ed19ee7d97ee80b4fdb615c1"
    ],
    "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": "0xdf2a5b3b",
            "selector": "0xdf2a5b3b",
            "calldata_variants": [
                "0xdf2a5b3b",
                "0xdf2a5b3b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeab45d9c",
            "selector": "0xeab45d9c",
            "calldata_variants": [
                "0xeab45d9c",
                "0xeab45d9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb8d72b7",
            "selector": "0xeb8d72b7",
            "calldata_variants": [
                "0xeb8d72b7",
                "0xeb8d72b70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xed629c5c",
            "selector": "0xed629c5c",
            "calldata_variants": [
                "0xed629c5c",
                "0xed629c5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5ecbdbc",
            "selector": "0xf5ecbdbc",
            "calldata_variants": [
                "0xf5ecbdbc",
                "0xf5ecbdbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbaf3292d",
            "selector": "0xbaf3292d",
            "calldata_variants": [
                "0xbaf3292d",
                "0xbaf3292d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcbed8b9c",
            "selector": "0xcbed8b9c",
            "calldata_variants": [
                "0xcbed8b9c",
                "0xcbed8b9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3792,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3977,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4529,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 8,
    "guards_detected": [
        {
            "pc": 12358,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other codex Computed CALL targets/values may allow unintended external calls with ETH 75 no
view
evidence_json
{
    "evidence": "detector_findings: \"Untrusted CALL target/value reachable\" (call_count=8) with target/value marked computed; callsites list shows CALLs at pc 0x0ed0, 0x0f89, 0x11b1, 0x141a, 0x1bbf, 0x2f94, 0x32cf, 0x35fe. Validation_json shows a single trace with constant self-target but not confirmed, so input sensitivity remains uncertain.",
    "locations": [
        "pc:0xed0",
        "pc:0xf89",
        "pc:0x11b1",
        "pc:0x141a",
        "pc:0x1bbf",
        "pc:0x2f94",
        "pc:0x32cf",
        "pc:0x35fe"
    ],
    "recommendation": "Constrain CALL targets to trusted addresses (allowlist or immutable endpoint), validate value sources, and ensure state is updated before external calls. Consider reentrancy guards on external-call paths and explicit success checks when failure should revert.",
    "exploit_scenario": "If any of the computed CALL targets/values are influenced by untrusted inputs (e.g., user-provided addresses or payloads), an attacker could trigger calls to arbitrary contracts, potentially transferring ETH or reentering before state updates. The detector trace saw a constant self-target in one run, but this was not confirmed and may be input-dependent."
}
low other codex CALL success handling unclear at pc 0x2f94 (possible silent failure) 65 no
view
evidence_json
{
    "evidence": "callsites entry for pc 12180 (0x2f94) shows CALL with `returndata_checked: null`; the immediate post-call sequence does not show a clear success gate in the local snippet, so failure handling is uncertain.",
    "locations": [
        "pc:0x2f94"
    ],
    "recommendation": "Explicitly check the CALL success flag and revert or store failed payloads for retry, depending on intended nonblocking behavior. Ensure accounting state changes are aligned with call outcomes.",
    "exploit_scenario": "If this CALL is used to forward value or invoke a receiver hook, and the success flag is ignored, a failed call could leave token/accounting state updated while the external effect did not occur, leading to stuck funds or inconsistent balances. Bytecode-only analysis cannot confirm intended semantics."
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 5
}