019bb2d5-fdaa-7097-b390-aad7f7603684
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 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 |
{
"status": "not_proxy"
}
No slither job recorded yet.
{"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"]}]}
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
{
"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
}
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
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_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 |
viewtrace_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 | — |
viewevidence_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 | — |
viewevidence_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 | — |
viewevidence_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 | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 19
}
|