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

Analysis Run

019bb2d5-fdaa-7097-b390-aad7f7603684

complete
Chain ID
1
Address
Block Number
Created
Mon, Jan 12, 2026 3:32 PM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
39664 artifact.fetch complete 1 / 3 3 months ago
39665 proxy.resolve complete 1 / 3 3 months ago
39666 tool.cast_disasm complete 1 / 3 3 months ago
39667 analysis.bundle complete 1 / 3 3 months ago
39668 capability.graph complete 1 / 3 3 months ago
39669 detector.run complete 1 / 3 3 months ago
39670 validation.fork complete 1 / 3 3 months ago
39749 report.consolidate complete 1 / 6 3 months ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Bytecode shows multiple computed external CALLs (some with ETH value) and no detected auth guards; confirm access control around these call paths.
View stdout
{"no_findings":false,"summary":"Bytecode shows multiple computed external CALLs (some with ETH value) and no detected auth guards; confirm access control around these call paths.","findings":[{"severity":"medium","category":"other","title":"Computed external CALLs with ETH value may be reachable without strong guards","exploit_scenario":"If any public/external function forwards calldata or value to an arbitrary target (CALL target/value computed), a user could trigger ETH transfers to attacker-controlled addresses or reenter during the call, potentially draining funds or breaking invariants. Detector validation saw a constant target in one trace, but callsites are marked computed and guard detection found none, so exposure is uncertain.","recommendation":"Restrict any arbitrary CALL functionality to trusted roles, validate/whitelist targets and value, and add reentrancy protection or checks-effects-interactions around state updates. Consider logging and limiting max value per call.","evidence":"Detector findings report 10 CALLs with computed target/value and ETH transfer possible; guard detection is empty. Callsites show `returndata_checked: null` and `target_expression_category: computed` for all CALLs.","locations":["pc:1779","pc:3262","pc:3474","pc:4710","pc:7069","pc:8066","pc:8847","pc:9574","pc:10708","pc:12706"]},{"severity":"low","category":"access_control","title":"Auth guard detection absent for potentially privileged selectors","exploit_scenario":"Selectors include common ownership-management functions (e.g., `0xf2fde38b`, `0x8da5cb5b`), but the analysis artifact shows no detected guards. If these or other admin-like functions are missing access checks, an attacker could seize ownership or privileged roles.","recommendation":"Manually verify access control on ownership/executor/admin setters and any function that can move funds or perform arbitrary calls. Ensure onlyOwner/onlyExecutor-style checks are in place and tested.","evidence":"`auth.guards` is empty in the analysis artifact and `guards_detected` is empty in detector evidence, indicating no recognized authorization checks around functions.","locations":["selector:0xf2fde38b","selector:0x8da5cb5b"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-_xbvmy2u
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019bb309-ffe7-7812-b4b5-4af4ff58b1b2
--------
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 file**
exec
/bin/bash -lc ls in /tmp/codex-_xbvmy2u succeeded in 5ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 8ms:
{
  "analysis_artifact": {
    "address": "0x69327f95182910aef8b45a1968b64a0b420178fb",
    "artifact_hash": "0xdab0665f0dac7c718fe520d0441f37c69fed82bf3a964e43d59cc06ce75c9e9b",
    "artifact_json": {
      "auth": {
        "guards": []
      },
      "basic_blocks": [
        {
          "end_pc": 12,
          "hash": "0x3ad88833e9c0f6a1c3f2bf75041760d2697f5355ea1cd9d275e4aa2672cabdf6",
          "opcodes": [
            "PUSH1",
            "PUSH1",
            "MSTORE",
            "PUSH1",
            "CALLDATASIZE",
            "LT",
            "PUSH2",

thinking
**Searching for proxy patterns**
exec
/bin/bash -lc 'rg -n "proxy|eip-1967|beacon|delegatecall|upgrade" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 16ms:
19295:            "delegatecall": 0,
19414:            "delegatecall": 0,
19533:            "delegatecall": 0,
19652:            "delegatecall": 0,
19771:            "delegatecall": 0,
19890:            "delegatecall": 0,
20009:            "delegatecall": 0,
20128:            "delegatecall": 0,
20247:            "delegatecall": 0,
20366:            "delegatecall": 0,
20485:            "delegatecall": 0,
20604:            "delegatecall": 0,
20723:            "delegatecall": 0,
20842:            "delegatecall": 0,
20961:            "delegatecall": 0,
21080:            "delegatecall": 0,
21199:            "delegatecall": 0,
21318:            "delegatecall": 0,
21437:            "delegatecall": 0,
21556:            "delegatecall": 0,

thinking
**Searching for authentication-related code**
exec
/bin/bash -lc 'rg -n "guards|auth|owner|admin|role|access" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 7ms:
6:      "auth": {
7:        "guards": []
19288:          "auth": {
19289:            "guards": []
19407:          "auth": {
19408:            "guards": []
19526:          "auth": {
19527:            "guards": []
19645:          "auth": {
19646:            "guards": []
19764:          "auth": {
19765:            "guards": []
19883:          "auth": {
19884:            "guards": []
20002:          "auth": {
20003:            "guards": []
20121:          "auth": {
20122:            "guards": []
20240:          "auth": {
20241:            "guards": []

thinking
**Checking for owner and access guards**
exec
/bin/bash -lc 'rg -n "8da5cb5b|f2fde38b|owner" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 11ms:
19159:          "selector": "0xf2fde38b"
19207:          "selector": "0x8da5cb5b"
19292:          "selector": "0xf2fde38b",
20720:          "selector": "0x8da5cb5b",
23097:        "0xf2fde38b",
23109:        "0x8da5cb5b",
23287:      "full": "0x6080604052600436106101e75760003560e01c80638da5cb5b11610102578063da3e339711610095578063f2fde38b11610064578063f2fde38b14610587578063f3ad0e75146105a7578063f3fef3a3146105d6578063f598388c146105f6576101ee565b8063da3e339714610507578063db9fb4ca14610527578063e72b602614610547578063ede4edd014610567576101ee565b8063aa4f6012116100d1578063aa4f601214610487578063b61d27f6146104a7578063bfdc4a26146104c7578063c4e2c1e6146104e7576101ee565b80638da5cb5b146103f85780639183ca031461041a5780639ac2a0111461043a578063a66392d514610467576101ee565b80633419ba231161017a578063554994f211610149578063554994f21461038e5780636fbd99a0146103a3578063715018a6146103c35780637c27383b146103d8576101ee565b80633419ba231461030e57806339cc3ea31461032e5780633fe5d4251461034e5780634b8a35291461036e576101ee565b80632247463e116101b65780632247463e1461028e57806322867d78146102ae57806324788429146102ce5780632fb08411146102ee576101ee565b8063077d97d7146101f35780631a9a35e6146102155780631f5a0bbe1461024b578063211a5e6c1461026b576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061021361020e36600461371d565b610616565b005b34801561022157600080fd5b506102356102303660046134ce565b610739565b6040516102429190613ccc565b60405180910390f35b34801561025757600080fd5b506102136102663660046134ce565b61074b565b34801561027757600080fd5b50610280610848565b604051610242929190613cd5565b34801561029a57600080fd5b506102136102a936600461389c565b610c16565b3480156102ba57600080fd5b506102136102c936600461357e565b610cd7565b3480156102da57600080fd5b506102136102e93660046134ce565b610dd9565b3480156102fa57600080fd5b5061021361030936600461357e565b610ed0565b34801561031a57600080fd5b50610213610329366004613506565b610f55565b34801561033a57600080fd5b506102806103493660046134ce565b610fc1565b34801561035a57600080fd5b506102136103693660046134ce565b611158565b34801561037a57600080fd5b5061021361038936600461357e565b6112e0565b34801561039a57600080fd5b506102806113b4565b3480156103af57600080fd5b506102136103be36600461389c565b611476565b3480156103cf57600080fd5b50610213611538565b3480156103e457600080fd5b506102136103f33660046134ce565b611603565b34801561040457600080fd5b5061040d611679565b604051610242919061394a565b34801561042657600080fd5b50610213610435366004613641565b611695565b34801561044657600080fd5b5061045a6104553660046134ce565b6119cd565b60405161024291906139eb565b34801561047357600080fd5b5061021361048236600461357e565b6119e2565b34801561049357600080fd5b506102136104a236600461357e565b611a67565b3480156104b357600080fd5b506102136104c23660046135ea565b611b0e565b3480156104d357600080fd5b506102136104e2366004613641565b611bcd565b3480156104f357600080fd5b506102136105023660046135a9565b611e50565b34801561051357600080fd5b5061021361052236600461353e565b612109565b34801561053357600080fd5b506102356105423660046134ce565b612170565b34801561055357600080fd5b5061021361056236600461357e565b612182565b34801561057357600080fd5b506102136105823660046134ce565b6121d6565b34801561059357600080fd5b506102136105a23660046134ce565b6122d1565b3480156105b357600080fd5b506105c76105c23660046134ce565b612407565b60405161024293929190613ce3565b3480156105e257600080fd5b506102136105f136600461357e565b612497565b34801561060257600080fd5b506102136106113660046134ce565b6126ec565b61061e612817565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461067b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b60405180910390fd5b60005b83518110156107335783818151811061069357fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff168382815181106106bd57fe5b60200260200101518383815181106106d157fe5b60200260200101516040516106e6919061392e565b60006040518083038185875af1925050503d8060008114610723576040519150601f19603f3d011682016040523d82523d6000602084013e610728565b606091505b50505060010161067e565b50505050565b60046020526000908152604090205481565b610753612817565b60005473ffffffffffffffffffffffffffffffffffffffff9081169116146107a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b8073ffffffffffffffffffffffffffffffffffffffff167f9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea260016040516107ee91906139eb565b60405180910390a273ffffffffffffffffffffffffffffffffffffffff16600090815260016020819052604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169091179055565b6040517fabfceffc0000000000000000000000000000000000000000000000000000000081526000908190606090733d9819210a31b4961b30ef54be2aed79b9c9cd3b9063abfceffc906108a090309060040161394a565b60006040518083038186803b1580156108b857600080fd5b505afa1580156108cc573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526109129190810190613684565b905061091c613235565b6000806000733d9819210a31b4961b30ef54be2aed79b9c9cd3b73ffffffffffffffffffffffffffffffffffffffff16637dc0d1d06040518163ffffffff1660e01b815260040160206040518083038186803b15801561097b57600080fd5b505afa15801561098f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b391906134ea565b905060005b8551811015610bfe5760008682815181106109cf57fe5b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663c37f68e2306040518263ffffffff1660e01b8152600401610a12919061394a565b60806040518083038186803b158015610a2a57600080fd5b505afa158015610a3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6291906138f9565b60808a01526060890152604088015294508415610a7e57600080fd5b604080516020810182526080880151815260c0880152517ffc57d4df00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84169063fc57d4df90610ae490849060040161394a565b60206040518083038186803b158015610afc57600080fd5b505afa158015610b10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3491906138b4565b60a08701819052610b4457600080fd5b604080516020810190915260a0870151815260e0870181905260c0870151610b6b9161281b565b61010088015293506000846003811115610b8157fe5b14610b8b57600080fd5b610ba386610100015187604001518860000151612907565b875293506000846003811115610bb557fe5b14610bbf57600080fd5b610bd68660e0015187606001518860200151612907565b602088015293506000846003811115610beb57fe5b14610bf557600080fd5b506001016109b8565b50836000015184602001519650965050505050509091565b3360009081526001602052604090205460ff16610c5f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b734ddc2d193948926d02f9b1fe9e1daa0718270ed573ffffffffffffffffffffffffffffffffffffffff16634e4d9fea826040518263ffffffff1660e01b81526004016000604051808303818588803b158015610cbb57600080fd5b505af1158015610ccf573d6000803e3d6000fd5b505050505050565b3360009081526001602052604090205460ff16610d20576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b6040517f0e75270200000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff841690630e75270290610d75908590600401613ccc565b602060405180830381600087803b158015610d8f57600080fd5b505af1158015610da3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc791906138b4565b90508015610dd457600080fd5b505050565b610de1612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610e35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b8073ffffffffffffffffffffffffffffffffffffffff167f9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea26000604051610e7c91906139eb565b60405180910390a273ffffffffffffffffffffffffffffffffffffffff16600090815260016020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b610ed8612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610f2c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b73ffffffffffffffffffffffffffffffffffffffff909116600090815260026020526040902055565b610f5d612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610fb1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b610fbd82826000612963565b5050565b600080610fcc613235565b6000808573ffffffffffffffffffffffffffffffffffffffff1663c37f68e2306040518263ffffffff1660e01b8152600401611008919061394a565b60806040518083038186803b15801561102057600080fd5b505afa158015611034573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105891906138f9565b6080870152606086015260408501529150811561107457600080fd5b60408051602080820183526080860151825260c0860182905273ffffffffffffffffffffffffffffffffffffffff89166000908152600290915291909120546110bd9190612a09565b60c0850152905060008160038111156110d257fe5b146110dc57600080fd5b6110f38360c0015184604001518560000151612907565b84529050600081600381111561110557fe5b1461110f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8616600090815260026020526040902054606084015161114391612a71565b60208401819052925194509192505050915091565b3360009081526001602052604090205460ff166111a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b6040805160018082528183019092526060916020808301908036833701905050905081816000815181106111d157fe5b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101526040517fc2998238000000000000000000000000000000000000000000000000000000008152606090733d9819210a31b4961b30ef54be2aed79b9c9cd3b9063c299823890611249908590600401613991565b600060405180830381600087803b15801561126357600080fd5b505af1158015611277573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526112bd91908101906137f8565b9050806000815181106112cc57fe5b6020026020010151600014610dd457600080fd5b3360009081526001602052604090205460ff16611329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b816113348383612ace565b61133c613292565b61134582612407565b73ffffffffffffffffffffffffffffffffffffffff85166000908152600460205260409020548151919450925082101590506113ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613c01565b5050505050565b6000806000806000733d9819210a31b4961b30ef54be2aed79b9c9cd3b73ffffffffffffffffffffffffffffffffffffffff16635ec88c79306040518263ffffffff1660e01b8152600401611409919061394a565b60606040518083038186803b15801561142157600080fd5b505afa158015611435573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145991906138cc565b9250925092508260001461146c57600080fd5b9093509150509091565b3360009081526001602052604090205460ff166114bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b6114dc734ddc2d193948926d02f9b1fe9e1daa0718270ed5611158565b734ddc2d193948926d02f9b1fe9e1daa0718270ed573ffffffffffffffffffffffffffffffffffffffff16631249c58b826040518263ffffffff1660e01b81526004016000604051808303818588803b158015610cbb57600080fd5b611540612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614611594576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b3360009081526001602052604090205460ff1661164c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b611676817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610cd7565b50565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b3360009081526001602052604090205460ff166116de576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b846116e7613292565b5060408051602081019091528281526116fe613292565b506040805160208101909152670dcef33a6f8380008152600061171f613292565b611729838561281b565b9092509050600082600381111561173c57fe5b1461174657600080fd5b61174e6132a5565b60408051602080820183528b8252606084018290528251908101909252600354825261177991612b23565b60808301529250600083600381111561178e57fe5b1461179857600080fd5b6117a28b8b612b5d565b6117ab8b612407565b6040840152602083015281525b6117ca81604001518260600151612ba7565b15611945576117e181608001518260000151612bae565b60a0830152925060008360038111156117f657fe5b1461180057600080fd5b61181281606001518260200151612bae565b60c08301529250600083600381111561182757fe5b1461183157600080fd5b60a081015160c082015161184491612c01565b60e08201528051611856908390612bae565b6101008301529250600083600381111561186c57fe5b1461187657600080fd5b602081015161010082015161188a91612c01565b610120820181905261189c9086612c43565b610140830152925060008360038111156118b257fe5b146118bc57600080fd5b60006118d18260e00151836101400151612c5a565b9050888110156118e15750611945565b73ffffffffffffffffffffffffffffffffffffffff8c16600090815260026020526040812054611912908390612c70565b905061191e8d82612cb2565b6119288d82612b5d565b6119318d612407565b604086015260208501528352506117b89050565b5050505050611952613292565b61195b82612407565b73ffffffffffffffffffffffffffffffffffffffff85166000908152600460205260409020548151919450925082101590506119c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613c01565b5050505050505050565b60016020526000908152604090205460ff1681565b6119ea612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614611a3e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b73ffffffffffffffffffffffffffffffffffffffff909116600090815260046020526040902055565b3360009081526001602052604090205460ff16611ab0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b611ab982611158565b6040517fa0712d6800000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff84169063a0712d6890610d75908590600401613ccc565b611b16612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614611b6a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b8273ffffffffffffffffffffffffffffffffffffffff168282604051611b90919061392e565b60006040518083038185875af1925050503d8060008114610ccf576040519150601f19603f3d011682016040523d82523d6000602084013e610ccf565b3360009081526001602052604090205460ff16611c16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b84611c1f613292565b506040805160208101909152828152611c36613292565b506040805160208101909152670dcef33a6f83800081526000611c57613292565b611c61838561281b565b90925090506000826003811115611c7457fe5b14611c7e57600080fd5b611c86613311565b60408051602080820183528b82526060840182905282519081019092526003548252611cb191612b23565b608083015292506000836003811115611cc657fe5b14611cd057600080fd5b611cda8b8b612d07565b611ce38b612407565b6040840152602083015281525b611d0281604001518260600151612d4c565b1561194557611d1981608001518260000151612bae565b60a083015292506000836003811115611d2e57fe5b14611d3857600080fd5b611d4a81606001518260200151612bae565b60c083015292506000836003811115611d5f57fe5b14611d6957600080fd5b60c081015160a0820151611d7c91612c01565b60e08201528051611d8e908390612bae565b61010083015292506000836003811115611da457fe5b14611dae57600080fd5b6020810151610100820151611dc291612c01565b610120820181905260e0820151600091611ddc9190612c5a565b905088811015611dec5750611945565b73ffffffffffffffffffffffffffffffffffffffff8c16600090815260026020526040812054611e1d908390612c70565b9050611e298d82612ace565b611e338d82612d07565b611e3c8d612407565b60408601526020850152835250611cf09050565b611e58612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614611eac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b73ffffffffffffffffffffffffffffffffffffffff8116611ef9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613a47565b600073ffffffffffffffffffffffffffffffffffffffff8416611f9f57503080319083821015611f55576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613adb565b60405173ffffffffffffffffffffffffffffffffffffffff84169085156108fc029086906000818181858888f19350505050158015611f98573d6000803e3d6000fd5b505061209e565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516906370a0823190611ff190309060040161394a565b60206040518083038186803b15801561200957600080fd5b505afa15801561201d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061204191906138b4565b90508281101561207d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613adb565b61209e73ffffffffffffffffffffffffffffffffffffffff85168385612d53565b8373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f9207361cc2a04b9c7a06691df1eb87c6a63957ae88bf01d0d18c81e3d1272099856040516120fb9190613ccc565b60405180910390a350505050565b612111612817565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614612165576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b610dd4838383612963565b60026020526000908152604090205481565b3360009081526001602052604090205460ff166121cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b816113348383612cb2565b3360009081526001602052604090205460ff1661221f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b6040517fede4edd0000000000000000000000000000000000000000000000000000000008152600090733d9819210a31b4961b30ef54be2aed79b9c9cd3b9063ede4edd09061227290859060040161394a565b602060405180830381600087803b15801561228c57600080fd5b505af11580156122a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122c491906138b4565b90508015610fbd57600080fd5b6122d9612817565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461232d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b73ffffffffffffffffffffffffffffffffffffffff811661237a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613a7e565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600080612412613292565b60008061241e86610fc1565b91509150816000141561244b57600080604051806020016040528060008152509450945094505050612490565b6000612455613292565b612468846124638186612c01565b612df4565b9092509050600082600381111561247b57fe5b1461248557600080fd5b929550909350909150505b9193909250565b61249f612817565b60005473ffffffffffffffffffffffffffffffffffffffff9081169116146124f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b6f565b600073ffffffffffffffffffffffffffffffffffffffff83166125835750308031908282101561254f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613adb565b604051339084156108fc029085906000818181858888f1935050505015801561257c573d6000803e3d6000fd5b5050612682565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416906370a08231906125d590309060040161394a565b60206040518083038186803b1580156125ed57600080fd5b505afa158015612601573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061262591906138b4565b905081811015612661576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613adb565b61268273ffffffffffffffffffffffffffffffffffffffff84163384612d53565b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f9207361cc2a04b9c7a06691df1eb87c6a63957ae88bf01d0d18c81e3d1272099846040516126df9190613ccc565b60405180910390a3505050565b3360009081526001602052604090205460ff16612735576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613ba4565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff8316906370a082319061278a90309060040161394a565b60206040518083038186803b1580156127a257600080fd5b505afa1580156127b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127da91906138b4565b905060008273ffffffffffffffffffffffffffffffffffffffff1663db006a75836040518263ffffffff1660e01b8152600401610d759190613ccc565b3390565b6000612825613292565b60008061283a86600001518660000151612ea5565b9092509050600082600381111561284d57fe5b1461286c57506040805160208101909152600081529092509050612900565b6000806128816706f05b59d3b2000084612ee4565b9092509050600082600381111561289457fe5b146128b75781604051806020016040528060008152509550955050505050612900565b6000806128cc83670de0b6b3a7640000612f0a565b909250905060008260038111156128df57fe5b146128e657fe5b604080516020810190915290815260009750955050505050505b9250929050565b6000806000612914613292565b61291e8787612a09565b9092509050600082600381111561293157fe5b14612942575091506000905061295b565b61295461294e82612f35565b86612ee4565b9350935050505b935093915050565b6040517f095ea7b300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84169063095ea7b3906129b7908590859060040161396b565b602060405180830381600087803b1580156129d157600080fd5b505af11580156129e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610733919061387c565b6000612a13613292565b600080612a24866000015186612ea5565b90925090506000826003811115612a3757fe5b14612a5657506040805160208101909152600081529092509050612900565b60408051602081019091529081526000969095509350505050565b600082612a8057506000612ac8565b82820282848281612a8d57fe5b0414612ac5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613b12565b90505b92915050565b6040517fc5ebeaec00000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff84169063c5ebeaec90610d75908590600401613ccc565b6000612b2d613292565b600080612b4286600001518660000151612f44565b60408051602081019091529081529097909650945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216734ddc2d193948926d02f9b1fe9e1daa0718270ed51415612b9d57612b9881610c16565b610fbd565b610fbd8282610cd7565b5190511190565b6000806000612bbb613292565b612bc58686612a09565b90925090506000826003811115612bd857fe5b14612be95750915060009050612900565b6000612bf482612f35565b9350935050509250929050565b6000612ac583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612f67565b6000806000612c50613292565b612bc58686612fad565b6000818310612c695781612ac5565b5090919050565b6000612ac583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061300c565b6040517f852a12e300000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff84169063852a12e390610d75908590600401613ccc565b73ffffffffffffffffffffffffffffffffffffffff8216734ddc2d193948926d02f9b1fe9e1daa0718270ed51415612d4257612b9881611476565b610fbd8282611a67565b5190511090565b610dd48363a9059cbb60e01b8484604051602401612d7292919061396b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261305d565b6000612dfe613292565b600080612e1386670de0b6b3a7640000612ea5565b90925090506000826003811115612e2657fe5b14612e4557506040805160208101909152600081529092509050612900565b600080612e528388612f0a565b90925090506000826003811115612e6557fe5b14612e885781604051806020016040528060008152509550955050505050612900565b604080516020810190915290815260009890975095505050505050565b60008083612eb857506000905080612900565b83830283858281612ec557fe5b0414612ed957600260009250925050612900565b600092509050612900565b600080838301848110612efc57600092509050612900565b600260009250925050612900565b60008082612f1e5750600190506000612900565b6000838581612f2957fe5b04915091509250929050565b51670de0b6b3a7640000900490565b600080838311612f5b575060009050818303612900565b50600390506000612900565b60008184841115612fa5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067291906139f6565b505050900390565b6000612fb7613292565b600080612fcc670de0b6b3a764000087612ea5565b90925090506000826003811115612fdf57fe5b14612ffe57506040805160208101909152600081529092509050612900565b612bf4818660000151612df4565b60008183613047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067291906139f6565b50600083858161305357fe5b0495945050505050565b60606130bf826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166131139092919063ffffffff16565b805190915015610dd457808060200190518101906130dd919061387c565b610dd4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613c6f565b6060613122848460008561312a565b949350505050565b60606131358561322f565b61316b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067290613c38565b600060608673ffffffffffffffffffffffffffffffffffffffff168587604051613195919061392e565b60006040518083038185875af1925050503d80600081146131d2576040519150601f19603f3d011682016040523d82523d6000602084013e6131d7565b606091505b509150915081156131eb5791506131229050565b8051156131fb5780518082602001fd5b836040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067291906139f6565b3b151590565b604051806101200160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001613273613292565b8152602001613280613292565b815260200161328d613292565b905290565b6040518060200160405280600081525090565b60405180610160016040528060008152602001600081526020016132c7613292565b81526020016132d4613292565b81526020016132e1613292565b81526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518061014001604052806000815260200160008152602001613333613292565b8152602001613340613292565b815260200161334d613292565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b8035612ac881613d6d565b600082601f830112613391578081fd5b81356133a461339f82613d21565b613cfa565b818152915060208083019084810160005b848110156133de576133cc888484358a0101613447565b845292820192908201906001016133b5565b505050505092915050565b600082601f8301126133f9578081fd5b813561340761339f82613d21565b81815291506020808301908481018184028601820187101561342857600080fd5b60005b848110156133de5781358452928201929082019060010161342b565b600082601f830112613457578081fd5b813567ffffffffffffffff81111561346d578182fd5b61349e60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601613cfa565b91508082528360208285010111156134b557600080fd5b8060208401602084013760009082016020015292915050565b6000602082840312156134df578081fd5b8135612ac581613d6d565b6000602082840312156134fb578081fd5b8151612ac581613d6d565b60008060408385031215613518578081fd5b823561352381613d6d565b9150602083013561353381613d6d565b809150509250929050565b600080600060608486031215613552578081fd5b833561355d81613d6d565b9250602084013561356d81613d6d565b929592945050506040919091013590565b60008060408385031215613590578182fd5b823561359b81613d6d565b946020939093013593505050565b6000806000606084860312156135bd578283fd5b83356135c881613d6d565b92506020840135915060408401356135df81613d6d565b809150509250925092565b6000806000606084860312156135fe578283fd5b833561360981613d6d565b925060208401359150604084013567ffffffffffffffff81111561362b578182fd5b61363786828701613447565b9150509250925092565b600080600080600060a08688031215613658578081fd5b853561366381613d6d565b97602087013597506040870135966060810135965060800135945092505050565b60006020808385031215613696578182fd5b825167ffffffffffffffff8111156136ac578283fd5b8301601f810185136136bc578283fd5b80516136ca61339f82613d21565b81815283810190838501858402850186018910156136e6578687fd5b8694505b838510156137115780516136fd81613d6d565b8352600194909401939185019185016136ea565b50979650505050505050565b600080600060608486031215613731578081fd5b833567ffffffffffffffff80821115613748578283fd5b818601915086601f83011261375b578283fd5b813561376961339f82613d21565b80828252602080830192508086018b828387028901011115613789578788fd5b8796505b848710156137b35761379f8c82613376565b84526001969096019592810192810161378d565b5090975088013593505050808211156137ca578283fd5b6137d6878388016133e9565b935060408601359150808211156137eb578283fd5b5061363786828701613381565b6000602080838503121561380a578182fd5b825167ffffffffffffffff811115613820578283fd5b8301601f81018513613830578283fd5b805161383e61339f82613d21565b818152838101908385018584028501860189101561385a578687fd5b8694505b8385101561371157805183526001949094019391850191850161385e565b60006020828403121561388d578081fd5b81518015158114612ac5578182fd5b6000602082840312156138ad578081fd5b5035919050565b6000602082840312156138c5578081fd5b5051919050565b6000806000606084860312156138e0578081fd5b8351925060208401519150604084015190509250925092565b6000806000806080858703121561390e578182fd5b505082516020840151604085015160609095015191969095509092509050565b60008251613940818460208701613d41565b9190910192915050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b73ffffffffffffffffffffffffffffffffffffffff929092168252602082015260400190565b6020808252825182820181905260009190848201906040850190845b818110156139df57835173ffffffffffffffffffffffffffffffffffffffff16835292840192918401916001016139ad565b50909695505050505050565b901515815260200190565b6000602082528251806020840152613a15816040850160208701613d41565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b6020808252600f908201527f496e76616c696420616464726573730000000000000000000000000000000000604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201527f6464726573730000000000000000000000000000000000000000000000000000606082015260800190565b60208082526012908201527f496e73756666696369656e742066756e64730000000000000000000000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60408201527f7700000000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526026908201527f45786563757461626c653a2063616c6c6572206973206e6f742074686520657860408201527f656375746f720000000000000000000000000000000000000000000000000000606082015260800190565b60208082526014908201527f44616e6765726f7573204c462072656163686564000000000000000000000000604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60408201527f6f74207375636365656400000000000000000000000000000000000000000000606082015260800190565b90815260200190565b918252602082015260400190565b928352602083019190915251604082015260600190565b60405181810167ffffffffffffffff81118282101715613d1957600080fd5b604052919050565b600067ffffffffffffffff821115613d37578081fd5b5060209081020190565b60005b83811015613d5c578181015183820152602001613d44565b838111156107335750506000910152565b73ffffffffffffffffffffffffffffffffffffffff8116811461167657600080fdfea2646970667358221220a3a6feb98405887f310afef72f668914ab1156091f768994ff10b6831f5c375264736f6c634300060c0033",
27840:          "from": "fn:0xf2fde38b",
27885:          "from": "fn:0x8da5cb5b",
34442:          "id": "fn:0xf2fde38b",
34443:          "selector": "0xf2fde38b",
34514:          "id": "fn:0x8da5cb5b",
34515:          "selector": "0x8da5cb5b",

thinking
**Analyzing bytecode and call patterns**
exec
/bin/bash -lc 'rg -n "storage|slot|mapping" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 7ms:
19299:          "storage": {
19301:            "slots": [
19305:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19310:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19315:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19320:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19325:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19330:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19335:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19340:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19345:                "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
19350:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19355:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
19360:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19365:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19370:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
19375:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19380:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19385:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
19390:                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"

thinking
**Analyzing bytecode for access control and call risks**

I'm examining a complex bytecode that includes Ownable and executor role strings suggesting access control, alongside multiple external calls—some with ETH value. There’s a potential risk where computed call targets might be reachable, but available guards aren’t clearly detected, so I’m cautiously considering medium to low severity findings focused on untrusted external calls, missing reentrancy guards, and possible unchecked call results.
exec
/bin/bash -lc 'rg -n "Executable|executor|Ownable|SafeERC20|SafeMath|Dangerous" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u exited 1 in 7ms:


thinking
**Analyzing hex-encoded ASCII in bytecode**
exec
/bin/bash -lc 'rg -n "reentrancy|re-entr" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u exited 1 in 6ms:


thinking
**Analyzing reentrancy and external calls**
exec
/bin/bash -lc 'rg -n "callgraph|call_graph|calls" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 6ms:
14482:      "callsites": [
34322:          "type": "callsite"
34328:          "type": "callsite"
34334:          "type": "callsite"
34340:          "type": "callsite"
34346:          "type": "callsite"
34352:          "type": "callsite"
34358:          "type": "callsite"
34364:          "type": "callsite"
34370:          "type": "callsite"
34376:          "type": "callsite"
34382:          "type": "callsite"
34388:          "type": "callsite"
34394:          "type": "callsite"
34400:          "type": "callsite"
34406:          "type": "callsite"
34412:          "type": "callsite"
34418:          "type": "callsite"
34424:          "type": "callsite"
34430:          "type": "callsite"

thinking
**Inspecting callsites section**
exec
/bin/bash -lc "sed -n '14460,14630p' BYTECODE_BUNDLE.json" in /tmp/codex-_xbvmy2u succeeded in 19ms:
          "end_pc": 15811,
          "hash": "0x97d6533af4156e0db8d8e7fd61f473e7b9b094076dfac20644496efeda12164f",
          "opcodes": [
            "OP_B9",
            "OP_84",
            "SDIV",
            "OP_88",
            "PUSH32",
            "OP_0C",
            "STOP"
          ],
          "start_pc": 15773
        },
        {
          "end_pc": 15812,
          "hash": "0xdd3a989a0cc40bb2e4db36314e16217446ca16b90e51a5e40b5ce85c8fe540db",
          "opcodes": [
            "CALLER"
          ],
          "start_pc": 15812

thinking
**Investigating call target trustworthiness**
exec
/bin/bash -lc 'rg -n "evidence|bundle" BYTECODE_BUNDLE.json' in /tmp/codex-_xbvmy2u succeeded in 7ms:
23280:      "proxy_evidence": {
34642:      "evidence_json": {
34694:      "evidence_json": {

thinking
**Summarizing security findings and crafting JSON output**
codex
{"no_findings":false,"summary":"Bytecode shows multiple computed external CALLs (some with ETH value) and no detected auth guards; confirm access control around these call paths.","findings":[{"severity":"medium","category":"other","title":"Computed external CALLs with ETH value may be reachable without strong guards","exploit_scenario":"If any public/external function forwards calldata or value to an arbitrary target (CALL target/value computed), a user could trigger ETH transfers to attacker-controlled addresses or reenter during the call, potentially draining funds or breaking invariants. Detector validation saw a constant target in one trace, but callsites are marked computed and guard detection found none, so exposure is uncertain.","recommendation":"Restrict any arbitrary CALL functionality to trusted roles, validate/whitelist targets and value, and add reentrancy protection or checks-effects-interactions around state updates. Consider logging and limiting max value per call.","evidence":"Detector findings report 10 CALLs with computed target/value and ETH transfer possible; guard detection is empty. Callsites show `returndata_checked: null` and `target_expression_category: computed` for all CALLs.","locations":["pc:1779","pc:3262","pc:3474","pc:4710","pc:7069","pc:8066","pc:8847","pc:9574","pc:10708","pc:12706"]},{"severity":"low","category":"access_control","title":"Auth guard detection absent for potentially privileged selectors","exploit_scenario":"Selectors include common ownership-management functions (e.g., `0xf2fde38b`, `0x8da5cb5b`), but the analysis artifact shows no detected guards. If these or other admin-like functions are missing access checks, an attacker could seize ownership or privileged roles.","recommendation":"Manually verify access control on ownership/executor/admin setters and any function that can move funds or perform arbitrary calls. Ensure onlyOwner/onlyExecutor-style checks are in place and tested.","evidence":"`auth.guards` is empty in the analysis artifact and `guards_detected` is empty in detector evidence, indicating no recognized authorization checks around functions.","locations":["selector:0xf2fde38b","selector:0x8da5cb5b"]}]}
tokens used
55,646
Metadata
{
    "codex": {
        "ran_at": "2026-01-12T16:31:02.121598+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 31628,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode shows multiple computed external CALLs (some with ETH value) and no detected auth guards; confirm access control around these call paths.",
    "raw_final": {
        "summary": "Bytecode shows multiple computed external CALLs (some with ETH value) and no detected auth guards; confirm access control around these call paths.",
        "findings": [
            {
                "title": "Computed external CALLs with ETH value may be reachable without strong guards",
                "category": "other",
                "evidence": "Detector findings report 10 CALLs with computed target/value and ETH transfer possible; guard detection is empty. Callsites show `returndata_checked: null` and `target_expression_category: computed` for all CALLs.",
                "severity": "medium",
                "locations": [
                    "pc:1779",
                    "pc:3262",
                    "pc:3474",
                    "pc:4710",
                    "pc:7069",
                    "pc:8066",
                    "pc:8847",
                    "pc:9574",
                    "pc:10708",
                    "pc:12706"
                ],
                "recommendation": "Restrict any arbitrary CALL functionality to trusted roles, validate/whitelist targets and value, and add reentrancy protection or checks-effects-interactions around state updates. Consider logging and limiting max value per call.",
                "exploit_scenario": "If any public/external function forwards calldata or value to an arbitrary target (CALL target/value computed), a user could trigger ETH transfers to attacker-controlled addresses or reenter during the call, potentially draining funds or breaking invariants. Detector validation saw a constant target in one trace, but callsites are marked computed and guard detection found none, so exposure is uncertain."
            },
            {
                "title": "Auth guard detection absent for potentially privileged selectors",
                "category": "access_control",
                "evidence": "`auth.guards` is empty in the analysis artifact and `guards_detected` is empty in detector evidence, indicating no recognized authorization checks around functions.",
                "severity": "low",
                "locations": [
                    "selector:0xf2fde38b",
                    "selector:0x8da5cb5b"
                ],
                "recommendation": "Manually verify access control on ownership/executor/admin setters and any function that can move funds or perform arbitrary calls. Ensure onlyOwner/onlyExecutor-style checks are in place and tested.",
                "exploit_scenario": "Selectors include common ownership-management functions (e.g., `0xf2fde38b`, `0x8da5cb5b`), but the analysis artifact shows no detected guards. If these or other admin-like functions are missing access checks, an attacker could seize ownership or privileged roles."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
19
EXT*/BALANCE
18
Total opcodes
8304
Flags
heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x01e7
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8da5cb5b
00000019: GT
0000001a: PUSH2 0x0102
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xda3e3397
00000024: GT
00000025: PUSH2 0x0095
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xf2fde38b
0000002f: GT
00000030: PUSH2 0x0064
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf2fde38b
0000003a: EQ
0000003b: PUSH2 0x0587
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf3ad0e75
00000045: EQ
00000046: PUSH2 0x05a7
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf3fef3a3
00000050: EQ
00000051: PUSH2 0x05d6
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf598388c
0000005b: EQ
0000005c: PUSH2 0x05f6
0000005f: JUMPI
00000060: PUSH2 0x01ee
00000063: JUMP
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0xda3e3397
0000006b: EQ
0000006c: PUSH2 0x0507
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xdb9fb4ca
00000076: EQ
00000077: PUSH2 0x0527
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xe72b6026
00000081: EQ
00000082: PUSH2 0x0547
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xede4edd0
0000008c: EQ
0000008d: PUSH2 0x0567
00000090: JUMPI
00000091: PUSH2 0x01ee
00000094: JUMP
00000095: JUMPDEST
00000096: DUP1
00000097: PUSH4 0xaa4f6012
0000009c: GT
0000009d: PUSH2 0x00d1
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xaa4f6012
000000a7: EQ
000000a8: PUSH2 0x0487
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xb61d27f6
000000b2: EQ
000000b3: PUSH2 0x04a7
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xbfdc4a26
000000bd: EQ
000000be: PUSH2 0x04c7
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xc4e2c1e6
000000c8: EQ
000000c9: PUSH2 0x04e7
000000cc: JUMPI
000000cd: PUSH2 0x01ee
000000d0: JUMP
000000d1: JUMPDEST
000000d2: DUP1
000000d3: PUSH4 0x8da5cb5b
000000d8: EQ
000000d9: PUSH2 0x03f8
000000dc: JUMPI
000000dd: DUP1
000000de: PUSH4 0x9183ca03
000000e3: EQ
000000e4: PUSH2 0x041a
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0x9ac2a011
000000ee: EQ
000000ef: PUSH2 0x043a
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0xa66392d5
000000f9: EQ
000000fa: PUSH2 0x0467
000000fd: JUMPI
000000fe: PUSH2 0x01ee
00000101: JUMP
00000102: JUMPDEST
00000103: DUP1
00000104: PUSH4 0x3419ba23
00000109: GT
0000010a: PUSH2 0x017a
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0x554994f2
00000114: GT
00000115: PUSH2 0x0149
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0x554994f2
0000011f: EQ
00000120: PUSH2 0x038e
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0x6fbd99a0
0000012a: EQ
0000012b: PUSH2 0x03a3
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0x715018a6
00000135: EQ
00000136: PUSH2 0x03c3
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x7c27383b
00000140: EQ
00000141: PUSH2 0x03d8
00000144: JUMPI
00000145: PUSH2 0x01ee
00000148: JUMP
00000149: JUMPDEST
0000014a: DUP1
0000014b: PUSH4 0x3419ba23
00000150: EQ
00000151: PUSH2 0x030e
00000154: JUMPI
00000155: DUP1
00000156: PUSH4 0x39cc3ea3
0000015b: EQ
0000015c: PUSH2 0x032e
0000015f: JUMPI
00000160: DUP1
00000161: PUSH4 0x3fe5d425
00000166: EQ
00000167: PUSH2 0x034e
0000016a: JUMPI
0000016b: DUP1
0000016c: PUSH4 0x4b8a3529
00000171: EQ
00000172: PUSH2 0x036e
00000175: JUMPI
00000176: PUSH2 0x01ee
00000179: JUMP
0000017a: JUMPDEST
0000017b: DUP1
0000017c: PUSH4 0x2247463e
00000181: GT
00000182: PUSH2 0x01b6
00000185: JUMPI
00000186: DUP1
00000187: PUSH4 0x2247463e
0000018c: EQ
0000018d: PUSH2 0x028e
00000190: JUMPI
00000191: DUP1
00000192: PUSH4 0x22867d78
00000197: EQ
00000198: PUSH2 0x02ae
0000019b: JUMPI
0000019c: DUP1
0000019d: PUSH4 0x24788429
000001a2: EQ
000001a3: PUSH2 0x02ce
000001a6: JUMPI
000001a7: DUP1
000001a8: PUSH4 0x2fb08411
000001ad: EQ
000001ae: PUSH2 0x02ee
000001b1: JUMPI
000001b2: PUSH2 0x01ee
000001b5: JUMP
000001b6: JUMPDEST
000001b7: DUP1
000001b8: PUSH4 0x077d97d7
000001bd: EQ
000001be: PUSH2 0x01f3
000001c1: JUMPI
000001c2: DUP1
000001c3: PUSH4 0x1a9a35e6
000001c8: EQ
000001c9: PUSH2 0x0215
000001cc: JUMPI
000001cd: DUP1
000001ce: PUSH4 0x1f5a0bbe
000001d3: EQ
000001d4: PUSH2 0x024b
000001d7: JUMPI
000001d8: DUP1
000001d9: PUSH4 0x211a5e6c
000001de: EQ
000001df: PUSH2 0x026b
000001e2: JUMPI
000001e3: PUSH2 0x01ee
000001e6: JUMP
000001e7: JUMPDEST
000001e8: CALLDATASIZE
000001e9: PUSH2 0x01ee
000001ec: JUMPI
000001ed: STOP
000001ee: JUMPDEST
000001ef: PUSH1 0x00
000001f1: DUP1
000001f2: REVERT
000001f3: JUMPDEST
000001f4: CALLVALUE
000001f5: DUP1
000001f6: ISZERO
000001f7: PUSH2 0x01ff
000001fa: JUMPI
000001fb: PUSH1 0x00
000001fd: DUP1
000001fe: REVERT
000001ff: JUMPDEST
00000200: POP
00000201: PUSH2 0x0213
00000204: PUSH2 0x020e
00000207: CALLDATASIZE
00000208: PUSH1 0x04
0000020a: PUSH2 0x371d
0000020d: JUMP
0000020e: JUMPDEST
0000020f: PUSH2 0x0616
00000212: JUMP
00000213: JUMPDEST
00000214: STOP
00000215: JUMPDEST
00000216: CALLVALUE
00000217: DUP1
00000218: ISZERO
00000219: PUSH2 0x0221
0000021c: JUMPI
0000021d: PUSH1 0x00
0000021f: DUP1
00000220: REVERT
00000221: JUMPDEST
00000222: POP
00000223: PUSH2 0x0235
00000226: PUSH2 0x0230
00000229: CALLDATASIZE
0000022a: PUSH1 0x04
0000022c: PUSH2 0x34ce
0000022f: JUMP
00000230: JUMPDEST
00000231: PUSH2 0x0739
00000234: JUMP
00000235: JUMPDEST
00000236: PUSH1 0x40
00000238: MLOAD
00000239: PUSH2 0x0242
0000023c: SWAP2
0000023d: SWAP1
0000023e: PUSH2 0x3ccc
00000241: JUMP
00000242: JUMPDEST
00000243: PUSH1 0x40
00000245: MLOAD
00000246: DUP1
00000247: SWAP2
00000248: SUB
00000249: SWAP1
0000024a: RETURN
0000024b: JUMPDEST
0000024c: CALLVALUE
0000024d: DUP1
0000024e: ISZERO
0000024f: PUSH2 0x0257
00000252: JUMPI
00000253: PUSH1 0x00
00000255: DUP1
00000256: REVERT
00000257: JUMPDEST
00000258: POP
00000259: PUSH2 0x0213
0000025c: PUSH2 0x0266
0000025f: CALLDATASIZE
00000260: PUSH1 0x04
00000262: PUSH2 0x34ce
00000265: JUMP
00000266: JUMPDEST
00000267: PUSH2 0x074b
0000026a: JUMP
0000026b: JUMPDEST
0000026c: CALLVALUE
0000026d: DUP1
0000026e: ISZERO
0000026f: PUSH2 0x0277
00000272: JUMPI
00000273: PUSH1 0x00
00000275: DUP1
00000276: REVERT
00000277: JUMPDEST
00000278: POP
00000279: PUSH2 0x0280
0000027c: PUSH2 0x0848
0000027f: JUMP
00000280: JUMPDEST
00000281: PUSH1 0x40
00000283: MLOAD
00000284: PUSH2 0x0242
00000287: SWAP3
00000288: SWAP2
00000289: SWAP1
0000028a: PUSH2 0x3cd5
0000028d: JUMP
0000028e: JUMPDEST
0000028f: CALLVALUE
00000290: DUP1
00000291: ISZERO
00000292: PUSH2 0x029a
00000295: JUMPI
00000296: PUSH1 0x00
00000298: DUP1
00000299: REVERT
0000029a: JUMPDEST
0000029b: POP
0000029c: PUSH2 0x0213
0000029f: PUSH2 0x02a9
000002a2: CALLDATASIZE
000002a3: PUSH1 0x04
000002a5: PUSH2 0x389c
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH2 0x0c16
000002ad: JUMP
000002ae: JUMPDEST
000002af: CALLVALUE
000002b0: DUP1
000002b1: ISZERO
000002b2: PUSH2 0x02ba
000002b5: JUMPI
000002b6: PUSH1 0x00
000002b8: DUP1
000002b9: REVERT
000002ba: JUMPDEST
000002bb: POP
000002bc: PUSH2 0x0213
000002bf: PUSH2 0x02c9
000002c2: CALLDATASIZE
000002c3: PUSH1 0x04
000002c5: PUSH2 0x357e
000002c8: JUMP
000002c9: JUMPDEST
000002ca: PUSH2 0x0cd7
000002cd: JUMP
000002ce: JUMPDEST
000002cf: CALLVALUE
000002d0: DUP1
000002d1: ISZERO
000002d2: PUSH2 0x02da
000002d5: JUMPI
000002d6: PUSH1 0x00
000002d8: DUP1
000002d9: REVERT
000002da: JUMPDEST
000002db: POP
000002dc: PUSH2 0x0213
000002df: PUSH2 0x02e9
000002e2: CALLDATASIZE
000002e3: PUSH1 0x04
000002e5: PUSH2 0x34ce
000002e8: JUMP
000002e9: JUMPDEST
000002ea: PUSH2 0x0dd9
000002ed: JUMP
000002ee: JUMPDEST
000002ef: CALLVALUE
000002f0: DUP1
000002f1: ISZERO
000002f2: PUSH2 0x02fa
000002f5: JUMPI
000002f6: PUSH1 0x00
000002f8: DUP1
000002f9: REVERT
000002fa: JUMPDEST
000002fb: POP
000002fc: PUSH2 0x0213
000002ff: PUSH2 0x0309
00000302: CALLDATASIZE
00000303: PUSH1 0x04
00000305: PUSH2 0x357e
00000308: JUMP
00000309: JUMPDEST
0000030a: PUSH2 0x0ed0
0000030d: JUMP
0000030e: JUMPDEST
0000030f: CALLVALUE
00000310: DUP1
00000311: ISZERO
00000312: PUSH2 0x031a
00000315: JUMPI
00000316: PUSH1 0x00
00000318: DUP1
00000319: REVERT
0000031a: JUMPDEST
0000031b: POP
0000031c: PUSH2 0x0213
0000031f: PUSH2 0x0329
00000322: CALLDATASIZE
00000323: PUSH1 0x04
00000325: PUSH2 0x3506
00000328: JUMP
00000329: JUMPDEST
0000032a: PUSH2 0x0f55
0000032d: JUMP
0000032e: JUMPDEST
0000032f: CALLVALUE
00000330: DUP1
00000331: ISZERO
00000332: PUSH2 0x033a
00000335: JUMPI
00000336: PUSH1 0x00
00000338: DUP1
00000339: REVERT
0000033a: JUMPDEST
0000033b: POP
0000033c: PUSH2 0x0280
0000033f: PUSH2 0x0349
00000342: CALLDATASIZE
00000343: PUSH1 0x04
00000345: PUSH2 0x34ce
00000348: JUMP
00000349: JUMPDEST
0000034a: PUSH2 0x0fc1
0000034d: JUMP
0000034e: JUMPDEST
0000034f: CALLVALUE
00000350: DUP1
00000351: ISZERO
00000352: PUSH2 0x035a
00000355: JUMPI
00000356: PUSH1 0x00
00000358: DUP1
00000359: REVERT
0000035a: JUMPDEST
0000035b: POP
0000035c: PUSH2 0x0213
0000035f: PUSH2 0x0369
00000362: CALLDATASIZE
00000363: PUSH1 0x04
00000365: PUSH2 0x34ce
00000368: JUMP
00000369: JUMPDEST
0000036a: PUSH2 0x1158
0000036d: JUMP
0000036e: JUMPDEST
0000036f: CALLVALUE
00000370: DUP1
00000371: ISZERO
00000372: PUSH2 0x037a
00000375: JUMPI
00000376: PUSH1 0x00
00000378: DUP1
00000379: REVERT
0000037a: JUMPDEST
0000037b: POP
0000037c: PUSH2 0x0213
0000037f: PUSH2 0x0389
00000382: CALLDATASIZE
00000383: PUSH1 0x04
00000385: PUSH2 0x357e
00000388: JUMP
00000389: JUMPDEST
0000038a: PUSH2 0x12e0
0000038d: JUMP
0000038e: JUMPDEST
0000038f: CALLVALUE
00000390: DUP1
00000391: ISZERO
00000392: PUSH2 0x039a
00000395: JUMPI
00000396: PUSH1 0x00
00000398: DUP1
00000399: REVERT
0000039a: JUMPDEST
0000039b: POP
0000039c: PUSH2 0x0280
0000039f: PUSH2 0x13b4
000003a2: JUMP
000003a3: JUMPDEST
000003a4: CALLVALUE
000003a5: DUP1
000003a6: ISZERO
000003a7: PUSH2 0x03af
000003aa: JUMPI
000003ab: PUSH1 0x00
000003ad: DUP1
000003ae: REVERT
000003af: JUMPDEST
000003b0: POP
000003b1: PUSH2 0x0213
000003b4: PUSH2 0x03be
000003b7: CALLDATASIZE
000003b8: PUSH1 0x04
000003ba: PUSH2 0x389c
000003bd: JUMP
000003be: JUMPDEST
000003bf: PUSH2 0x1476
000003c2: JUMP
000003c3: JUMPDEST
000003c4: CALLVALUE
000003c5: DUP1
000003c6: ISZERO
000003c7: PUSH2 0x03cf
000003ca: JUMPI
000003cb: PUSH1 0x00
000003cd: DUP1
000003ce: REVERT
000003cf: JUMPDEST
000003d0: POP
000003d1: PUSH2 0x0213
000003d4: PUSH2 0x1538
000003d7: JUMP
000003d8: JUMPDEST
000003d9: CALLVALUE
000003da: DUP1
000003db: ISZERO
000003dc: PUSH2 0x03e4
000003df: JUMPI
000003e0: PUSH1 0x00
000003e2: DUP1
000003e3: REVERT
000003e4: JUMPDEST
000003e5: POP
000003e6: PUSH2 0x0213
000003e9: PUSH2 0x03f3
000003ec: CALLDATASIZE
000003ed: PUSH1 0x04
000003ef: PUSH2 0x34ce
000003f2: JUMP
000003f3: JUMPDEST
000003f4: PUSH2 0x1603
000003f7: JUMP
000003f8: JUMPDEST
000003f9: CALLVALUE
000003fa: DUP1
000003fb: ISZERO
000003fc: PUSH2 0x0404
000003ff: JUMPI
00000400: PUSH1 0x00
00000402: DUP1
00000403: REVERT
00000404: JUMPDEST
00000405: POP
00000406: PUSH2 0x040d
00000409: PUSH2 0x1679
0000040c: JUMP
0000040d: JUMPDEST
0000040e: PUSH1 0x40
00000410: MLOAD
00000411: PUSH2 0x0242
00000414: SWAP2
00000415: SWAP1
00000416: PUSH2 0x394a
00000419: JUMP
0000041a: JUMPDEST
0000041b: CALLVALUE
0000041c: DUP1
0000041d: ISZERO
0000041e: PUSH2 0x0426
00000421: JUMPI
00000422: PUSH1 0x00
00000424: DUP1
00000425: REVERT
00000426: JUMPDEST
00000427: POP
00000428: PUSH2 0x0213
0000042b: PUSH2 0x0435
0000042e: CALLDATASIZE
0000042f: PUSH1 0x04
00000431: PUSH2 0x3641
00000434: JUMP
00000435: JUMPDEST
00000436: PUSH2 0x1695
00000439: JUMP
0000043a: JUMPDEST
0000043b: CALLVALUE
0000043c: DUP1
0000043d: ISZERO
0000043e: PUSH2 0x0446
00000441: JUMPI
00000442: PUSH1 0x00
00000444: DUP1
00000445: REVERT
00000446: JUMPDEST
00000447: POP
00000448: PUSH2 0x045a
0000044b: PUSH2 0x0455
0000044e: CALLDATASIZE
0000044f: PUSH1 0x04
00000451: PUSH2 0x34ce
00000454: JUMP
00000455: JUMPDEST
00000456: PUSH2 0x19cd
00000459: JUMP
0000045a: JUMPDEST
0000045b: PUSH1 0x40
0000045d: MLOAD
0000045e: PUSH2 0x0242
00000461: SWAP2
00000462: SWAP1
00000463: PUSH2 0x39eb
00000466: JUMP
00000467: JUMPDEST
00000468: CALLVALUE
00000469: DUP1
0000046a: ISZERO
0000046b: PUSH2 0x0473
0000046e: JUMPI
0000046f: PUSH1 0x00
00000471: DUP1
00000472: REVERT
00000473: JUMPDEST
00000474: POP
00000475: PUSH2 0x0213
00000478: PUSH2 0x0482
0000047b: CALLDATASIZE
0000047c: PUSH1 0x04
0000047e: PUSH2 0x357e
00000481: JUMP
00000482: JUMPDEST
00000483: PUSH2 0x19e2
00000486: JUMP
00000487: JUMPDEST
00000488: CALLVALUE
00000489: DUP1
0000048a: ISZERO
0000048b: PUSH2 0x0493
0000048e: JUMPI
0000048f: PUSH1 0x00
00000491: DUP1
00000492: REVERT
00000493: JUMPDEST
00000494: POP
00000495: PUSH2 0x0213
00000498: PUSH2 0x04a2
0000049b: CALLDATASIZE
0000049c: PUSH1 0x04
0000049e: PUSH2 0x357e
000004a1: JUMP
000004a2: JUMPDEST
000004a3: PUSH2 0x1a67
000004a6: JUMP
000004a7: JUMPDEST
000004a8: CALLVALUE
000004a9: DUP1
000004aa: ISZERO
000004ab: PUSH2 0x04b3
000004ae: JUMPI
000004af: PUSH1 0x00
000004b1: DUP1
000004b2: REVERT
000004b3: JUMPDEST
000004b4: POP
000004b5: PUSH2 0x0213
000004b8: PUSH2 0x04c2
000004bb: CALLDATASIZE
000004bc: PUSH1 0x04
000004be: PUSH2 0x35ea
000004c1: JUMP
000004c2: JUMPDEST
000004c3: PUSH2 0x1b0e
000004c6: JUMP
000004c7: JUMPDEST
000004c8: CALLVALUE
000004c9: DUP1
000004ca: ISZERO
000004cb: PUSH2 0x04d3
000004ce: JUMPI
000004cf: PUSH1 0x00
000004d1: DUP1
000004d2: REVERT
000004d3: JUMPDEST
000004d4: POP
000004d5: PUSH2 0x0213
000004d8: PUSH2 0x04e2
000004db: CALLDATASIZE
000004dc: PUSH1 0x04
000004de: PUSH2 0x3641
000004e1: JUMP
000004e2: JUMPDEST
000004e3: PUSH2 0x1bcd
000004e6: JUMP
000004e7: JUMPDEST
000004e8: CALLVALUE
000004e9: DUP1
000004ea: ISZERO
000004eb: PUSH2 0x04f3
000004ee: JUMPI
000004ef: PUSH1 0x00
000004f1: DUP1
000004f2: REVERT
000004f3: JUMPDEST
000004f4: POP
000004f5: PUSH2 0x0213
000004f8: PUSH2 0x0502
000004fb: CALLDATASIZE
000004fc: PUSH1 0x04
000004fe: PUSH2 0x35a9
00000501: JUMP
00000502: JUMPDEST
00000503: PUSH2 0x1e50
00000506: JUMP
00000507: JUMPDEST
00000508: CALLVALUE
00000509: DUP1
0000050a: ISZERO
0000050b: PUSH2 0x0513
0000050e: JUMPI
0000050f: PUSH1 0x00
00000511: DUP1
00000512: REVERT
00000513: JUMPDEST
00000514: POP
00000515: PUSH2 0x0213
00000518: PUSH2 0x0522
0000051b: CALLDATASIZE
0000051c: PUSH1 0x04
0000051e: PUSH2 0x353e
00000521: JUMP
00000522: JUMPDEST
00000523: PUSH2 0x2109
00000526: JUMP
00000527: JUMPDEST
00000528: CALLVALUE
00000529: DUP1
0000052a: ISZERO
0000052b: PUSH2 0x0533
0000052e: JUMPI
0000052f: PUSH1 0x00
00000531: DUP1
00000532: REVERT
00000533: JUMPDEST
00000534: POP
00000535: PUSH2 0x0235
00000538: PUSH2 0x0542
0000053b: CALLDATASIZE
0000053c: PUSH1 0x04
0000053e: PUSH2 0x34ce
00000541: JUMP
00000542: JUMPDEST
00000543: PUSH2 0x2170
00000546: JUMP
00000547: JUMPDEST
00000548: CALLVALUE
00000549: DUP1
0000054a: ISZERO
0000054b: PUSH2 0x0553
0000054e: JUMPI
0000054f: PUSH1 0x00
00000551: DUP1
00000552: REVERT
00000553: JUMPDEST
00000554: POP
00000555: PUSH2 0x0213
00000558: PUSH2 0x0562
0000055b: CALLDATASIZE
0000055c: PUSH1 0x04
0000055e: PUSH2 0x357e
00000561: JUMP
00000562: JUMPDEST
00000563: PUSH2 0x2182
00000566: JUMP
00000567: JUMPDEST
00000568: CALLVALUE
00000569: DUP1
0000056a: ISZERO
0000056b: PUSH2 0x0573
0000056e: JUMPI
0000056f: PUSH1 0x00
00000571: DUP1
00000572: REVERT
00000573: JUMPDEST
00000574: POP
00000575: PUSH2 0x0213
00000578: PUSH2 0x0582
0000057b: CALLDATASIZE
0000057c: PUSH1 0x04
0000057e: PUSH2 0x34ce
00000581: JUMP
00000582: JUMPDEST
00000583: PUSH2 0x21d6
00000586: JUMP
00000587: JUMPDEST
00000588: CALLVALUE
00000589: DUP1
0000058a: ISZERO
0000058b: PUSH2 0x0593
0000058e: JUMPI
0000058f: PUSH1 0x00
00000591: DUP1
00000592: REVERT
00000593: JUMPDEST
00000594: POP
00000595: PUSH2 0x0213
00000598: PUSH2 0x05a2
0000059b: CALLDATASIZE
0000059c: PUSH1 0x04
0000059e: PUSH2 0x34ce
000005a1: JUMP
000005a2: JUMPDEST
000005a3: PUSH2 0x22d1
000005a6: JUMP
000005a7: JUMPDEST
000005a8: CALLVALUE
000005a9: DUP1
000005aa: ISZERO
000005ab: PUSH2 0x05b3
000005ae: JUMPI
000005af: PUSH1 0x00
000005b1: DUP1
000005b2: REVERT
000005b3: JUMPDEST
000005b4: POP
000005b5: PUSH2 0x05c7
000005b8: PUSH2 0x05c2
000005bb: CALLDATASIZE
000005bc: PUSH1 0x04
000005be: PUSH2 0x34ce
000005c1: JUMP
000005c2: JUMPDEST
000005c3: PUSH2 0x2407
000005c6: JUMP
000005c7: JUMPDEST
000005c8: PUSH1 0x40
000005ca: MLOAD
000005cb: PUSH2 0x0242
000005ce: SWAP4
000005cf: SWAP3
000005d0: SWAP2
000005d1: SWAP1
000005d2: PUSH2 0x3ce3
000005d5: JUMP
000005d6: JUMPDEST
000005d7: CALLVALUE
000005d8: DUP1
000005d9: ISZERO
000005da: PUSH2 0x05e2
000005dd: JUMPI
000005de: PUSH1 0x00
000005e0: DUP1
000005e1: REVERT
000005e2: JUMPDEST
000005e3: POP
000005e4: PUSH2 0x0213
000005e7: PUSH2 0x05f1
000005ea: CALLDATASIZE
000005eb: PUSH1 0x04
000005ed: PUSH2 0x357e
000005f0: JUMP
000005f1: JUMPDEST
000005f2: PUSH2 0x2497
000005f5: JUMP
000005f6: JUMPDEST
000005f7: CALLVALUE
000005f8: DUP1
000005f9: ISZERO
000005fa: PUSH2 0x0602
000005fd: JUMPI
000005fe: PUSH1 0x00
00000600: DUP1
00000601: REVERT
00000602: JUMPDEST
00000603: POP
00000604: PUSH2 0x0213
00000607: PUSH2 0x0611
0000060a: CALLDATASIZE
0000060b: PUSH1 0x04
0000060d: PUSH2 0x34ce
00000610: JUMP
00000611: JUMPDEST
00000612: PUSH2 0x26ec
00000615: JUMP
00000616: JUMPDEST
00000617: PUSH2 0x061e
0000061a: PUSH2 0x2817
0000061d: JUMP
0000061e: JUMPDEST
0000061f: PUSH1 0x00
00000621: SLOAD
00000622: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000637: SWAP1
00000638: DUP2
00000639: AND
0000063a: SWAP2
0000063b: AND
0000063c: EQ
0000063d: PUSH2 0x067b
00000640: JUMPI
00000641: PUSH1 0x40
00000643: MLOAD
00000644: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000665: DUP2
00000666: MSTORE
00000667: PUSH1 0x04
00000669: ADD
0000066a: PUSH2 0x0672
0000066d: SWAP1
0000066e: PUSH2 0x3b6f
00000671: JUMP
00000672: JUMPDEST
00000673: PUSH1 0x40
00000675: MLOAD
00000676: DUP1
00000677: SWAP2
00000678: SUB
00000679: SWAP1
0000067a: REVERT
0000067b: JUMPDEST
0000067c: PUSH1 0x00
0000067e: JUMPDEST
0000067f: DUP4
00000680: MLOAD
00000681: DUP2
00000682: LT
00000683: ISZERO
00000684: PUSH2 0x0733
00000687: JUMPI
00000688: DUP4
00000689: DUP2
0000068a: DUP2
0000068b: MLOAD
0000068c: DUP2
0000068d: LT
0000068e: PUSH2 0x0693
00000691: JUMPI
00000692: INVALID
00000693: JUMPDEST
00000694: PUSH1 0x20
00000696: MUL
00000697: PUSH1 0x20
00000699: ADD
0000069a: ADD
0000069b: MLOAD
0000069c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006b1: AND
000006b2: DUP4
000006b3: DUP3
000006b4: DUP2
000006b5: MLOAD
000006b6: DUP2
000006b7: LT
000006b8: PUSH2 0x06bd
000006bb: JUMPI
000006bc: INVALID
000006bd: JUMPDEST
000006be: PUSH1 0x20
000006c0: MUL
000006c1: PUSH1 0x20
000006c3: ADD
000006c4: ADD
000006c5: MLOAD
000006c6: DUP4
000006c7: DUP4
000006c8: DUP2
000006c9: MLOAD
000006ca: DUP2
000006cb: LT
000006cc: PUSH2 0x06d1
000006cf: JUMPI
000006d0: INVALID
000006d1: JUMPDEST
000006d2: PUSH1 0x20
000006d4: MUL
000006d5: PUSH1 0x20
000006d7: ADD
000006d8: ADD
000006d9: MLOAD
000006da: PUSH1 0x40
000006dc: MLOAD
000006dd: PUSH2 0x06e6
000006e0: SWAP2
000006e1: SWAP1
000006e2: PUSH2 0x392e
000006e5: JUMP
000006e6: JUMPDEST
000006e7: PUSH1 0x00
000006e9: PUSH1 0x40
000006eb: MLOAD
000006ec: DUP1
000006ed: DUP4
000006ee: SUB
000006ef: DUP2
000006f0: DUP6
000006f1: DUP8
000006f2: GAS
000006f3: CALL
000006f4: SWAP3
000006f5: POP
000006f6: POP
000006f7: POP
000006f8: RETURNDATASIZE
000006f9: DUP1
000006fa: PUSH1 0x00
000006fc: DUP2
000006fd: EQ
000006fe: PUSH2 0x0723
00000701: JUMPI
00000702: PUSH1 0x40
00000704: MLOAD
00000705: SWAP2
00000706: POP
00000707: PUSH1 0x1f
00000709: NOT
0000070a: PUSH1 0x3f
0000070c: RETURNDATASIZE
0000070d: ADD
0000070e: AND
0000070f: DUP3
00000710: ADD
00000711: PUSH1 0x40
00000713: MSTORE
00000714: RETURNDATASIZE
00000715: DUP3
00000716: MSTORE
00000717: RETURNDATASIZE
00000718: PUSH1 0x00
0000071a: PUSH1 0x20
0000071c: DUP5
0000071d: ADD
0000071e: RETURNDATACOPY
0000071f: PUSH2 0x0728
00000722: JUMP
00000723: JUMPDEST
00000724: PUSH1 0x60
00000726: SWAP2
00000727: POP
00000728: JUMPDEST
00000729: POP
0000072a: POP
0000072b: POP
0000072c: PUSH1 0x01
0000072e: ADD
0000072f: PUSH2 0x067e
00000732: JUMP
00000733: JUMPDEST
00000734: POP
00000735: POP
00000736: POP
00000737: POP
00000738: JUMP
00000739: JUMPDEST
0000073a: PUSH1 0x04
0000073c: PUSH1 0x20
0000073e: MSTORE
0000073f: PUSH1 0x00
00000741: SWAP1
00000742: DUP2
00000743: MSTORE
00000744: PUSH1 0x40
00000746: SWAP1
00000747: KECCAK256
00000748: SLOAD
00000749: DUP2
0000074a: JUMP
0000074b: JUMPDEST
0000074c: PUSH2 0x0753
0000074f: PUSH2 0x2817
00000752: JUMP
00000753: JUMPDEST
00000754: PUSH1 0x00
00000756: SLOAD
00000757: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000076c: SWAP1
0000076d: DUP2
0000076e: AND
0000076f: SWAP2
00000770: AND
00000771: EQ
00000772: PUSH2 0x07a7
00000775: JUMPI
00000776: PUSH1 0x40
00000778: MLOAD
00000779: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000079a: DUP2
0000079b: MSTORE
0000079c: PUSH1 0x04
0000079e: ADD
0000079f: PUSH2 0x0672
000007a2: SWAP1
000007a3: PUSH2 0x3b6f
000007a6: JUMP
000007a7: JUMPDEST
000007a8: DUP1
000007a9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007be: AND
000007bf: PUSH32 0x9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea2
000007e0: PUSH1 0x01
000007e2: PUSH1 0x40
000007e4: MLOAD
000007e5: PUSH2 0x07ee
000007e8: SWAP2
000007e9: SWAP1
000007ea: PUSH2 0x39eb
000007ed: JUMP
000007ee: JUMPDEST
000007ef: PUSH1 0x40
000007f1: MLOAD
000007f2: DUP1
000007f3: SWAP2
000007f4: SUB
000007f5: SWAP1
000007f6: LOG2
000007f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000080c: AND
0000080d: PUSH1 0x00
0000080f: SWAP1
00000810: DUP2
00000811: MSTORE
00000812: PUSH1 0x01
00000814: PUSH1 0x20
00000816: DUP2
00000817: SWAP1
00000818: MSTORE
00000819: PUSH1 0x40
0000081b: SWAP1
0000081c: SWAP2
0000081d: KECCAK256
0000081e: DUP1
0000081f: SLOAD
00000820: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00000841: AND
00000842: SWAP1
00000843: SWAP2
00000844: OR
00000845: SWAP1
00000846: SSTORE
00000847: JUMP
00000848: JUMPDEST
00000849: PUSH1 0x40
0000084b: MLOAD
0000084c: PUSH32 0xabfceffc00000000000000000000000000000000000000000000000000000000
0000086d: DUP2
0000086e: MSTORE
0000086f: PUSH1 0x00
00000871: SWAP1
00000872: DUP2
00000873: SWAP1
00000874: PUSH1 0x60
00000876: SWAP1
00000877: PUSH20 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b
0000088c: SWAP1
0000088d: PUSH4 0xabfceffc
00000892: SWAP1
00000893: PUSH2 0x08a0
00000896: SWAP1
00000897: ADDRESS
00000898: SWAP1
00000899: PUSH1 0x04
0000089b: ADD
0000089c: PUSH2 0x394a
0000089f: JUMP
000008a0: JUMPDEST
000008a1: PUSH1 0x00
000008a3: PUSH1 0x40
000008a5: MLOAD
000008a6: DUP1
000008a7: DUP4
000008a8: SUB
000008a9: DUP2
000008aa: DUP7
000008ab: DUP1
000008ac: EXTCODESIZE
000008ad: ISZERO
000008ae: DUP1
000008af: ISZERO
000008b0: PUSH2 0x08b8
000008b3: JUMPI
000008b4: PUSH1 0x00
000008b6: DUP1
000008b7: REVERT
000008b8: JUMPDEST
000008b9: POP
000008ba: GAS
000008bb: STATICCALL
000008bc: ISZERO
000008bd: DUP1
000008be: ISZERO
000008bf: PUSH2 0x08cc
000008c2: JUMPI
000008c3: RETURNDATASIZE
000008c4: PUSH1 0x00
000008c6: DUP1
000008c7: RETURNDATACOPY
000008c8: RETURNDATASIZE
000008c9: PUSH1 0x00
000008cb: REVERT
000008cc: JUMPDEST
000008cd: POP
000008ce: POP
000008cf: POP
000008d0: POP
000008d1: PUSH1 0x40
000008d3: MLOAD
000008d4: RETURNDATASIZE
000008d5: PUSH1 0x00
000008d7: DUP3
000008d8: RETURNDATACOPY
000008d9: PUSH1 0x1f
000008db: RETURNDATASIZE
000008dc: SWAP1
000008dd: DUP2
000008de: ADD
000008df: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00000900: AND
00000901: DUP3
00000902: ADD
00000903: PUSH1 0x40
00000905: MSTORE
00000906: PUSH2 0x0912
00000909: SWAP2
0000090a: SWAP1
0000090b: DUP2
0000090c: ADD
0000090d: SWAP1
0000090e: PUSH2 0x3684
00000911: JUMP
00000912: JUMPDEST
00000913: SWAP1
00000914: POP
00000915: PUSH2 0x091c
00000918: PUSH2 0x3235
0000091b: JUMP
0000091c: JUMPDEST
0000091d: PUSH1 0x00
0000091f: DUP1
00000920: PUSH1 0x00
00000922: PUSH20 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b
00000937: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000094c: AND
0000094d: PUSH4 0x7dc0d1d0
00000952: PUSH1 0x40
00000954: MLOAD
00000955: DUP2
00000956: PUSH4 0xffffffff
0000095b: AND
0000095c: PUSH1 0xe0
0000095e: SHL
0000095f: DUP2
00000960: MSTORE
00000961: PUSH1 0x04
00000963: ADD
00000964: PUSH1 0x20
00000966: PUSH1 0x40
00000968: MLOAD
00000969: DUP1
0000096a: DUP4
0000096b: SUB
0000096c: DUP2
0000096d: DUP7
0000096e: DUP1
0000096f: EXTCODESIZE
00000970: ISZERO
00000971: DUP1
00000972: ISZERO
00000973: PUSH2 0x097b
00000976: JUMPI
00000977: PUSH1 0x00
00000979: DUP1
0000097a: REVERT
0000097b: JUMPDEST
0000097c: POP
0000097d: GAS
0000097e: STATICCALL
0000097f: ISZERO
00000980: DUP1
00000981: ISZERO
00000982: PUSH2 0x098f
00000985: JUMPI
00000986: RETURNDATASIZE
00000987: PUSH1 0x00
00000989: DUP1
0000098a: RETURNDATACOPY
0000098b: RETURNDATASIZE
0000098c: PUSH1 0x00
0000098e: REVERT
0000098f: JUMPDEST
00000990: POP
00000991: POP
00000992: POP
00000993: POP
00000994: PUSH1 0x40
00000996: MLOAD
00000997: RETURNDATASIZE
00000998: PUSH1 0x1f
0000099a: NOT
0000099b: PUSH1 0x1f
0000099d: DUP3
0000099e: ADD
0000099f: AND
000009a0: DUP3
000009a1: ADD
000009a2: DUP1
000009a3: PUSH1 0x40
000009a5: MSTORE
000009a6: POP
000009a7: DUP2
000009a8: ADD
000009a9: SWAP1
000009aa: PUSH2 0x09b3
000009ad: SWAP2
000009ae: SWAP1
000009af: PUSH2 0x34ea
000009b2: JUMP
000009b3: JUMPDEST
000009b4: SWAP1
000009b5: POP
000009b6: PUSH1 0x00
000009b8: JUMPDEST
000009b9: DUP6
000009ba: MLOAD
000009bb: DUP2
000009bc: LT
000009bd: ISZERO
000009be: PUSH2 0x0bfe
000009c1: JUMPI
000009c2: PUSH1 0x00
000009c4: DUP7
000009c5: DUP3
000009c6: DUP2
000009c7: MLOAD
000009c8: DUP2
000009c9: LT
000009ca: PUSH2 0x09cf
000009cd: JUMPI
000009ce: INVALID
000009cf: JUMPDEST
000009d0: PUSH1 0x20
000009d2: MUL
000009d3: PUSH1 0x20
000009d5: ADD
000009d6: ADD
000009d7: MLOAD
000009d8: SWAP1
000009d9: POP
000009da: DUP1
000009db: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009f0: AND
000009f1: PUSH4 0xc37f68e2
000009f6: ADDRESS
000009f7: PUSH1 0x40
000009f9: MLOAD
000009fa: DUP3
000009fb: PUSH4 0xffffffff
00000a00: AND
00000a01: PUSH1 0xe0
00000a03: SHL
00000a04: DUP2
00000a05: MSTORE
00000a06: PUSH1 0x04
00000a08: ADD
00000a09: PUSH2 0x0a12
00000a0c: SWAP2
00000a0d: SWAP1
00000a0e: PUSH2 0x394a
00000a11: JUMP
00000a12: JUMPDEST
00000a13: PUSH1 0x80
00000a15: PUSH1 0x40
00000a17: MLOAD
00000a18: DUP1
00000a19: DUP4
00000a1a: SUB
00000a1b: DUP2
00000a1c: DUP7
00000a1d: DUP1
00000a1e: EXTCODESIZE
00000a1f: ISZERO
00000a20: DUP1
00000a21: ISZERO
00000a22: PUSH2 0x0a2a
00000a25: JUMPI
00000a26: PUSH1 0x00
00000a28: DUP1
00000a29: REVERT
00000a2a: JUMPDEST
00000a2b: POP
00000a2c: GAS
00000a2d: STATICCALL
00000a2e: ISZERO
00000a2f: DUP1
00000a30: ISZERO
00000a31: PUSH2 0x0a3e
00000a34: JUMPI
00000a35: RETURNDATASIZE
00000a36: PUSH1 0x00
00000a38: DUP1
00000a39: RETURNDATACOPY
00000a3a: RETURNDATASIZE
00000a3b: PUSH1 0x00
00000a3d: REVERT
00000a3e: JUMPDEST
00000a3f: POP
00000a40: POP
00000a41: POP
00000a42: POP
00000a43: PUSH1 0x40
00000a45: MLOAD
00000a46: RETURNDATASIZE
00000a47: PUSH1 0x1f
00000a49: NOT
00000a4a: PUSH1 0x1f
00000a4c: DUP3
00000a4d: ADD
00000a4e: AND
00000a4f: DUP3
00000a50: ADD
00000a51: DUP1
00000a52: PUSH1 0x40
00000a54: MSTORE
00000a55: POP
00000a56: DUP2
00000a57: ADD
00000a58: SWAP1
00000a59: PUSH2 0x0a62
00000a5c: SWAP2
00000a5d: SWAP1
00000a5e: PUSH2 0x38f9
00000a61: JUMP
00000a62: JUMPDEST
00000a63: PUSH1 0x80
00000a65: DUP11
00000a66: ADD
00000a67: MSTORE
00000a68: PUSH1 0x60
00000a6a: DUP10
00000a6b: ADD
00000a6c: MSTORE
00000a6d: PUSH1 0x40
00000a6f: DUP9
00000a70: ADD
00000a71: MSTORE
00000a72: SWAP5
00000a73: POP
00000a74: DUP5
00000a75: ISZERO
00000a76: PUSH2 0x0a7e
00000a79: JUMPI
00000a7a: PUSH1 0x00
00000a7c: DUP1
00000a7d: REVERT
00000a7e: JUMPDEST
00000a7f: PUSH1 0x40
00000a81: DUP1
00000a82: MLOAD
00000a83: PUSH1 0x20
00000a85: DUP2
00000a86: ADD
00000a87: DUP3
00000a88: MSTORE
00000a89: PUSH1 0x80
00000a8b: DUP9
00000a8c: ADD
00000a8d: MLOAD
00000a8e: DUP2
00000a8f: MSTORE
00000a90: PUSH1 0xc0
00000a92: DUP9
00000a93: ADD
00000a94: MSTORE
00000a95: MLOAD
00000a96: PUSH32 0xfc57d4df00000000000000000000000000000000000000000000000000000000
00000ab7: DUP2
00000ab8: MSTORE
00000ab9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ace: DUP5
00000acf: AND
00000ad0: SWAP1
00000ad1: PUSH4 0xfc57d4df
00000ad6: SWAP1
00000ad7: PUSH2 0x0ae4
00000ada: SWAP1
00000adb: DUP5
00000adc: SWAP1
00000add: PUSH1 0x04
00000adf: ADD
00000ae0: PUSH2 0x394a
00000ae3: JUMP
00000ae4: JUMPDEST
00000ae5: PUSH1 0x20
00000ae7: PUSH1 0x40
00000ae9: MLOAD
00000aea: DUP1
00000aeb: DUP4
00000aec: SUB
00000aed: DUP2
00000aee: DUP7
00000aef: DUP1
00000af0: EXTCODESIZE
00000af1: ISZERO
00000af2: DUP1
00000af3: ISZERO
00000af4: PUSH2 0x0afc
00000af7: JUMPI
00000af8: PUSH1 0x00
00000afa: DUP1
00000afb: REVERT
00000afc: JUMPDEST
00000afd: POP
00000afe: GAS
00000aff: STATICCALL
00000b00: ISZERO
00000b01: DUP1
00000b02: ISZERO
00000b03: PUSH2 0x0b10
00000b06: JUMPI
00000b07: RETURNDATASIZE
00000b08: PUSH1 0x00
00000b0a: DUP1
00000b0b: RETURNDATACOPY
00000b0c: RETURNDATASIZE
00000b0d: PUSH1 0x00
00000b0f: REVERT
00000b10: JUMPDEST
00000b11: POP
00000b12: POP
00000b13: POP
00000b14: POP
00000b15: PUSH1 0x40
00000b17: MLOAD
00000b18: RETURNDATASIZE
00000b19: PUSH1 0x1f
00000b1b: NOT
00000b1c: PUSH1 0x1f
00000b1e: DUP3
00000b1f: ADD
00000b20: AND
00000b21: DUP3
00000b22: ADD
00000b23: DUP1
00000b24: PUSH1 0x40
00000b26: MSTORE
00000b27: POP
00000b28: DUP2
00000b29: ADD
00000b2a: SWAP1
00000b2b: PUSH2 0x0b34
00000b2e: SWAP2
00000b2f: SWAP1
00000b30: PUSH2 0x38b4
00000b33: JUMP
00000b34: JUMPDEST
00000b35: PUSH1 0xa0
00000b37: DUP8
00000b38: ADD
00000b39: DUP2
00000b3a: SWAP1
00000b3b: MSTORE
00000b3c: PUSH2 0x0b44
00000b3f: JUMPI
00000b40: PUSH1 0x00
00000b42: DUP1
00000b43: REVERT
00000b44: JUMPDEST
00000b45: PUSH1 0x40
00000b47: DUP1
00000b48: MLOAD
00000b49: PUSH1 0x20
00000b4b: DUP2
00000b4c: ADD
00000b4d: SWAP1
00000b4e: SWAP2
00000b4f: MSTORE
00000b50: PUSH1 0xa0
00000b52: DUP8
00000b53: ADD
00000b54: MLOAD
00000b55: DUP2
00000b56: MSTORE
00000b57: PUSH1 0xe0
00000b59: DUP8
00000b5a: ADD
00000b5b: DUP2
00000b5c: SWAP1
00000b5d: MSTORE
00000b5e: PUSH1 0xc0
00000b60: DUP8
00000b61: ADD
00000b62: MLOAD
00000b63: PUSH2 0x0b6b
00000b66: SWAP2
00000b67: PUSH2 0x281b
00000b6a: JUMP
00000b6b: JUMPDEST
00000b6c: PUSH2 0x0100
00000b6f: DUP9
00000b70: ADD
00000b71: MSTORE
00000b72: SWAP4
00000b73: POP
00000b74: PUSH1 0x00
00000b76: DUP5
00000b77: PUSH1 0x03
00000b79: DUP2
00000b7a: GT
00000b7b: ISZERO
00000b7c: PUSH2 0x0b81
00000b7f: JUMPI
00000b80: INVALID
00000b81: JUMPDEST
00000b82: EQ
00000b83: PUSH2 0x0b8b
00000b86: JUMPI
00000b87: PUSH1 0x00
00000b89: DUP1
00000b8a: REVERT
00000b8b: JUMPDEST
00000b8c: PUSH2 0x0ba3
00000b8f: DUP7
00000b90: PUSH2 0x0100
00000b93: ADD
00000b94: MLOAD
00000b95: DUP8
00000b96: PUSH1 0x40
00000b98: ADD
00000b99: MLOAD
00000b9a: DUP9
00000b9b: PUSH1 0x00
00000b9d: ADD
00000b9e: MLOAD
00000b9f: PUSH2 0x2907
00000ba2: JUMP
00000ba3: JUMPDEST
00000ba4: DUP8
00000ba5: MSTORE
00000ba6: SWAP4
00000ba7: POP
00000ba8: PUSH1 0x00
00000baa: DUP5
00000bab: PUSH1 0x03
00000bad: DUP2
00000bae: GT
00000baf: ISZERO
00000bb0: PUSH2 0x0bb5
00000bb3: JUMPI
00000bb4: INVALID
00000bb5: JUMPDEST
00000bb6: EQ
00000bb7: PUSH2 0x0bbf
00000bba: JUMPI
00000bbb: PUSH1 0x00
00000bbd: DUP1
00000bbe: REVERT
00000bbf: JUMPDEST
00000bc0: PUSH2 0x0bd6
00000bc3: DUP7
00000bc4: PUSH1 0xe0
00000bc6: ADD
00000bc7: MLOAD
00000bc8: DUP8
00000bc9: PUSH1 0x60
00000bcb: ADD
00000bcc: MLOAD
00000bcd: DUP9
00000bce: PUSH1 0x20
00000bd0: ADD
00000bd1: MLOAD
00000bd2: PUSH2 0x2907
00000bd5: JUMP
00000bd6: JUMPDEST
00000bd7: PUSH1 0x20
00000bd9: DUP9
00000bda: ADD
00000bdb: MSTORE
00000bdc: SWAP4
00000bdd: POP
00000bde: PUSH1 0x00
00000be0: DUP5
00000be1: PUSH1 0x03
00000be3: DUP2
00000be4: GT
00000be5: ISZERO
00000be6: PUSH2 0x0beb
00000be9: JUMPI
00000bea: INVALID
00000beb: JUMPDEST
00000bec: EQ
00000bed: PUSH2 0x0bf5
00000bf0: JUMPI
00000bf1: PUSH1 0x00
00000bf3: DUP1
00000bf4: REVERT
00000bf5: JUMPDEST
00000bf6: POP
00000bf7: PUSH1 0x01
00000bf9: ADD
00000bfa: PUSH2 0x09b8
00000bfd: JUMP
00000bfe: JUMPDEST
00000bff: POP
00000c00: DUP4
00000c01: PUSH1 0x00
00000c03: ADD
00000c04: MLOAD
00000c05: DUP5
00000c06: PUSH1 0x20
00000c08: ADD
00000c09: MLOAD
00000c0a: SWAP7
00000c0b: POP
00000c0c: SWAP7
00000c0d: POP
00000c0e: POP
00000c0f: POP
00000c10: POP
00000c11: POP
00000c12: POP
00000c13: SWAP1
00000c14: SWAP2
00000c15: JUMP
00000c16: JUMPDEST
00000c17: CALLER
00000c18: PUSH1 0x00
00000c1a: SWAP1
00000c1b: DUP2
00000c1c: MSTORE
00000c1d: PUSH1 0x01
00000c1f: PUSH1 0x20
00000c21: MSTORE
00000c22: PUSH1 0x40
00000c24: SWAP1
00000c25: KECCAK256
00000c26: SLOAD
00000c27: PUSH1 0xff
00000c29: AND
00000c2a: PUSH2 0x0c5f
00000c2d: JUMPI
00000c2e: PUSH1 0x40
00000c30: MLOAD
00000c31: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c52: DUP2
00000c53: MSTORE
00000c54: PUSH1 0x04
00000c56: ADD
00000c57: PUSH2 0x0672
00000c5a: SWAP1
00000c5b: PUSH2 0x3ba4
00000c5e: JUMP
00000c5f: JUMPDEST
00000c60: PUSH20 0x4ddc2d193948926d02f9b1fe9e1daa0718270ed5
00000c75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c8a: AND
00000c8b: PUSH4 0x4e4d9fea
00000c90: DUP3
00000c91: PUSH1 0x40
00000c93: MLOAD
00000c94: DUP3
00000c95: PUSH4 0xffffffff
00000c9a: AND
00000c9b: PUSH1 0xe0
00000c9d: SHL
00000c9e: DUP2
00000c9f: MSTORE
00000ca0: PUSH1 0x04
00000ca2: ADD
00000ca3: PUSH1 0x00
00000ca5: PUSH1 0x40
00000ca7: MLOAD
00000ca8: DUP1
00000ca9: DUP4
00000caa: SUB
00000cab: DUP2
00000cac: DUP6
00000cad: DUP9
00000cae: DUP1
00000caf: EXTCODESIZE
00000cb0: ISZERO
00000cb1: DUP1
00000cb2: ISZERO
00000cb3: PUSH2 0x0cbb
00000cb6: JUMPI
00000cb7: PUSH1 0x00
00000cb9: DUP1
00000cba: REVERT
00000cbb: JUMPDEST
00000cbc: POP
00000cbd: GAS
00000cbe: CALL
00000cbf: ISZERO
00000cc0: DUP1
00000cc1: ISZERO
00000cc2: PUSH2 0x0ccf
00000cc5: JUMPI
00000cc6: RETURNDATASIZE
00000cc7: PUSH1 0x00
00000cc9: DUP1
00000cca: RETURNDATACOPY
00000ccb: RETURNDATASIZE
00000ccc: PUSH1 0x00
00000cce: REVERT
00000ccf: JUMPDEST
00000cd0: POP
00000cd1: POP
00000cd2: POP
00000cd3: POP
00000cd4: POP
00000cd5: POP
00000cd6: JUMP
00000cd7: JUMPDEST
00000cd8: CALLER
00000cd9: PUSH1 0x00
00000cdb: SWAP1
00000cdc: DUP2
00000cdd: MSTORE
00000cde: PUSH1 0x01
00000ce0: PUSH1 0x20
00000ce2: MSTORE
00000ce3: PUSH1 0x40
00000ce5: SWAP1
00000ce6: KECCAK256
00000ce7: SLOAD
00000ce8: PUSH1 0xff
00000cea: AND
00000ceb: PUSH2 0x0d20
00000cee: JUMPI
00000cef: PUSH1 0x40
00000cf1: MLOAD
00000cf2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000d13: DUP2
00000d14: MSTORE
00000d15: PUSH1 0x04
00000d17: ADD
00000d18: PUSH2 0x0672
00000d1b: SWAP1
00000d1c: PUSH2 0x3ba4
00000d1f: JUMP
00000d20: JUMPDEST
00000d21: PUSH1 0x40
00000d23: MLOAD
00000d24: PUSH32 0x0e75270200000000000000000000000000000000000000000000000000000000
00000d45: DUP2
00000d46: MSTORE
00000d47: PUSH1 0x00
00000d49: SWAP1
00000d4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d5f: DUP5
00000d60: AND
00000d61: SWAP1
00000d62: PUSH4 0x0e752702
00000d67: SWAP1
00000d68: PUSH2 0x0d75
00000d6b: SWAP1
00000d6c: DUP6
00000d6d: SWAP1
00000d6e: PUSH1 0x04
00000d70: ADD
00000d71: PUSH2 0x3ccc
00000d74: JUMP
00000d75: JUMPDEST
00000d76: PUSH1 0x20
00000d78: PUSH1 0x40
00000d7a: MLOAD
00000d7b: DUP1
00000d7c: DUP4
00000d7d: SUB
00000d7e: DUP2
00000d7f: PUSH1 0x00
00000d81: DUP8
00000d82: DUP1
00000d83: EXTCODESIZE
00000d84: ISZERO
00000d85: DUP1
00000d86: ISZERO
00000d87: PUSH2 0x0d8f
00000d8a: JUMPI
00000d8b: PUSH1 0x00
00000d8d: DUP1
00000d8e: REVERT
00000d8f: JUMPDEST
00000d90: POP
00000d91: GAS
00000d92: CALL
00000d93: ISZERO
00000d94: DUP1
00000d95: ISZERO
00000d96: PUSH2 0x0da3
00000d99: JUMPI
00000d9a: RETURNDATASIZE
00000d9b: PUSH1 0x00
00000d9d: DUP1
00000d9e: RETURNDATACOPY
00000d9f: RETURNDATASIZE
00000da0: PUSH1 0x00
00000da2: REVERT
00000da3: JUMPDEST
00000da4: POP
00000da5: POP
00000da6: POP
00000da7: POP
00000da8: PUSH1 0x40
00000daa: MLOAD
00000dab: RETURNDATASIZE
00000dac: PUSH1 0x1f
00000dae: NOT
00000daf: PUSH1 0x1f
00000db1: DUP3
00000db2: ADD
00000db3: AND
00000db4: DUP3
00000db5: ADD
00000db6: DUP1
00000db7: PUSH1 0x40
00000db9: MSTORE
00000dba: POP
00000dbb: DUP2
00000dbc: ADD
00000dbd: SWAP1
00000dbe: PUSH2 0x0dc7
00000dc1: SWAP2
00000dc2: SWAP1
00000dc3: PUSH2 0x38b4
00000dc6: JUMP
00000dc7: JUMPDEST
00000dc8: SWAP1
00000dc9: POP
00000dca: DUP1
00000dcb: ISZERO
00000dcc: PUSH2 0x0dd4
00000dcf: JUMPI
00000dd0: PUSH1 0x00
00000dd2: DUP1
00000dd3: REVERT
00000dd4: JUMPDEST
00000dd5: POP
00000dd6: POP
00000dd7: POP
00000dd8: JUMP
00000dd9: JUMPDEST
00000dda: PUSH2 0x0de1
00000ddd: PUSH2 0x2817
00000de0: JUMP
00000de1: JUMPDEST
00000de2: PUSH1 0x00
00000de4: SLOAD
00000de5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dfa: SWAP1
00000dfb: DUP2
00000dfc: AND
00000dfd: SWAP2
00000dfe: AND
00000dff: EQ
00000e00: PUSH2 0x0e35
00000e03: JUMPI
00000e04: PUSH1 0x40
00000e06: MLOAD
00000e07: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000e28: DUP2
00000e29: MSTORE
00000e2a: PUSH1 0x04
00000e2c: ADD
00000e2d: PUSH2 0x0672
00000e30: SWAP1
00000e31: PUSH2 0x3b6f
00000e34: JUMP
00000e35: JUMPDEST
00000e36: DUP1
00000e37: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e4c: AND
00000e4d: PUSH32 0x9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea2
00000e6e: PUSH1 0x00
00000e70: PUSH1 0x40
00000e72: MLOAD
00000e73: PUSH2 0x0e7c
00000e76: SWAP2
00000e77: SWAP1
00000e78: PUSH2 0x39eb
00000e7b: JUMP
00000e7c: JUMPDEST
00000e7d: PUSH1 0x40
00000e7f: MLOAD
00000e80: DUP1
00000e81: SWAP2
00000e82: SUB
00000e83: SWAP1
00000e84: LOG2
00000e85: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e9a: AND
00000e9b: PUSH1 0x00
00000e9d: SWAP1
00000e9e: DUP2
00000e9f: MSTORE
00000ea0: PUSH1 0x01
00000ea2: PUSH1 0x20
00000ea4: MSTORE
00000ea5: PUSH1 0x40
00000ea7: SWAP1
00000ea8: KECCAK256
00000ea9: DUP1
00000eaa: SLOAD
00000eab: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00000ecc: AND
00000ecd: SWAP1
00000ece: SSTORE
00000ecf: JUMP
00000ed0: JUMPDEST
00000ed1: PUSH2 0x0ed8
00000ed4: PUSH2 0x2817
00000ed7: JUMP
00000ed8: JUMPDEST
00000ed9: PUSH1 0x00
00000edb: SLOAD
00000edc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ef1: SWAP1
00000ef2: DUP2
00000ef3: AND
00000ef4: SWAP2
00000ef5: AND
00000ef6: EQ
00000ef7: PUSH2 0x0f2c
00000efa: JUMPI
00000efb: PUSH1 0x40
00000efd: MLOAD
00000efe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000f1f: DUP2
00000f20: MSTORE
00000f21: PUSH1 0x04
00000f23: ADD
00000f24: PUSH2 0x0672
00000f27: SWAP1
00000f28: PUSH2 0x3b6f
00000f2b: JUMP
00000f2c: JUMPDEST
00000f2d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f42: SWAP1
00000f43: SWAP2
00000f44: AND
00000f45: PUSH1 0x00
00000f47: SWAP1
00000f48: DUP2
00000f49: MSTORE
00000f4a: PUSH1 0x02
00000f4c: PUSH1 0x20
00000f4e: MSTORE
00000f4f: PUSH1 0x40
00000f51: SWAP1
00000f52: KECCAK256
00000f53: SSTORE
00000f54: JUMP
00000f55: JUMPDEST
00000f56: PUSH2 0x0f5d
00000f59: PUSH2 0x2817
00000f5c: JUMP
00000f5d: JUMPDEST
00000f5e: PUSH1 0x00
00000f60: SLOAD
00000f61: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f76: SWAP1
00000f77: DUP2
00000f78: AND
00000f79: SWAP2
00000f7a: AND
00000f7b: EQ
00000f7c: PUSH2 0x0fb1
00000f7f: JUMPI
00000f80: PUSH1 0x40
00000f82: MLOAD
00000f83: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000fa4: DUP2
00000fa5: MSTORE
00000fa6: PUSH1 0x04
00000fa8: ADD
00000fa9: PUSH2 0x0672
00000fac: SWAP1
00000fad: PUSH2 0x3b6f
00000fb0: JUMP
00000fb1: JUMPDEST
00000fb2: PUSH2 0x0fbd
00000fb5: DUP3
00000fb6: DUP3
00000fb7: PUSH1 0x00
00000fb9: PUSH2 0x2963
00000fbc: JUMP
00000fbd: JUMPDEST
00000fbe: POP
00000fbf: POP
00000fc0: JUMP
00000fc1: JUMPDEST
00000fc2: PUSH1 0x00
00000fc4: DUP1
00000fc5: PUSH2 0x0fcc
00000fc8: PUSH2 0x3235
00000fcb: JUMP
00000fcc: JUMPDEST
00000fcd: PUSH1 0x00
00000fcf: DUP1
00000fd0: DUP6
00000fd1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fe6: AND
00000fe7: PUSH4 0xc37f68e2
00000fec: ADDRESS
00000fed: PUSH1 0x40
00000fef: MLOAD
00000ff0: DUP3
00000ff1: PUSH4 0xffffffff
00000ff6: AND
00000ff7: PUSH1 0xe0
00000ff9: SHL
00000ffa: DUP2
00000ffb: MSTORE
00000ffc: PUSH1 0x04
00000ffe: ADD
00000fff: PUSH2 0x1008
00001002: SWAP2
00001003: SWAP1
00001004: PUSH2 0x394a
00001007: JUMP
00001008: JUMPDEST
00001009: PUSH1 0x80
0000100b: PUSH1 0x40
0000100d: MLOAD
0000100e: DUP1
0000100f: DUP4
00001010: SUB
00001011: DUP2
00001012: DUP7
00001013: DUP1
00001014: EXTCODESIZE
00001015: ISZERO
00001016: DUP1
00001017: ISZERO
00001018: PUSH2 0x1020
0000101b: JUMPI
0000101c: PUSH1 0x00
0000101e: DUP1
0000101f: REVERT
00001020: JUMPDEST
00001021: POP
00001022: GAS
00001023: STATICCALL
00001024: ISZERO
00001025: DUP1
00001026: ISZERO
00001027: PUSH2 0x1034
0000102a: JUMPI
0000102b: RETURNDATASIZE
0000102c: PUSH1 0x00
0000102e: DUP1
0000102f: RETURNDATACOPY
00001030: RETURNDATASIZE
00001031: PUSH1 0x00
00001033: REVERT
00001034: JUMPDEST
00001035: POP
00001036: POP
00001037: POP
00001038: POP
00001039: PUSH1 0x40
0000103b: MLOAD
0000103c: RETURNDATASIZE
0000103d: PUSH1 0x1f
0000103f: NOT
00001040: PUSH1 0x1f
00001042: DUP3
00001043: ADD
00001044: AND
00001045: DUP3
00001046: ADD
00001047: DUP1
00001048: PUSH1 0x40
0000104a: MSTORE
0000104b: POP
0000104c: DUP2
0000104d: ADD
0000104e: SWAP1
0000104f: PUSH2 0x1058
00001052: SWAP2
00001053: SWAP1
00001054: PUSH2 0x38f9
00001057: JUMP
00001058: JUMPDEST
00001059: PUSH1 0x80
0000105b: DUP8
0000105c: ADD
0000105d: MSTORE
0000105e: PUSH1 0x60
00001060: DUP7
00001061: ADD
00001062: MSTORE
00001063: PUSH1 0x40
00001065: DUP6
00001066: ADD
00001067: MSTORE
00001068: SWAP2
00001069: POP
0000106a: DUP2
0000106b: ISZERO
0000106c: PUSH2 0x1074
0000106f: JUMPI
00001070: PUSH1 0x00
00001072: DUP1
00001073: REVERT
00001074: JUMPDEST
00001075: PUSH1 0x40
00001077: DUP1
00001078: MLOAD
00001079: PUSH1 0x20
0000107b: DUP1
0000107c: DUP3
0000107d: ADD
0000107e: DUP4
0000107f: MSTORE
00001080: PUSH1 0x80
00001082: DUP7
00001083: ADD
00001084: MLOAD
00001085: DUP3
00001086: MSTORE
00001087: PUSH1 0xc0
00001089: DUP7
0000108a: ADD
0000108b: DUP3
0000108c: SWAP1
0000108d: MSTORE
0000108e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010a3: DUP10
000010a4: AND
000010a5: PUSH1 0x00
000010a7: SWAP1
000010a8: DUP2
000010a9: MSTORE
000010aa: PUSH1 0x02
000010ac: SWAP1
000010ad: SWAP2
000010ae: MSTORE
000010af: SWAP2
000010b0: SWAP1
000010b1: SWAP2
000010b2: KECCAK256
000010b3: SLOAD
000010b4: PUSH2 0x10bd
000010b7: SWAP2
000010b8: SWAP1
000010b9: PUSH2 0x2a09
000010bc: JUMP
000010bd: JUMPDEST
000010be: PUSH1 0xc0
000010c0: DUP6
000010c1: ADD
000010c2: MSTORE
000010c3: SWAP1
000010c4: POP
000010c5: PUSH1 0x00
000010c7: DUP2
000010c8: PUSH1 0x03
000010ca: DUP2
000010cb: GT
000010cc: ISZERO
000010cd: PUSH2 0x10d2
000010d0: JUMPI
000010d1: INVALID
000010d2: JUMPDEST
000010d3: EQ
000010d4: PUSH2 0x10dc
000010d7: JUMPI
000010d8: PUSH1 0x00
000010da: DUP1
000010db: REVERT
000010dc: JUMPDEST
000010dd: PUSH2 0x10f3
000010e0: DUP4
000010e1: PUSH1 0xc0
000010e3: ADD
000010e4: MLOAD
000010e5: DUP5
000010e6: PUSH1 0x40
000010e8: ADD
000010e9: MLOAD
000010ea: DUP6
000010eb: PUSH1 0x00
000010ed: ADD
000010ee: MLOAD
000010ef: PUSH2 0x2907
000010f2: JUMP
000010f3: JUMPDEST
000010f4: DUP5
000010f5: MSTORE
000010f6: SWAP1
000010f7: POP
000010f8: PUSH1 0x00
000010fa: DUP2
000010fb: PUSH1 0x03
000010fd: DUP2
000010fe: GT
000010ff: ISZERO
00001100: PUSH2 0x1105
00001103: JUMPI
00001104: INVALID
00001105: JUMPDEST
00001106: EQ
00001107: PUSH2 0x110f
0000110a: JUMPI
0000110b: PUSH1 0x00
0000110d: DUP1
0000110e: REVERT
0000110f: JUMPDEST
00001110: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001125: DUP7
00001126: AND
00001127: PUSH1 0x00
00001129: SWAP1
0000112a: DUP2
0000112b: MSTORE
0000112c: PUSH1 0x02
0000112e: PUSH1 0x20
00001130: MSTORE
00001131: PUSH1 0x40
00001133: SWAP1
00001134: KECCAK256
00001135: SLOAD
00001136: PUSH1 0x60
00001138: DUP5
00001139: ADD
0000113a: MLOAD
0000113b: PUSH2 0x1143
0000113e: SWAP2
0000113f: PUSH2 0x2a71
00001142: JUMP
00001143: JUMPDEST
00001144: PUSH1 0x20
00001146: DUP5
00001147: ADD
00001148: DUP2
00001149: SWAP1
0000114a: MSTORE
0000114b: SWAP3
0000114c: MLOAD
0000114d: SWAP5
0000114e: POP
0000114f: SWAP2
00001150: SWAP3
00001151: POP
00001152: POP
00001153: POP
00001154: SWAP2
00001155: POP
00001156: SWAP2
00001157: JUMP
00001158: JUMPDEST
00001159: CALLER
0000115a: PUSH1 0x00
0000115c: SWAP1
0000115d: DUP2
0000115e: MSTORE
0000115f: PUSH1 0x01
00001161: PUSH1 0x20
00001163: MSTORE
00001164: PUSH1 0x40
00001166: SWAP1
00001167: KECCAK256
00001168: SLOAD
00001169: PUSH1 0xff
0000116b: AND
0000116c: PUSH2 0x11a1
0000116f: JUMPI
00001170: PUSH1 0x40
00001172: MLOAD
00001173: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001194: DUP2
00001195: MSTORE
00001196: PUSH1 0x04
00001198: ADD
00001199: PUSH2 0x0672
0000119c: SWAP1
0000119d: PUSH2 0x3ba4
000011a0: JUMP
000011a1: JUMPDEST
000011a2: PUSH1 0x40
000011a4: DUP1
000011a5: MLOAD
000011a6: PUSH1 0x01
000011a8: DUP1
000011a9: DUP3
000011aa: MSTORE
000011ab: DUP2
000011ac: DUP4
000011ad: ADD
000011ae: SWAP1
000011af: SWAP3
000011b0: MSTORE
000011b1: PUSH1 0x60
000011b3: SWAP2
000011b4: PUSH1 0x20
000011b6: DUP1
000011b7: DUP4
000011b8: ADD
000011b9: SWAP1
000011ba: DUP1
000011bb: CALLDATASIZE
000011bc: DUP4
000011bd: CALLDATACOPY
000011be: ADD
000011bf: SWAP1
000011c0: POP
000011c1: POP
000011c2: SWAP1
000011c3: POP
000011c4: DUP2
000011c5: DUP2
000011c6: PUSH1 0x00
000011c8: DUP2
000011c9: MLOAD
000011ca: DUP2
000011cb: LT
000011cc: PUSH2 0x11d1
000011cf: JUMPI
000011d0: INVALID
000011d1: JUMPDEST
000011d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011e7: SWAP1
000011e8: SWAP3
000011e9: AND
000011ea: PUSH1 0x20
000011ec: SWAP3
000011ed: DUP4
000011ee: MUL
000011ef: SWAP2
000011f0: SWAP1
000011f1: SWAP2
000011f2: ADD
000011f3: SWAP1
000011f4: SWAP2
000011f5: ADD
000011f6: MSTORE
000011f7: PUSH1 0x40
000011f9: MLOAD
000011fa: PUSH32 0xc299823800000000000000000000000000000000000000000000000000000000
0000121b: DUP2
0000121c: MSTORE
0000121d: PUSH1 0x60
0000121f: SWAP1
00001220: PUSH20 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b
00001235: SWAP1
00001236: PUSH4 0xc2998238
0000123b: SWAP1
0000123c: PUSH2 0x1249
0000123f: SWAP1
00001240: DUP6
00001241: SWAP1
00001242: PUSH1 0x04
00001244: ADD
00001245: PUSH2 0x3991
00001248: JUMP
00001249: JUMPDEST
0000124a: PUSH1 0x00
0000124c: PUSH1 0x40
0000124e: MLOAD
0000124f: DUP1
00001250: DUP4
00001251: SUB
00001252: DUP2
00001253: PUSH1 0x00
00001255: DUP8
00001256: DUP1
00001257: EXTCODESIZE
00001258: ISZERO
00001259: DUP1
0000125a: ISZERO
0000125b: PUSH2 0x1263
0000125e: JUMPI
0000125f: PUSH1 0x00
00001261: DUP1
00001262: REVERT
00001263: JUMPDEST
00001264: POP
00001265: GAS
00001266: CALL
00001267: ISZERO
00001268: DUP1
00001269: ISZERO
0000126a: PUSH2 0x1277
0000126d: JUMPI
0000126e: RETURNDATASIZE
0000126f: PUSH1 0x00
00001271: DUP1
00001272: RETURNDATACOPY
00001273: RETURNDATASIZE
00001274: PUSH1 0x00
00001276: REVERT
00001277: JUMPDEST
00001278: POP
00001279: POP
0000127a: POP
0000127b: POP
0000127c: PUSH1 0x40
0000127e: MLOAD
0000127f: RETURNDATASIZE
00001280: PUSH1 0x00
00001282: DUP3
00001283: RETURNDATACOPY
00001284: PUSH1 0x1f
00001286: RETURNDATASIZE
00001287: SWAP1
00001288: DUP2
00001289: ADD
0000128a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000012ab: AND
000012ac: DUP3
000012ad: ADD
000012ae: PUSH1 0x40
000012b0: MSTORE
000012b1: PUSH2 0x12bd
000012b4: SWAP2
000012b5: SWAP1
000012b6: DUP2
000012b7: ADD
000012b8: SWAP1
000012b9: PUSH2 0x37f8
000012bc: JUMP
000012bd: JUMPDEST
000012be: SWAP1
000012bf: POP
000012c0: DUP1
000012c1: PUSH1 0x00
000012c3: DUP2
000012c4: MLOAD
000012c5: DUP2
000012c6: LT
000012c7: PUSH2 0x12cc
000012ca: JUMPI
000012cb: INVALID
000012cc: JUMPDEST
000012cd: PUSH1 0x20
000012cf: MUL
000012d0: PUSH1 0x20
000012d2: ADD
000012d3: ADD
000012d4: MLOAD
000012d5: PUSH1 0x00
000012d7: EQ
000012d8: PUSH2 0x0dd4
000012db: JUMPI
000012dc: PUSH1 0x00
000012de: DUP1
000012df: REVERT
000012e0: JUMPDEST
000012e1: CALLER
000012e2: PUSH1 0x00
000012e4: SWAP1
000012e5: DUP2
000012e6: MSTORE
000012e7: PUSH1 0x01
000012e9: PUSH1 0x20
000012eb: MSTORE
000012ec: PUSH1 0x40
000012ee: SWAP1
000012ef: KECCAK256
000012f0: SLOAD
000012f1: PUSH1 0xff
000012f3: AND
000012f4: PUSH2 0x1329
000012f7: JUMPI
000012f8: PUSH1 0x40
000012fa: MLOAD
000012fb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000131c: DUP2
0000131d: MSTORE
0000131e: PUSH1 0x04
00001320: ADD
00001321: PUSH2 0x0672
00001324: SWAP1
00001325: PUSH2 0x3ba4
00001328: JUMP
00001329: JUMPDEST
0000132a: DUP2
0000132b: PUSH2 0x1334
0000132e: DUP4
0000132f: DUP4
00001330: PUSH2 0x2ace
00001333: JUMP
00001334: JUMPDEST
00001335: PUSH2 0x133c
00001338: PUSH2 0x3292
0000133b: JUMP
0000133c: JUMPDEST
0000133d: PUSH2 0x1345
00001340: DUP3
00001341: PUSH2 0x2407
00001344: JUMP
00001345: JUMPDEST
00001346: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000135b: DUP6
0000135c: AND
0000135d: PUSH1 0x00
0000135f: SWAP1
00001360: DUP2
00001361: MSTORE
00001362: PUSH1 0x04
00001364: PUSH1 0x20
00001366: MSTORE
00001367: PUSH1 0x40
00001369: SWAP1
0000136a: KECCAK256
0000136b: SLOAD
0000136c: DUP2
0000136d: MLOAD
0000136e: SWAP2
0000136f: SWAP5
00001370: POP
00001371: SWAP3
00001372: POP
00001373: DUP3
00001374: LT
00001375: ISZERO
00001376: SWAP1
00001377: POP
00001378: PUSH2 0x13ad
0000137b: JUMPI
0000137c: PUSH1 0x40
0000137e: MLOAD
0000137f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000013a0: DUP2
000013a1: MSTORE
000013a2: PUSH1 0x04
000013a4: ADD
000013a5: PUSH2 0x0672
000013a8: SWAP1
000013a9: PUSH2 0x3c01
000013ac: JUMP
000013ad: JUMPDEST
000013ae: POP
000013af: POP
000013b0: POP
000013b1: POP
000013b2: POP
000013b3: JUMP
000013b4: JUMPDEST
000013b5: PUSH1 0x00
000013b7: DUP1
000013b8: PUSH1 0x00
000013ba: DUP1
000013bb: PUSH1 0x00
000013bd: PUSH20 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b
000013d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000013e7: AND
000013e8: PUSH4 0x5ec88c79
000013ed: ADDRESS
000013ee: PUSH1 0x40
000013f0: MLOAD
000013f1: DUP3
000013f2: PUSH4 0xffffffff
000013f7: AND
000013f8: PUSH1 0xe0
000013fa: SHL
000013fb: DUP2
000013fc: MSTORE
000013fd: PUSH1 0x04
000013ff: ADD
00001400: PUSH2 0x1409
00001403: SWAP2
00001404: SWAP1
00001405: PUSH2 0x394a
00001408: JUMP
00001409: JUMPDEST
0000140a: PUSH1 0x60
0000140c: PUSH1 0x40
0000140e: MLOAD
0000140f: DUP1
00001410: DUP4
00001411: SUB
00001412: DUP2
00001413: DUP7
00001414: DUP1
00001415: EXTCODESIZE
00001416: ISZERO
00001417: DUP1
00001418: ISZERO
00001419: PUSH2 0x1421
0000141c: JUMPI
0000141d: PUSH1 0x00
0000141f: DUP1
00001420: REVERT
00001421: JUMPDEST
00001422: POP
00001423: GAS
00001424: STATICCALL
00001425: ISZERO
00001426: DUP1
00001427: ISZERO
00001428: PUSH2 0x1435
0000142b: JUMPI
0000142c: RETURNDATASIZE
0000142d: PUSH1 0x00
0000142f: DUP1
00001430: RETURNDATACOPY
00001431: RETURNDATASIZE
00001432: PUSH1 0x00
00001434: REVERT
00001435: JUMPDEST
00001436: POP
00001437: POP
00001438: POP
00001439: POP
0000143a: PUSH1 0x40
0000143c: MLOAD
0000143d: RETURNDATASIZE
0000143e: PUSH1 0x1f
00001440: NOT
00001441: PUSH1 0x1f
00001443: DUP3
00001444: ADD
00001445: AND
00001446: DUP3
00001447: ADD
00001448: DUP1
00001449: PUSH1 0x40
0000144b: MSTORE
0000144c: POP
0000144d: DUP2
0000144e: ADD
0000144f: SWAP1
00001450: PUSH2 0x1459
00001453: SWAP2
00001454: SWAP1
00001455: PUSH2 0x38cc
00001458: JUMP
00001459: JUMPDEST
0000145a: SWAP3
0000145b: POP
0000145c: SWAP3
0000145d: POP
0000145e: SWAP3
0000145f: POP
00001460: DUP3
00001461: PUSH1 0x00
00001463: EQ
00001464: PUSH2 0x146c
00001467: JUMPI
00001468: PUSH1 0x00
0000146a: DUP1
0000146b: REVERT
0000146c: JUMPDEST
0000146d: SWAP1
0000146e: SWAP4
0000146f: POP
00001470: SWAP2
00001471: POP
00001472: POP
00001473: SWAP1
00001474: SWAP2
00001475: JUMP
00001476: JUMPDEST
00001477: CALLER
00001478: PUSH1 0x00
0000147a: SWAP1
0000147b: DUP2
0000147c: MSTORE
0000147d: PUSH1 0x01
0000147f: PUSH1 0x20
00001481: MSTORE
00001482: PUSH1 0x40
00001484: SWAP1
00001485: KECCAK256
00001486: SLOAD
00001487: PUSH1 0xff
00001489: AND
0000148a: PUSH2 0x14bf
0000148d: JUMPI
0000148e: PUSH1 0x40
00001490: MLOAD
00001491: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000014b2: DUP2
000014b3: MSTORE
000014b4: PUSH1 0x04
000014b6: ADD
000014b7: PUSH2 0x0672
000014ba: SWAP1
000014bb: PUSH2 0x3ba4
000014be: JUMP
000014bf: JUMPDEST
000014c0: PUSH2 0x14dc
000014c3: PUSH20 0x4ddc2d193948926d02f9b1fe9e1daa0718270ed5
000014d8: PUSH2 0x1158
000014db: JUMP
000014dc: JUMPDEST
000014dd: PUSH20 0x4ddc2d193948926d02f9b1fe9e1daa0718270ed5
000014f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001507: AND
00001508: PUSH4 0x1249c58b
0000150d: DUP3
0000150e: PUSH1 0x40
00001510: MLOAD
00001511: DUP3
00001512: PUSH4 0xffffffff
00001517: AND
00001518: PUSH1 0xe0
0000151a: SHL
0000151b: DUP2
0000151c: MSTORE
0000151d: PUSH1 0x04
0000151f: ADD
00001520: PUSH1 0x00
00001522: PUSH1 0x40
00001524: MLOAD
00001525: DUP1
00001526: DUP4
00001527: SUB
00001528: DUP2
00001529: DUP6
0000152a: DUP9
0000152b: DUP1
0000152c: EXTCODESIZE
0000152d: ISZERO
0000152e: DUP1
0000152f: ISZERO
00001530: PUSH2 0x0cbb
00001533: JUMPI
00001534: PUSH1 0x00
00001536: DUP1
00001537: REVERT
00001538: JUMPDEST
00001539: PUSH2 0x1540
0000153c: PUSH2 0x2817
0000153f: JUMP
00001540: JUMPDEST
00001541: PUSH1 0x00
00001543: SLOAD
00001544: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001559: SWAP1
0000155a: DUP2
0000155b: AND
0000155c: SWAP2
0000155d: AND
0000155e: EQ
0000155f: PUSH2 0x1594
00001562: JUMPI
00001563: PUSH1 0x40
00001565: MLOAD
00001566: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001587: DUP2
00001588: MSTORE
00001589: PUSH1 0x04
0000158b: ADD
0000158c: PUSH2 0x0672
0000158f: SWAP1
00001590: PUSH2 0x3b6f
00001593: JUMP
00001594: JUMPDEST
00001595: PUSH1 0x00
00001597: DUP1
00001598: SLOAD
00001599: PUSH1 0x40
0000159b: MLOAD
0000159c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015b1: SWAP1
000015b2: SWAP2
000015b3: AND
000015b4: SWAP1
000015b5: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000015d6: SWAP1
000015d7: DUP4
000015d8: SWAP1
000015d9: LOG3
000015da: PUSH1 0x00
000015dc: DUP1
000015dd: SLOAD
000015de: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000015ff: AND
00001600: SWAP1
00001601: SSTORE
00001602: JUMP
00001603: JUMPDEST
00001604: CALLER
00001605: PUSH1 0x00
00001607: SWAP1
00001608: DUP2
00001609: MSTORE
0000160a: PUSH1 0x01
0000160c: PUSH1 0x20
0000160e: MSTORE
0000160f: PUSH1 0x40
00001611: SWAP1
00001612: KECCAK256
00001613: SLOAD
00001614: PUSH1 0xff
00001616: AND
00001617: PUSH2 0x164c
0000161a: JUMPI
0000161b: PUSH1 0x40
0000161d: MLOAD
0000161e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000163f: DUP2
00001640: MSTORE
00001641: PUSH1 0x04
00001643: ADD
00001644: PUSH2 0x0672
00001647: SWAP1
00001648: PUSH2 0x3ba4
0000164b: JUMP
0000164c: JUMPDEST
0000164d: PUSH2 0x1676
00001650: DUP2
00001651: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00001672: PUSH2 0x0cd7
00001675: JUMP
00001676: JUMPDEST
00001677: POP
00001678: JUMP
00001679: JUMPDEST
0000167a: PUSH1 0x00
0000167c: SLOAD
0000167d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001692: AND
00001693: SWAP1
00001694: JUMP
00001695: JUMPDEST
00001696: CALLER
00001697: PUSH1 0x00
00001699: SWAP1
0000169a: DUP2
0000169b: MSTORE
0000169c: PUSH1 0x01
0000169e: PUSH1 0x20
000016a0: MSTORE
000016a1: PUSH1 0x40
000016a3: SWAP1
000016a4: KECCAK256
000016a5: SLOAD
000016a6: PUSH1 0xff
000016a8: AND
000016a9: PUSH2 0x16de
000016ac: JUMPI
000016ad: PUSH1 0x40
000016af: MLOAD
000016b0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000016d1: DUP2
000016d2: MSTORE
000016d3: PUSH1 0x04
000016d5: ADD
000016d6: PUSH2 0x0672
000016d9: SWAP1
000016da: PUSH2 0x3ba4
000016dd: JUMP
000016de: JUMPDEST
000016df: DUP5
000016e0: PUSH2 0x16e7
000016e3: PUSH2 0x3292
000016e6: JUMP
000016e7: JUMPDEST
000016e8: POP
000016e9: PUSH1 0x40
000016eb: DUP1
000016ec: MLOAD
000016ed: PUSH1 0x20
000016ef: DUP2
000016f0: ADD
000016f1: SWAP1
000016f2: SWAP2
000016f3: MSTORE
000016f4: DUP3
000016f5: DUP2
000016f6: MSTORE
000016f7: PUSH2 0x16fe
000016fa: PUSH2 0x3292
000016fd: JUMP
000016fe: JUMPDEST
000016ff: POP
00001700: PUSH1 0x40
00001702: DUP1
00001703: MLOAD
00001704: PUSH1 0x20
00001706: DUP2
00001707: ADD
00001708: SWAP1
00001709: SWAP2
0000170a: MSTORE
0000170b: PUSH8 0x0dcef33a6f838000
00001714: DUP2
00001715: MSTORE
00001716: PUSH1 0x00
00001718: PUSH2 0x171f
0000171b: PUSH2 0x3292
0000171e: JUMP
0000171f: JUMPDEST
00001720: PUSH2 0x1729
00001723: DUP4
00001724: DUP6
00001725: PUSH2 0x281b
00001728: JUMP
00001729: JUMPDEST
0000172a: SWAP1
0000172b: SWAP3
0000172c: POP
0000172d: SWAP1
0000172e: POP
0000172f: PUSH1 0x00
00001731: DUP3
00001732: PUSH1 0x03
00001734: DUP2
00001735: GT
00001736: ISZERO
00001737: PUSH2 0x173c
0000173a: JUMPI
0000173b: INVALID
0000173c: JUMPDEST
0000173d: EQ
0000173e: PUSH2 0x1746
00001741: JUMPI
00001742: PUSH1 0x00
00001744: DUP1
00001745: REVERT
00001746: JUMPDEST
00001747: PUSH2 0x174e
0000174a: PUSH2 0x32a5
0000174d: JUMP
0000174e: JUMPDEST
0000174f: PUSH1 0x40
00001751: DUP1
00001752: MLOAD
00001753: PUSH1 0x20
00001755: DUP1
00001756: DUP3
00001757: ADD
00001758: DUP4
00001759: MSTORE
0000175a: DUP12
0000175b: DUP3
0000175c: MSTORE
0000175d: PUSH1 0x60
0000175f: DUP5
00001760: ADD
00001761: DUP3
00001762: SWAP1
00001763: MSTORE
00001764: DUP3
00001765: MLOAD
00001766: SWAP1
00001767: DUP2
00001768: ADD
00001769: SWAP1
0000176a: SWAP3
0000176b: MSTORE
0000176c: PUSH1 0x03
0000176e: SLOAD
0000176f: DUP3
00001770: MSTORE
00001771: PUSH2 0x1779
00001774: SWAP2
00001775: PUSH2 0x2b23
00001778: JUMP
00001779: JUMPDEST
0000177a: PUSH1 0x80
0000177c: DUP4
0000177d: ADD
0000177e: MSTORE
0000177f: SWAP3
00001780: POP
00001781: PUSH1 0x00
00001783: DUP4
00001784: PUSH1 0x03
00001786: DUP2
00001787: GT
00001788: ISZERO
00001789: PUSH2 0x178e
0000178c: JUMPI
0000178d: INVALID
0000178e: JUMPDEST
0000178f: EQ
00001790: PUSH2 0x1798
00001793: JUMPI
00001794: PUSH1 0x00
00001796: DUP1
00001797: REVERT
00001798: JUMPDEST
00001799: PUSH2 0x17a2
0000179c: DUP12
0000179d: DUP12
0000179e: PUSH2 0x2b5d
000017a1: JUMP
000017a2: JUMPDEST
000017a3: PUSH2 0x17ab
000017a6: DUP12
000017a7: PUSH2 0x2407
000017aa: JUMP
000017ab: JUMPDEST
000017ac: PUSH1 0x40
000017ae: DUP5
000017af: ADD
000017b0: MSTORE
000017b1: PUSH1 0x20
000017b3: DUP4
000017b4: ADD
000017b5: MSTORE
000017b6: DUP2
000017b7: MSTORE
000017b8: JUMPDEST
000017b9: PUSH2 0x17ca
000017bc: DUP2
000017bd: PUSH1 0x40
000017bf: ADD
000017c0: MLOAD
000017c1: DUP3
000017c2: PUSH1 0x60
000017c4: ADD
000017c5: MLOAD
000017c6: PUSH2 0x2ba7
000017c9: JUMP
000017ca: JUMPDEST
000017cb: ISZERO
000017cc: PUSH2 0x1945
000017cf: JUMPI
000017d0: PUSH2 0x17e1
000017d3: DUP2
000017d4: PUSH1 0x80
000017d6: ADD
000017d7: MLOAD
000017d8: DUP3
000017d9: PUSH1 0x00
000017db: ADD
000017dc: MLOAD
000017dd: PUSH2 0x2bae
000017e0: JUMP
000017e1: JUMPDEST
000017e2: PUSH1 0xa0
000017e4: DUP4
000017e5: ADD
000017e6: MSTORE
000017e7: SWAP3
000017e8: POP
000017e9: PUSH1 0x00
000017eb: DUP4
000017ec: PUSH1 0x03
000017ee: DUP2
000017ef: GT
000017f0: ISZERO
000017f1: PUSH2 0x17f6
000017f4: JUMPI
000017f5: INVALID
000017f6: JUMPDEST
000017f7: EQ
000017f8: PUSH2 0x1800
000017fb: JUMPI
000017fc: PUSH1 0x00
000017fe: DUP1
000017ff: REVERT
00001800: JUMPDEST
00001801: PUSH2 0x1812
00001804: DUP2
00001805: PUSH1 0x60
00001807: ADD
00001808: MLOAD
00001809: DUP3
0000180a: PUSH1 0x20
0000180c: ADD
0000180d: MLOAD
0000180e: PUSH2 0x2bae
00001811: JUMP
00001812: JUMPDEST
00001813: PUSH1 0xc0
00001815: DUP4
00001816: ADD
00001817: MSTORE
00001818: SWAP3
00001819: POP
0000181a: PUSH1 0x00
0000181c: DUP4
0000181d: PUSH1 0x03
0000181f: DUP2
00001820: GT
00001821: ISZERO
00001822: PUSH2 0x1827
00001825: JUMPI
00001826: INVALID
00001827: JUMPDEST
00001828: EQ
00001829: PUSH2 0x1831
0000182c: JUMPI
0000182d: PUSH1 0x00
0000182f: DUP1
00001830: REVERT
00001831: JUMPDEST
00001832: PUSH1 0xa0
00001834: DUP2
00001835: ADD
00001836: MLOAD
00001837: PUSH1 0xc0
00001839: DUP3
0000183a: ADD
0000183b: MLOAD
0000183c: PUSH2 0x1844
0000183f: SWAP2
00001840: PUSH2 0x2c01
00001843: JUMP
00001844: JUMPDEST
00001845: PUSH1 0xe0
00001847: DUP3
00001848: ADD
00001849: MSTORE
0000184a: DUP1
0000184b: MLOAD
0000184c: PUSH2 0x1856
0000184f: SWAP1
00001850: DUP4
00001851: SWAP1
00001852: PUSH2 0x2bae
00001855: JUMP
00001856: JUMPDEST
00001857: PUSH2 0x0100
0000185a: DUP4
0000185b: ADD
0000185c: MSTORE
0000185d: SWAP3
0000185e: POP
0000185f: PUSH1 0x00
00001861: DUP4
00001862: PUSH1 0x03
00001864: DUP2
00001865: GT
00001866: ISZERO
00001867: PUSH2 0x186c
0000186a: JUMPI
0000186b: INVALID
0000186c: JUMPDEST
0000186d: EQ
0000186e: PUSH2 0x1876
00001871: JUMPI
00001872: PUSH1 0x00
00001874: DUP1
00001875: REVERT
00001876: JUMPDEST
00001877: PUSH1 0x20
00001879: DUP2
0000187a: ADD
0000187b: MLOAD
0000187c: PUSH2 0x0100
0000187f: DUP3
00001880: ADD
00001881: MLOAD
00001882: PUSH2 0x188a
00001885: SWAP2
00001886: PUSH2 0x2c01
00001889: JUMP
0000188a: JUMPDEST
0000188b: PUSH2 0x0120
0000188e: DUP3
0000188f: ADD
00001890: DUP2
00001891: SWAP1
00001892: MSTORE
00001893: PUSH2 0x189c
00001896: SWAP1
00001897: DUP7
00001898: PUSH2 0x2c43
0000189b: JUMP
0000189c: JUMPDEST
0000189d: PUSH2 0x0140
000018a0: DUP4
000018a1: ADD
000018a2: MSTORE
000018a3: SWAP3
000018a4: POP
000018a5: PUSH1 0x00
000018a7: DUP4
000018a8: PUSH1 0x03
000018aa: DUP2
000018ab: GT
000018ac: ISZERO
000018ad: PUSH2 0x18b2
000018b0: JUMPI
000018b1: INVALID
000018b2: JUMPDEST
000018b3: EQ
000018b4: PUSH2 0x18bc
000018b7: JUMPI
000018b8: PUSH1 0x00
000018ba: DUP1
000018bb: REVERT
000018bc: JUMPDEST
000018bd: PUSH1 0x00
000018bf: PUSH2 0x18d1
000018c2: DUP3
000018c3: PUSH1 0xe0
000018c5: ADD
000018c6: MLOAD
000018c7: DUP4
000018c8: PUSH2 0x0140
000018cb: ADD
000018cc: MLOAD
000018cd: PUSH2 0x2c5a
000018d0: JUMP
000018d1: JUMPDEST
000018d2: SWAP1
000018d3: POP
000018d4: DUP9
000018d5: DUP2
000018d6: LT
000018d7: ISZERO
000018d8: PUSH2 0x18e1
000018db: JUMPI
000018dc: POP
000018dd: PUSH2 0x1945
000018e0: JUMP
000018e1: JUMPDEST
000018e2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018f7: DUP13
000018f8: AND
000018f9: PUSH1 0x00
000018fb: SWAP1
000018fc: DUP2
000018fd: MSTORE
000018fe: PUSH1 0x02
00001900: PUSH1 0x20
00001902: MSTORE
00001903: PUSH1 0x40
00001905: DUP2
00001906: KECCAK256
00001907: SLOAD
00001908: PUSH2 0x1912
0000190b: SWAP1
0000190c: DUP4
0000190d: SWAP1
0000190e: PUSH2 0x2c70
00001911: JUMP
00001912: JUMPDEST
00001913: SWAP1
00001914: POP
00001915: PUSH2 0x191e
00001918: DUP14
00001919: DUP3
0000191a: PUSH2 0x2cb2
0000191d: JUMP
0000191e: JUMPDEST
0000191f: PUSH2 0x1928
00001922: DUP14
00001923: DUP3
00001924: PUSH2 0x2b5d
00001927: JUMP
00001928: JUMPDEST
00001929: PUSH2 0x1931
0000192c: DUP14
0000192d: PUSH2 0x2407
00001930: JUMP
00001931: JUMPDEST
00001932: PUSH1 0x40
00001934: DUP7
00001935: ADD
00001936: MSTORE
00001937: PUSH1 0x20
00001939: DUP6
0000193a: ADD
0000193b: MSTORE
0000193c: DUP4
0000193d: MSTORE
0000193e: POP
0000193f: PUSH2 0x17b8
00001942: SWAP1
00001943: POP
00001944: JUMP
00001945: JUMPDEST
00001946: POP
00001947: POP
00001948: POP
00001949: POP
0000194a: POP
0000194b: PUSH2 0x1952
0000194e: PUSH2 0x3292
00001951: JUMP
00001952: JUMPDEST
00001953: PUSH2 0x195b
00001956: DUP3
00001957: PUSH2 0x2407
0000195a: JUMP
0000195b: JUMPDEST
0000195c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001971: DUP6
00001972: AND
00001973: PUSH1 0x00
00001975: SWAP1
00001976: DUP2
00001977: MSTORE
00001978: PUSH1 0x04
0000197a: PUSH1 0x20
0000197c: MSTORE
0000197d: PUSH1 0x40
0000197f: SWAP1
00001980: KECCAK256
00001981: SLOAD
00001982: DUP2
00001983: MLOAD
00001984: SWAP2
00001985: SWAP5
00001986: POP
00001987: SWAP3
00001988: POP
00001989: DUP3
0000198a: LT
0000198b: ISZERO
0000198c: SWAP1
0000198d: POP
0000198e: PUSH2 0x19c3
00001991: JUMPI
00001992: PUSH1 0x40
00001994: MLOAD
00001995: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000019b6: DUP2
000019b7: MSTORE
000019b8: PUSH1 0x04
000019ba: ADD
000019bb: PUSH2 0x0672
000019be: SWAP1
000019bf: PUSH2 0x3c01
000019c2: JUMP
000019c3: JUMPDEST
000019c4: POP
000019c5: POP
000019c6: POP
000019c7: POP
000019c8: POP
000019c9: POP
000019ca: POP
000019cb: POP
000019cc: JUMP
000019cd: JUMPDEST
000019ce: PUSH1 0x01
000019d0: PUSH1 0x20
000019d2: MSTORE
000019d3: PUSH1 0x00
000019d5: SWAP1
000019d6: DUP2
000019d7: MSTORE
000019d8: PUSH1 0x40
000019da: SWAP1
000019db: KECCAK256
000019dc: SLOAD
000019dd: PUSH1 0xff
000019df: AND
000019e0: DUP2
000019e1: JUMP
000019e2: JUMPDEST
000019e3: PUSH2 0x19ea
000019e6: PUSH2 0x2817
000019e9: JUMP
000019ea: JUMPDEST
000019eb: PUSH1 0x00
000019ed: SLOAD
000019ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a03: SWAP1
00001a04: DUP2
00001a05: AND
00001a06: SWAP2
00001a07: AND
00001a08: EQ
00001a09: PUSH2 0x1a3e
00001a0c: JUMPI
00001a0d: PUSH1 0x40
00001a0f: MLOAD
00001a10: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001a31: DUP2
00001a32: MSTORE
00001a33: PUSH1 0x04
00001a35: ADD
00001a36: PUSH2 0x0672
00001a39: SWAP1
00001a3a: PUSH2 0x3b6f
00001a3d: JUMP
00001a3e: JUMPDEST
00001a3f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a54: SWAP1
00001a55: SWAP2
00001a56: AND
00001a57: PUSH1 0x00
00001a59: SWAP1
00001a5a: DUP2
00001a5b: MSTORE
00001a5c: PUSH1 0x04
00001a5e: PUSH1 0x20
00001a60: MSTORE
00001a61: PUSH1 0x40
00001a63: SWAP1
00001a64: KECCAK256
00001a65: SSTORE
00001a66: JUMP
00001a67: JUMPDEST
00001a68: CALLER
00001a69: PUSH1 0x00
00001a6b: SWAP1
00001a6c: DUP2
00001a6d: MSTORE
00001a6e: PUSH1 0x01
00001a70: PUSH1 0x20
00001a72: MSTORE
00001a73: PUSH1 0x40
00001a75: SWAP1
00001a76: KECCAK256
00001a77: SLOAD
00001a78: PUSH1 0xff
00001a7a: AND
00001a7b: PUSH2 0x1ab0
00001a7e: JUMPI
00001a7f: PUSH1 0x40
00001a81: MLOAD
00001a82: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001aa3: DUP2
00001aa4: MSTORE
00001aa5: PUSH1 0x04
00001aa7: ADD
00001aa8: PUSH2 0x0672
00001aab: SWAP1
00001aac: PUSH2 0x3ba4
00001aaf: JUMP
00001ab0: JUMPDEST
00001ab1: PUSH2 0x1ab9
00001ab4: DUP3
00001ab5: PUSH2 0x1158
00001ab8: JUMP
00001ab9: JUMPDEST
00001aba: PUSH1 0x40
00001abc: MLOAD
00001abd: PUSH32 0xa0712d6800000000000000000000000000000000000000000000000000000000
00001ade: DUP2
00001adf: MSTORE
00001ae0: PUSH1 0x00
00001ae2: SWAP1
00001ae3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001af8: DUP5
00001af9: AND
00001afa: SWAP1
00001afb: PUSH4 0xa0712d68
00001b00: SWAP1
00001b01: PUSH2 0x0d75
00001b04: SWAP1
00001b05: DUP6
00001b06: SWAP1
00001b07: PUSH1 0x04
00001b09: ADD
00001b0a: PUSH2 0x3ccc
00001b0d: JUMP
00001b0e: JUMPDEST
00001b0f: PUSH2 0x1b16
00001b12: PUSH2 0x2817
00001b15: JUMP
00001b16: JUMPDEST
00001b17: PUSH1 0x00
00001b19: SLOAD
00001b1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b2f: SWAP1
00001b30: DUP2
00001b31: AND
00001b32: SWAP2
00001b33: AND
00001b34: EQ
00001b35: PUSH2 0x1b6a
00001b38: JUMPI
00001b39: PUSH1 0x40
00001b3b: MLOAD
00001b3c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001b5d: DUP2
00001b5e: MSTORE
00001b5f: PUSH1 0x04
00001b61: ADD
00001b62: PUSH2 0x0672
00001b65: SWAP1
00001b66: PUSH2 0x3b6f
00001b69: JUMP
00001b6a: JUMPDEST
00001b6b: DUP3
00001b6c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b81: AND
00001b82: DUP3
00001b83: DUP3
00001b84: PUSH1 0x40
00001b86: MLOAD
00001b87: PUSH2 0x1b90
00001b8a: SWAP2
00001b8b: SWAP1
00001b8c: PUSH2 0x392e
00001b8f: JUMP
00001b90: JUMPDEST
00001b91: PUSH1 0x00
00001b93: PUSH1 0x40
00001b95: MLOAD
00001b96: DUP1
00001b97: DUP4
00001b98: SUB
00001b99: DUP2
00001b9a: DUP6
00001b9b: DUP8
00001b9c: GAS
00001b9d: CALL
00001b9e: SWAP3
00001b9f: POP
00001ba0: POP
00001ba1: POP
00001ba2: RETURNDATASIZE
00001ba3: DUP1
00001ba4: PUSH1 0x00
00001ba6: DUP2
00001ba7: EQ
00001ba8: PUSH2 0x0ccf
00001bab: JUMPI
00001bac: PUSH1 0x40
00001bae: MLOAD
00001baf: SWAP2
00001bb0: POP
00001bb1: PUSH1 0x1f
00001bb3: NOT
00001bb4: PUSH1 0x3f
00001bb6: RETURNDATASIZE
00001bb7: ADD
00001bb8: AND
00001bb9: DUP3
00001bba: ADD
00001bbb: PUSH1 0x40
00001bbd: MSTORE
00001bbe: RETURNDATASIZE
00001bbf: DUP3
00001bc0: MSTORE
00001bc1: RETURNDATASIZE
00001bc2: PUSH1 0x00
00001bc4: PUSH1 0x20
00001bc6: DUP5
00001bc7: ADD
00001bc8: RETURNDATACOPY
00001bc9: PUSH2 0x0ccf
00001bcc: JUMP
00001bcd: JUMPDEST
00001bce: CALLER
00001bcf: PUSH1 0x00
00001bd1: SWAP1
00001bd2: DUP2
00001bd3: MSTORE
00001bd4: PUSH1 0x01
00001bd6: PUSH1 0x20
00001bd8: MSTORE
00001bd9: PUSH1 0x40
00001bdb: SWAP1
00001bdc: KECCAK256
00001bdd: SLOAD
00001bde: PUSH1 0xff
00001be0: AND
00001be1: PUSH2 0x1c16
00001be4: JUMPI
00001be5: PUSH1 0x40
00001be7: MLOAD
00001be8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001c09: DUP2
00001c0a: MSTORE
00001c0b: PUSH1 0x04
00001c0d: ADD
00001c0e: PUSH2 0x0672
00001c11: SWAP1
00001c12: PUSH2 0x3ba4
00001c15: JUMP
00001c16: JUMPDEST
00001c17: DUP5
00001c18: PUSH2 0x1c1f
00001c1b: PUSH2 0x3292
00001c1e: JUMP
00001c1f: JUMPDEST
00001c20: POP
00001c21: PUSH1 0x40
00001c23: DUP1
00001c24: MLOAD
00001c25: PUSH1 0x20
00001c27: DUP2
00001c28: ADD
00001c29: SWAP1
00001c2a: SWAP2
00001c2b: MSTORE
00001c2c: DUP3
00001c2d: DUP2
00001c2e: MSTORE
00001c2f: PUSH2 0x1c36
00001c32: PUSH2 0x3292
00001c35: JUMP
00001c36: JUMPDEST
00001c37: POP
00001c38: PUSH1 0x40
00001c3a: DUP1
00001c3b: MLOAD
00001c3c: PUSH1 0x20
00001c3e: DUP2
00001c3f: ADD
00001c40: SWAP1
00001c41: SWAP2
00001c42: MSTORE
00001c43: PUSH8 0x0dcef33a6f838000
00001c4c: DUP2
00001c4d: MSTORE
00001c4e: PUSH1 0x00
00001c50: PUSH2 0x1c57
00001c53: PUSH2 0x3292
00001c56: JUMP
00001c57: JUMPDEST
00001c58: PUSH2 0x1c61
00001c5b: DUP4
00001c5c: DUP6
00001c5d: PUSH2 0x281b
00001c60: JUMP
00001c61: JUMPDEST
00001c62: SWAP1
00001c63: SWAP3
00001c64: POP
00001c65: SWAP1
00001c66: POP
00001c67: PUSH1 0x00
00001c69: DUP3
00001c6a: PUSH1 0x03
00001c6c: DUP2
00001c6d: GT
00001c6e: ISZERO
00001c6f: PUSH2 0x1c74
00001c72: JUMPI
00001c73: INVALID
00001c74: JUMPDEST
00001c75: EQ
00001c76: PUSH2 0x1c7e
00001c79: JUMPI
00001c7a: PUSH1 0x00
00001c7c: DUP1
00001c7d: REVERT
00001c7e: JUMPDEST
00001c7f: PUSH2 0x1c86
00001c82: PUSH2 0x3311
00001c85: JUMP
00001c86: JUMPDEST
00001c87: PUSH1 0x40
00001c89: DUP1
00001c8a: MLOAD
00001c8b: PUSH1 0x20
00001c8d: DUP1
00001c8e: DUP3
00001c8f: ADD
00001c90: DUP4
00001c91: MSTORE
00001c92: DUP12
00001c93: DUP3
00001c94: MSTORE
00001c95: PUSH1 0x60
00001c97: DUP5
00001c98: ADD
00001c99: DUP3
00001c9a: SWAP1
00001c9b: MSTORE
00001c9c: DUP3
00001c9d: MLOAD
00001c9e: SWAP1
00001c9f: DUP2
00001ca0: ADD
00001ca1: SWAP1
00001ca2: SWAP3
00001ca3: MSTORE
00001ca4: PUSH1 0x03
00001ca6: SLOAD
00001ca7: DUP3
00001ca8: MSTORE
00001ca9: PUSH2 0x1cb1
00001cac: SWAP2
00001cad: PUSH2 0x2b23
00001cb0: JUMP
00001cb1: JUMPDEST
00001cb2: PUSH1 0x80
00001cb4: DUP4
00001cb5: ADD
00001cb6: MSTORE
00001cb7: SWAP3
00001cb8: POP
00001cb9: PUSH1 0x00
00001cbb: DUP4
00001cbc: PUSH1 0x03
00001cbe: DUP2
00001cbf: GT
00001cc0: ISZERO
00001cc1: PUSH2 0x1cc6
00001cc4: JUMPI
00001cc5: INVALID
00001cc6: JUMPDEST
00001cc7: EQ
00001cc8: PUSH2 0x1cd0
00001ccb: JUMPI
00001ccc: PUSH1 0x00
00001cce: DUP1
00001ccf: REVERT
00001cd0: JUMPDEST
00001cd1: PUSH2 0x1cda
00001cd4: DUP12
00001cd5: DUP12
00001cd6: PUSH2 0x2d07
00001cd9: JUMP
00001cda: JUMPDEST
00001cdb: PUSH2 0x1ce3
00001cde: DUP12
00001cdf: PUSH2 0x2407
00001ce2: JUMP
00001ce3: JUMPDEST
00001ce4: PUSH1 0x40
00001ce6: DUP5
00001ce7: ADD
00001ce8: MSTORE
00001ce9: PUSH1 0x20
00001ceb: DUP4
00001cec: ADD
00001ced: MSTORE
00001cee: DUP2
00001cef: MSTORE
00001cf0: JUMPDEST
00001cf1: PUSH2 0x1d02
00001cf4: DUP2
00001cf5: PUSH1 0x40
00001cf7: ADD
00001cf8: MLOAD
00001cf9: DUP3
00001cfa: PUSH1 0x60
00001cfc: ADD
00001cfd: MLOAD
00001cfe: PUSH2 0x2d4c
00001d01: JUMP
00001d02: JUMPDEST
00001d03: ISZERO
00001d04: PUSH2 0x1945
00001d07: JUMPI
00001d08: PUSH2 0x1d19
00001d0b: DUP2
00001d0c: PUSH1 0x80
00001d0e: ADD
00001d0f: MLOAD
00001d10: DUP3
00001d11: PUSH1 0x00
00001d13: ADD
00001d14: MLOAD
00001d15: PUSH2 0x2bae
00001d18: JUMP
00001d19: JUMPDEST
00001d1a: PUSH1 0xa0
00001d1c: DUP4
00001d1d: ADD
00001d1e: MSTORE
00001d1f: SWAP3
00001d20: POP
00001d21: PUSH1 0x00
00001d23: DUP4
00001d24: PUSH1 0x03
00001d26: DUP2
00001d27: GT
00001d28: ISZERO
00001d29: PUSH2 0x1d2e
00001d2c: JUMPI
00001d2d: INVALID
00001d2e: JUMPDEST
00001d2f: EQ
00001d30: PUSH2 0x1d38
00001d33: JUMPI
00001d34: PUSH1 0x00
00001d36: DUP1
00001d37: REVERT
00001d38: JUMPDEST
00001d39: PUSH2 0x1d4a
00001d3c: DUP2
00001d3d: PUSH1 0x60
00001d3f: ADD
00001d40: MLOAD
00001d41: DUP3
00001d42: PUSH1 0x20
00001d44: ADD
00001d45: MLOAD
00001d46: PUSH2 0x2bae
00001d49: JUMP
00001d4a: JUMPDEST
00001d4b: PUSH1 0xc0
00001d4d: DUP4
00001d4e: ADD
00001d4f: MSTORE
00001d50: SWAP3
00001d51: POP
00001d52: PUSH1 0x00
00001d54: DUP4
00001d55: PUSH1 0x03
00001d57: DUP2
00001d58: GT
00001d59: ISZERO
00001d5a: PUSH2 0x1d5f
00001d5d: JUMPI
00001d5e: INVALID
00001d5f: JUMPDEST
00001d60: EQ
00001d61: PUSH2 0x1d69
00001d64: JUMPI
00001d65: PUSH1 0x00
00001d67: DUP1
00001d68: REVERT
00001d69: JUMPDEST
00001d6a: PUSH1 0xc0
00001d6c: DUP2
00001d6d: ADD
00001d6e: MLOAD
00001d6f: PUSH1 0xa0
00001d71: DUP3
00001d72: ADD
00001d73: MLOAD
00001d74: PUSH2 0x1d7c
00001d77: SWAP2
00001d78: PUSH2 0x2c01
00001d7b: JUMP
00001d7c: JUMPDEST
00001d7d: PUSH1 0xe0
00001d7f: DUP3
00001d80: ADD
00001d81: MSTORE
00001d82: DUP1
00001d83: MLOAD
00001d84: PUSH2 0x1d8e
00001d87: SWAP1
00001d88: DUP4
00001d89: SWAP1
00001d8a: PUSH2 0x2bae
00001d8d: JUMP
00001d8e: JUMPDEST
00001d8f: PUSH2 0x0100
00001d92: DUP4
00001d93: ADD
00001d94: MSTORE
00001d95: SWAP3
00001d96: POP
00001d97: PUSH1 0x00
00001d99: DUP4
00001d9a: PUSH1 0x03
00001d9c: DUP2
00001d9d: GT
00001d9e: ISZERO
00001d9f: PUSH2 0x1da4
00001da2: JUMPI
00001da3: INVALID
00001da4: JUMPDEST
00001da5: EQ
00001da6: PUSH2 0x1dae
00001da9: JUMPI
00001daa: PUSH1 0x00
00001dac: DUP1
00001dad: REVERT
00001dae: JUMPDEST
00001daf: PUSH1 0x20
00001db1: DUP2
00001db2: ADD
00001db3: MLOAD
00001db4: PUSH2 0x0100
00001db7: DUP3
00001db8: ADD
00001db9: MLOAD
00001dba: PUSH2 0x1dc2
00001dbd: SWAP2
00001dbe: PUSH2 0x2c01
00001dc1: JUMP
00001dc2: JUMPDEST
00001dc3: PUSH2 0x0120
00001dc6: DUP3
00001dc7: ADD
00001dc8: DUP2
00001dc9: SWAP1
00001dca: MSTORE
00001dcb: PUSH1 0xe0
00001dcd: DUP3
00001dce: ADD
00001dcf: MLOAD
00001dd0: PUSH1 0x00
00001dd2: SWAP2
00001dd3: PUSH2 0x1ddc
00001dd6: SWAP2
00001dd7: SWAP1
00001dd8: PUSH2 0x2c5a
00001ddb: JUMP
00001ddc: JUMPDEST
00001ddd: SWAP1
00001dde: POP
00001ddf: DUP9
00001de0: DUP2
00001de1: LT
00001de2: ISZERO
00001de3: PUSH2 0x1dec
00001de6: JUMPI
00001de7: POP
00001de8: PUSH2 0x1945
00001deb: JUMP
00001dec: JUMPDEST
00001ded: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e02: DUP13
00001e03: AND
00001e04: PUSH1 0x00
00001e06: SWAP1
00001e07: DUP2
00001e08: MSTORE
00001e09: PUSH1 0x02
00001e0b: PUSH1 0x20
00001e0d: MSTORE
00001e0e: PUSH1 0x40
00001e10: DUP2
00001e11: KECCAK256
00001e12: SLOAD
00001e13: PUSH2 0x1e1d
00001e16: SWAP1
00001e17: DUP4
00001e18: SWAP1
00001e19: PUSH2 0x2c70
00001e1c: JUMP
00001e1d: JUMPDEST
00001e1e: SWAP1
00001e1f: POP
00001e20: PUSH2 0x1e29
00001e23: DUP14
00001e24: DUP3
00001e25: PUSH2 0x2ace
00001e28: JUMP
00001e29: JUMPDEST
00001e2a: PUSH2 0x1e33
00001e2d: DUP14
00001e2e: DUP3
00001e2f: PUSH2 0x2d07
00001e32: JUMP
00001e33: JUMPDEST
00001e34: PUSH2 0x1e3c
00001e37: DUP14
00001e38: PUSH2 0x2407
00001e3b: JUMP
00001e3c: JUMPDEST
00001e3d: PUSH1 0x40
00001e3f: DUP7
00001e40: ADD
00001e41: MSTORE
00001e42: PUSH1 0x20
00001e44: DUP6
00001e45: ADD
00001e46: MSTORE
00001e47: DUP4
00001e48: MSTORE
00001e49: POP
00001e4a: PUSH2 0x1cf0
00001e4d: SWAP1
00001e4e: POP
00001e4f: JUMP
00001e50: JUMPDEST
00001e51: PUSH2 0x1e58
00001e54: PUSH2 0x2817
00001e57: JUMP
00001e58: JUMPDEST
00001e59: PUSH1 0x00
00001e5b: SLOAD
00001e5c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e71: SWAP1
00001e72: DUP2
00001e73: AND
00001e74: SWAP2
00001e75: AND
00001e76: EQ
00001e77: PUSH2 0x1eac
00001e7a: JUMPI
00001e7b: PUSH1 0x40
00001e7d: MLOAD
00001e7e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001e9f: DUP2
00001ea0: MSTORE
00001ea1: PUSH1 0x04
00001ea3: ADD
00001ea4: PUSH2 0x0672
00001ea7: SWAP1
00001ea8: PUSH2 0x3b6f
00001eab: JUMP
00001eac: JUMPDEST
00001ead: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ec2: DUP2
00001ec3: AND
00001ec4: PUSH2 0x1ef9
00001ec7: JUMPI
00001ec8: PUSH1 0x40
00001eca: MLOAD
00001ecb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001eec: DUP2
00001eed: MSTORE
00001eee: PUSH1 0x04
00001ef0: ADD
00001ef1: PUSH2 0x0672
00001ef4: SWAP1
00001ef5: PUSH2 0x3a47
00001ef8: JUMP
00001ef9: JUMPDEST
00001efa: PUSH1 0x00
00001efc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f11: DUP5
00001f12: AND
00001f13: PUSH2 0x1f9f
00001f16: JUMPI
00001f17: POP
00001f18: ADDRESS
00001f19: DUP1
00001f1a: BALANCE
00001f1b: SWAP1
00001f1c: DUP4
00001f1d: DUP3
00001f1e: LT
00001f1f: ISZERO
00001f20: PUSH2 0x1f55
00001f23: JUMPI
00001f24: PUSH1 0x40
00001f26: MLOAD
00001f27: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001f48: DUP2
00001f49: MSTORE
00001f4a: PUSH1 0x04
00001f4c: ADD
00001f4d: PUSH2 0x0672
00001f50: SWAP1
00001f51: PUSH2 0x3adb
00001f54: JUMP
00001f55: JUMPDEST
00001f56: PUSH1 0x40
00001f58: MLOAD
00001f59: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f6e: DUP5
00001f6f: AND
00001f70: SWAP1
00001f71: DUP6
00001f72: ISZERO
00001f73: PUSH2 0x08fc
00001f76: MUL
00001f77: SWAP1
00001f78: DUP7
00001f79: SWAP1
00001f7a: PUSH1 0x00
00001f7c: DUP2
00001f7d: DUP2
00001f7e: DUP2
00001f7f: DUP6
00001f80: DUP9
00001f81: DUP9
00001f82: CALL
00001f83: SWAP4
00001f84: POP
00001f85: POP
00001f86: POP
00001f87: POP
00001f88: ISZERO
00001f89: DUP1
00001f8a: ISZERO
00001f8b: PUSH2 0x1f98
00001f8e: JUMPI
00001f8f: RETURNDATASIZE
00001f90: PUSH1 0x00
00001f92: DUP1
00001f93: RETURNDATACOPY
00001f94: RETURNDATASIZE
00001f95: PUSH1 0x00
00001f97: REVERT
00001f98: JUMPDEST
00001f99: POP
00001f9a: POP
00001f9b: PUSH2 0x209e
00001f9e: JUMP
00001f9f: JUMPDEST
00001fa0: PUSH1 0x40
00001fa2: MLOAD
00001fa3: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
00001fc4: DUP2
00001fc5: MSTORE
00001fc6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fdb: DUP6
00001fdc: AND
00001fdd: SWAP1
00001fde: PUSH4 0x70a08231
00001fe3: SWAP1
00001fe4: PUSH2 0x1ff1
00001fe7: SWAP1
00001fe8: ADDRESS
00001fe9: SWAP1
00001fea: PUSH1 0x04
00001fec: ADD
00001fed: PUSH2 0x394a
00001ff0: JUMP
00001ff1: JUMPDEST
00001ff2: PUSH1 0x20
00001ff4: PUSH1 0x40
00001ff6: MLOAD
00001ff7: DUP1
00001ff8: DUP4
00001ff9: SUB
00001ffa: DUP2
00001ffb: DUP7
00001ffc: DUP1
00001ffd: EXTCODESIZE
00001ffe: ISZERO
00001fff: DUP1
00002000: ISZERO
00002001: PUSH2 0x2009
00002004: JUMPI
00002005: PUSH1 0x00
00002007: DUP1
00002008: REVERT
00002009: JUMPDEST
0000200a: POP
0000200b: GAS
0000200c: STATICCALL
0000200d: ISZERO
0000200e: DUP1
0000200f: ISZERO
00002010: PUSH2 0x201d
00002013: JUMPI
00002014: RETURNDATASIZE
00002015: PUSH1 0x00
00002017: DUP1
00002018: RETURNDATACOPY
00002019: RETURNDATASIZE
0000201a: PUSH1 0x00
0000201c: REVERT
0000201d: JUMPDEST
0000201e: POP
0000201f: POP
00002020: POP
00002021: POP
00002022: PUSH1 0x40
00002024: MLOAD
00002025: RETURNDATASIZE
00002026: PUSH1 0x1f
00002028: NOT
00002029: PUSH1 0x1f
0000202b: DUP3
0000202c: ADD
0000202d: AND
0000202e: DUP3
0000202f: ADD
00002030: DUP1
00002031: PUSH1 0x40
00002033: MSTORE
00002034: POP
00002035: DUP2
00002036: ADD
00002037: SWAP1
00002038: PUSH2 0x2041
0000203b: SWAP2
0000203c: SWAP1
0000203d: PUSH2 0x38b4
00002040: JUMP
00002041: JUMPDEST
00002042: SWAP1
00002043: POP
00002044: DUP3
00002045: DUP2
00002046: LT
00002047: ISZERO
00002048: PUSH2 0x207d
0000204b: JUMPI
0000204c: PUSH1 0x40
0000204e: MLOAD
0000204f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002070: DUP2
00002071: MSTORE
00002072: PUSH1 0x04
00002074: ADD
00002075: PUSH2 0x0672
00002078: SWAP1
00002079: PUSH2 0x3adb
0000207c: JUMP
0000207d: JUMPDEST
0000207e: PUSH2 0x209e
00002081: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002096: DUP6
00002097: AND
00002098: DUP4
00002099: DUP6
0000209a: PUSH2 0x2d53
0000209d: JUMP
0000209e: JUMPDEST
0000209f: DUP4
000020a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020b5: AND
000020b6: DUP3
000020b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020cc: AND
000020cd: PUSH32 0x9207361cc2a04b9c7a06691df1eb87c6a63957ae88bf01d0d18c81e3d1272099
000020ee: DUP6
000020ef: PUSH1 0x40
000020f1: MLOAD
000020f2: PUSH2 0x20fb
000020f5: SWAP2
000020f6: SWAP1
000020f7: PUSH2 0x3ccc
000020fa: JUMP
000020fb: JUMPDEST
000020fc: PUSH1 0x40
000020fe: MLOAD
000020ff: DUP1
00002100: SWAP2
00002101: SUB
00002102: SWAP1
00002103: LOG3
00002104: POP
00002105: POP
00002106: POP
00002107: POP
00002108: JUMP
00002109: JUMPDEST
0000210a: PUSH2 0x2111
0000210d: PUSH2 0x2817
00002110: JUMP
00002111: JUMPDEST
00002112: PUSH1 0x00
00002114: SLOAD
00002115: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000212a: SWAP1
0000212b: DUP2
0000212c: AND
0000212d: SWAP2
0000212e: AND
0000212f: EQ
00002130: PUSH2 0x2165
00002133: JUMPI
00002134: PUSH1 0x40
00002136: MLOAD
00002137: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002158: DUP2
00002159: MSTORE
0000215a: PUSH1 0x04
0000215c: ADD
0000215d: PUSH2 0x0672
00002160: SWAP1
00002161: PUSH2 0x3b6f
00002164: JUMP
00002165: JUMPDEST
00002166: PUSH2 0x0dd4
00002169: DUP4
0000216a: DUP4
0000216b: DUP4
0000216c: PUSH2 0x2963
0000216f: JUMP
00002170: JUMPDEST
00002171: PUSH1 0x02
00002173: PUSH1 0x20
00002175: MSTORE
00002176: PUSH1 0x00
00002178: SWAP1
00002179: DUP2
0000217a: MSTORE
0000217b: PUSH1 0x40
0000217d: SWAP1
0000217e: KECCAK256
0000217f: SLOAD
00002180: DUP2
00002181: JUMP
00002182: JUMPDEST
00002183: CALLER
00002184: PUSH1 0x00
00002186: SWAP1
00002187: DUP2
00002188: MSTORE
00002189: PUSH1 0x01
0000218b: PUSH1 0x20
0000218d: MSTORE
0000218e: PUSH1 0x40
00002190: SWAP1
00002191: KECCAK256
00002192: SLOAD
00002193: PUSH1 0xff
00002195: AND
00002196: PUSH2 0x21cb
00002199: JUMPI
0000219a: PUSH1 0x40
0000219c: MLOAD
0000219d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000021be: DUP2
000021bf: MSTORE
000021c0: PUSH1 0x04
000021c2: ADD
000021c3: PUSH2 0x0672
000021c6: SWAP1
000021c7: PUSH2 0x3ba4
000021ca: JUMP
000021cb: JUMPDEST
000021cc: DUP2
000021cd: PUSH2 0x1334
000021d0: DUP4
000021d1: DUP4
000021d2: PUSH2 0x2cb2
000021d5: JUMP
000021d6: JUMPDEST
000021d7: CALLER
000021d8: PUSH1 0x00
000021da: SWAP1
000021db: DUP2
000021dc: MSTORE
000021dd: PUSH1 0x01
000021df: PUSH1 0x20
000021e1: MSTORE
000021e2: PUSH1 0x40
000021e4: SWAP1
000021e5: KECCAK256
000021e6: SLOAD
000021e7: PUSH1 0xff
000021e9: AND
000021ea: PUSH2 0x221f
000021ed: JUMPI
000021ee: PUSH1 0x40
000021f0: MLOAD
000021f1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002212: DUP2
00002213: MSTORE
00002214: PUSH1 0x04
00002216: ADD
00002217: PUSH2 0x0672
0000221a: SWAP1
0000221b: PUSH2 0x3ba4
0000221e: JUMP
0000221f: JUMPDEST
00002220: PUSH1 0x40
00002222: MLOAD
00002223: PUSH32 0xede4edd000000000000000000000000000000000000000000000000000000000
00002244: DUP2
00002245: MSTORE
00002246: PUSH1 0x00
00002248: SWAP1
00002249: PUSH20 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b
0000225e: SWAP1
0000225f: PUSH4 0xede4edd0
00002264: SWAP1
00002265: PUSH2 0x2272
00002268: SWAP1
00002269: DUP6
0000226a: SWAP1
0000226b: PUSH1 0x04
0000226d: ADD
0000226e: PUSH2 0x394a
00002271: JUMP
00002272: JUMPDEST
00002273: PUSH1 0x20
00002275: PUSH1 0x40
00002277: MLOAD
00002278: DUP1
00002279: DUP4
0000227a: SUB
0000227b: DUP2
0000227c: PUSH1 0x00
0000227e: DUP8
0000227f: DUP1
00002280: EXTCODESIZE
00002281: ISZERO
00002282: DUP1
00002283: ISZERO
00002284: PUSH2 0x228c
00002287: JUMPI
00002288: PUSH1 0x00
0000228a: DUP1
0000228b: REVERT
0000228c: JUMPDEST
0000228d: POP
0000228e: GAS
0000228f: CALL
00002290: ISZERO
00002291: DUP1
00002292: ISZERO
00002293: PUSH2 0x22a0
00002296: JUMPI
00002297: RETURNDATASIZE
00002298: PUSH1 0x00
0000229a: DUP1
0000229b: RETURNDATACOPY
0000229c: RETURNDATASIZE
0000229d: PUSH1 0x00
0000229f: REVERT
000022a0: JUMPDEST
000022a1: POP
000022a2: POP
000022a3: POP
000022a4: POP
000022a5: PUSH1 0x40
000022a7: MLOAD
000022a8: RETURNDATASIZE
000022a9: PUSH1 0x1f
000022ab: NOT
000022ac: PUSH1 0x1f
000022ae: DUP3
000022af: ADD
000022b0: AND
000022b1: DUP3
000022b2: ADD
000022b3: DUP1
000022b4: PUSH1 0x40
000022b6: MSTORE
000022b7: POP
000022b8: DUP2
000022b9: ADD
000022ba: SWAP1
000022bb: PUSH2 0x22c4
000022be: SWAP2
000022bf: SWAP1
000022c0: PUSH2 0x38b4
000022c3: JUMP
000022c4: JUMPDEST
000022c5: SWAP1
000022c6: POP
000022c7: DUP1
000022c8: ISZERO
000022c9: PUSH2 0x0fbd
000022cc: JUMPI
000022cd: PUSH1 0x00
000022cf: DUP1
000022d0: REVERT
000022d1: JUMPDEST
000022d2: PUSH2 0x22d9
000022d5: PUSH2 0x2817
000022d8: JUMP
000022d9: JUMPDEST
000022da: PUSH1 0x00
000022dc: SLOAD
000022dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000022f2: SWAP1
000022f3: DUP2
000022f4: AND
000022f5: SWAP2
000022f6: AND
000022f7: EQ
000022f8: PUSH2 0x232d
000022fb: JUMPI
000022fc: PUSH1 0x40
000022fe: MLOAD
000022ff: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002320: DUP2
00002321: MSTORE
00002322: PUSH1 0x04
00002324: ADD
00002325: PUSH2 0x0672
00002328: SWAP1
00002329: PUSH2 0x3b6f
0000232c: JUMP
0000232d: JUMPDEST
0000232e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002343: DUP2
00002344: AND
00002345: PUSH2 0x237a
00002348: JUMPI
00002349: PUSH1 0x40
0000234b: MLOAD
0000234c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000236d: DUP2
0000236e: MSTORE
0000236f: PUSH1 0x04
00002371: ADD
00002372: PUSH2 0x0672
00002375: SWAP1
00002376: PUSH2 0x3a7e
00002379: JUMP
0000237a: JUMPDEST
0000237b: PUSH1 0x00
0000237d: DUP1
0000237e: SLOAD
0000237f: PUSH1 0x40
00002381: MLOAD
00002382: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002397: DUP1
00002398: DUP6
00002399: AND
0000239a: SWAP4
0000239b: SWAP3
0000239c: AND
0000239d: SWAP2
0000239e: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000023bf: SWAP2
000023c0: LOG3
000023c1: PUSH1 0x00
000023c3: DUP1
000023c4: SLOAD
000023c5: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000023e6: AND
000023e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000023fc: SWAP3
000023fd: SWAP1
000023fe: SWAP3
000023ff: AND
00002400: SWAP2
00002401: SWAP1
00002402: SWAP2
00002403: OR
00002404: SWAP1
00002405: SSTORE
00002406: JUMP
00002407: JUMPDEST
00002408: PUSH1 0x00
0000240a: DUP1
0000240b: PUSH2 0x2412
0000240e: PUSH2 0x3292
00002411: JUMP
00002412: JUMPDEST
00002413: PUSH1 0x00
00002415: DUP1
00002416: PUSH2 0x241e
00002419: DUP7
0000241a: PUSH2 0x0fc1
0000241d: JUMP
0000241e: JUMPDEST
0000241f: SWAP2
00002420: POP
00002421: SWAP2
00002422: POP
00002423: DUP2
00002424: PUSH1 0x00
00002426: EQ
00002427: ISZERO
00002428: PUSH2 0x244b
0000242b: JUMPI
0000242c: PUSH1 0x00
0000242e: DUP1
0000242f: PUSH1 0x40
00002431: MLOAD
00002432: DUP1
00002433: PUSH1 0x20
00002435: ADD
00002436: PUSH1 0x40
00002438: MSTORE
00002439: DUP1
0000243a: PUSH1 0x00
0000243c: DUP2
0000243d: MSTORE
0000243e: POP
0000243f: SWAP5
00002440: POP
00002441: SWAP5
00002442: POP
00002443: SWAP5
00002444: POP
00002445: POP
00002446: POP
00002447: PUSH2 0x2490
0000244a: JUMP
0000244b: JUMPDEST
0000244c: PUSH1 0x00
0000244e: PUSH2 0x2455
00002451: PUSH2 0x3292
00002454: JUMP
00002455: JUMPDEST
00002456: PUSH2 0x2468
00002459: DUP5
0000245a: PUSH2 0x2463
0000245d: DUP2
0000245e: DUP7
0000245f: PUSH2 0x2c01
00002462: JUMP
00002463: JUMPDEST
00002464: PUSH2 0x2df4
00002467: JUMP
00002468: JUMPDEST
00002469: SWAP1
0000246a: SWAP3
0000246b: POP
0000246c: SWAP1
0000246d: POP
0000246e: PUSH1 0x00
00002470: DUP3
00002471: PUSH1 0x03
00002473: DUP2
00002474: GT
00002475: ISZERO
00002476: PUSH2 0x247b
00002479: JUMPI
0000247a: INVALID
0000247b: JUMPDEST
0000247c: EQ
0000247d: PUSH2 0x2485
00002480: JUMPI
00002481: PUSH1 0x00
00002483: DUP1
00002484: REVERT
00002485: JUMPDEST
00002486: SWAP3
00002487: SWAP6
00002488: POP
00002489: SWAP1
0000248a: SWAP4
0000248b: POP
0000248c: SWAP1
0000248d: SWAP2
0000248e: POP
0000248f: POP
00002490: JUMPDEST
00002491: SWAP2
00002492: SWAP4
00002493: SWAP1
00002494: SWAP3
00002495: POP
00002496: JUMP
00002497: JUMPDEST
00002498: PUSH2 0x249f
0000249b: PUSH2 0x2817
0000249e: JUMP
0000249f: JUMPDEST
000024a0: PUSH1 0x00
000024a2: SLOAD
000024a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024b8: SWAP1
000024b9: DUP2
000024ba: AND
000024bb: SWAP2
000024bc: AND
000024bd: EQ
000024be: PUSH2 0x24f3
000024c1: JUMPI
000024c2: PUSH1 0x40
000024c4: MLOAD
000024c5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000024e6: DUP2
000024e7: MSTORE
000024e8: PUSH1 0x04
000024ea: ADD
000024eb: PUSH2 0x0672
000024ee: SWAP1
000024ef: PUSH2 0x3b6f
000024f2: JUMP
000024f3: JUMPDEST
000024f4: PUSH1 0x00
000024f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000250b: DUP4
0000250c: AND
0000250d: PUSH2 0x2583
00002510: JUMPI
00002511: POP
00002512: ADDRESS
00002513: DUP1
00002514: BALANCE
00002515: SWAP1
00002516: DUP3
00002517: DUP3
00002518: LT
00002519: ISZERO
0000251a: PUSH2 0x254f
0000251d: JUMPI
0000251e: PUSH1 0x40
00002520: MLOAD
00002521: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002542: DUP2
00002543: MSTORE
00002544: PUSH1 0x04
00002546: ADD
00002547: PUSH2 0x0672
0000254a: SWAP1
0000254b: PUSH2 0x3adb
0000254e: JUMP
0000254f: JUMPDEST
00002550: PUSH1 0x40
00002552: MLOAD
00002553: CALLER
00002554: SWAP1
00002555: DUP5
00002556: ISZERO
00002557: PUSH2 0x08fc
0000255a: MUL
0000255b: SWAP1
0000255c: DUP6
0000255d: SWAP1
0000255e: PUSH1 0x00
00002560: DUP2
00002561: DUP2
00002562: DUP2
00002563: DUP6
00002564: DUP9
00002565: DUP9
00002566: CALL
00002567: SWAP4
00002568: POP
00002569: POP
0000256a: POP
0000256b: POP
0000256c: ISZERO
0000256d: DUP1
0000256e: ISZERO
0000256f: PUSH2 0x257c
00002572: JUMPI
00002573: RETURNDATASIZE
00002574: PUSH1 0x00
00002576: DUP1
00002577: RETURNDATACOPY
00002578: RETURNDATASIZE
00002579: PUSH1 0x00
0000257b: REVERT
0000257c: JUMPDEST
0000257d: POP
0000257e: POP
0000257f: PUSH2 0x2682
00002582: JUMP
00002583: JUMPDEST
00002584: PUSH1 0x40
00002586: MLOAD
00002587: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
000025a8: DUP2
000025a9: MSTORE
000025aa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025bf: DUP5
000025c0: AND
000025c1: SWAP1
000025c2: PUSH4 0x70a08231
000025c7: SWAP1
000025c8: PUSH2 0x25d5
000025cb: SWAP1
000025cc: ADDRESS
000025cd: SWAP1
000025ce: PUSH1 0x04
000025d0: ADD
000025d1: PUSH2 0x394a
000025d4: JUMP
000025d5: JUMPDEST
000025d6: PUSH1 0x20
000025d8: PUSH1 0x40
000025da: MLOAD
000025db: DUP1
000025dc: DUP4
000025dd: SUB
000025de: DUP2
000025df: DUP7
000025e0: DUP1
000025e1: EXTCODESIZE
000025e2: ISZERO
000025e3: DUP1
000025e4: ISZERO
000025e5: PUSH2 0x25ed
000025e8: JUMPI
000025e9: PUSH1 0x00
000025eb: DUP1
000025ec: REVERT
000025ed: JUMPDEST
000025ee: POP
000025ef: GAS
000025f0: STATICCALL
000025f1: ISZERO
000025f2: DUP1
000025f3: ISZERO
000025f4: PUSH2 0x2601
000025f7: JUMPI
000025f8: RETURNDATASIZE
000025f9: PUSH1 0x00
000025fb: DUP1
000025fc: RETURNDATACOPY
000025fd: RETURNDATASIZE
000025fe: PUSH1 0x00
00002600: REVERT
00002601: JUMPDEST
00002602: POP
00002603: POP
00002604: POP
00002605: POP
00002606: PUSH1 0x40
00002608: MLOAD
00002609: RETURNDATASIZE
0000260a: PUSH1 0x1f
0000260c: NOT
0000260d: PUSH1 0x1f
0000260f: DUP3
00002610: ADD
00002611: AND
00002612: DUP3
00002613: ADD
00002614: DUP1
00002615: PUSH1 0x40
00002617: MSTORE
00002618: POP
00002619: DUP2
0000261a: ADD
0000261b: SWAP1
0000261c: PUSH2 0x2625
0000261f: SWAP2
00002620: SWAP1
00002621: PUSH2 0x38b4
00002624: JUMP
00002625: JUMPDEST
00002626: SWAP1
00002627: POP
00002628: DUP2
00002629: DUP2
0000262a: LT
0000262b: ISZERO
0000262c: PUSH2 0x2661
0000262f: JUMPI
00002630: PUSH1 0x40
00002632: MLOAD
00002633: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002654: DUP2
00002655: MSTORE
00002656: PUSH1 0x04
00002658: ADD
00002659: PUSH2 0x0672
0000265c: SWAP1
0000265d: PUSH2 0x3adb
00002660: JUMP
00002661: JUMPDEST
00002662: PUSH2 0x2682
00002665: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000267a: DUP5
0000267b: AND
0000267c: CALLER
0000267d: DUP5
0000267e: PUSH2 0x2d53
00002681: JUMP
00002682: JUMPDEST
00002683: DUP3
00002684: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002699: AND
0000269a: CALLER
0000269b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026b0: AND
000026b1: PUSH32 0x9207361cc2a04b9c7a06691df1eb87c6a63957ae88bf01d0d18c81e3d1272099
000026d2: DUP5
000026d3: PUSH1 0x40
000026d5: MLOAD
000026d6: PUSH2 0x26df
000026d9: SWAP2
000026da: SWAP1
000026db: PUSH2 0x3ccc
000026de: JUMP
000026df: JUMPDEST
000026e0: PUSH1 0x40
000026e2: MLOAD
000026e3: DUP1
000026e4: SWAP2
000026e5: SUB
000026e6: SWAP1
000026e7: LOG3
000026e8: POP
000026e9: POP
000026ea: POP
000026eb: JUMP
000026ec: JUMPDEST
000026ed: CALLER
000026ee: PUSH1 0x00
000026f0: SWAP1
000026f1: DUP2
000026f2: MSTORE
000026f3: PUSH1 0x01
000026f5: PUSH1 0x20
000026f7: MSTORE
000026f8: PUSH1 0x40
000026fa: SWAP1
000026fb: KECCAK256
000026fc: SLOAD
000026fd: PUSH1 0xff
000026ff: AND
00002700: PUSH2 0x2735
00002703: JUMPI
00002704: PUSH1 0x40
00002706: MLOAD
00002707: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002728: DUP2
00002729: MSTORE
0000272a: PUSH1 0x04
0000272c: ADD
0000272d: PUSH2 0x0672
00002730: SWAP1
00002731: PUSH2 0x3ba4
00002734: JUMP
00002735: JUMPDEST
00002736: PUSH1 0x40
00002738: MLOAD
00002739: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
0000275a: DUP2
0000275b: MSTORE
0000275c: PUSH1 0x00
0000275e: SWAP1
0000275f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002774: DUP4
00002775: AND
00002776: SWAP1
00002777: PUSH4 0x70a08231
0000277c: SWAP1
0000277d: PUSH2 0x278a
00002780: SWAP1
00002781: ADDRESS
00002782: SWAP1
00002783: PUSH1 0x04
00002785: ADD
00002786: PUSH2 0x394a
00002789: JUMP
0000278a: JUMPDEST
0000278b: PUSH1 0x20
0000278d: PUSH1 0x40
0000278f: MLOAD
00002790: DUP1
00002791: DUP4
00002792: SUB
00002793: DUP2
00002794: DUP7
00002795: DUP1
00002796: EXTCODESIZE
00002797: ISZERO
00002798: DUP1
00002799: ISZERO
0000279a: PUSH2 0x27a2
0000279d: JUMPI
0000279e: PUSH1 0x00
000027a0: DUP1
000027a1: REVERT
000027a2: JUMPDEST
000027a3: POP
000027a4: GAS
000027a5: STATICCALL
000027a6: ISZERO
000027a7: DUP1
000027a8: ISZERO
000027a9: PUSH2 0x27b6
000027ac: JUMPI
000027ad: RETURNDATASIZE
000027ae: PUSH1 0x00
000027b0: DUP1
000027b1: RETURNDATACOPY
000027b2: RETURNDATASIZE
000027b3: PUSH1 0x00
000027b5: REVERT
000027b6: JUMPDEST
000027b7: POP
000027b8: POP
000027b9: POP
000027ba: POP
000027bb: PUSH1 0x40
000027bd: MLOAD
000027be: RETURNDATASIZE
000027bf: PUSH1 0x1f
000027c1: NOT
000027c2: PUSH1 0x1f
000027c4: DUP3
000027c5: ADD
000027c6: AND
000027c7: DUP3
000027c8: ADD
000027c9: DUP1
000027ca: PUSH1 0x40
000027cc: MSTORE
000027cd: POP
000027ce: DUP2
000027cf: ADD
000027d0: SWAP1
000027d1: PUSH2 0x27da
000027d4: SWAP2
000027d5: SWAP1
000027d6: PUSH2 0x38b4
000027d9: JUMP
000027da: JUMPDEST
000027db: SWAP1
000027dc: POP
000027dd: PUSH1 0x00
000027df: DUP3
000027e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027f5: AND
000027f6: PUSH4 0xdb006a75
000027fb: DUP4
000027fc: PUSH1 0x40
000027fe: MLOAD
000027ff: DUP3
00002800: PUSH4 0xffffffff
00002805: AND
00002806: PUSH1 0xe0
00002808: SHL
00002809: DUP2
0000280a: MSTORE
0000280b: PUSH1 0x04
0000280d: ADD
0000280e: PUSH2 0x0d75
00002811: SWAP2
00002812: SWAP1
00002813: PUSH2 0x3ccc
00002816: JUMP
00002817: JUMPDEST
00002818: CALLER
00002819: SWAP1
0000281a: JUMP
0000281b: JUMPDEST
0000281c: PUSH1 0x00
0000281e: PUSH2 0x2825
00002821: PUSH2 0x3292
00002824: JUMP
00002825: JUMPDEST
00002826: PUSH1 0x00
00002828: DUP1
00002829: PUSH2 0x283a
0000282c: DUP7
0000282d: PUSH1 0x00
0000282f: ADD
00002830: MLOAD
00002831: DUP7
00002832: PUSH1 0x00
00002834: ADD
00002835: MLOAD
00002836: PUSH2 0x2ea5
00002839: JUMP
0000283a: JUMPDEST
0000283b: SWAP1
0000283c: SWAP3
0000283d: POP
0000283e: SWAP1
0000283f: POP
00002840: PUSH1 0x00
00002842: DUP3
00002843: PUSH1 0x03
00002845: DUP2
00002846: GT
00002847: ISZERO
00002848: PUSH2 0x284d
0000284b: JUMPI
0000284c: INVALID
0000284d: JUMPDEST
0000284e: EQ
0000284f: PUSH2 0x286c
00002852: JUMPI
00002853: POP
00002854: PUSH1 0x40
00002856: DUP1
00002857: MLOAD
00002858: PUSH1 0x20
0000285a: DUP2
0000285b: ADD
0000285c: SWAP1
0000285d: SWAP2
0000285e: MSTORE
0000285f: PUSH1 0x00
00002861: DUP2
00002862: MSTORE
00002863: SWAP1
00002864: SWAP3
00002865: POP
00002866: SWAP1
00002867: POP
00002868: PUSH2 0x2900
0000286b: JUMP
0000286c: JUMPDEST
0000286d: PUSH1 0x00
0000286f: DUP1
00002870: PUSH2 0x2881
00002873: PUSH8 0x06f05b59d3b20000
0000287c: DUP5
0000287d: PUSH2 0x2ee4
00002880: JUMP
00002881: JUMPDEST
00002882: SWAP1
00002883: SWAP3
00002884: POP
00002885: SWAP1
00002886: POP
00002887: PUSH1 0x00
00002889: DUP3
0000288a: PUSH1 0x03
0000288c: DUP2
0000288d: GT
0000288e: ISZERO
0000288f: PUSH2 0x2894
00002892: JUMPI
00002893: INVALID
00002894: JUMPDEST
00002895: EQ
00002896: PUSH2 0x28b7
00002899: JUMPI
0000289a: DUP2
0000289b: PUSH1 0x40
0000289d: MLOAD
0000289e: DUP1
0000289f: PUSH1 0x20
000028a1: ADD
000028a2: PUSH1 0x40
000028a4: MSTORE
000028a5: DUP1
000028a6: PUSH1 0x00
000028a8: DUP2
000028a9: MSTORE
000028aa: POP
000028ab: SWAP6
000028ac: POP
000028ad: SWAP6
000028ae: POP
000028af: POP
000028b0: POP
000028b1: POP
000028b2: POP
000028b3: PUSH2 0x2900
000028b6: JUMP
000028b7: JUMPDEST
000028b8: PUSH1 0x00
000028ba: DUP1
000028bb: PUSH2 0x28cc
000028be: DUP4
000028bf: PUSH8 0x0de0b6b3a7640000
000028c8: PUSH2 0x2f0a
000028cb: JUMP
000028cc: JUMPDEST
000028cd: SWAP1
000028ce: SWAP3
000028cf: POP
000028d0: SWAP1
000028d1: POP
000028d2: PUSH1 0x00
000028d4: DUP3
000028d5: PUSH1 0x03
000028d7: DUP2
000028d8: GT
000028d9: ISZERO
000028da: PUSH2 0x28df
000028dd: JUMPI
000028de: INVALID
000028df: JUMPDEST
000028e0: EQ
000028e1: PUSH2 0x28e6
000028e4: JUMPI
000028e5: INVALID
000028e6: JUMPDEST
000028e7: PUSH1 0x40
000028e9: DUP1
000028ea: MLOAD
000028eb: PUSH1 0x20
000028ed: DUP2
000028ee: ADD
000028ef: SWAP1
000028f0: SWAP2
000028f1: MSTORE
000028f2: SWAP1
000028f3: DUP2
000028f4: MSTORE
000028f5: PUSH1 0x00
000028f7: SWAP8
000028f8: POP
000028f9: SWAP6
000028fa: POP
000028fb: POP
000028fc: POP
000028fd: POP
000028fe: POP
000028ff: POP
00002900: JUMPDEST
00002901: SWAP3
00002902: POP
00002903: SWAP3
00002904: SWAP1
00002905: POP
00002906: JUMP
00002907: JUMPDEST
00002908: PUSH1 0x00
0000290a: DUP1
0000290b: PUSH1 0x00
0000290d: PUSH2 0x2914
00002910: PUSH2 0x3292
00002913: JUMP
00002914: JUMPDEST
00002915: PUSH2 0x291e
00002918: DUP8
00002919: DUP8
0000291a: PUSH2 0x2a09
0000291d: JUMP
0000291e: JUMPDEST
0000291f: SWAP1
00002920: SWAP3
00002921: POP
00002922: SWAP1
00002923: POP
00002924: PUSH1 0x00
00002926: DUP3
00002927: PUSH1 0x03
00002929: DUP2
0000292a: GT
0000292b: ISZERO
0000292c: PUSH2 0x2931
0000292f: JUMPI
00002930: INVALID
00002931: JUMPDEST
00002932: EQ
00002933: PUSH2 0x2942
00002936: JUMPI
00002937: POP
00002938: SWAP2
00002939: POP
0000293a: PUSH1 0x00
0000293c: SWAP1
0000293d: POP
0000293e: PUSH2 0x295b
00002941: JUMP
00002942: JUMPDEST
00002943: PUSH2 0x2954
00002946: PUSH2 0x294e
00002949: DUP3
0000294a: PUSH2 0x2f35
0000294d: JUMP
0000294e: JUMPDEST
0000294f: DUP7
00002950: PUSH2 0x2ee4
00002953: JUMP
00002954: JUMPDEST
00002955: SWAP4
00002956: POP
00002957: SWAP4
00002958: POP
00002959: POP
0000295a: POP
0000295b: JUMPDEST
0000295c: SWAP4
0000295d: POP
0000295e: SWAP4
0000295f: SWAP2
00002960: POP
00002961: POP
00002962: JUMP
00002963: JUMPDEST
00002964: PUSH1 0x40
00002966: MLOAD
00002967: PUSH32 0x095ea7b300000000000000000000000000000000000000000000000000000000
00002988: DUP2
00002989: MSTORE
0000298a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000299f: DUP5
000029a0: AND
000029a1: SWAP1
000029a2: PUSH4 0x095ea7b3
000029a7: SWAP1
000029a8: PUSH2 0x29b7
000029ab: SWAP1
000029ac: DUP6
000029ad: SWAP1
000029ae: DUP6
000029af: SWAP1
000029b0: PUSH1 0x04
000029b2: ADD
000029b3: PUSH2 0x396b
000029b6: JUMP
000029b7: JUMPDEST
000029b8: PUSH1 0x20
000029ba: PUSH1 0x40
000029bc: MLOAD
000029bd: DUP1
000029be: DUP4
000029bf: SUB
000029c0: DUP2
000029c1: PUSH1 0x00
000029c3: DUP8
000029c4: DUP1
000029c5: EXTCODESIZE
000029c6: ISZERO
000029c7: DUP1
000029c8: ISZERO
000029c9: PUSH2 0x29d1
000029cc: JUMPI
000029cd: PUSH1 0x00
000029cf: DUP1
000029d0: REVERT
000029d1: JUMPDEST
000029d2: POP
000029d3: GAS
000029d4: CALL
000029d5: ISZERO
000029d6: DUP1
000029d7: ISZERO
000029d8: PUSH2 0x29e5
000029db: JUMPI
000029dc: RETURNDATASIZE
000029dd: PUSH1 0x00
000029df: DUP1
000029e0: RETURNDATACOPY
000029e1: RETURNDATASIZE
000029e2: PUSH1 0x00
000029e4: REVERT
000029e5: JUMPDEST
000029e6: POP
000029e7: POP
000029e8: POP
000029e9: POP
000029ea: PUSH1 0x40
000029ec: MLOAD
000029ed: RETURNDATASIZE
000029ee: PUSH1 0x1f
000029f0: NOT
000029f1: PUSH1 0x1f
000029f3: DUP3
000029f4: ADD
000029f5: AND
000029f6: DUP3
000029f7: ADD
000029f8: DUP1
000029f9: PUSH1 0x40
000029fb: MSTORE
000029fc: POP
000029fd: DUP2
000029fe: ADD
000029ff: SWAP1
00002a00: PUSH2 0x0733
00002a03: SWAP2
00002a04: SWAP1
00002a05: PUSH2 0x387c
00002a08: JUMP
00002a09: JUMPDEST
00002a0a: PUSH1 0x00
00002a0c: PUSH2 0x2a13
00002a0f: PUSH2 0x3292
00002a12: JUMP
00002a13: JUMPDEST
00002a14: PUSH1 0x00
00002a16: DUP1
00002a17: PUSH2 0x2a24
00002a1a: DUP7
00002a1b: PUSH1 0x00
00002a1d: ADD
00002a1e: MLOAD
00002a1f: DUP7
00002a20: PUSH2 0x2ea5
00002a23: JUMP
00002a24: JUMPDEST
00002a25: SWAP1
00002a26: SWAP3
00002a27: POP
00002a28: SWAP1
00002a29: POP
00002a2a: PUSH1 0x00
00002a2c: DUP3
00002a2d: PUSH1 0x03
00002a2f: DUP2
00002a30: GT
00002a31: ISZERO
00002a32: PUSH2 0x2a37
00002a35: JUMPI
00002a36: INVALID
00002a37: JUMPDEST
00002a38: EQ
00002a39: PUSH2 0x2a56
00002a3c: JUMPI
00002a3d: POP
00002a3e: PUSH1 0x40
00002a40: DUP1
00002a41: MLOAD
00002a42: PUSH1 0x20
00002a44: DUP2
00002a45: ADD
00002a46: SWAP1
00002a47: SWAP2
00002a48: MSTORE
00002a49: PUSH1 0x00
00002a4b: DUP2
00002a4c: MSTORE
00002a4d: SWAP1
00002a4e: SWAP3
00002a4f: POP
00002a50: SWAP1
00002a51: POP
00002a52: PUSH2 0x2900
00002a55: JUMP
00002a56: JUMPDEST
00002a57: PUSH1 0x40
00002a59: DUP1
00002a5a: MLOAD
00002a5b: PUSH1 0x20
00002a5d: DUP2
00002a5e: ADD
00002a5f: SWAP1
00002a60: SWAP2
00002a61: MSTORE
00002a62: SWAP1
00002a63: DUP2
00002a64: MSTORE
00002a65: PUSH1 0x00
00002a67: SWAP7
00002a68: SWAP1
00002a69: SWAP6
00002a6a: POP
00002a6b: SWAP4
00002a6c: POP
00002a6d: POP
00002a6e: POP
00002a6f: POP
00002a70: JUMP
00002a71: JUMPDEST
00002a72: PUSH1 0x00
00002a74: DUP3
00002a75: PUSH2 0x2a80
00002a78: JUMPI
00002a79: POP
00002a7a: PUSH1 0x00
00002a7c: PUSH2 0x2ac8
00002a7f: JUMP
00002a80: JUMPDEST
00002a81: DUP3
00002a82: DUP3
00002a83: MUL
00002a84: DUP3
00002a85: DUP5
00002a86: DUP3
00002a87: DUP2
00002a88: PUSH2 0x2a8d
00002a8b: JUMPI
00002a8c: INVALID
00002a8d: JUMPDEST
00002a8e: DIV
00002a8f: EQ
00002a90: PUSH2 0x2ac5
00002a93: JUMPI
00002a94: PUSH1 0x40
00002a96: MLOAD
00002a97: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002ab8: DUP2
00002ab9: MSTORE
00002aba: PUSH1 0x04
00002abc: ADD
00002abd: PUSH2 0x0672
00002ac0: SWAP1
00002ac1: PUSH2 0x3b12
00002ac4: JUMP
00002ac5: JUMPDEST
00002ac6: SWAP1
00002ac7: POP
00002ac8: JUMPDEST
00002ac9: SWAP3
00002aca: SWAP2
00002acb: POP
00002acc: POP
00002acd: JUMP
00002ace: JUMPDEST
00002acf: PUSH1 0x40
00002ad1: MLOAD
00002ad2: PUSH32 0xc5ebeaec00000000000000000000000000000000000000000000000000000000
00002af3: DUP2
00002af4: MSTORE
00002af5: PUSH1 0x00
00002af7: SWAP1
00002af8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b0d: DUP5
00002b0e: AND
00002b0f: SWAP1
00002b10: PUSH4 0xc5ebeaec
00002b15: SWAP1
00002b16: PUSH2 0x0d75
00002b19: SWAP1
00002b1a: DUP6
00002b1b: SWAP1
00002b1c: PUSH1 0x04
00002b1e: ADD
00002b1f: PUSH2 0x3ccc
00002b22: JUMP
00002b23: JUMPDEST
00002b24: PUSH1 0x00
00002b26: PUSH2 0x2b2d
00002b29: PUSH2 0x3292
00002b2c: JUMP
00002b2d: JUMPDEST
00002b2e: PUSH1 0x00
00002b30: DUP1
00002b31: PUSH2 0x2b42
00002b34: DUP7
00002b35: PUSH1 0x00
00002b37: ADD
00002b38: MLOAD
00002b39: DUP7
00002b3a: PUSH1 0x00
00002b3c: ADD
00002b3d: MLOAD
00002b3e: PUSH2 0x2f44
00002b41: JUMP
00002b42: JUMPDEST
00002b43: PUSH1 0x40
00002b45: DUP1
00002b46: MLOAD
00002b47: PUSH1 0x20
00002b49: DUP2
00002b4a: ADD
00002b4b: SWAP1
00002b4c: SWAP2
00002b4d: MSTORE
00002b4e: SWAP1
00002b4f: DUP2
00002b50: MSTORE
00002b51: SWAP1
00002b52: SWAP8
00002b53: SWAP1
00002b54: SWAP7
00002b55: POP
00002b56: SWAP5
00002b57: POP
00002b58: POP
00002b59: POP
00002b5a: POP
00002b5b: POP
00002b5c: JUMP
00002b5d: JUMPDEST
00002b5e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b73: DUP3
00002b74: AND
00002b75: PUSH20 0x4ddc2d193948926d02f9b1fe9e1daa0718270ed5
00002b8a: EQ
00002b8b: ISZERO
00002b8c: PUSH2 0x2b9d
00002b8f: JUMPI
00002b90: PUSH2 0x2b98
00002b93: DUP2
00002b94: PUSH2 0x0c16
00002b97: JUMP
00002b98: JUMPDEST
00002b99: PUSH2 0x0fbd
00002b9c: JUMP
00002b9d: JUMPDEST
00002b9e: PUSH2 0x0fbd
00002ba1: DUP3
00002ba2: DUP3
00002ba3: PUSH2 0x0cd7
00002ba6: JUMP
00002ba7: JUMPDEST
00002ba8: MLOAD
00002ba9: SWAP1
00002baa: MLOAD
00002bab: GT
00002bac: SWAP1
00002bad: JUMP
00002bae: JUMPDEST
00002baf: PUSH1 0x00
00002bb1: DUP1
00002bb2: PUSH1 0x00
00002bb4: PUSH2 0x2bbb
00002bb7: PUSH2 0x3292
00002bba: JUMP
00002bbb: JUMPDEST
00002bbc: PUSH2 0x2bc5
00002bbf: DUP7
00002bc0: DUP7
00002bc1: PUSH2 0x2a09
00002bc4: JUMP
00002bc5: JUMPDEST
00002bc6: SWAP1
00002bc7: SWAP3
00002bc8: POP
00002bc9: SWAP1
00002bca: POP
00002bcb: PUSH1 0x00
00002bcd: DUP3
00002bce: PUSH1 0x03
00002bd0: DUP2
00002bd1: GT
00002bd2: ISZERO
00002bd3: PUSH2 0x2bd8
00002bd6: JUMPI
00002bd7: INVALID
00002bd8: JUMPDEST
00002bd9: EQ
00002bda: PUSH2 0x2be9
00002bdd: JUMPI
00002bde: POP
00002bdf: SWAP2
00002be0: POP
00002be1: PUSH1 0x00
00002be3: SWAP1
00002be4: POP
00002be5: PUSH2 0x2900
00002be8: JUMP
00002be9: JUMPDEST
00002bea: PUSH1 0x00
00002bec: PUSH2 0x2bf4
00002bef: DUP3
00002bf0: PUSH2 0x2f35
00002bf3: JUMP
00002bf4: JUMPDEST
00002bf5: SWAP4
00002bf6: POP
00002bf7: SWAP4
00002bf8: POP
00002bf9: POP
00002bfa: POP
00002bfb: SWAP3
00002bfc: POP
00002bfd: SWAP3
00002bfe: SWAP1
00002bff: POP
00002c00: JUMP
00002c01: JUMPDEST
00002c02: PUSH1 0x00
00002c04: PUSH2 0x2ac5
00002c07: DUP4
00002c08: DUP4
00002c09: PUSH1 0x40
00002c0b: MLOAD
00002c0c: DUP1
00002c0d: PUSH1 0x40
00002c0f: ADD
00002c10: PUSH1 0x40
00002c12: MSTORE
00002c13: DUP1
00002c14: PUSH1 0x1e
00002c16: DUP2
00002c17: MSTORE
00002c18: PUSH1 0x20
00002c1a: ADD
00002c1b: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00002c3c: DUP2
00002c3d: MSTORE
00002c3e: POP
00002c3f: PUSH2 0x2f67
00002c42: JUMP
00002c43: JUMPDEST
00002c44: PUSH1 0x00
00002c46: DUP1
00002c47: PUSH1 0x00
00002c49: PUSH2 0x2c50
00002c4c: PUSH2 0x3292
00002c4f: JUMP
00002c50: JUMPDEST
00002c51: PUSH2 0x2bc5
00002c54: DUP7
00002c55: DUP7
00002c56: PUSH2 0x2fad
00002c59: JUMP
00002c5a: JUMPDEST
00002c5b: PUSH1 0x00
00002c5d: DUP2
00002c5e: DUP4
00002c5f: LT
00002c60: PUSH2 0x2c69
00002c63: JUMPI
00002c64: DUP2
00002c65: PUSH2 0x2ac5
00002c68: JUMP
00002c69: JUMPDEST
00002c6a: POP
00002c6b: SWAP1
00002c6c: SWAP2
00002c6d: SWAP1
00002c6e: POP
00002c6f: JUMP
00002c70: JUMPDEST
00002c71: PUSH1 0x00
00002c73: PUSH2 0x2ac5
00002c76: DUP4
00002c77: DUP4
00002c78: PUSH1 0x40
00002c7a: MLOAD
00002c7b: DUP1
00002c7c: PUSH1 0x40
00002c7e: ADD
00002c7f: PUSH1 0x40
00002c81: MSTORE
00002c82: DUP1
00002c83: PUSH1 0x1a
00002c85: DUP2
00002c86: MSTORE
00002c87: PUSH1 0x20
00002c89: ADD
00002c8a: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
00002cab: DUP2
00002cac: MSTORE
00002cad: POP
00002cae: PUSH2 0x300c
00002cb1: JUMP
00002cb2: JUMPDEST
00002cb3: PUSH1 0x40
00002cb5: MLOAD
00002cb6: PUSH32 0x852a12e300000000000000000000000000000000000000000000000000000000
00002cd7: DUP2
00002cd8: MSTORE
00002cd9: PUSH1 0x00
00002cdb: SWAP1
00002cdc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002cf1: DUP5
00002cf2: AND
00002cf3: SWAP1
00002cf4: PUSH4 0x852a12e3
00002cf9: SWAP1
00002cfa: PUSH2 0x0d75
00002cfd: SWAP1
00002cfe: DUP6
00002cff: SWAP1
00002d00: PUSH1 0x04
00002d02: ADD
00002d03: PUSH2 0x3ccc
00002d06: JUMP
00002d07: JUMPDEST
00002d08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d1d: DUP3
00002d1e: AND
00002d1f: PUSH20 0x4ddc2d193948926d02f9b1fe9e1daa0718270ed5
00002d34: EQ
00002d35: ISZERO
00002d36: PUSH2 0x2d42
00002d39: JUMPI
00002d3a: PUSH2 0x2b98
00002d3d: DUP2
00002d3e: PUSH2 0x1476
00002d41: JUMP
00002d42: JUMPDEST
00002d43: PUSH2 0x0fbd
00002d46: DUP3
00002d47: DUP3
00002d48: PUSH2 0x1a67
00002d4b: JUMP
00002d4c: JUMPDEST
00002d4d: MLOAD
00002d4e: SWAP1
00002d4f: MLOAD
00002d50: LT
00002d51: SWAP1
00002d52: JUMP
00002d53: JUMPDEST
00002d54: PUSH2 0x0dd4
00002d57: DUP4
00002d58: PUSH4 0xa9059cbb
00002d5d: PUSH1 0xe0
00002d5f: SHL
00002d60: DUP5
00002d61: DUP5
00002d62: PUSH1 0x40
00002d64: MLOAD
00002d65: PUSH1 0x24
00002d67: ADD
00002d68: PUSH2 0x2d72
00002d6b: SWAP3
00002d6c: SWAP2
00002d6d: SWAP1
00002d6e: PUSH2 0x396b
00002d71: JUMP
00002d72: JUMPDEST
00002d73: PUSH1 0x40
00002d75: DUP1
00002d76: MLOAD
00002d77: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00002d98: DUP2
00002d99: DUP5
00002d9a: SUB
00002d9b: ADD
00002d9c: DUP2
00002d9d: MSTORE
00002d9e: SWAP2
00002d9f: SWAP1
00002da0: MSTORE
00002da1: PUSH1 0x20
00002da3: DUP2
00002da4: ADD
00002da5: DUP1
00002da6: MLOAD
00002da7: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002dc4: AND
00002dc5: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00002de6: SWAP1
00002de7: SWAP4
00002de8: AND
00002de9: SWAP3
00002dea: SWAP1
00002deb: SWAP3
00002dec: OR
00002ded: SWAP1
00002dee: SWAP2
00002def: MSTORE
00002df0: PUSH2 0x305d
00002df3: JUMP
00002df4: JUMPDEST
00002df5: PUSH1 0x00
00002df7: PUSH2 0x2dfe
00002dfa: PUSH2 0x3292
00002dfd: JUMP
00002dfe: JUMPDEST
00002dff: PUSH1 0x00
00002e01: DUP1
00002e02: PUSH2 0x2e13
00002e05: DUP7
00002e06: PUSH8 0x0de0b6b3a7640000
00002e0f: PUSH2 0x2ea5
00002e12: JUMP
00002e13: JUMPDEST
00002e14: SWAP1
00002e15: SWAP3
00002e16: POP
00002e17: SWAP1
00002e18: POP
00002e19: PUSH1 0x00
00002e1b: DUP3
00002e1c: PUSH1 0x03
00002e1e: DUP2
00002e1f: GT
00002e20: ISZERO
00002e21: PUSH2 0x2e26
00002e24: JUMPI
00002e25: INVALID
00002e26: JUMPDEST
00002e27: EQ
00002e28: PUSH2 0x2e45
00002e2b: JUMPI
00002e2c: POP
00002e2d: PUSH1 0x40
00002e2f: DUP1
00002e30: MLOAD
00002e31: PUSH1 0x20
00002e33: DUP2
00002e34: ADD
00002e35: SWAP1
00002e36: SWAP2
00002e37: MSTORE
00002e38: PUSH1 0x00
00002e3a: DUP2
00002e3b: MSTORE
00002e3c: SWAP1
00002e3d: SWAP3
00002e3e: POP
00002e3f: SWAP1
00002e40: POP
00002e41: PUSH2 0x2900
00002e44: JUMP
00002e45: JUMPDEST
00002e46: PUSH1 0x00
00002e48: DUP1
00002e49: PUSH2 0x2e52
00002e4c: DUP4
00002e4d: DUP9
00002e4e: PUSH2 0x2f0a
00002e51: JUMP
00002e52: JUMPDEST
00002e53: SWAP1
00002e54: SWAP3
00002e55: POP
00002e56: SWAP1
00002e57: POP
00002e58: PUSH1 0x00
00002e5a: DUP3
00002e5b: PUSH1 0x03
00002e5d: DUP2
00002e5e: GT
00002e5f: ISZERO
00002e60: PUSH2 0x2e65
00002e63: JUMPI
00002e64: INVALID
00002e65: JUMPDEST
00002e66: EQ
00002e67: PUSH2 0x2e88
00002e6a: JUMPI
00002e6b: DUP2
00002e6c: PUSH1 0x40
00002e6e: MLOAD
00002e6f: DUP1
00002e70: PUSH1 0x20
00002e72: ADD
00002e73: PUSH1 0x40
00002e75: MSTORE
00002e76: DUP1
00002e77: PUSH1 0x00
00002e79: DUP2
00002e7a: MSTORE
00002e7b: POP
00002e7c: SWAP6
00002e7d: POP
00002e7e: SWAP6
00002e7f: POP
00002e80: POP
00002e81: POP
00002e82: POP
00002e83: POP
00002e84: PUSH2 0x2900
00002e87: JUMP
00002e88: JUMPDEST
00002e89: PUSH1 0x40
00002e8b: DUP1
00002e8c: MLOAD
00002e8d: PUSH1 0x20
00002e8f: DUP2
00002e90: ADD
00002e91: SWAP1
00002e92: SWAP2
00002e93: MSTORE
00002e94: SWAP1
00002e95: DUP2
00002e96: MSTORE
00002e97: PUSH1 0x00
00002e99: SWAP9
00002e9a: SWAP1
00002e9b: SWAP8
00002e9c: POP
00002e9d: SWAP6
00002e9e: POP
00002e9f: POP
00002ea0: POP
00002ea1: POP
00002ea2: POP
00002ea3: POP
00002ea4: JUMP
00002ea5: JUMPDEST
00002ea6: PUSH1 0x00
00002ea8: DUP1
00002ea9: DUP4
00002eaa: PUSH2 0x2eb8
00002ead: JUMPI
00002eae: POP
00002eaf: PUSH1 0x00
00002eb1: SWAP1
00002eb2: POP
00002eb3: DUP1
00002eb4: PUSH2 0x2900
00002eb7: JUMP
00002eb8: JUMPDEST
00002eb9: DUP4
00002eba: DUP4
00002ebb: MUL
00002ebc: DUP4
00002ebd: DUP6
00002ebe: DUP3
00002ebf: DUP2
00002ec0: PUSH2 0x2ec5
00002ec3: JUMPI
00002ec4: INVALID
00002ec5: JUMPDEST
00002ec6: DIV
00002ec7: EQ
00002ec8: PUSH2 0x2ed9
00002ecb: JUMPI
00002ecc: PUSH1 0x02
00002ece: PUSH1 0x00
00002ed0: SWAP3
00002ed1: POP
00002ed2: SWAP3
00002ed3: POP
00002ed4: POP
00002ed5: PUSH2 0x2900
00002ed8: JUMP
00002ed9: JUMPDEST
00002eda: PUSH1 0x00
00002edc: SWAP3
00002edd: POP
00002ede: SWAP1
00002edf: POP
00002ee0: PUSH2 0x2900
00002ee3: JUMP
00002ee4: JUMPDEST
00002ee5: PUSH1 0x00
00002ee7: DUP1
00002ee8: DUP4
00002ee9: DUP4
00002eea: ADD
00002eeb: DUP5
00002eec: DUP2
00002eed: LT
00002eee: PUSH2 0x2efc
00002ef1: JUMPI
00002ef2: PUSH1 0x00
00002ef4: SWAP3
00002ef5: POP
00002ef6: SWAP1
00002ef7: POP
00002ef8: PUSH2 0x2900
00002efb: JUMP
00002efc: JUMPDEST
00002efd: PUSH1 0x02
00002eff: PUSH1 0x00
00002f01: SWAP3
00002f02: POP
00002f03: SWAP3
00002f04: POP
00002f05: POP
00002f06: PUSH2 0x2900
00002f09: JUMP
00002f0a: JUMPDEST
00002f0b: PUSH1 0x00
00002f0d: DUP1
00002f0e: DUP3
00002f0f: PUSH2 0x2f1e
00002f12: JUMPI
00002f13: POP
00002f14: PUSH1 0x01
00002f16: SWAP1
00002f17: POP
00002f18: PUSH1 0x00
00002f1a: PUSH2 0x2900
00002f1d: JUMP
00002f1e: JUMPDEST
00002f1f: PUSH1 0x00
00002f21: DUP4
00002f22: DUP6
00002f23: DUP2
00002f24: PUSH2 0x2f29
00002f27: JUMPI
00002f28: INVALID
00002f29: JUMPDEST
00002f2a: DIV
00002f2b: SWAP2
00002f2c: POP
00002f2d: SWAP2
00002f2e: POP
00002f2f: SWAP3
00002f30: POP
00002f31: SWAP3
00002f32: SWAP1
00002f33: POP
00002f34: JUMP
00002f35: JUMPDEST
00002f36: MLOAD
00002f37: PUSH8 0x0de0b6b3a7640000
00002f40: SWAP1
00002f41: DIV
00002f42: SWAP1
00002f43: JUMP
00002f44: JUMPDEST
00002f45: PUSH1 0x00
00002f47: DUP1
00002f48: DUP4
00002f49: DUP4
00002f4a: GT
00002f4b: PUSH2 0x2f5b
00002f4e: JUMPI
00002f4f: POP
00002f50: PUSH1 0x00
00002f52: SWAP1
00002f53: POP
00002f54: DUP2
00002f55: DUP4
00002f56: SUB
00002f57: PUSH2 0x2900
00002f5a: JUMP
00002f5b: JUMPDEST
00002f5c: POP
00002f5d: PUSH1 0x03
00002f5f: SWAP1
00002f60: POP
00002f61: PUSH1 0x00
00002f63: PUSH2 0x2900
00002f66: JUMP
00002f67: JUMPDEST
00002f68: PUSH1 0x00
00002f6a: DUP2
00002f6b: DUP5
00002f6c: DUP5
00002f6d: GT
00002f6e: ISZERO
00002f6f: PUSH2 0x2fa5
00002f72: JUMPI
00002f73: PUSH1 0x40
00002f75: MLOAD
00002f76: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002f97: DUP2
00002f98: MSTORE
00002f99: PUSH1 0x04
00002f9b: ADD
00002f9c: PUSH2 0x0672
00002f9f: SWAP2
00002fa0: SWAP1
00002fa1: PUSH2 0x39f6
00002fa4: JUMP
00002fa5: JUMPDEST
00002fa6: POP
00002fa7: POP
00002fa8: POP
00002fa9: SWAP1
00002faa: SUB
00002fab: SWAP1
00002fac: JUMP
00002fad: JUMPDEST
00002fae: PUSH1 0x00
00002fb0: PUSH2 0x2fb7
00002fb3: PUSH2 0x3292
00002fb6: JUMP
00002fb7: JUMPDEST
00002fb8: PUSH1 0x00
00002fba: DUP1
00002fbb: PUSH2 0x2fcc
00002fbe: PUSH8 0x0de0b6b3a7640000
00002fc7: DUP8
00002fc8: PUSH2 0x2ea5
00002fcb: JUMP
00002fcc: JUMPDEST
00002fcd: SWAP1
00002fce: SWAP3
00002fcf: POP
00002fd0: SWAP1
00002fd1: POP
00002fd2: PUSH1 0x00
00002fd4: DUP3
00002fd5: PUSH1 0x03
00002fd7: DUP2
00002fd8: GT
00002fd9: ISZERO
00002fda: PUSH2 0x2fdf
00002fdd: JUMPI
00002fde: INVALID
00002fdf: JUMPDEST
00002fe0: EQ
00002fe1: PUSH2 0x2ffe
00002fe4: JUMPI
00002fe5: POP
00002fe6: PUSH1 0x40
00002fe8: DUP1
00002fe9: MLOAD
00002fea: PUSH1 0x20
00002fec: DUP2
00002fed: ADD
00002fee: SWAP1
00002fef: SWAP2
00002ff0: MSTORE
00002ff1: PUSH1 0x00
00002ff3: DUP2
00002ff4: MSTORE
00002ff5: SWAP1
00002ff6: SWAP3
00002ff7: POP
00002ff8: SWAP1
00002ff9: POP
00002ffa: PUSH2 0x2900
00002ffd: JUMP
00002ffe: JUMPDEST
00002fff: PUSH2 0x2bf4
00003002: DUP2
00003003: DUP7
00003004: PUSH1 0x00
00003006: ADD
00003007: MLOAD
00003008: PUSH2 0x2df4
0000300b: JUMP
0000300c: JUMPDEST
0000300d: PUSH1 0x00
0000300f: DUP2
00003010: DUP4
00003011: PUSH2 0x3047
00003014: JUMPI
00003015: PUSH1 0x40
00003017: MLOAD
00003018: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003039: DUP2
0000303a: MSTORE
0000303b: PUSH1 0x04
0000303d: ADD
0000303e: PUSH2 0x0672
00003041: SWAP2
00003042: SWAP1
00003043: PUSH2 0x39f6
00003046: JUMP
00003047: JUMPDEST
00003048: POP
00003049: PUSH1 0x00
0000304b: DUP4
0000304c: DUP6
0000304d: DUP2
0000304e: PUSH2 0x3053
00003051: JUMPI
00003052: INVALID
00003053: JUMPDEST
00003054: DIV
00003055: SWAP6
00003056: SWAP5
00003057: POP
00003058: POP
00003059: POP
0000305a: POP
0000305b: POP
0000305c: JUMP
0000305d: JUMPDEST
0000305e: PUSH1 0x60
00003060: PUSH2 0x30bf
00003063: DUP3
00003064: PUSH1 0x40
00003066: MLOAD
00003067: DUP1
00003068: PUSH1 0x40
0000306a: ADD
0000306b: PUSH1 0x40
0000306d: MSTORE
0000306e: DUP1
0000306f: PUSH1 0x20
00003071: DUP2
00003072: MSTORE
00003073: PUSH1 0x20
00003075: ADD
00003076: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00003097: DUP2
00003098: MSTORE
00003099: POP
0000309a: DUP6
0000309b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000030b0: AND
000030b1: PUSH2 0x3113
000030b4: SWAP1
000030b5: SWAP3
000030b6: SWAP2
000030b7: SWAP1
000030b8: PUSH4 0xffffffff
000030bd: AND
000030be: JUMP
000030bf: JUMPDEST
000030c0: DUP1
000030c1: MLOAD
000030c2: SWAP1
000030c3: SWAP2
000030c4: POP
000030c5: ISZERO
000030c6: PUSH2 0x0dd4
000030c9: JUMPI
000030ca: DUP1
000030cb: DUP1
000030cc: PUSH1 0x20
000030ce: ADD
000030cf: SWAP1
000030d0: MLOAD
000030d1: DUP2
000030d2: ADD
000030d3: SWAP1
000030d4: PUSH2 0x30dd
000030d7: SWAP2
000030d8: SWAP1
000030d9: PUSH2 0x387c
000030dc: JUMP
000030dd: JUMPDEST
000030de: PUSH2 0x0dd4
000030e1: JUMPI
000030e2: PUSH1 0x40
000030e4: MLOAD
000030e5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003106: DUP2
00003107: MSTORE
00003108: PUSH1 0x04
0000310a: ADD
0000310b: PUSH2 0x0672
0000310e: SWAP1
0000310f: PUSH2 0x3c6f
00003112: JUMP
00003113: JUMPDEST
00003114: PUSH1 0x60
00003116: PUSH2 0x3122
00003119: DUP5
0000311a: DUP5
0000311b: PUSH1 0x00
0000311d: DUP6
0000311e: PUSH2 0x312a
00003121: JUMP
00003122: JUMPDEST
00003123: SWAP5
00003124: SWAP4
00003125: POP
00003126: POP
00003127: POP
00003128: POP
00003129: JUMP
0000312a: JUMPDEST
0000312b: PUSH1 0x60
0000312d: PUSH2 0x3135
00003130: DUP6
00003131: PUSH2 0x322f
00003134: JUMP
00003135: JUMPDEST
00003136: PUSH2 0x316b
00003139: JUMPI
0000313a: PUSH1 0x40
0000313c: MLOAD
0000313d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000315e: DUP2
0000315f: MSTORE
00003160: PUSH1 0x04
00003162: ADD
00003163: PUSH2 0x0672
00003166: SWAP1
00003167: PUSH2 0x3c38
0000316a: JUMP
0000316b: JUMPDEST
0000316c: PUSH1 0x00
0000316e: PUSH1 0x60
00003170: DUP7
00003171: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003186: AND
00003187: DUP6
00003188: DUP8
00003189: PUSH1 0x40
0000318b: MLOAD
0000318c: PUSH2 0x3195
0000318f: SWAP2
00003190: SWAP1
00003191: PUSH2 0x392e
00003194: JUMP
00003195: JUMPDEST
00003196: PUSH1 0x00
00003198: PUSH1 0x40
0000319a: MLOAD
0000319b: DUP1
0000319c: DUP4
0000319d: SUB
0000319e: DUP2
0000319f: DUP6
000031a0: DUP8
000031a1: GAS
000031a2: CALL
000031a3: SWAP3
000031a4: POP
000031a5: POP
000031a6: POP
000031a7: RETURNDATASIZE
000031a8: DUP1
000031a9: PUSH1 0x00
000031ab: DUP2
000031ac: EQ
000031ad: PUSH2 0x31d2
000031b0: JUMPI
000031b1: PUSH1 0x40
000031b3: MLOAD
000031b4: SWAP2
000031b5: POP
000031b6: PUSH1 0x1f
000031b8: NOT
000031b9: PUSH1 0x3f
000031bb: RETURNDATASIZE
000031bc: ADD
000031bd: AND
000031be: DUP3
000031bf: ADD
000031c0: PUSH1 0x40
000031c2: MSTORE
000031c3: RETURNDATASIZE
000031c4: DUP3
000031c5: MSTORE
000031c6: RETURNDATASIZE
000031c7: PUSH1 0x00
000031c9: PUSH1 0x20
000031cb: DUP5
000031cc: ADD
000031cd: RETURNDATACOPY
000031ce: PUSH2 0x31d7
000031d1: JUMP
000031d2: JUMPDEST
000031d3: PUSH1 0x60
000031d5: SWAP2
000031d6: POP
000031d7: JUMPDEST
000031d8: POP
000031d9: SWAP2
000031da: POP
000031db: SWAP2
000031dc: POP
000031dd: DUP2
000031de: ISZERO
000031df: PUSH2 0x31eb
000031e2: JUMPI
000031e3: SWAP2
000031e4: POP
000031e5: PUSH2 0x3122
000031e8: SWAP1
000031e9: POP
000031ea: JUMP
000031eb: JUMPDEST
000031ec: DUP1
000031ed: MLOAD
000031ee: ISZERO
000031ef: PUSH2 0x31fb
000031f2: JUMPI
000031f3: DUP1
000031f4: MLOAD
000031f5: DUP1
000031f6: DUP3
000031f7: PUSH1 0x20
000031f9: ADD
000031fa: REVERT
000031fb: JUMPDEST
000031fc: DUP4
000031fd: PUSH1 0x40
000031ff: MLOAD
00003200: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003221: DUP2
00003222: MSTORE
00003223: PUSH1 0x04
00003225: ADD
00003226: PUSH2 0x0672
00003229: SWAP2
0000322a: SWAP1
0000322b: PUSH2 0x39f6
0000322e: JUMP
0000322f: JUMPDEST
00003230: EXTCODESIZE
00003231: ISZERO
00003232: ISZERO
00003233: SWAP1
00003234: JUMP
00003235: JUMPDEST
00003236: PUSH1 0x40
00003238: MLOAD
00003239: DUP1
0000323a: PUSH2 0x0120
0000323d: ADD
0000323e: PUSH1 0x40
00003240: MSTORE
00003241: DUP1
00003242: PUSH1 0x00
00003244: DUP2
00003245: MSTORE
00003246: PUSH1 0x20
00003248: ADD
00003249: PUSH1 0x00
0000324b: DUP2
0000324c: MSTORE
0000324d: PUSH1 0x20
0000324f: ADD
00003250: PUSH1 0x00
00003252: DUP2
00003253: MSTORE
00003254: PUSH1 0x20
00003256: ADD
00003257: PUSH1 0x00
00003259: DUP2
0000325a: MSTORE
0000325b: PUSH1 0x20
0000325d: ADD
0000325e: PUSH1 0x00
00003260: DUP2
00003261: MSTORE
00003262: PUSH1 0x20
00003264: ADD
00003265: PUSH1 0x00
00003267: DUP2
00003268: MSTORE
00003269: PUSH1 0x20
0000326b: ADD
0000326c: PUSH2 0x3273
0000326f: PUSH2 0x3292
00003272: JUMP
00003273: JUMPDEST
00003274: DUP2
00003275: MSTORE
00003276: PUSH1 0x20
00003278: ADD
00003279: PUSH2 0x3280
0000327c: PUSH2 0x3292
0000327f: JUMP
00003280: JUMPDEST
00003281: DUP2
00003282: MSTORE
00003283: PUSH1 0x20
00003285: ADD
00003286: PUSH2 0x328d
00003289: PUSH2 0x3292
0000328c: JUMP
0000328d: JUMPDEST
0000328e: SWAP1
0000328f: MSTORE
00003290: SWAP1
00003291: JUMP
00003292: JUMPDEST
00003293: PUSH1 0x40
00003295: MLOAD
00003296: DUP1
00003297: PUSH1 0x20
00003299: ADD
0000329a: PUSH1 0x40
0000329c: MSTORE
0000329d: DUP1
0000329e: PUSH1 0x00
000032a0: DUP2
000032a1: MSTORE
000032a2: POP
000032a3: SWAP1
000032a4: JUMP
000032a5: JUMPDEST
000032a6: PUSH1 0x40
000032a8: MLOAD
000032a9: DUP1
000032aa: PUSH2 0x0160
000032ad: ADD
000032ae: PUSH1 0x40
000032b0: MSTORE
000032b1: DUP1
000032b2: PUSH1 0x00
000032b4: DUP2
000032b5: MSTORE
000032b6: PUSH1 0x20
000032b8: ADD
000032b9: PUSH1 0x00
000032bb: DUP2
000032bc: MSTORE
000032bd: PUSH1 0x20
000032bf: ADD
000032c0: PUSH2 0x32c7
000032c3: PUSH2 0x3292
000032c6: JUMP
000032c7: JUMPDEST
000032c8: DUP2
000032c9: MSTORE
000032ca: PUSH1 0x20
000032cc: ADD
000032cd: PUSH2 0x32d4
000032d0: PUSH2 0x3292
000032d3: JUMP
000032d4: JUMPDEST
000032d5: DUP2
000032d6: MSTORE
000032d7: PUSH1 0x20
000032d9: ADD
000032da: PUSH2 0x32e1
000032dd: PUSH2 0x3292
000032e0: JUMP
000032e1: JUMPDEST
000032e2: DUP2
000032e3: MSTORE
000032e4: PUSH1 0x20
000032e6: ADD
000032e7: PUSH1 0x00
000032e9: DUP2
000032ea: MSTORE
000032eb: PUSH1 0x20
000032ed: ADD
000032ee: PUSH1 0x00
000032f0: DUP2
000032f1: MSTORE
000032f2: PUSH1 0x20
000032f4: ADD
000032f5: PUSH1 0x00
000032f7: DUP2
000032f8: MSTORE
000032f9: PUSH1 0x20
000032fb: ADD
000032fc: PUSH1 0x00
000032fe: DUP2
000032ff: MSTORE
00003300: PUSH1 0x20
00003302: ADD
00003303: PUSH1 0x00
00003305: DUP2
00003306: MSTORE
00003307: PUSH1 0x20
00003309: ADD
0000330a: PUSH1 0x00
0000330c: DUP2
0000330d: MSTORE
0000330e: POP
0000330f: SWAP1
00003310: JUMP
00003311: JUMPDEST
00003312: PUSH1 0x40
00003314: MLOAD
00003315: DUP1
00003316: PUSH2 0x0140
00003319: ADD
0000331a: PUSH1 0x40
0000331c: MSTORE
0000331d: DUP1
0000331e: PUSH1 0x00
00003320: DUP2
00003321: MSTORE
00003322: PUSH1 0x20
00003324: ADD
00003325: PUSH1 0x00
00003327: DUP2
00003328: MSTORE
00003329: PUSH1 0x20
0000332b: ADD
0000332c: PUSH2 0x3333
0000332f: PUSH2 0x3292
00003332: JUMP
00003333: JUMPDEST
00003334: DUP2
00003335: MSTORE
00003336: PUSH1 0x20
00003338: ADD
00003339: PUSH2 0x3340
0000333c: PUSH2 0x3292
0000333f: JUMP
00003340: JUMPDEST
00003341: DUP2
00003342: MSTORE
00003343: PUSH1 0x20
00003345: ADD
00003346: PUSH2 0x334d
00003349: PUSH2 0x3292
0000334c: JUMP
0000334d: JUMPDEST
0000334e: DUP2
0000334f: MSTORE
00003350: PUSH1 0x20
00003352: ADD
00003353: PUSH1 0x00
00003355: DUP2
00003356: MSTORE
00003357: PUSH1 0x20
00003359: ADD
0000335a: PUSH1 0x00
0000335c: DUP2
0000335d: MSTORE
0000335e: PUSH1 0x20
00003360: ADD
00003361: PUSH1 0x00
00003363: DUP2
00003364: MSTORE
00003365: PUSH1 0x20
00003367: ADD
00003368: PUSH1 0x00
0000336a: DUP2
0000336b: MSTORE
0000336c: PUSH1 0x20
0000336e: ADD
0000336f: PUSH1 0x00
00003371: DUP2
00003372: MSTORE
00003373: POP
00003374: SWAP1
00003375: JUMP
00003376: JUMPDEST
00003377: DUP1
00003378: CALLDATALOAD
00003379: PUSH2 0x2ac8
0000337c: DUP2
0000337d: PUSH2 0x3d6d
00003380: JUMP
00003381: JUMPDEST
00003382: PUSH1 0x00
00003384: DUP3
00003385: PUSH1 0x1f
00003387: DUP4
00003388: ADD
00003389: SLT
0000338a: PUSH2 0x3391
0000338d: JUMPI
0000338e: DUP1
0000338f: DUP2
00003390: REVERT
00003391: JUMPDEST
00003392: DUP2
00003393: CALLDATALOAD
00003394: PUSH2 0x33a4
00003397: PUSH2 0x339f
0000339a: DUP3
0000339b: PUSH2 0x3d21
0000339e: JUMP
0000339f: JUMPDEST
000033a0: PUSH2 0x3cfa
000033a3: JUMP
000033a4: JUMPDEST
000033a5: DUP2
000033a6: DUP2
000033a7: MSTORE
000033a8: SWAP2
000033a9: POP
000033aa: PUSH1 0x20
000033ac: DUP1
000033ad: DUP4
000033ae: ADD
000033af: SWAP1
000033b0: DUP5
000033b1: DUP2
000033b2: ADD
000033b3: PUSH1 0x00
000033b5: JUMPDEST
000033b6: DUP5
000033b7: DUP2
000033b8: LT
000033b9: ISZERO
000033ba: PUSH2 0x33de
000033bd: JUMPI
000033be: PUSH2 0x33cc
000033c1: DUP9
000033c2: DUP5
000033c3: DUP5
000033c4: CALLDATALOAD
000033c5: DUP11
000033c6: ADD
000033c7: ADD
000033c8: PUSH2 0x3447
000033cb: JUMP
000033cc: JUMPDEST
000033cd: DUP5
000033ce: MSTORE
000033cf: SWAP3
000033d0: DUP3
000033d1: ADD
000033d2: SWAP3
000033d3: SWAP1
000033d4: DUP3
000033d5: ADD
000033d6: SWAP1
000033d7: PUSH1 0x01
000033d9: ADD
000033da: PUSH2 0x33b5
000033dd: JUMP
000033de: JUMPDEST
000033df: POP
000033e0: POP
000033e1: POP
000033e2: POP
000033e3: POP
000033e4: SWAP3
000033e5: SWAP2
000033e6: POP
000033e7: POP
000033e8: JUMP
000033e9: JUMPDEST
000033ea: PUSH1 0x00
000033ec: DUP3
000033ed: PUSH1 0x1f
000033ef: DUP4
000033f0: ADD
000033f1: SLT
000033f2: PUSH2 0x33f9
000033f5: JUMPI
000033f6: DUP1
000033f7: DUP2
000033f8: REVERT
000033f9: JUMPDEST
000033fa: DUP2
000033fb: CALLDATALOAD
000033fc: PUSH2 0x3407
000033ff: PUSH2 0x339f
00003402: DUP3
00003403: PUSH2 0x3d21
00003406: JUMP
00003407: JUMPDEST
00003408: DUP2
00003409: DUP2
0000340a: MSTORE
0000340b: SWAP2
0000340c: POP
0000340d: PUSH1 0x20
0000340f: DUP1
00003410: DUP4
00003411: ADD
00003412: SWAP1
00003413: DUP5
00003414: DUP2
00003415: ADD
00003416: DUP2
00003417: DUP5
00003418: MUL
00003419: DUP7
0000341a: ADD
0000341b: DUP3
0000341c: ADD
0000341d: DUP8
0000341e: LT
0000341f: ISZERO
00003420: PUSH2 0x3428
00003423: JUMPI
00003424: PUSH1 0x00
00003426: DUP1
00003427: REVERT
00003428: JUMPDEST
00003429: PUSH1 0x00
0000342b: JUMPDEST
0000342c: DUP5
0000342d: DUP2
0000342e: LT
0000342f: ISZERO
00003430: PUSH2 0x33de
00003433: JUMPI
00003434: DUP2
00003435: CALLDATALOAD
00003436: DUP5
00003437: MSTORE
00003438: SWAP3
00003439: DUP3
0000343a: ADD
0000343b: SWAP3
0000343c: SWAP1
0000343d: DUP3
0000343e: ADD
0000343f: SWAP1
00003440: PUSH1 0x01
00003442: ADD
00003443: PUSH2 0x342b
00003446: JUMP
00003447: JUMPDEST
00003448: PUSH1 0x00
0000344a: DUP3
0000344b: PUSH1 0x1f
0000344d: DUP4
0000344e: ADD
0000344f: SLT
00003450: PUSH2 0x3457
00003453: JUMPI
00003454: DUP1
00003455: DUP2
00003456: REVERT
00003457: JUMPDEST
00003458: DUP2
00003459: CALLDATALOAD
0000345a: PUSH8 0xffffffffffffffff
00003463: DUP2
00003464: GT
00003465: ISZERO
00003466: PUSH2 0x346d
00003469: JUMPI
0000346a: DUP2
0000346b: DUP3
0000346c: REVERT
0000346d: JUMPDEST
0000346e: PUSH2 0x349e
00003471: PUSH1 0x20
00003473: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00003494: PUSH1 0x1f
00003496: DUP5
00003497: ADD
00003498: AND
00003499: ADD
0000349a: PUSH2 0x3cfa
0000349d: JUMP
0000349e: JUMPDEST
0000349f: SWAP2
000034a0: POP
000034a1: DUP1
000034a2: DUP3
000034a3: MSTORE
000034a4: DUP4
000034a5: PUSH1 0x20
000034a7: DUP3
000034a8: DUP6
000034a9: ADD
000034aa: ADD
000034ab: GT
000034ac: ISZERO
000034ad: PUSH2 0x34b5
000034b0: JUMPI
000034b1: PUSH1 0x00
000034b3: DUP1
000034b4: REVERT
000034b5: JUMPDEST
000034b6: DUP1
000034b7: PUSH1 0x20
000034b9: DUP5
000034ba: ADD
000034bb: PUSH1 0x20
000034bd: DUP5
000034be: ADD
000034bf: CALLDATACOPY
000034c0: PUSH1 0x00
000034c2: SWAP1
000034c3: DUP3
000034c4: ADD
000034c5: PUSH1 0x20
000034c7: ADD
000034c8: MSTORE
000034c9: SWAP3
000034ca: SWAP2
000034cb: POP
000034cc: POP
000034cd: JUMP
000034ce: JUMPDEST
000034cf: PUSH1 0x00
000034d1: PUSH1 0x20
000034d3: DUP3
000034d4: DUP5
000034d5: SUB
000034d6: SLT
000034d7: ISZERO
000034d8: PUSH2 0x34df
000034db: JUMPI
000034dc: DUP1
000034dd: DUP2
000034de: REVERT
000034df: JUMPDEST
000034e0: DUP2
000034e1: CALLDATALOAD
000034e2: PUSH2 0x2ac5
000034e5: DUP2
000034e6: PUSH2 0x3d6d
000034e9: JUMP
000034ea: JUMPDEST
000034eb: PUSH1 0x00
000034ed: PUSH1 0x20
000034ef: DUP3
000034f0: DUP5
000034f1: SUB
000034f2: SLT
000034f3: ISZERO
000034f4: PUSH2 0x34fb
000034f7: JUMPI
000034f8: DUP1
000034f9: DUP2
000034fa: REVERT
000034fb: JUMPDEST
000034fc: DUP2
000034fd: MLOAD
000034fe: PUSH2 0x2ac5
00003501: DUP2
00003502: PUSH2 0x3d6d
00003505: JUMP
00003506: JUMPDEST
00003507: PUSH1 0x00
00003509: DUP1
0000350a: PUSH1 0x40
0000350c: DUP4
0000350d: DUP6
0000350e: SUB
0000350f: SLT
00003510: ISZERO
00003511: PUSH2 0x3518
00003514: JUMPI
00003515: DUP1
00003516: DUP2
00003517: REVERT
00003518: JUMPDEST
00003519: DUP3
0000351a: CALLDATALOAD
0000351b: PUSH2 0x3523
0000351e: DUP2
0000351f: PUSH2 0x3d6d
00003522: JUMP
00003523: JUMPDEST
00003524: SWAP2
00003525: POP
00003526: PUSH1 0x20
00003528: DUP4
00003529: ADD
0000352a: CALLDATALOAD
0000352b: PUSH2 0x3533
0000352e: DUP2
0000352f: PUSH2 0x3d6d
00003532: JUMP
00003533: JUMPDEST
00003534: DUP1
00003535: SWAP2
00003536: POP
00003537: POP
00003538: SWAP3
00003539: POP
0000353a: SWAP3
0000353b: SWAP1
0000353c: POP
0000353d: JUMP
0000353e: JUMPDEST
0000353f: PUSH1 0x00
00003541: DUP1
00003542: PUSH1 0x00
00003544: PUSH1 0x60
00003546: DUP5
00003547: DUP7
00003548: SUB
00003549: SLT
0000354a: ISZERO
0000354b: PUSH2 0x3552
0000354e: JUMPI
0000354f: DUP1
00003550: DUP2
00003551: REVERT
00003552: JUMPDEST
00003553: DUP4
00003554: CALLDATALOAD
00003555: PUSH2 0x355d
00003558: DUP2
00003559: PUSH2 0x3d6d
0000355c: JUMP
0000355d: JUMPDEST
0000355e: SWAP3
0000355f: POP
00003560: PUSH1 0x20
00003562: DUP5
00003563: ADD
00003564: CALLDATALOAD
00003565: PUSH2 0x356d
00003568: DUP2
00003569: PUSH2 0x3d6d
0000356c: JUMP
0000356d: JUMPDEST
0000356e: SWAP3
0000356f: SWAP6
00003570: SWAP3
00003571: SWAP5
00003572: POP
00003573: POP
00003574: POP
00003575: PUSH1 0x40
00003577: SWAP2
00003578: SWAP1
00003579: SWAP2
0000357a: ADD
0000357b: CALLDATALOAD
0000357c: SWAP1
0000357d: JUMP
0000357e: JUMPDEST
0000357f: PUSH1 0x00
00003581: DUP1
00003582: PUSH1 0x40
00003584: DUP4
00003585: DUP6
00003586: SUB
00003587: SLT
00003588: ISZERO
00003589: PUSH2 0x3590
0000358c: JUMPI
0000358d: DUP2
0000358e: DUP3
0000358f: REVERT
00003590: JUMPDEST
00003591: DUP3
00003592: CALLDATALOAD
00003593: PUSH2 0x359b
00003596: DUP2
00003597: PUSH2 0x3d6d
0000359a: JUMP
0000359b: JUMPDEST
0000359c: SWAP5
0000359d: PUSH1 0x20
0000359f: SWAP4
000035a0: SWAP1
000035a1: SWAP4
000035a2: ADD
000035a3: CALLDATALOAD
000035a4: SWAP4
000035a5: POP
000035a6: POP
000035a7: POP
000035a8: JUMP
000035a9: JUMPDEST
000035aa: PUSH1 0x00
000035ac: DUP1
000035ad: PUSH1 0x00
000035af: PUSH1 0x60
000035b1: DUP5
000035b2: DUP7
000035b3: SUB
000035b4: SLT
000035b5: ISZERO
000035b6: PUSH2 0x35bd
000035b9: JUMPI
000035ba: DUP3
000035bb: DUP4
000035bc: REVERT
000035bd: JUMPDEST
000035be: DUP4
000035bf: CALLDATALOAD
000035c0: PUSH2 0x35c8
000035c3: DUP2
000035c4: PUSH2 0x3d6d
000035c7: JUMP
000035c8: JUMPDEST
000035c9: SWAP3
000035ca: POP
000035cb: PUSH1 0x20
000035cd: DUP5
000035ce: ADD
000035cf: CALLDATALOAD
000035d0: SWAP2
000035d1: POP
000035d2: PUSH1 0x40
000035d4: DUP5
000035d5: ADD
000035d6: CALLDATALOAD
000035d7: PUSH2 0x35df
000035da: DUP2
000035db: PUSH2 0x3d6d
000035de: JUMP
000035df: JUMPDEST
000035e0: DUP1
000035e1: SWAP2
000035e2: POP
000035e3: POP
000035e4: SWAP3
000035e5: POP
000035e6: SWAP3
000035e7: POP
000035e8: SWAP3
000035e9: JUMP
000035ea: JUMPDEST
000035eb: PUSH1 0x00
000035ed: DUP1
000035ee: PUSH1 0x00
000035f0: PUSH1 0x60
000035f2: DUP5
000035f3: DUP7
000035f4: SUB
000035f5: SLT
000035f6: ISZERO
000035f7: PUSH2 0x35fe
000035fa: JUMPI
000035fb: DUP3
000035fc: DUP4
000035fd: REVERT
000035fe: JUMPDEST
000035ff: DUP4
00003600: CALLDATALOAD
00003601: PUSH2 0x3609
00003604: DUP2
00003605: PUSH2 0x3d6d
00003608: JUMP
00003609: JUMPDEST
0000360a: SWAP3
0000360b: POP
0000360c: PUSH1 0x20
0000360e: DUP5
0000360f: ADD
00003610: CALLDATALOAD
00003611: SWAP2
00003612: POP
00003613: PUSH1 0x40
00003615: DUP5
00003616: ADD
00003617: CALLDATALOAD
00003618: PUSH8 0xffffffffffffffff
00003621: DUP2
00003622: GT
00003623: ISZERO
00003624: PUSH2 0x362b
00003627: JUMPI
00003628: DUP2
00003629: DUP3
0000362a: REVERT
0000362b: JUMPDEST
0000362c: PUSH2 0x3637
0000362f: DUP7
00003630: DUP3
00003631: DUP8
00003632: ADD
00003633: PUSH2 0x3447
00003636: JUMP
00003637: JUMPDEST
00003638: SWAP2
00003639: POP
0000363a: POP
0000363b: SWAP3
0000363c: POP
0000363d: SWAP3
0000363e: POP
0000363f: SWAP3
00003640: JUMP
00003641: JUMPDEST
00003642: PUSH1 0x00
00003644: DUP1
00003645: PUSH1 0x00
00003647: DUP1
00003648: PUSH1 0x00
0000364a: PUSH1 0xa0
0000364c: DUP7
0000364d: DUP9
0000364e: SUB
0000364f: SLT
00003650: ISZERO
00003651: PUSH2 0x3658
00003654: JUMPI
00003655: DUP1
00003656: DUP2
00003657: REVERT
00003658: JUMPDEST
00003659: DUP6
0000365a: CALLDATALOAD
0000365b: PUSH2 0x3663
0000365e: DUP2
0000365f: PUSH2 0x3d6d
00003662: JUMP
00003663: JUMPDEST
00003664: SWAP8
00003665: PUSH1 0x20
00003667: DUP8
00003668: ADD
00003669: CALLDATALOAD
0000366a: SWAP8
0000366b: POP
0000366c: PUSH1 0x40
0000366e: DUP8
0000366f: ADD
00003670: CALLDATALOAD
00003671: SWAP7
00003672: PUSH1 0x60
00003674: DUP2
00003675: ADD
00003676: CALLDATALOAD
00003677: SWAP7
00003678: POP
00003679: PUSH1 0x80
0000367b: ADD
0000367c: CALLDATALOAD
0000367d: SWAP5
0000367e: POP
0000367f: SWAP3
00003680: POP
00003681: POP
00003682: POP
00003683: JUMP
00003684: JUMPDEST
00003685: PUSH1 0x00
00003687: PUSH1 0x20
00003689: DUP1
0000368a: DUP4
0000368b: DUP6
0000368c: SUB
0000368d: SLT
0000368e: ISZERO
0000368f: PUSH2 0x3696
00003692: JUMPI
00003693: DUP2
00003694: DUP3
00003695: REVERT
00003696: JUMPDEST
00003697: DUP3
00003698: MLOAD
00003699: PUSH8 0xffffffffffffffff
000036a2: DUP2
000036a3: GT
000036a4: ISZERO
000036a5: PUSH2 0x36ac
000036a8: JUMPI
000036a9: DUP3
000036aa: DUP4
000036ab: REVERT
000036ac: JUMPDEST
000036ad: DUP4
000036ae: ADD
000036af: PUSH1 0x1f
000036b1: DUP2
000036b2: ADD
000036b3: DUP6
000036b4: SGT
000036b5: PUSH2 0x36bc
000036b8: JUMPI
000036b9: DUP3
000036ba: DUP4
000036bb: REVERT
000036bc: JUMPDEST
000036bd: DUP1
000036be: MLOAD
000036bf: PUSH2 0x36ca
000036c2: PUSH2 0x339f
000036c5: DUP3
000036c6: PUSH2 0x3d21
000036c9: JUMP
000036ca: JUMPDEST
000036cb: DUP2
000036cc: DUP2
000036cd: MSTORE
000036ce: DUP4
000036cf: DUP2
000036d0: ADD
000036d1: SWAP1
000036d2: DUP4
000036d3: DUP6
000036d4: ADD
000036d5: DUP6
000036d6: DUP5
000036d7: MUL
000036d8: DUP6
000036d9: ADD
000036da: DUP7
000036db: ADD
000036dc: DUP10
000036dd: LT
000036de: ISZERO
000036df: PUSH2 0x36e6
000036e2: JUMPI
000036e3: DUP7
000036e4: DUP8
000036e5: REVERT
000036e6: JUMPDEST
000036e7: DUP7
000036e8: SWAP5
000036e9: POP
000036ea: JUMPDEST
000036eb: DUP4
000036ec: DUP6
000036ed: LT
000036ee: ISZERO
000036ef: PUSH2 0x3711
000036f2: JUMPI
000036f3: DUP1
000036f4: MLOAD
000036f5: PUSH2 0x36fd
000036f8: DUP2
000036f9: PUSH2 0x3d6d
000036fc: JUMP
000036fd: JUMPDEST
000036fe: DUP4
000036ff: MSTORE
00003700: PUSH1 0x01
00003702: SWAP5
00003703: SWAP1
00003704: SWAP5
00003705: ADD
00003706: SWAP4
00003707: SWAP2
00003708: DUP6
00003709: ADD
0000370a: SWAP2
0000370b: DUP6
0000370c: ADD
0000370d: PUSH2 0x36ea
00003710: JUMP
00003711: JUMPDEST
00003712: POP
00003713: SWAP8
00003714: SWAP7
00003715: POP
00003716: POP
00003717: POP
00003718: POP
00003719: POP
0000371a: POP
0000371b: POP
0000371c: JUMP
0000371d: JUMPDEST
0000371e: PUSH1 0x00
00003720: DUP1
00003721: PUSH1 0x00
00003723: PUSH1 0x60
00003725: DUP5
00003726: DUP7
00003727: SUB
00003728: SLT
00003729: ISZERO
0000372a: PUSH2 0x3731
0000372d: JUMPI
0000372e: DUP1
0000372f: DUP2
00003730: REVERT
00003731: JUMPDEST
00003732: DUP4
00003733: CALLDATALOAD
00003734: PUSH8 0xffffffffffffffff
0000373d: DUP1
0000373e: DUP3
0000373f: GT
00003740: ISZERO
00003741: PUSH2 0x3748
00003744: JUMPI
00003745: DUP3
00003746: DUP4
00003747: REVERT
00003748: JUMPDEST
00003749: DUP2
0000374a: DUP7
0000374b: ADD
0000374c: SWAP2
0000374d: POP
0000374e: DUP7
0000374f: PUSH1 0x1f
00003751: DUP4
00003752: ADD
00003753: SLT
00003754: PUSH2 0x375b
00003757: JUMPI
00003758: DUP3
00003759: DUP4
0000375a: REVERT
0000375b: JUMPDEST
0000375c: DUP2
0000375d: CALLDATALOAD
0000375e: PUSH2 0x3769
00003761: PUSH2 0x339f
00003764: DUP3
00003765: PUSH2 0x3d21
00003768: JUMP
00003769: JUMPDEST
0000376a: DUP1
0000376b: DUP3
0000376c: DUP3
0000376d: MSTORE
0000376e: PUSH1 0x20
00003770: DUP1
00003771: DUP4
00003772: ADD
00003773: SWAP3
00003774: POP
00003775: DUP1
00003776: DUP7
00003777: ADD
00003778: DUP12
00003779: DUP3
0000377a: DUP4
0000377b: DUP8
0000377c: MUL
0000377d: DUP10
0000377e: ADD
0000377f: ADD
00003780: GT
00003781: ISZERO
00003782: PUSH2 0x3789
00003785: JUMPI
00003786: DUP8
00003787: DUP9
00003788: REVERT
00003789: JUMPDEST
0000378a: DUP8
0000378b: SWAP7
0000378c: POP
0000378d: JUMPDEST
0000378e: DUP5
0000378f: DUP8
00003790: LT
00003791: ISZERO
00003792: PUSH2 0x37b3
00003795: JUMPI
00003796: PUSH2 0x379f
00003799: DUP13
0000379a: DUP3
0000379b: PUSH2 0x3376
0000379e: JUMP
0000379f: JUMPDEST
000037a0: DUP5
000037a1: MSTORE
000037a2: PUSH1 0x01
000037a4: SWAP7
000037a5: SWAP1
000037a6: SWAP7
000037a7: ADD
000037a8: SWAP6
000037a9: SWAP3
000037aa: DUP2
000037ab: ADD
000037ac: SWAP3
000037ad: DUP2
000037ae: ADD
000037af: PUSH2 0x378d
000037b2: JUMP
000037b3: JUMPDEST
000037b4: POP
000037b5: SWAP1
000037b6: SWAP8
000037b7: POP
000037b8: DUP9
000037b9: ADD
000037ba: CALLDATALOAD
000037bb: SWAP4
000037bc: POP
000037bd: POP
000037be: POP
000037bf: DUP1
000037c0: DUP3
000037c1: GT
000037c2: ISZERO
000037c3: PUSH2 0x37ca
000037c6: JUMPI
000037c7: DUP3
000037c8: DUP4
000037c9: REVERT
000037ca: JUMPDEST
000037cb: PUSH2 0x37d6
000037ce: DUP8
000037cf: DUP4
000037d0: DUP9
000037d1: ADD
000037d2: PUSH2 0x33e9
000037d5: JUMP
000037d6: JUMPDEST
000037d7: SWAP4
000037d8: POP
000037d9: PUSH1 0x40
000037db: DUP7
000037dc: ADD
000037dd: CALLDATALOAD
000037de: SWAP2
000037df: POP
000037e0: DUP1
000037e1: DUP3
000037e2: GT
000037e3: ISZERO
000037e4: PUSH2 0x37eb
000037e7: JUMPI
000037e8: DUP3
000037e9: DUP4
000037ea: REVERT
000037eb: JUMPDEST
000037ec: POP
000037ed: PUSH2 0x3637
000037f0: DUP7
000037f1: DUP3
000037f2: DUP8
000037f3: ADD
000037f4: PUSH2 0x3381
000037f7: JUMP
000037f8: JUMPDEST
000037f9: PUSH1 0x00
000037fb: PUSH1 0x20
000037fd: DUP1
000037fe: DUP4
000037ff: DUP6
00003800: SUB
00003801: SLT
00003802: ISZERO
00003803: PUSH2 0x380a
00003806: JUMPI
00003807: DUP2
00003808: DUP3
00003809: REVERT
0000380a: JUMPDEST
0000380b: DUP3
0000380c: MLOAD
0000380d: PUSH8 0xffffffffffffffff
00003816: DUP2
00003817: GT
00003818: ISZERO
00003819: PUSH2 0x3820
0000381c: JUMPI
0000381d: DUP3
0000381e: DUP4
0000381f: REVERT
00003820: JUMPDEST
00003821: DUP4
00003822: ADD
00003823: PUSH1 0x1f
00003825: DUP2
00003826: ADD
00003827: DUP6
00003828: SGT
00003829: PUSH2 0x3830
0000382c: JUMPI
0000382d: DUP3
0000382e: DUP4
0000382f: REVERT
00003830: JUMPDEST
00003831: DUP1
00003832: MLOAD
00003833: PUSH2 0x383e
00003836: PUSH2 0x339f
00003839: DUP3
0000383a: PUSH2 0x3d21
0000383d: JUMP
0000383e: JUMPDEST
0000383f: DUP2
00003840: DUP2
00003841: MSTORE
00003842: DUP4
00003843: DUP2
00003844: ADD
00003845: SWAP1
00003846: DUP4
00003847: DUP6
00003848: ADD
00003849: DUP6
0000384a: DUP5
0000384b: MUL
0000384c: DUP6
0000384d: ADD
0000384e: DUP7
0000384f: ADD
00003850: DUP10
00003851: LT
00003852: ISZERO
00003853: PUSH2 0x385a
00003856: JUMPI
00003857: DUP7
00003858: DUP8
00003859: REVERT
0000385a: JUMPDEST
0000385b: DUP7
0000385c: SWAP5
0000385d: POP
0000385e: JUMPDEST
0000385f: DUP4
00003860: DUP6
00003861: LT
00003862: ISZERO
00003863: PUSH2 0x3711
00003866: JUMPI
00003867: DUP1
00003868: MLOAD
00003869: DUP4
0000386a: MSTORE
0000386b: PUSH1 0x01
0000386d: SWAP5
0000386e: SWAP1
0000386f: SWAP5
00003870: ADD
00003871: SWAP4
00003872: SWAP2
00003873: DUP6
00003874: ADD
00003875: SWAP2
00003876: DUP6
00003877: ADD
00003878: PUSH2 0x385e
0000387b: JUMP
0000387c: JUMPDEST
0000387d: PUSH1 0x00
0000387f: PUSH1 0x20
00003881: DUP3
00003882: DUP5
00003883: SUB
00003884: SLT
00003885: ISZERO
00003886: PUSH2 0x388d
00003889: JUMPI
0000388a: DUP1
0000388b: DUP2
0000388c: REVERT
0000388d: JUMPDEST
0000388e: DUP2
0000388f: MLOAD
00003890: DUP1
00003891: ISZERO
00003892: ISZERO
00003893: DUP2
00003894: EQ
00003895: PUSH2 0x2ac5
00003898: JUMPI
00003899: DUP2
0000389a: DUP3
0000389b: REVERT
0000389c: JUMPDEST
0000389d: PUSH1 0x00
0000389f: PUSH1 0x20
000038a1: DUP3
000038a2: DUP5
000038a3: SUB
000038a4: SLT
000038a5: ISZERO
000038a6: PUSH2 0x38ad
000038a9: JUMPI
000038aa: DUP1
000038ab: DUP2
000038ac: REVERT
000038ad: JUMPDEST
000038ae: POP
000038af: CALLDATALOAD
000038b0: SWAP2
000038b1: SWAP1
000038b2: POP
000038b3: JUMP
000038b4: JUMPDEST
000038b5: PUSH1 0x00
000038b7: PUSH1 0x20
000038b9: DUP3
000038ba: DUP5
000038bb: SUB
000038bc: SLT
000038bd: ISZERO
000038be: PUSH2 0x38c5
000038c1: JUMPI
000038c2: DUP1
000038c3: DUP2
000038c4: REVERT
000038c5: JUMPDEST
000038c6: POP
000038c7: MLOAD
000038c8: SWAP2
000038c9: SWAP1
000038ca: POP
000038cb: JUMP
000038cc: JUMPDEST
000038cd: PUSH1 0x00
000038cf: DUP1
000038d0: PUSH1 0x00
000038d2: PUSH1 0x60
000038d4: DUP5
000038d5: DUP7
000038d6: SUB
000038d7: SLT
000038d8: ISZERO
000038d9: PUSH2 0x38e0
000038dc: JUMPI
000038dd: DUP1
000038de: DUP2
000038df: REVERT
000038e0: JUMPDEST
000038e1: DUP4
000038e2: MLOAD
000038e3: SWAP3
000038e4: POP
000038e5: PUSH1 0x20
000038e7: DUP5
000038e8: ADD
000038e9: MLOAD
000038ea: SWAP2
000038eb: POP
000038ec: PUSH1 0x40
000038ee: DUP5
000038ef: ADD
000038f0: MLOAD
000038f1: SWAP1
000038f2: POP
000038f3: SWAP3
000038f4: POP
000038f5: SWAP3
000038f6: POP
000038f7: SWAP3
000038f8: JUMP
000038f9: JUMPDEST
000038fa: PUSH1 0x00
000038fc: DUP1
000038fd: PUSH1 0x00
000038ff: DUP1
00003900: PUSH1 0x80
00003902: DUP6
00003903: DUP8
00003904: SUB
00003905: SLT
00003906: ISZERO
00003907: PUSH2 0x390e
0000390a: JUMPI
0000390b: DUP2
0000390c: DUP3
0000390d: REVERT
0000390e: JUMPDEST
0000390f: POP
00003910: POP
00003911: DUP3
00003912: MLOAD
00003913: PUSH1 0x20
00003915: DUP5
00003916: ADD
00003917: MLOAD
00003918: PUSH1 0x40
0000391a: DUP6
0000391b: ADD
0000391c: MLOAD
0000391d: PUSH1 0x60
0000391f: SWAP1
00003920: SWAP6
00003921: ADD
00003922: MLOAD
00003923: SWAP2
00003924: SWAP7
00003925: SWAP1
00003926: SWAP6
00003927: POP
00003928: SWAP1
00003929: SWAP3
0000392a: POP
0000392b: SWAP1
0000392c: POP
0000392d: JUMP
0000392e: JUMPDEST
0000392f: PUSH1 0x00
00003931: DUP3
00003932: MLOAD
00003933: PUSH2 0x3940
00003936: DUP2
00003937: DUP5
00003938: PUSH1 0x20
0000393a: DUP8
0000393b: ADD
0000393c: PUSH2 0x3d41
0000393f: JUMP
00003940: JUMPDEST
00003941: SWAP2
00003942: SWAP1
00003943: SWAP2
00003944: ADD
00003945: SWAP3
00003946: SWAP2
00003947: POP
00003948: POP
00003949: JUMP
0000394a: JUMPDEST
0000394b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003960: SWAP2
00003961: SWAP1
00003962: SWAP2
00003963: AND
00003964: DUP2
00003965: MSTORE
00003966: PUSH1 0x20
00003968: ADD
00003969: SWAP1
0000396a: JUMP
0000396b: JUMPDEST
0000396c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003981: SWAP3
00003982: SWAP1
00003983: SWAP3
00003984: AND
00003985: DUP3
00003986: MSTORE
00003987: PUSH1 0x20
00003989: DUP3
0000398a: ADD
0000398b: MSTORE
0000398c: PUSH1 0x40
0000398e: ADD
0000398f: SWAP1
00003990: JUMP
00003991: JUMPDEST
00003992: PUSH1 0x20
00003994: DUP1
00003995: DUP3
00003996: MSTORE
00003997: DUP3
00003998: MLOAD
00003999: DUP3
0000399a: DUP3
0000399b: ADD
0000399c: DUP2
0000399d: SWAP1
0000399e: MSTORE
0000399f: PUSH1 0x00
000039a1: SWAP2
000039a2: SWAP1
000039a3: DUP5
000039a4: DUP3
000039a5: ADD
000039a6: SWAP1
000039a7: PUSH1 0x40
000039a9: DUP6
000039aa: ADD
000039ab: SWAP1
000039ac: DUP5
000039ad: JUMPDEST
000039ae: DUP2
000039af: DUP2
000039b0: LT
000039b1: ISZERO
000039b2: PUSH2 0x39df
000039b5: JUMPI
000039b6: DUP4
000039b7: MLOAD
000039b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000039cd: AND
000039ce: DUP4
000039cf: MSTORE
000039d0: SWAP3
000039d1: DUP5
000039d2: ADD
000039d3: SWAP3
000039d4: SWAP2
000039d5: DUP5
000039d6: ADD
000039d7: SWAP2
000039d8: PUSH1 0x01
000039da: ADD
000039db: PUSH2 0x39ad
000039de: JUMP
000039df: JUMPDEST
000039e0: POP
000039e1: SWAP1
000039e2: SWAP7
000039e3: SWAP6
000039e4: POP
000039e5: POP
000039e6: POP
000039e7: POP
000039e8: POP
000039e9: POP
000039ea: JUMP
000039eb: JUMPDEST
000039ec: SWAP1
000039ed: ISZERO
000039ee: ISZERO
000039ef: DUP2
000039f0: MSTORE
000039f1: PUSH1 0x20
000039f3: ADD
000039f4: SWAP1
000039f5: JUMP
000039f6: JUMPDEST
000039f7: PUSH1 0x00
000039f9: PUSH1 0x20
000039fb: DUP3
000039fc: MSTORE
000039fd: DUP3
000039fe: MLOAD
000039ff: DUP1
00003a00: PUSH1 0x20
00003a02: DUP5
00003a03: ADD
00003a04: MSTORE
00003a05: PUSH2 0x3a15
00003a08: DUP2
00003a09: PUSH1 0x40
00003a0b: DUP6
00003a0c: ADD
00003a0d: PUSH1 0x20
00003a0f: DUP8
00003a10: ADD
00003a11: PUSH2 0x3d41
00003a14: JUMP
00003a15: JUMPDEST
00003a16: PUSH1 0x1f
00003a18: ADD
00003a19: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00003a3a: AND
00003a3b: SWAP2
00003a3c: SWAP1
00003a3d: SWAP2
00003a3e: ADD
00003a3f: PUSH1 0x40
00003a41: ADD
00003a42: SWAP3
00003a43: SWAP2
00003a44: POP
00003a45: POP
00003a46: JUMP
00003a47: JUMPDEST
00003a48: PUSH1 0x20
00003a4a: DUP1
00003a4b: DUP3
00003a4c: MSTORE
00003a4d: PUSH1 0x0f
00003a4f: SWAP1
00003a50: DUP3
00003a51: ADD
00003a52: MSTORE
00003a53: PUSH32 0x496e76616c696420616464726573730000000000000000000000000000000000
00003a74: PUSH1 0x40
00003a76: DUP3
00003a77: ADD
00003a78: MSTORE
00003a79: PUSH1 0x60
00003a7b: ADD
00003a7c: SWAP1
00003a7d: JUMP
00003a7e: JUMPDEST
00003a7f: PUSH1 0x20
00003a81: DUP1
00003a82: DUP3
00003a83: MSTORE
00003a84: PUSH1 0x26
00003a86: SWAP1
00003a87: DUP3
00003a88: ADD
00003a89: MSTORE
00003a8a: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061
00003aab: PUSH1 0x40
00003aad: DUP3
00003aae: ADD
00003aaf: MSTORE
00003ab0: PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000
00003ad1: PUSH1 0x60
00003ad3: DUP3
00003ad4: ADD
00003ad5: MSTORE
00003ad6: PUSH1 0x80
00003ad8: ADD
00003ad9: SWAP1
00003ada: JUMP
00003adb: JUMPDEST
00003adc: PUSH1 0x20
00003ade: DUP1
00003adf: DUP3
00003ae0: MSTORE
00003ae1: PUSH1 0x12
00003ae3: SWAP1
00003ae4: DUP3
00003ae5: ADD
00003ae6: MSTORE
00003ae7: PUSH32 0x496e73756666696369656e742066756e64730000000000000000000000000000
00003b08: PUSH1 0x40
00003b0a: DUP3
00003b0b: ADD
00003b0c: MSTORE
00003b0d: PUSH1 0x60
00003b0f: ADD
00003b10: SWAP1
00003b11: JUMP
00003b12: JUMPDEST
00003b13: PUSH1 0x20
00003b15: DUP1
00003b16: DUP3
00003b17: MSTORE
00003b18: PUSH1 0x21
00003b1a: SWAP1
00003b1b: DUP3
00003b1c: ADD
00003b1d: MSTORE
00003b1e: PUSH32 0x536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f
00003b3f: PUSH1 0x40
00003b41: DUP3
00003b42: ADD
00003b43: MSTORE
00003b44: PUSH32 0x7700000000000000000000000000000000000000000000000000000000000000
00003b65: PUSH1 0x60
00003b67: DUP3
00003b68: ADD
00003b69: MSTORE
00003b6a: PUSH1 0x80
00003b6c: ADD
00003b6d: SWAP1
00003b6e: JUMP
00003b6f: JUMPDEST
00003b70: PUSH1 0x20
00003b72: DUP1
00003b73: DUP3
00003b74: MSTORE
00003b75: DUP2
00003b76: DUP2
00003b77: ADD
00003b78: MSTORE
00003b79: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00003b9a: PUSH1 0x40
00003b9c: DUP3
00003b9d: ADD
00003b9e: MSTORE
00003b9f: PUSH1 0x60
00003ba1: ADD
00003ba2: SWAP1
00003ba3: JUMP
00003ba4: JUMPDEST
00003ba5: PUSH1 0x20
00003ba7: DUP1
00003ba8: DUP3
00003ba9: MSTORE
00003baa: PUSH1 0x26
00003bac: SWAP1
00003bad: DUP3
00003bae: ADD
00003baf: MSTORE
00003bb0: PUSH32 0x45786563757461626c653a2063616c6c6572206973206e6f7420746865206578
00003bd1: PUSH1 0x40
00003bd3: DUP3
00003bd4: ADD
00003bd5: MSTORE
00003bd6: PUSH32 0x656375746f720000000000000000000000000000000000000000000000000000
00003bf7: PUSH1 0x60
00003bf9: DUP3
00003bfa: ADD
00003bfb: MSTORE
00003bfc: PUSH1 0x80
00003bfe: ADD
00003bff: SWAP1
00003c00: JUMP
00003c01: JUMPDEST
00003c02: PUSH1 0x20
00003c04: DUP1
00003c05: DUP3
00003c06: MSTORE
00003c07: PUSH1 0x14
00003c09: SWAP1
00003c0a: DUP3
00003c0b: ADD
00003c0c: MSTORE
00003c0d: PUSH32 0x44616e6765726f7573204c462072656163686564000000000000000000000000
00003c2e: PUSH1 0x40
00003c30: DUP3
00003c31: ADD
00003c32: MSTORE
00003c33: PUSH1 0x60
00003c35: ADD
00003c36: SWAP1
00003c37: JUMP
00003c38: JUMPDEST
00003c39: PUSH1 0x20
00003c3b: DUP1
00003c3c: DUP3
00003c3d: MSTORE
00003c3e: PUSH1 0x1d
00003c40: SWAP1
00003c41: DUP3
00003c42: ADD
00003c43: MSTORE
00003c44: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00003c65: PUSH1 0x40
00003c67: DUP3
00003c68: ADD
00003c69: MSTORE
00003c6a: PUSH1 0x60
00003c6c: ADD
00003c6d: SWAP1
00003c6e: JUMP
00003c6f: JUMPDEST
00003c70: PUSH1 0x20
00003c72: DUP1
00003c73: DUP3
00003c74: MSTORE
00003c75: PUSH1 0x2a
00003c77: SWAP1
00003c78: DUP3
00003c79: ADD
00003c7a: MSTORE
00003c7b: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e
00003c9c: PUSH1 0x40
00003c9e: DUP3
00003c9f: ADD
00003ca0: MSTORE
00003ca1: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000
00003cc2: PUSH1 0x60
00003cc4: DUP3
00003cc5: ADD
00003cc6: MSTORE
00003cc7: PUSH1 0x80
00003cc9: ADD
00003cca: SWAP1
00003ccb: JUMP
00003ccc: JUMPDEST
00003ccd: SWAP1
00003cce: DUP2
00003ccf: MSTORE
00003cd0: PUSH1 0x20
00003cd2: ADD
00003cd3: SWAP1
00003cd4: JUMP
00003cd5: JUMPDEST
00003cd6: SWAP2
00003cd7: DUP3
00003cd8: MSTORE
00003cd9: PUSH1 0x20
00003cdb: DUP3
00003cdc: ADD
00003cdd: MSTORE
00003cde: PUSH1 0x40
00003ce0: ADD
00003ce1: SWAP1
00003ce2: JUMP
00003ce3: JUMPDEST
00003ce4: SWAP3
00003ce5: DUP4
00003ce6: MSTORE
00003ce7: PUSH1 0x20
00003ce9: DUP4
00003cea: ADD
00003ceb: SWAP2
00003cec: SWAP1
00003ced: SWAP2
00003cee: MSTORE
00003cef: MLOAD
00003cf0: PUSH1 0x40
00003cf2: DUP3
00003cf3: ADD
00003cf4: MSTORE
00003cf5: PUSH1 0x60
00003cf7: ADD
00003cf8: SWAP1
00003cf9: JUMP
00003cfa: JUMPDEST
00003cfb: PUSH1 0x40
00003cfd: MLOAD
00003cfe: DUP2
00003cff: DUP2
00003d00: ADD
00003d01: PUSH8 0xffffffffffffffff
00003d0a: DUP2
00003d0b: GT
00003d0c: DUP3
00003d0d: DUP3
00003d0e: LT
00003d0f: OR
00003d10: ISZERO
00003d11: PUSH2 0x3d19
00003d14: JUMPI
00003d15: PUSH1 0x00
00003d17: DUP1
00003d18: REVERT
00003d19: JUMPDEST
00003d1a: PUSH1 0x40
00003d1c: MSTORE
00003d1d: SWAP2
00003d1e: SWAP1
00003d1f: POP
00003d20: JUMP
00003d21: JUMPDEST
00003d22: PUSH1 0x00
00003d24: PUSH8 0xffffffffffffffff
00003d2d: DUP3
00003d2e: GT
00003d2f: ISZERO
00003d30: PUSH2 0x3d37
00003d33: JUMPI
00003d34: DUP1
00003d35: DUP2
00003d36: REVERT
00003d37: JUMPDEST
00003d38: POP
00003d39: PUSH1 0x20
00003d3b: SWAP1
00003d3c: DUP2
00003d3d: MUL
00003d3e: ADD
00003d3f: SWAP1
00003d40: JUMP
00003d41: JUMPDEST
00003d42: PUSH1 0x00
00003d44: JUMPDEST
00003d45: DUP4
00003d46: DUP2
00003d47: LT
00003d48: ISZERO
00003d49: PUSH2 0x3d5c
00003d4c: JUMPI
00003d4d: DUP2
00003d4e: DUP2
00003d4f: ADD
00003d50: MLOAD
00003d51: DUP4
00003d52: DUP3
00003d53: ADD
00003d54: MSTORE
00003d55: PUSH1 0x20
00003d57: ADD
00003d58: PUSH2 0x3d44
00003d5b: JUMP
00003d5c: JUMPDEST
00003d5d: DUP4
00003d5e: DUP2
00003d5f: GT
00003d60: ISZERO
00003d61: PUSH2 0x0733
00003d64: JUMPI
00003d65: POP
00003d66: POP
00003d67: PUSH1 0x00
00003d69: SWAP2
00003d6a: ADD
00003d6b: MSTORE
00003d6c: JUMP
00003d6d: JUMPDEST
00003d6e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003d83: DUP2
00003d84: AND
00003d85: DUP2
00003d86: EQ
00003d87: PUSH2 0x1676
00003d8a: JUMPI
00003d8b: PUSH1 0x00
00003d8d: DUP1
00003d8e: REVERT
00003d8f: INVALID
00003d90: LOG2
00003d91: PUSH5 0x6970667358
00003d97: UNKNOWN(0x22)
00003d98: SLT
00003d99: KECCAK256
00003d9a: LOG3
00003d9b: UNKNOWN(0xA6)
00003d9c: INVALID
00003d9d: UNKNOWN(0xB9)
00003d9e: DUP5
00003d9f: SDIV
00003da0: DUP9
00003da1: PUSH32 0x310afef72f668914ab1156091f768994ff10b6831f5c375264736f6c63430006
00003dc2: UNKNOWN(0x0C)
00003dc3: STOP
00003dc4: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xed481d16e4f32b52ee7929aef6ceebaa8633c90609e4884664ebfa6a5a95928a
call_targets: 0x69327f95182910aef8b45a1968b64a0b420178fb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xed481d16e4f32b52ee7929aef6ceebaa8633c90609e4884664ebfa6a5a95928a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x69327f95182910aef8b45a1968b64a0b420178fb"
    ],
    "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": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf3ad0e75",
            "selector": "0xf3ad0e75",
            "calldata_variants": [
                "0xf3ad0e75",
                "0xf3ad0e750000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf3fef3a3",
            "selector": "0xf3fef3a3",
            "calldata_variants": [
                "0xf3fef3a3",
                "0xf3fef3a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf598388c",
            "selector": "0xf598388c",
            "calldata_variants": [
                "0xf598388c",
                "0xf598388c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xda3e3397",
            "selector": "0xda3e3397",
            "calldata_variants": [
                "0xda3e3397",
                "0xda3e33970000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb9fb4ca",
            "selector": "0xdb9fb4ca",
            "calldata_variants": [
                "0xdb9fb4ca",
                "0xdb9fb4ca0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe72b6026",
            "selector": "0xe72b6026",
            "calldata_variants": [
                "0xe72b6026",
                "0xe72b60260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xede4edd0",
            "selector": "0xede4edd0",
            "calldata_variants": [
                "0xede4edd0",
                "0xede4edd00000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1779,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3262,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3474,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 10,
    "guards_detected": [],
    "untrusted_call_count": 10
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xed481d16e4f32b52ee7929aef6ceebaa8633c90609e4884664ebfa6a5a95928a
call_targets: 0x69327f95182910aef8b45a1968b64a0b420178fb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xed481d16e4f32b52ee7929aef6ceebaa8633c90609e4884664ebfa6a5a95928a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x69327f95182910aef8b45a1968b64a0b420178fb"
    ],
    "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": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf3ad0e75",
            "selector": "0xf3ad0e75",
            "calldata_variants": [
                "0xf3ad0e75",
                "0xf3ad0e750000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf3fef3a3",
            "selector": "0xf3fef3a3",
            "calldata_variants": [
                "0xf3fef3a3",
                "0xf3fef3a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf598388c",
            "selector": "0xf598388c",
            "calldata_variants": [
                "0xf598388c",
                "0xf598388c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xda3e3397",
            "selector": "0xda3e3397",
            "calldata_variants": [
                "0xda3e3397",
                "0xda3e33970000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb9fb4ca",
            "selector": "0xdb9fb4ca",
            "calldata_variants": [
                "0xdb9fb4ca",
                "0xdb9fb4ca0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe72b6026",
            "selector": "0xe72b6026",
            "calldata_variants": [
                "0xe72b6026",
                "0xe72b60260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xede4edd0",
            "selector": "0xede4edd0",
            "calldata_variants": [
                "0xede4edd0",
                "0xede4edd00000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1779,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3262,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3474,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 10,
    "guards_detected": []
}
medium other codex Computed external CALLs with ETH value may be reachable without strong guards 75 no
view
evidence_json
{
    "evidence": "Detector findings report 10 CALLs with computed target/value and ETH transfer possible; guard detection is empty. Callsites show `returndata_checked: null` and `target_expression_category: computed` for all CALLs.",
    "locations": [
        "pc:1779",
        "pc:3262",
        "pc:3474",
        "pc:4710",
        "pc:7069",
        "pc:8066",
        "pc:8847",
        "pc:9574",
        "pc:10708",
        "pc:12706"
    ],
    "recommendation": "Restrict any arbitrary CALL functionality to trusted roles, validate/whitelist targets and value, and add reentrancy protection or checks-effects-interactions around state updates. Consider logging and limiting max value per call.",
    "exploit_scenario": "If any public/external function forwards calldata or value to an arbitrary target (CALL target/value computed), a user could trigger ETH transfers to attacker-controlled addresses or reenter during the call, potentially draining funds or breaking invariants. Detector validation saw a constant target in one trace, but callsites are marked computed and guard detection found none, so exposure is uncertain."
}
low access_control codex Auth guard detection absent for potentially privileged selectors 65 no
view
evidence_json
{
    "evidence": "`auth.guards` is empty in the analysis artifact and `guards_detected` is empty in detector evidence, indicating no recognized authorization checks around functions.",
    "locations": [
        "selector:0xf2fde38b",
        "selector:0x8da5cb5b"
    ],
    "recommendation": "Manually verify access control on ownership/executor/admin setters and any function that can move funds or perform arbitrary calls. Ensure onlyOwner/onlyExecutor-style checks are in place and tested.",
    "exploit_scenario": "Selectors include common ownership-management functions (e.g., `0xf2fde38b`, `0x8da5cb5b`), but the analysis artifact shows no detected guards. If these or other admin-like functions are missing access checks, an attacker could seize ownership or privileged roles."
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 18
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 19
}