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

Analysis Run

019bb004-7b2e-72f1-98f3-d97b5c502053

complete
Chain ID
1
Address
Block Number
Created
Mon, Jan 12, 2026 2:24 AM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Present
Best current signal
Untrusted 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
39395 artifact.fetch complete 1 / 3 3 months ago
39396 proxy.resolve complete 1 / 3 3 months ago
39397 tool.cast_disasm complete 1 / 3 3 months ago
39398 analysis.bundle complete 1 / 3 3 months ago
39399 capability.graph complete 1 / 3 3 months ago
39400 detector.run complete 1 / 3 3 months ago
39401 validation.fork complete 1 / 3 3 months ago
39498 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
1
No findings?
no
Summary
Bytecode-only review (no source); no proxy/delegatecall patterns detected in the bundle. There are multiple low-level CALLs with computed targets/values and unknown returndatachecking; this needs manual verification of call target control and reentrancy safety.
View stdout
{"no_findings":false,"summary":"Bytecode-only review (no source); no proxy/delegatecall patterns detected in the bundle. There are multiple low-level CALLs with computed targets/values and unknown returndatachecking; this needs manual verification of call target control and reentrancy safety.","findings":[{"severity":"low","category":"reentrancy","title":"External CALLs use computed target/value; untrusted-call and reentrancy risk depends on target control","exploit_scenario":"If any of the CALLs take a user-influenced address or transfer ETH before state is fully updated, an attacker could redirect calls or reenter through a malicious contract, potentially draining funds or breaking accounting invariants. Bytecode evidence does not prove target control, so this is a conditional risk.","recommendation":"Trace each CALL site to confirm whether the target/value are fixed or owner-controlled and whether state updates occur before the call. If any are user-controlled or send ETH, apply checks-effects-interactions and/or a reentrancy guard, and validate return data explicitly.","evidence":"BYTECODE_BUNDLE.json lists 9 CALL sites with target_expression_category=\"computed\" and value_expression_category=\"computed\" plus returndata_checked=null. Detector findings flag “Untrusted CALL target/value reachable” and “ETH value transfer possible,” but validation did not confirm variable targets, so impact is uncertain.","locations":["pc:3029","pc:4158","pc:4462","pc:5046","pc:5231","pc:7372","pc:8451","pc:9806","pc:12104"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-nkb5na0f
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019bb035-3479-7d51-9a19-e28f196236c6
--------
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-nkb5na0f succeeded in 7ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-nkb5na0f succeeded in 39ms:
{
  "analysis_artifact": {
    "address": "0xd2fe354cfebaa06f2140f13b66d0b3e1fc3ceec0",
    "artifact_hash": "0xa66bd2003fe15e909061032870127e3477c232870c554958eac1dcec0db6c93f",
    "artifact_json": {
      "auth": {
        "guards": [
          {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          }
        ]
      },
      "basic_blocks": [
        {
          "end_pc": 12,
          "hash": "0x0a4a09135d359fee13d29b94a7cc07018844f2fb9e6117539e0f1086b36d3292",
          "opcodes": [
            "PUSH1",

thinking
**Inspecting for proxy indicators**
exec
/bin/bash -lc 'rg -n "1967|eip|beacon|delegatecall|proxy|implementation" BYTECODE_BUNDLE.json' in /tmp/codex-nkb5na0f succeeded in 16ms:
17341:            "delegatecall": 0,
17766:            "delegatecall": 0,
18191:            "delegatecall": 0,
18616:            "delegatecall": 0,
19041:            "delegatecall": 0,
19466:            "delegatecall": 0,
19891:            "delegatecall": 0,
20316:            "delegatecall": 0,
20741:            "delegatecall": 0,
21166:            "delegatecall": 0,
21591:            "delegatecall": 0,
22016:            "delegatecall": 0,
22441:            "delegatecall": 0,
22866:            "delegatecall": 0,
23291:            "delegatecall": 0,
23716:            "delegatecall": 0,
24141:            "delegatecall": 0,
24566:            "delegatecall": 0,
24991:            "delegatecall": 0,
25416:            "delegatecall": 0,

thinking
**Analyzing callsites and access control evidence**
exec
/bin/bash -lc 'rg -n "storage|slot|mapping|owner|admin|implementation" BYTECODE_BUNDLE.json' in /tmp/codex-nkb5na0f succeeded in 8ms:
17345:          "storage": {
17347:            "slots": [
17351:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000e"
17356:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000f"
17361:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000c"
17366:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
17371:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
17376:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
17381:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000a"
17386:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
17391:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
17396:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
17401:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000e"
17406:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000c"
17411:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
17416:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
17421:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
17426:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
17431:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
17436:                "slot": "0x000000000000000000000000000000000000000000000000000000000000000c"

thinking
**Analyzing contract access control and call patterns**
exec
/bin/bash -lc 'rg -n "a9059cbb|095ea7b3|23b872dd|70a08231|dd62ed3e" BYTECODE_BUNDLE.json' in /tmp/codex-nkb5na0f succeeded in 8ms:
33975:      "full": "0x608060405260043610610228575f3560e01c80636f403b8311610122578063ac4afa38116100aa578063b86e20f01161006e578063b86e20f014610777578063bc65d92a1461078d578063c69bebe4146107b7578063f2fde38b146107df578063f5931612146108075761022f565b8063ac4afa3814610680578063adbbd04f146106bf578063b3f00674146106e9578063b66239cf14610713578063b6b55f251461074f5761022f565b80638c6682f7116100f15780638c6682f7146105c45780638d8f2adb146105ee5780638da5cb5b14610604578063a5ce3eb01461062e578063a6ce2f98146106585761022f565b80636f403b831461052057806370a54ff91461055c578063715018a61461058457806382b2e2571461059a5761022f565b806344b3b503116101b0578063569b8e2c11610174578063569b8e2c1461047a5780635f1b7f19146104a2578063690d8320146104b857806369b372f1146104e05780636e271dd5146104f65761022f565b806344b3b503146103be57806349a6bba0146103d45780634ce272ee146103fc5780634eb308ec1461042657806355a373d6146104505761022f565b80632f380b35116101f75780632f380b35146102e9578063310f879e146103285780633785778b14610364578063439370b11461038c57806344004cc1146103965761022f565b8063065618b81461023157806316330d401461025957806319f7bd171461028357806327e235e3146102ad5761022f565b3661022f57005b005b34801561023c575f80fd5b5061025760048036038101906102529190613101565b610831565b005b348015610264575f80fd5b5061026d6108fc565b60405161027a919061314e565b60405180910390f35b34801561028e575f80fd5b50610297610902565b6040516102a4919061314e565b60405180910390f35b3480156102b8575f80fd5b506102d360048036038101906102ce91906131c1565b610908565b6040516102e0919061314e565b60405180910390f35b3480156102f4575f80fd5b5061030f600480360381019061030a91906131ec565b61091d565b60405161031f9493929190613231565b60405180910390f35b348015610333575f80fd5b5061034e600480360381019061034991906131c1565b61098f565b60405161035b919061314e565b60405180910390f35b34801561036f575f80fd5b5061038a60048036038101906103859190613274565b6109a4565b005b610394610a57565b005b3480156103a1575f80fd5b506103bc60048036038101906103b791906132c4565b610b11565b005b3480156103c9575f80fd5b506103d2610c0e565b005b3480156103df575f80fd5b506103fa60048036038101906103f591906131ec565b610c94565b005b348015610407575f80fd5b50610410610d1c565b60405161041d919061314e565b60405180910390f35b348015610431575f80fd5b5061043a610d22565b604051610447919061314e565b60405180910390f35b34801561045b575f80fd5b50610464610d28565b6040516104719190613323565b60405180910390f35b348015610485575f80fd5b506104a0600480360381019061049b91906131ec565b610d40565b005b3480156104ad575f80fd5b506104b6610e43565b005b3480156104c3575f80fd5b506104de60048036038101906104d991906131c1565b6110c3565b005b3480156104eb575f80fd5b506104f4611186565b005b348015610501575f80fd5b5061050a6114f6565b604051610517919061314e565b60405180910390f35b34801561052b575f80fd5b50610546600480360381019061054191906131c1565b6114fc565b604051610553919061314e565b60405180910390f35b348015610567575f80fd5b50610582600480360381019061057d9190613101565b61164f565b005b34801561058f575f80fd5b506105986117b9565b005b3480156105a5575f80fd5b506105ae611840565b6040516105bb919061314e565b60405180910390f35b3480156105cf575f80fd5b506105d861194e565b6040516105e5919061314e565b60405180910390f35b3480156105f9575f80fd5b50610602611954565b005b34801561060f575f80fd5b50610618611d51565b6040516106259190613323565b60405180910390f35b348015610639575f80fd5b50610642611d78565b60405161064f919061314e565b60405180910390f35b348015610663575f80fd5b5061067e60048036038101906106799190613101565b611d7e565b005b34801561068b575f80fd5b506106a660048036038101906106a191906131ec565b611e0c565b6040516106b69493929190613231565b60405180910390f35b3480156106ca575f80fd5b506106d3611e44565b6040516106e0919061314e565b60405180910390f35b3480156106f4575f80fd5b506106fd611e4a565b60405161070a9190613323565b60405180910390f35b34801561071e575f80fd5b50610739600480360381019061073491906131c1565b611e6f565b604051610746919061314e565b60405180910390f35b34801561075a575f80fd5b50610775600480360381019061077091906131ec565b611e84565b005b348015610782575f80fd5b5061078b612296565b005b348015610798575f80fd5b506107a161270b565b6040516107ae919061314e565b60405180910390f35b3480156107c2575f80fd5b506107dd60048036038101906107d891906131c1565b612711565b005b3480156107ea575f80fd5b50610805600480360381019061080091906131c1565b612896565b005b348015610812575f80fd5b5061081b61298c565b604051610828919061314e565b60405180910390f35b610839612992565b73ffffffffffffffffffffffffffffffffffffffff16610857611d51565b73ffffffffffffffffffffffffffffffffffffffff16146108ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a490613396565b60405180910390fd5b81600e8190555080600f819055507ffaaff2d71e3b866f9eb7e0d3b24e8f3d7c8eba101e98a4e21df30de6885f5041600e54600f546040516108f09291906133b4565b60405180910390a15050565b600c5481565b60065481565b6002602052805f5260405f205f915090505481565b5f805f8060105f8681526020019081526020015f205f015460105f8781526020019081526020015f206001015460105f8881526020019081526020015f206002015460105f8981526020019081526020015f206003015f9054906101000a900460ff1693509350935093509193509193565b600a602052805f5260405f205f915090505481565b6109ac612992565b73ffffffffffffffffffffffffffffffffffffffff166109ca611d51565b73ffffffffffffffffffffffffffffffffffffffff1614610a20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1790613396565b60405180910390fd5b8160105f8581526020019081526020015f20600101819055508060105f8581526020019081526020015f2060020181905550505050565b610a5f611d51565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610acc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac390613425565b60405180910390fd5b610af53460105f60075481526020019081526020015f206002015461299990919063ffffffff16565b60105f60075481526020019081526020015f2060020181905550565b610b19612992565b73ffffffffffffffffffffffffffffffffffffffff16610b37611d51565b73ffffffffffffffffffffffffffffffffffffffff1614610b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8490613396565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401610bc8929190613443565b6020604051808303815f875af1158015610be4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c089190613494565b50505050565b610c16612992565b73ffffffffffffffffffffffffffffffffffffffff16610c34611d51565b73ffffffffffffffffffffffffffffffffffffffff1614610c8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8190613396565b60405180910390fd5b610c926129f6565b565b610c9c612992565b73ffffffffffffffffffffffffffffffffffffffff16610cba611d51565b73ffffffffffffffffffffffffffffffffffffffff1614610d10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0790613396565b60405180910390fd5b610d1981612a7b565b50565b60075481565b600e5481565b73292fcdd1b104de5a00250febba9bc6a5092a007681565b610d48612992565b73ffffffffffffffffffffffffffffffffffffffff16610d66611d51565b73ffffffffffffffffffffffffffffffffffffffff1614610dbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db390613396565b60405180910390fd5b6032811115610e00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df790613509565b60405180910390fd5b80600c819055507fe94edcc114da5287ecb30ee8aacf12e6c16b11b8583d7f9e477ab1616e33d53d600c54604051610e38919061314e565b60405180910390a150565b5f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411610ec2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb990613571565b60405180910390fd5b600454421015610f07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efe906135d9565b60405180910390fd5b610f5960025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054600654612afd90919063ffffffff16565b6006819055505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555073292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611031929190613443565b6020604051808303815f875af115801561104d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110719190613494565b5060016008546110819190613624565b6008819055507f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d533826040516110b8929190613443565b60405180910390a150565b6110cb612992565b73ffffffffffffffffffffffffffffffffffffffff166110e9611d51565b73ffffffffffffffffffffffffffffffffffffffff161461113f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113690613396565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015611182573d5f803e3d5ffd5b5050565b5f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411611205576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111fc90613571565b60405180910390fd5b61125760025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054600654612afd90919063ffffffff16565b6006819055505f6112c360646112b5600c5460025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054612b4690919063ffffffff16565b612bbd90919063ffffffff16565b90505f6113168260025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054612afd90919063ffffffff16565b90505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555073292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b81526004016113a9929190613443565b6020604051808303815f875af11580156113c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e99190613494565b505f8211156114a45773292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401611462929190613443565b6020604051808303815f875af115801561147e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114a29190613494565b505b60016008546114b39190613624565b6008819055507f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d533826040516114ea929190613443565b60405180910390a15050565b60045481565b5f805f600754905060105f60075481526020019081526020015f206003015f9054906101000a900460ff161561153e57600160075461153b9190613657565b90505b5f6001600a5f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115899190613657565b90505b81811015611644575f61161f60105f8481526020019081526020015f206001015461161160025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460105f8781526020019081526020015f2060020154612b4690919063ffffffff16565b612bbd90919063ffffffff16565b9050611634818561299990919063ffffffff16565b935050808060010191505061158c565b508192505050919050565b611657612992565b73ffffffffffffffffffffffffffffffffffffffff16611675611d51565b73ffffffffffffffffffffffffffffffffffffffff16146116cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116c290613396565b60405180910390fd5b60105f60075481526020019081526020015f206003015f9054906101000a900460ff16806116fa57505f600754145b611739576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611730906136d4565b60405180910390fd5b816003819055508060048190555060016007546117569190613657565b60078190555060075460105f60075481526020019081526020015f205f01819055507f8a3184431b8f0b032dfb64da3067c26e235378412d8a32827526ab11984400cf6003546004546040516117ad9291906133b4565b60405180910390a15050565b6117c1612992565b73ffffffffffffffffffffffffffffffffffffffff166117df611d51565b73ffffffffffffffffffffffffffffffffffffffff1614611835576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182c90613396565b60405180910390fd5b61183e5f612c06565b565b5f611849612992565b73ffffffffffffffffffffffffffffffffffffffff16611867611d51565b73ffffffffffffffffffffffffffffffffffffffff16146118bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b490613396565b60405180910390fd5b73292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161190a9190613323565b602060405180830381865afa158015611925573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119499190613706565b905090565b60095481565b5f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054116119d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ca90613571565b60405180910390fd5b600454421015806119e657506003544211155b611a25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1c906135d9565b60405180910390fd5b600754600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054108015611a7557506004544210155b15611afd57600754600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015611afc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af39061377b565b60405180910390fd5b5b6003544211611b95576001600754611b159190613624565b600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015611b94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8b9061377b565b60405180910390fd5b5b611be760025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054600654612afd90919063ffffffff16565b6006819055505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555073292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611cbf929190613443565b6020604051808303815f875af1158015611cdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cff9190613494565b506001600854611d0f9190613624565b6008819055507f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d53382604051611d46929190613443565b60405180910390a150565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60055481565b611d86612992565b73ffffffffffffffffffffffffffffffffffffffff16611da4611d51565b73ffffffffffffffffffffffffffffffffffffffff1614611dfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df190613396565b60405180910390fd5b81600381905550806004819055505050565b6010602052805f5260405f205f91509050805f015490806001015490806002015490806003015f9054906101000a900460ff16905084565b60085481565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b602052805f5260405f205f915090505481565b611e8c612cc7565b600354421115611ed1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec8906137e3565b60405180910390fd5b600f5481600654611ee29190613657565b1115611f23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1a9061384b565b60405180910390fd5b600e548160025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f6f9190613657565b1115611fb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa7906138b3565b60405180910390fd5b6001600754611fbf9190613624565b600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410801561204657505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054115b156120555761205433612d0d565b5b60016007546120649190613624565b600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555073292fcdd1b104de5a00250febba9bc6a5092a007673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b81526004016120f6939291906138d1565b6020604051808303815f875af1158015612112573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121369190613494565b505f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054036121a657600160085461218a9190613657565b600881905550600160095461219f9190613657565b6009819055505b6121f68160025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461299990919063ffffffff16565b60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061224c8160065461299990919063ffffffff16565b6006819055507f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c43382604051612283929190613443565b60405180910390a1612293612ffe565b50565b61229e612cc7565b6004544210156122e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122da90613950565b60405180910390fd5b5f60025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411612362576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235990613571565b60405180910390fd5b600754600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054106123e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123da906139b8565b60405180910390fd5b60105f60075481526020019081526020015f206003015f9054906101000a900460ff16612413576124126129f6565b5b5f806001600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461245f9190613657565b90505b60016007546124719190613657565b811015612528575f61250360105f8481526020019081526020015f20600101546124f560025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460105f8781526020019081526020015f2060020154612b4690919063ffffffff16565b612bbd90919063ffffffff16565b9050612518818461299990919063ffffffff16565b9250508080600101915050612462565b50600754600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506125828160055461299990919063ffffffff16565b6005819055506125d881600b5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461299990919063ffffffff16565b600b5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff16826175309060405161264290613a03565b5f60405180830381858888f193505050503d805f811461267d576040519150601f19603f3d011682016040523d82523d5f602084013e612682565b606091505b50509050806126c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126bd90613a61565b60405180910390fd5b7fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a33836040516126f7929190613443565b60405180910390a15050612709612ffe565b565b600f5481565b612719612992565b73ffffffffffffffffffffffffffffffffffffffff16612737611d51565b73ffffffffffffffffffffffffffffffffffffffff161461278d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161278490613396565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036127fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127f290613ac9565b60405180910390fd5b80600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fb4280c2c6d34a766a6e479b994060c3b1390228520ecfccc63ce21cd32ebbc64600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405161288b9190613323565b60405180910390a150565b61289e612992565b73ffffffffffffffffffffffffffffffffffffffff166128bc611d51565b73ffffffffffffffffffffffffffffffffffffffff1614612912576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161290990613396565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612980576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297790613b57565b60405180910390fd5b61298981612c06565b50565b60035481565b5f33905090565b5f8082846129a79190613657565b9050838110156129ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129e390613bbf565b60405180910390fd5b8091505092915050565b60065460105f60075481526020019081526020015f2060010181905550600160105f60075481526020019081526020015f206003015f6101000a81548160ff0219169083151502179055507f41493253ae80c9f89e25283c36f67849365d0515134ce43de1314223cb6f73426001604051612a719190613bdd565b60405180910390a1565b60065460105f8381526020019081526020015f2060010181905550600160105f8381526020019081526020015f206003015f6101000a81548160ff0219169083151502179055507f41493253ae80c9f89e25283c36f67849365d0515134ce43de1314223cb6f73426001604051612af29190613bdd565b60405180910390a150565b5f612b3e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613007565b905092915050565b5f808303612b56575f9050612bb7565b5f8284612b639190613bf6565b9050828482612b729190613c64565b14612bb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ba990613d04565b60405180910390fd5b809150505b92915050565b5f612bfe83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613069565b905092915050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260015403612d03576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600181905550565b5f806001600a5f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054612d599190613657565b90505b600754811015612e16575f612df160105f8481526020019081526020015f2060010154612de360025f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460105f8781526020019081526020015f2060020154612b4690919063ffffffff16565b612bbd90919063ffffffff16565b9050612e06818461299990919063ffffffff16565b9250508080600101915050612d5c565b506001600754612e269190613624565b600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550612e7c8160055461299990919063ffffffff16565b600581905550612ed281600b5f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461299990919063ffffffff16565b600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8273ffffffffffffffffffffffffffffffffffffffff168261753090604051612f3c90613a03565b5f60405180830381858888f193505050503d805f8114612f77576040519150601f19603f3d011682016040523d82523d5f602084013e612f7c565b606091505b5050905080612fc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fb790613a61565b60405180910390fd5b7fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a8383604051612ff1929190613443565b60405180910390a1505050565b60018081905550565b5f83831115829061304e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130459190613d82565b60405180910390fd5b505f838561305c9190613624565b9050809150509392505050565b5f80831182906130af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130a69190613d82565b60405180910390fd5b505f83856130bd9190613c64565b9050809150509392505050565b5f80fd5b5f819050919050565b6130e0816130ce565b81146130ea575f80fd5b50565b5f813590506130fb816130d7565b92915050565b5f8060408385031215613117576131166130ca565b5b5f613124858286016130ed565b9250506020613135858286016130ed565b9150509250929050565b613148816130ce565b82525050565b5f6020820190506131615f83018461313f565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61319082613167565b9050919050565b6131a081613186565b81146131aa575f80fd5b50565b5f813590506131bb81613197565b92915050565b5f602082840312156131d6576131d56130ca565b5b5f6131e3848285016131ad565b91505092915050565b5f60208284031215613201576132006130ca565b5b5f61320e848285016130ed565b91505092915050565b5f8115159050919050565b61322b81613217565b82525050565b5f6080820190506132445f83018761313f565b613251602083018661313f565b61325e604083018561313f565b61326b6060830184613222565b95945050505050565b5f805f6060848603121561328b5761328a6130ca565b5b5f613298868287016130ed565b93505060206132a9868287016130ed565b92505060406132ba868287016130ed565b9150509250925092565b5f805f606084860312156132db576132da6130ca565b5b5f6132e8868287016131ad565b93505060206132f9868287016131ad565b925050604061330a868287016130ed565b9150509250925092565b61331d81613186565b82525050565b5f6020820190506133365f830184613314565b92915050565b5f82825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61338060208361333c565b915061338b8261334c565b602082019050919050565b5f6020820190508181035f8301526133ad81613374565b9050919050565b5f6040820190506133c75f83018561313f565b6133d4602083018461313f565b9392505050565b7f6e6f7420746865206f776e6572000000000000000000000000000000000000005f82015250565b5f61340f600d8361333c565b915061341a826133db565b602082019050919050565b5f6020820190508181035f83015261343c81613403565b9050919050565b5f6040820190506134565f830185613314565b613463602083018461313f565b9392505050565b61347381613217565b811461347d575f80fd5b50565b5f8151905061348e8161346a565b92915050565b5f602082840312156134a9576134a86130ca565b5b5f6134b684828501613480565b91505092915050565b7f43616e277420676f2074686174206869676800000000000000000000000000005f82015250565b5f6134f360128361333c565b91506134fe826134bf565b602082019050919050565b5f6020820190508181035f830152613520816134e7565b9050919050565b7f4e6f2062616c616e6365000000000000000000000000000000000000000000005f82015250565b5f61355b600a8361333c565b915061356682613527565b602082019050919050565b5f6020820190508181035f8301526135888161354f565b9050919050565b7f43616e27742077697468647261772c20796574000000000000000000000000005f82015250565b5f6135c360138361333c565b91506135ce8261358f565b602082019050919050565b5f6020820190508181035f8301526135f0816135b7565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61362e826130ce565b9150613639836130ce565b9250828203905081811115613651576136506135f7565b5b92915050565b5f613661826130ce565b915061366c836130ce565b9250828201905080821115613684576136836135f7565b5b92915050565b7f506f6f6c206973206e6f742066696e616c697a65642c207965740000000000005f82015250565b5f6136be601a8361333c565b91506136c98261368a565b602082019050919050565b5f6020820190508181035f8301526136eb816136b2565b9050919050565b5f81519050613700816130d7565b92915050565b5f6020828403121561371b5761371a6130ca565b5b5f613728848285016136f2565b91505092915050565b7f436c61696d2052657761726473204669727374000000000000000000000000005f82015250565b5f61376560138361333c565b915061377082613731565b602082019050919050565b5f6020820190508181035f83015261379281613759565b9050919050565b7f546f6f206c61746520666f72207468697320706f6f6c000000000000000000005f82015250565b5f6137cd60168361333c565b91506137d882613799565b602082019050919050565b5f6020820190508181035f8301526137fa816137c1565b9050919050565b7f506f6f6c20616c72656164792066756c6c0000000000000000000000000000005f82015250565b5f61383560118361333c565b915061384082613801565b602082019050919050565b5f6020820190508181035f83015261386281613829565b9050919050565b7f43616e2774207374616b652074686174206d75636800000000000000000000005f82015250565b5f61389d60158361333c565b91506138a882613869565b602082019050919050565b5f6020820190508181035f8301526138ca81613891565b9050919050565b5f6060820190506138e45f830186613314565b6138f16020830185613314565b6138fe604083018461313f565b949350505050565b7f43616e277420636c61696d2c20796574000000000000000000000000000000005f82015250565b5f61393a60108361333c565b915061394582613906565b602082019050919050565b5f6020820190508181035f8301526139678161392e565b9050919050565b7f416c726561647920436c61696d656400000000000000000000000000000000005f82015250565b5f6139a2600f8361333c565b91506139ad8261396e565b602082019050919050565b5f6020820190508181035f8301526139cf81613996565b9050919050565b5f81905092915050565b50565b5f6139ee5f836139d6565b91506139f9826139e0565b5f82019050919050565b5f613a0d826139e3565b9150819050919050565b7f4661696c656420746f2073656e642045746865720000000000000000000000005f82015250565b5f613a4b60148361333c565b9150613a5682613a17565b602082019050919050565b5f6020820190508181035f830152613a7881613a3f565b9050919050565b7f5a65726f20616464726573732076616c69646174696f6e0000000000000000005f82015250565b5f613ab360178361333c565b9150613abe82613a7f565b602082019050919050565b5f6020820190508181035f830152613ae081613aa7565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f613b4160268361333c565b9150613b4c82613ae7565b604082019050919050565b5f6020820190508181035f830152613b6e81613b35565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613ba9601b8361333c565b9150613bb482613b75565b602082019050919050565b5f6020820190508181035f830152613bd681613b9d565b9050919050565b5f602082019050613bf05f830184613222565b92915050565b5f613c00826130ce565b9150613c0b836130ce565b9250828202613c19816130ce565b91508282048414831517613c3057613c2f6135f7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613c6e826130ce565b9150613c79836130ce565b925082613c8957613c88613c37565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613cee60218361333c565b9150613cf982613c94565b604082019050919050565b5f6020820190508181035f830152613d1b81613ce2565b9050919050565b5f81519050919050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f613d5482613d22565b613d5e818561333c565b9350613d6e818560208601613d2c565b613d7781613d3a565b840191505092915050565b5f6020820190508181035f830152613d9a8184613d4a565b90509291505056fea264697066735822122050e004129d923e937f7f79ea71f0c1fc67b7871916401d4b8bd2d22c2613a67964736f6c63430008190033",

thinking
**Analyzing external calls and reentrancy risks**

There is a lot here! The bytecode reveals several external calls, including ERC20 token transfers and Ether sends via low-level `call`, often with success checks and reverts on failure. I’m curious about potential reentrancy vulnerabilities, especially around Ether transfers to `msg.sender`, since no explicit reentrancy guard appears. Although the token address is fixed (less user control), calls to `msg.sender` raise a red flag if state updates happen after the call. Without source code, it’s tricky to be certain, but I’ll mark this as a potential low-severity reentrancy risk pending manual review.
exec
/bin/bash -lc "rg -n \"callsite|callsites|call_sites|call\\s*target\" BYTECODE_BUNDLE.json" in /tmp/codex-nkb5na0f succeeded in 8ms:
13691:      "callsites": [
43379:          "type": "callsite"
43385:          "type": "callsite"
43391:          "type": "callsite"
43397:          "type": "callsite"
43403:          "type": "callsite"
43409:          "type": "callsite"
43415:          "type": "callsite"
43421:          "type": "callsite"
43427:          "type": "callsite"
43433:          "type": "callsite"

thinking
**Inspecting callsite details**
exec
/bin/bash -lc "sed -n '13680,13740p' BYTECODE_BUNDLE.json" in /tmp/codex-nkb5na0f succeeded in 13ms:
          "start_pc": 15779
        },
        {
          "end_pc": 15831,
          "hash": "0x7d1925785accad7313d833dcf4400081ad342d2dbe4cbdd33637cc41f6c2e5b8",
          "opcodes": [
            "CALLER"
          ],
          "start_pc": 15831
        }
      ],
      "callsites": [
        {
          "opcode": "CALL",
          "pc": 3029,
          "returndata_checked": null,
          "target_expression_category": "computed",
          "value_expression_category": "computed"
        },
        {
exec
/bin/bash -lc "sed -n '13740,13810p' BYTECODE_BUNDLE.json" in /tmp/codex-nkb5na0f succeeded in 11ms:
        },
        {
          "opcode": "CALL",
          "pc": 8451,
          "returndata_checked": null,
          "target_expression_category": "computed",
          "value_expression_category": "computed"
        },
        {
          "opcode": "CALL",
          "pc": 9806,
          "returndata_checked": null,
          "target_expression_category": "computed",
          "value_expression_category": "computed"
        },
        {
          "opcode": "CALL",
          "pc": 12104,
          "returndata_checked": null,
          "target_expression_category": "computed",

thinking
**Summarizing bytecode audit findings**

I'll produce a JSON report highlighting one low-severity finding: multiple low-level CALLs with computed targets and values possibly leading to untrusted external calls and reentrancy risks. The summary will note no proxy or delegatecall detected, caution about verifying call targets and reentrancy safety, and include callsite PCs as evidence. This balances cautious flagging of potential issues with the uncertainty inherent in bytecode-only analysis.
codex
{"no_findings":false,"summary":"Bytecode-only review (no source); no proxy/delegatecall patterns detected in the bundle. There are multiple low-level CALLs with computed targets/values and unknown returndatachecking; this needs manual verification of call target control and reentrancy safety.","findings":[{"severity":"low","category":"reentrancy","title":"External CALLs use computed target/value; untrusted-call and reentrancy risk depends on target control","exploit_scenario":"If any of the CALLs take a user-influenced address or transfer ETH before state is fully updated, an attacker could redirect calls or reenter through a malicious contract, potentially draining funds or breaking accounting invariants. Bytecode evidence does not prove target control, so this is a conditional risk.","recommendation":"Trace each CALL site to confirm whether the target/value are fixed or owner-controlled and whether state updates occur before the call. If any are user-controlled or send ETH, apply checks-effects-interactions and/or a reentrancy guard, and validate return data explicitly.","evidence":"BYTECODE_BUNDLE.json lists 9 CALL sites with target_expression_category=\"computed\" and value_expression_category=\"computed\" plus returndata_checked=null. Detector findings flag “Untrusted CALL target/value reachable” and “ETH value transfer possible,” but validation did not confirm variable targets, so impact is uncertain.","locations":["pc:3029","pc:4158","pc:4462","pc:5046","pc:5231","pc:7372","pc:8451","pc:9806","pc:12104"]}]}
tokens used
83,328
Metadata
{
    "codex": {
        "ran_at": "2026-01-12T03:19:47.228458+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 31666,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode-only review (no source); no proxy/delegatecall patterns detected in the bundle. There are multiple low-level CALLs with computed targets/values and unknown returndatachecking; this needs manual verification of call target control and reentrancy safety.",
    "raw_final": {
        "summary": "Bytecode-only review (no source); no proxy/delegatecall patterns detected in the bundle. There are multiple low-level CALLs with computed targets/values and unknown returndatachecking; this needs manual verification of call target control and reentrancy safety.",
        "findings": [
            {
                "title": "External CALLs use computed target/value; untrusted-call and reentrancy risk depends on target control",
                "category": "reentrancy",
                "evidence": "BYTECODE_BUNDLE.json lists 9 CALL sites with target_expression_category=\"computed\" and value_expression_category=\"computed\" plus returndata_checked=null. Detector findings flag \u201cUntrusted CALL target/value reachable\u201d and \u201cETH value transfer possible,\u201d but validation did not confirm variable targets, so impact is uncertain.",
                "severity": "low",
                "locations": [
                    "pc:3029",
                    "pc:4158",
                    "pc:4462",
                    "pc:5046",
                    "pc:5231",
                    "pc:7372",
                    "pc:8451",
                    "pc:9806",
                    "pc:12104"
                ],
                "recommendation": "Trace each CALL site to confirm whether the target/value are fixed or owner-controlled and whether state updates occur before the call. If any are user-controlled or send ETH, apply checks-effects-interactions and/or a reentrancy guard, and validate return data explicitly.",
                "exploit_scenario": "If any of the CALLs take a user-influenced address or transfer ETH before state is fully updated, an attacker could redirect calls or reenter through a malicious contract, potentially draining funds or breaking accounting invariants. Bytecode evidence does not prove target control, so this is a conditional risk."
            }
        ],
        "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
0
Total opcodes
7948
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0228
0000000c: JUMPI
0000000d: PUSH0
0000000e: CALLDATALOAD
0000000f: PUSH1 0xe0
00000011: SHR
00000012: DUP1
00000013: PUSH4 0x6f403b83
00000018: GT
00000019: PUSH2 0x0122
0000001c: JUMPI
0000001d: DUP1
0000001e: PUSH4 0xac4afa38
00000023: GT
00000024: PUSH2 0x00aa
00000027: JUMPI
00000028: DUP1
00000029: PUSH4 0xb86e20f0
0000002e: GT
0000002f: PUSH2 0x006e
00000032: JUMPI
00000033: DUP1
00000034: PUSH4 0xb86e20f0
00000039: EQ
0000003a: PUSH2 0x0777
0000003d: JUMPI
0000003e: DUP1
0000003f: PUSH4 0xbc65d92a
00000044: EQ
00000045: PUSH2 0x078d
00000048: JUMPI
00000049: DUP1
0000004a: PUSH4 0xc69bebe4
0000004f: EQ
00000050: PUSH2 0x07b7
00000053: JUMPI
00000054: DUP1
00000055: PUSH4 0xf2fde38b
0000005a: EQ
0000005b: PUSH2 0x07df
0000005e: JUMPI
0000005f: DUP1
00000060: PUSH4 0xf5931612
00000065: EQ
00000066: PUSH2 0x0807
00000069: JUMPI
0000006a: PUSH2 0x022f
0000006d: JUMP
0000006e: JUMPDEST
0000006f: DUP1
00000070: PUSH4 0xac4afa38
00000075: EQ
00000076: PUSH2 0x0680
00000079: JUMPI
0000007a: DUP1
0000007b: PUSH4 0xadbbd04f
00000080: EQ
00000081: PUSH2 0x06bf
00000084: JUMPI
00000085: DUP1
00000086: PUSH4 0xb3f00674
0000008b: EQ
0000008c: PUSH2 0x06e9
0000008f: JUMPI
00000090: DUP1
00000091: PUSH4 0xb66239cf
00000096: EQ
00000097: PUSH2 0x0713
0000009a: JUMPI
0000009b: DUP1
0000009c: PUSH4 0xb6b55f25
000000a1: EQ
000000a2: PUSH2 0x074f
000000a5: JUMPI
000000a6: PUSH2 0x022f
000000a9: JUMP
000000aa: JUMPDEST
000000ab: DUP1
000000ac: PUSH4 0x8c6682f7
000000b1: GT
000000b2: PUSH2 0x00f1
000000b5: JUMPI
000000b6: DUP1
000000b7: PUSH4 0x8c6682f7
000000bc: EQ
000000bd: PUSH2 0x05c4
000000c0: JUMPI
000000c1: DUP1
000000c2: PUSH4 0x8d8f2adb
000000c7: EQ
000000c8: PUSH2 0x05ee
000000cb: JUMPI
000000cc: DUP1
000000cd: PUSH4 0x8da5cb5b
000000d2: EQ
000000d3: PUSH2 0x0604
000000d6: JUMPI
000000d7: DUP1
000000d8: PUSH4 0xa5ce3eb0
000000dd: EQ
000000de: PUSH2 0x062e
000000e1: JUMPI
000000e2: DUP1
000000e3: PUSH4 0xa6ce2f98
000000e8: EQ
000000e9: PUSH2 0x0658
000000ec: JUMPI
000000ed: PUSH2 0x022f
000000f0: JUMP
000000f1: JUMPDEST
000000f2: DUP1
000000f3: PUSH4 0x6f403b83
000000f8: EQ
000000f9: PUSH2 0x0520
000000fc: JUMPI
000000fd: DUP1
000000fe: PUSH4 0x70a54ff9
00000103: EQ
00000104: PUSH2 0x055c
00000107: JUMPI
00000108: DUP1
00000109: PUSH4 0x715018a6
0000010e: EQ
0000010f: PUSH2 0x0584
00000112: JUMPI
00000113: DUP1
00000114: PUSH4 0x82b2e257
00000119: EQ
0000011a: PUSH2 0x059a
0000011d: JUMPI
0000011e: PUSH2 0x022f
00000121: JUMP
00000122: JUMPDEST
00000123: DUP1
00000124: PUSH4 0x44b3b503
00000129: GT
0000012a: PUSH2 0x01b0
0000012d: JUMPI
0000012e: DUP1
0000012f: PUSH4 0x569b8e2c
00000134: GT
00000135: PUSH2 0x0174
00000138: JUMPI
00000139: DUP1
0000013a: PUSH4 0x569b8e2c
0000013f: EQ
00000140: PUSH2 0x047a
00000143: JUMPI
00000144: DUP1
00000145: PUSH4 0x5f1b7f19
0000014a: EQ
0000014b: PUSH2 0x04a2
0000014e: JUMPI
0000014f: DUP1
00000150: PUSH4 0x690d8320
00000155: EQ
00000156: PUSH2 0x04b8
00000159: JUMPI
0000015a: DUP1
0000015b: PUSH4 0x69b372f1
00000160: EQ
00000161: PUSH2 0x04e0
00000164: JUMPI
00000165: DUP1
00000166: PUSH4 0x6e271dd5
0000016b: EQ
0000016c: PUSH2 0x04f6
0000016f: JUMPI
00000170: PUSH2 0x022f
00000173: JUMP
00000174: JUMPDEST
00000175: DUP1
00000176: PUSH4 0x44b3b503
0000017b: EQ
0000017c: PUSH2 0x03be
0000017f: JUMPI
00000180: DUP1
00000181: PUSH4 0x49a6bba0
00000186: EQ
00000187: PUSH2 0x03d4
0000018a: JUMPI
0000018b: DUP1
0000018c: PUSH4 0x4ce272ee
00000191: EQ
00000192: PUSH2 0x03fc
00000195: JUMPI
00000196: DUP1
00000197: PUSH4 0x4eb308ec
0000019c: EQ
0000019d: PUSH2 0x0426
000001a0: JUMPI
000001a1: DUP1
000001a2: PUSH4 0x55a373d6
000001a7: EQ
000001a8: PUSH2 0x0450
000001ab: JUMPI
000001ac: PUSH2 0x022f
000001af: JUMP
000001b0: JUMPDEST
000001b1: DUP1
000001b2: PUSH4 0x2f380b35
000001b7: GT
000001b8: PUSH2 0x01f7
000001bb: JUMPI
000001bc: DUP1
000001bd: PUSH4 0x2f380b35
000001c2: EQ
000001c3: PUSH2 0x02e9
000001c6: JUMPI
000001c7: DUP1
000001c8: PUSH4 0x310f879e
000001cd: EQ
000001ce: PUSH2 0x0328
000001d1: JUMPI
000001d2: DUP1
000001d3: PUSH4 0x3785778b
000001d8: EQ
000001d9: PUSH2 0x0364
000001dc: JUMPI
000001dd: DUP1
000001de: PUSH4 0x439370b1
000001e3: EQ
000001e4: PUSH2 0x038c
000001e7: JUMPI
000001e8: DUP1
000001e9: PUSH4 0x44004cc1
000001ee: EQ
000001ef: PUSH2 0x0396
000001f2: JUMPI
000001f3: PUSH2 0x022f
000001f6: JUMP
000001f7: JUMPDEST
000001f8: DUP1
000001f9: PUSH4 0x065618b8
000001fe: EQ
000001ff: PUSH2 0x0231
00000202: JUMPI
00000203: DUP1
00000204: PUSH4 0x16330d40
00000209: EQ
0000020a: PUSH2 0x0259
0000020d: JUMPI
0000020e: DUP1
0000020f: PUSH4 0x19f7bd17
00000214: EQ
00000215: PUSH2 0x0283
00000218: JUMPI
00000219: DUP1
0000021a: PUSH4 0x27e235e3
0000021f: EQ
00000220: PUSH2 0x02ad
00000223: JUMPI
00000224: PUSH2 0x022f
00000227: JUMP
00000228: JUMPDEST
00000229: CALLDATASIZE
0000022a: PUSH2 0x022f
0000022d: JUMPI
0000022e: STOP
0000022f: JUMPDEST
00000230: STOP
00000231: JUMPDEST
00000232: CALLVALUE
00000233: DUP1
00000234: ISZERO
00000235: PUSH2 0x023c
00000238: JUMPI
00000239: PUSH0
0000023a: DUP1
0000023b: REVERT
0000023c: JUMPDEST
0000023d: POP
0000023e: PUSH2 0x0257
00000241: PUSH1 0x04
00000243: DUP1
00000244: CALLDATASIZE
00000245: SUB
00000246: DUP2
00000247: ADD
00000248: SWAP1
00000249: PUSH2 0x0252
0000024c: SWAP2
0000024d: SWAP1
0000024e: PUSH2 0x3101
00000251: JUMP
00000252: JUMPDEST
00000253: PUSH2 0x0831
00000256: JUMP
00000257: JUMPDEST
00000258: STOP
00000259: JUMPDEST
0000025a: CALLVALUE
0000025b: DUP1
0000025c: ISZERO
0000025d: PUSH2 0x0264
00000260: JUMPI
00000261: PUSH0
00000262: DUP1
00000263: REVERT
00000264: JUMPDEST
00000265: POP
00000266: PUSH2 0x026d
00000269: PUSH2 0x08fc
0000026c: JUMP
0000026d: JUMPDEST
0000026e: PUSH1 0x40
00000270: MLOAD
00000271: PUSH2 0x027a
00000274: SWAP2
00000275: SWAP1
00000276: PUSH2 0x314e
00000279: JUMP
0000027a: JUMPDEST
0000027b: PUSH1 0x40
0000027d: MLOAD
0000027e: DUP1
0000027f: SWAP2
00000280: SUB
00000281: SWAP1
00000282: RETURN
00000283: JUMPDEST
00000284: CALLVALUE
00000285: DUP1
00000286: ISZERO
00000287: PUSH2 0x028e
0000028a: JUMPI
0000028b: PUSH0
0000028c: DUP1
0000028d: REVERT
0000028e: JUMPDEST
0000028f: POP
00000290: PUSH2 0x0297
00000293: PUSH2 0x0902
00000296: JUMP
00000297: JUMPDEST
00000298: PUSH1 0x40
0000029a: MLOAD
0000029b: PUSH2 0x02a4
0000029e: SWAP2
0000029f: SWAP1
000002a0: PUSH2 0x314e
000002a3: JUMP
000002a4: JUMPDEST
000002a5: PUSH1 0x40
000002a7: MLOAD
000002a8: DUP1
000002a9: SWAP2
000002aa: SUB
000002ab: SWAP1
000002ac: RETURN
000002ad: JUMPDEST
000002ae: CALLVALUE
000002af: DUP1
000002b0: ISZERO
000002b1: PUSH2 0x02b8
000002b4: JUMPI
000002b5: PUSH0
000002b6: DUP1
000002b7: REVERT
000002b8: JUMPDEST
000002b9: POP
000002ba: PUSH2 0x02d3
000002bd: PUSH1 0x04
000002bf: DUP1
000002c0: CALLDATASIZE
000002c1: SUB
000002c2: DUP2
000002c3: ADD
000002c4: SWAP1
000002c5: PUSH2 0x02ce
000002c8: SWAP2
000002c9: SWAP1
000002ca: PUSH2 0x31c1
000002cd: JUMP
000002ce: JUMPDEST
000002cf: PUSH2 0x0908
000002d2: JUMP
000002d3: JUMPDEST
000002d4: PUSH1 0x40
000002d6: MLOAD
000002d7: PUSH2 0x02e0
000002da: SWAP2
000002db: SWAP1
000002dc: PUSH2 0x314e
000002df: JUMP
000002e0: JUMPDEST
000002e1: PUSH1 0x40
000002e3: MLOAD
000002e4: DUP1
000002e5: SWAP2
000002e6: SUB
000002e7: SWAP1
000002e8: RETURN
000002e9: JUMPDEST
000002ea: CALLVALUE
000002eb: DUP1
000002ec: ISZERO
000002ed: PUSH2 0x02f4
000002f0: JUMPI
000002f1: PUSH0
000002f2: DUP1
000002f3: REVERT
000002f4: JUMPDEST
000002f5: POP
000002f6: PUSH2 0x030f
000002f9: PUSH1 0x04
000002fb: DUP1
000002fc: CALLDATASIZE
000002fd: SUB
000002fe: DUP2
000002ff: ADD
00000300: SWAP1
00000301: PUSH2 0x030a
00000304: SWAP2
00000305: SWAP1
00000306: PUSH2 0x31ec
00000309: JUMP
0000030a: JUMPDEST
0000030b: PUSH2 0x091d
0000030e: JUMP
0000030f: JUMPDEST
00000310: PUSH1 0x40
00000312: MLOAD
00000313: PUSH2 0x031f
00000316: SWAP5
00000317: SWAP4
00000318: SWAP3
00000319: SWAP2
0000031a: SWAP1
0000031b: PUSH2 0x3231
0000031e: JUMP
0000031f: JUMPDEST
00000320: PUSH1 0x40
00000322: MLOAD
00000323: DUP1
00000324: SWAP2
00000325: SUB
00000326: SWAP1
00000327: RETURN
00000328: JUMPDEST
00000329: CALLVALUE
0000032a: DUP1
0000032b: ISZERO
0000032c: PUSH2 0x0333
0000032f: JUMPI
00000330: PUSH0
00000331: DUP1
00000332: REVERT
00000333: JUMPDEST
00000334: POP
00000335: PUSH2 0x034e
00000338: PUSH1 0x04
0000033a: DUP1
0000033b: CALLDATASIZE
0000033c: SUB
0000033d: DUP2
0000033e: ADD
0000033f: SWAP1
00000340: PUSH2 0x0349
00000343: SWAP2
00000344: SWAP1
00000345: PUSH2 0x31c1
00000348: JUMP
00000349: JUMPDEST
0000034a: PUSH2 0x098f
0000034d: JUMP
0000034e: JUMPDEST
0000034f: PUSH1 0x40
00000351: MLOAD
00000352: PUSH2 0x035b
00000355: SWAP2
00000356: SWAP1
00000357: PUSH2 0x314e
0000035a: JUMP
0000035b: JUMPDEST
0000035c: PUSH1 0x40
0000035e: MLOAD
0000035f: DUP1
00000360: SWAP2
00000361: SUB
00000362: SWAP1
00000363: RETURN
00000364: JUMPDEST
00000365: CALLVALUE
00000366: DUP1
00000367: ISZERO
00000368: PUSH2 0x036f
0000036b: JUMPI
0000036c: PUSH0
0000036d: DUP1
0000036e: REVERT
0000036f: JUMPDEST
00000370: POP
00000371: PUSH2 0x038a
00000374: PUSH1 0x04
00000376: DUP1
00000377: CALLDATASIZE
00000378: SUB
00000379: DUP2
0000037a: ADD
0000037b: SWAP1
0000037c: PUSH2 0x0385
0000037f: SWAP2
00000380: SWAP1
00000381: PUSH2 0x3274
00000384: JUMP
00000385: JUMPDEST
00000386: PUSH2 0x09a4
00000389: JUMP
0000038a: JUMPDEST
0000038b: STOP
0000038c: JUMPDEST
0000038d: PUSH2 0x0394
00000390: PUSH2 0x0a57
00000393: JUMP
00000394: JUMPDEST
00000395: STOP
00000396: JUMPDEST
00000397: CALLVALUE
00000398: DUP1
00000399: ISZERO
0000039a: PUSH2 0x03a1
0000039d: JUMPI
0000039e: PUSH0
0000039f: DUP1
000003a0: REVERT
000003a1: JUMPDEST
000003a2: POP
000003a3: PUSH2 0x03bc
000003a6: PUSH1 0x04
000003a8: DUP1
000003a9: CALLDATASIZE
000003aa: SUB
000003ab: DUP2
000003ac: ADD
000003ad: SWAP1
000003ae: PUSH2 0x03b7
000003b1: SWAP2
000003b2: SWAP1
000003b3: PUSH2 0x32c4
000003b6: JUMP
000003b7: JUMPDEST
000003b8: PUSH2 0x0b11
000003bb: JUMP
000003bc: JUMPDEST
000003bd: STOP
000003be: JUMPDEST
000003bf: CALLVALUE
000003c0: DUP1
000003c1: ISZERO
000003c2: PUSH2 0x03c9
000003c5: JUMPI
000003c6: PUSH0
000003c7: DUP1
000003c8: REVERT
000003c9: JUMPDEST
000003ca: POP
000003cb: PUSH2 0x03d2
000003ce: PUSH2 0x0c0e
000003d1: JUMP
000003d2: JUMPDEST
000003d3: STOP
000003d4: JUMPDEST
000003d5: CALLVALUE
000003d6: DUP1
000003d7: ISZERO
000003d8: PUSH2 0x03df
000003db: JUMPI
000003dc: PUSH0
000003dd: DUP1
000003de: REVERT
000003df: JUMPDEST
000003e0: POP
000003e1: PUSH2 0x03fa
000003e4: PUSH1 0x04
000003e6: DUP1
000003e7: CALLDATASIZE
000003e8: SUB
000003e9: DUP2
000003ea: ADD
000003eb: SWAP1
000003ec: PUSH2 0x03f5
000003ef: SWAP2
000003f0: SWAP1
000003f1: PUSH2 0x31ec
000003f4: JUMP
000003f5: JUMPDEST
000003f6: PUSH2 0x0c94
000003f9: JUMP
000003fa: JUMPDEST
000003fb: STOP
000003fc: JUMPDEST
000003fd: CALLVALUE
000003fe: DUP1
000003ff: ISZERO
00000400: PUSH2 0x0407
00000403: JUMPI
00000404: PUSH0
00000405: DUP1
00000406: REVERT
00000407: JUMPDEST
00000408: POP
00000409: PUSH2 0x0410
0000040c: PUSH2 0x0d1c
0000040f: JUMP
00000410: JUMPDEST
00000411: PUSH1 0x40
00000413: MLOAD
00000414: PUSH2 0x041d
00000417: SWAP2
00000418: SWAP1
00000419: PUSH2 0x314e
0000041c: JUMP
0000041d: JUMPDEST
0000041e: PUSH1 0x40
00000420: MLOAD
00000421: DUP1
00000422: SWAP2
00000423: SUB
00000424: SWAP1
00000425: RETURN
00000426: JUMPDEST
00000427: CALLVALUE
00000428: DUP1
00000429: ISZERO
0000042a: PUSH2 0x0431
0000042d: JUMPI
0000042e: PUSH0
0000042f: DUP1
00000430: REVERT
00000431: JUMPDEST
00000432: POP
00000433: PUSH2 0x043a
00000436: PUSH2 0x0d22
00000439: JUMP
0000043a: JUMPDEST
0000043b: PUSH1 0x40
0000043d: MLOAD
0000043e: PUSH2 0x0447
00000441: SWAP2
00000442: SWAP1
00000443: PUSH2 0x314e
00000446: JUMP
00000447: JUMPDEST
00000448: PUSH1 0x40
0000044a: MLOAD
0000044b: DUP1
0000044c: SWAP2
0000044d: SUB
0000044e: SWAP1
0000044f: RETURN
00000450: JUMPDEST
00000451: CALLVALUE
00000452: DUP1
00000453: ISZERO
00000454: PUSH2 0x045b
00000457: JUMPI
00000458: PUSH0
00000459: DUP1
0000045a: REVERT
0000045b: JUMPDEST
0000045c: POP
0000045d: PUSH2 0x0464
00000460: PUSH2 0x0d28
00000463: JUMP
00000464: JUMPDEST
00000465: PUSH1 0x40
00000467: MLOAD
00000468: PUSH2 0x0471
0000046b: SWAP2
0000046c: SWAP1
0000046d: PUSH2 0x3323
00000470: JUMP
00000471: JUMPDEST
00000472: PUSH1 0x40
00000474: MLOAD
00000475: DUP1
00000476: SWAP2
00000477: SUB
00000478: SWAP1
00000479: RETURN
0000047a: JUMPDEST
0000047b: CALLVALUE
0000047c: DUP1
0000047d: ISZERO
0000047e: PUSH2 0x0485
00000481: JUMPI
00000482: PUSH0
00000483: DUP1
00000484: REVERT
00000485: JUMPDEST
00000486: POP
00000487: PUSH2 0x04a0
0000048a: PUSH1 0x04
0000048c: DUP1
0000048d: CALLDATASIZE
0000048e: SUB
0000048f: DUP2
00000490: ADD
00000491: SWAP1
00000492: PUSH2 0x049b
00000495: SWAP2
00000496: SWAP1
00000497: PUSH2 0x31ec
0000049a: JUMP
0000049b: JUMPDEST
0000049c: PUSH2 0x0d40
0000049f: JUMP
000004a0: JUMPDEST
000004a1: STOP
000004a2: JUMPDEST
000004a3: CALLVALUE
000004a4: DUP1
000004a5: ISZERO
000004a6: PUSH2 0x04ad
000004a9: JUMPI
000004aa: PUSH0
000004ab: DUP1
000004ac: REVERT
000004ad: JUMPDEST
000004ae: POP
000004af: PUSH2 0x04b6
000004b2: PUSH2 0x0e43
000004b5: JUMP
000004b6: JUMPDEST
000004b7: STOP
000004b8: JUMPDEST
000004b9: CALLVALUE
000004ba: DUP1
000004bb: ISZERO
000004bc: PUSH2 0x04c3
000004bf: JUMPI
000004c0: PUSH0
000004c1: DUP1
000004c2: REVERT
000004c3: JUMPDEST
000004c4: POP
000004c5: PUSH2 0x04de
000004c8: PUSH1 0x04
000004ca: DUP1
000004cb: CALLDATASIZE
000004cc: SUB
000004cd: DUP2
000004ce: ADD
000004cf: SWAP1
000004d0: PUSH2 0x04d9
000004d3: SWAP2
000004d4: SWAP1
000004d5: PUSH2 0x31c1
000004d8: JUMP
000004d9: JUMPDEST
000004da: PUSH2 0x10c3
000004dd: JUMP
000004de: JUMPDEST
000004df: STOP
000004e0: JUMPDEST
000004e1: CALLVALUE
000004e2: DUP1
000004e3: ISZERO
000004e4: PUSH2 0x04eb
000004e7: JUMPI
000004e8: PUSH0
000004e9: DUP1
000004ea: REVERT
000004eb: JUMPDEST
000004ec: POP
000004ed: PUSH2 0x04f4
000004f0: PUSH2 0x1186
000004f3: JUMP
000004f4: JUMPDEST
000004f5: STOP
000004f6: JUMPDEST
000004f7: CALLVALUE
000004f8: DUP1
000004f9: ISZERO
000004fa: PUSH2 0x0501
000004fd: JUMPI
000004fe: PUSH0
000004ff: DUP1
00000500: REVERT
00000501: JUMPDEST
00000502: POP
00000503: PUSH2 0x050a
00000506: PUSH2 0x14f6
00000509: JUMP
0000050a: JUMPDEST
0000050b: PUSH1 0x40
0000050d: MLOAD
0000050e: PUSH2 0x0517
00000511: SWAP2
00000512: SWAP1
00000513: PUSH2 0x314e
00000516: JUMP
00000517: JUMPDEST
00000518: PUSH1 0x40
0000051a: MLOAD
0000051b: DUP1
0000051c: SWAP2
0000051d: SUB
0000051e: SWAP1
0000051f: RETURN
00000520: JUMPDEST
00000521: CALLVALUE
00000522: DUP1
00000523: ISZERO
00000524: PUSH2 0x052b
00000527: JUMPI
00000528: PUSH0
00000529: DUP1
0000052a: REVERT
0000052b: JUMPDEST
0000052c: POP
0000052d: PUSH2 0x0546
00000530: PUSH1 0x04
00000532: DUP1
00000533: CALLDATASIZE
00000534: SUB
00000535: DUP2
00000536: ADD
00000537: SWAP1
00000538: PUSH2 0x0541
0000053b: SWAP2
0000053c: SWAP1
0000053d: PUSH2 0x31c1
00000540: JUMP
00000541: JUMPDEST
00000542: PUSH2 0x14fc
00000545: JUMP
00000546: JUMPDEST
00000547: PUSH1 0x40
00000549: MLOAD
0000054a: PUSH2 0x0553
0000054d: SWAP2
0000054e: SWAP1
0000054f: PUSH2 0x314e
00000552: JUMP
00000553: JUMPDEST
00000554: PUSH1 0x40
00000556: MLOAD
00000557: DUP1
00000558: SWAP2
00000559: SUB
0000055a: SWAP1
0000055b: RETURN
0000055c: JUMPDEST
0000055d: CALLVALUE
0000055e: DUP1
0000055f: ISZERO
00000560: PUSH2 0x0567
00000563: JUMPI
00000564: PUSH0
00000565: DUP1
00000566: REVERT
00000567: JUMPDEST
00000568: POP
00000569: PUSH2 0x0582
0000056c: PUSH1 0x04
0000056e: DUP1
0000056f: CALLDATASIZE
00000570: SUB
00000571: DUP2
00000572: ADD
00000573: SWAP1
00000574: PUSH2 0x057d
00000577: SWAP2
00000578: SWAP1
00000579: PUSH2 0x3101
0000057c: JUMP
0000057d: JUMPDEST
0000057e: PUSH2 0x164f
00000581: JUMP
00000582: JUMPDEST
00000583: STOP
00000584: JUMPDEST
00000585: CALLVALUE
00000586: DUP1
00000587: ISZERO
00000588: PUSH2 0x058f
0000058b: JUMPI
0000058c: PUSH0
0000058d: DUP1
0000058e: REVERT
0000058f: JUMPDEST
00000590: POP
00000591: PUSH2 0x0598
00000594: PUSH2 0x17b9
00000597: JUMP
00000598: JUMPDEST
00000599: STOP
0000059a: JUMPDEST
0000059b: CALLVALUE
0000059c: DUP1
0000059d: ISZERO
0000059e: PUSH2 0x05a5
000005a1: JUMPI
000005a2: PUSH0
000005a3: DUP1
000005a4: REVERT
000005a5: JUMPDEST
000005a6: POP
000005a7: PUSH2 0x05ae
000005aa: PUSH2 0x1840
000005ad: JUMP
000005ae: JUMPDEST
000005af: PUSH1 0x40
000005b1: MLOAD
000005b2: PUSH2 0x05bb
000005b5: SWAP2
000005b6: SWAP1
000005b7: PUSH2 0x314e
000005ba: JUMP
000005bb: JUMPDEST
000005bc: PUSH1 0x40
000005be: MLOAD
000005bf: DUP1
000005c0: SWAP2
000005c1: SUB
000005c2: SWAP1
000005c3: RETURN
000005c4: JUMPDEST
000005c5: CALLVALUE
000005c6: DUP1
000005c7: ISZERO
000005c8: PUSH2 0x05cf
000005cb: JUMPI
000005cc: PUSH0
000005cd: DUP1
000005ce: REVERT
000005cf: JUMPDEST
000005d0: POP
000005d1: PUSH2 0x05d8
000005d4: PUSH2 0x194e
000005d7: JUMP
000005d8: JUMPDEST
000005d9: PUSH1 0x40
000005db: MLOAD
000005dc: PUSH2 0x05e5
000005df: SWAP2
000005e0: SWAP1
000005e1: PUSH2 0x314e
000005e4: JUMP
000005e5: JUMPDEST
000005e6: PUSH1 0x40
000005e8: MLOAD
000005e9: DUP1
000005ea: SWAP2
000005eb: SUB
000005ec: SWAP1
000005ed: RETURN
000005ee: JUMPDEST
000005ef: CALLVALUE
000005f0: DUP1
000005f1: ISZERO
000005f2: PUSH2 0x05f9
000005f5: JUMPI
000005f6: PUSH0
000005f7: DUP1
000005f8: REVERT
000005f9: JUMPDEST
000005fa: POP
000005fb: PUSH2 0x0602
000005fe: PUSH2 0x1954
00000601: JUMP
00000602: JUMPDEST
00000603: STOP
00000604: JUMPDEST
00000605: CALLVALUE
00000606: DUP1
00000607: ISZERO
00000608: PUSH2 0x060f
0000060b: JUMPI
0000060c: PUSH0
0000060d: DUP1
0000060e: REVERT
0000060f: JUMPDEST
00000610: POP
00000611: PUSH2 0x0618
00000614: PUSH2 0x1d51
00000617: JUMP
00000618: JUMPDEST
00000619: PUSH1 0x40
0000061b: MLOAD
0000061c: PUSH2 0x0625
0000061f: SWAP2
00000620: SWAP1
00000621: PUSH2 0x3323
00000624: JUMP
00000625: JUMPDEST
00000626: PUSH1 0x40
00000628: MLOAD
00000629: DUP1
0000062a: SWAP2
0000062b: SUB
0000062c: SWAP1
0000062d: RETURN
0000062e: JUMPDEST
0000062f: CALLVALUE
00000630: DUP1
00000631: ISZERO
00000632: PUSH2 0x0639
00000635: JUMPI
00000636: PUSH0
00000637: DUP1
00000638: REVERT
00000639: JUMPDEST
0000063a: POP
0000063b: PUSH2 0x0642
0000063e: PUSH2 0x1d78
00000641: JUMP
00000642: JUMPDEST
00000643: PUSH1 0x40
00000645: MLOAD
00000646: PUSH2 0x064f
00000649: SWAP2
0000064a: SWAP1
0000064b: PUSH2 0x314e
0000064e: JUMP
0000064f: JUMPDEST
00000650: PUSH1 0x40
00000652: MLOAD
00000653: DUP1
00000654: SWAP2
00000655: SUB
00000656: SWAP1
00000657: RETURN
00000658: JUMPDEST
00000659: CALLVALUE
0000065a: DUP1
0000065b: ISZERO
0000065c: PUSH2 0x0663
0000065f: JUMPI
00000660: PUSH0
00000661: DUP1
00000662: REVERT
00000663: JUMPDEST
00000664: POP
00000665: PUSH2 0x067e
00000668: PUSH1 0x04
0000066a: DUP1
0000066b: CALLDATASIZE
0000066c: SUB
0000066d: DUP2
0000066e: ADD
0000066f: SWAP1
00000670: PUSH2 0x0679
00000673: SWAP2
00000674: SWAP1
00000675: PUSH2 0x3101
00000678: JUMP
00000679: JUMPDEST
0000067a: PUSH2 0x1d7e
0000067d: JUMP
0000067e: JUMPDEST
0000067f: STOP
00000680: JUMPDEST
00000681: CALLVALUE
00000682: DUP1
00000683: ISZERO
00000684: PUSH2 0x068b
00000687: JUMPI
00000688: PUSH0
00000689: DUP1
0000068a: REVERT
0000068b: JUMPDEST
0000068c: POP
0000068d: PUSH2 0x06a6
00000690: PUSH1 0x04
00000692: DUP1
00000693: CALLDATASIZE
00000694: SUB
00000695: DUP2
00000696: ADD
00000697: SWAP1
00000698: PUSH2 0x06a1
0000069b: SWAP2
0000069c: SWAP1
0000069d: PUSH2 0x31ec
000006a0: JUMP
000006a1: JUMPDEST
000006a2: PUSH2 0x1e0c
000006a5: JUMP
000006a6: JUMPDEST
000006a7: PUSH1 0x40
000006a9: MLOAD
000006aa: PUSH2 0x06b6
000006ad: SWAP5
000006ae: SWAP4
000006af: SWAP3
000006b0: SWAP2
000006b1: SWAP1
000006b2: PUSH2 0x3231
000006b5: JUMP
000006b6: JUMPDEST
000006b7: PUSH1 0x40
000006b9: MLOAD
000006ba: DUP1
000006bb: SWAP2
000006bc: SUB
000006bd: SWAP1
000006be: RETURN
000006bf: JUMPDEST
000006c0: CALLVALUE
000006c1: DUP1
000006c2: ISZERO
000006c3: PUSH2 0x06ca
000006c6: JUMPI
000006c7: PUSH0
000006c8: DUP1
000006c9: REVERT
000006ca: JUMPDEST
000006cb: POP
000006cc: PUSH2 0x06d3
000006cf: PUSH2 0x1e44
000006d2: JUMP
000006d3: JUMPDEST
000006d4: PUSH1 0x40
000006d6: MLOAD
000006d7: PUSH2 0x06e0
000006da: SWAP2
000006db: SWAP1
000006dc: PUSH2 0x314e
000006df: JUMP
000006e0: JUMPDEST
000006e1: PUSH1 0x40
000006e3: MLOAD
000006e4: DUP1
000006e5: SWAP2
000006e6: SUB
000006e7: SWAP1
000006e8: RETURN
000006e9: JUMPDEST
000006ea: CALLVALUE
000006eb: DUP1
000006ec: ISZERO
000006ed: PUSH2 0x06f4
000006f0: JUMPI
000006f1: PUSH0
000006f2: DUP1
000006f3: REVERT
000006f4: JUMPDEST
000006f5: POP
000006f6: PUSH2 0x06fd
000006f9: PUSH2 0x1e4a
000006fc: JUMP
000006fd: JUMPDEST
000006fe: PUSH1 0x40
00000700: MLOAD
00000701: PUSH2 0x070a
00000704: SWAP2
00000705: SWAP1
00000706: PUSH2 0x3323
00000709: JUMP
0000070a: JUMPDEST
0000070b: PUSH1 0x40
0000070d: MLOAD
0000070e: DUP1
0000070f: SWAP2
00000710: SUB
00000711: SWAP1
00000712: RETURN
00000713: JUMPDEST
00000714: CALLVALUE
00000715: DUP1
00000716: ISZERO
00000717: PUSH2 0x071e
0000071a: JUMPI
0000071b: PUSH0
0000071c: DUP1
0000071d: REVERT
0000071e: JUMPDEST
0000071f: POP
00000720: PUSH2 0x0739
00000723: PUSH1 0x04
00000725: DUP1
00000726: CALLDATASIZE
00000727: SUB
00000728: DUP2
00000729: ADD
0000072a: SWAP1
0000072b: PUSH2 0x0734
0000072e: SWAP2
0000072f: SWAP1
00000730: PUSH2 0x31c1
00000733: JUMP
00000734: JUMPDEST
00000735: PUSH2 0x1e6f
00000738: JUMP
00000739: JUMPDEST
0000073a: PUSH1 0x40
0000073c: MLOAD
0000073d: PUSH2 0x0746
00000740: SWAP2
00000741: SWAP1
00000742: PUSH2 0x314e
00000745: JUMP
00000746: JUMPDEST
00000747: PUSH1 0x40
00000749: MLOAD
0000074a: DUP1
0000074b: SWAP2
0000074c: SUB
0000074d: SWAP1
0000074e: RETURN
0000074f: JUMPDEST
00000750: CALLVALUE
00000751: DUP1
00000752: ISZERO
00000753: PUSH2 0x075a
00000756: JUMPI
00000757: PUSH0
00000758: DUP1
00000759: REVERT
0000075a: JUMPDEST
0000075b: POP
0000075c: PUSH2 0x0775
0000075f: PUSH1 0x04
00000761: DUP1
00000762: CALLDATASIZE
00000763: SUB
00000764: DUP2
00000765: ADD
00000766: SWAP1
00000767: PUSH2 0x0770
0000076a: SWAP2
0000076b: SWAP1
0000076c: PUSH2 0x31ec
0000076f: JUMP
00000770: JUMPDEST
00000771: PUSH2 0x1e84
00000774: JUMP
00000775: JUMPDEST
00000776: STOP
00000777: JUMPDEST
00000778: CALLVALUE
00000779: DUP1
0000077a: ISZERO
0000077b: PUSH2 0x0782
0000077e: JUMPI
0000077f: PUSH0
00000780: DUP1
00000781: REVERT
00000782: JUMPDEST
00000783: POP
00000784: PUSH2 0x078b
00000787: PUSH2 0x2296
0000078a: JUMP
0000078b: JUMPDEST
0000078c: STOP
0000078d: JUMPDEST
0000078e: CALLVALUE
0000078f: DUP1
00000790: ISZERO
00000791: PUSH2 0x0798
00000794: JUMPI
00000795: PUSH0
00000796: DUP1
00000797: REVERT
00000798: JUMPDEST
00000799: POP
0000079a: PUSH2 0x07a1
0000079d: PUSH2 0x270b
000007a0: JUMP
000007a1: JUMPDEST
000007a2: PUSH1 0x40
000007a4: MLOAD
000007a5: PUSH2 0x07ae
000007a8: SWAP2
000007a9: SWAP1
000007aa: PUSH2 0x314e
000007ad: JUMP
000007ae: JUMPDEST
000007af: PUSH1 0x40
000007b1: MLOAD
000007b2: DUP1
000007b3: SWAP2
000007b4: SUB
000007b5: SWAP1
000007b6: RETURN
000007b7: JUMPDEST
000007b8: CALLVALUE
000007b9: DUP1
000007ba: ISZERO
000007bb: PUSH2 0x07c2
000007be: JUMPI
000007bf: PUSH0
000007c0: DUP1
000007c1: REVERT
000007c2: JUMPDEST
000007c3: POP
000007c4: PUSH2 0x07dd
000007c7: PUSH1 0x04
000007c9: DUP1
000007ca: CALLDATASIZE
000007cb: SUB
000007cc: DUP2
000007cd: ADD
000007ce: SWAP1
000007cf: PUSH2 0x07d8
000007d2: SWAP2
000007d3: SWAP1
000007d4: PUSH2 0x31c1
000007d7: JUMP
000007d8: JUMPDEST
000007d9: PUSH2 0x2711
000007dc: JUMP
000007dd: JUMPDEST
000007de: STOP
000007df: JUMPDEST
000007e0: CALLVALUE
000007e1: DUP1
000007e2: ISZERO
000007e3: PUSH2 0x07ea
000007e6: JUMPI
000007e7: PUSH0
000007e8: DUP1
000007e9: REVERT
000007ea: JUMPDEST
000007eb: POP
000007ec: PUSH2 0x0805
000007ef: PUSH1 0x04
000007f1: DUP1
000007f2: CALLDATASIZE
000007f3: SUB
000007f4: DUP2
000007f5: ADD
000007f6: SWAP1
000007f7: PUSH2 0x0800
000007fa: SWAP2
000007fb: SWAP1
000007fc: PUSH2 0x31c1
000007ff: JUMP
00000800: JUMPDEST
00000801: PUSH2 0x2896
00000804: JUMP
00000805: JUMPDEST
00000806: STOP
00000807: JUMPDEST
00000808: CALLVALUE
00000809: DUP1
0000080a: ISZERO
0000080b: PUSH2 0x0812
0000080e: JUMPI
0000080f: PUSH0
00000810: DUP1
00000811: REVERT
00000812: JUMPDEST
00000813: POP
00000814: PUSH2 0x081b
00000817: PUSH2 0x298c
0000081a: JUMP
0000081b: JUMPDEST
0000081c: PUSH1 0x40
0000081e: MLOAD
0000081f: PUSH2 0x0828
00000822: SWAP2
00000823: SWAP1
00000824: PUSH2 0x314e
00000827: JUMP
00000828: JUMPDEST
00000829: PUSH1 0x40
0000082b: MLOAD
0000082c: DUP1
0000082d: SWAP2
0000082e: SUB
0000082f: SWAP1
00000830: RETURN
00000831: JUMPDEST
00000832: PUSH2 0x0839
00000835: PUSH2 0x2992
00000838: JUMP
00000839: JUMPDEST
0000083a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000084f: AND
00000850: PUSH2 0x0857
00000853: PUSH2 0x1d51
00000856: JUMP
00000857: JUMPDEST
00000858: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000086d: AND
0000086e: EQ
0000086f: PUSH2 0x08ad
00000872: JUMPI
00000873: PUSH1 0x40
00000875: MLOAD
00000876: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000897: DUP2
00000898: MSTORE
00000899: PUSH1 0x04
0000089b: ADD
0000089c: PUSH2 0x08a4
0000089f: SWAP1
000008a0: PUSH2 0x3396
000008a3: JUMP
000008a4: JUMPDEST
000008a5: PUSH1 0x40
000008a7: MLOAD
000008a8: DUP1
000008a9: SWAP2
000008aa: SUB
000008ab: SWAP1
000008ac: REVERT
000008ad: JUMPDEST
000008ae: DUP2
000008af: PUSH1 0x0e
000008b1: DUP2
000008b2: SWAP1
000008b3: SSTORE
000008b4: POP
000008b5: DUP1
000008b6: PUSH1 0x0f
000008b8: DUP2
000008b9: SWAP1
000008ba: SSTORE
000008bb: POP
000008bc: PUSH32 0xfaaff2d71e3b866f9eb7e0d3b24e8f3d7c8eba101e98a4e21df30de6885f5041
000008dd: PUSH1 0x0e
000008df: SLOAD
000008e0: PUSH1 0x0f
000008e2: SLOAD
000008e3: PUSH1 0x40
000008e5: MLOAD
000008e6: PUSH2 0x08f0
000008e9: SWAP3
000008ea: SWAP2
000008eb: SWAP1
000008ec: PUSH2 0x33b4
000008ef: JUMP
000008f0: JUMPDEST
000008f1: PUSH1 0x40
000008f3: MLOAD
000008f4: DUP1
000008f5: SWAP2
000008f6: SUB
000008f7: SWAP1
000008f8: LOG1
000008f9: POP
000008fa: POP
000008fb: JUMP
000008fc: JUMPDEST
000008fd: PUSH1 0x0c
000008ff: SLOAD
00000900: DUP2
00000901: JUMP
00000902: JUMPDEST
00000903: PUSH1 0x06
00000905: SLOAD
00000906: DUP2
00000907: JUMP
00000908: JUMPDEST
00000909: PUSH1 0x02
0000090b: PUSH1 0x20
0000090d: MSTORE
0000090e: DUP1
0000090f: PUSH0
00000910: MSTORE
00000911: PUSH1 0x40
00000913: PUSH0
00000914: KECCAK256
00000915: PUSH0
00000916: SWAP2
00000917: POP
00000918: SWAP1
00000919: POP
0000091a: SLOAD
0000091b: DUP2
0000091c: JUMP
0000091d: JUMPDEST
0000091e: PUSH0
0000091f: DUP1
00000920: PUSH0
00000921: DUP1
00000922: PUSH1 0x10
00000924: PUSH0
00000925: DUP7
00000926: DUP2
00000927: MSTORE
00000928: PUSH1 0x20
0000092a: ADD
0000092b: SWAP1
0000092c: DUP2
0000092d: MSTORE
0000092e: PUSH1 0x20
00000930: ADD
00000931: PUSH0
00000932: KECCAK256
00000933: PUSH0
00000934: ADD
00000935: SLOAD
00000936: PUSH1 0x10
00000938: PUSH0
00000939: DUP8
0000093a: DUP2
0000093b: MSTORE
0000093c: PUSH1 0x20
0000093e: ADD
0000093f: SWAP1
00000940: DUP2
00000941: MSTORE
00000942: PUSH1 0x20
00000944: ADD
00000945: PUSH0
00000946: KECCAK256
00000947: PUSH1 0x01
00000949: ADD
0000094a: SLOAD
0000094b: PUSH1 0x10
0000094d: PUSH0
0000094e: DUP9
0000094f: DUP2
00000950: MSTORE
00000951: PUSH1 0x20
00000953: ADD
00000954: SWAP1
00000955: DUP2
00000956: MSTORE
00000957: PUSH1 0x20
00000959: ADD
0000095a: PUSH0
0000095b: KECCAK256
0000095c: PUSH1 0x02
0000095e: ADD
0000095f: SLOAD
00000960: PUSH1 0x10
00000962: PUSH0
00000963: DUP10
00000964: DUP2
00000965: MSTORE
00000966: PUSH1 0x20
00000968: ADD
00000969: SWAP1
0000096a: DUP2
0000096b: MSTORE
0000096c: PUSH1 0x20
0000096e: ADD
0000096f: PUSH0
00000970: KECCAK256
00000971: PUSH1 0x03
00000973: ADD
00000974: PUSH0
00000975: SWAP1
00000976: SLOAD
00000977: SWAP1
00000978: PUSH2 0x0100
0000097b: EXP
0000097c: SWAP1
0000097d: DIV
0000097e: PUSH1 0xff
00000980: AND
00000981: SWAP4
00000982: POP
00000983: SWAP4
00000984: POP
00000985: SWAP4
00000986: POP
00000987: SWAP4
00000988: POP
00000989: SWAP2
0000098a: SWAP4
0000098b: POP
0000098c: SWAP2
0000098d: SWAP4
0000098e: JUMP
0000098f: JUMPDEST
00000990: PUSH1 0x0a
00000992: PUSH1 0x20
00000994: MSTORE
00000995: DUP1
00000996: PUSH0
00000997: MSTORE
00000998: PUSH1 0x40
0000099a: PUSH0
0000099b: KECCAK256
0000099c: PUSH0
0000099d: SWAP2
0000099e: POP
0000099f: SWAP1
000009a0: POP
000009a1: SLOAD
000009a2: DUP2
000009a3: JUMP
000009a4: JUMPDEST
000009a5: PUSH2 0x09ac
000009a8: PUSH2 0x2992
000009ab: JUMP
000009ac: JUMPDEST
000009ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009c2: AND
000009c3: PUSH2 0x09ca
000009c6: PUSH2 0x1d51
000009c9: JUMP
000009ca: JUMPDEST
000009cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009e0: AND
000009e1: EQ
000009e2: PUSH2 0x0a20
000009e5: JUMPI
000009e6: PUSH1 0x40
000009e8: MLOAD
000009e9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000a0a: DUP2
00000a0b: MSTORE
00000a0c: PUSH1 0x04
00000a0e: ADD
00000a0f: PUSH2 0x0a17
00000a12: SWAP1
00000a13: PUSH2 0x3396
00000a16: JUMP
00000a17: JUMPDEST
00000a18: PUSH1 0x40
00000a1a: MLOAD
00000a1b: DUP1
00000a1c: SWAP2
00000a1d: SUB
00000a1e: SWAP1
00000a1f: REVERT
00000a20: JUMPDEST
00000a21: DUP2
00000a22: PUSH1 0x10
00000a24: PUSH0
00000a25: DUP6
00000a26: DUP2
00000a27: MSTORE
00000a28: PUSH1 0x20
00000a2a: ADD
00000a2b: SWAP1
00000a2c: DUP2
00000a2d: MSTORE
00000a2e: PUSH1 0x20
00000a30: ADD
00000a31: PUSH0
00000a32: KECCAK256
00000a33: PUSH1 0x01
00000a35: ADD
00000a36: DUP2
00000a37: SWAP1
00000a38: SSTORE
00000a39: POP
00000a3a: DUP1
00000a3b: PUSH1 0x10
00000a3d: PUSH0
00000a3e: DUP6
00000a3f: DUP2
00000a40: MSTORE
00000a41: PUSH1 0x20
00000a43: ADD
00000a44: SWAP1
00000a45: DUP2
00000a46: MSTORE
00000a47: PUSH1 0x20
00000a49: ADD
00000a4a: PUSH0
00000a4b: KECCAK256
00000a4c: PUSH1 0x02
00000a4e: ADD
00000a4f: DUP2
00000a50: SWAP1
00000a51: SSTORE
00000a52: POP
00000a53: POP
00000a54: POP
00000a55: POP
00000a56: JUMP
00000a57: JUMPDEST
00000a58: PUSH2 0x0a5f
00000a5b: PUSH2 0x1d51
00000a5e: JUMP
00000a5f: JUMPDEST
00000a60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a75: AND
00000a76: CALLER
00000a77: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a8c: AND
00000a8d: EQ
00000a8e: PUSH2 0x0acc
00000a91: JUMPI
00000a92: PUSH1 0x40
00000a94: MLOAD
00000a95: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000ab6: DUP2
00000ab7: MSTORE
00000ab8: PUSH1 0x04
00000aba: ADD
00000abb: PUSH2 0x0ac3
00000abe: SWAP1
00000abf: PUSH2 0x3425
00000ac2: JUMP
00000ac3: JUMPDEST
00000ac4: PUSH1 0x40
00000ac6: MLOAD
00000ac7: DUP1
00000ac8: SWAP2
00000ac9: SUB
00000aca: SWAP1
00000acb: REVERT
00000acc: JUMPDEST
00000acd: PUSH2 0x0af5
00000ad0: CALLVALUE
00000ad1: PUSH1 0x10
00000ad3: PUSH0
00000ad4: PUSH1 0x07
00000ad6: SLOAD
00000ad7: DUP2
00000ad8: MSTORE
00000ad9: PUSH1 0x20
00000adb: ADD
00000adc: SWAP1
00000add: DUP2
00000ade: MSTORE
00000adf: PUSH1 0x20
00000ae1: ADD
00000ae2: PUSH0
00000ae3: KECCAK256
00000ae4: PUSH1 0x02
00000ae6: ADD
00000ae7: SLOAD
00000ae8: PUSH2 0x2999
00000aeb: SWAP1
00000aec: SWAP2
00000aed: SWAP1
00000aee: PUSH4 0xffffffff
00000af3: AND
00000af4: JUMP
00000af5: JUMPDEST
00000af6: PUSH1 0x10
00000af8: PUSH0
00000af9: PUSH1 0x07
00000afb: SLOAD
00000afc: DUP2
00000afd: MSTORE
00000afe: PUSH1 0x20
00000b00: ADD
00000b01: SWAP1
00000b02: DUP2
00000b03: MSTORE
00000b04: PUSH1 0x20
00000b06: ADD
00000b07: PUSH0
00000b08: KECCAK256
00000b09: PUSH1 0x02
00000b0b: ADD
00000b0c: DUP2
00000b0d: SWAP1
00000b0e: SSTORE
00000b0f: POP
00000b10: JUMP
00000b11: JUMPDEST
00000b12: PUSH2 0x0b19
00000b15: PUSH2 0x2992
00000b18: JUMP
00000b19: JUMPDEST
00000b1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b2f: AND
00000b30: PUSH2 0x0b37
00000b33: PUSH2 0x1d51
00000b36: JUMP
00000b37: JUMPDEST
00000b38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b4d: AND
00000b4e: EQ
00000b4f: PUSH2 0x0b8d
00000b52: JUMPI
00000b53: PUSH1 0x40
00000b55: MLOAD
00000b56: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000b77: DUP2
00000b78: MSTORE
00000b79: PUSH1 0x04
00000b7b: ADD
00000b7c: PUSH2 0x0b84
00000b7f: SWAP1
00000b80: PUSH2 0x3396
00000b83: JUMP
00000b84: JUMPDEST
00000b85: PUSH1 0x40
00000b87: MLOAD
00000b88: DUP1
00000b89: SWAP2
00000b8a: SUB
00000b8b: SWAP1
00000b8c: REVERT
00000b8d: JUMPDEST
00000b8e: DUP3
00000b8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ba4: AND
00000ba5: PUSH4 0xa9059cbb
00000baa: DUP4
00000bab: DUP4
00000bac: PUSH1 0x40
00000bae: MLOAD
00000baf: DUP4
00000bb0: PUSH4 0xffffffff
00000bb5: AND
00000bb6: PUSH1 0xe0
00000bb8: SHL
00000bb9: DUP2
00000bba: MSTORE
00000bbb: PUSH1 0x04
00000bbd: ADD
00000bbe: PUSH2 0x0bc8
00000bc1: SWAP3
00000bc2: SWAP2
00000bc3: SWAP1
00000bc4: PUSH2 0x3443
00000bc7: JUMP
00000bc8: JUMPDEST
00000bc9: PUSH1 0x20
00000bcb: PUSH1 0x40
00000bcd: MLOAD
00000bce: DUP1
00000bcf: DUP4
00000bd0: SUB
00000bd1: DUP2
00000bd2: PUSH0
00000bd3: DUP8
00000bd4: GAS
00000bd5: CALL
00000bd6: ISZERO
00000bd7: DUP1
00000bd8: ISZERO
00000bd9: PUSH2 0x0be4
00000bdc: JUMPI
00000bdd: RETURNDATASIZE
00000bde: PUSH0
00000bdf: DUP1
00000be0: RETURNDATACOPY
00000be1: RETURNDATASIZE
00000be2: PUSH0
00000be3: REVERT
00000be4: JUMPDEST
00000be5: POP
00000be6: POP
00000be7: POP
00000be8: POP
00000be9: PUSH1 0x40
00000beb: MLOAD
00000bec: RETURNDATASIZE
00000bed: PUSH1 0x1f
00000bef: NOT
00000bf0: PUSH1 0x1f
00000bf2: DUP3
00000bf3: ADD
00000bf4: AND
00000bf5: DUP3
00000bf6: ADD
00000bf7: DUP1
00000bf8: PUSH1 0x40
00000bfa: MSTORE
00000bfb: POP
00000bfc: DUP2
00000bfd: ADD
00000bfe: SWAP1
00000bff: PUSH2 0x0c08
00000c02: SWAP2
00000c03: SWAP1
00000c04: PUSH2 0x3494
00000c07: JUMP
00000c08: JUMPDEST
00000c09: POP
00000c0a: POP
00000c0b: POP
00000c0c: POP
00000c0d: JUMP
00000c0e: JUMPDEST
00000c0f: PUSH2 0x0c16
00000c12: PUSH2 0x2992
00000c15: JUMP
00000c16: JUMPDEST
00000c17: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c2c: AND
00000c2d: PUSH2 0x0c34
00000c30: PUSH2 0x1d51
00000c33: JUMP
00000c34: JUMPDEST
00000c35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c4a: AND
00000c4b: EQ
00000c4c: PUSH2 0x0c8a
00000c4f: JUMPI
00000c50: PUSH1 0x40
00000c52: MLOAD
00000c53: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c74: DUP2
00000c75: MSTORE
00000c76: PUSH1 0x04
00000c78: ADD
00000c79: PUSH2 0x0c81
00000c7c: SWAP1
00000c7d: PUSH2 0x3396
00000c80: JUMP
00000c81: JUMPDEST
00000c82: PUSH1 0x40
00000c84: MLOAD
00000c85: DUP1
00000c86: SWAP2
00000c87: SUB
00000c88: SWAP1
00000c89: REVERT
00000c8a: JUMPDEST
00000c8b: PUSH2 0x0c92
00000c8e: PUSH2 0x29f6
00000c91: JUMP
00000c92: JUMPDEST
00000c93: JUMP
00000c94: JUMPDEST
00000c95: PUSH2 0x0c9c
00000c98: PUSH2 0x2992
00000c9b: JUMP
00000c9c: JUMPDEST
00000c9d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cb2: AND
00000cb3: PUSH2 0x0cba
00000cb6: PUSH2 0x1d51
00000cb9: JUMP
00000cba: JUMPDEST
00000cbb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cd0: AND
00000cd1: EQ
00000cd2: PUSH2 0x0d10
00000cd5: JUMPI
00000cd6: PUSH1 0x40
00000cd8: MLOAD
00000cd9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000cfa: DUP2
00000cfb: MSTORE
00000cfc: PUSH1 0x04
00000cfe: ADD
00000cff: PUSH2 0x0d07
00000d02: SWAP1
00000d03: PUSH2 0x3396
00000d06: JUMP
00000d07: JUMPDEST
00000d08: PUSH1 0x40
00000d0a: MLOAD
00000d0b: DUP1
00000d0c: SWAP2
00000d0d: SUB
00000d0e: SWAP1
00000d0f: REVERT
00000d10: JUMPDEST
00000d11: PUSH2 0x0d19
00000d14: DUP2
00000d15: PUSH2 0x2a7b
00000d18: JUMP
00000d19: JUMPDEST
00000d1a: POP
00000d1b: JUMP
00000d1c: JUMPDEST
00000d1d: PUSH1 0x07
00000d1f: SLOAD
00000d20: DUP2
00000d21: JUMP
00000d22: JUMPDEST
00000d23: PUSH1 0x0e
00000d25: SLOAD
00000d26: DUP2
00000d27: JUMP
00000d28: JUMPDEST
00000d29: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
00000d3e: DUP2
00000d3f: JUMP
00000d40: JUMPDEST
00000d41: PUSH2 0x0d48
00000d44: PUSH2 0x2992
00000d47: JUMP
00000d48: JUMPDEST
00000d49: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d5e: AND
00000d5f: PUSH2 0x0d66
00000d62: PUSH2 0x1d51
00000d65: JUMP
00000d66: JUMPDEST
00000d67: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d7c: AND
00000d7d: EQ
00000d7e: PUSH2 0x0dbc
00000d81: JUMPI
00000d82: PUSH1 0x40
00000d84: MLOAD
00000d85: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000da6: DUP2
00000da7: MSTORE
00000da8: PUSH1 0x04
00000daa: ADD
00000dab: PUSH2 0x0db3
00000dae: SWAP1
00000daf: PUSH2 0x3396
00000db2: JUMP
00000db3: JUMPDEST
00000db4: PUSH1 0x40
00000db6: MLOAD
00000db7: DUP1
00000db8: SWAP2
00000db9: SUB
00000dba: SWAP1
00000dbb: REVERT
00000dbc: JUMPDEST
00000dbd: PUSH1 0x32
00000dbf: DUP2
00000dc0: GT
00000dc1: ISZERO
00000dc2: PUSH2 0x0e00
00000dc5: JUMPI
00000dc6: PUSH1 0x40
00000dc8: MLOAD
00000dc9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000dea: DUP2
00000deb: MSTORE
00000dec: PUSH1 0x04
00000dee: ADD
00000def: PUSH2 0x0df7
00000df2: SWAP1
00000df3: PUSH2 0x3509
00000df6: JUMP
00000df7: JUMPDEST
00000df8: PUSH1 0x40
00000dfa: MLOAD
00000dfb: DUP1
00000dfc: SWAP2
00000dfd: SUB
00000dfe: SWAP1
00000dff: REVERT
00000e00: JUMPDEST
00000e01: DUP1
00000e02: PUSH1 0x0c
00000e04: DUP2
00000e05: SWAP1
00000e06: SSTORE
00000e07: POP
00000e08: PUSH32 0xe94edcc114da5287ecb30ee8aacf12e6c16b11b8583d7f9e477ab1616e33d53d
00000e29: PUSH1 0x0c
00000e2b: SLOAD
00000e2c: PUSH1 0x40
00000e2e: MLOAD
00000e2f: PUSH2 0x0e38
00000e32: SWAP2
00000e33: SWAP1
00000e34: PUSH2 0x314e
00000e37: JUMP
00000e38: JUMPDEST
00000e39: PUSH1 0x40
00000e3b: MLOAD
00000e3c: DUP1
00000e3d: SWAP2
00000e3e: SUB
00000e3f: SWAP1
00000e40: LOG1
00000e41: POP
00000e42: JUMP
00000e43: JUMPDEST
00000e44: PUSH0
00000e45: PUSH1 0x02
00000e47: PUSH0
00000e48: CALLER
00000e49: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e5e: AND
00000e5f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e74: AND
00000e75: DUP2
00000e76: MSTORE
00000e77: PUSH1 0x20
00000e79: ADD
00000e7a: SWAP1
00000e7b: DUP2
00000e7c: MSTORE
00000e7d: PUSH1 0x20
00000e7f: ADD
00000e80: PUSH0
00000e81: KECCAK256
00000e82: SLOAD
00000e83: GT
00000e84: PUSH2 0x0ec2
00000e87: JUMPI
00000e88: PUSH1 0x40
00000e8a: MLOAD
00000e8b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000eac: DUP2
00000ead: MSTORE
00000eae: PUSH1 0x04
00000eb0: ADD
00000eb1: PUSH2 0x0eb9
00000eb4: SWAP1
00000eb5: PUSH2 0x3571
00000eb8: JUMP
00000eb9: JUMPDEST
00000eba: PUSH1 0x40
00000ebc: MLOAD
00000ebd: DUP1
00000ebe: SWAP2
00000ebf: SUB
00000ec0: SWAP1
00000ec1: REVERT
00000ec2: JUMPDEST
00000ec3: PUSH1 0x04
00000ec5: SLOAD
00000ec6: TIMESTAMP
00000ec7: LT
00000ec8: ISZERO
00000ec9: PUSH2 0x0f07
00000ecc: JUMPI
00000ecd: PUSH1 0x40
00000ecf: MLOAD
00000ed0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000ef1: DUP2
00000ef2: MSTORE
00000ef3: PUSH1 0x04
00000ef5: ADD
00000ef6: PUSH2 0x0efe
00000ef9: SWAP1
00000efa: PUSH2 0x35d9
00000efd: JUMP
00000efe: JUMPDEST
00000eff: PUSH1 0x40
00000f01: MLOAD
00000f02: DUP1
00000f03: SWAP2
00000f04: SUB
00000f05: SWAP1
00000f06: REVERT
00000f07: JUMPDEST
00000f08: PUSH2 0x0f59
00000f0b: PUSH1 0x02
00000f0d: PUSH0
00000f0e: CALLER
00000f0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f24: AND
00000f25: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f3a: AND
00000f3b: DUP2
00000f3c: MSTORE
00000f3d: PUSH1 0x20
00000f3f: ADD
00000f40: SWAP1
00000f41: DUP2
00000f42: MSTORE
00000f43: PUSH1 0x20
00000f45: ADD
00000f46: PUSH0
00000f47: KECCAK256
00000f48: SLOAD
00000f49: PUSH1 0x06
00000f4b: SLOAD
00000f4c: PUSH2 0x2afd
00000f4f: SWAP1
00000f50: SWAP2
00000f51: SWAP1
00000f52: PUSH4 0xffffffff
00000f57: AND
00000f58: JUMP
00000f59: JUMPDEST
00000f5a: PUSH1 0x06
00000f5c: DUP2
00000f5d: SWAP1
00000f5e: SSTORE
00000f5f: POP
00000f60: PUSH0
00000f61: PUSH1 0x02
00000f63: PUSH0
00000f64: CALLER
00000f65: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f7a: AND
00000f7b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f90: AND
00000f91: DUP2
00000f92: MSTORE
00000f93: PUSH1 0x20
00000f95: ADD
00000f96: SWAP1
00000f97: DUP2
00000f98: MSTORE
00000f99: PUSH1 0x20
00000f9b: ADD
00000f9c: PUSH0
00000f9d: KECCAK256
00000f9e: SLOAD
00000f9f: SWAP1
00000fa0: POP
00000fa1: PUSH0
00000fa2: PUSH1 0x02
00000fa4: PUSH0
00000fa5: CALLER
00000fa6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fbb: AND
00000fbc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fd1: AND
00000fd2: DUP2
00000fd3: MSTORE
00000fd4: PUSH1 0x20
00000fd6: ADD
00000fd7: SWAP1
00000fd8: DUP2
00000fd9: MSTORE
00000fda: PUSH1 0x20
00000fdc: ADD
00000fdd: PUSH0
00000fde: KECCAK256
00000fdf: DUP2
00000fe0: SWAP1
00000fe1: SSTORE
00000fe2: POP
00000fe3: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
00000ff8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000100d: AND
0000100e: PUSH4 0xa9059cbb
00001013: CALLER
00001014: DUP4
00001015: PUSH1 0x40
00001017: MLOAD
00001018: DUP4
00001019: PUSH4 0xffffffff
0000101e: AND
0000101f: PUSH1 0xe0
00001021: SHL
00001022: DUP2
00001023: MSTORE
00001024: PUSH1 0x04
00001026: ADD
00001027: PUSH2 0x1031
0000102a: SWAP3
0000102b: SWAP2
0000102c: SWAP1
0000102d: PUSH2 0x3443
00001030: JUMP
00001031: JUMPDEST
00001032: PUSH1 0x20
00001034: PUSH1 0x40
00001036: MLOAD
00001037: DUP1
00001038: DUP4
00001039: SUB
0000103a: DUP2
0000103b: PUSH0
0000103c: DUP8
0000103d: GAS
0000103e: CALL
0000103f: ISZERO
00001040: DUP1
00001041: ISZERO
00001042: PUSH2 0x104d
00001045: JUMPI
00001046: RETURNDATASIZE
00001047: PUSH0
00001048: DUP1
00001049: RETURNDATACOPY
0000104a: RETURNDATASIZE
0000104b: PUSH0
0000104c: REVERT
0000104d: JUMPDEST
0000104e: POP
0000104f: POP
00001050: POP
00001051: POP
00001052: PUSH1 0x40
00001054: MLOAD
00001055: RETURNDATASIZE
00001056: PUSH1 0x1f
00001058: NOT
00001059: PUSH1 0x1f
0000105b: DUP3
0000105c: ADD
0000105d: AND
0000105e: DUP3
0000105f: ADD
00001060: DUP1
00001061: PUSH1 0x40
00001063: MSTORE
00001064: POP
00001065: DUP2
00001066: ADD
00001067: SWAP1
00001068: PUSH2 0x1071
0000106b: SWAP2
0000106c: SWAP1
0000106d: PUSH2 0x3494
00001070: JUMP
00001071: JUMPDEST
00001072: POP
00001073: PUSH1 0x01
00001075: PUSH1 0x08
00001077: SLOAD
00001078: PUSH2 0x1081
0000107b: SWAP2
0000107c: SWAP1
0000107d: PUSH2 0x3624
00001080: JUMP
00001081: JUMPDEST
00001082: PUSH1 0x08
00001084: DUP2
00001085: SWAP1
00001086: SSTORE
00001087: POP
00001088: PUSH32 0x7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5
000010a9: CALLER
000010aa: DUP3
000010ab: PUSH1 0x40
000010ad: MLOAD
000010ae: PUSH2 0x10b8
000010b1: SWAP3
000010b2: SWAP2
000010b3: SWAP1
000010b4: PUSH2 0x3443
000010b7: JUMP
000010b8: JUMPDEST
000010b9: PUSH1 0x40
000010bb: MLOAD
000010bc: DUP1
000010bd: SWAP2
000010be: SUB
000010bf: SWAP1
000010c0: LOG1
000010c1: POP
000010c2: JUMP
000010c3: JUMPDEST
000010c4: PUSH2 0x10cb
000010c7: PUSH2 0x2992
000010ca: JUMP
000010cb: JUMPDEST
000010cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010e1: AND
000010e2: PUSH2 0x10e9
000010e5: PUSH2 0x1d51
000010e8: JUMP
000010e9: JUMPDEST
000010ea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010ff: AND
00001100: EQ
00001101: PUSH2 0x113f
00001104: JUMPI
00001105: PUSH1 0x40
00001107: MLOAD
00001108: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001129: DUP2
0000112a: MSTORE
0000112b: PUSH1 0x04
0000112d: ADD
0000112e: PUSH2 0x1136
00001131: SWAP1
00001132: PUSH2 0x3396
00001135: JUMP
00001136: JUMPDEST
00001137: PUSH1 0x40
00001139: MLOAD
0000113a: DUP1
0000113b: SWAP2
0000113c: SUB
0000113d: SWAP1
0000113e: REVERT
0000113f: JUMPDEST
00001140: DUP1
00001141: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001156: AND
00001157: PUSH2 0x08fc
0000115a: SELFBALANCE
0000115b: SWAP1
0000115c: DUP2
0000115d: ISZERO
0000115e: MUL
0000115f: SWAP1
00001160: PUSH1 0x40
00001162: MLOAD
00001163: PUSH0
00001164: PUSH1 0x40
00001166: MLOAD
00001167: DUP1
00001168: DUP4
00001169: SUB
0000116a: DUP2
0000116b: DUP6
0000116c: DUP9
0000116d: DUP9
0000116e: CALL
0000116f: SWAP4
00001170: POP
00001171: POP
00001172: POP
00001173: POP
00001174: ISZERO
00001175: DUP1
00001176: ISZERO
00001177: PUSH2 0x1182
0000117a: JUMPI
0000117b: RETURNDATASIZE
0000117c: PUSH0
0000117d: DUP1
0000117e: RETURNDATACOPY
0000117f: RETURNDATASIZE
00001180: PUSH0
00001181: REVERT
00001182: JUMPDEST
00001183: POP
00001184: POP
00001185: JUMP
00001186: JUMPDEST
00001187: PUSH0
00001188: PUSH1 0x02
0000118a: PUSH0
0000118b: CALLER
0000118c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011a1: AND
000011a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011b7: AND
000011b8: DUP2
000011b9: MSTORE
000011ba: PUSH1 0x20
000011bc: ADD
000011bd: SWAP1
000011be: DUP2
000011bf: MSTORE
000011c0: PUSH1 0x20
000011c2: ADD
000011c3: PUSH0
000011c4: KECCAK256
000011c5: SLOAD
000011c6: GT
000011c7: PUSH2 0x1205
000011ca: JUMPI
000011cb: PUSH1 0x40
000011cd: MLOAD
000011ce: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000011ef: DUP2
000011f0: MSTORE
000011f1: PUSH1 0x04
000011f3: ADD
000011f4: PUSH2 0x11fc
000011f7: SWAP1
000011f8: PUSH2 0x3571
000011fb: JUMP
000011fc: JUMPDEST
000011fd: PUSH1 0x40
000011ff: MLOAD
00001200: DUP1
00001201: SWAP2
00001202: SUB
00001203: SWAP1
00001204: REVERT
00001205: JUMPDEST
00001206: PUSH2 0x1257
00001209: PUSH1 0x02
0000120b: PUSH0
0000120c: CALLER
0000120d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001222: AND
00001223: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001238: AND
00001239: DUP2
0000123a: MSTORE
0000123b: PUSH1 0x20
0000123d: ADD
0000123e: SWAP1
0000123f: DUP2
00001240: MSTORE
00001241: PUSH1 0x20
00001243: ADD
00001244: PUSH0
00001245: KECCAK256
00001246: SLOAD
00001247: PUSH1 0x06
00001249: SLOAD
0000124a: PUSH2 0x2afd
0000124d: SWAP1
0000124e: SWAP2
0000124f: SWAP1
00001250: PUSH4 0xffffffff
00001255: AND
00001256: JUMP
00001257: JUMPDEST
00001258: PUSH1 0x06
0000125a: DUP2
0000125b: SWAP1
0000125c: SSTORE
0000125d: POP
0000125e: PUSH0
0000125f: PUSH2 0x12c3
00001262: PUSH1 0x64
00001264: PUSH2 0x12b5
00001267: PUSH1 0x0c
00001269: SLOAD
0000126a: PUSH1 0x02
0000126c: PUSH0
0000126d: CALLER
0000126e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001283: AND
00001284: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001299: AND
0000129a: DUP2
0000129b: MSTORE
0000129c: PUSH1 0x20
0000129e: ADD
0000129f: SWAP1
000012a0: DUP2
000012a1: MSTORE
000012a2: PUSH1 0x20
000012a4: ADD
000012a5: PUSH0
000012a6: KECCAK256
000012a7: SLOAD
000012a8: PUSH2 0x2b46
000012ab: SWAP1
000012ac: SWAP2
000012ad: SWAP1
000012ae: PUSH4 0xffffffff
000012b3: AND
000012b4: JUMP
000012b5: JUMPDEST
000012b6: PUSH2 0x2bbd
000012b9: SWAP1
000012ba: SWAP2
000012bb: SWAP1
000012bc: PUSH4 0xffffffff
000012c1: AND
000012c2: JUMP
000012c3: JUMPDEST
000012c4: SWAP1
000012c5: POP
000012c6: PUSH0
000012c7: PUSH2 0x1316
000012ca: DUP3
000012cb: PUSH1 0x02
000012cd: PUSH0
000012ce: CALLER
000012cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012e4: AND
000012e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012fa: AND
000012fb: DUP2
000012fc: MSTORE
000012fd: PUSH1 0x20
000012ff: ADD
00001300: SWAP1
00001301: DUP2
00001302: MSTORE
00001303: PUSH1 0x20
00001305: ADD
00001306: PUSH0
00001307: KECCAK256
00001308: SLOAD
00001309: PUSH2 0x2afd
0000130c: SWAP1
0000130d: SWAP2
0000130e: SWAP1
0000130f: PUSH4 0xffffffff
00001314: AND
00001315: JUMP
00001316: JUMPDEST
00001317: SWAP1
00001318: POP
00001319: PUSH0
0000131a: PUSH1 0x02
0000131c: PUSH0
0000131d: CALLER
0000131e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001333: AND
00001334: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001349: AND
0000134a: DUP2
0000134b: MSTORE
0000134c: PUSH1 0x20
0000134e: ADD
0000134f: SWAP1
00001350: DUP2
00001351: MSTORE
00001352: PUSH1 0x20
00001354: ADD
00001355: PUSH0
00001356: KECCAK256
00001357: DUP2
00001358: SWAP1
00001359: SSTORE
0000135a: POP
0000135b: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
00001370: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001385: AND
00001386: PUSH4 0xa9059cbb
0000138b: CALLER
0000138c: DUP4
0000138d: PUSH1 0x40
0000138f: MLOAD
00001390: DUP4
00001391: PUSH4 0xffffffff
00001396: AND
00001397: PUSH1 0xe0
00001399: SHL
0000139a: DUP2
0000139b: MSTORE
0000139c: PUSH1 0x04
0000139e: ADD
0000139f: PUSH2 0x13a9
000013a2: SWAP3
000013a3: SWAP2
000013a4: SWAP1
000013a5: PUSH2 0x3443
000013a8: JUMP
000013a9: JUMPDEST
000013aa: PUSH1 0x20
000013ac: PUSH1 0x40
000013ae: MLOAD
000013af: DUP1
000013b0: DUP4
000013b1: SUB
000013b2: DUP2
000013b3: PUSH0
000013b4: DUP8
000013b5: GAS
000013b6: CALL
000013b7: ISZERO
000013b8: DUP1
000013b9: ISZERO
000013ba: PUSH2 0x13c5
000013bd: JUMPI
000013be: RETURNDATASIZE
000013bf: PUSH0
000013c0: DUP1
000013c1: RETURNDATACOPY
000013c2: RETURNDATASIZE
000013c3: PUSH0
000013c4: REVERT
000013c5: JUMPDEST
000013c6: POP
000013c7: POP
000013c8: POP
000013c9: POP
000013ca: PUSH1 0x40
000013cc: MLOAD
000013cd: RETURNDATASIZE
000013ce: PUSH1 0x1f
000013d0: NOT
000013d1: PUSH1 0x1f
000013d3: DUP3
000013d4: ADD
000013d5: AND
000013d6: DUP3
000013d7: ADD
000013d8: DUP1
000013d9: PUSH1 0x40
000013db: MSTORE
000013dc: POP
000013dd: DUP2
000013de: ADD
000013df: SWAP1
000013e0: PUSH2 0x13e9
000013e3: SWAP2
000013e4: SWAP1
000013e5: PUSH2 0x3494
000013e8: JUMP
000013e9: JUMPDEST
000013ea: POP
000013eb: PUSH0
000013ec: DUP3
000013ed: GT
000013ee: ISZERO
000013ef: PUSH2 0x14a4
000013f2: JUMPI
000013f3: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
00001408: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000141d: AND
0000141e: PUSH4 0xa9059cbb
00001423: PUSH1 0x0d
00001425: PUSH0
00001426: SWAP1
00001427: SLOAD
00001428: SWAP1
00001429: PUSH2 0x0100
0000142c: EXP
0000142d: SWAP1
0000142e: DIV
0000142f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001444: AND
00001445: DUP5
00001446: PUSH1 0x40
00001448: MLOAD
00001449: DUP4
0000144a: PUSH4 0xffffffff
0000144f: AND
00001450: PUSH1 0xe0
00001452: SHL
00001453: DUP2
00001454: MSTORE
00001455: PUSH1 0x04
00001457: ADD
00001458: PUSH2 0x1462
0000145b: SWAP3
0000145c: SWAP2
0000145d: SWAP1
0000145e: PUSH2 0x3443
00001461: JUMP
00001462: JUMPDEST
00001463: PUSH1 0x20
00001465: PUSH1 0x40
00001467: MLOAD
00001468: DUP1
00001469: DUP4
0000146a: SUB
0000146b: DUP2
0000146c: PUSH0
0000146d: DUP8
0000146e: GAS
0000146f: CALL
00001470: ISZERO
00001471: DUP1
00001472: ISZERO
00001473: PUSH2 0x147e
00001476: JUMPI
00001477: RETURNDATASIZE
00001478: PUSH0
00001479: DUP1
0000147a: RETURNDATACOPY
0000147b: RETURNDATASIZE
0000147c: PUSH0
0000147d: REVERT
0000147e: JUMPDEST
0000147f: POP
00001480: POP
00001481: POP
00001482: POP
00001483: PUSH1 0x40
00001485: MLOAD
00001486: RETURNDATASIZE
00001487: PUSH1 0x1f
00001489: NOT
0000148a: PUSH1 0x1f
0000148c: DUP3
0000148d: ADD
0000148e: AND
0000148f: DUP3
00001490: ADD
00001491: DUP1
00001492: PUSH1 0x40
00001494: MSTORE
00001495: POP
00001496: DUP2
00001497: ADD
00001498: SWAP1
00001499: PUSH2 0x14a2
0000149c: SWAP2
0000149d: SWAP1
0000149e: PUSH2 0x3494
000014a1: JUMP
000014a2: JUMPDEST
000014a3: POP
000014a4: JUMPDEST
000014a5: PUSH1 0x01
000014a7: PUSH1 0x08
000014a9: SLOAD
000014aa: PUSH2 0x14b3
000014ad: SWAP2
000014ae: SWAP1
000014af: PUSH2 0x3624
000014b2: JUMP
000014b3: JUMPDEST
000014b4: PUSH1 0x08
000014b6: DUP2
000014b7: SWAP1
000014b8: SSTORE
000014b9: POP
000014ba: PUSH32 0x7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5
000014db: CALLER
000014dc: DUP3
000014dd: PUSH1 0x40
000014df: MLOAD
000014e0: PUSH2 0x14ea
000014e3: SWAP3
000014e4: SWAP2
000014e5: SWAP1
000014e6: PUSH2 0x3443
000014e9: JUMP
000014ea: JUMPDEST
000014eb: PUSH1 0x40
000014ed: MLOAD
000014ee: DUP1
000014ef: SWAP2
000014f0: SUB
000014f1: SWAP1
000014f2: LOG1
000014f3: POP
000014f4: POP
000014f5: JUMP
000014f6: JUMPDEST
000014f7: PUSH1 0x04
000014f9: SLOAD
000014fa: DUP2
000014fb: JUMP
000014fc: JUMPDEST
000014fd: PUSH0
000014fe: DUP1
000014ff: PUSH0
00001500: PUSH1 0x07
00001502: SLOAD
00001503: SWAP1
00001504: POP
00001505: PUSH1 0x10
00001507: PUSH0
00001508: PUSH1 0x07
0000150a: SLOAD
0000150b: DUP2
0000150c: MSTORE
0000150d: PUSH1 0x20
0000150f: ADD
00001510: SWAP1
00001511: DUP2
00001512: MSTORE
00001513: PUSH1 0x20
00001515: ADD
00001516: PUSH0
00001517: KECCAK256
00001518: PUSH1 0x03
0000151a: ADD
0000151b: PUSH0
0000151c: SWAP1
0000151d: SLOAD
0000151e: SWAP1
0000151f: PUSH2 0x0100
00001522: EXP
00001523: SWAP1
00001524: DIV
00001525: PUSH1 0xff
00001527: AND
00001528: ISZERO
00001529: PUSH2 0x153e
0000152c: JUMPI
0000152d: PUSH1 0x01
0000152f: PUSH1 0x07
00001531: SLOAD
00001532: PUSH2 0x153b
00001535: SWAP2
00001536: SWAP1
00001537: PUSH2 0x3657
0000153a: JUMP
0000153b: JUMPDEST
0000153c: SWAP1
0000153d: POP
0000153e: JUMPDEST
0000153f: PUSH0
00001540: PUSH1 0x01
00001542: PUSH1 0x0a
00001544: PUSH0
00001545: DUP8
00001546: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000155b: AND
0000155c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001571: AND
00001572: DUP2
00001573: MSTORE
00001574: PUSH1 0x20
00001576: ADD
00001577: SWAP1
00001578: DUP2
00001579: MSTORE
0000157a: PUSH1 0x20
0000157c: ADD
0000157d: PUSH0
0000157e: KECCAK256
0000157f: SLOAD
00001580: PUSH2 0x1589
00001583: SWAP2
00001584: SWAP1
00001585: PUSH2 0x3657
00001588: JUMP
00001589: JUMPDEST
0000158a: SWAP1
0000158b: POP
0000158c: JUMPDEST
0000158d: DUP2
0000158e: DUP2
0000158f: LT
00001590: ISZERO
00001591: PUSH2 0x1644
00001594: JUMPI
00001595: PUSH0
00001596: PUSH2 0x161f
00001599: PUSH1 0x10
0000159b: PUSH0
0000159c: DUP5
0000159d: DUP2
0000159e: MSTORE
0000159f: PUSH1 0x20
000015a1: ADD
000015a2: SWAP1
000015a3: DUP2
000015a4: MSTORE
000015a5: PUSH1 0x20
000015a7: ADD
000015a8: PUSH0
000015a9: KECCAK256
000015aa: PUSH1 0x01
000015ac: ADD
000015ad: SLOAD
000015ae: PUSH2 0x1611
000015b1: PUSH1 0x02
000015b3: PUSH0
000015b4: DUP11
000015b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015ca: AND
000015cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015e0: AND
000015e1: DUP2
000015e2: MSTORE
000015e3: PUSH1 0x20
000015e5: ADD
000015e6: SWAP1
000015e7: DUP2
000015e8: MSTORE
000015e9: PUSH1 0x20
000015eb: ADD
000015ec: PUSH0
000015ed: KECCAK256
000015ee: SLOAD
000015ef: PUSH1 0x10
000015f1: PUSH0
000015f2: DUP8
000015f3: DUP2
000015f4: MSTORE
000015f5: PUSH1 0x20
000015f7: ADD
000015f8: SWAP1
000015f9: DUP2
000015fa: MSTORE
000015fb: PUSH1 0x20
000015fd: ADD
000015fe: PUSH0
000015ff: KECCAK256
00001600: PUSH1 0x02
00001602: ADD
00001603: SLOAD
00001604: PUSH2 0x2b46
00001607: SWAP1
00001608: SWAP2
00001609: SWAP1
0000160a: PUSH4 0xffffffff
0000160f: AND
00001610: JUMP
00001611: JUMPDEST
00001612: PUSH2 0x2bbd
00001615: SWAP1
00001616: SWAP2
00001617: SWAP1
00001618: PUSH4 0xffffffff
0000161d: AND
0000161e: JUMP
0000161f: JUMPDEST
00001620: SWAP1
00001621: POP
00001622: PUSH2 0x1634
00001625: DUP2
00001626: DUP6
00001627: PUSH2 0x2999
0000162a: SWAP1
0000162b: SWAP2
0000162c: SWAP1
0000162d: PUSH4 0xffffffff
00001632: AND
00001633: JUMP
00001634: JUMPDEST
00001635: SWAP4
00001636: POP
00001637: POP
00001638: DUP1
00001639: DUP1
0000163a: PUSH1 0x01
0000163c: ADD
0000163d: SWAP2
0000163e: POP
0000163f: POP
00001640: PUSH2 0x158c
00001643: JUMP
00001644: JUMPDEST
00001645: POP
00001646: DUP2
00001647: SWAP3
00001648: POP
00001649: POP
0000164a: POP
0000164b: SWAP2
0000164c: SWAP1
0000164d: POP
0000164e: JUMP
0000164f: JUMPDEST
00001650: PUSH2 0x1657
00001653: PUSH2 0x2992
00001656: JUMP
00001657: JUMPDEST
00001658: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000166d: AND
0000166e: PUSH2 0x1675
00001671: PUSH2 0x1d51
00001674: JUMP
00001675: JUMPDEST
00001676: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000168b: AND
0000168c: EQ
0000168d: PUSH2 0x16cb
00001690: JUMPI
00001691: PUSH1 0x40
00001693: MLOAD
00001694: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000016b5: DUP2
000016b6: MSTORE
000016b7: PUSH1 0x04
000016b9: ADD
000016ba: PUSH2 0x16c2
000016bd: SWAP1
000016be: PUSH2 0x3396
000016c1: JUMP
000016c2: JUMPDEST
000016c3: PUSH1 0x40
000016c5: MLOAD
000016c6: DUP1
000016c7: SWAP2
000016c8: SUB
000016c9: SWAP1
000016ca: REVERT
000016cb: JUMPDEST
000016cc: PUSH1 0x10
000016ce: PUSH0
000016cf: PUSH1 0x07
000016d1: SLOAD
000016d2: DUP2
000016d3: MSTORE
000016d4: PUSH1 0x20
000016d6: ADD
000016d7: SWAP1
000016d8: DUP2
000016d9: MSTORE
000016da: PUSH1 0x20
000016dc: ADD
000016dd: PUSH0
000016de: KECCAK256
000016df: PUSH1 0x03
000016e1: ADD
000016e2: PUSH0
000016e3: SWAP1
000016e4: SLOAD
000016e5: SWAP1
000016e6: PUSH2 0x0100
000016e9: EXP
000016ea: SWAP1
000016eb: DIV
000016ec: PUSH1 0xff
000016ee: AND
000016ef: DUP1
000016f0: PUSH2 0x16fa
000016f3: JUMPI
000016f4: POP
000016f5: PUSH0
000016f6: PUSH1 0x07
000016f8: SLOAD
000016f9: EQ
000016fa: JUMPDEST
000016fb: PUSH2 0x1739
000016fe: JUMPI
000016ff: PUSH1 0x40
00001701: MLOAD
00001702: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001723: DUP2
00001724: MSTORE
00001725: PUSH1 0x04
00001727: ADD
00001728: PUSH2 0x1730
0000172b: SWAP1
0000172c: PUSH2 0x36d4
0000172f: JUMP
00001730: JUMPDEST
00001731: PUSH1 0x40
00001733: MLOAD
00001734: DUP1
00001735: SWAP2
00001736: SUB
00001737: SWAP1
00001738: REVERT
00001739: JUMPDEST
0000173a: DUP2
0000173b: PUSH1 0x03
0000173d: DUP2
0000173e: SWAP1
0000173f: SSTORE
00001740: POP
00001741: DUP1
00001742: PUSH1 0x04
00001744: DUP2
00001745: SWAP1
00001746: SSTORE
00001747: POP
00001748: PUSH1 0x01
0000174a: PUSH1 0x07
0000174c: SLOAD
0000174d: PUSH2 0x1756
00001750: SWAP2
00001751: SWAP1
00001752: PUSH2 0x3657
00001755: JUMP
00001756: JUMPDEST
00001757: PUSH1 0x07
00001759: DUP2
0000175a: SWAP1
0000175b: SSTORE
0000175c: POP
0000175d: PUSH1 0x07
0000175f: SLOAD
00001760: PUSH1 0x10
00001762: PUSH0
00001763: PUSH1 0x07
00001765: SLOAD
00001766: DUP2
00001767: MSTORE
00001768: PUSH1 0x20
0000176a: ADD
0000176b: SWAP1
0000176c: DUP2
0000176d: MSTORE
0000176e: PUSH1 0x20
00001770: ADD
00001771: PUSH0
00001772: KECCAK256
00001773: PUSH0
00001774: ADD
00001775: DUP2
00001776: SWAP1
00001777: SSTORE
00001778: POP
00001779: PUSH32 0x8a3184431b8f0b032dfb64da3067c26e235378412d8a32827526ab11984400cf
0000179a: PUSH1 0x03
0000179c: SLOAD
0000179d: PUSH1 0x04
0000179f: SLOAD
000017a0: PUSH1 0x40
000017a2: MLOAD
000017a3: PUSH2 0x17ad
000017a6: SWAP3
000017a7: SWAP2
000017a8: SWAP1
000017a9: PUSH2 0x33b4
000017ac: JUMP
000017ad: JUMPDEST
000017ae: PUSH1 0x40
000017b0: MLOAD
000017b1: DUP1
000017b2: SWAP2
000017b3: SUB
000017b4: SWAP1
000017b5: LOG1
000017b6: POP
000017b7: POP
000017b8: JUMP
000017b9: JUMPDEST
000017ba: PUSH2 0x17c1
000017bd: PUSH2 0x2992
000017c0: JUMP
000017c1: JUMPDEST
000017c2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017d7: AND
000017d8: PUSH2 0x17df
000017db: PUSH2 0x1d51
000017de: JUMP
000017df: JUMPDEST
000017e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017f5: AND
000017f6: EQ
000017f7: PUSH2 0x1835
000017fa: JUMPI
000017fb: PUSH1 0x40
000017fd: MLOAD
000017fe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000181f: DUP2
00001820: MSTORE
00001821: PUSH1 0x04
00001823: ADD
00001824: PUSH2 0x182c
00001827: SWAP1
00001828: PUSH2 0x3396
0000182b: JUMP
0000182c: JUMPDEST
0000182d: PUSH1 0x40
0000182f: MLOAD
00001830: DUP1
00001831: SWAP2
00001832: SUB
00001833: SWAP1
00001834: REVERT
00001835: JUMPDEST
00001836: PUSH2 0x183e
00001839: PUSH0
0000183a: PUSH2 0x2c06
0000183d: JUMP
0000183e: JUMPDEST
0000183f: JUMP
00001840: JUMPDEST
00001841: PUSH0
00001842: PUSH2 0x1849
00001845: PUSH2 0x2992
00001848: JUMP
00001849: JUMPDEST
0000184a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000185f: AND
00001860: PUSH2 0x1867
00001863: PUSH2 0x1d51
00001866: JUMP
00001867: JUMPDEST
00001868: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000187d: AND
0000187e: EQ
0000187f: PUSH2 0x18bd
00001882: JUMPI
00001883: PUSH1 0x40
00001885: MLOAD
00001886: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000018a7: DUP2
000018a8: MSTORE
000018a9: PUSH1 0x04
000018ab: ADD
000018ac: PUSH2 0x18b4
000018af: SWAP1
000018b0: PUSH2 0x3396
000018b3: JUMP
000018b4: JUMPDEST
000018b5: PUSH1 0x40
000018b7: MLOAD
000018b8: DUP1
000018b9: SWAP2
000018ba: SUB
000018bb: SWAP1
000018bc: REVERT
000018bd: JUMPDEST
000018be: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
000018d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018e8: AND
000018e9: PUSH4 0x70a08231
000018ee: ADDRESS
000018ef: PUSH1 0x40
000018f1: MLOAD
000018f2: DUP3
000018f3: PUSH4 0xffffffff
000018f8: AND
000018f9: PUSH1 0xe0
000018fb: SHL
000018fc: DUP2
000018fd: MSTORE
000018fe: PUSH1 0x04
00001900: ADD
00001901: PUSH2 0x190a
00001904: SWAP2
00001905: SWAP1
00001906: PUSH2 0x3323
00001909: JUMP
0000190a: JUMPDEST
0000190b: PUSH1 0x20
0000190d: PUSH1 0x40
0000190f: MLOAD
00001910: DUP1
00001911: DUP4
00001912: SUB
00001913: DUP2
00001914: DUP7
00001915: GAS
00001916: STATICCALL
00001917: ISZERO
00001918: DUP1
00001919: ISZERO
0000191a: PUSH2 0x1925
0000191d: JUMPI
0000191e: RETURNDATASIZE
0000191f: PUSH0
00001920: DUP1
00001921: RETURNDATACOPY
00001922: RETURNDATASIZE
00001923: PUSH0
00001924: REVERT
00001925: JUMPDEST
00001926: POP
00001927: POP
00001928: POP
00001929: POP
0000192a: PUSH1 0x40
0000192c: MLOAD
0000192d: RETURNDATASIZE
0000192e: PUSH1 0x1f
00001930: NOT
00001931: PUSH1 0x1f
00001933: DUP3
00001934: ADD
00001935: AND
00001936: DUP3
00001937: ADD
00001938: DUP1
00001939: PUSH1 0x40
0000193b: MSTORE
0000193c: POP
0000193d: DUP2
0000193e: ADD
0000193f: SWAP1
00001940: PUSH2 0x1949
00001943: SWAP2
00001944: SWAP1
00001945: PUSH2 0x3706
00001948: JUMP
00001949: JUMPDEST
0000194a: SWAP1
0000194b: POP
0000194c: SWAP1
0000194d: JUMP
0000194e: JUMPDEST
0000194f: PUSH1 0x09
00001951: SLOAD
00001952: DUP2
00001953: JUMP
00001954: JUMPDEST
00001955: PUSH0
00001956: PUSH1 0x02
00001958: PUSH0
00001959: CALLER
0000195a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000196f: AND
00001970: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001985: AND
00001986: DUP2
00001987: MSTORE
00001988: PUSH1 0x20
0000198a: ADD
0000198b: SWAP1
0000198c: DUP2
0000198d: MSTORE
0000198e: PUSH1 0x20
00001990: ADD
00001991: PUSH0
00001992: KECCAK256
00001993: SLOAD
00001994: GT
00001995: PUSH2 0x19d3
00001998: JUMPI
00001999: PUSH1 0x40
0000199b: MLOAD
0000199c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000019bd: DUP2
000019be: MSTORE
000019bf: PUSH1 0x04
000019c1: ADD
000019c2: PUSH2 0x19ca
000019c5: SWAP1
000019c6: PUSH2 0x3571
000019c9: JUMP
000019ca: JUMPDEST
000019cb: PUSH1 0x40
000019cd: MLOAD
000019ce: DUP1
000019cf: SWAP2
000019d0: SUB
000019d1: SWAP1
000019d2: REVERT
000019d3: JUMPDEST
000019d4: PUSH1 0x04
000019d6: SLOAD
000019d7: TIMESTAMP
000019d8: LT
000019d9: ISZERO
000019da: DUP1
000019db: PUSH2 0x19e6
000019de: JUMPI
000019df: POP
000019e0: PUSH1 0x03
000019e2: SLOAD
000019e3: TIMESTAMP
000019e4: GT
000019e5: ISZERO
000019e6: JUMPDEST
000019e7: PUSH2 0x1a25
000019ea: JUMPI
000019eb: PUSH1 0x40
000019ed: MLOAD
000019ee: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001a0f: DUP2
00001a10: MSTORE
00001a11: PUSH1 0x04
00001a13: ADD
00001a14: PUSH2 0x1a1c
00001a17: SWAP1
00001a18: PUSH2 0x35d9
00001a1b: JUMP
00001a1c: JUMPDEST
00001a1d: PUSH1 0x40
00001a1f: MLOAD
00001a20: DUP1
00001a21: SWAP2
00001a22: SUB
00001a23: SWAP1
00001a24: REVERT
00001a25: JUMPDEST
00001a26: PUSH1 0x07
00001a28: SLOAD
00001a29: PUSH1 0x0a
00001a2b: PUSH0
00001a2c: CALLER
00001a2d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a42: AND
00001a43: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a58: AND
00001a59: DUP2
00001a5a: MSTORE
00001a5b: PUSH1 0x20
00001a5d: ADD
00001a5e: SWAP1
00001a5f: DUP2
00001a60: MSTORE
00001a61: PUSH1 0x20
00001a63: ADD
00001a64: PUSH0
00001a65: KECCAK256
00001a66: SLOAD
00001a67: LT
00001a68: DUP1
00001a69: ISZERO
00001a6a: PUSH2 0x1a75
00001a6d: JUMPI
00001a6e: POP
00001a6f: PUSH1 0x04
00001a71: SLOAD
00001a72: TIMESTAMP
00001a73: LT
00001a74: ISZERO
00001a75: JUMPDEST
00001a76: ISZERO
00001a77: PUSH2 0x1afd
00001a7a: JUMPI
00001a7b: PUSH1 0x07
00001a7d: SLOAD
00001a7e: PUSH1 0x0a
00001a80: PUSH0
00001a81: CALLER
00001a82: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a97: AND
00001a98: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001aad: AND
00001aae: DUP2
00001aaf: MSTORE
00001ab0: PUSH1 0x20
00001ab2: ADD
00001ab3: SWAP1
00001ab4: DUP2
00001ab5: MSTORE
00001ab6: PUSH1 0x20
00001ab8: ADD
00001ab9: PUSH0
00001aba: KECCAK256
00001abb: SLOAD
00001abc: LT
00001abd: ISZERO
00001abe: PUSH2 0x1afc
00001ac1: JUMPI
00001ac2: PUSH1 0x40
00001ac4: MLOAD
00001ac5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001ae6: DUP2
00001ae7: MSTORE
00001ae8: PUSH1 0x04
00001aea: ADD
00001aeb: PUSH2 0x1af3
00001aee: SWAP1
00001aef: PUSH2 0x377b
00001af2: JUMP
00001af3: JUMPDEST
00001af4: PUSH1 0x40
00001af6: MLOAD
00001af7: DUP1
00001af8: SWAP2
00001af9: SUB
00001afa: SWAP1
00001afb: REVERT
00001afc: JUMPDEST
00001afd: JUMPDEST
00001afe: PUSH1 0x03
00001b00: SLOAD
00001b01: TIMESTAMP
00001b02: GT
00001b03: PUSH2 0x1b95
00001b06: JUMPI
00001b07: PUSH1 0x01
00001b09: PUSH1 0x07
00001b0b: SLOAD
00001b0c: PUSH2 0x1b15
00001b0f: SWAP2
00001b10: SWAP1
00001b11: PUSH2 0x3624
00001b14: JUMP
00001b15: JUMPDEST
00001b16: PUSH1 0x0a
00001b18: PUSH0
00001b19: CALLER
00001b1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b2f: AND
00001b30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b45: AND
00001b46: DUP2
00001b47: MSTORE
00001b48: PUSH1 0x20
00001b4a: ADD
00001b4b: SWAP1
00001b4c: DUP2
00001b4d: MSTORE
00001b4e: PUSH1 0x20
00001b50: ADD
00001b51: PUSH0
00001b52: KECCAK256
00001b53: SLOAD
00001b54: LT
00001b55: ISZERO
00001b56: PUSH2 0x1b94
00001b59: JUMPI
00001b5a: PUSH1 0x40
00001b5c: MLOAD
00001b5d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001b7e: DUP2
00001b7f: MSTORE
00001b80: PUSH1 0x04
00001b82: ADD
00001b83: PUSH2 0x1b8b
00001b86: SWAP1
00001b87: PUSH2 0x377b
00001b8a: JUMP
00001b8b: JUMPDEST
00001b8c: PUSH1 0x40
00001b8e: MLOAD
00001b8f: DUP1
00001b90: SWAP2
00001b91: SUB
00001b92: SWAP1
00001b93: REVERT
00001b94: JUMPDEST
00001b95: JUMPDEST
00001b96: PUSH2 0x1be7
00001b99: PUSH1 0x02
00001b9b: PUSH0
00001b9c: CALLER
00001b9d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bb2: AND
00001bb3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bc8: AND
00001bc9: DUP2
00001bca: MSTORE
00001bcb: PUSH1 0x20
00001bcd: ADD
00001bce: SWAP1
00001bcf: DUP2
00001bd0: MSTORE
00001bd1: PUSH1 0x20
00001bd3: ADD
00001bd4: PUSH0
00001bd5: KECCAK256
00001bd6: SLOAD
00001bd7: PUSH1 0x06
00001bd9: SLOAD
00001bda: PUSH2 0x2afd
00001bdd: SWAP1
00001bde: SWAP2
00001bdf: SWAP1
00001be0: PUSH4 0xffffffff
00001be5: AND
00001be6: JUMP
00001be7: JUMPDEST
00001be8: PUSH1 0x06
00001bea: DUP2
00001beb: SWAP1
00001bec: SSTORE
00001bed: POP
00001bee: PUSH0
00001bef: PUSH1 0x02
00001bf1: PUSH0
00001bf2: CALLER
00001bf3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c08: AND
00001c09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c1e: AND
00001c1f: DUP2
00001c20: MSTORE
00001c21: PUSH1 0x20
00001c23: ADD
00001c24: SWAP1
00001c25: DUP2
00001c26: MSTORE
00001c27: PUSH1 0x20
00001c29: ADD
00001c2a: PUSH0
00001c2b: KECCAK256
00001c2c: SLOAD
00001c2d: SWAP1
00001c2e: POP
00001c2f: PUSH0
00001c30: PUSH1 0x02
00001c32: PUSH0
00001c33: CALLER
00001c34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c49: AND
00001c4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c5f: AND
00001c60: DUP2
00001c61: MSTORE
00001c62: PUSH1 0x20
00001c64: ADD
00001c65: SWAP1
00001c66: DUP2
00001c67: MSTORE
00001c68: PUSH1 0x20
00001c6a: ADD
00001c6b: PUSH0
00001c6c: KECCAK256
00001c6d: DUP2
00001c6e: SWAP1
00001c6f: SSTORE
00001c70: POP
00001c71: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
00001c86: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c9b: AND
00001c9c: PUSH4 0xa9059cbb
00001ca1: CALLER
00001ca2: DUP4
00001ca3: PUSH1 0x40
00001ca5: MLOAD
00001ca6: DUP4
00001ca7: PUSH4 0xffffffff
00001cac: AND
00001cad: PUSH1 0xe0
00001caf: SHL
00001cb0: DUP2
00001cb1: MSTORE
00001cb2: PUSH1 0x04
00001cb4: ADD
00001cb5: PUSH2 0x1cbf
00001cb8: SWAP3
00001cb9: SWAP2
00001cba: SWAP1
00001cbb: PUSH2 0x3443
00001cbe: JUMP
00001cbf: JUMPDEST
00001cc0: PUSH1 0x20
00001cc2: PUSH1 0x40
00001cc4: MLOAD
00001cc5: DUP1
00001cc6: DUP4
00001cc7: SUB
00001cc8: DUP2
00001cc9: PUSH0
00001cca: DUP8
00001ccb: GAS
00001ccc: CALL
00001ccd: ISZERO
00001cce: DUP1
00001ccf: ISZERO
00001cd0: PUSH2 0x1cdb
00001cd3: JUMPI
00001cd4: RETURNDATASIZE
00001cd5: PUSH0
00001cd6: DUP1
00001cd7: RETURNDATACOPY
00001cd8: RETURNDATASIZE
00001cd9: PUSH0
00001cda: REVERT
00001cdb: JUMPDEST
00001cdc: POP
00001cdd: POP
00001cde: POP
00001cdf: POP
00001ce0: PUSH1 0x40
00001ce2: MLOAD
00001ce3: RETURNDATASIZE
00001ce4: PUSH1 0x1f
00001ce6: NOT
00001ce7: PUSH1 0x1f
00001ce9: DUP3
00001cea: ADD
00001ceb: AND
00001cec: DUP3
00001ced: ADD
00001cee: DUP1
00001cef: PUSH1 0x40
00001cf1: MSTORE
00001cf2: POP
00001cf3: DUP2
00001cf4: ADD
00001cf5: SWAP1
00001cf6: PUSH2 0x1cff
00001cf9: SWAP2
00001cfa: SWAP1
00001cfb: PUSH2 0x3494
00001cfe: JUMP
00001cff: JUMPDEST
00001d00: POP
00001d01: PUSH1 0x01
00001d03: PUSH1 0x08
00001d05: SLOAD
00001d06: PUSH2 0x1d0f
00001d09: SWAP2
00001d0a: SWAP1
00001d0b: PUSH2 0x3624
00001d0e: JUMP
00001d0f: JUMPDEST
00001d10: PUSH1 0x08
00001d12: DUP2
00001d13: SWAP1
00001d14: SSTORE
00001d15: POP
00001d16: PUSH32 0x7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5
00001d37: CALLER
00001d38: DUP3
00001d39: PUSH1 0x40
00001d3b: MLOAD
00001d3c: PUSH2 0x1d46
00001d3f: SWAP3
00001d40: SWAP2
00001d41: SWAP1
00001d42: PUSH2 0x3443
00001d45: JUMP
00001d46: JUMPDEST
00001d47: PUSH1 0x40
00001d49: MLOAD
00001d4a: DUP1
00001d4b: SWAP2
00001d4c: SUB
00001d4d: SWAP1
00001d4e: LOG1
00001d4f: POP
00001d50: JUMP
00001d51: JUMPDEST
00001d52: PUSH0
00001d53: DUP1
00001d54: PUSH0
00001d55: SWAP1
00001d56: SLOAD
00001d57: SWAP1
00001d58: PUSH2 0x0100
00001d5b: EXP
00001d5c: SWAP1
00001d5d: DIV
00001d5e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d73: AND
00001d74: SWAP1
00001d75: POP
00001d76: SWAP1
00001d77: JUMP
00001d78: JUMPDEST
00001d79: PUSH1 0x05
00001d7b: SLOAD
00001d7c: DUP2
00001d7d: JUMP
00001d7e: JUMPDEST
00001d7f: PUSH2 0x1d86
00001d82: PUSH2 0x2992
00001d85: JUMP
00001d86: JUMPDEST
00001d87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d9c: AND
00001d9d: PUSH2 0x1da4
00001da0: PUSH2 0x1d51
00001da3: JUMP
00001da4: JUMPDEST
00001da5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001dba: AND
00001dbb: EQ
00001dbc: PUSH2 0x1dfa
00001dbf: JUMPI
00001dc0: PUSH1 0x40
00001dc2: MLOAD
00001dc3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001de4: DUP2
00001de5: MSTORE
00001de6: PUSH1 0x04
00001de8: ADD
00001de9: PUSH2 0x1df1
00001dec: SWAP1
00001ded: PUSH2 0x3396
00001df0: JUMP
00001df1: JUMPDEST
00001df2: PUSH1 0x40
00001df4: MLOAD
00001df5: DUP1
00001df6: SWAP2
00001df7: SUB
00001df8: SWAP1
00001df9: REVERT
00001dfa: JUMPDEST
00001dfb: DUP2
00001dfc: PUSH1 0x03
00001dfe: DUP2
00001dff: SWAP1
00001e00: SSTORE
00001e01: POP
00001e02: DUP1
00001e03: PUSH1 0x04
00001e05: DUP2
00001e06: SWAP1
00001e07: SSTORE
00001e08: POP
00001e09: POP
00001e0a: POP
00001e0b: JUMP
00001e0c: JUMPDEST
00001e0d: PUSH1 0x10
00001e0f: PUSH1 0x20
00001e11: MSTORE
00001e12: DUP1
00001e13: PUSH0
00001e14: MSTORE
00001e15: PUSH1 0x40
00001e17: PUSH0
00001e18: KECCAK256
00001e19: PUSH0
00001e1a: SWAP2
00001e1b: POP
00001e1c: SWAP1
00001e1d: POP
00001e1e: DUP1
00001e1f: PUSH0
00001e20: ADD
00001e21: SLOAD
00001e22: SWAP1
00001e23: DUP1
00001e24: PUSH1 0x01
00001e26: ADD
00001e27: SLOAD
00001e28: SWAP1
00001e29: DUP1
00001e2a: PUSH1 0x02
00001e2c: ADD
00001e2d: SLOAD
00001e2e: SWAP1
00001e2f: DUP1
00001e30: PUSH1 0x03
00001e32: ADD
00001e33: PUSH0
00001e34: SWAP1
00001e35: SLOAD
00001e36: SWAP1
00001e37: PUSH2 0x0100
00001e3a: EXP
00001e3b: SWAP1
00001e3c: DIV
00001e3d: PUSH1 0xff
00001e3f: AND
00001e40: SWAP1
00001e41: POP
00001e42: DUP5
00001e43: JUMP
00001e44: JUMPDEST
00001e45: PUSH1 0x08
00001e47: SLOAD
00001e48: DUP2
00001e49: JUMP
00001e4a: JUMPDEST
00001e4b: PUSH1 0x0d
00001e4d: PUSH0
00001e4e: SWAP1
00001e4f: SLOAD
00001e50: SWAP1
00001e51: PUSH2 0x0100
00001e54: EXP
00001e55: SWAP1
00001e56: DIV
00001e57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e6c: AND
00001e6d: DUP2
00001e6e: JUMP
00001e6f: JUMPDEST
00001e70: PUSH1 0x0b
00001e72: PUSH1 0x20
00001e74: MSTORE
00001e75: DUP1
00001e76: PUSH0
00001e77: MSTORE
00001e78: PUSH1 0x40
00001e7a: PUSH0
00001e7b: KECCAK256
00001e7c: PUSH0
00001e7d: SWAP2
00001e7e: POP
00001e7f: SWAP1
00001e80: POP
00001e81: SLOAD
00001e82: DUP2
00001e83: JUMP
00001e84: JUMPDEST
00001e85: PUSH2 0x1e8c
00001e88: PUSH2 0x2cc7
00001e8b: JUMP
00001e8c: JUMPDEST
00001e8d: PUSH1 0x03
00001e8f: SLOAD
00001e90: TIMESTAMP
00001e91: GT
00001e92: ISZERO
00001e93: PUSH2 0x1ed1
00001e96: JUMPI
00001e97: PUSH1 0x40
00001e99: MLOAD
00001e9a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001ebb: DUP2
00001ebc: MSTORE
00001ebd: PUSH1 0x04
00001ebf: ADD
00001ec0: PUSH2 0x1ec8
00001ec3: SWAP1
00001ec4: PUSH2 0x37e3
00001ec7: JUMP
00001ec8: JUMPDEST
00001ec9: PUSH1 0x40
00001ecb: MLOAD
00001ecc: DUP1
00001ecd: SWAP2
00001ece: SUB
00001ecf: SWAP1
00001ed0: REVERT
00001ed1: JUMPDEST
00001ed2: PUSH1 0x0f
00001ed4: SLOAD
00001ed5: DUP2
00001ed6: PUSH1 0x06
00001ed8: SLOAD
00001ed9: PUSH2 0x1ee2
00001edc: SWAP2
00001edd: SWAP1
00001ede: PUSH2 0x3657
00001ee1: JUMP
00001ee2: JUMPDEST
00001ee3: GT
00001ee4: ISZERO
00001ee5: PUSH2 0x1f23
00001ee8: JUMPI
00001ee9: PUSH1 0x40
00001eeb: MLOAD
00001eec: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001f0d: DUP2
00001f0e: MSTORE
00001f0f: PUSH1 0x04
00001f11: ADD
00001f12: PUSH2 0x1f1a
00001f15: SWAP1
00001f16: PUSH2 0x384b
00001f19: JUMP
00001f1a: JUMPDEST
00001f1b: PUSH1 0x40
00001f1d: MLOAD
00001f1e: DUP1
00001f1f: SWAP2
00001f20: SUB
00001f21: SWAP1
00001f22: REVERT
00001f23: JUMPDEST
00001f24: PUSH1 0x0e
00001f26: SLOAD
00001f27: DUP2
00001f28: PUSH1 0x02
00001f2a: PUSH0
00001f2b: CALLER
00001f2c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f41: AND
00001f42: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f57: AND
00001f58: DUP2
00001f59: MSTORE
00001f5a: PUSH1 0x20
00001f5c: ADD
00001f5d: SWAP1
00001f5e: DUP2
00001f5f: MSTORE
00001f60: PUSH1 0x20
00001f62: ADD
00001f63: PUSH0
00001f64: KECCAK256
00001f65: SLOAD
00001f66: PUSH2 0x1f6f
00001f69: SWAP2
00001f6a: SWAP1
00001f6b: PUSH2 0x3657
00001f6e: JUMP
00001f6f: JUMPDEST
00001f70: GT
00001f71: ISZERO
00001f72: PUSH2 0x1fb0
00001f75: JUMPI
00001f76: PUSH1 0x40
00001f78: MLOAD
00001f79: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001f9a: DUP2
00001f9b: MSTORE
00001f9c: PUSH1 0x04
00001f9e: ADD
00001f9f: PUSH2 0x1fa7
00001fa2: SWAP1
00001fa3: PUSH2 0x38b3
00001fa6: JUMP
00001fa7: JUMPDEST
00001fa8: PUSH1 0x40
00001faa: MLOAD
00001fab: DUP1
00001fac: SWAP2
00001fad: SUB
00001fae: SWAP1
00001faf: REVERT
00001fb0: JUMPDEST
00001fb1: PUSH1 0x01
00001fb3: PUSH1 0x07
00001fb5: SLOAD
00001fb6: PUSH2 0x1fbf
00001fb9: SWAP2
00001fba: SWAP1
00001fbb: PUSH2 0x3624
00001fbe: JUMP
00001fbf: JUMPDEST
00001fc0: PUSH1 0x0a
00001fc2: PUSH0
00001fc3: CALLER
00001fc4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fd9: AND
00001fda: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fef: AND
00001ff0: DUP2
00001ff1: MSTORE
00001ff2: PUSH1 0x20
00001ff4: ADD
00001ff5: SWAP1
00001ff6: DUP2
00001ff7: MSTORE
00001ff8: PUSH1 0x20
00001ffa: ADD
00001ffb: PUSH0
00001ffc: KECCAK256
00001ffd: SLOAD
00001ffe: LT
00001fff: DUP1
00002000: ISZERO
00002001: PUSH2 0x2046
00002004: JUMPI
00002005: POP
00002006: PUSH0
00002007: PUSH1 0x02
00002009: PUSH0
0000200a: CALLER
0000200b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002020: AND
00002021: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002036: AND
00002037: DUP2
00002038: MSTORE
00002039: PUSH1 0x20
0000203b: ADD
0000203c: SWAP1
0000203d: DUP2
0000203e: MSTORE
0000203f: PUSH1 0x20
00002041: ADD
00002042: PUSH0
00002043: KECCAK256
00002044: SLOAD
00002045: GT
00002046: JUMPDEST
00002047: ISZERO
00002048: PUSH2 0x2055
0000204b: JUMPI
0000204c: PUSH2 0x2054
0000204f: CALLER
00002050: PUSH2 0x2d0d
00002053: JUMP
00002054: JUMPDEST
00002055: JUMPDEST
00002056: PUSH1 0x01
00002058: PUSH1 0x07
0000205a: SLOAD
0000205b: PUSH2 0x2064
0000205e: SWAP2
0000205f: SWAP1
00002060: PUSH2 0x3624
00002063: JUMP
00002064: JUMPDEST
00002065: PUSH1 0x0a
00002067: PUSH0
00002068: CALLER
00002069: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000207e: AND
0000207f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002094: AND
00002095: DUP2
00002096: MSTORE
00002097: PUSH1 0x20
00002099: ADD
0000209a: SWAP1
0000209b: DUP2
0000209c: MSTORE
0000209d: PUSH1 0x20
0000209f: ADD
000020a0: PUSH0
000020a1: KECCAK256
000020a2: DUP2
000020a3: SWAP1
000020a4: SSTORE
000020a5: POP
000020a6: PUSH20 0x292fcdd1b104de5a00250febba9bc6a5092a0076
000020bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020d0: AND
000020d1: PUSH4 0x23b872dd
000020d6: CALLER
000020d7: ADDRESS
000020d8: DUP5
000020d9: PUSH1 0x40
000020db: MLOAD
000020dc: DUP5
000020dd: PUSH4 0xffffffff
000020e2: AND
000020e3: PUSH1 0xe0
000020e5: SHL
000020e6: DUP2
000020e7: MSTORE
000020e8: PUSH1 0x04
000020ea: ADD
000020eb: PUSH2 0x20f6
000020ee: SWAP4
000020ef: SWAP3
000020f0: SWAP2
000020f1: SWAP1
000020f2: PUSH2 0x38d1
000020f5: JUMP
000020f6: JUMPDEST
000020f7: PUSH1 0x20
000020f9: PUSH1 0x40
000020fb: MLOAD
000020fc: DUP1
000020fd: DUP4
000020fe: SUB
000020ff: DUP2
00002100: PUSH0
00002101: DUP8
00002102: GAS
00002103: CALL
00002104: ISZERO
00002105: DUP1
00002106: ISZERO
00002107: PUSH2 0x2112
0000210a: JUMPI
0000210b: RETURNDATASIZE
0000210c: PUSH0
0000210d: DUP1
0000210e: RETURNDATACOPY
0000210f: RETURNDATASIZE
00002110: PUSH0
00002111: REVERT
00002112: JUMPDEST
00002113: POP
00002114: POP
00002115: POP
00002116: POP
00002117: PUSH1 0x40
00002119: MLOAD
0000211a: RETURNDATASIZE
0000211b: PUSH1 0x1f
0000211d: NOT
0000211e: PUSH1 0x1f
00002120: DUP3
00002121: ADD
00002122: AND
00002123: DUP3
00002124: ADD
00002125: DUP1
00002126: PUSH1 0x40
00002128: MSTORE
00002129: POP
0000212a: DUP2
0000212b: ADD
0000212c: SWAP1
0000212d: PUSH2 0x2136
00002130: SWAP2
00002131: SWAP1
00002132: PUSH2 0x3494
00002135: JUMP
00002136: JUMPDEST
00002137: POP
00002138: PUSH0
00002139: PUSH1 0x02
0000213b: PUSH0
0000213c: CALLER
0000213d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002152: AND
00002153: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002168: AND
00002169: DUP2
0000216a: MSTORE
0000216b: PUSH1 0x20
0000216d: ADD
0000216e: SWAP1
0000216f: DUP2
00002170: MSTORE
00002171: PUSH1 0x20
00002173: ADD
00002174: PUSH0
00002175: KECCAK256
00002176: SLOAD
00002177: SUB
00002178: PUSH2 0x21a6
0000217b: JUMPI
0000217c: PUSH1 0x01
0000217e: PUSH1 0x08
00002180: SLOAD
00002181: PUSH2 0x218a
00002184: SWAP2
00002185: SWAP1
00002186: PUSH2 0x3657
00002189: JUMP
0000218a: JUMPDEST
0000218b: PUSH1 0x08
0000218d: DUP2
0000218e: SWAP1
0000218f: SSTORE
00002190: POP
00002191: PUSH1 0x01
00002193: PUSH1 0x09
00002195: SLOAD
00002196: PUSH2 0x219f
00002199: SWAP2
0000219a: SWAP1
0000219b: PUSH2 0x3657
0000219e: JUMP
0000219f: JUMPDEST
000021a0: PUSH1 0x09
000021a2: DUP2
000021a3: SWAP1
000021a4: SSTORE
000021a5: POP
000021a6: JUMPDEST
000021a7: PUSH2 0x21f6
000021aa: DUP2
000021ab: PUSH1 0x02
000021ad: PUSH0
000021ae: CALLER
000021af: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021c4: AND
000021c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021da: AND
000021db: DUP2
000021dc: MSTORE
000021dd: PUSH1 0x20
000021df: ADD
000021e0: SWAP1
000021e1: DUP2
000021e2: MSTORE
000021e3: PUSH1 0x20
000021e5: ADD
000021e6: PUSH0
000021e7: KECCAK256
000021e8: SLOAD
000021e9: PUSH2 0x2999
000021ec: SWAP1
000021ed: SWAP2
000021ee: SWAP1
000021ef: PUSH4 0xffffffff
000021f4: AND
000021f5: JUMP
000021f6: JUMPDEST
000021f7: PUSH1 0x02
000021f9: PUSH0
000021fa: CALLER
000021fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002210: AND
00002211: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002226: AND
00002227: DUP2
00002228: MSTORE
00002229: PUSH1 0x20
0000222b: ADD
0000222c: SWAP1
0000222d: DUP2
0000222e: MSTORE
0000222f: PUSH1 0x20
00002231: ADD
00002232: PUSH0
00002233: KECCAK256
00002234: DUP2
00002235: SWAP1
00002236: SSTORE
00002237: POP
00002238: PUSH2 0x224c
0000223b: DUP2
0000223c: PUSH1 0x06
0000223e: SLOAD
0000223f: PUSH2 0x2999
00002242: SWAP1
00002243: SWAP2
00002244: SWAP1
00002245: PUSH4 0xffffffff
0000224a: AND
0000224b: JUMP
0000224c: JUMPDEST
0000224d: PUSH1 0x06
0000224f: DUP2
00002250: SWAP1
00002251: SSTORE
00002252: POP
00002253: PUSH32 0x2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4
00002274: CALLER
00002275: DUP3
00002276: PUSH1 0x40
00002278: MLOAD
00002279: PUSH2 0x2283
0000227c: SWAP3
0000227d: SWAP2
0000227e: SWAP1
0000227f: PUSH2 0x3443
00002282: JUMP
00002283: JUMPDEST
00002284: PUSH1 0x40
00002286: MLOAD
00002287: DUP1
00002288: SWAP2
00002289: SUB
0000228a: SWAP1
0000228b: LOG1
0000228c: PUSH2 0x2293
0000228f: PUSH2 0x2ffe
00002292: JUMP
00002293: JUMPDEST
00002294: POP
00002295: JUMP
00002296: JUMPDEST
00002297: PUSH2 0x229e
0000229a: PUSH2 0x2cc7
0000229d: JUMP
0000229e: JUMPDEST
0000229f: PUSH1 0x04
000022a1: SLOAD
000022a2: TIMESTAMP
000022a3: LT
000022a4: ISZERO
000022a5: PUSH2 0x22e3
000022a8: JUMPI
000022a9: PUSH1 0x40
000022ab: MLOAD
000022ac: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000022cd: DUP2
000022ce: MSTORE
000022cf: PUSH1 0x04
000022d1: ADD
000022d2: PUSH2 0x22da
000022d5: SWAP1
000022d6: PUSH2 0x3950
000022d9: JUMP
000022da: JUMPDEST
000022db: PUSH1 0x40
000022dd: MLOAD
000022de: DUP1
000022df: SWAP2
000022e0: SUB
000022e1: SWAP1
000022e2: REVERT
000022e3: JUMPDEST
000022e4: PUSH0
000022e5: PUSH1 0x02
000022e7: PUSH0
000022e8: CALLER
000022e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000022fe: AND
000022ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002314: AND
00002315: DUP2
00002316: MSTORE
00002317: PUSH1 0x20
00002319: ADD
0000231a: SWAP1
0000231b: DUP2
0000231c: MSTORE
0000231d: PUSH1 0x20
0000231f: ADD
00002320: PUSH0
00002321: KECCAK256
00002322: SLOAD
00002323: GT
00002324: PUSH2 0x2362
00002327: JUMPI
00002328: PUSH1 0x40
0000232a: MLOAD
0000232b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000234c: DUP2
0000234d: MSTORE
0000234e: PUSH1 0x04
00002350: ADD
00002351: PUSH2 0x2359
00002354: SWAP1
00002355: PUSH2 0x3571
00002358: JUMP
00002359: JUMPDEST
0000235a: PUSH1 0x40
0000235c: MLOAD
0000235d: DUP1
0000235e: SWAP2
0000235f: SUB
00002360: SWAP1
00002361: REVERT
00002362: JUMPDEST
00002363: PUSH1 0x07
00002365: SLOAD
00002366: PUSH1 0x0a
00002368: PUSH0
00002369: CALLER
0000236a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000237f: AND
00002380: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002395: AND
00002396: DUP2
00002397: MSTORE
00002398: PUSH1 0x20
0000239a: ADD
0000239b: SWAP1
0000239c: DUP2
0000239d: MSTORE
0000239e: PUSH1 0x20
000023a0: ADD
000023a1: PUSH0
000023a2: KECCAK256
000023a3: SLOAD
000023a4: LT
000023a5: PUSH2 0x23e3
000023a8: JUMPI
000023a9: PUSH1 0x40
000023ab: MLOAD
000023ac: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000023cd: DUP2
000023ce: MSTORE
000023cf: PUSH1 0x04
000023d1: ADD
000023d2: PUSH2 0x23da
000023d5: SWAP1
000023d6: PUSH2 0x39b8
000023d9: JUMP
000023da: JUMPDEST
000023db: PUSH1 0x40
000023dd: MLOAD
000023de: DUP1
000023df: SWAP2
000023e0: SUB
000023e1: SWAP1
000023e2: REVERT
000023e3: JUMPDEST
000023e4: PUSH1 0x10
000023e6: PUSH0
000023e7: PUSH1 0x07
000023e9: SLOAD
000023ea: DUP2
000023eb: MSTORE
000023ec: PUSH1 0x20
000023ee: ADD
000023ef: SWAP1
000023f0: DUP2
000023f1: MSTORE
000023f2: PUSH1 0x20
000023f4: ADD
000023f5: PUSH0
000023f6: KECCAK256
000023f7: PUSH1 0x03
000023f9: ADD
000023fa: PUSH0
000023fb: SWAP1
000023fc: SLOAD
000023fd: SWAP1
000023fe: PUSH2 0x0100
00002401: EXP
00002402: SWAP1
00002403: DIV
00002404: PUSH1 0xff
00002406: AND
00002407: PUSH2 0x2413
0000240a: JUMPI
0000240b: PUSH2 0x2412
0000240e: PUSH2 0x29f6
00002411: JUMP
00002412: JUMPDEST
00002413: JUMPDEST
00002414: PUSH0
00002415: DUP1
00002416: PUSH1 0x01
00002418: PUSH1 0x0a
0000241a: PUSH0
0000241b: CALLER
0000241c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002431: AND
00002432: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002447: AND
00002448: DUP2
00002449: MSTORE
0000244a: PUSH1 0x20
0000244c: ADD
0000244d: SWAP1
0000244e: DUP2
0000244f: MSTORE
00002450: PUSH1 0x20
00002452: ADD
00002453: PUSH0
00002454: KECCAK256
00002455: SLOAD
00002456: PUSH2 0x245f
00002459: SWAP2
0000245a: SWAP1
0000245b: PUSH2 0x3657
0000245e: JUMP
0000245f: JUMPDEST
00002460: SWAP1
00002461: POP
00002462: JUMPDEST
00002463: PUSH1 0x01
00002465: PUSH1 0x07
00002467: SLOAD
00002468: PUSH2 0x2471
0000246b: SWAP2
0000246c: SWAP1
0000246d: PUSH2 0x3657
00002470: JUMP
00002471: JUMPDEST
00002472: DUP2
00002473: LT
00002474: ISZERO
00002475: PUSH2 0x2528
00002478: JUMPI
00002479: PUSH0
0000247a: PUSH2 0x2503
0000247d: PUSH1 0x10
0000247f: PUSH0
00002480: DUP5
00002481: DUP2
00002482: MSTORE
00002483: PUSH1 0x20
00002485: ADD
00002486: SWAP1
00002487: DUP2
00002488: MSTORE
00002489: PUSH1 0x20
0000248b: ADD
0000248c: PUSH0
0000248d: KECCAK256
0000248e: PUSH1 0x01
00002490: ADD
00002491: SLOAD
00002492: PUSH2 0x24f5
00002495: PUSH1 0x02
00002497: PUSH0
00002498: CALLER
00002499: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024ae: AND
000024af: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024c4: AND
000024c5: DUP2
000024c6: MSTORE
000024c7: PUSH1 0x20
000024c9: ADD
000024ca: SWAP1
000024cb: DUP2
000024cc: MSTORE
000024cd: PUSH1 0x20
000024cf: ADD
000024d0: PUSH0
000024d1: KECCAK256
000024d2: SLOAD
000024d3: PUSH1 0x10
000024d5: PUSH0
000024d6: DUP8
000024d7: DUP2
000024d8: MSTORE
000024d9: PUSH1 0x20
000024db: ADD
000024dc: SWAP1
000024dd: DUP2
000024de: MSTORE
000024df: PUSH1 0x20
000024e1: ADD
000024e2: PUSH0
000024e3: KECCAK256
000024e4: PUSH1 0x02
000024e6: ADD
000024e7: SLOAD
000024e8: PUSH2 0x2b46
000024eb: SWAP1
000024ec: SWAP2
000024ed: SWAP1
000024ee: PUSH4 0xffffffff
000024f3: AND
000024f4: JUMP
000024f5: JUMPDEST
000024f6: PUSH2 0x2bbd
000024f9: SWAP1
000024fa: SWAP2
000024fb: SWAP1
000024fc: PUSH4 0xffffffff
00002501: AND
00002502: JUMP
00002503: JUMPDEST
00002504: SWAP1
00002505: POP
00002506: PUSH2 0x2518
00002509: DUP2
0000250a: DUP5
0000250b: PUSH2 0x2999
0000250e: SWAP1
0000250f: SWAP2
00002510: SWAP1
00002511: PUSH4 0xffffffff
00002516: AND
00002517: JUMP
00002518: JUMPDEST
00002519: SWAP3
0000251a: POP
0000251b: POP
0000251c: DUP1
0000251d: DUP1
0000251e: PUSH1 0x01
00002520: ADD
00002521: SWAP2
00002522: POP
00002523: POP
00002524: PUSH2 0x2462
00002527: JUMP
00002528: JUMPDEST
00002529: POP
0000252a: PUSH1 0x07
0000252c: SLOAD
0000252d: PUSH1 0x0a
0000252f: PUSH0
00002530: CALLER
00002531: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002546: AND
00002547: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000255c: AND
0000255d: DUP2
0000255e: MSTORE
0000255f: PUSH1 0x20
00002561: ADD
00002562: SWAP1
00002563: DUP2
00002564: MSTORE
00002565: PUSH1 0x20
00002567: ADD
00002568: PUSH0
00002569: KECCAK256
0000256a: DUP2
0000256b: SWAP1
0000256c: SSTORE
0000256d: POP
0000256e: PUSH2 0x2582
00002571: DUP2
00002572: PUSH1 0x05
00002574: SLOAD
00002575: PUSH2 0x2999
00002578: SWAP1
00002579: SWAP2
0000257a: SWAP1
0000257b: PUSH4 0xffffffff
00002580: AND
00002581: JUMP
00002582: JUMPDEST
00002583: PUSH1 0x05
00002585: DUP2
00002586: SWAP1
00002587: SSTORE
00002588: POP
00002589: PUSH2 0x25d8
0000258c: DUP2
0000258d: PUSH1 0x0b
0000258f: PUSH0
00002590: CALLER
00002591: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025a6: AND
000025a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025bc: AND
000025bd: DUP2
000025be: MSTORE
000025bf: PUSH1 0x20
000025c1: ADD
000025c2: SWAP1
000025c3: DUP2
000025c4: MSTORE
000025c5: PUSH1 0x20
000025c7: ADD
000025c8: PUSH0
000025c9: KECCAK256
000025ca: SLOAD
000025cb: PUSH2 0x2999
000025ce: SWAP1
000025cf: SWAP2
000025d0: SWAP1
000025d1: PUSH4 0xffffffff
000025d6: AND
000025d7: JUMP
000025d8: JUMPDEST
000025d9: PUSH1 0x0b
000025db: PUSH0
000025dc: CALLER
000025dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025f2: AND
000025f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002608: AND
00002609: DUP2
0000260a: MSTORE
0000260b: PUSH1 0x20
0000260d: ADD
0000260e: SWAP1
0000260f: DUP2
00002610: MSTORE
00002611: PUSH1 0x20
00002613: ADD
00002614: PUSH0
00002615: KECCAK256
00002616: DUP2
00002617: SWAP1
00002618: SSTORE
00002619: POP
0000261a: PUSH0
0000261b: CALLER
0000261c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002631: AND
00002632: DUP3
00002633: PUSH2 0x7530
00002636: SWAP1
00002637: PUSH1 0x40
00002639: MLOAD
0000263a: PUSH2 0x2642
0000263d: SWAP1
0000263e: PUSH2 0x3a03
00002641: JUMP
00002642: JUMPDEST
00002643: PUSH0
00002644: PUSH1 0x40
00002646: MLOAD
00002647: DUP1
00002648: DUP4
00002649: SUB
0000264a: DUP2
0000264b: DUP6
0000264c: DUP9
0000264d: DUP9
0000264e: CALL
0000264f: SWAP4
00002650: POP
00002651: POP
00002652: POP
00002653: POP
00002654: RETURNDATASIZE
00002655: DUP1
00002656: PUSH0
00002657: DUP2
00002658: EQ
00002659: PUSH2 0x267d
0000265c: JUMPI
0000265d: PUSH1 0x40
0000265f: MLOAD
00002660: SWAP2
00002661: POP
00002662: PUSH1 0x1f
00002664: NOT
00002665: PUSH1 0x3f
00002667: RETURNDATASIZE
00002668: ADD
00002669: AND
0000266a: DUP3
0000266b: ADD
0000266c: PUSH1 0x40
0000266e: MSTORE
0000266f: RETURNDATASIZE
00002670: DUP3
00002671: MSTORE
00002672: RETURNDATASIZE
00002673: PUSH0
00002674: PUSH1 0x20
00002676: DUP5
00002677: ADD
00002678: RETURNDATACOPY
00002679: PUSH2 0x2682
0000267c: JUMP
0000267d: JUMPDEST
0000267e: PUSH1 0x60
00002680: SWAP2
00002681: POP
00002682: JUMPDEST
00002683: POP
00002684: POP
00002685: SWAP1
00002686: POP
00002687: DUP1
00002688: PUSH2 0x26c6
0000268b: JUMPI
0000268c: PUSH1 0x40
0000268e: MLOAD
0000268f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000026b0: DUP2
000026b1: MSTORE
000026b2: PUSH1 0x04
000026b4: ADD
000026b5: PUSH2 0x26bd
000026b8: SWAP1
000026b9: PUSH2 0x3a61
000026bc: JUMP
000026bd: JUMPDEST
000026be: PUSH1 0x40
000026c0: MLOAD
000026c1: DUP1
000026c2: SWAP2
000026c3: SUB
000026c4: SWAP1
000026c5: REVERT
000026c6: JUMPDEST
000026c7: PUSH32 0xd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a
000026e8: CALLER
000026e9: DUP4
000026ea: PUSH1 0x40
000026ec: MLOAD
000026ed: PUSH2 0x26f7
000026f0: SWAP3
000026f1: SWAP2
000026f2: SWAP1
000026f3: PUSH2 0x3443
000026f6: JUMP
000026f7: JUMPDEST
000026f8: PUSH1 0x40
000026fa: MLOAD
000026fb: DUP1
000026fc: SWAP2
000026fd: SUB
000026fe: SWAP1
000026ff: LOG1
00002700: POP
00002701: POP
00002702: PUSH2 0x2709
00002705: PUSH2 0x2ffe
00002708: JUMP
00002709: JUMPDEST
0000270a: JUMP
0000270b: JUMPDEST
0000270c: PUSH1 0x0f
0000270e: SLOAD
0000270f: DUP2
00002710: JUMP
00002711: JUMPDEST
00002712: PUSH2 0x2719
00002715: PUSH2 0x2992
00002718: JUMP
00002719: JUMPDEST
0000271a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000272f: AND
00002730: PUSH2 0x2737
00002733: PUSH2 0x1d51
00002736: JUMP
00002737: JUMPDEST
00002738: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000274d: AND
0000274e: EQ
0000274f: PUSH2 0x278d
00002752: JUMPI
00002753: PUSH1 0x40
00002755: MLOAD
00002756: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002777: DUP2
00002778: MSTORE
00002779: PUSH1 0x04
0000277b: ADD
0000277c: PUSH2 0x2784
0000277f: SWAP1
00002780: PUSH2 0x3396
00002783: JUMP
00002784: JUMPDEST
00002785: PUSH1 0x40
00002787: MLOAD
00002788: DUP1
00002789: SWAP2
0000278a: SUB
0000278b: SWAP1
0000278c: REVERT
0000278d: JUMPDEST
0000278e: PUSH0
0000278f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027a4: AND
000027a5: DUP2
000027a6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027bb: AND
000027bc: SUB
000027bd: PUSH2 0x27fb
000027c0: JUMPI
000027c1: PUSH1 0x40
000027c3: MLOAD
000027c4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000027e5: DUP2
000027e6: MSTORE
000027e7: PUSH1 0x04
000027e9: ADD
000027ea: PUSH2 0x27f2
000027ed: SWAP1
000027ee: PUSH2 0x3ac9
000027f1: JUMP
000027f2: JUMPDEST
000027f3: PUSH1 0x40
000027f5: MLOAD
000027f6: DUP1
000027f7: SWAP2
000027f8: SUB
000027f9: SWAP1
000027fa: REVERT
000027fb: JUMPDEST
000027fc: DUP1
000027fd: PUSH1 0x0d
000027ff: PUSH0
00002800: PUSH2 0x0100
00002803: EXP
00002804: DUP2
00002805: SLOAD
00002806: DUP2
00002807: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000281c: MUL
0000281d: NOT
0000281e: AND
0000281f: SWAP1
00002820: DUP4
00002821: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002836: AND
00002837: MUL
00002838: OR
00002839: SWAP1
0000283a: SSTORE
0000283b: POP
0000283c: PUSH32 0xb4280c2c6d34a766a6e479b994060c3b1390228520ecfccc63ce21cd32ebbc64
0000285d: PUSH1 0x0d
0000285f: PUSH0
00002860: SWAP1
00002861: SLOAD
00002862: SWAP1
00002863: PUSH2 0x0100
00002866: EXP
00002867: SWAP1
00002868: DIV
00002869: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000287e: AND
0000287f: PUSH1 0x40
00002881: MLOAD
00002882: PUSH2 0x288b
00002885: SWAP2
00002886: SWAP1
00002887: PUSH2 0x3323
0000288a: JUMP
0000288b: JUMPDEST
0000288c: PUSH1 0x40
0000288e: MLOAD
0000288f: DUP1
00002890: SWAP2
00002891: SUB
00002892: SWAP1
00002893: LOG1
00002894: POP
00002895: JUMP
00002896: JUMPDEST
00002897: PUSH2 0x289e
0000289a: PUSH2 0x2992
0000289d: JUMP
0000289e: JUMPDEST
0000289f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000028b4: AND
000028b5: PUSH2 0x28bc
000028b8: PUSH2 0x1d51
000028bb: JUMP
000028bc: JUMPDEST
000028bd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000028d2: AND
000028d3: EQ
000028d4: PUSH2 0x2912
000028d7: JUMPI
000028d8: PUSH1 0x40
000028da: MLOAD
000028db: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000028fc: DUP2
000028fd: MSTORE
000028fe: PUSH1 0x04
00002900: ADD
00002901: PUSH2 0x2909
00002904: SWAP1
00002905: PUSH2 0x3396
00002908: JUMP
00002909: JUMPDEST
0000290a: PUSH1 0x40
0000290c: MLOAD
0000290d: DUP1
0000290e: SWAP2
0000290f: SUB
00002910: SWAP1
00002911: REVERT
00002912: JUMPDEST
00002913: PUSH0
00002914: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002929: AND
0000292a: DUP2
0000292b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002940: AND
00002941: SUB
00002942: PUSH2 0x2980
00002945: JUMPI
00002946: PUSH1 0x40
00002948: MLOAD
00002949: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000296a: DUP2
0000296b: MSTORE
0000296c: PUSH1 0x04
0000296e: ADD
0000296f: PUSH2 0x2977
00002972: SWAP1
00002973: PUSH2 0x3b57
00002976: JUMP
00002977: JUMPDEST
00002978: PUSH1 0x40
0000297a: MLOAD
0000297b: DUP1
0000297c: SWAP2
0000297d: SUB
0000297e: SWAP1
0000297f: REVERT
00002980: JUMPDEST
00002981: PUSH2 0x2989
00002984: DUP2
00002985: PUSH2 0x2c06
00002988: JUMP
00002989: JUMPDEST
0000298a: POP
0000298b: JUMP
0000298c: JUMPDEST
0000298d: PUSH1 0x03
0000298f: SLOAD
00002990: DUP2
00002991: JUMP
00002992: JUMPDEST
00002993: PUSH0
00002994: CALLER
00002995: SWAP1
00002996: POP
00002997: SWAP1
00002998: JUMP
00002999: JUMPDEST
0000299a: PUSH0
0000299b: DUP1
0000299c: DUP3
0000299d: DUP5
0000299e: PUSH2 0x29a7
000029a1: SWAP2
000029a2: SWAP1
000029a3: PUSH2 0x3657
000029a6: JUMP
000029a7: JUMPDEST
000029a8: SWAP1
000029a9: POP
000029aa: DUP4
000029ab: DUP2
000029ac: LT
000029ad: ISZERO
000029ae: PUSH2 0x29ec
000029b1: JUMPI
000029b2: PUSH1 0x40
000029b4: MLOAD
000029b5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000029d6: DUP2
000029d7: MSTORE
000029d8: PUSH1 0x04
000029da: ADD
000029db: PUSH2 0x29e3
000029de: SWAP1
000029df: PUSH2 0x3bbf
000029e2: JUMP
000029e3: JUMPDEST
000029e4: PUSH1 0x40
000029e6: MLOAD
000029e7: DUP1
000029e8: SWAP2
000029e9: SUB
000029ea: SWAP1
000029eb: REVERT
000029ec: JUMPDEST
000029ed: DUP1
000029ee: SWAP2
000029ef: POP
000029f0: POP
000029f1: SWAP3
000029f2: SWAP2
000029f3: POP
000029f4: POP
000029f5: JUMP
000029f6: JUMPDEST
000029f7: PUSH1 0x06
000029f9: SLOAD
000029fa: PUSH1 0x10
000029fc: PUSH0
000029fd: PUSH1 0x07
000029ff: SLOAD
00002a00: DUP2
00002a01: MSTORE
00002a02: PUSH1 0x20
00002a04: ADD
00002a05: SWAP1
00002a06: DUP2
00002a07: MSTORE
00002a08: PUSH1 0x20
00002a0a: ADD
00002a0b: PUSH0
00002a0c: KECCAK256
00002a0d: PUSH1 0x01
00002a0f: ADD
00002a10: DUP2
00002a11: SWAP1
00002a12: SSTORE
00002a13: POP
00002a14: PUSH1 0x01
00002a16: PUSH1 0x10
00002a18: PUSH0
00002a19: PUSH1 0x07
00002a1b: SLOAD
00002a1c: DUP2
00002a1d: MSTORE
00002a1e: PUSH1 0x20
00002a20: ADD
00002a21: SWAP1
00002a22: DUP2
00002a23: MSTORE
00002a24: PUSH1 0x20
00002a26: ADD
00002a27: PUSH0
00002a28: KECCAK256
00002a29: PUSH1 0x03
00002a2b: ADD
00002a2c: PUSH0
00002a2d: PUSH2 0x0100
00002a30: EXP
00002a31: DUP2
00002a32: SLOAD
00002a33: DUP2
00002a34: PUSH1 0xff
00002a36: MUL
00002a37: NOT
00002a38: AND
00002a39: SWAP1
00002a3a: DUP4
00002a3b: ISZERO
00002a3c: ISZERO
00002a3d: MUL
00002a3e: OR
00002a3f: SWAP1
00002a40: SSTORE
00002a41: POP
00002a42: PUSH32 0x41493253ae80c9f89e25283c36f67849365d0515134ce43de1314223cb6f7342
00002a63: PUSH1 0x01
00002a65: PUSH1 0x40
00002a67: MLOAD
00002a68: PUSH2 0x2a71
00002a6b: SWAP2
00002a6c: SWAP1
00002a6d: PUSH2 0x3bdd
00002a70: JUMP
00002a71: JUMPDEST
00002a72: PUSH1 0x40
00002a74: MLOAD
00002a75: DUP1
00002a76: SWAP2
00002a77: SUB
00002a78: SWAP1
00002a79: LOG1
00002a7a: JUMP
00002a7b: JUMPDEST
00002a7c: PUSH1 0x06
00002a7e: SLOAD
00002a7f: PUSH1 0x10
00002a81: PUSH0
00002a82: DUP4
00002a83: DUP2
00002a84: MSTORE
00002a85: PUSH1 0x20
00002a87: ADD
00002a88: SWAP1
00002a89: DUP2
00002a8a: MSTORE
00002a8b: PUSH1 0x20
00002a8d: ADD
00002a8e: PUSH0
00002a8f: KECCAK256
00002a90: PUSH1 0x01
00002a92: ADD
00002a93: DUP2
00002a94: SWAP1
00002a95: SSTORE
00002a96: POP
00002a97: PUSH1 0x01
00002a99: PUSH1 0x10
00002a9b: PUSH0
00002a9c: DUP4
00002a9d: DUP2
00002a9e: MSTORE
00002a9f: PUSH1 0x20
00002aa1: ADD
00002aa2: SWAP1
00002aa3: DUP2
00002aa4: MSTORE
00002aa5: PUSH1 0x20
00002aa7: ADD
00002aa8: PUSH0
00002aa9: KECCAK256
00002aaa: PUSH1 0x03
00002aac: ADD
00002aad: PUSH0
00002aae: PUSH2 0x0100
00002ab1: EXP
00002ab2: DUP2
00002ab3: SLOAD
00002ab4: DUP2
00002ab5: PUSH1 0xff
00002ab7: MUL
00002ab8: NOT
00002ab9: AND
00002aba: SWAP1
00002abb: DUP4
00002abc: ISZERO
00002abd: ISZERO
00002abe: MUL
00002abf: OR
00002ac0: SWAP1
00002ac1: SSTORE
00002ac2: POP
00002ac3: PUSH32 0x41493253ae80c9f89e25283c36f67849365d0515134ce43de1314223cb6f7342
00002ae4: PUSH1 0x01
00002ae6: PUSH1 0x40
00002ae8: MLOAD
00002ae9: PUSH2 0x2af2
00002aec: SWAP2
00002aed: SWAP1
00002aee: PUSH2 0x3bdd
00002af1: JUMP
00002af2: JUMPDEST
00002af3: PUSH1 0x40
00002af5: MLOAD
00002af6: DUP1
00002af7: SWAP2
00002af8: SUB
00002af9: SWAP1
00002afa: LOG1
00002afb: POP
00002afc: JUMP
00002afd: JUMPDEST
00002afe: PUSH0
00002aff: PUSH2 0x2b3e
00002b02: DUP4
00002b03: DUP4
00002b04: PUSH1 0x40
00002b06: MLOAD
00002b07: DUP1
00002b08: PUSH1 0x40
00002b0a: ADD
00002b0b: PUSH1 0x40
00002b0d: MSTORE
00002b0e: DUP1
00002b0f: PUSH1 0x1e
00002b11: DUP2
00002b12: MSTORE
00002b13: PUSH1 0x20
00002b15: ADD
00002b16: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00002b37: DUP2
00002b38: MSTORE
00002b39: POP
00002b3a: PUSH2 0x3007
00002b3d: JUMP
00002b3e: JUMPDEST
00002b3f: SWAP1
00002b40: POP
00002b41: SWAP3
00002b42: SWAP2
00002b43: POP
00002b44: POP
00002b45: JUMP
00002b46: JUMPDEST
00002b47: PUSH0
00002b48: DUP1
00002b49: DUP4
00002b4a: SUB
00002b4b: PUSH2 0x2b56
00002b4e: JUMPI
00002b4f: PUSH0
00002b50: SWAP1
00002b51: POP
00002b52: PUSH2 0x2bb7
00002b55: JUMP
00002b56: JUMPDEST
00002b57: PUSH0
00002b58: DUP3
00002b59: DUP5
00002b5a: PUSH2 0x2b63
00002b5d: SWAP2
00002b5e: SWAP1
00002b5f: PUSH2 0x3bf6
00002b62: JUMP
00002b63: JUMPDEST
00002b64: SWAP1
00002b65: POP
00002b66: DUP3
00002b67: DUP5
00002b68: DUP3
00002b69: PUSH2 0x2b72
00002b6c: SWAP2
00002b6d: SWAP1
00002b6e: PUSH2 0x3c64
00002b71: JUMP
00002b72: JUMPDEST
00002b73: EQ
00002b74: PUSH2 0x2bb2
00002b77: JUMPI
00002b78: PUSH1 0x40
00002b7a: MLOAD
00002b7b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002b9c: DUP2
00002b9d: MSTORE
00002b9e: PUSH1 0x04
00002ba0: ADD
00002ba1: PUSH2 0x2ba9
00002ba4: SWAP1
00002ba5: PUSH2 0x3d04
00002ba8: JUMP
00002ba9: JUMPDEST
00002baa: PUSH1 0x40
00002bac: MLOAD
00002bad: DUP1
00002bae: SWAP2
00002baf: SUB
00002bb0: SWAP1
00002bb1: REVERT
00002bb2: JUMPDEST
00002bb3: DUP1
00002bb4: SWAP2
00002bb5: POP
00002bb6: POP
00002bb7: JUMPDEST
00002bb8: SWAP3
00002bb9: SWAP2
00002bba: POP
00002bbb: POP
00002bbc: JUMP
00002bbd: JUMPDEST
00002bbe: PUSH0
00002bbf: PUSH2 0x2bfe
00002bc2: DUP4
00002bc3: DUP4
00002bc4: PUSH1 0x40
00002bc6: MLOAD
00002bc7: DUP1
00002bc8: PUSH1 0x40
00002bca: ADD
00002bcb: PUSH1 0x40
00002bcd: MSTORE
00002bce: DUP1
00002bcf: PUSH1 0x1a
00002bd1: DUP2
00002bd2: MSTORE
00002bd3: PUSH1 0x20
00002bd5: ADD
00002bd6: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
00002bf7: DUP2
00002bf8: MSTORE
00002bf9: POP
00002bfa: PUSH2 0x3069
00002bfd: JUMP
00002bfe: JUMPDEST
00002bff: SWAP1
00002c00: POP
00002c01: SWAP3
00002c02: SWAP2
00002c03: POP
00002c04: POP
00002c05: JUMP
00002c06: JUMPDEST
00002c07: PUSH0
00002c08: DUP1
00002c09: PUSH0
00002c0a: SWAP1
00002c0b: SLOAD
00002c0c: SWAP1
00002c0d: PUSH2 0x0100
00002c10: EXP
00002c11: SWAP1
00002c12: DIV
00002c13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c28: AND
00002c29: SWAP1
00002c2a: POP
00002c2b: DUP2
00002c2c: PUSH0
00002c2d: DUP1
00002c2e: PUSH2 0x0100
00002c31: EXP
00002c32: DUP2
00002c33: SLOAD
00002c34: DUP2
00002c35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c4a: MUL
00002c4b: NOT
00002c4c: AND
00002c4d: SWAP1
00002c4e: DUP4
00002c4f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c64: AND
00002c65: MUL
00002c66: OR
00002c67: SWAP1
00002c68: SSTORE
00002c69: POP
00002c6a: DUP2
00002c6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c80: AND
00002c81: DUP2
00002c82: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c97: AND
00002c98: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002cb9: PUSH1 0x40
00002cbb: MLOAD
00002cbc: PUSH1 0x40
00002cbe: MLOAD
00002cbf: DUP1
00002cc0: SWAP2
00002cc1: SUB
00002cc2: SWAP1
00002cc3: LOG3
00002cc4: POP
00002cc5: POP
00002cc6: JUMP
00002cc7: JUMPDEST
00002cc8: PUSH1 0x02
00002cca: PUSH1 0x01
00002ccc: SLOAD
00002ccd: SUB
00002cce: PUSH2 0x2d03
00002cd1: JUMPI
00002cd2: PUSH1 0x40
00002cd4: MLOAD
00002cd5: PUSH32 0x3ee5aeb500000000000000000000000000000000000000000000000000000000
00002cf6: DUP2
00002cf7: MSTORE
00002cf8: PUSH1 0x04
00002cfa: ADD
00002cfb: PUSH1 0x40
00002cfd: MLOAD
00002cfe: DUP1
00002cff: SWAP2
00002d00: SUB
00002d01: SWAP1
00002d02: REVERT
00002d03: JUMPDEST
00002d04: PUSH1 0x02
00002d06: PUSH1 0x01
00002d08: DUP2
00002d09: SWAP1
00002d0a: SSTORE
00002d0b: POP
00002d0c: JUMP
00002d0d: JUMPDEST
00002d0e: PUSH0
00002d0f: DUP1
00002d10: PUSH1 0x01
00002d12: PUSH1 0x0a
00002d14: PUSH0
00002d15: DUP6
00002d16: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d2b: AND
00002d2c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d41: AND
00002d42: DUP2
00002d43: MSTORE
00002d44: PUSH1 0x20
00002d46: ADD
00002d47: SWAP1
00002d48: DUP2
00002d49: MSTORE
00002d4a: PUSH1 0x20
00002d4c: ADD
00002d4d: PUSH0
00002d4e: KECCAK256
00002d4f: SLOAD
00002d50: PUSH2 0x2d59
00002d53: SWAP2
00002d54: SWAP1
00002d55: PUSH2 0x3657
00002d58: JUMP
00002d59: JUMPDEST
00002d5a: SWAP1
00002d5b: POP
00002d5c: JUMPDEST
00002d5d: PUSH1 0x07
00002d5f: SLOAD
00002d60: DUP2
00002d61: LT
00002d62: ISZERO
00002d63: PUSH2 0x2e16
00002d66: JUMPI
00002d67: PUSH0
00002d68: PUSH2 0x2df1
00002d6b: PUSH1 0x10
00002d6d: PUSH0
00002d6e: DUP5
00002d6f: DUP2
00002d70: MSTORE
00002d71: PUSH1 0x20
00002d73: ADD
00002d74: SWAP1
00002d75: DUP2
00002d76: MSTORE
00002d77: PUSH1 0x20
00002d79: ADD
00002d7a: PUSH0
00002d7b: KECCAK256
00002d7c: PUSH1 0x01
00002d7e: ADD
00002d7f: SLOAD
00002d80: PUSH2 0x2de3
00002d83: PUSH1 0x02
00002d85: PUSH0
00002d86: DUP9
00002d87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d9c: AND
00002d9d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002db2: AND
00002db3: DUP2
00002db4: MSTORE
00002db5: PUSH1 0x20
00002db7: ADD
00002db8: SWAP1
00002db9: DUP2
00002dba: MSTORE
00002dbb: PUSH1 0x20
00002dbd: ADD
00002dbe: PUSH0
00002dbf: KECCAK256
00002dc0: SLOAD
00002dc1: PUSH1 0x10
00002dc3: PUSH0
00002dc4: DUP8
00002dc5: DUP2
00002dc6: MSTORE
00002dc7: PUSH1 0x20
00002dc9: ADD
00002dca: SWAP1
00002dcb: DUP2
00002dcc: MSTORE
00002dcd: PUSH1 0x20
00002dcf: ADD
00002dd0: PUSH0
00002dd1: KECCAK256
00002dd2: PUSH1 0x02
00002dd4: ADD
00002dd5: SLOAD
00002dd6: PUSH2 0x2b46
00002dd9: SWAP1
00002dda: SWAP2
00002ddb: SWAP1
00002ddc: PUSH4 0xffffffff
00002de1: AND
00002de2: JUMP
00002de3: JUMPDEST
00002de4: PUSH2 0x2bbd
00002de7: SWAP1
00002de8: SWAP2
00002de9: SWAP1
00002dea: PUSH4 0xffffffff
00002def: AND
00002df0: JUMP
00002df1: JUMPDEST
00002df2: SWAP1
00002df3: POP
00002df4: PUSH2 0x2e06
00002df7: DUP2
00002df8: DUP5
00002df9: PUSH2 0x2999
00002dfc: SWAP1
00002dfd: SWAP2
00002dfe: SWAP1
00002dff: PUSH4 0xffffffff
00002e04: AND
00002e05: JUMP
00002e06: JUMPDEST
00002e07: SWAP3
00002e08: POP
00002e09: POP
00002e0a: DUP1
00002e0b: DUP1
00002e0c: PUSH1 0x01
00002e0e: ADD
00002e0f: SWAP2
00002e10: POP
00002e11: POP
00002e12: PUSH2 0x2d5c
00002e15: JUMP
00002e16: JUMPDEST
00002e17: POP
00002e18: PUSH1 0x01
00002e1a: PUSH1 0x07
00002e1c: SLOAD
00002e1d: PUSH2 0x2e26
00002e20: SWAP2
00002e21: SWAP1
00002e22: PUSH2 0x3624
00002e25: JUMP
00002e26: JUMPDEST
00002e27: PUSH1 0x0a
00002e29: PUSH0
00002e2a: DUP5
00002e2b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002e40: AND
00002e41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002e56: AND
00002e57: DUP2
00002e58: MSTORE
00002e59: PUSH1 0x20
00002e5b: ADD
00002e5c: SWAP1
00002e5d: DUP2
00002e5e: MSTORE
00002e5f: PUSH1 0x20
00002e61: ADD
00002e62: PUSH0
00002e63: KECCAK256
00002e64: DUP2
00002e65: SWAP1
00002e66: SSTORE
00002e67: POP
00002e68: PUSH2 0x2e7c
00002e6b: DUP2
00002e6c: PUSH1 0x05
00002e6e: SLOAD
00002e6f: PUSH2 0x2999
00002e72: SWAP1
00002e73: SWAP2
00002e74: SWAP1
00002e75: PUSH4 0xffffffff
00002e7a: AND
00002e7b: JUMP
00002e7c: JUMPDEST
00002e7d: PUSH1 0x05
00002e7f: DUP2
00002e80: SWAP1
00002e81: SSTORE
00002e82: POP
00002e83: PUSH2 0x2ed2
00002e86: DUP2
00002e87: PUSH1 0x0b
00002e89: PUSH0
00002e8a: DUP6
00002e8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ea0: AND
00002ea1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002eb6: AND
00002eb7: DUP2
00002eb8: MSTORE
00002eb9: PUSH1 0x20
00002ebb: ADD
00002ebc: SWAP1
00002ebd: DUP2
00002ebe: MSTORE
00002ebf: PUSH1 0x20
00002ec1: ADD
00002ec2: PUSH0
00002ec3: KECCAK256
00002ec4: SLOAD
00002ec5: PUSH2 0x2999
00002ec8: SWAP1
00002ec9: SWAP2
00002eca: SWAP1
00002ecb: PUSH4 0xffffffff
00002ed0: AND
00002ed1: JUMP
00002ed2: JUMPDEST
00002ed3: PUSH1 0x0b
00002ed5: PUSH0
00002ed6: DUP5
00002ed7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002eec: AND
00002eed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f02: AND
00002f03: DUP2
00002f04: MSTORE
00002f05: PUSH1 0x20
00002f07: ADD
00002f08: SWAP1
00002f09: DUP2
00002f0a: MSTORE
00002f0b: PUSH1 0x20
00002f0d: ADD
00002f0e: PUSH0
00002f0f: KECCAK256
00002f10: DUP2
00002f11: SWAP1
00002f12: SSTORE
00002f13: POP
00002f14: PUSH0
00002f15: DUP3
00002f16: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f2b: AND
00002f2c: DUP3
00002f2d: PUSH2 0x7530
00002f30: SWAP1
00002f31: PUSH1 0x40
00002f33: MLOAD
00002f34: PUSH2 0x2f3c
00002f37: SWAP1
00002f38: PUSH2 0x3a03
00002f3b: JUMP
00002f3c: JUMPDEST
00002f3d: PUSH0
00002f3e: PUSH1 0x40
00002f40: MLOAD
00002f41: DUP1
00002f42: DUP4
00002f43: SUB
00002f44: DUP2
00002f45: DUP6
00002f46: DUP9
00002f47: DUP9
00002f48: CALL
00002f49: SWAP4
00002f4a: POP
00002f4b: POP
00002f4c: POP
00002f4d: POP
00002f4e: RETURNDATASIZE
00002f4f: DUP1
00002f50: PUSH0
00002f51: DUP2
00002f52: EQ
00002f53: PUSH2 0x2f77
00002f56: JUMPI
00002f57: PUSH1 0x40
00002f59: MLOAD
00002f5a: SWAP2
00002f5b: POP
00002f5c: PUSH1 0x1f
00002f5e: NOT
00002f5f: PUSH1 0x3f
00002f61: RETURNDATASIZE
00002f62: ADD
00002f63: AND
00002f64: DUP3
00002f65: ADD
00002f66: PUSH1 0x40
00002f68: MSTORE
00002f69: RETURNDATASIZE
00002f6a: DUP3
00002f6b: MSTORE
00002f6c: RETURNDATASIZE
00002f6d: PUSH0
00002f6e: PUSH1 0x20
00002f70: DUP5
00002f71: ADD
00002f72: RETURNDATACOPY
00002f73: PUSH2 0x2f7c
00002f76: JUMP
00002f77: JUMPDEST
00002f78: PUSH1 0x60
00002f7a: SWAP2
00002f7b: POP
00002f7c: JUMPDEST
00002f7d: POP
00002f7e: POP
00002f7f: SWAP1
00002f80: POP
00002f81: DUP1
00002f82: PUSH2 0x2fc0
00002f85: JUMPI
00002f86: PUSH1 0x40
00002f88: MLOAD
00002f89: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002faa: DUP2
00002fab: MSTORE
00002fac: PUSH1 0x04
00002fae: ADD
00002faf: PUSH2 0x2fb7
00002fb2: SWAP1
00002fb3: PUSH2 0x3a61
00002fb6: JUMP
00002fb7: JUMPDEST
00002fb8: PUSH1 0x40
00002fba: MLOAD
00002fbb: DUP1
00002fbc: SWAP2
00002fbd: SUB
00002fbe: SWAP1
00002fbf: REVERT
00002fc0: JUMPDEST
00002fc1: PUSH32 0xd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a
00002fe2: DUP4
00002fe3: DUP4
00002fe4: PUSH1 0x40
00002fe6: MLOAD
00002fe7: PUSH2 0x2ff1
00002fea: SWAP3
00002feb: SWAP2
00002fec: SWAP1
00002fed: PUSH2 0x3443
00002ff0: JUMP
00002ff1: JUMPDEST
00002ff2: PUSH1 0x40
00002ff4: MLOAD
00002ff5: DUP1
00002ff6: SWAP2
00002ff7: SUB
00002ff8: SWAP1
00002ff9: LOG1
00002ffa: POP
00002ffb: POP
00002ffc: POP
00002ffd: JUMP
00002ffe: JUMPDEST
00002fff: PUSH1 0x01
00003001: DUP1
00003002: DUP2
00003003: SWAP1
00003004: SSTORE
00003005: POP
00003006: JUMP
00003007: JUMPDEST
00003008: PUSH0
00003009: DUP4
0000300a: DUP4
0000300b: GT
0000300c: ISZERO
0000300d: DUP3
0000300e: SWAP1
0000300f: PUSH2 0x304e
00003012: JUMPI
00003013: PUSH1 0x40
00003015: MLOAD
00003016: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003037: DUP2
00003038: MSTORE
00003039: PUSH1 0x04
0000303b: ADD
0000303c: PUSH2 0x3045
0000303f: SWAP2
00003040: SWAP1
00003041: PUSH2 0x3d82
00003044: JUMP
00003045: JUMPDEST
00003046: PUSH1 0x40
00003048: MLOAD
00003049: DUP1
0000304a: SWAP2
0000304b: SUB
0000304c: SWAP1
0000304d: REVERT
0000304e: JUMPDEST
0000304f: POP
00003050: PUSH0
00003051: DUP4
00003052: DUP6
00003053: PUSH2 0x305c
00003056: SWAP2
00003057: SWAP1
00003058: PUSH2 0x3624
0000305b: JUMP
0000305c: JUMPDEST
0000305d: SWAP1
0000305e: POP
0000305f: DUP1
00003060: SWAP2
00003061: POP
00003062: POP
00003063: SWAP4
00003064: SWAP3
00003065: POP
00003066: POP
00003067: POP
00003068: JUMP
00003069: JUMPDEST
0000306a: PUSH0
0000306b: DUP1
0000306c: DUP4
0000306d: GT
0000306e: DUP3
0000306f: SWAP1
00003070: PUSH2 0x30af
00003073: JUMPI
00003074: PUSH1 0x40
00003076: MLOAD
00003077: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003098: DUP2
00003099: MSTORE
0000309a: PUSH1 0x04
0000309c: ADD
0000309d: PUSH2 0x30a6
000030a0: SWAP2
000030a1: SWAP1
000030a2: PUSH2 0x3d82
000030a5: JUMP
000030a6: JUMPDEST
000030a7: PUSH1 0x40
000030a9: MLOAD
000030aa: DUP1
000030ab: SWAP2
000030ac: SUB
000030ad: SWAP1
000030ae: REVERT
000030af: JUMPDEST
000030b0: POP
000030b1: PUSH0
000030b2: DUP4
000030b3: DUP6
000030b4: PUSH2 0x30bd
000030b7: SWAP2
000030b8: SWAP1
000030b9: PUSH2 0x3c64
000030bc: JUMP
000030bd: JUMPDEST
000030be: SWAP1
000030bf: POP
000030c0: DUP1
000030c1: SWAP2
000030c2: POP
000030c3: POP
000030c4: SWAP4
000030c5: SWAP3
000030c6: POP
000030c7: POP
000030c8: POP
000030c9: JUMP
000030ca: JUMPDEST
000030cb: PUSH0
000030cc: DUP1
000030cd: REVERT
000030ce: JUMPDEST
000030cf: PUSH0
000030d0: DUP2
000030d1: SWAP1
000030d2: POP
000030d3: SWAP2
000030d4: SWAP1
000030d5: POP
000030d6: JUMP
000030d7: JUMPDEST
000030d8: PUSH2 0x30e0
000030db: DUP2
000030dc: PUSH2 0x30ce
000030df: JUMP
000030e0: JUMPDEST
000030e1: DUP2
000030e2: EQ
000030e3: PUSH2 0x30ea
000030e6: JUMPI
000030e7: PUSH0
000030e8: DUP1
000030e9: REVERT
000030ea: JUMPDEST
000030eb: POP
000030ec: JUMP
000030ed: JUMPDEST
000030ee: PUSH0
000030ef: DUP2
000030f0: CALLDATALOAD
000030f1: SWAP1
000030f2: POP
000030f3: PUSH2 0x30fb
000030f6: DUP2
000030f7: PUSH2 0x30d7
000030fa: JUMP
000030fb: JUMPDEST
000030fc: SWAP3
000030fd: SWAP2
000030fe: POP
000030ff: POP
00003100: JUMP
00003101: JUMPDEST
00003102: PUSH0
00003103: DUP1
00003104: PUSH1 0x40
00003106: DUP4
00003107: DUP6
00003108: SUB
00003109: SLT
0000310a: ISZERO
0000310b: PUSH2 0x3117
0000310e: JUMPI
0000310f: PUSH2 0x3116
00003112: PUSH2 0x30ca
00003115: JUMP
00003116: JUMPDEST
00003117: JUMPDEST
00003118: PUSH0
00003119: PUSH2 0x3124
0000311c: DUP6
0000311d: DUP3
0000311e: DUP7
0000311f: ADD
00003120: PUSH2 0x30ed
00003123: JUMP
00003124: JUMPDEST
00003125: SWAP3
00003126: POP
00003127: POP
00003128: PUSH1 0x20
0000312a: PUSH2 0x3135
0000312d: DUP6
0000312e: DUP3
0000312f: DUP7
00003130: ADD
00003131: PUSH2 0x30ed
00003134: JUMP
00003135: JUMPDEST
00003136: SWAP2
00003137: POP
00003138: POP
00003139: SWAP3
0000313a: POP
0000313b: SWAP3
0000313c: SWAP1
0000313d: POP
0000313e: JUMP
0000313f: JUMPDEST
00003140: PUSH2 0x3148
00003143: DUP2
00003144: PUSH2 0x30ce
00003147: JUMP
00003148: JUMPDEST
00003149: DUP3
0000314a: MSTORE
0000314b: POP
0000314c: POP
0000314d: JUMP
0000314e: JUMPDEST
0000314f: PUSH0
00003150: PUSH1 0x20
00003152: DUP3
00003153: ADD
00003154: SWAP1
00003155: POP
00003156: PUSH2 0x3161
00003159: PUSH0
0000315a: DUP4
0000315b: ADD
0000315c: DUP5
0000315d: PUSH2 0x313f
00003160: JUMP
00003161: JUMPDEST
00003162: SWAP3
00003163: SWAP2
00003164: POP
00003165: POP
00003166: JUMP
00003167: JUMPDEST
00003168: PUSH0
00003169: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000317e: DUP3
0000317f: AND
00003180: SWAP1
00003181: POP
00003182: SWAP2
00003183: SWAP1
00003184: POP
00003185: JUMP
00003186: JUMPDEST
00003187: PUSH0
00003188: PUSH2 0x3190
0000318b: DUP3
0000318c: PUSH2 0x3167
0000318f: JUMP
00003190: JUMPDEST
00003191: SWAP1
00003192: POP
00003193: SWAP2
00003194: SWAP1
00003195: POP
00003196: JUMP
00003197: JUMPDEST
00003198: PUSH2 0x31a0
0000319b: DUP2
0000319c: PUSH2 0x3186
0000319f: JUMP
000031a0: JUMPDEST
000031a1: DUP2
000031a2: EQ
000031a3: PUSH2 0x31aa
000031a6: JUMPI
000031a7: PUSH0
000031a8: DUP1
000031a9: REVERT
000031aa: JUMPDEST
000031ab: POP
000031ac: JUMP
000031ad: JUMPDEST
000031ae: PUSH0
000031af: DUP2
000031b0: CALLDATALOAD
000031b1: SWAP1
000031b2: POP
000031b3: PUSH2 0x31bb
000031b6: DUP2
000031b7: PUSH2 0x3197
000031ba: JUMP
000031bb: JUMPDEST
000031bc: SWAP3
000031bd: SWAP2
000031be: POP
000031bf: POP
000031c0: JUMP
000031c1: JUMPDEST
000031c2: PUSH0
000031c3: PUSH1 0x20
000031c5: DUP3
000031c6: DUP5
000031c7: SUB
000031c8: SLT
000031c9: ISZERO
000031ca: PUSH2 0x31d6
000031cd: JUMPI
000031ce: PUSH2 0x31d5
000031d1: PUSH2 0x30ca
000031d4: JUMP
000031d5: JUMPDEST
000031d6: JUMPDEST
000031d7: PUSH0
000031d8: PUSH2 0x31e3
000031db: DUP5
000031dc: DUP3
000031dd: DUP6
000031de: ADD
000031df: PUSH2 0x31ad
000031e2: JUMP
000031e3: JUMPDEST
000031e4: SWAP2
000031e5: POP
000031e6: POP
000031e7: SWAP3
000031e8: SWAP2
000031e9: POP
000031ea: POP
000031eb: JUMP
000031ec: JUMPDEST
000031ed: PUSH0
000031ee: PUSH1 0x20
000031f0: DUP3
000031f1: DUP5
000031f2: SUB
000031f3: SLT
000031f4: ISZERO
000031f5: PUSH2 0x3201
000031f8: JUMPI
000031f9: PUSH2 0x3200
000031fc: PUSH2 0x30ca
000031ff: JUMP
00003200: JUMPDEST
00003201: JUMPDEST
00003202: PUSH0
00003203: PUSH2 0x320e
00003206: DUP5
00003207: DUP3
00003208: DUP6
00003209: ADD
0000320a: PUSH2 0x30ed
0000320d: JUMP
0000320e: JUMPDEST
0000320f: SWAP2
00003210: POP
00003211: POP
00003212: SWAP3
00003213: SWAP2
00003214: POP
00003215: POP
00003216: JUMP
00003217: JUMPDEST
00003218: PUSH0
00003219: DUP2
0000321a: ISZERO
0000321b: ISZERO
0000321c: SWAP1
0000321d: POP
0000321e: SWAP2
0000321f: SWAP1
00003220: POP
00003221: JUMP
00003222: JUMPDEST
00003223: PUSH2 0x322b
00003226: DUP2
00003227: PUSH2 0x3217
0000322a: JUMP
0000322b: JUMPDEST
0000322c: DUP3
0000322d: MSTORE
0000322e: POP
0000322f: POP
00003230: JUMP
00003231: JUMPDEST
00003232: PUSH0
00003233: PUSH1 0x80
00003235: DUP3
00003236: ADD
00003237: SWAP1
00003238: POP
00003239: PUSH2 0x3244
0000323c: PUSH0
0000323d: DUP4
0000323e: ADD
0000323f: DUP8
00003240: PUSH2 0x313f
00003243: JUMP
00003244: JUMPDEST
00003245: PUSH2 0x3251
00003248: PUSH1 0x20
0000324a: DUP4
0000324b: ADD
0000324c: DUP7
0000324d: PUSH2 0x313f
00003250: JUMP
00003251: JUMPDEST
00003252: PUSH2 0x325e
00003255: PUSH1 0x40
00003257: DUP4
00003258: ADD
00003259: DUP6
0000325a: PUSH2 0x313f
0000325d: JUMP
0000325e: JUMPDEST
0000325f: PUSH2 0x326b
00003262: PUSH1 0x60
00003264: DUP4
00003265: ADD
00003266: DUP5
00003267: PUSH2 0x3222
0000326a: JUMP
0000326b: JUMPDEST
0000326c: SWAP6
0000326d: SWAP5
0000326e: POP
0000326f: POP
00003270: POP
00003271: POP
00003272: POP
00003273: JUMP
00003274: JUMPDEST
00003275: PUSH0
00003276: DUP1
00003277: PUSH0
00003278: PUSH1 0x60
0000327a: DUP5
0000327b: DUP7
0000327c: SUB
0000327d: SLT
0000327e: ISZERO
0000327f: PUSH2 0x328b
00003282: JUMPI
00003283: PUSH2 0x328a
00003286: PUSH2 0x30ca
00003289: JUMP
0000328a: JUMPDEST
0000328b: JUMPDEST
0000328c: PUSH0
0000328d: PUSH2 0x3298
00003290: DUP7
00003291: DUP3
00003292: DUP8
00003293: ADD
00003294: PUSH2 0x30ed
00003297: JUMP
00003298: JUMPDEST
00003299: SWAP4
0000329a: POP
0000329b: POP
0000329c: PUSH1 0x20
0000329e: PUSH2 0x32a9
000032a1: DUP7
000032a2: DUP3
000032a3: DUP8
000032a4: ADD
000032a5: PUSH2 0x30ed
000032a8: JUMP
000032a9: JUMPDEST
000032aa: SWAP3
000032ab: POP
000032ac: POP
000032ad: PUSH1 0x40
000032af: PUSH2 0x32ba
000032b2: DUP7
000032b3: DUP3
000032b4: DUP8
000032b5: ADD
000032b6: PUSH2 0x30ed
000032b9: JUMP
000032ba: JUMPDEST
000032bb: SWAP2
000032bc: POP
000032bd: POP
000032be: SWAP3
000032bf: POP
000032c0: SWAP3
000032c1: POP
000032c2: SWAP3
000032c3: JUMP
000032c4: JUMPDEST
000032c5: PUSH0
000032c6: DUP1
000032c7: PUSH0
000032c8: PUSH1 0x60
000032ca: DUP5
000032cb: DUP7
000032cc: SUB
000032cd: SLT
000032ce: ISZERO
000032cf: PUSH2 0x32db
000032d2: JUMPI
000032d3: PUSH2 0x32da
000032d6: PUSH2 0x30ca
000032d9: JUMP
000032da: JUMPDEST
000032db: JUMPDEST
000032dc: PUSH0
000032dd: PUSH2 0x32e8
000032e0: DUP7
000032e1: DUP3
000032e2: DUP8
000032e3: ADD
000032e4: PUSH2 0x31ad
000032e7: JUMP
000032e8: JUMPDEST
000032e9: SWAP4
000032ea: POP
000032eb: POP
000032ec: PUSH1 0x20
000032ee: PUSH2 0x32f9
000032f1: DUP7
000032f2: DUP3
000032f3: DUP8
000032f4: ADD
000032f5: PUSH2 0x31ad
000032f8: JUMP
000032f9: JUMPDEST
000032fa: SWAP3
000032fb: POP
000032fc: POP
000032fd: PUSH1 0x40
000032ff: PUSH2 0x330a
00003302: DUP7
00003303: DUP3
00003304: DUP8
00003305: ADD
00003306: PUSH2 0x30ed
00003309: JUMP
0000330a: JUMPDEST
0000330b: SWAP2
0000330c: POP
0000330d: POP
0000330e: SWAP3
0000330f: POP
00003310: SWAP3
00003311: POP
00003312: SWAP3
00003313: JUMP
00003314: JUMPDEST
00003315: PUSH2 0x331d
00003318: DUP2
00003319: PUSH2 0x3186
0000331c: JUMP
0000331d: JUMPDEST
0000331e: DUP3
0000331f: MSTORE
00003320: POP
00003321: POP
00003322: JUMP
00003323: JUMPDEST
00003324: PUSH0
00003325: PUSH1 0x20
00003327: DUP3
00003328: ADD
00003329: SWAP1
0000332a: POP
0000332b: PUSH2 0x3336
0000332e: PUSH0
0000332f: DUP4
00003330: ADD
00003331: DUP5
00003332: PUSH2 0x3314
00003335: JUMP
00003336: JUMPDEST
00003337: SWAP3
00003338: SWAP2
00003339: POP
0000333a: POP
0000333b: JUMP
0000333c: JUMPDEST
0000333d: PUSH0
0000333e: DUP3
0000333f: DUP3
00003340: MSTORE
00003341: PUSH1 0x20
00003343: DUP3
00003344: ADD
00003345: SWAP1
00003346: POP
00003347: SWAP3
00003348: SWAP2
00003349: POP
0000334a: POP
0000334b: JUMP
0000334c: JUMPDEST
0000334d: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
0000336e: PUSH0
0000336f: DUP3
00003370: ADD
00003371: MSTORE
00003372: POP
00003373: JUMP
00003374: JUMPDEST
00003375: PUSH0
00003376: PUSH2 0x3380
00003379: PUSH1 0x20
0000337b: DUP4
0000337c: PUSH2 0x333c
0000337f: JUMP
00003380: JUMPDEST
00003381: SWAP2
00003382: POP
00003383: PUSH2 0x338b
00003386: DUP3
00003387: PUSH2 0x334c
0000338a: JUMP
0000338b: JUMPDEST
0000338c: PUSH1 0x20
0000338e: DUP3
0000338f: ADD
00003390: SWAP1
00003391: POP
00003392: SWAP2
00003393: SWAP1
00003394: POP
00003395: JUMP
00003396: JUMPDEST
00003397: PUSH0
00003398: PUSH1 0x20
0000339a: DUP3
0000339b: ADD
0000339c: SWAP1
0000339d: POP
0000339e: DUP2
0000339f: DUP2
000033a0: SUB
000033a1: PUSH0
000033a2: DUP4
000033a3: ADD
000033a4: MSTORE
000033a5: PUSH2 0x33ad
000033a8: DUP2
000033a9: PUSH2 0x3374
000033ac: JUMP
000033ad: JUMPDEST
000033ae: SWAP1
000033af: POP
000033b0: SWAP2
000033b1: SWAP1
000033b2: POP
000033b3: JUMP
000033b4: JUMPDEST
000033b5: PUSH0
000033b6: PUSH1 0x40
000033b8: DUP3
000033b9: ADD
000033ba: SWAP1
000033bb: POP
000033bc: PUSH2 0x33c7
000033bf: PUSH0
000033c0: DUP4
000033c1: ADD
000033c2: DUP6
000033c3: PUSH2 0x313f
000033c6: JUMP
000033c7: JUMPDEST
000033c8: PUSH2 0x33d4
000033cb: PUSH1 0x20
000033cd: DUP4
000033ce: ADD
000033cf: DUP5
000033d0: PUSH2 0x313f
000033d3: JUMP
000033d4: JUMPDEST
000033d5: SWAP4
000033d6: SWAP3
000033d7: POP
000033d8: POP
000033d9: POP
000033da: JUMP
000033db: JUMPDEST
000033dc: PUSH32 0x6e6f7420746865206f776e657200000000000000000000000000000000000000
000033fd: PUSH0
000033fe: DUP3
000033ff: ADD
00003400: MSTORE
00003401: POP
00003402: JUMP
00003403: JUMPDEST
00003404: PUSH0
00003405: PUSH2 0x340f
00003408: PUSH1 0x0d
0000340a: DUP4
0000340b: PUSH2 0x333c
0000340e: JUMP
0000340f: JUMPDEST
00003410: SWAP2
00003411: POP
00003412: PUSH2 0x341a
00003415: DUP3
00003416: PUSH2 0x33db
00003419: JUMP
0000341a: JUMPDEST
0000341b: PUSH1 0x20
0000341d: DUP3
0000341e: ADD
0000341f: SWAP1
00003420: POP
00003421: SWAP2
00003422: SWAP1
00003423: POP
00003424: JUMP
00003425: JUMPDEST
00003426: PUSH0
00003427: PUSH1 0x20
00003429: DUP3
0000342a: ADD
0000342b: SWAP1
0000342c: POP
0000342d: DUP2
0000342e: DUP2
0000342f: SUB
00003430: PUSH0
00003431: DUP4
00003432: ADD
00003433: MSTORE
00003434: PUSH2 0x343c
00003437: DUP2
00003438: PUSH2 0x3403
0000343b: JUMP
0000343c: JUMPDEST
0000343d: SWAP1
0000343e: POP
0000343f: SWAP2
00003440: SWAP1
00003441: POP
00003442: JUMP
00003443: JUMPDEST
00003444: PUSH0
00003445: PUSH1 0x40
00003447: DUP3
00003448: ADD
00003449: SWAP1
0000344a: POP
0000344b: PUSH2 0x3456
0000344e: PUSH0
0000344f: DUP4
00003450: ADD
00003451: DUP6
00003452: PUSH2 0x3314
00003455: JUMP
00003456: JUMPDEST
00003457: PUSH2 0x3463
0000345a: PUSH1 0x20
0000345c: DUP4
0000345d: ADD
0000345e: DUP5
0000345f: PUSH2 0x313f
00003462: JUMP
00003463: JUMPDEST
00003464: SWAP4
00003465: SWAP3
00003466: POP
00003467: POP
00003468: POP
00003469: JUMP
0000346a: JUMPDEST
0000346b: PUSH2 0x3473
0000346e: DUP2
0000346f: PUSH2 0x3217
00003472: JUMP
00003473: JUMPDEST
00003474: DUP2
00003475: EQ
00003476: PUSH2 0x347d
00003479: JUMPI
0000347a: PUSH0
0000347b: DUP1
0000347c: REVERT
0000347d: JUMPDEST
0000347e: POP
0000347f: JUMP
00003480: JUMPDEST
00003481: PUSH0
00003482: DUP2
00003483: MLOAD
00003484: SWAP1
00003485: POP
00003486: PUSH2 0x348e
00003489: DUP2
0000348a: PUSH2 0x346a
0000348d: JUMP
0000348e: JUMPDEST
0000348f: SWAP3
00003490: SWAP2
00003491: POP
00003492: POP
00003493: JUMP
00003494: JUMPDEST
00003495: PUSH0
00003496: PUSH1 0x20
00003498: DUP3
00003499: DUP5
0000349a: SUB
0000349b: SLT
0000349c: ISZERO
0000349d: PUSH2 0x34a9
000034a0: JUMPI
000034a1: PUSH2 0x34a8
000034a4: PUSH2 0x30ca
000034a7: JUMP
000034a8: JUMPDEST
000034a9: JUMPDEST
000034aa: PUSH0
000034ab: PUSH2 0x34b6
000034ae: DUP5
000034af: DUP3
000034b0: DUP6
000034b1: ADD
000034b2: PUSH2 0x3480
000034b5: JUMP
000034b6: JUMPDEST
000034b7: SWAP2
000034b8: POP
000034b9: POP
000034ba: SWAP3
000034bb: SWAP2
000034bc: POP
000034bd: POP
000034be: JUMP
000034bf: JUMPDEST
000034c0: PUSH32 0x43616e277420676f207468617420686967680000000000000000000000000000
000034e1: PUSH0
000034e2: DUP3
000034e3: ADD
000034e4: MSTORE
000034e5: POP
000034e6: JUMP
000034e7: JUMPDEST
000034e8: PUSH0
000034e9: PUSH2 0x34f3
000034ec: PUSH1 0x12
000034ee: DUP4
000034ef: PUSH2 0x333c
000034f2: JUMP
000034f3: JUMPDEST
000034f4: SWAP2
000034f5: POP
000034f6: PUSH2 0x34fe
000034f9: DUP3
000034fa: PUSH2 0x34bf
000034fd: JUMP
000034fe: JUMPDEST
000034ff: PUSH1 0x20
00003501: DUP3
00003502: ADD
00003503: SWAP1
00003504: POP
00003505: SWAP2
00003506: SWAP1
00003507: POP
00003508: JUMP
00003509: JUMPDEST
0000350a: PUSH0
0000350b: PUSH1 0x20
0000350d: DUP3
0000350e: ADD
0000350f: SWAP1
00003510: POP
00003511: DUP2
00003512: DUP2
00003513: SUB
00003514: PUSH0
00003515: DUP4
00003516: ADD
00003517: MSTORE
00003518: PUSH2 0x3520
0000351b: DUP2
0000351c: PUSH2 0x34e7
0000351f: JUMP
00003520: JUMPDEST
00003521: SWAP1
00003522: POP
00003523: SWAP2
00003524: SWAP1
00003525: POP
00003526: JUMP
00003527: JUMPDEST
00003528: PUSH32 0x4e6f2062616c616e636500000000000000000000000000000000000000000000
00003549: PUSH0
0000354a: DUP3
0000354b: ADD
0000354c: MSTORE
0000354d: POP
0000354e: JUMP
0000354f: JUMPDEST
00003550: PUSH0
00003551: PUSH2 0x355b
00003554: PUSH1 0x0a
00003556: DUP4
00003557: PUSH2 0x333c
0000355a: JUMP
0000355b: JUMPDEST
0000355c: SWAP2
0000355d: POP
0000355e: PUSH2 0x3566
00003561: DUP3
00003562: PUSH2 0x3527
00003565: JUMP
00003566: JUMPDEST
00003567: PUSH1 0x20
00003569: DUP3
0000356a: ADD
0000356b: SWAP1
0000356c: POP
0000356d: SWAP2
0000356e: SWAP1
0000356f: POP
00003570: JUMP
00003571: JUMPDEST
00003572: PUSH0
00003573: PUSH1 0x20
00003575: DUP3
00003576: ADD
00003577: SWAP1
00003578: POP
00003579: DUP2
0000357a: DUP2
0000357b: SUB
0000357c: PUSH0
0000357d: DUP4
0000357e: ADD
0000357f: MSTORE
00003580: PUSH2 0x3588
00003583: DUP2
00003584: PUSH2 0x354f
00003587: JUMP
00003588: JUMPDEST
00003589: SWAP1
0000358a: POP
0000358b: SWAP2
0000358c: SWAP1
0000358d: POP
0000358e: JUMP
0000358f: JUMPDEST
00003590: PUSH32 0x43616e27742077697468647261772c2079657400000000000000000000000000
000035b1: PUSH0
000035b2: DUP3
000035b3: ADD
000035b4: MSTORE
000035b5: POP
000035b6: JUMP
000035b7: JUMPDEST
000035b8: PUSH0
000035b9: PUSH2 0x35c3
000035bc: PUSH1 0x13
000035be: DUP4
000035bf: PUSH2 0x333c
000035c2: JUMP
000035c3: JUMPDEST
000035c4: SWAP2
000035c5: POP
000035c6: PUSH2 0x35ce
000035c9: DUP3
000035ca: PUSH2 0x358f
000035cd: JUMP
000035ce: JUMPDEST
000035cf: PUSH1 0x20
000035d1: DUP3
000035d2: ADD
000035d3: SWAP1
000035d4: POP
000035d5: SWAP2
000035d6: SWAP1
000035d7: POP
000035d8: JUMP
000035d9: JUMPDEST
000035da: PUSH0
000035db: PUSH1 0x20
000035dd: DUP3
000035de: ADD
000035df: SWAP1
000035e0: POP
000035e1: DUP2
000035e2: DUP2
000035e3: SUB
000035e4: PUSH0
000035e5: DUP4
000035e6: ADD
000035e7: MSTORE
000035e8: PUSH2 0x35f0
000035eb: DUP2
000035ec: PUSH2 0x35b7
000035ef: JUMP
000035f0: JUMPDEST
000035f1: SWAP1
000035f2: POP
000035f3: SWAP2
000035f4: SWAP1
000035f5: POP
000035f6: JUMP
000035f7: JUMPDEST
000035f8: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003619: PUSH0
0000361a: MSTORE
0000361b: PUSH1 0x11
0000361d: PUSH1 0x04
0000361f: MSTORE
00003620: PUSH1 0x24
00003622: PUSH0
00003623: REVERT
00003624: JUMPDEST
00003625: PUSH0
00003626: PUSH2 0x362e
00003629: DUP3
0000362a: PUSH2 0x30ce
0000362d: JUMP
0000362e: JUMPDEST
0000362f: SWAP2
00003630: POP
00003631: PUSH2 0x3639
00003634: DUP4
00003635: PUSH2 0x30ce
00003638: JUMP
00003639: JUMPDEST
0000363a: SWAP3
0000363b: POP
0000363c: DUP3
0000363d: DUP3
0000363e: SUB
0000363f: SWAP1
00003640: POP
00003641: DUP2
00003642: DUP2
00003643: GT
00003644: ISZERO
00003645: PUSH2 0x3651
00003648: JUMPI
00003649: PUSH2 0x3650
0000364c: PUSH2 0x35f7
0000364f: JUMP
00003650: JUMPDEST
00003651: JUMPDEST
00003652: SWAP3
00003653: SWAP2
00003654: POP
00003655: POP
00003656: JUMP
00003657: JUMPDEST
00003658: PUSH0
00003659: PUSH2 0x3661
0000365c: DUP3
0000365d: PUSH2 0x30ce
00003660: JUMP
00003661: JUMPDEST
00003662: SWAP2
00003663: POP
00003664: PUSH2 0x366c
00003667: DUP4
00003668: PUSH2 0x30ce
0000366b: JUMP
0000366c: JUMPDEST
0000366d: SWAP3
0000366e: POP
0000366f: DUP3
00003670: DUP3
00003671: ADD
00003672: SWAP1
00003673: POP
00003674: DUP1
00003675: DUP3
00003676: GT
00003677: ISZERO
00003678: PUSH2 0x3684
0000367b: JUMPI
0000367c: PUSH2 0x3683
0000367f: PUSH2 0x35f7
00003682: JUMP
00003683: JUMPDEST
00003684: JUMPDEST
00003685: SWAP3
00003686: SWAP2
00003687: POP
00003688: POP
00003689: JUMP
0000368a: JUMPDEST
0000368b: PUSH32 0x506f6f6c206973206e6f742066696e616c697a65642c20796574000000000000
000036ac: PUSH0
000036ad: DUP3
000036ae: ADD
000036af: MSTORE
000036b0: POP
000036b1: JUMP
000036b2: JUMPDEST
000036b3: PUSH0
000036b4: PUSH2 0x36be
000036b7: PUSH1 0x1a
000036b9: DUP4
000036ba: PUSH2 0x333c
000036bd: JUMP
000036be: JUMPDEST
000036bf: SWAP2
000036c0: POP
000036c1: PUSH2 0x36c9
000036c4: DUP3
000036c5: PUSH2 0x368a
000036c8: JUMP
000036c9: JUMPDEST
000036ca: PUSH1 0x20
000036cc: DUP3
000036cd: ADD
000036ce: SWAP1
000036cf: POP
000036d0: SWAP2
000036d1: SWAP1
000036d2: POP
000036d3: JUMP
000036d4: JUMPDEST
000036d5: PUSH0
000036d6: PUSH1 0x20
000036d8: DUP3
000036d9: ADD
000036da: SWAP1
000036db: POP
000036dc: DUP2
000036dd: DUP2
000036de: SUB
000036df: PUSH0
000036e0: DUP4
000036e1: ADD
000036e2: MSTORE
000036e3: PUSH2 0x36eb
000036e6: DUP2
000036e7: PUSH2 0x36b2
000036ea: JUMP
000036eb: JUMPDEST
000036ec: SWAP1
000036ed: POP
000036ee: SWAP2
000036ef: SWAP1
000036f0: POP
000036f1: JUMP
000036f2: JUMPDEST
000036f3: PUSH0
000036f4: DUP2
000036f5: MLOAD
000036f6: SWAP1
000036f7: POP
000036f8: PUSH2 0x3700
000036fb: DUP2
000036fc: PUSH2 0x30d7
000036ff: JUMP
00003700: JUMPDEST
00003701: SWAP3
00003702: SWAP2
00003703: POP
00003704: POP
00003705: JUMP
00003706: JUMPDEST
00003707: PUSH0
00003708: PUSH1 0x20
0000370a: DUP3
0000370b: DUP5
0000370c: SUB
0000370d: SLT
0000370e: ISZERO
0000370f: PUSH2 0x371b
00003712: JUMPI
00003713: PUSH2 0x371a
00003716: PUSH2 0x30ca
00003719: JUMP
0000371a: JUMPDEST
0000371b: JUMPDEST
0000371c: PUSH0
0000371d: PUSH2 0x3728
00003720: DUP5
00003721: DUP3
00003722: DUP6
00003723: ADD
00003724: PUSH2 0x36f2
00003727: JUMP
00003728: JUMPDEST
00003729: SWAP2
0000372a: POP
0000372b: POP
0000372c: SWAP3
0000372d: SWAP2
0000372e: POP
0000372f: POP
00003730: JUMP
00003731: JUMPDEST
00003732: PUSH32 0x436c61696d205265776172647320466972737400000000000000000000000000
00003753: PUSH0
00003754: DUP3
00003755: ADD
00003756: MSTORE
00003757: POP
00003758: JUMP
00003759: JUMPDEST
0000375a: PUSH0
0000375b: PUSH2 0x3765
0000375e: PUSH1 0x13
00003760: DUP4
00003761: PUSH2 0x333c
00003764: JUMP
00003765: JUMPDEST
00003766: SWAP2
00003767: POP
00003768: PUSH2 0x3770
0000376b: DUP3
0000376c: PUSH2 0x3731
0000376f: JUMP
00003770: JUMPDEST
00003771: PUSH1 0x20
00003773: DUP3
00003774: ADD
00003775: SWAP1
00003776: POP
00003777: SWAP2
00003778: SWAP1
00003779: POP
0000377a: JUMP
0000377b: JUMPDEST
0000377c: PUSH0
0000377d: PUSH1 0x20
0000377f: DUP3
00003780: ADD
00003781: SWAP1
00003782: POP
00003783: DUP2
00003784: DUP2
00003785: SUB
00003786: PUSH0
00003787: DUP4
00003788: ADD
00003789: MSTORE
0000378a: PUSH2 0x3792
0000378d: DUP2
0000378e: PUSH2 0x3759
00003791: JUMP
00003792: JUMPDEST
00003793: SWAP1
00003794: POP
00003795: SWAP2
00003796: SWAP1
00003797: POP
00003798: JUMP
00003799: JUMPDEST
0000379a: PUSH32 0x546f6f206c61746520666f72207468697320706f6f6c00000000000000000000
000037bb: PUSH0
000037bc: DUP3
000037bd: ADD
000037be: MSTORE
000037bf: POP
000037c0: JUMP
000037c1: JUMPDEST
000037c2: PUSH0
000037c3: PUSH2 0x37cd
000037c6: PUSH1 0x16
000037c8: DUP4
000037c9: PUSH2 0x333c
000037cc: JUMP
000037cd: JUMPDEST
000037ce: SWAP2
000037cf: POP
000037d0: PUSH2 0x37d8
000037d3: DUP3
000037d4: PUSH2 0x3799
000037d7: JUMP
000037d8: JUMPDEST
000037d9: PUSH1 0x20
000037db: DUP3
000037dc: ADD
000037dd: SWAP1
000037de: POP
000037df: SWAP2
000037e0: SWAP1
000037e1: POP
000037e2: JUMP
000037e3: JUMPDEST
000037e4: PUSH0
000037e5: PUSH1 0x20
000037e7: DUP3
000037e8: ADD
000037e9: SWAP1
000037ea: POP
000037eb: DUP2
000037ec: DUP2
000037ed: SUB
000037ee: PUSH0
000037ef: DUP4
000037f0: ADD
000037f1: MSTORE
000037f2: PUSH2 0x37fa
000037f5: DUP2
000037f6: PUSH2 0x37c1
000037f9: JUMP
000037fa: JUMPDEST
000037fb: SWAP1
000037fc: POP
000037fd: SWAP2
000037fe: SWAP1
000037ff: POP
00003800: JUMP
00003801: JUMPDEST
00003802: PUSH32 0x506f6f6c20616c72656164792066756c6c000000000000000000000000000000
00003823: PUSH0
00003824: DUP3
00003825: ADD
00003826: MSTORE
00003827: POP
00003828: JUMP
00003829: JUMPDEST
0000382a: PUSH0
0000382b: PUSH2 0x3835
0000382e: PUSH1 0x11
00003830: DUP4
00003831: PUSH2 0x333c
00003834: JUMP
00003835: JUMPDEST
00003836: SWAP2
00003837: POP
00003838: PUSH2 0x3840
0000383b: DUP3
0000383c: PUSH2 0x3801
0000383f: JUMP
00003840: JUMPDEST
00003841: PUSH1 0x20
00003843: DUP3
00003844: ADD
00003845: SWAP1
00003846: POP
00003847: SWAP2
00003848: SWAP1
00003849: POP
0000384a: JUMP
0000384b: JUMPDEST
0000384c: PUSH0
0000384d: PUSH1 0x20
0000384f: DUP3
00003850: ADD
00003851: SWAP1
00003852: POP
00003853: DUP2
00003854: DUP2
00003855: SUB
00003856: PUSH0
00003857: DUP4
00003858: ADD
00003859: MSTORE
0000385a: PUSH2 0x3862
0000385d: DUP2
0000385e: PUSH2 0x3829
00003861: JUMP
00003862: JUMPDEST
00003863: SWAP1
00003864: POP
00003865: SWAP2
00003866: SWAP1
00003867: POP
00003868: JUMP
00003869: JUMPDEST
0000386a: PUSH32 0x43616e2774207374616b652074686174206d7563680000000000000000000000
0000388b: PUSH0
0000388c: DUP3
0000388d: ADD
0000388e: MSTORE
0000388f: POP
00003890: JUMP
00003891: JUMPDEST
00003892: PUSH0
00003893: PUSH2 0x389d
00003896: PUSH1 0x15
00003898: DUP4
00003899: PUSH2 0x333c
0000389c: JUMP
0000389d: JUMPDEST
0000389e: SWAP2
0000389f: POP
000038a0: PUSH2 0x38a8
000038a3: DUP3
000038a4: PUSH2 0x3869
000038a7: JUMP
000038a8: JUMPDEST
000038a9: PUSH1 0x20
000038ab: DUP3
000038ac: ADD
000038ad: SWAP1
000038ae: POP
000038af: SWAP2
000038b0: SWAP1
000038b1: POP
000038b2: JUMP
000038b3: JUMPDEST
000038b4: PUSH0
000038b5: PUSH1 0x20
000038b7: DUP3
000038b8: ADD
000038b9: SWAP1
000038ba: POP
000038bb: DUP2
000038bc: DUP2
000038bd: SUB
000038be: PUSH0
000038bf: DUP4
000038c0: ADD
000038c1: MSTORE
000038c2: PUSH2 0x38ca
000038c5: DUP2
000038c6: PUSH2 0x3891
000038c9: JUMP
000038ca: JUMPDEST
000038cb: SWAP1
000038cc: POP
000038cd: SWAP2
000038ce: SWAP1
000038cf: POP
000038d0: JUMP
000038d1: JUMPDEST
000038d2: PUSH0
000038d3: PUSH1 0x60
000038d5: DUP3
000038d6: ADD
000038d7: SWAP1
000038d8: POP
000038d9: PUSH2 0x38e4
000038dc: PUSH0
000038dd: DUP4
000038de: ADD
000038df: DUP7
000038e0: PUSH2 0x3314
000038e3: JUMP
000038e4: JUMPDEST
000038e5: PUSH2 0x38f1
000038e8: PUSH1 0x20
000038ea: DUP4
000038eb: ADD
000038ec: DUP6
000038ed: PUSH2 0x3314
000038f0: JUMP
000038f1: JUMPDEST
000038f2: PUSH2 0x38fe
000038f5: PUSH1 0x40
000038f7: DUP4
000038f8: ADD
000038f9: DUP5
000038fa: PUSH2 0x313f
000038fd: JUMP
000038fe: JUMPDEST
000038ff: SWAP5
00003900: SWAP4
00003901: POP
00003902: POP
00003903: POP
00003904: POP
00003905: JUMP
00003906: JUMPDEST
00003907: PUSH32 0x43616e277420636c61696d2c2079657400000000000000000000000000000000
00003928: PUSH0
00003929: DUP3
0000392a: ADD
0000392b: MSTORE
0000392c: POP
0000392d: JUMP
0000392e: JUMPDEST
0000392f: PUSH0
00003930: PUSH2 0x393a
00003933: PUSH1 0x10
00003935: DUP4
00003936: PUSH2 0x333c
00003939: JUMP
0000393a: JUMPDEST
0000393b: SWAP2
0000393c: POP
0000393d: PUSH2 0x3945
00003940: DUP3
00003941: PUSH2 0x3906
00003944: JUMP
00003945: JUMPDEST
00003946: PUSH1 0x20
00003948: DUP3
00003949: ADD
0000394a: SWAP1
0000394b: POP
0000394c: SWAP2
0000394d: SWAP1
0000394e: POP
0000394f: JUMP
00003950: JUMPDEST
00003951: PUSH0
00003952: PUSH1 0x20
00003954: DUP3
00003955: ADD
00003956: SWAP1
00003957: POP
00003958: DUP2
00003959: DUP2
0000395a: SUB
0000395b: PUSH0
0000395c: DUP4
0000395d: ADD
0000395e: MSTORE
0000395f: PUSH2 0x3967
00003962: DUP2
00003963: PUSH2 0x392e
00003966: JUMP
00003967: JUMPDEST
00003968: SWAP1
00003969: POP
0000396a: SWAP2
0000396b: SWAP1
0000396c: POP
0000396d: JUMP
0000396e: JUMPDEST
0000396f: PUSH32 0x416c726561647920436c61696d65640000000000000000000000000000000000
00003990: PUSH0
00003991: DUP3
00003992: ADD
00003993: MSTORE
00003994: POP
00003995: JUMP
00003996: JUMPDEST
00003997: PUSH0
00003998: PUSH2 0x39a2
0000399b: PUSH1 0x0f
0000399d: DUP4
0000399e: PUSH2 0x333c
000039a1: JUMP
000039a2: JUMPDEST
000039a3: SWAP2
000039a4: POP
000039a5: PUSH2 0x39ad
000039a8: DUP3
000039a9: PUSH2 0x396e
000039ac: JUMP
000039ad: JUMPDEST
000039ae: PUSH1 0x20
000039b0: DUP3
000039b1: ADD
000039b2: SWAP1
000039b3: POP
000039b4: SWAP2
000039b5: SWAP1
000039b6: POP
000039b7: JUMP
000039b8: JUMPDEST
000039b9: PUSH0
000039ba: PUSH1 0x20
000039bc: DUP3
000039bd: ADD
000039be: SWAP1
000039bf: POP
000039c0: DUP2
000039c1: DUP2
000039c2: SUB
000039c3: PUSH0
000039c4: DUP4
000039c5: ADD
000039c6: MSTORE
000039c7: PUSH2 0x39cf
000039ca: DUP2
000039cb: PUSH2 0x3996
000039ce: JUMP
000039cf: JUMPDEST
000039d0: SWAP1
000039d1: POP
000039d2: SWAP2
000039d3: SWAP1
000039d4: POP
000039d5: JUMP
000039d6: JUMPDEST
000039d7: PUSH0
000039d8: DUP2
000039d9: SWAP1
000039da: POP
000039db: SWAP3
000039dc: SWAP2
000039dd: POP
000039de: POP
000039df: JUMP
000039e0: JUMPDEST
000039e1: POP
000039e2: JUMP
000039e3: JUMPDEST
000039e4: PUSH0
000039e5: PUSH2 0x39ee
000039e8: PUSH0
000039e9: DUP4
000039ea: PUSH2 0x39d6
000039ed: JUMP
000039ee: JUMPDEST
000039ef: SWAP2
000039f0: POP
000039f1: PUSH2 0x39f9
000039f4: DUP3
000039f5: PUSH2 0x39e0
000039f8: JUMP
000039f9: JUMPDEST
000039fa: PUSH0
000039fb: DUP3
000039fc: ADD
000039fd: SWAP1
000039fe: POP
000039ff: SWAP2
00003a00: SWAP1
00003a01: POP
00003a02: JUMP
00003a03: JUMPDEST
00003a04: PUSH0
00003a05: PUSH2 0x3a0d
00003a08: DUP3
00003a09: PUSH2 0x39e3
00003a0c: JUMP
00003a0d: JUMPDEST
00003a0e: SWAP2
00003a0f: POP
00003a10: DUP2
00003a11: SWAP1
00003a12: POP
00003a13: SWAP2
00003a14: SWAP1
00003a15: POP
00003a16: JUMP
00003a17: JUMPDEST
00003a18: PUSH32 0x4661696c656420746f2073656e64204574686572000000000000000000000000
00003a39: PUSH0
00003a3a: DUP3
00003a3b: ADD
00003a3c: MSTORE
00003a3d: POP
00003a3e: JUMP
00003a3f: JUMPDEST
00003a40: PUSH0
00003a41: PUSH2 0x3a4b
00003a44: PUSH1 0x14
00003a46: DUP4
00003a47: PUSH2 0x333c
00003a4a: JUMP
00003a4b: JUMPDEST
00003a4c: SWAP2
00003a4d: POP
00003a4e: PUSH2 0x3a56
00003a51: DUP3
00003a52: PUSH2 0x3a17
00003a55: JUMP
00003a56: JUMPDEST
00003a57: PUSH1 0x20
00003a59: DUP3
00003a5a: ADD
00003a5b: SWAP1
00003a5c: POP
00003a5d: SWAP2
00003a5e: SWAP1
00003a5f: POP
00003a60: JUMP
00003a61: JUMPDEST
00003a62: PUSH0
00003a63: PUSH1 0x20
00003a65: DUP3
00003a66: ADD
00003a67: SWAP1
00003a68: POP
00003a69: DUP2
00003a6a: DUP2
00003a6b: SUB
00003a6c: PUSH0
00003a6d: DUP4
00003a6e: ADD
00003a6f: MSTORE
00003a70: PUSH2 0x3a78
00003a73: DUP2
00003a74: PUSH2 0x3a3f
00003a77: JUMP
00003a78: JUMPDEST
00003a79: SWAP1
00003a7a: POP
00003a7b: SWAP2
00003a7c: SWAP1
00003a7d: POP
00003a7e: JUMP
00003a7f: JUMPDEST
00003a80: PUSH32 0x5a65726f20616464726573732076616c69646174696f6e000000000000000000
00003aa1: PUSH0
00003aa2: DUP3
00003aa3: ADD
00003aa4: MSTORE
00003aa5: POP
00003aa6: JUMP
00003aa7: JUMPDEST
00003aa8: PUSH0
00003aa9: PUSH2 0x3ab3
00003aac: PUSH1 0x17
00003aae: DUP4
00003aaf: PUSH2 0x333c
00003ab2: JUMP
00003ab3: JUMPDEST
00003ab4: SWAP2
00003ab5: POP
00003ab6: PUSH2 0x3abe
00003ab9: DUP3
00003aba: PUSH2 0x3a7f
00003abd: JUMP
00003abe: JUMPDEST
00003abf: PUSH1 0x20
00003ac1: DUP3
00003ac2: ADD
00003ac3: SWAP1
00003ac4: POP
00003ac5: SWAP2
00003ac6: SWAP1
00003ac7: POP
00003ac8: JUMP
00003ac9: JUMPDEST
00003aca: PUSH0
00003acb: PUSH1 0x20
00003acd: DUP3
00003ace: ADD
00003acf: SWAP1
00003ad0: POP
00003ad1: DUP2
00003ad2: DUP2
00003ad3: SUB
00003ad4: PUSH0
00003ad5: DUP4
00003ad6: ADD
00003ad7: MSTORE
00003ad8: PUSH2 0x3ae0
00003adb: DUP2
00003adc: PUSH2 0x3aa7
00003adf: JUMP
00003ae0: JUMPDEST
00003ae1: SWAP1
00003ae2: POP
00003ae3: SWAP2
00003ae4: SWAP1
00003ae5: POP
00003ae6: JUMP
00003ae7: JUMPDEST
00003ae8: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061
00003b09: PUSH0
00003b0a: DUP3
00003b0b: ADD
00003b0c: MSTORE
00003b0d: PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000
00003b2e: PUSH1 0x20
00003b30: DUP3
00003b31: ADD
00003b32: MSTORE
00003b33: POP
00003b34: JUMP
00003b35: JUMPDEST
00003b36: PUSH0
00003b37: PUSH2 0x3b41
00003b3a: PUSH1 0x26
00003b3c: DUP4
00003b3d: PUSH2 0x333c
00003b40: JUMP
00003b41: JUMPDEST
00003b42: SWAP2
00003b43: POP
00003b44: PUSH2 0x3b4c
00003b47: DUP3
00003b48: PUSH2 0x3ae7
00003b4b: JUMP
00003b4c: JUMPDEST
00003b4d: PUSH1 0x40
00003b4f: DUP3
00003b50: ADD
00003b51: SWAP1
00003b52: POP
00003b53: SWAP2
00003b54: SWAP1
00003b55: POP
00003b56: JUMP
00003b57: JUMPDEST
00003b58: PUSH0
00003b59: PUSH1 0x20
00003b5b: DUP3
00003b5c: ADD
00003b5d: SWAP1
00003b5e: POP
00003b5f: DUP2
00003b60: DUP2
00003b61: SUB
00003b62: PUSH0
00003b63: DUP4
00003b64: ADD
00003b65: MSTORE
00003b66: PUSH2 0x3b6e
00003b69: DUP2
00003b6a: PUSH2 0x3b35
00003b6d: JUMP
00003b6e: JUMPDEST
00003b6f: SWAP1
00003b70: POP
00003b71: SWAP2
00003b72: SWAP1
00003b73: POP
00003b74: JUMP
00003b75: JUMPDEST
00003b76: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
00003b97: PUSH0
00003b98: DUP3
00003b99: ADD
00003b9a: MSTORE
00003b9b: POP
00003b9c: JUMP
00003b9d: JUMPDEST
00003b9e: PUSH0
00003b9f: PUSH2 0x3ba9
00003ba2: PUSH1 0x1b
00003ba4: DUP4
00003ba5: PUSH2 0x333c
00003ba8: JUMP
00003ba9: JUMPDEST
00003baa: SWAP2
00003bab: POP
00003bac: PUSH2 0x3bb4
00003baf: DUP3
00003bb0: PUSH2 0x3b75
00003bb3: JUMP
00003bb4: JUMPDEST
00003bb5: PUSH1 0x20
00003bb7: DUP3
00003bb8: ADD
00003bb9: SWAP1
00003bba: POP
00003bbb: SWAP2
00003bbc: SWAP1
00003bbd: POP
00003bbe: JUMP
00003bbf: JUMPDEST
00003bc0: PUSH0
00003bc1: PUSH1 0x20
00003bc3: DUP3
00003bc4: ADD
00003bc5: SWAP1
00003bc6: POP
00003bc7: DUP2
00003bc8: DUP2
00003bc9: SUB
00003bca: PUSH0
00003bcb: DUP4
00003bcc: ADD
00003bcd: MSTORE
00003bce: PUSH2 0x3bd6
00003bd1: DUP2
00003bd2: PUSH2 0x3b9d
00003bd5: JUMP
00003bd6: JUMPDEST
00003bd7: SWAP1
00003bd8: POP
00003bd9: SWAP2
00003bda: SWAP1
00003bdb: POP
00003bdc: JUMP
00003bdd: JUMPDEST
00003bde: PUSH0
00003bdf: PUSH1 0x20
00003be1: DUP3
00003be2: ADD
00003be3: SWAP1
00003be4: POP
00003be5: PUSH2 0x3bf0
00003be8: PUSH0
00003be9: DUP4
00003bea: ADD
00003beb: DUP5
00003bec: PUSH2 0x3222
00003bef: JUMP
00003bf0: JUMPDEST
00003bf1: SWAP3
00003bf2: SWAP2
00003bf3: POP
00003bf4: POP
00003bf5: JUMP
00003bf6: JUMPDEST
00003bf7: PUSH0
00003bf8: PUSH2 0x3c00
00003bfb: DUP3
00003bfc: PUSH2 0x30ce
00003bff: JUMP
00003c00: JUMPDEST
00003c01: SWAP2
00003c02: POP
00003c03: PUSH2 0x3c0b
00003c06: DUP4
00003c07: PUSH2 0x30ce
00003c0a: JUMP
00003c0b: JUMPDEST
00003c0c: SWAP3
00003c0d: POP
00003c0e: DUP3
00003c0f: DUP3
00003c10: MUL
00003c11: PUSH2 0x3c19
00003c14: DUP2
00003c15: PUSH2 0x30ce
00003c18: JUMP
00003c19: JUMPDEST
00003c1a: SWAP2
00003c1b: POP
00003c1c: DUP3
00003c1d: DUP3
00003c1e: DIV
00003c1f: DUP5
00003c20: EQ
00003c21: DUP4
00003c22: ISZERO
00003c23: OR
00003c24: PUSH2 0x3c30
00003c27: JUMPI
00003c28: PUSH2 0x3c2f
00003c2b: PUSH2 0x35f7
00003c2e: JUMP
00003c2f: JUMPDEST
00003c30: JUMPDEST
00003c31: POP
00003c32: SWAP3
00003c33: SWAP2
00003c34: POP
00003c35: POP
00003c36: JUMP
00003c37: JUMPDEST
00003c38: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003c59: PUSH0
00003c5a: MSTORE
00003c5b: PUSH1 0x12
00003c5d: PUSH1 0x04
00003c5f: MSTORE
00003c60: PUSH1 0x24
00003c62: PUSH0
00003c63: REVERT
00003c64: JUMPDEST
00003c65: PUSH0
00003c66: PUSH2 0x3c6e
00003c69: DUP3
00003c6a: PUSH2 0x30ce
00003c6d: JUMP
00003c6e: JUMPDEST
00003c6f: SWAP2
00003c70: POP
00003c71: PUSH2 0x3c79
00003c74: DUP4
00003c75: PUSH2 0x30ce
00003c78: JUMP
00003c79: JUMPDEST
00003c7a: SWAP3
00003c7b: POP
00003c7c: DUP3
00003c7d: PUSH2 0x3c89
00003c80: JUMPI
00003c81: PUSH2 0x3c88
00003c84: PUSH2 0x3c37
00003c87: JUMP
00003c88: JUMPDEST
00003c89: JUMPDEST
00003c8a: DUP3
00003c8b: DUP3
00003c8c: DIV
00003c8d: SWAP1
00003c8e: POP
00003c8f: SWAP3
00003c90: SWAP2
00003c91: POP
00003c92: POP
00003c93: JUMP
00003c94: JUMPDEST
00003c95: PUSH32 0x536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f
00003cb6: PUSH0
00003cb7: DUP3
00003cb8: ADD
00003cb9: MSTORE
00003cba: PUSH32 0x7700000000000000000000000000000000000000000000000000000000000000
00003cdb: PUSH1 0x20
00003cdd: DUP3
00003cde: ADD
00003cdf: MSTORE
00003ce0: POP
00003ce1: JUMP
00003ce2: JUMPDEST
00003ce3: PUSH0
00003ce4: PUSH2 0x3cee
00003ce7: PUSH1 0x21
00003ce9: DUP4
00003cea: PUSH2 0x333c
00003ced: JUMP
00003cee: JUMPDEST
00003cef: SWAP2
00003cf0: POP
00003cf1: PUSH2 0x3cf9
00003cf4: DUP3
00003cf5: PUSH2 0x3c94
00003cf8: JUMP
00003cf9: JUMPDEST
00003cfa: PUSH1 0x40
00003cfc: DUP3
00003cfd: ADD
00003cfe: SWAP1
00003cff: POP
00003d00: SWAP2
00003d01: SWAP1
00003d02: POP
00003d03: JUMP
00003d04: JUMPDEST
00003d05: PUSH0
00003d06: PUSH1 0x20
00003d08: DUP3
00003d09: ADD
00003d0a: SWAP1
00003d0b: POP
00003d0c: DUP2
00003d0d: DUP2
00003d0e: SUB
00003d0f: PUSH0
00003d10: DUP4
00003d11: ADD
00003d12: MSTORE
00003d13: PUSH2 0x3d1b
00003d16: DUP2
00003d17: PUSH2 0x3ce2
00003d1a: JUMP
00003d1b: JUMPDEST
00003d1c: SWAP1
00003d1d: POP
00003d1e: SWAP2
00003d1f: SWAP1
00003d20: POP
00003d21: JUMP
00003d22: JUMPDEST
00003d23: PUSH0
00003d24: DUP2
00003d25: MLOAD
00003d26: SWAP1
00003d27: POP
00003d28: SWAP2
00003d29: SWAP1
00003d2a: POP
00003d2b: JUMP
00003d2c: JUMPDEST
00003d2d: DUP3
00003d2e: DUP2
00003d2f: DUP4
00003d30: MCOPY
00003d31: PUSH0
00003d32: DUP4
00003d33: DUP4
00003d34: ADD
00003d35: MSTORE
00003d36: POP
00003d37: POP
00003d38: POP
00003d39: JUMP
00003d3a: JUMPDEST
00003d3b: PUSH0
00003d3c: PUSH1 0x1f
00003d3e: NOT
00003d3f: PUSH1 0x1f
00003d41: DUP4
00003d42: ADD
00003d43: AND
00003d44: SWAP1
00003d45: POP
00003d46: SWAP2
00003d47: SWAP1
00003d48: POP
00003d49: JUMP
00003d4a: JUMPDEST
00003d4b: PUSH0
00003d4c: PUSH2 0x3d54
00003d4f: DUP3
00003d50: PUSH2 0x3d22
00003d53: JUMP
00003d54: JUMPDEST
00003d55: PUSH2 0x3d5e
00003d58: DUP2
00003d59: DUP6
00003d5a: PUSH2 0x333c
00003d5d: JUMP
00003d5e: JUMPDEST
00003d5f: SWAP4
00003d60: POP
00003d61: PUSH2 0x3d6e
00003d64: DUP2
00003d65: DUP6
00003d66: PUSH1 0x20
00003d68: DUP7
00003d69: ADD
00003d6a: PUSH2 0x3d2c
00003d6d: JUMP
00003d6e: JUMPDEST
00003d6f: PUSH2 0x3d77
00003d72: DUP2
00003d73: PUSH2 0x3d3a
00003d76: JUMP
00003d77: JUMPDEST
00003d78: DUP5
00003d79: ADD
00003d7a: SWAP2
00003d7b: POP
00003d7c: POP
00003d7d: SWAP3
00003d7e: SWAP2
00003d7f: POP
00003d80: POP
00003d81: JUMP
00003d82: JUMPDEST
00003d83: PUSH0
00003d84: PUSH1 0x20
00003d86: DUP3
00003d87: ADD
00003d88: SWAP1
00003d89: POP
00003d8a: DUP2
00003d8b: DUP2
00003d8c: SUB
00003d8d: PUSH0
00003d8e: DUP4
00003d8f: ADD
00003d90: MSTORE
00003d91: PUSH2 0x3d9a
00003d94: DUP2
00003d95: DUP5
00003d96: PUSH2 0x3d4a
00003d99: JUMP
00003d9a: JUMPDEST
00003d9b: SWAP1
00003d9c: POP
00003d9d: SWAP3
00003d9e: SWAP2
00003d9f: POP
00003da0: POP
00003da1: JUMP
00003da2: INVALID
00003da3: LOG2
00003da4: PUSH5 0x6970667358
00003daa: UNKNOWN(0x22)
00003dab: SLT
00003dac: KECCAK256
00003dad: POP
00003dae: UNKNOWN(0xE0)
00003daf: DIV
00003db0: SLT
00003db1: SWAP14
00003db2: SWAP3
00003db3: RETURNDATACOPY
00003db4: SWAP4
00003db5: PUSH32 0x7f79ea71f0c1fc67b7871916401d4b8bd2d22c2613a67964736f6c6343000819
00003dd6: STOP
00003dd7: 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: 0x25b17bc1ba95b3012f9c7d09237a603d7d037bbfcc923846b6361035aa89f43e
call_targets: 0xd2fe354cfebaa06f2140f13b66d0b3e1fc3ceec0
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x25b17bc1ba95b3012f9c7d09237a603d7d037bbfcc923846b6361035aa89f43e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd2fe354cfebaa06f2140f13b66d0b3e1fc3ceec0"
    ],
    "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": "0xb86e20f0",
            "selector": "0xb86e20f0",
            "calldata_variants": [
                "0xb86e20f0",
                "0xb86e20f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbc65d92a",
            "selector": "0xbc65d92a",
            "calldata_variants": [
                "0xbc65d92a",
                "0xbc65d92a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc69bebe4",
            "selector": "0xc69bebe4",
            "calldata_variants": [
                "0xc69bebe4",
                "0xc69bebe40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5931612",
            "selector": "0xf5931612",
            "calldata_variants": [
                "0xf5931612",
                "0xf59316120000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xac4afa38",
            "selector": "0xac4afa38",
            "calldata_variants": [
                "0xac4afa38",
                "0xac4afa380000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xadbbd04f",
            "selector": "0xadbbd04f",
            "calldata_variants": [
                "0xadbbd04f",
                "0xadbbd04f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb3f00674",
            "selector": "0xb3f00674",
            "calldata_variants": [
                "0xb3f00674",
                "0xb3f006740000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3029,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4158,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4462,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 9,
    "guards_detected": [
        {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 9
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x25b17bc1ba95b3012f9c7d09237a603d7d037bbfcc923846b6361035aa89f43e
call_targets: 0xd2fe354cfebaa06f2140f13b66d0b3e1fc3ceec0
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x25b17bc1ba95b3012f9c7d09237a603d7d037bbfcc923846b6361035aa89f43e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd2fe354cfebaa06f2140f13b66d0b3e1fc3ceec0"
    ],
    "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": "0xb86e20f0",
            "selector": "0xb86e20f0",
            "calldata_variants": [
                "0xb86e20f0",
                "0xb86e20f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbc65d92a",
            "selector": "0xbc65d92a",
            "calldata_variants": [
                "0xbc65d92a",
                "0xbc65d92a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc69bebe4",
            "selector": "0xc69bebe4",
            "calldata_variants": [
                "0xc69bebe4",
                "0xc69bebe40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5931612",
            "selector": "0xf5931612",
            "calldata_variants": [
                "0xf5931612",
                "0xf59316120000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xac4afa38",
            "selector": "0xac4afa38",
            "calldata_variants": [
                "0xac4afa38",
                "0xac4afa380000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xadbbd04f",
            "selector": "0xadbbd04f",
            "calldata_variants": [
                "0xadbbd04f",
                "0xadbbd04f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb3f00674",
            "selector": "0xb3f00674",
            "calldata_variants": [
                "0xb3f00674",
                "0xb3f006740000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3029,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4158,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4462,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 9,
    "guards_detected": [
        {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
low reentrancy codex External CALLs use computed target/value; untrusted-call and reentrancy risk depends on target control 65 no
view
evidence_json
{
    "evidence": "BYTECODE_BUNDLE.json lists 9 CALL sites with target_expression_category=\"computed\" and value_expression_category=\"computed\" plus returndata_checked=null. Detector findings flag \u201cUntrusted CALL target/value reachable\u201d and \u201cETH value transfer possible,\u201d but validation did not confirm variable targets, so impact is uncertain.",
    "locations": [
        "pc:3029",
        "pc:4158",
        "pc:4462",
        "pc:5046",
        "pc:5231",
        "pc:7372",
        "pc:8451",
        "pc:9806",
        "pc:12104"
    ],
    "recommendation": "Trace each CALL site to confirm whether the target/value are fixed or owner-controlled and whether state updates occur before the call. If any are user-controlled or send ETH, apply checks-effects-interactions and/or a reentrancy guard, and validate return data explicitly.",
    "exploit_scenario": "If any of the CALLs take a user-influenced address or transfer ETH before state is fully updated, an attacker could redirect calls or reenter through a malicious contract, potentially draining funds or breaking accounting invariants. Bytecode evidence does not prove target control, so this is a conditional risk."
}