019bb004-7b2e-72f1-98f3-d97b5c502053
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| 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 |
{
"status": "not_proxy"
}
No slither job recorded yet.
{"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"]}]}
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
{
"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
}
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
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_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 |
viewtrace_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 | — |
viewevidence_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."
}
|