36954ef9-a089-4a19-a382-9eb423b7ad7b
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 |
|---|---|---|---|---|
| 31694 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 95587 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 95588 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 95589 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 95590 | capability.graph | complete | 1 / 3 | 1 week ago |
| 95591 | detector.run | complete | 1 / 3 | 1 week ago |
| 95592 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:581463] OpenAI Codex v0.77.0 (research preview)
[codex:581463] --------
[codex:581463] workdir: /tmp/codex-multi-rizsuqn4
[codex:581463] model: gpt-5.2-codex
[codex:581463] provider: openai
[codex:581463] approval: never
[codex:581463] sandbox: read-only
[codex:581463] reasoning effort: xhigh
[codex:581463] reasoning summaries: auto
[codex:581463] session id: 019b8c8d-0e08-77d2-bcfe-6abfcd732167
[codex:581463] --------
[codex:581463] user
[codex:581463] You are a profit-focused exploit hunter analyzing EVM bytecode. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:581463]
[codex:581463] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:581463]
[codex:581463] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:581463] - Gas inefficiency, code quality, or best practices
[codex:581463] - Theoretical vulnerabilities without a clear extraction path
[codex:581463] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:581463] - Issues requiring social engineering or off-chain coordination
[codex:581463]
[codex:581463] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:581463] - CALL/DELEGATECALL with controllable destination or calldata
[codex:581463] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:581463] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:581463] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:581463] - External calls before state updates (reentrancy)
[codex:581463] - SELFDESTRUCT with controllable beneficiary
[codex:581463] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:581463]
[codex:581463] For each finding, you MUST explain:
[codex:581463] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:581463] 2. The concrete sequence of transactions to extract value
[codex:581463] 3. Why you believe this is exploitable (not just suspicious)
[codex:581463]
[codex:581463] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:581463] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:581463]
[codex:581463] Output MUST be valid JSON matching the provided schema.
[codex:581463] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:581463] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:581463] mcp startup: no servers
[codex:581463]
[codex:581463] thinking
[codex:581463] **Reading file contents**
[codex:581463] exec
[codex:581463] /bin/bash -lc 'cat /tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt' in /tmp/codex-multi-rizsuqn4 succeeded in 5ms:
[codex:581463] Runtime bytecode bundle for best-effort auditing.
[codex:581463] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:581463]
[codex:581463] FILE: runtime_bytecode.hex
[codex:581463] 0x6080604052600436106103d95760003560e01c80638d64fd60116101fd578063c71c0b4011610118578063e9e0f72f116100ab578063f4b94a5d1161007a578063f4b94a5d146111c0578063f56b3166146111d7578063f6c73294146111ee578063fc0c546a14611205578063fd1c7e0b14611246576103d9565b8063e9e0f72f146110ec578063eae6990514611103578063ec15444d14611144578063ee99205c1461117f576103d9565b8063d15c6043116100e7578063d15c604314610ff8578063d5ee587a14611049578063e07fa3c114611084578063e4881c201461109b576103d9565b8063c71c0b4014610f23578063c817741714610f4e578063c8318c1014610f9f578063cd3293de14610fee576103d9565b8063a2b40d1911610190578063bb9be7151161015f578063bb9be71514610e16578063c17231b914610e71578063c19d93fb14610eb2578063c46246ba14610ee8576103d9565b8063a2b40d1914610d10578063acf9017d14610d4b578063af4e3d3714610d9a578063b932e3e314610db1576103d9565b806394217ad1116101cc57806394217ad114610c2857806394db4d0514610c6957806399d64ab014610cba578063a035b1fe14610ce5576103d9565b80638d64fd6014610b4b5780639032f44414610b8157806390886cc914610bac578063927fd69f14610bfd576103d9565b80634a4e3bd5116102f85780636b9f625f1161028b57806378e979251161025a57806378e9792514610a1257806384900b0414610a3d5780638676fcd214610a7e578063879cb32e14610acf5780638afbf66914610b34576103d9565b80636b9f625f146109365780636c1516e11461097757806370349850146109a2578063707188c1146109cd576103d9565b8063582bddfd116102c7578063582bddfd1461088a578063590e1ae3146108a15780635faafde6146108b857806366829b16146108e5576103d9565b80634a4e3bd5146108065780634d9db42f1461081d57806351858e271461084857806355c76ae51461085f576103d9565b80632c4b2308116103705780633360155d1161033f5780633360155d1461062c5780633f1861f914610657578063432fc8f21461068257806347c6dd92146107db576103d9565b80632c4b2308146105945780632d28e89d146105ab578063307e4e7a146105d65780633197cbb614610601576103d9565b80631bc141a9116103ac5780631bc141a9146104c25780631bf52e09146104fd5780631d8b44c51461053e5780632069ee7914610569576103d9565b806302763892146103de578063036a9955146104195780630af715e61461045a5780630cd9a87414610471575b600080fd5b3480156103ea57600080fd5b506104176004803603602081101561040157600080fd5b8101908080359060200190929190505050611271565b005b34801561042557600080fd5b5061042e61128b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561046657600080fd5b5061046f6112b1565b005b34801561047d57600080fd5b506104c06004803603602081101561049457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611302565b005b3480156104ce57600080fd5b506104fb600480360360208110156104e557600080fd5b81019080803590602001909291905050506113dc565b005b34801561050957600080fd5b506105126113fd565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561054a57600080fd5b50610553611423565b6040518082815260200191505060405180910390f35b34801561057557600080fd5b5061057e611429565b6040518082815260200191505060405180910390f35b3480156105a057600080fd5b506105a961142f565b005b3480156105b757600080fd5b506105c0611464565b6040518082815260200191505060405180910390f35b3480156105e257600080fd5b506105eb61146a565b6040518082815260200191505060405180910390f35b34801561060d57600080fd5b5061061661146f565b6040518082815260200191505060405180910390f35b34801561063857600080fd5b50610641611475565b6040518082815260200191505060405180910390f35b34801561066357600080fd5b5061066c61147f565b6040518082815260200191505060405180910390f35b34801561068e57600080fd5b506107d9600480360360408110156106a557600080fd5b81019080803590602001906401000000008111156106c257600080fd5b8201836020820111156106d457600080fd5b803590602001918460208302840111640100000000831117156106f657600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561075657600080fd5b82018360208201111561076857600080fd5b8035906020019184602083028401116401000000008311171561078a57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050611485565b005b3480156107e757600080fd5b506107f06114c7565b6040518082815260200191505060405180910390f35b34801561081257600080fd5b5061081b6114cd565b005b34801561082957600080fd5b50610832611510565b6040518082815260200191505060405180910390f35b34801561085457600080fd5b5061085d611516565b005b34801561086b57600080fd5b5061087461166c565b6040518082815260200191505060405180910390f35b34801561089657600080fd5b5061089f611672565b005b3480156108ad57600080fd5b506108b66116c2565b005b3480156108c457600080fd5b506108cd6118ad565b60405180821515815260200191505060405180910390f35b3480156108f157600080fd5b506109346004803603602081101561090857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118c0565b005b34801561094257600080fd5b5061094b611914565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561098357600080fd5b5061098c61193a565b6040518082815260200191505060405180910390f35b3480156109ae57600080fd5b506109b7611946565b6040518082815260200191505060405180910390f35b3480156109d957600080fd5b50610a10600480360360408110156109f057600080fd5b81019080803590602001909291908035906020019092919050505061194c565b005b348015610a1e57600080fd5b50610a27611978565b6040518082815260200191505060405180910390f35b348015610a4957600080fd5b50610a5261197e565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a8a57600080fd5b50610acd60048036036020811015610aa157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a4565b005b348015610adb57600080fd5b50610b1e60048036036020811015610af257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119f8565b6040518082815260200191505060405180910390f35b348015610b4057600080fd5b50610b49611a10565b005b348015610b5757600080fd5b50610b60611c0a565b60405180826005811115610b7057fe5b815260200191505060405180910390f35b348015610b8d57600080fd5b50610b96611c1d565b6040518082815260200191505060405180910390f35b348015610bb857600080fd5b50610bfb60048036036020811015610bcf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611c23565b005b348015610c0957600080fd5b50610c12611d46565b6040518082815260200191505060405180910390f35b348015610c3457600080fd5b50610c3d611d4c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c7557600080fd5b50610cb860048036036020811015610c8c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d72565b005b348015610cc657600080fd5b50610ccf611dc6565b6040518082815260200191505060405180910390f35b348015610cf157600080fd5b50610cfa611dcc565b6040518082815260200191505060405180910390f35b348015610d1c57600080fd5b50610d4960048036036020811015610d3357600080fd5b8101908080359060200190929190505050611dd2565b005b348015610d5757600080fd5b50610d8460048036036020811015610d6e57600080fd5b8101908080359060200190929190505050611dec565b6040518082815260200191505060405180910390f35b348015610da657600080fd5b50610daf611e0d565b005b348015610dbd57600080fd5b50610e0060048036036020811015610dd457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612164565b6040518082815260200191505060405180910390f35b348015610e2257600080fd5b50610e6f60048036036040811015610e3957600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061217c565b005b348015610e7d57600080fd5b50610e86612297565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ebe57600080fd5b50610ec76122bd565b60405180826005811115610ed757fe5b815260200191505060405180910390f35b348015610ef457600080fd5b50610f2160048036036020811015610f0b57600080fd5b81019080803590602001909291905050506122ce565b005b348015610f2f57600080fd5b50610f386122e8565b6040518082815260200191505060405180910390f35b348015610f5a57600080fd5b50610f9d60048036036020811015610f7157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122ee565b005b348015610fab57600080fd5b50610fd860048036036020811015610fc257600080fd5b810190808035906020019092919050505061233a565b6040518082815260200191505060405180910390f35b610ff661235b565b005b34801561100457600080fd5b506110476004803603602081101561101b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612675565b005b34801561105557600080fd5b506110826004803603602081101561106c57600080fd5b81019080803590602001909291905050506126c1565b005b34801561109057600080fd5b506110996126e4565b005b3480156110a757600080fd5b506110ea600480360360208110156110be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061275f565b005b3480156110f857600080fd5b506111016127b3565b005b34801561110f57600080fd5b50611118612979565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561115057600080fd5b5061117d6004803603602081101561116757600080fd5b810190808035906020019092919050505061299f565b005b34801561118b57600080fd5b506111946129ea565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156111cc57600080fd5b506111d5612a10565b005b3480156111e357600080fd5b506111ec612b38565b005b3480156111fa57600080fd5b50611203612c60565b005b34801561121157600080fd5b5061121a612e54565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561125257600080fd5b5061125b612e7a565b6040518082815260200191505060405180910390f35b611279612f03565b611281612fc8565b8060148190555050565b600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6112b9612f03565b6112c1612fc8565b6112f2670de0b6b3a76400006112e4601b5460065461306390919063ffffffff16565b6130e990919063ffffffff16565b601181905550611300613172565b565b61130a613375565b61131261343a565b601360149054906101000a900460ff166113d9576000611353601154611345600b5460125461306390919063ffffffff16565b6130e990919063ffffffff16565b9050600061136c82601254612e8090919063ffffffff16565b90506001601360146101000a81548160ff0219169083151502179055506113d68382601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166134d59092919063ffffffff16565b50505b50565b6113e4612f03565b6113ec612fc8565b8060068190555080600d8190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60105481565b60065481565b611437613375565b61143f613577565b60046000806101000a81548160ff0219169083600581111561145d57fe5b0217905550565b610e1081565b600a81565b60085481565b655af3107a400081565b600e5481565b61148d613375565b611495612fc8565b80600f90805190602001906114ab929190614558565b5081601690805190602001906114c2929190614558565b505050565b600d5481565b6114d5613375565b6114dd613577565b600060019054906101000a900460ff166000806101000a81548160ff0219169083600581111561150957fe5b0217905550565b600a5481565b61151e613375565b6003600581111561152b57fe5b60008054906101000a900460ff16600581111561154457fe5b1415801561157657506004600581111561155a57fe5b60008054906101000a900460ff16600581111561157357fe5b14155b80156115a5575060058081111561158957fe5b60008054906101000a900460ff1660058111156115a257fe5b14155b611617576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f426173653a2053544154455f49535f46494e414c00000000000000000000000081525060200191505060405180910390fd5b60008054906101000a900460ff16600060016101000a81548160ff0219169083600581111561164257fe5b021790555060056000806101000a81548160ff0219169083600581111561166557fe5b0217905550565b60155481565b61167a613611565b6008544211156116aa57600a54600c541061169c576116976136ac565b6116a5565b6116a46136d1565b5b6116c0565b600654600c5414156116bf576116be6136ac565b5b5b565b6116ca6136f6565b6000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060008111611784576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f426173653a20414c52454144595f524546554e4445440000000000000000000081525060200191505060405180910390fd5b6000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611854573d6000803e3d6000fd5b507fbb28353e4598c3b9199101a66e0989549b659a59a54d2c27fbb183f1932c8e6d3382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b601360149054906101000a900460ff1681565b6118c8612f03565b6118d0612fc8565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a764000081565b60095481565b611954612f03565b61195c612fc8565b6119668282613791565b81600781905550806008819055505050565b60075481565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6119ac613375565b6119b4612fc8565b80601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601a6020528060005260406000206000915090505481565b611a1861343a565b611a20613894565b6000611a39601054600c54612e8090919063ffffffff16565b90506000611b1382600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611aca57600080fd5b505afa158015611ade573d6000803e3d6000fd5b505050506040513d6020811015611af457600080fd5b8101908080519060200190929190505050612e8090919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611bca57600080fd5b505af1158015611bde573d6000803e3d6000fd5b505050506040513d6020811015611bf457600080fd5b8101908080519060200190929190505050505050565b600060019054906101000a900460ff1681565b60145481565b611c2b613375565b611c336136f6565b611d4381601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611cc057600080fd5b505afa158015611cd4573d6000803e3d6000fd5b505050506040513d6020811015611cea57600080fd5b8101908080519060200190929190505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166134d59092919063ffffffff16565b50565b600c5481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611d7a613375565b611d82612fc8565b80601760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60115481565b601b5481565b611dda612f03565b611de2612fc8565b80601b8190555050565b60168181548110611df957fe5b906000526020600020016000915090505481565b611e1561343a565b601554421015611e8d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f426173653a20434c41494d494e475f4e4f545f5354415254454400000000000081525060200191505060405180910390fd5b6000601960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060008211611f8b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f426173653a20524553455256455f42414c414e43455f5a45524f00000000000081525060200191505060405180910390fd5b6000601960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120623383600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166134d59092919063ffffffff16565b6120778260105461395990919063ffffffff16565b6010819055506000806012541115612102576120b26011546120a48460125461306390919063ffffffff16565b6130e990919063ffffffff16565b90506121013382601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166134d59092919063ffffffff16565b5b7f34fcbac0073d7c3d388e51312faf357774904998eeb8fca628b9e6f65ee1cbf7338483604051808473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b60196020528060005260406000206000915090505481565b612184613375565b6000600581111561219157fe5b60008054906101000a900460ff1660058111156121aa57fe5b14806121d95750600160058111156121be57fe5b60008054906101000a900460ff1660058111156121d757fe5b145b61224b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f4e4c595f445552494e475f494e495449414c495a45445f4f525f524541445981525060200191505060405180910390fd5b8160128190555080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900460ff1681565b6122d6612f03565b6122de612fc8565b80600e8190555050565b600b5481565b6122f6612f03565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600f818154811061234757fe5b906000526020600020016000915090505481565b612363613611565b600e543410156123db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f46503a204f524445525f544f4f5f534d414c4c0000000000000000000000000081525060200191505060405180910390fd5b60006123e56139e1565b905060006123f282613b27565b905080601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106124a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f46503a204d41585f414c4c4f434154494f4e5f5245414348454400000000000081525060200191505060405180910390fd5b60006124f534601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548403613c83565b9050600061253361252b601b5461251d670de0b6b3a76400008661306390919063ffffffff16565b6130e990919063ffffffff16565b600d54613c83565b90506000612566670de0b6b3a7640000612558601b548561306390919063ffffffff16565b6130e990919063ffffffff16565b90506000811180156125785750600082115b6125ea576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f46503a204d41585f414c4c4f434154494f4e5f5245414348454400000000000081525060200191505060405180910390fd5b6125f5338383613c9c565b655af3107a400061260f8234612e8090919063ffffffff16565b1061266e573373ffffffffffffffffffffffffffffffffffffffff166108fc6126418334612e8090919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561266c573d6000803e3d6000fd5b505b5050505050565b61267d613375565b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6126c9612f03565b6126d1612fc8565b6126da81613dd5565b8060098190555050565b6126ec61343a565b6126f4613894565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561275c573d6000803e3d6000fd5b50565b612767612f03565b61276f612fc8565b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6127bb6136f6565b6127c3613894565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156128ad57600080fd5b505afa1580156128c1573d6000803e3d6000fd5b505050506040513d60208110156128d757600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561293b57600080fd5b505af115801561294f573d6000803e3d6000fd5b505050506040513d602081101561296557600080fd5b810190808051906020019092919050505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6129a7613375565b806015819055507f25a4f2ff0abb0fd4627d671f1bbd9629eaef1acc636b847044100b1e6be42cc66015546040518082815260200191505060405180910390a150565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612ad3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f4e4c595f50524f4a4543545f41444d494e000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612bfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4f4e4c595f52415a45525f41444d494e0000000000000000000000000000000081525060200191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b612c68613375565b612c70613ec6565b600754421015612ce8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f426173653a20544f4f5f4541524c59000000000000000000000000000000000081525060200191505060405180910390fd5b60006012541115612e2f57601254601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612d7f57600080fd5b505afa158015612d93573d6000803e3d6000fd5b505050506040513d6020811015612da957600080fd5b81019080805190602001909291905050501015612e2e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f426173653a204e4f545f454e4f5547485f4f434300000000000000000000000081525060200191505060405180910390fd5b5b60026000806101000a81548160ff02191690836005811115612e4d57fe5b0217905550565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60125481565b600082821115612ef8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b818303905092915050565b600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612fc6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f4e4c595f50524f4a4543545f41444d494e000000000000000000000000000081525060200191505060405180910390fd5b565b60006005811115612fd557fe5b60008054906101000a900460ff166005811115612fee57fe5b14613061576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f4e4c595f445552494e475f494e495449414c495a454400000000000000000081525060200191505060405180910390fd5b565b60008083141561307657600090506130e3565b600082840290508284828161308757fe5b04146130de576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018061461e6021913960400191505060405180910390fd5b809150505b92915050565b6000808211613160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b81838161316957fe5b04905092915050565b61317a612f03565b613182612fc8565b613190600754600854613791565b61319b600954613dd5565b6131a3613f61565b600654600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561322f57600080fd5b505afa158015613243573d6000803e3d6000fd5b505050506040513d602081101561325957600080fd5b810190808051906020019092919050505010156132de576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f426173653a204e4f545f454e4f5547485f50524f4a4543545f544f4b454e530081525060200191505060405180910390fd5b61330860646132fa60095460065461306390919063ffffffff16565b6130e990919063ffffffff16565b600a819055506008546015819055507f25a4f2ff0abb0fd4627d671f1bbd9629eaef1acc636b847044100b1e6be42cc66015546040518082815260200191505060405180910390a160016000806101000a81548160ff0219169083600581111561336e57fe5b0217905550565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613438576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4f4e4c595f52415a45525f41444d494e0000000000000000000000000000000081525060200191505060405180910390fd5b565b6003600581111561344757fe5b60008054906101000a900460ff16600581111561346057fe5b146134d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4f4e4c595f445552494e475f535543434553530000000000000000000000000081525060200191505060405180910390fd5b565b6135728363a9059cbb60e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506141c9565b505050565b60058081111561358357fe5b60008054906101000a900460ff16600581111561359c57fe5b1461360f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f4e4c595f445552494e475f504155534544000000000000000000000000000081525060200191505060405180910390fd5b565b6002600581111561361e57fe5b60008054906101000a900460ff16600581111561363757fe5b146136aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4f4e4c595f445552494e475f4f4e474f494e470000000000000000000000000081525060200191505060405180910390fd5b565b60036000806101000a81548160ff021916908360058111156136ca57fe5b0217905550565b60046000806101000a81548160ff021916908360058111156136ef57fe5b0217905550565b6004600581111561370357fe5b60008054906101000a900460ff16600581111561371c57fe5b1461378f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4f4e4c595f445552494e475f4641494c0000000000000000000000000000000081525060200191505060405180910390fd5b565b610e106137a78383612e8090919063ffffffff16565b101561381b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f426173653a204455524154494f4e5f53484f525400000000000000000000000081525060200191505060405180910390fd5b428211613890576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f426173653a2053544152545f54494d455f50415353454400000000000000000081525060200191505060405180910390fd5b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613957576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f4e4c595f41535345545f4d414e41474552000000000000000000000000000081525060200191505060405180910390fd5b565b6000808284019050838110156139d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b45aae52336040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015613a6d57600080fd5b505afa158015613a81573d6000803e3d6000fd5b505050506040513d6020811015613a9757600080fd5b8101908080519060200190929190505050905060008111613b20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f426173653a204e4f545f57484954454c4953544544000000000000000000000081525060200191505060405180910390fd5b8091505090565b600080600f6001840381548110613b3a57fe5b906000526020600020015490506000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637a766460336040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015613bd257600080fd5b505afa158015613be6573d6000803e3d6000fd5b505050506040513d6020811015613bfc57600080fd5b81019080805190602001909291905050509050600080600090505b601680549050811015613c6e5760168181548110613c3157fe5b90600052602060002001548310613c6157600f8181548110613c4f57fe5b90600052602060002001549150613c6e565b8080600101915050613c17565b50613c798184613c83565b9350505050919050565b6000818310613c925781613c94565b825b905092915050565b81601960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555080601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600c6000828254019250508190555081600d6000828254039250508190555080600b600082825401925050819055506000600d541415613d7a57613d796136ac565b5b8273ffffffffffffffffffffffffffffffffffffffff167f9c10a5d88b8bcebd833bb4e481b4622feeafac135896d3a54eea5fd90960c6e18383604051808381526020018281526020019250505060405180910390a2505050565b600a811015613e4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f426173653a204d494e5f46494c4c5f50455243454e544147455f4c4f5700000081525060200191505060405180910390fd5b6064811115613ec3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f426173653a204d494e5f46494c4c5f50455243454e544147455f48494748000081525060200191505060405180910390fd5b50565b60016005811115613ed357fe5b60008054906101000a900460ff166005811115613eec57fe5b14613f5f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f4e4c595f445552494e475f524541445900000000000000000000000000000081525060200191505060405180910390fd5b565b600f8054905060168054905014613fc3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260358152602001806145c36035913960400191505060405180910390fd5b6000600190505b6016805490508110156141315760168181548110613fe457fe5b906000526020600020015460166001830381548110613fff57fe5b90600052602060002001541161407d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f426173653a205354414b455f54494552535f4e4f545f534f525445440000000081525060200191505060405180910390fd5b600f818154811061408a57fe5b9060005260206000200154600f60018303815481106140a557fe5b90600052602060002001541015614124576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f426173653a204d41585f414c4c4f434154494f4e535f4e4f545f534f5254454481525060200191505060405180910390fd5b8080600101915050613fca565b50600060166001601680549050038154811061414957fe5b9060005260206000200154146141c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f426173653a204e4f5f5a45524f5f5354414b455f54494552000000000000000081525060200191505060405180910390fd5b565b606061422b826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166142b89092919063ffffffff16565b90506000815111156142b35780806020019051602081101561424c57600080fd5b81019080805190602001909291905050506142b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a81526020018061463f602a913960400191505060405180910390fd5b5b505050565b60606142c784846000856142d0565b90509392505050565b60608247101561432b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806145f86026913960400191505060405180910390fd5b61433485614479565b6143a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081525060200191505060405180910390fd5b600060608673ffffffffffffffffffffffffffffffffffffffff1685876040518082805190602001908083835b602083106143f657805182526020820191506020810190506020830392506143d3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114614458576040519150601f19603f3d011682016040523d82523d6000602084013e61445d565b606091505b509150915061446d82828661448c565b92505050949350505050565b600080823b905060008111915050919050565b6060831561449c57829050614551565b6000835111156144af5782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156145165780820151818401526020810190506144fb565b50505050905090810190601f1680156145435780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b9392505050565b828054828255906000526020600020908101928215614594579160200282015b82811115614593578251825591602001919060010190614578565b5b5090506145a191906145a5565b5090565b5b808211156145be5760008160009055506001016145a6565b509056fe426173653a205354414b455f54494552535f414e445f4d41585f414c4c4f434154494f4e535f4e4f545f53414d455f4c454e475448416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122065d8d109a3dca82ccc53317aff7339a3a66d03853354fb01e9caac89d0fb13f664736f6c63430007000033
[codex:581463]
[codex:581463] thinking
[codex:581463] **Analyzing bytecode for vulnerabilities**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] path='/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt'
[codex:581463] text=open(path,'r').read()
[codex:581463] # extract hex after 0x in runtime_bytecode
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] if not m:
[codex:581463] print('no hex')
[codex:581463] raise SystemExit
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] print('hex length', len(hexstr))
[codex:581463] # convert
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] print('byte length', len(b))
[codex:581463] # opcode counts for delegatecall, call, selfdestruct
[codex:581463] from collections import Counter
[codex:581463] cnt=Counter(b)
[codex:581463] for op,name in [(0xf1,'CALL'),(0xf2,'CALLCODE'),(0xf4,'DELEGATECALL'),(0xf5,'CREATE2'),(0xff,'SELFDESTRUCT')]:
[codex:581463] print(name, cnt[op])
[codex:581463] # find positions of delegatecall/selfdestruct
[codex:581463] ops={0xf4:'DELEGATECALL',0xff:'SELFDESTRUCT',0xf2:'CALLCODE'}
[codex:581463] for op in ops:
[codex:581463] if cnt[op]:
[codex:581463] print(ops[op],'positions', [i for i,x in enumerate(b) if x==op][:20])
[codex:581463] # check if there is only one delegatecall maybe in safeERC20?; print some surrounding bytes
[codex:581463] if cnt[0xf4]:
[codex:581463] for i in [i for i,x in enumerate(b) if x==0xf4][:5]:
[codex:581463] print('delegatecall around', i, b[i-10:i+10].hex())
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 36ms:
[codex:581463] hex length 36156
[codex:581463] byte length 18078
[codex:581463] CALL 9
[codex:581463] CALLCODE 6
[codex:581463] DELEGATECALL 7
[codex:581463] CREATE2 4
[codex:581463] SELFDESTRUCT 2878
[codex:581463] DELEGATECALL positions [54, 65, 476, 3822, 6894, 7150, 9967]
[codex:581463] SELFDESTRUCT positions [1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096]
[codex:581463] CALLCODE positions [810, 2796, 4804, 9196, 10674, 13083]
[codex:581463] delegatecall around 54 e0f72f116100ab578063f4b94a5d1161007a5780
[codex:581463] delegatecall around 65 b94a5d1161007a578063f4b94a5d146111c05780
[codex:581463] delegatecall around 476 6014610b4b5780639032f44414610b8157806390
[codex:581463] delegatecall around 3822 910390f35b348015610ef457600080fd5b50610f
[codex:581463] delegatecall around 6894 40513d6020811015611af457600080fd5b810190
[codex:581463]
[codex:581463] thinking
[codex:581463] **Planning opcode disassembler implementation**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] path='/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt'
[codex:581463] text=open(path,'r').read()
[codex:581463] import re
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] # Disassemble
[codex:581463] opcounts={}
[codex:581463] ops_positions={0xf4:[],0xff:[],0xf2:[],0xf1:[],0xf0:[],0xf5:[]}
[codex:581463] code_len=len(b)
[codex:581463] pc=0
[codex:581463] while pc<code_len:
[codex:581463] op=b[pc]
[codex:581463] opcounts[op]=opcounts.get(op,0)+1
[codex:581463] if op in ops_positions:
[codex:581463] ops_positions[op].append(pc)
[codex:581463] pc+=1
[codex:581463] if 0x60 <= op <= 0x7f: # PUSH1-PUSH32
[codex:581463] push_len=op-0x5f
[codex:581463] pc+=push_len
[codex:581463]
[codex:581463] # report
[codex:581463] names={0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xff:'SELFDESTRUCT'}
[codex:581463] for op in [0xf0,0xf1,0xf2,0xf4,0xf5,0xff]:
[codex:581463] print(names[op], len(ops_positions[op]))
[codex:581463] if ops_positions[op]:
[codex:581463] print(' positions sample', ops_positions[op][:10])
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 27ms:
[codex:581463] CREATE 0
[codex:581463] CALL 6
[codex:581463] positions sample [6206, 7117, 9814, 10054, 10558, 17448]
[codex:581463] CALLCODE 0
[codex:581463] DELEGATECALL 0
[codex:581463] CREATE2 0
[codex:581463] SELFDESTRUCT 0
[codex:581463]
[codex:581463] thinking
[codex:581463] **Analyzing CALL instructions for risks**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] path='/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt'
[codex:581463] text=open(path,'r').read()
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] # opcode names
[codex:581463] opnames = {**{i: f'PUSH{i-0x5f}' for i in range(0x60,0x80)}}
[codex:581463] # fill opnames for common
[codex:581463] base = {
[codex:581463] 0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:581463] 0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
[codex:581463] 0x20:'SHA3',
[codex:581463] 0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
[codex:581463] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',
[codex:581463] 0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
[codex:581463] 0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:581463] 0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:581463] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:581463] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:581463] }
[codex:581463] opnames.update(base)
[codex:581463]
[codex:581463] # disassemble to list of (pc, op, operand_bytes)
[codex:581463] ops=[]
[codex:581463] pc=0
[codex:581463] while pc < len(b):
[codex:581463] op=b[pc]
[codex:581463] name=opnames.get(op, f'OP{op:02x}')
[codex:581463] pc0=pc
[codex:581463] pc+=1
[codex:581463] operand=b''
[codex:581463] if 0x60 <= op <= 0x7f:
[codex:581463] ln=op-0x5f
[codex:581463] operand=b[pc:pc+ln]
[codex:581463] pc+=ln
[codex:581463] ops.append((pc0, op, name, operand))
[codex:581463]
[codex:581463] call_positions=[i for i,(pc,op,name,operand) in enumerate(ops) if op==0xf1]
[codex:581463] print('CALL ops', len(call_positions))
[codex:581463] # print context around each call
[codex:581463] for idx in call_positions:
[codex:581463] start=max(0, idx-8)
[codex:581463] end=min(len(ops), idx+6)
[codex:581463] print('\\nCALL at pc', ops[idx][0])
[codex:581463] for pc,op,name,operand in ops[start:end]:
[codex:581463] if operand:
[codex:581463] print(f\"{pc:05x}: {name} 0x{operand.hex()}\")
[codex:581463] else:
[codex:581463] print(f\"{pc:05x}: {name}\")
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 34ms:
[codex:581463] CALL ops 6
[codex:581463]
[codex:581463] CALL at pc 6206
[codex:581463] 01836: MLOAD
[codex:581463] 01837: DUP1
[codex:581463] 01838: DUP4
[codex:581463] 01839: SUB
[codex:581463] 0183a: DUP2
[codex:581463] 0183b: DUP6
[codex:581463] 0183c: DUP9
[codex:581463] 0183d: DUP9
[codex:581463] 0183e: CALL
[codex:581463] 0183f: SWAP4
[codex:581463] 01840: POP
[codex:581463] 01841: POP
[codex:581463] 01842: POP
[codex:581463] 01843: POP
[codex:581463]
[codex:581463] CALL at pc 7117
[codex:581463] 01bc2: PUSH2 0x1bca
[codex:581463]
[codex:581463] thinking
[codex:581463] **Analyzing CALL instructions for token and ETH transfers**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] path='/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt'
[codex:581463] text=open(path,'r').read()
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] # opcode names
[codex:581463] opnames={**{i: f'PUSH{i-0x5f}' for i in range(0x60,0x80)}}
[codex:581463] base={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'}
[codex:581463] opnames.update(base)
[codex:581463] # disassemble
[codex:581463] ops=[]
[codex:581463] pc=0
[codex:581463] while pc < len(b):
[codex:581463] op=b[pc]; name=opnames.get(op, f'OP{op:02x}'); pc0=pc; pc+=1; operand=b''
[codex:581463] if 0x60<=op<=0x7f:
[codex:581463] ln=op-0x5f; operand=b[pc:pc+ln]; pc+=ln
[codex:581463] ops.append((pc0,op,name,operand))
[codex:581463]
[codex:581463] # find calls
[codex:581463] call_idxs=[i for i,(pc,op,name,operand) in enumerate(ops) if op==0xf1]
[codex:581463] # choose calls around pc 0x1bcd, 0x293e etc
[codex:581463] for idx in call_idxs:
[codex:581463] pc=ops[idx][0]
[codex:581463] if pc in (0x1bcd,0x293e):
[codex:581463] print('\\n=== Context for CALL at', hex(pc), '===')
[codex:581463] start=max(0, idx-40); end=min(len(ops), idx+10)
[codex:581463] for pc,op,name,operand in ops[start:end]:
[codex:581463] if operand:
[codex:581463] print(f\"{pc:05x}: {name} 0x{operand.hex()}\")
[codex:581463] else:
[codex:581463] print(f\"{pc:05x}: {name}\")
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 34ms:
[codex:581463]
[codex:581463] === Context for CALL at 0x1bcd ===
[codex:581463] 01b89: ADD
[codex:581463] 01b8a: DUP1
[codex:581463] 01b8b: DUP4
[codex:581463] 01b8c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:581463] 01ba1: AND
[codex:581463] 01ba2: DUP2
[codex:581463] 01ba3: MSTORE
[codex:581463] 01ba4: PUSH1 0x20
[codex:581463] 01ba6: ADD
[codex:581463] 01ba7: DUP3
[codex:581463] 01ba8: DUP2
[codex:581463] 01ba9: MSTORE
[codex:581463] 01baa: PUSH1 0x20
[codex:581463] 01bac: ADD
[codex:581463] 01bad: SWAP3
[codex:581463] 01bae: POP
[codex:581463] 01baf: POP
[codex:581463] 01bb0: POP
[codex:581463]
[codex:581463] thinking
[codex:581463] **Analyzing CALL instructions and value arguments**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] path='/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt'
[codex:581463] text=open(path,'r').read()
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] # opcode names
[codex:581463] opnames={**{i: f'PUSH{i-0x5f}' for i in range(0x60,0x80)}}
[codex:581463] base={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'}
[codex:581463] opnames.update(base)
[codex:581463] # disassemble
[codex:581463] ops=[]
[codex:581463] pc=0
[codex:581463] while pc < len(b):
[codex:581463] op=b[pc]; name=opnames.get(op, f'OP{op:02x}'); pc0=pc; pc+=1; operand=b''
[codex:581463] if 0x60<=op<=0x7f:
[codex:581463] ln=op-0x5f; operand=b[pc:pc+ln]; pc+=ln
[codex:581463] ops.append((pc0,op,name,operand))
[codex:581463]
[codex:581463] # map pc to index
[codex:581463] pc_to_idx={pc:i for i,(pc,op,name,operand) in enumerate(ops)}
[codex:581463]
[codex:581463] for target_pc in [0x183e,0x2656,0x2746,0x4428]:
[codex:581463] idx=pc_to_idx.get(target_pc)
[codex:581463] if idx is None:
[codex:581463] print('pc not found', hex(target_pc)); continue
[codex:581463] print('\\n=== Context for CALL at', hex(target_pc), '===')
[codex:581463] start=max(0, idx-40); end=min(len(ops), idx+12)
[codex:581463] for pc,op,name,operand in ops[start:end]:
[codex:581463] if operand:
[codex:581463] print(f\"{pc:05x}: {name} 0x{operand.hex()}\")
[codex:581463] else:
[codex:581463] print(f\"{pc:05x}: {name}\")
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 33ms:
[codex:581463]
[codex:581463] === Context for CALL at 0x183e ===
[codex:581463] 017e6: AND
[codex:581463] 017e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:581463] 017fc: AND
[codex:581463] 017fd: DUP2
[codex:581463] 017fe: MSTORE
[codex:581463] 017ff: PUSH1 0x20
[codex:581463] 01801: ADD
[codex:581463] 01802: SWAP1
[codex:581463] 01803: DUP2
[codex:581463] 01804: MSTORE
[codex:581463] 01805: PUSH1 0x20
[codex:581463] 01807: ADD
[codex:581463] 01808: PUSH1 0x00
[codex:581463] 0180a: SHA3
[codex:581463] 0180b: DUP2
[codex:581463] 0180c: SWAP1
[codex:581463] 0180d: SSTORE
[codex:581463] 0180e: POP
[codex:581463]
[codex:581463] thinking
[codex:581463] **Analyzing low-level CALL patterns**
[codex:581463] exec
[codex:581463] /bin/bash -lc "python - <<'PY'
[codex:581463] import re, binascii
[codex:581463] text=open('/tmp/codex-multi-rizsuqn4/BYTECODE_BUNDLE.txt').read()
[codex:581463] import re
[codex:581463] m=re.search(r'FILE: runtime_bytecode.hex\\n(0x[0-9a-fA-F]+)', text)
[codex:581463] hexstr=m.group(1)[2:]
[codex:581463] b=binascii.unhexlify(hexstr)
[codex:581463] # disassemble to count staticcall
[codex:581463] pc=0
[codex:581463] count=0
[codex:581463] positions=[]
[codex:581463] while pc < len(b):
[codex:581463] op=b[pc]; pc+=1
[codex:581463] if op==0xfa:
[codex:581463] count+=1; positions.append(pc-1)
[codex:581463] if 0x60<=op<=0x7f:
[codex:581463] pc+=op-0x5f
[codex:581463] print('STATICCALL', count, positions[:10])
[codex:581463] PY" in /tmp/codex-multi-rizsuqn4 succeeded in 26ms:
[codex:581463] STATICCALL 7 [6861, 7363, 10416, 11650, 12850, 14960, 15317]
[codex:581463]
[codex:581463] thinking
[codex:581463] **Confirming no concrete exploits found**
[codex:581463] codex
[codex:581463] {"no_findings":true,"summary":"Reviewed BYTECODE_BUNDLE.txt runtime bytecode end-to-end; no concrete, exploitable profit path identified from bytecode alone (no delegatecall/selfdestruct, external calls appear consistent with ERC20 transfers/refunds guarded by state/access checks).","findings":[]}
[codex:581463] tokens used
[codex:581463] 42,457
[codex:581463] {"no_findings":true,"summary":"Reviewed BYTECODE_BUNDLE.txt runtime bytecode end-to-end; no concrete, exploitable profit path identified from bytecode alone (no delegatecall/selfdestruct, external calls appear consistent with ERC20 transfers/refunds guarded by state/access checks).","findings":[]}
{
"codex": {
"ran_at": "2026-01-05T05:10:53.962543+00:00",
"returncode": 0
},
"summary": "Reviewed BYTECODE_BUNDLE.txt runtime bytecode end-to-end; no concrete, exploitable profit path identified from bytecode alone (no delegatecall/selfdestruct, external calls appear consistent with ERC20 transfers/refunds guarded by state/access checks).",
"raw_final": {
"summary": "Reviewed BYTECODE_BUNDLE.txt runtime bytecode end-to-end; no concrete, exploitable profit path identified from bytecode alone (no delegatecall/selfdestruct, external calls appear consistent with ERC20 transfers/refunds guarded by state/access checks).",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x03d9 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8d64fd60 00000019: GT 0000001a: PUSH2 0x01fd 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xc71c0b40 00000024: GT 00000025: PUSH2 0x0118 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe9e0f72f 0000002f: GT 00000030: PUSH2 0x00ab 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xf4b94a5d 0000003a: GT 0000003b: PUSH2 0x007a 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf4b94a5d 00000045: EQ 00000046: PUSH2 0x11c0 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf56b3166 00000050: EQ 00000051: PUSH2 0x11d7 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf6c73294 0000005b: EQ 0000005c: PUSH2 0x11ee 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xfc0c546a 00000066: EQ 00000067: PUSH2 0x1205 0000006a: JUMPI 0000006b: DUP1 0000006c: PUSH4 0xfd1c7e0b 00000071: EQ 00000072: PUSH2 0x1246 00000075: JUMPI 00000076: PUSH2 0x03d9 00000079: JUMP 0000007a: JUMPDEST 0000007b: DUP1 0000007c: PUSH4 0xe9e0f72f 00000081: EQ 00000082: PUSH2 0x10ec 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xeae69905 0000008c: EQ 0000008d: PUSH2 0x1103 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0xec15444d 00000097: EQ 00000098: PUSH2 0x1144 0000009b: JUMPI 0000009c: DUP1 0000009d: PUSH4 0xee99205c 000000a2: EQ 000000a3: PUSH2 0x117f 000000a6: JUMPI 000000a7: PUSH2 0x03d9 000000aa: JUMP 000000ab: JUMPDEST 000000ac: DUP1 000000ad: PUSH4 0xd15c6043 000000b2: GT 000000b3: PUSH2 0x00e7 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xd15c6043 000000bd: EQ 000000be: PUSH2 0x0ff8 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xd5ee587a 000000c8: EQ 000000c9: PUSH2 0x1049 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xe07fa3c1 000000d3: EQ 000000d4: PUSH2 0x1084 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH4 0xe4881c20 000000de: EQ 000000df: PUSH2 0x109b 000000e2: JUMPI 000000e3: PUSH2 0x03d9 000000e6: JUMP 000000e7: JUMPDEST 000000e8: DUP1 000000e9: PUSH4 0xc71c0b40 000000ee: EQ 000000ef: PUSH2 0x0f23 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0xc8177417 000000f9: EQ 000000fa: PUSH2 0x0f4e 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0xc8318c10 00000104: EQ 00000105: PUSH2 0x0f9f 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0xcd3293de 0000010f: EQ 00000110: PUSH2 0x0fee 00000113: JUMPI 00000114: PUSH2 0x03d9 00000117: JUMP 00000118: JUMPDEST 00000119: DUP1 0000011a: PUSH4 0xa2b40d19 0000011f: GT 00000120: PUSH2 0x0190 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0xbb9be715 0000012a: GT 0000012b: PUSH2 0x015f 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0xbb9be715 00000135: EQ 00000136: PUSH2 0x0e16 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0xc17231b9 00000140: EQ 00000141: PUSH2 0x0e71 00000144: JUMPI 00000145: DUP1 00000146: PUSH4 0xc19d93fb 0000014b: EQ 0000014c: PUSH2 0x0eb2 0000014f: JUMPI 00000150: DUP1 00000151: PUSH4 0xc46246ba 00000156: EQ 00000157: PUSH2 0x0ee8 0000015a: JUMPI 0000015b: PUSH2 0x03d9 0000015e: JUMP 0000015f: JUMPDEST 00000160: DUP1 00000161: PUSH4 0xa2b40d19 00000166: EQ 00000167: PUSH2 0x0d10 0000016a: JUMPI 0000016b: DUP1 0000016c: PUSH4 0xacf9017d 00000171: EQ 00000172: PUSH2 0x0d4b 00000175: JUMPI 00000176: DUP1 00000177: PUSH4 0xaf4e3d37 0000017c: EQ 0000017d: PUSH2 0x0d9a 00000180: JUMPI 00000181: DUP1 00000182: PUSH4 0xb932e3e3 00000187: EQ 00000188: PUSH2 0x0db1 0000018b: JUMPI 0000018c: PUSH2 0x03d9 0000018f: JUMP 00000190: JUMPDEST 00000191: DUP1 00000192: PUSH4 0x94217ad1 00000197: GT 00000198: PUSH2 0x01cc 0000019b: JUMPI 0000019c: DUP1 0000019d: PUSH4 0x94217ad1 000001a2: EQ 000001a3: PUSH2 0x0c28 000001a6: JUMPI 000001a7: DUP1 000001a8: PUSH4 0x94db4d05 000001ad: EQ 000001ae: PUSH2 0x0c69 000001b1: JUMPI 000001b2: DUP1 000001b3: PUSH4 0x99d64ab0 000001b8: EQ 000001b9: PUSH2 0x0cba 000001bc: JUMPI 000001bd: DUP1 000001be: PUSH4 0xa035b1fe 000001c3: EQ 000001c4: PUSH2 0x0ce5 000001c7: JUMPI 000001c8: PUSH2 0x03d9 000001cb: JUMP 000001cc: JUMPDEST 000001cd: DUP1 000001ce: PUSH4 0x8d64fd60 000001d3: EQ 000001d4: PUSH2 0x0b4b 000001d7: JUMPI 000001d8: DUP1 000001d9: PUSH4 0x9032f444 000001de: EQ 000001df: PUSH2 0x0b81 000001e2: JUMPI 000001e3: DUP1 000001e4: PUSH4 0x90886cc9 000001e9: EQ 000001ea: PUSH2 0x0bac 000001ed: JUMPI 000001ee: DUP1 000001ef: PUSH4 0x927fd69f 000001f4: EQ 000001f5: PUSH2 0x0bfd 000001f8: JUMPI 000001f9: PUSH2 0x03d9 000001fc: JUMP 000001fd: JUMPDEST 000001fe: DUP1 000001ff: PUSH4 0x4a4e3bd5 00000204: GT 00000205: PUSH2 0x02f8 00000208: JUMPI 00000209: DUP1 0000020a: PUSH4 0x6b9f625f 0000020f: GT 00000210: PUSH2 0x028b 00000213: JUMPI 00000214: DUP1 00000215: PUSH4 0x78e97925 0000021a: GT 0000021b: PUSH2 0x025a 0000021e: JUMPI 0000021f: DUP1 00000220: PUSH4 0x78e97925 00000225: EQ 00000226: PUSH2 0x0a12 00000229: JUMPI 0000022a: DUP1 0000022b: PUSH4 0x84900b04 00000230: EQ 00000231: PUSH2 0x0a3d 00000234: JUMPI 00000235: DUP1 00000236: PUSH4 0x8676fcd2 0000023b: EQ 0000023c: PUSH2 0x0a7e 0000023f: JUMPI 00000240: DUP1 00000241: PUSH4 0x879cb32e 00000246: EQ 00000247: PUSH2 0x0acf 0000024a: JUMPI 0000024b: DUP1 0000024c: PUSH4 0x8afbf669 00000251: EQ 00000252: PUSH2 0x0b34 00000255: JUMPI 00000256: PUSH2 0x03d9 00000259: JUMP 0000025a: JUMPDEST 0000025b: DUP1 0000025c: PUSH4 0x6b9f625f 00000261: EQ 00000262: PUSH2 0x0936 00000265: JUMPI 00000266: DUP1 00000267: PUSH4 0x6c1516e1 0000026c: EQ 0000026d: PUSH2 0x0977 00000270: JUMPI 00000271: DUP1 00000272: PUSH4 0x70349850 00000277: EQ 00000278: PUSH2 0x09a2 0000027b: JUMPI 0000027c: DUP1 0000027d: PUSH4 0x707188c1 00000282: EQ 00000283: PUSH2 0x09cd 00000286: JUMPI 00000287: PUSH2 0x03d9 0000028a: JUMP 0000028b: JUMPDEST 0000028c: DUP1 0000028d: PUSH4 0x582bddfd 00000292: GT 00000293: PUSH2 0x02c7 00000296: JUMPI 00000297: DUP1 00000298: PUSH4 0x582bddfd 0000029d: EQ 0000029e: PUSH2 0x088a 000002a1: JUMPI 000002a2: DUP1 000002a3: PUSH4 0x590e1ae3 000002a8: EQ 000002a9: PUSH2 0x08a1 000002ac: JUMPI 000002ad: DUP1 000002ae: PUSH4 0x5faafde6 000002b3: EQ 000002b4: PUSH2 0x08b8 000002b7: JUMPI 000002b8: DUP1 000002b9: PUSH4 0x66829b16 000002be: EQ 000002bf: PUSH2 0x08e5 000002c2: JUMPI 000002c3: PUSH2 0x03d9 000002c6: JUMP 000002c7: JUMPDEST 000002c8: DUP1 000002c9: PUSH4 0x4a4e3bd5 000002ce: EQ 000002cf: PUSH2 0x0806 000002d2: JUMPI 000002d3: DUP1 000002d4: PUSH4 0x4d9db42f 000002d9: EQ 000002da: PUSH2 0x081d 000002dd: JUMPI 000002de: DUP1 000002df: PUSH4 0x51858e27 000002e4: EQ 000002e5: PUSH2 0x0848 000002e8: JUMPI 000002e9: DUP1 000002ea: PUSH4 0x55c76ae5 000002ef: EQ 000002f0: PUSH2 0x085f 000002f3: JUMPI 000002f4: PUSH2 0x03d9 000002f7: JUMP 000002f8: JUMPDEST 000002f9: DUP1 000002fa: PUSH4 0x2c4b2308 000002ff: GT 00000300: PUSH2 0x0370 00000303: JUMPI 00000304: DUP1 00000305: PUSH4 0x3360155d 0000030a: GT 0000030b: PUSH2 0x033f 0000030e: JUMPI 0000030f: DUP1 00000310: PUSH4 0x3360155d 00000315: EQ 00000316: PUSH2 0x062c 00000319: JUMPI 0000031a: DUP1 0000031b: PUSH4 0x3f1861f9 00000320: EQ 00000321: PUSH2 0x0657 00000324: JUMPI 00000325: DUP1 00000326: PUSH4 0x432fc8f2 0000032b: EQ 0000032c: PUSH2 0x0682 0000032f: JUMPI 00000330: DUP1 00000331: PUSH4 0x47c6dd92 00000336: EQ 00000337: PUSH2 0x07db 0000033a: JUMPI 0000033b: PUSH2 0x03d9 0000033e: JUMP 0000033f: JUMPDEST 00000340: DUP1 00000341: PUSH4 0x2c4b2308 00000346: EQ 00000347: PUSH2 0x0594 0000034a: JUMPI 0000034b: DUP1 0000034c: PUSH4 0x2d28e89d 00000351: EQ 00000352: PUSH2 0x05ab 00000355: JUMPI 00000356: DUP1 00000357: PUSH4 0x307e4e7a 0000035c: EQ 0000035d: PUSH2 0x05d6 00000360: JUMPI 00000361: DUP1 00000362: PUSH4 0x3197cbb6 00000367: EQ 00000368: PUSH2 0x0601 0000036b: JUMPI 0000036c: PUSH2 0x03d9 0000036f: JUMP 00000370: JUMPDEST 00000371: DUP1 00000372: PUSH4 0x1bc141a9 00000377: GT 00000378: PUSH2 0x03ac 0000037b: JUMPI 0000037c: DUP1 0000037d: PUSH4 0x1bc141a9 00000382: EQ 00000383: PUSH2 0x04c2 00000386: JUMPI 00000387: DUP1 00000388: PUSH4 0x1bf52e09 0000038d: EQ 0000038e: PUSH2 0x04fd 00000391: JUMPI 00000392: DUP1 00000393: PUSH4 0x1d8b44c5 00000398: EQ 00000399: PUSH2 0x053e 0000039c: JUMPI 0000039d: DUP1 0000039e: PUSH4 0x2069ee79 000003a3: EQ 000003a4: PUSH2 0x0569 000003a7: JUMPI 000003a8: PUSH2 0x03d9 000003ab: JUMP 000003ac: JUMPDEST 000003ad: DUP1 000003ae: PUSH4 0x02763892 000003b3: EQ 000003b4: PUSH2 0x03de 000003b7: JUMPI 000003b8: DUP1 000003b9: PUSH4 0x036a9955 000003be: EQ 000003bf: PUSH2 0x0419 000003c2: JUMPI 000003c3: DUP1 000003c4: PUSH4 0x0af715e6 000003c9: EQ 000003ca: PUSH2 0x045a 000003cd: JUMPI 000003ce: DUP1 000003cf: PUSH4 0x0cd9a874 000003d4: EQ 000003d5: PUSH2 0x0471 000003d8: JUMPI 000003d9: JUMPDEST 000003da: PUSH1 0x00 000003dc: DUP1 000003dd: REVERT 000003de: JUMPDEST 000003df: CALLVALUE 000003e0: DUP1 000003e1: ISZERO 000003e2: PUSH2 0x03ea 000003e5: JUMPI 000003e6: PUSH1 0x00 000003e8: DUP1 000003e9: REVERT 000003ea: JUMPDEST 000003eb: POP 000003ec: PUSH2 0x0417 000003ef: PUSH1 0x04 000003f1: DUP1 000003f2: CALLDATASIZE 000003f3: SUB 000003f4: PUSH1 0x20 000003f6: DUP2 000003f7: LT 000003f8: ISZERO 000003f9: PUSH2 0x0401 000003fc: JUMPI 000003fd: PUSH1 0x00 000003ff: DUP1 00000400: REVERT 00000401: JUMPDEST 00000402: DUP2 00000403: ADD 00000404: SWAP1 00000405: DUP1 00000406: DUP1 00000407: CALLDATALOAD 00000408: SWAP1 00000409: PUSH1 0x20 0000040b: ADD 0000040c: SWAP1 0000040d: SWAP3 0000040e: SWAP2 0000040f: SWAP1 00000410: POP 00000411: POP 00000412: POP 00000413: PUSH2 0x1271 00000416: JUMP 00000417: JUMPDEST 00000418: STOP 00000419: JUMPDEST 0000041a: CALLVALUE 0000041b: DUP1 0000041c: ISZERO 0000041d: PUSH2 0x0425 00000420: JUMPI 00000421: PUSH1 0x00 00000423: DUP1 00000424: REVERT 00000425: JUMPDEST 00000426: POP 00000427: PUSH2 0x042e 0000042a: PUSH2 0x128b 0000042d: JUMP 0000042e: JUMPDEST 0000042f: PUSH1 0x40 00000431: MLOAD 00000432: DUP1 00000433: DUP3 00000434: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000449: AND 0000044a: DUP2 0000044b: MSTORE 0000044c: PUSH1 0x20 0000044e: ADD 0000044f: SWAP2 00000450: POP 00000451: POP 00000452: PUSH1 0x40 00000454: MLOAD 00000455: DUP1 00000456: SWAP2 00000457: SUB 00000458: SWAP1 00000459: RETURN 0000045a: JUMPDEST 0000045b: CALLVALUE 0000045c: DUP1 0000045d: ISZERO 0000045e: PUSH2 0x0466 00000461: JUMPI 00000462: PUSH1 0x00 00000464: DUP1 00000465: REVERT 00000466: JUMPDEST 00000467: POP 00000468: PUSH2 0x046f 0000046b: PUSH2 0x12b1 0000046e: JUMP 0000046f: JUMPDEST 00000470: STOP 00000471: JUMPDEST 00000472: CALLVALUE 00000473: DUP1 00000474: ISZERO 00000475: PUSH2 0x047d 00000478: JUMPI 00000479: PUSH1 0x00 0000047b: DUP1 0000047c: REVERT 0000047d: JUMPDEST 0000047e: POP 0000047f: PUSH2 0x04c0 00000482: PUSH1 0x04 00000484: DUP1 00000485: CALLDATASIZE 00000486: SUB 00000487: PUSH1 0x20 00000489: DUP2 0000048a: LT 0000048b: ISZERO 0000048c: PUSH2 0x0494 0000048f: JUMPI 00000490: PUSH1 0x00 00000492: DUP1 00000493: REVERT 00000494: JUMPDEST 00000495: DUP2 00000496: ADD 00000497: SWAP1 00000498: DUP1 00000499: DUP1 0000049a: CALLDATALOAD 0000049b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004b0: AND 000004b1: SWAP1 000004b2: PUSH1 0x20 000004b4: ADD 000004b5: SWAP1 000004b6: SWAP3 000004b7: SWAP2 000004b8: SWAP1 000004b9: POP 000004ba: POP 000004bb: POP 000004bc: PUSH2 0x1302 000004bf: JUMP 000004c0: JUMPDEST 000004c1: STOP 000004c2: JUMPDEST 000004c3: CALLVALUE 000004c4: DUP1 000004c5: ISZERO 000004c6: PUSH2 0x04ce 000004c9: JUMPI 000004ca: PUSH1 0x00 000004cc: DUP1 000004cd: REVERT 000004ce: JUMPDEST 000004cf: POP 000004d0: PUSH2 0x04fb 000004d3: PUSH1 0x04 000004d5: DUP1 000004d6: CALLDATASIZE 000004d7: SUB 000004d8: PUSH1 0x20 000004da: DUP2 000004db: LT 000004dc: ISZERO 000004dd: PUSH2 0x04e5 000004e0: JUMPI 000004e1: PUSH1 0x00 000004e3: DUP1 000004e4: REVERT 000004e5: JUMPDEST 000004e6: DUP2 000004e7: ADD 000004e8: SWAP1 000004e9: DUP1 000004ea: DUP1 000004eb: CALLDATALOAD 000004ec: SWAP1 000004ed: PUSH1 0x20 000004ef: ADD 000004f0: SWAP1 000004f1: SWAP3 000004f2: SWAP2 000004f3: SWAP1 000004f4: POP 000004f5: POP 000004f6: POP 000004f7: PUSH2 0x13dc 000004fa: JUMP 000004fb: JUMPDEST 000004fc: STOP 000004fd: JUMPDEST 000004fe: CALLVALUE 000004ff: DUP1 00000500: ISZERO 00000501: PUSH2 0x0509 00000504: JUMPI 00000505: PUSH1 0x00 00000507: DUP1 00000508: REVERT 00000509: JUMPDEST 0000050a: POP 0000050b: PUSH2 0x0512 0000050e: PUSH2 0x13fd 00000511: JUMP 00000512: JUMPDEST 00000513: PUSH1 0x40 00000515: MLOAD 00000516: DUP1 00000517: DUP3 00000518: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000052d: AND 0000052e: DUP2 0000052f: MSTORE 00000530: PUSH1 0x20 00000532: ADD 00000533: SWAP2 00000534: POP 00000535: POP 00000536: PUSH1 0x40 00000538: MLOAD 00000539: DUP1 0000053a: SWAP2 0000053b: SUB 0000053c: SWAP1 0000053d: RETURN 0000053e: JUMPDEST 0000053f: CALLVALUE 00000540: DUP1 00000541: ISZERO 00000542: PUSH2 0x054a 00000545: JUMPI 00000546: PUSH1 0x00 00000548: DUP1 00000549: REVERT 0000054a: JUMPDEST 0000054b: POP 0000054c: PUSH2 0x0553 0000054f: PUSH2 0x1423 00000552: JUMP 00000553: JUMPDEST 00000554: PUSH1 0x40 00000556: MLOAD 00000557: DUP1 00000558: DUP3 00000559: DUP2 0000055a: MSTORE 0000055b: PUSH1 0x20 0000055d: ADD 0000055e: SWAP2 0000055f: POP 00000560: POP 00000561: PUSH1 0x40 00000563: MLOAD 00000564: DUP1 00000565: SWAP2 00000566: SUB 00000567: SWAP1 00000568: RETURN 00000569: JUMPDEST 0000056a: CALLVALUE 0000056b: DUP1 0000056c: ISZERO 0000056d: PUSH2 0x0575 00000570: JUMPI 00000571: PUSH1 0x00 00000573: DUP1 00000574: REVERT 00000575: JUMPDEST 00000576: POP 00000577: PUSH2 0x057e 0000057a: PUSH2 0x1429 0000057d: JUMP 0000057e: JUMPDEST 0000057f: PUSH1 0x40 00000581: MLOAD 00000582: DUP1 00000583: DUP3 00000584: DUP2 00000585: MSTORE 00000586: PUSH1 0x20 00000588: ADD 00000589: SWAP2 0000058a: POP 0000058b: POP 0000058c: PUSH1 0x40 0000058e: MLOAD 0000058f: DUP1 00000590: SWAP2 00000591: SUB 00000592: SWAP1 00000593: RETURN 00000594: JUMPDEST 00000595: CALLVALUE 00000596: DUP1 00000597: ISZERO 00000598: PUSH2 0x05a0 0000059b: JUMPI 0000059c: PUSH1 0x00 0000059e: DUP1 0000059f: REVERT 000005a0: JUMPDEST 000005a1: POP 000005a2: PUSH2 0x05a9 000005a5: PUSH2 0x142f 000005a8: JUMP 000005a9: JUMPDEST 000005aa: STOP 000005ab: JUMPDEST 000005ac: CALLVALUE 000005ad: DUP1 000005ae: ISZERO 000005af: PUSH2 0x05b7 000005b2: JUMPI 000005b3: PUSH1 0x00 000005b5: DUP1 000005b6: REVERT 000005b7: JUMPDEST 000005b8: POP 000005b9: PUSH2 0x05c0 000005bc: PUSH2 0x1464 000005bf: JUMP 000005c0: JUMPDEST 000005c1: PUSH1 0x40 000005c3: MLOAD 000005c4: DUP1 000005c5: DUP3 000005c6: DUP2 000005c7: MSTORE 000005c8: PUSH1 0x20 000005ca: ADD 000005cb: SWAP2 000005cc: POP 000005cd: POP 000005ce: PUSH1 0x40 000005d0: MLOAD 000005d1: DUP1 000005d2: SWAP2 000005d3: SUB 000005d4: SWAP1 000005d5: RETURN 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 0x05eb 000005e7: PUSH2 0x146a 000005ea: JUMP 000005eb: JUMPDEST 000005ec: PUSH1 0x40 000005ee: MLOAD 000005ef: DUP1 000005f0: DUP3 000005f1: DUP2 000005f2: MSTORE 000005f3: PUSH1 0x20 000005f5: ADD 000005f6: SWAP2 000005f7: POP 000005f8: POP 000005f9: PUSH1 0x40 000005fb: MLOAD 000005fc: DUP1 000005fd: SWAP2 000005fe: SUB 000005ff: SWAP1 00000600: RETURN 00000601: JUMPDEST 00000602: CALLVALUE 00000603: DUP1 00000604: ISZERO 00000605: PUSH2 0x060d 00000608: JUMPI 00000609: PUSH1 0x00 0000060b: DUP1 0000060c: REVERT 0000060d: JUMPDEST 0000060e: POP 0000060f: PUSH2 0x0616 00000612: PUSH2 0x146f 00000615: JUMP 00000616: JUMPDEST 00000617: PUSH1 0x40 00000619: MLOAD 0000061a: DUP1 0000061b: DUP3 0000061c: DUP2 0000061d: MSTORE 0000061e: PUSH1 0x20 00000620: ADD 00000621: SWAP2 00000622: POP 00000623: POP 00000624: PUSH1 0x40 00000626: MLOAD 00000627: DUP1 00000628: SWAP2 00000629: SUB 0000062a: SWAP1 0000062b: RETURN 0000062c: JUMPDEST 0000062d: CALLVALUE 0000062e: DUP1 0000062f: ISZERO 00000630: PUSH2 0x0638 00000633: JUMPI 00000634: PUSH1 0x00 00000636: DUP1 00000637: REVERT 00000638: JUMPDEST 00000639: POP 0000063a: PUSH2 0x0641 0000063d: PUSH2 0x1475 00000640: JUMP 00000641: JUMPDEST 00000642: PUSH1 0x40 00000644: MLOAD 00000645: DUP1 00000646: DUP3 00000647: DUP2 00000648: MSTORE 00000649: PUSH1 0x20 0000064b: ADD 0000064c: SWAP2 0000064d: POP 0000064e: POP 0000064f: PUSH1 0x40 00000651: MLOAD 00000652: DUP1 00000653: SWAP2 00000654: SUB 00000655: SWAP1 00000656: RETURN 00000657: JUMPDEST 00000658: CALLVALUE 00000659: DUP1 0000065a: ISZERO 0000065b: PUSH2 0x0663 0000065e: JUMPI 0000065f: PUSH1 0x00 00000661: DUP1 00000662: REVERT 00000663: JUMPDEST 00000664: POP 00000665: PUSH2 0x066c 00000668: PUSH2 0x147f 0000066b: JUMP 0000066c: JUMPDEST 0000066d: PUSH1 0x40 0000066f: MLOAD 00000670: DUP1 00000671: DUP3 00000672: DUP2 00000673: MSTORE 00000674: PUSH1 0x20 00000676: ADD 00000677: SWAP2 00000678: POP 00000679: POP 0000067a: PUSH1 0x40 0000067c: MLOAD 0000067d: DUP1 0000067e: SWAP2 0000067f: SUB 00000680: SWAP1 00000681: RETURN 00000682: JUMPDEST 00000683: CALLVALUE 00000684: DUP1 00000685: ISZERO 00000686: PUSH2 0x068e 00000689: JUMPI 0000068a: PUSH1 0x00 0000068c: DUP1 0000068d: REVERT 0000068e: JUMPDEST 0000068f: POP 00000690: PUSH2 0x07d9 00000693: PUSH1 0x04 00000695: DUP1 00000696: CALLDATASIZE 00000697: SUB 00000698: PUSH1 0x40 0000069a: DUP2 0000069b: LT 0000069c: ISZERO 0000069d: PUSH2 0x06a5 000006a0: JUMPI 000006a1: PUSH1 0x00 000006a3: DUP1 000006a4: REVERT 000006a5: JUMPDEST 000006a6: DUP2 000006a7: ADD 000006a8: SWAP1 000006a9: DUP1 000006aa: DUP1 000006ab: CALLDATALOAD 000006ac: SWAP1 000006ad: PUSH1 0x20 000006af: ADD 000006b0: SWAP1 000006b1: PUSH5 0x0100000000 000006b7: DUP2 000006b8: GT 000006b9: ISZERO 000006ba: PUSH2 0x06c2 000006bd: JUMPI 000006be: PUSH1 0x00 000006c0: DUP1 000006c1: REVERT 000006c2: JUMPDEST 000006c3: DUP3 000006c4: ADD 000006c5: DUP4 000006c6: PUSH1 0x20 000006c8: DUP3 000006c9: ADD 000006ca: GT 000006cb: ISZERO 000006cc: PUSH2 0x06d4 000006cf: JUMPI 000006d0: PUSH1 0x00 000006d2: DUP1 000006d3: REVERT 000006d4: JUMPDEST 000006d5: DUP1 000006d6: CALLDATALOAD 000006d7: SWAP1 000006d8: PUSH1 0x20 000006da: ADD 000006db: SWAP2 000006dc: DUP5 000006dd: PUSH1 0x20 000006df: DUP4 000006e0: MUL 000006e1: DUP5 000006e2: ADD 000006e3: GT 000006e4: PUSH5 0x0100000000 000006ea: DUP4 000006eb: GT 000006ec: OR 000006ed: ISZERO 000006ee: PUSH2 0x06f6 000006f1: JUMPI 000006f2: PUSH1 0x00 000006f4: DUP1 000006f5: REVERT 000006f6: JUMPDEST 000006f7: SWAP2 000006f8: SWAP1 000006f9: DUP1 000006fa: DUP1 000006fb: PUSH1 0x20 000006fd: MUL 000006fe: PUSH1 0x20 00000700: ADD 00000701: PUSH1 0x40 00000703: MLOAD 00000704: SWAP1 00000705: DUP2 00000706: ADD 00000707: PUSH1 0x40 00000709: MSTORE 0000070a: DUP1 0000070b: SWAP4 0000070c: SWAP3 0000070d: SWAP2 0000070e: SWAP1 0000070f: DUP2 00000710: DUP2 00000711: MSTORE 00000712: PUSH1 0x20 00000714: ADD 00000715: DUP4 00000716: DUP4 00000717: PUSH1 0x20 00000719: MUL 0000071a: DUP1 0000071b: DUP3 0000071c: DUP5 0000071d: CALLDATACOPY 0000071e: PUSH1 0x00 00000720: DUP2 00000721: DUP5 00000722: ADD 00000723: MSTORE 00000724: PUSH1 0x1f 00000726: NOT 00000727: PUSH1 0x1f 00000729: DUP3 0000072a: ADD 0000072b: AND 0000072c: SWAP1 0000072d: POP 0000072e: DUP1 0000072f: DUP4 00000730: ADD 00000731: SWAP3 00000732: POP 00000733: POP 00000734: POP 00000735: POP 00000736: POP 00000737: POP 00000738: POP 00000739: SWAP2 0000073a: SWAP3 0000073b: SWAP2 0000073c: SWAP3 0000073d: SWAP1 0000073e: DUP1 0000073f: CALLDATALOAD 00000740: SWAP1 00000741: PUSH1 0x20 00000743: ADD 00000744: SWAP1 00000745: PUSH5 0x0100000000 0000074b: DUP2 0000074c: GT 0000074d: ISZERO 0000074e: PUSH2 0x0756 00000751: JUMPI 00000752: PUSH1 0x00 00000754: DUP1 00000755: REVERT 00000756: JUMPDEST 00000757: DUP3 00000758: ADD 00000759: DUP4 0000075a: PUSH1 0x20 0000075c: DUP3 0000075d: ADD 0000075e: GT 0000075f: ISZERO 00000760: PUSH2 0x0768 00000763: JUMPI 00000764: PUSH1 0x00 00000766: DUP1 00000767: REVERT 00000768: JUMPDEST 00000769: DUP1 0000076a: CALLDATALOAD 0000076b: SWAP1 0000076c: PUSH1 0x20 0000076e: ADD 0000076f: SWAP2 00000770: DUP5 00000771: PUSH1 0x20 00000773: DUP4 00000774: MUL 00000775: DUP5 00000776: ADD 00000777: GT 00000778: PUSH5 0x0100000000 0000077e: DUP4 0000077f: GT 00000780: OR 00000781: ISZERO 00000782: PUSH2 0x078a 00000785: JUMPI 00000786: PUSH1 0x00 00000788: DUP1 00000789: REVERT 0000078a: JUMPDEST 0000078b: SWAP2 0000078c: SWAP1 0000078d: DUP1 0000078e: DUP1 0000078f: PUSH1 0x20 00000791: MUL 00000792: PUSH1 0x20 00000794: ADD 00000795: PUSH1 0x40 00000797: MLOAD 00000798: SWAP1 00000799: DUP2 0000079a: ADD 0000079b: PUSH1 0x40 0000079d: MSTORE 0000079e: DUP1 0000079f: SWAP4 000007a0: SWAP3 000007a1: SWAP2 000007a2: SWAP1 000007a3: DUP2 000007a4: DUP2 000007a5: MSTORE 000007a6: PUSH1 0x20 000007a8: ADD 000007a9: DUP4 000007aa: DUP4 000007ab: PUSH1 0x20 000007ad: MUL 000007ae: DUP1 000007af: DUP3 000007b0: DUP5 000007b1: CALLDATACOPY 000007b2: PUSH1 0x00 000007b4: DUP2 000007b5: DUP5 000007b6: ADD 000007b7: MSTORE 000007b8: PUSH1 0x1f 000007ba: NOT 000007bb: PUSH1 0x1f 000007bd: DUP3 000007be: ADD 000007bf: AND 000007c0: SWAP1 000007c1: POP 000007c2: DUP1 000007c3: DUP4 000007c4: ADD 000007c5: SWAP3 000007c6: POP 000007c7: POP 000007c8: POP 000007c9: POP 000007ca: POP 000007cb: POP 000007cc: POP 000007cd: SWAP2 000007ce: SWAP3 000007cf: SWAP2 000007d0: SWAP3 000007d1: SWAP1 000007d2: POP 000007d3: POP 000007d4: POP 000007d5: PUSH2 0x1485 000007d8: JUMP 000007d9: JUMPDEST 000007da: STOP 000007db: JUMPDEST 000007dc: CALLVALUE 000007dd: DUP1 000007de: ISZERO 000007df: PUSH2 0x07e7 000007e2: JUMPI 000007e3: PUSH1 0x00 000007e5: DUP1 000007e6: REVERT 000007e7: JUMPDEST 000007e8: POP 000007e9: PUSH2 0x07f0 000007ec: PUSH2 0x14c7 000007ef: JUMP 000007f0: JUMPDEST 000007f1: PUSH1 0x40 000007f3: MLOAD 000007f4: DUP1 000007f5: DUP3 000007f6: DUP2 000007f7: MSTORE 000007f8: PUSH1 0x20 000007fa: ADD 000007fb: SWAP2 000007fc: POP 000007fd: POP 000007fe: PUSH1 0x40 00000800: MLOAD 00000801: DUP1 00000802: SWAP2 00000803: SUB 00000804: SWAP1 00000805: RETURN 00000806: JUMPDEST 00000807: CALLVALUE 00000808: DUP1 00000809: ISZERO 0000080a: PUSH2 0x0812 0000080d: JUMPI 0000080e: PUSH1 0x00 00000810: DUP1 00000811: REVERT 00000812: JUMPDEST 00000813: POP 00000814: PUSH2 0x081b 00000817: PUSH2 0x14cd 0000081a: JUMP 0000081b: JUMPDEST 0000081c: STOP 0000081d: JUMPDEST 0000081e: CALLVALUE 0000081f: DUP1 00000820: ISZERO 00000821: PUSH2 0x0829 00000824: JUMPI 00000825: PUSH1 0x00 00000827: DUP1 00000828: REVERT 00000829: JUMPDEST 0000082a: POP 0000082b: PUSH2 0x0832 0000082e: PUSH2 0x1510 00000831: JUMP 00000832: JUMPDEST 00000833: PUSH1 0x40 00000835: MLOAD 00000836: DUP1 00000837: DUP3 00000838: DUP2 00000839: MSTORE 0000083a: PUSH1 0x20 0000083c: ADD 0000083d: SWAP2 0000083e: POP 0000083f: POP 00000840: PUSH1 0x40 00000842: MLOAD 00000843: DUP1 00000844: SWAP2 00000845: SUB 00000846: SWAP1 00000847: RETURN 00000848: JUMPDEST 00000849: CALLVALUE 0000084a: DUP1 0000084b: ISZERO 0000084c: PUSH2 0x0854 0000084f: JUMPI 00000850: PUSH1 0x00 00000852: DUP1 00000853: REVERT 00000854: JUMPDEST 00000855: POP 00000856: PUSH2 0x085d 00000859: PUSH2 0x1516 0000085c: JUMP 0000085d: JUMPDEST 0000085e: STOP 0000085f: JUMPDEST 00000860: CALLVALUE 00000861: DUP1 00000862: ISZERO 00000863: PUSH2 0x086b 00000866: JUMPI 00000867: PUSH1 0x00 00000869: DUP1 0000086a: REVERT 0000086b: JUMPDEST 0000086c: POP 0000086d: PUSH2 0x0874 00000870: PUSH2 0x166c 00000873: JUMP 00000874: JUMPDEST 00000875: PUSH1 0x40 00000877: MLOAD 00000878: DUP1 00000879: DUP3 0000087a: DUP2 0000087b: MSTORE 0000087c: PUSH1 0x20 0000087e: ADD 0000087f: SWAP2 00000880: POP 00000881: POP 00000882: PUSH1 0x40 00000884: MLOAD 00000885: DUP1 00000886: SWAP2 00000887: SUB 00000888: SWAP1 00000889: RETURN 0000088a: JUMPDEST 0000088b: CALLVALUE 0000088c: DUP1 0000088d: ISZERO 0000088e: PUSH2 0x0896 00000891: JUMPI 00000892: PUSH1 0x00 00000894: DUP1 00000895: REVERT 00000896: JUMPDEST 00000897: POP 00000898: PUSH2 0x089f 0000089b: PUSH2 0x1672 0000089e: JUMP 0000089f: JUMPDEST 000008a0: STOP 000008a1: JUMPDEST 000008a2: CALLVALUE 000008a3: DUP1 000008a4: ISZERO 000008a5: PUSH2 0x08ad 000008a8: JUMPI 000008a9: PUSH1 0x00 000008ab: DUP1 000008ac: REVERT 000008ad: JUMPDEST 000008ae: POP 000008af: PUSH2 0x08b6 000008b2: PUSH2 0x16c2 000008b5: JUMP 000008b6: JUMPDEST 000008b7: STOP 000008b8: JUMPDEST 000008b9: CALLVALUE 000008ba: DUP1 000008bb: ISZERO 000008bc: PUSH2 0x08c4 000008bf: JUMPI 000008c0: PUSH1 0x00 000008c2: DUP1 000008c3: REVERT 000008c4: JUMPDEST 000008c5: POP 000008c6: PUSH2 0x08cd 000008c9: PUSH2 0x18ad 000008cc: JUMP 000008cd: JUMPDEST 000008ce: PUSH1 0x40 000008d0: MLOAD 000008d1: DUP1 000008d2: DUP3 000008d3: ISZERO 000008d4: ISZERO 000008d5: DUP2 000008d6: MSTORE 000008d7: PUSH1 0x20 000008d9: ADD 000008da: SWAP2 000008db: POP 000008dc: POP 000008dd: PUSH1 0x40 000008df: MLOAD 000008e0: DUP1 000008e1: SWAP2 000008e2: SUB 000008e3: SWAP1 000008e4: RETURN 000008e5: JUMPDEST 000008e6: CALLVALUE 000008e7: DUP1 000008e8: ISZERO 000008e9: PUSH2 0x08f1 000008ec: JUMPI 000008ed: PUSH1 0x00 000008ef: DUP1 000008f0: REVERT 000008f1: JUMPDEST 000008f2: POP 000008f3: PUSH2 0x0934 000008f6: PUSH1 0x04 000008f8: DUP1 000008f9: CALLDATASIZE 000008fa: SUB 000008fb: PUSH1 0x20 000008fd: DUP2 000008fe: LT 000008ff: ISZERO 00000900: PUSH2 0x0908 00000903: JUMPI 00000904: PUSH1 0x00 00000906: DUP1 00000907: REVERT 00000908: JUMPDEST 00000909: DUP2 0000090a: ADD 0000090b: SWAP1 0000090c: DUP1 0000090d: DUP1 0000090e: CALLDATALOAD 0000090f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000924: AND 00000925: SWAP1 00000926: PUSH1 0x20 00000928: ADD 00000929: SWAP1 0000092a: SWAP3 0000092b: SWAP2 0000092c: SWAP1 0000092d: POP 0000092e: POP 0000092f: POP 00000930: PUSH2 0x18c0 00000933: JUMP 00000934: JUMPDEST 00000935: STOP 00000936: JUMPDEST 00000937: CALLVALUE 00000938: DUP1 00000939: ISZERO 0000093a: PUSH2 0x0942 0000093d: JUMPI 0000093e: PUSH1 0x00 00000940: DUP1 00000941: REVERT 00000942: JUMPDEST 00000943: POP 00000944: PUSH2 0x094b 00000947: PUSH2 0x1914 0000094a: JUMP 0000094b: JUMPDEST 0000094c: PUSH1 0x40 0000094e: MLOAD 0000094f: DUP1 00000950: DUP3 00000951: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000966: AND 00000967: DUP2 00000968: MSTORE 00000969: PUSH1 0x20 0000096b: ADD 0000096c: SWAP2 0000096d: POP 0000096e: POP 0000096f: PUSH1 0x40 00000971: MLOAD 00000972: DUP1 00000973: SWAP2 00000974: SUB 00000975: SWAP1 00000976: RETURN 00000977: JUMPDEST 00000978: CALLVALUE 00000979: DUP1 0000097a: ISZERO 0000097b: PUSH2 0x0983 0000097e: JUMPI 0000097f: PUSH1 0x00 00000981: DUP1 00000982: REVERT 00000983: JUMPDEST 00000984: POP 00000985: PUSH2 0x098c 00000988: PUSH2 0x193a 0000098b: JUMP 0000098c: JUMPDEST 0000098d: PUSH1 0x40 0000098f: MLOAD 00000990: DUP1 00000991: DUP3 00000992: DUP2 00000993: MSTORE 00000994: PUSH1 0x20 00000996: ADD 00000997: SWAP2 00000998: POP 00000999: POP 0000099a: PUSH1 0x40 0000099c: MLOAD 0000099d: DUP1 0000099e: SWAP2 0000099f: SUB 000009a0: SWAP1 000009a1: RETURN 000009a2: JUMPDEST 000009a3: CALLVALUE 000009a4: DUP1 000009a5: ISZERO 000009a6: PUSH2 0x09ae 000009a9: JUMPI 000009aa: PUSH1 0x00 000009ac: DUP1 000009ad: REVERT 000009ae: JUMPDEST 000009af: POP 000009b0: PUSH2 0x09b7 000009b3: PUSH2 0x1946 000009b6: JUMP 000009b7: JUMPDEST 000009b8: PUSH1 0x40 000009ba: MLOAD 000009bb: DUP1 000009bc: DUP3 000009bd: DUP2 000009be: MSTORE 000009bf: PUSH1 0x20 000009c1: ADD 000009c2: SWAP2 000009c3: POP 000009c4: POP 000009c5: PUSH1 0x40 000009c7: MLOAD 000009c8: DUP1 000009c9: SWAP2 000009ca: SUB 000009cb: SWAP1 000009cc: RETURN 000009cd: JUMPDEST 000009ce: CALLVALUE 000009cf: DUP1 000009d0: ISZERO 000009d1: PUSH2 0x09d9 000009d4: JUMPI 000009d5: PUSH1 0x00 000009d7: DUP1 000009d8: REVERT 000009d9: JUMPDEST 000009da: POP 000009db: PUSH2 0x0a10 000009de: PUSH1 0x04 000009e0: DUP1 000009e1: CALLDATASIZE 000009e2: SUB 000009e3: PUSH1 0x40 000009e5: DUP2 000009e6: LT 000009e7: ISZERO 000009e8: PUSH2 0x09f0 000009eb: JUMPI 000009ec: PUSH1 0x00 000009ee: DUP1 000009ef: REVERT 000009f0: JUMPDEST 000009f1: DUP2 000009f2: ADD 000009f3: SWAP1 000009f4: DUP1 000009f5: DUP1 000009f6: CALLDATALOAD 000009f7: SWAP1 000009f8: PUSH1 0x20 000009fa: ADD 000009fb: SWAP1 000009fc: SWAP3 000009fd: SWAP2 000009fe: SWAP1 000009ff: DUP1 00000a00: CALLDATALOAD 00000a01: SWAP1 00000a02: PUSH1 0x20 00000a04: ADD 00000a05: SWAP1 00000a06: SWAP3 00000a07: SWAP2 00000a08: SWAP1 00000a09: POP 00000a0a: POP 00000a0b: POP 00000a0c: PUSH2 0x194c 00000a0f: JUMP 00000a10: JUMPDEST 00000a11: STOP 00000a12: JUMPDEST 00000a13: CALLVALUE 00000a14: DUP1 00000a15: ISZERO 00000a16: PUSH2 0x0a1e 00000a19: JUMPI 00000a1a: PUSH1 0x00 00000a1c: DUP1 00000a1d: REVERT 00000a1e: JUMPDEST 00000a1f: POP 00000a20: PUSH2 0x0a27 00000a23: PUSH2 0x1978 00000a26: JUMP 00000a27: JUMPDEST 00000a28: PUSH1 0x40 00000a2a: MLOAD 00000a2b: DUP1 00000a2c: DUP3 00000a2d: DUP2 00000a2e: MSTORE 00000a2f: PUSH1 0x20 00000a31: ADD 00000a32: SWAP2 00000a33: POP 00000a34: POP 00000a35: PUSH1 0x40 00000a37: MLOAD 00000a38: DUP1 00000a39: SWAP2 00000a3a: SUB 00000a3b: SWAP1 00000a3c: RETURN 00000a3d: JUMPDEST 00000a3e: CALLVALUE 00000a3f: DUP1 00000a40: ISZERO 00000a41: PUSH2 0x0a49 00000a44: JUMPI 00000a45: PUSH1 0x00 00000a47: DUP1 00000a48: REVERT 00000a49: JUMPDEST 00000a4a: POP 00000a4b: PUSH2 0x0a52 00000a4e: PUSH2 0x197e 00000a51: JUMP 00000a52: JUMPDEST 00000a53: PUSH1 0x40 00000a55: MLOAD 00000a56: DUP1 00000a57: DUP3 00000a58: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a6d: AND 00000a6e: DUP2 00000a6f: MSTORE 00000a70: PUSH1 0x20 00000a72: ADD 00000a73: SWAP2 00000a74: POP 00000a75: POP 00000a76: PUSH1 0x40 00000a78: MLOAD 00000a79: DUP1 00000a7a: SWAP2 00000a7b: SUB 00000a7c: SWAP1 00000a7d: RETURN 00000a7e: JUMPDEST 00000a7f: CALLVALUE 00000a80: DUP1 00000a81: ISZERO 00000a82: PUSH2 0x0a8a 00000a85: JUMPI 00000a86: PUSH1 0x00 00000a88: DUP1 00000a89: REVERT 00000a8a: JUMPDEST 00000a8b: POP 00000a8c: PUSH2 0x0acd 00000a8f: PUSH1 0x04 00000a91: DUP1 00000a92: CALLDATASIZE 00000a93: SUB 00000a94: PUSH1 0x20 00000a96: DUP2 00000a97: LT 00000a98: ISZERO 00000a99: PUSH2 0x0aa1 00000a9c: JUMPI 00000a9d: PUSH1 0x00 00000a9f: DUP1 00000aa0: REVERT 00000aa1: JUMPDEST 00000aa2: DUP2 00000aa3: ADD 00000aa4: SWAP1 00000aa5: DUP1 00000aa6: DUP1 00000aa7: CALLDATALOAD 00000aa8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000abd: AND 00000abe: SWAP1 00000abf: PUSH1 0x20 00000ac1: ADD 00000ac2: SWAP1 00000ac3: SWAP3 00000ac4: SWAP2 00000ac5: SWAP1 00000ac6: POP 00000ac7: POP 00000ac8: POP 00000ac9: PUSH2 0x19a4 00000acc: JUMP 00000acd: JUMPDEST 00000ace: STOP 00000acf: JUMPDEST 00000ad0: CALLVALUE 00000ad1: DUP1 00000ad2: ISZERO 00000ad3: PUSH2 0x0adb 00000ad6: JUMPI 00000ad7: PUSH1 0x00 00000ad9: DUP1 00000ada: REVERT 00000adb: JUMPDEST 00000adc: POP 00000add: PUSH2 0x0b1e 00000ae0: PUSH1 0x04 00000ae2: DUP1 00000ae3: CALLDATASIZE 00000ae4: SUB 00000ae5: PUSH1 0x20 00000ae7: DUP2 00000ae8: LT 00000ae9: ISZERO 00000aea: PUSH2 0x0af2 00000aed: JUMPI 00000aee: PUSH1 0x00 00000af0: DUP1 00000af1: REVERT 00000af2: JUMPDEST 00000af3: DUP2 00000af4: ADD 00000af5: SWAP1 00000af6: DUP1 00000af7: DUP1 00000af8: CALLDATALOAD 00000af9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b0e: AND 00000b0f: SWAP1 00000b10: PUSH1 0x20 00000b12: ADD 00000b13: SWAP1 00000b14: SWAP3 00000b15: SWAP2 00000b16: SWAP1 00000b17: POP 00000b18: POP 00000b19: POP 00000b1a: PUSH2 0x19f8 00000b1d: JUMP 00000b1e: JUMPDEST 00000b1f: PUSH1 0x40 00000b21: MLOAD 00000b22: DUP1 00000b23: DUP3 00000b24: DUP2 00000b25: MSTORE 00000b26: PUSH1 0x20 00000b28: ADD 00000b29: SWAP2 00000b2a: POP 00000b2b: POP 00000b2c: PUSH1 0x40 00000b2e: MLOAD 00000b2f: DUP1 00000b30: SWAP2 00000b31: SUB 00000b32: SWAP1 00000b33: RETURN 00000b34: JUMPDEST 00000b35: CALLVALUE 00000b36: DUP1 00000b37: ISZERO 00000b38: PUSH2 0x0b40 00000b3b: JUMPI 00000b3c: PUSH1 0x00 00000b3e: DUP1 00000b3f: REVERT 00000b40: JUMPDEST 00000b41: POP 00000b42: PUSH2 0x0b49 00000b45: PUSH2 0x1a10 00000b48: JUMP 00000b49: JUMPDEST 00000b4a: STOP 00000b4b: JUMPDEST 00000b4c: CALLVALUE 00000b4d: DUP1 00000b4e: ISZERO 00000b4f: PUSH2 0x0b57 00000b52: JUMPI 00000b53: PUSH1 0x00 00000b55: DUP1 00000b56: REVERT 00000b57: JUMPDEST 00000b58: POP 00000b59: PUSH2 0x0b60 00000b5c: PUSH2 0x1c0a 00000b5f: JUMP 00000b60: JUMPDEST 00000b61: PUSH1 0x40 00000b63: MLOAD 00000b64: DUP1 00000b65: DUP3 00000b66: PUSH1 0x05 00000b68: DUP2 00000b69: GT 00000b6a: ISZERO 00000b6b: PUSH2 0x0b70 00000b6e: JUMPI 00000b6f: INVALID 00000b70: JUMPDEST 00000b71: DUP2 00000b72: MSTORE 00000b73: PUSH1 0x20 00000b75: ADD 00000b76: SWAP2 00000b77: POP 00000b78: POP 00000b79: PUSH1 0x40 00000b7b: MLOAD 00000b7c: DUP1 00000b7d: SWAP2 00000b7e: SUB 00000b7f: SWAP1 00000b80: RETURN 00000b81: JUMPDEST 00000b82: CALLVALUE 00000b83: DUP1 00000b84: ISZERO 00000b85: PUSH2 0x0b8d 00000b88: JUMPI 00000b89: PUSH1 0x00 00000b8b: DUP1 00000b8c: REVERT 00000b8d: JUMPDEST 00000b8e: POP 00000b8f: PUSH2 0x0b96 00000b92: PUSH2 0x1c1d 00000b95: JUMP 00000b96: JUMPDEST 00000b97: PUSH1 0x40 00000b99: MLOAD 00000b9a: DUP1 00000b9b: DUP3 00000b9c: DUP2 00000b9d: MSTORE 00000b9e: PUSH1 0x20 00000ba0: ADD 00000ba1: SWAP2 00000ba2: POP 00000ba3: POP 00000ba4: PUSH1 0x40 00000ba6: MLOAD 00000ba7: DUP1 00000ba8: SWAP2 00000ba9: SUB 00000baa: SWAP1 00000bab: RETURN 00000bac: JUMPDEST 00000bad: CALLVALUE 00000bae: DUP1 00000baf: ISZERO 00000bb0: PUSH2 0x0bb8 00000bb3: JUMPI 00000bb4: PUSH1 0x00 00000bb6: DUP1 00000bb7: REVERT 00000bb8: JUMPDEST 00000bb9: POP 00000bba: PUSH2 0x0bfb 00000bbd: PUSH1 0x04 00000bbf: DUP1 00000bc0: CALLDATASIZE 00000bc1: SUB 00000bc2: PUSH1 0x20 00000bc4: DUP2 00000bc5: LT 00000bc6: ISZERO 00000bc7: PUSH2 0x0bcf 00000bca: JUMPI 00000bcb: PUSH1 0x00 00000bcd: DUP1 00000bce: REVERT 00000bcf: JUMPDEST 00000bd0: DUP2 00000bd1: ADD 00000bd2: SWAP1 00000bd3: DUP1 00000bd4: DUP1 00000bd5: CALLDATALOAD 00000bd6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000beb: AND 00000bec: SWAP1 00000bed: PUSH1 0x20 00000bef: ADD 00000bf0: SWAP1 00000bf1: SWAP3 00000bf2: SWAP2 00000bf3: SWAP1 00000bf4: POP 00000bf5: POP 00000bf6: POP 00000bf7: PUSH2 0x1c23 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: STOP 00000bfd: JUMPDEST 00000bfe: CALLVALUE 00000bff: DUP1 00000c00: ISZERO 00000c01: PUSH2 0x0c09 00000c04: JUMPI 00000c05: PUSH1 0x00 00000c07: DUP1 00000c08: REVERT 00000c09: JUMPDEST 00000c0a: POP 00000c0b: PUSH2 0x0c12 00000c0e: PUSH2 0x1d46 00000c11: JUMP 00000c12: JUMPDEST 00000c13: PUSH1 0x40 00000c15: MLOAD 00000c16: DUP1 00000c17: DUP3 00000c18: DUP2 00000c19: MSTORE 00000c1a: PUSH1 0x20 00000c1c: ADD 00000c1d: SWAP2 00000c1e: POP 00000c1f: POP 00000c20: PUSH1 0x40 00000c22: MLOAD 00000c23: DUP1 00000c24: SWAP2 00000c25: SUB 00000c26: SWAP1 00000c27: RETURN 00000c28: JUMPDEST 00000c29: CALLVALUE 00000c2a: DUP1 00000c2b: ISZERO 00000c2c: PUSH2 0x0c34 00000c2f: JUMPI 00000c30: PUSH1 0x00 00000c32: DUP1 00000c33: REVERT 00000c34: JUMPDEST 00000c35: POP 00000c36: PUSH2 0x0c3d 00000c39: PUSH2 0x1d4c 00000c3c: JUMP 00000c3d: JUMPDEST 00000c3e: PUSH1 0x40 00000c40: MLOAD 00000c41: DUP1 00000c42: DUP3 00000c43: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c58: AND 00000c59: DUP2 00000c5a: MSTORE 00000c5b: PUSH1 0x20 00000c5d: ADD 00000c5e: SWAP2 00000c5f: POP 00000c60: POP 00000c61: PUSH1 0x40 00000c63: MLOAD 00000c64: DUP1 00000c65: SWAP2 00000c66: SUB 00000c67: SWAP1 00000c68: RETURN 00000c69: JUMPDEST 00000c6a: CALLVALUE 00000c6b: DUP1 00000c6c: ISZERO 00000c6d: PUSH2 0x0c75 00000c70: JUMPI 00000c71: PUSH1 0x00 00000c73: DUP1 00000c74: REVERT 00000c75: JUMPDEST 00000c76: POP 00000c77: PUSH2 0x0cb8 00000c7a: PUSH1 0x04 00000c7c: DUP1 00000c7d: CALLDATASIZE 00000c7e: SUB 00000c7f: PUSH1 0x20 00000c81: DUP2 00000c82: LT 00000c83: ISZERO 00000c84: PUSH2 0x0c8c 00000c87: JUMPI 00000c88: PUSH1 0x00 00000c8a: DUP1 00000c8b: REVERT 00000c8c: JUMPDEST 00000c8d: DUP2 00000c8e: ADD 00000c8f: SWAP1 00000c90: DUP1 00000c91: DUP1 00000c92: CALLDATALOAD 00000c93: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ca8: AND 00000ca9: SWAP1 00000caa: PUSH1 0x20 00000cac: ADD 00000cad: SWAP1 00000cae: SWAP3 00000caf: SWAP2 00000cb0: SWAP1 00000cb1: POP 00000cb2: POP 00000cb3: POP 00000cb4: PUSH2 0x1d72 00000cb7: JUMP 00000cb8: JUMPDEST 00000cb9: STOP 00000cba: JUMPDEST 00000cbb: CALLVALUE 00000cbc: DUP1 00000cbd: ISZERO 00000cbe: PUSH2 0x0cc6 00000cc1: JUMPI 00000cc2: PUSH1 0x00 00000cc4: DUP1 00000cc5: REVERT 00000cc6: JUMPDEST 00000cc7: POP 00000cc8: PUSH2 0x0ccf 00000ccb: PUSH2 0x1dc6 00000cce: JUMP 00000ccf: JUMPDEST 00000cd0: PUSH1 0x40 00000cd2: MLOAD 00000cd3: DUP1 00000cd4: DUP3 00000cd5: DUP2 00000cd6: MSTORE 00000cd7: PUSH1 0x20 00000cd9: ADD 00000cda: SWAP2 00000cdb: POP 00000cdc: POP 00000cdd: PUSH1 0x40 00000cdf: MLOAD 00000ce0: DUP1 00000ce1: SWAP2 00000ce2: SUB 00000ce3: SWAP1 00000ce4: RETURN 00000ce5: JUMPDEST 00000ce6: CALLVALUE 00000ce7: DUP1 00000ce8: ISZERO 00000ce9: PUSH2 0x0cf1 00000cec: JUMPI 00000ced: PUSH1 0x00 00000cef: DUP1 00000cf0: REVERT 00000cf1: JUMPDEST 00000cf2: POP 00000cf3: PUSH2 0x0cfa 00000cf6: PUSH2 0x1dcc 00000cf9: JUMP 00000cfa: JUMPDEST 00000cfb: PUSH1 0x40 00000cfd: MLOAD 00000cfe: DUP1 00000cff: DUP3 00000d00: DUP2 00000d01: MSTORE 00000d02: PUSH1 0x20 00000d04: ADD 00000d05: SWAP2 00000d06: POP 00000d07: POP 00000d08: PUSH1 0x40 00000d0a: MLOAD 00000d0b: DUP1 00000d0c: SWAP2 00000d0d: SUB 00000d0e: SWAP1 00000d0f: RETURN 00000d10: JUMPDEST 00000d11: CALLVALUE 00000d12: DUP1 00000d13: ISZERO 00000d14: PUSH2 0x0d1c 00000d17: JUMPI 00000d18: PUSH1 0x00 00000d1a: DUP1 00000d1b: REVERT 00000d1c: JUMPDEST 00000d1d: POP 00000d1e: PUSH2 0x0d49 00000d21: PUSH1 0x04 00000d23: DUP1 00000d24: CALLDATASIZE 00000d25: SUB 00000d26: PUSH1 0x20 00000d28: DUP2 00000d29: LT 00000d2a: ISZERO 00000d2b: PUSH2 0x0d33 00000d2e: JUMPI 00000d2f: PUSH1 0x00 00000d31: DUP1 00000d32: REVERT 00000d33: JUMPDEST 00000d34: DUP2 00000d35: ADD 00000d36: SWAP1 00000d37: DUP1 00000d38: DUP1 00000d39: CALLDATALOAD 00000d3a: SWAP1 00000d3b: PUSH1 0x20 00000d3d: ADD 00000d3e: SWAP1 00000d3f: SWAP3 00000d40: SWAP2 00000d41: SWAP1 00000d42: POP 00000d43: POP 00000d44: POP 00000d45: PUSH2 0x1dd2 00000d48: JUMP 00000d49: JUMPDEST 00000d4a: STOP 00000d4b: JUMPDEST 00000d4c: CALLVALUE 00000d4d: DUP1 00000d4e: ISZERO 00000d4f: PUSH2 0x0d57 00000d52: JUMPI 00000d53: PUSH1 0x00 00000d55: DUP1 00000d56: REVERT 00000d57: JUMPDEST 00000d58: POP 00000d59: PUSH2 0x0d84 00000d5c: PUSH1 0x04 00000d5e: DUP1 00000d5f: CALLDATASIZE 00000d60: SUB 00000d61: PUSH1 0x20 00000d63: DUP2 00000d64: LT 00000d65: ISZERO 00000d66: PUSH2 0x0d6e 00000d69: JUMPI 00000d6a: PUSH1 0x00 00000d6c: DUP1 00000d6d: REVERT 00000d6e: JUMPDEST 00000d6f: DUP2 00000d70: ADD 00000d71: SWAP1 00000d72: DUP1 00000d73: DUP1 00000d74: CALLDATALOAD 00000d75: SWAP1 00000d76: PUSH1 0x20 00000d78: ADD 00000d79: SWAP1 00000d7a: SWAP3 00000d7b: SWAP2 00000d7c: SWAP1 00000d7d: POP 00000d7e: POP 00000d7f: POP 00000d80: PUSH2 0x1dec 00000d83: JUMP 00000d84: JUMPDEST 00000d85: PUSH1 0x40 00000d87: MLOAD 00000d88: DUP1 00000d89: DUP3 00000d8a: DUP2 00000d8b: MSTORE 00000d8c: PUSH1 0x20 00000d8e: ADD 00000d8f: SWAP2 00000d90: POP 00000d91: POP 00000d92: PUSH1 0x40 00000d94: MLOAD 00000d95: DUP1 00000d96: SWAP2 00000d97: SUB 00000d98: SWAP1 00000d99: RETURN 00000d9a: JUMPDEST 00000d9b: CALLVALUE 00000d9c: DUP1 00000d9d: ISZERO 00000d9e: PUSH2 0x0da6 00000da1: JUMPI 00000da2: PUSH1 0x00 00000da4: DUP1 00000da5: REVERT 00000da6: JUMPDEST 00000da7: POP 00000da8: PUSH2 0x0daf 00000dab: PUSH2 0x1e0d 00000dae: JUMP 00000daf: JUMPDEST 00000db0: STOP 00000db1: JUMPDEST 00000db2: CALLVALUE 00000db3: DUP1 00000db4: ISZERO 00000db5: PUSH2 0x0dbd 00000db8: JUMPI 00000db9: PUSH1 0x00 00000dbb: DUP1 00000dbc: REVERT 00000dbd: JUMPDEST 00000dbe: POP 00000dbf: PUSH2 0x0e00 00000dc2: PUSH1 0x04 00000dc4: DUP1 00000dc5: CALLDATASIZE 00000dc6: SUB 00000dc7: PUSH1 0x20 00000dc9: DUP2 00000dca: LT 00000dcb: ISZERO 00000dcc: PUSH2 0x0dd4 00000dcf: JUMPI 00000dd0: PUSH1 0x00 00000dd2: DUP1 00000dd3: REVERT 00000dd4: JUMPDEST 00000dd5: DUP2 00000dd6: ADD 00000dd7: SWAP1 00000dd8: DUP1 00000dd9: DUP1 00000dda: CALLDATALOAD 00000ddb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000df0: AND 00000df1: SWAP1 00000df2: PUSH1 0x20 00000df4: ADD 00000df5: SWAP1 00000df6: SWAP3 00000df7: SWAP2 00000df8: SWAP1 00000df9: POP 00000dfa: POP 00000dfb: POP 00000dfc: PUSH2 0x2164 00000dff: JUMP 00000e00: JUMPDEST 00000e01: PUSH1 0x40 00000e03: MLOAD 00000e04: DUP1 00000e05: DUP3 00000e06: DUP2 00000e07: MSTORE 00000e08: PUSH1 0x20 00000e0a: ADD 00000e0b: SWAP2 00000e0c: POP 00000e0d: POP 00000e0e: PUSH1 0x40 00000e10: MLOAD 00000e11: DUP1 00000e12: SWAP2 00000e13: SUB 00000e14: SWAP1 00000e15: RETURN 00000e16: JUMPDEST 00000e17: CALLVALUE 00000e18: DUP1 00000e19: ISZERO 00000e1a: PUSH2 0x0e22 00000e1d: JUMPI 00000e1e: PUSH1 0x00 00000e20: DUP1 00000e21: REVERT 00000e22: JUMPDEST 00000e23: POP 00000e24: PUSH2 0x0e6f 00000e27: PUSH1 0x04 00000e29: DUP1 00000e2a: CALLDATASIZE 00000e2b: SUB 00000e2c: PUSH1 0x40 00000e2e: DUP2 00000e2f: LT 00000e30: ISZERO 00000e31: PUSH2 0x0e39 00000e34: JUMPI 00000e35: PUSH1 0x00 00000e37: DUP1 00000e38: REVERT 00000e39: JUMPDEST 00000e3a: DUP2 00000e3b: ADD 00000e3c: SWAP1 00000e3d: DUP1 00000e3e: DUP1 00000e3f: CALLDATALOAD 00000e40: SWAP1 00000e41: PUSH1 0x20 00000e43: ADD 00000e44: SWAP1 00000e45: SWAP3 00000e46: SWAP2 00000e47: SWAP1 00000e48: DUP1 00000e49: CALLDATALOAD 00000e4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e5f: AND 00000e60: SWAP1 00000e61: PUSH1 0x20 00000e63: ADD 00000e64: SWAP1 00000e65: SWAP3 00000e66: SWAP2 00000e67: SWAP1 00000e68: POP 00000e69: POP 00000e6a: POP 00000e6b: PUSH2 0x217c 00000e6e: JUMP 00000e6f: JUMPDEST 00000e70: STOP 00000e71: JUMPDEST 00000e72: CALLVALUE 00000e73: DUP1 00000e74: ISZERO 00000e75: PUSH2 0x0e7d 00000e78: JUMPI 00000e79: PUSH1 0x00 00000e7b: DUP1 00000e7c: REVERT 00000e7d: JUMPDEST 00000e7e: POP 00000e7f: PUSH2 0x0e86 00000e82: PUSH2 0x2297 00000e85: JUMP 00000e86: JUMPDEST 00000e87: PUSH1 0x40 00000e89: MLOAD 00000e8a: DUP1 00000e8b: DUP3 00000e8c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ea1: AND 00000ea2: DUP2 00000ea3: MSTORE 00000ea4: PUSH1 0x20 00000ea6: ADD 00000ea7: SWAP2 00000ea8: POP 00000ea9: POP 00000eaa: PUSH1 0x40 00000eac: MLOAD 00000ead: DUP1 00000eae: SWAP2 00000eaf: SUB 00000eb0: SWAP1 00000eb1: RETURN 00000eb2: JUMPDEST 00000eb3: CALLVALUE 00000eb4: DUP1 00000eb5: ISZERO 00000eb6: PUSH2 0x0ebe 00000eb9: JUMPI 00000eba: PUSH1 0x00 00000ebc: DUP1 00000ebd: REVERT 00000ebe: JUMPDEST 00000ebf: POP 00000ec0: PUSH2 0x0ec7 00000ec3: PUSH2 0x22bd 00000ec6: JUMP 00000ec7: JUMPDEST 00000ec8: PUSH1 0x40 00000eca: MLOAD 00000ecb: DUP1 00000ecc: DUP3 00000ecd: PUSH1 0x05 00000ecf: DUP2 00000ed0: GT 00000ed1: ISZERO 00000ed2: PUSH2 0x0ed7 00000ed5: JUMPI 00000ed6: INVALID 00000ed7: JUMPDEST 00000ed8: DUP2 00000ed9: MSTORE 00000eda: PUSH1 0x20 00000edc: ADD 00000edd: SWAP2 00000ede: POP 00000edf: POP 00000ee0: PUSH1 0x40 00000ee2: MLOAD 00000ee3: DUP1 00000ee4: SWAP2 00000ee5: SUB 00000ee6: SWAP1 00000ee7: RETURN 00000ee8: JUMPDEST 00000ee9: CALLVALUE 00000eea: DUP1 00000eeb: ISZERO 00000eec: PUSH2 0x0ef4 00000eef: JUMPI 00000ef0: PUSH1 0x00 00000ef2: DUP1 00000ef3: REVERT 00000ef4: JUMPDEST 00000ef5: POP 00000ef6: PUSH2 0x0f21 00000ef9: PUSH1 0x04 00000efb: DUP1 00000efc: CALLDATASIZE 00000efd: SUB 00000efe: PUSH1 0x20 00000f00: DUP2 00000f01: LT 00000f02: ISZERO 00000f03: PUSH2 0x0f0b 00000f06: JUMPI 00000f07: PUSH1 0x00 00000f09: DUP1 00000f0a: REVERT 00000f0b: JUMPDEST 00000f0c: DUP2 00000f0d: ADD 00000f0e: SWAP1 00000f0f: DUP1 00000f10: DUP1 00000f11: CALLDATALOAD 00000f12: SWAP1 00000f13: PUSH1 0x20 00000f15: ADD 00000f16: SWAP1 00000f17: SWAP3 00000f18: SWAP2 00000f19: SWAP1 00000f1a: POP 00000f1b: POP 00000f1c: POP 00000f1d: PUSH2 0x22ce 00000f20: JUMP 00000f21: JUMPDEST 00000f22: STOP 00000f23: JUMPDEST 00000f24: CALLVALUE 00000f25: DUP1 00000f26: ISZERO 00000f27: PUSH2 0x0f2f 00000f2a: JUMPI 00000f2b: PUSH1 0x00 00000f2d: DUP1 00000f2e: REVERT 00000f2f: JUMPDEST 00000f30: POP 00000f31: PUSH2 0x0f38 00000f34: PUSH2 0x22e8 00000f37: JUMP 00000f38: JUMPDEST 00000f39: PUSH1 0x40 00000f3b: MLOAD 00000f3c: DUP1 00000f3d: DUP3 00000f3e: DUP2 00000f3f: MSTORE 00000f40: PUSH1 0x20 00000f42: ADD 00000f43: SWAP2 00000f44: POP 00000f45: POP 00000f46: PUSH1 0x40 00000f48: MLOAD 00000f49: DUP1 00000f4a: SWAP2 00000f4b: SUB 00000f4c: SWAP1 00000f4d: RETURN 00000f4e: JUMPDEST 00000f4f: CALLVALUE 00000f50: DUP1 00000f51: ISZERO 00000f52: PUSH2 0x0f5a 00000f55: JUMPI 00000f56: PUSH1 0x00 00000f58: DUP1 00000f59: REVERT 00000f5a: JUMPDEST 00000f5b: POP 00000f5c: PUSH2 0x0f9d 00000f5f: PUSH1 0x04 00000f61: DUP1 00000f62: CALLDATASIZE 00000f63: SUB 00000f64: PUSH1 0x20 00000f66: DUP2 00000f67: LT 00000f68: ISZERO 00000f69: PUSH2 0x0f71 00000f6c: JUMPI 00000f6d: PUSH1 0x00 00000f6f: DUP1 00000f70: REVERT 00000f71: JUMPDEST 00000f72: DUP2 00000f73: ADD 00000f74: SWAP1 00000f75: DUP1 00000f76: DUP1 00000f77: CALLDATALOAD 00000f78: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f8d: AND 00000f8e: SWAP1 00000f8f: PUSH1 0x20 00000f91: ADD 00000f92: SWAP1 00000f93: SWAP3 00000f94: SWAP2 00000f95: SWAP1 00000f96: POP 00000f97: POP 00000f98: POP 00000f99: PUSH2 0x22ee 00000f9c: JUMP 00000f9d: JUMPDEST 00000f9e: STOP 00000f9f: JUMPDEST 00000fa0: CALLVALUE 00000fa1: DUP1 00000fa2: ISZERO 00000fa3: PUSH2 0x0fab 00000fa6: JUMPI 00000fa7: PUSH1 0x00 00000fa9: DUP1 00000faa: REVERT 00000fab: JUMPDEST 00000fac: POP 00000fad: PUSH2 0x0fd8 00000fb0: PUSH1 0x04 00000fb2: DUP1 00000fb3: CALLDATASIZE 00000fb4: SUB 00000fb5: PUSH1 0x20 00000fb7: DUP2 00000fb8: LT 00000fb9: ISZERO 00000fba: PUSH2 0x0fc2 00000fbd: JUMPI 00000fbe: PUSH1 0x00 00000fc0: DUP1 00000fc1: REVERT 00000fc2: JUMPDEST 00000fc3: DUP2 00000fc4: ADD 00000fc5: SWAP1 00000fc6: DUP1 00000fc7: DUP1 00000fc8: CALLDATALOAD 00000fc9: SWAP1 00000fca: PUSH1 0x20 00000fcc: ADD 00000fcd: SWAP1 00000fce: SWAP3 00000fcf: SWAP2 00000fd0: SWAP1 00000fd1: POP 00000fd2: POP 00000fd3: POP 00000fd4: PUSH2 0x233a 00000fd7: JUMP 00000fd8: JUMPDEST 00000fd9: PUSH1 0x40 00000fdb: MLOAD 00000fdc: DUP1 00000fdd: DUP3 00000fde: DUP2 00000fdf: MSTORE 00000fe0: PUSH1 0x20 00000fe2: ADD 00000fe3: SWAP2 00000fe4: POP 00000fe5: POP 00000fe6: PUSH1 0x40 00000fe8: MLOAD 00000fe9: DUP1 00000fea: SWAP2 00000feb: SUB 00000fec: SWAP1 00000fed: RETURN 00000fee: JUMPDEST 00000fef: PUSH2 0x0ff6 00000ff2: PUSH2 0x235b 00000ff5: JUMP 00000ff6: JUMPDEST 00000ff7: STOP 00000ff8: JUMPDEST 00000ff9: CALLVALUE 00000ffa: DUP1 00000ffb: ISZERO 00000ffc: PUSH2 0x1004 00000fff: JUMPI 00001000: PUSH1 0x00 00001002: DUP1 00001003: REVERT 00001004: JUMPDEST 00001005: POP 00001006: PUSH2 0x1047 00001009: PUSH1 0x04 0000100b: DUP1 0000100c: CALLDATASIZE 0000100d: SUB 0000100e: PUSH1 0x20 00001010: DUP2 00001011: LT 00001012: ISZERO 00001013: PUSH2 0x101b 00001016: JUMPI 00001017: PUSH1 0x00 00001019: DUP1 0000101a: REVERT 0000101b: JUMPDEST 0000101c: DUP2 0000101d: ADD 0000101e: SWAP1 0000101f: DUP1 00001020: DUP1 00001021: CALLDATALOAD 00001022: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001037: AND 00001038: SWAP1 00001039: PUSH1 0x20 0000103b: ADD 0000103c: SWAP1 0000103d: SWAP3 0000103e: SWAP2 0000103f: SWAP1 00001040: POP 00001041: POP 00001042: POP 00001043: PUSH2 0x2675 00001046: JUMP 00001047: JUMPDEST 00001048: STOP 00001049: JUMPDEST 0000104a: CALLVALUE 0000104b: DUP1 0000104c: ISZERO 0000104d: PUSH2 0x1055 00001050: JUMPI 00001051: PUSH1 0x00 00001053: DUP1 00001054: REVERT 00001055: JUMPDEST 00001056: POP 00001057: PUSH2 0x1082 0000105a: PUSH1 0x04 0000105c: DUP1 0000105d: CALLDATASIZE 0000105e: SUB 0000105f: PUSH1 0x20 00001061: DUP2 00001062: LT 00001063: ISZERO 00001064: PUSH2 0x106c 00001067: JUMPI 00001068: PUSH1 0x00 0000106a: DUP1 0000106b: REVERT 0000106c: JUMPDEST 0000106d: DUP2 0000106e: ADD 0000106f: SWAP1 00001070: DUP1 00001071: DUP1 00001072: CALLDATALOAD 00001073: SWAP1 00001074: PUSH1 0x20 00001076: ADD 00001077: SWAP1 00001078: SWAP3 00001079: SWAP2 0000107a: SWAP1 0000107b: POP 0000107c: POP 0000107d: POP 0000107e: PUSH2 0x26c1 00001081: JUMP 00001082: JUMPDEST 00001083: STOP 00001084: JUMPDEST 00001085: CALLVALUE 00001086: DUP1 00001087: ISZERO 00001088: PUSH2 0x1090 0000108b: JUMPI 0000108c: PUSH1 0x00 0000108e: DUP1 0000108f: REVERT 00001090: JUMPDEST 00001091: POP 00001092: PUSH2 0x1099 00001095: PUSH2 0x26e4 00001098: JUMP 00001099: JUMPDEST 0000109a: STOP 0000109b: JUMPDEST 0000109c: CALLVALUE 0000109d: DUP1 0000109e: ISZERO 0000109f: PUSH2 0x10a7 000010a2: JUMPI 000010a3: PUSH1 0x00 000010a5: DUP1 000010a6: REVERT 000010a7: JUMPDEST 000010a8: POP 000010a9: PUSH2 0x10ea 000010ac: PUSH1 0x04 000010ae: DUP1 000010af: CALLDATASIZE 000010b0: SUB 000010b1: PUSH1 0x20 000010b3: DUP2 000010b4: LT 000010b5: ISZERO 000010b6: PUSH2 0x10be 000010b9: JUMPI 000010ba: PUSH1 0x00 000010bc: DUP1 000010bd: REVERT 000010be: JUMPDEST 000010bf: DUP2 000010c0: ADD 000010c1: SWAP1 000010c2: DUP1 000010c3: DUP1 000010c4: CALLDATALOAD 000010c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010da: AND 000010db: SWAP1 000010dc: PUSH1 0x20 000010de: ADD 000010df: SWAP1 000010e0: SWAP3 000010e1: SWAP2 000010e2: SWAP1 000010e3: POP 000010e4: POP 000010e5: POP 000010e6: PUSH2 0x275f 000010e9: JUMP 000010ea: JUMPDEST 000010eb: STOP 000010ec: JUMPDEST 000010ed: CALLVALUE 000010ee: DUP1 000010ef: ISZERO 000010f0: PUSH2 0x10f8 000010f3: JUMPI 000010f4: PUSH1 0x00 000010f6: DUP1 000010f7: REVERT 000010f8: JUMPDEST 000010f9: POP 000010fa: PUSH2 0x1101 000010fd: PUSH2 0x27b3 00001100: JUMP 00001101: JUMPDEST 00001102: STOP 00001103: JUMPDEST 00001104: CALLVALUE 00001105: DUP1 00001106: ISZERO 00001107: PUSH2 0x110f 0000110a: JUMPI 0000110b: PUSH1 0x00 0000110d: DUP1 0000110e: REVERT 0000110f: JUMPDEST 00001110: POP 00001111: PUSH2 0x1118 00001114: PUSH2 0x2979 00001117: JUMP 00001118: JUMPDEST 00001119: PUSH1 0x40 0000111b: MLOAD 0000111c: DUP1 0000111d: DUP3 0000111e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001133: AND 00001134: DUP2 00001135: MSTORE 00001136: PUSH1 0x20 00001138: ADD 00001139: SWAP2 0000113a: POP 0000113b: POP 0000113c: PUSH1 0x40 0000113e: MLOAD 0000113f: DUP1 00001140: SWAP2 00001141: SUB 00001142: SWAP1 00001143: RETURN 00001144: JUMPDEST 00001145: CALLVALUE 00001146: DUP1 00001147: ISZERO 00001148: PUSH2 0x1150 0000114b: JUMPI 0000114c: PUSH1 0x00 0000114e: DUP1 0000114f: REVERT 00001150: JUMPDEST 00001151: POP 00001152: PUSH2 0x117d 00001155: PUSH1 0x04 00001157: DUP1 00001158: CALLDATASIZE 00001159: SUB 0000115a: PUSH1 0x20 0000115c: DUP2 0000115d: LT 0000115e: ISZERO 0000115f: PUSH2 0x1167 00001162: JUMPI 00001163: PUSH1 0x00 00001165: DUP1 00001166: REVERT 00001167: JUMPDEST 00001168: DUP2 00001169: ADD 0000116a: SWAP1 0000116b: DUP1 0000116c: DUP1 0000116d: CALLDATALOAD 0000116e: SWAP1 0000116f: PUSH1 0x20 00001171: ADD 00001172: SWAP1 00001173: SWAP3 00001174: SWAP2 00001175: SWAP1 00001176: POP 00001177: POP 00001178: POP 00001179: PUSH2 0x299f 0000117c: JUMP 0000117d: JUMPDEST 0000117e: STOP 0000117f: JUMPDEST 00001180: CALLVALUE 00001181: DUP1 00001182: ISZERO 00001183: PUSH2 0x118b 00001186: JUMPI 00001187: PUSH1 0x00 00001189: DUP1 0000118a: REVERT 0000118b: JUMPDEST 0000118c: POP 0000118d: PUSH2 0x1194 00001190: PUSH2 0x29ea 00001193: JUMP 00001194: JUMPDEST 00001195: PUSH1 0x40 00001197: MLOAD 00001198: DUP1 00001199: DUP3 0000119a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011af: AND 000011b0: DUP2 000011b1: MSTORE 000011b2: PUSH1 0x20 000011b4: ADD 000011b5: SWAP2 000011b6: POP 000011b7: POP 000011b8: PUSH1 0x40 000011ba: MLOAD 000011bb: DUP1 000011bc: SWAP2 000011bd: SUB 000011be: SWAP1 000011bf: RETURN 000011c0: JUMPDEST 000011c1: CALLVALUE 000011c2: DUP1 000011c3: ISZERO 000011c4: PUSH2 0x11cc 000011c7: JUMPI 000011c8: PUSH1 0x00 000011ca: DUP1 000011cb: REVERT 000011cc: JUMPDEST 000011cd: POP 000011ce: PUSH2 0x11d5 000011d1: PUSH2 0x2a10 000011d4: JUMP 000011d5: JUMPDEST 000011d6: STOP 000011d7: JUMPDEST 000011d8: CALLVALUE 000011d9: DUP1 000011da: ISZERO 000011db: PUSH2 0x11e3 000011de: JUMPI 000011df: PUSH1 0x00 000011e1: DUP1 000011e2: REVERT 000011e3: JUMPDEST 000011e4: POP 000011e5: PUSH2 0x11ec 000011e8: PUSH2 0x2b38 000011eb: JUMP 000011ec: JUMPDEST 000011ed: STOP 000011ee: JUMPDEST 000011ef: CALLVALUE 000011f0: DUP1 000011f1: ISZERO 000011f2: PUSH2 0x11fa 000011f5: JUMPI 000011f6: PUSH1 0x00 000011f8: DUP1 000011f9: REVERT 000011fa: JUMPDEST 000011fb: POP 000011fc: PUSH2 0x1203 000011ff: PUSH2 0x2c60 00001202: JUMP 00001203: JUMPDEST 00001204: STOP 00001205: JUMPDEST 00001206: CALLVALUE 00001207: DUP1 00001208: ISZERO 00001209: PUSH2 0x1211 0000120c: JUMPI 0000120d: PUSH1 0x00 0000120f: DUP1 00001210: REVERT 00001211: JUMPDEST 00001212: POP 00001213: PUSH2 0x121a 00001216: PUSH2 0x2e54 00001219: JUMP 0000121a: JUMPDEST 0000121b: PUSH1 0x40 0000121d: MLOAD 0000121e: DUP1 0000121f: DUP3 00001220: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001235: AND 00001236: DUP2 00001237: MSTORE 00001238: PUSH1 0x20 0000123a: ADD 0000123b: SWAP2 0000123c: POP 0000123d: POP 0000123e: PUSH1 0x40 00001240: MLOAD 00001241: DUP1 00001242: SWAP2 00001243: SUB 00001244: SWAP1 00001245: RETURN 00001246: JUMPDEST 00001247: CALLVALUE 00001248: DUP1 00001249: ISZERO 0000124a: PUSH2 0x1252 0000124d: JUMPI 0000124e: PUSH1 0x00 00001250: DUP1 00001251: REVERT 00001252: JUMPDEST 00001253: POP 00001254: PUSH2 0x125b 00001257: PUSH2 0x2e7a 0000125a: JUMP 0000125b: JUMPDEST 0000125c: PUSH1 0x40 0000125e: MLOAD 0000125f: DUP1 00001260: DUP3 00001261: DUP2 00001262: MSTORE 00001263: PUSH1 0x20 00001265: ADD 00001266: SWAP2 00001267: POP 00001268: POP 00001269: PUSH1 0x40 0000126b: MLOAD 0000126c: DUP1 0000126d: SWAP2 0000126e: SUB 0000126f: SWAP1 00001270: RETURN 00001271: JUMPDEST 00001272: PUSH2 0x1279 00001275: PUSH2 0x2f03 00001278: JUMP 00001279: JUMPDEST 0000127a: PUSH2 0x1281 0000127d: PUSH2 0x2fc8 00001280: JUMP 00001281: JUMPDEST 00001282: DUP1 00001283: PUSH1 0x14 00001285: DUP2 00001286: SWAP1 00001287: SSTORE 00001288: POP 00001289: POP 0000128a: JUMP 0000128b: JUMPDEST 0000128c: PUSH1 0x00 0000128e: PUSH1 0x02 00001290: SWAP1 00001291: SLOAD 00001292: SWAP1 00001293: PUSH2 0x0100 00001296: EXP 00001297: SWAP1 00001298: DIV 00001299: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012ae: AND 000012af: DUP2 000012b0: JUMP 000012b1: JUMPDEST 000012b2: PUSH2 0x12b9 000012b5: PUSH2 0x2f03 000012b8: JUMP 000012b9: JUMPDEST 000012ba: PUSH2 0x12c1 000012bd: PUSH2 0x2fc8 000012c0: JUMP 000012c1: JUMPDEST 000012c2: PUSH2 0x12f2 000012c5: PUSH8 0x0de0b6b3a7640000 000012ce: PUSH2 0x12e4 000012d1: PUSH1 0x1b 000012d3: SLOAD 000012d4: PUSH1 0x06 000012d6: SLOAD 000012d7: PUSH2 0x3063 000012da: SWAP1 000012db: SWAP2 000012dc: SWAP1 000012dd: PUSH4 0xffffffff 000012e2: AND 000012e3: JUMP 000012e4: JUMPDEST 000012e5: PUSH2 0x30e9 000012e8: SWAP1 000012e9: SWAP2 000012ea: SWAP1 000012eb: PUSH4 0xffffffff 000012f0: AND 000012f1: JUMP 000012f2: JUMPDEST 000012f3: PUSH1 0x11 000012f5: DUP2 000012f6: SWAP1 000012f7: SSTORE 000012f8: POP 000012f9: PUSH2 0x1300 000012fc: PUSH2 0x3172 000012ff: JUMP 00001300: JUMPDEST 00001301: JUMP 00001302: JUMPDEST 00001303: PUSH2 0x130a 00001306: PUSH2 0x3375 00001309: JUMP 0000130a: JUMPDEST 0000130b: PUSH2 0x1312 0000130e: PUSH2 0x343a 00001311: JUMP 00001312: JUMPDEST 00001313: PUSH1 0x13 00001315: PUSH1 0x14 00001317: SWAP1 00001318: SLOAD 00001319: SWAP1 0000131a: PUSH2 0x0100 0000131d: EXP 0000131e: SWAP1 0000131f: DIV 00001320: PUSH1 0xff 00001322: AND 00001323: PUSH2 0x13d9 00001326: JUMPI 00001327: PUSH1 0x00 00001329: PUSH2 0x1353 0000132c: PUSH1 0x11 0000132e: SLOAD 0000132f: PUSH2 0x1345 00001332: PUSH1 0x0b 00001334: SLOAD 00001335: PUSH1 0x12 00001337: SLOAD 00001338: PUSH2 0x3063 0000133b: SWAP1 0000133c: SWAP2 0000133d: SWAP1 0000133e: PUSH4 0xffffffff 00001343: AND 00001344: JUMP 00001345: JUMPDEST 00001346: PUSH2 0x30e9 00001349: SWAP1 0000134a: SWAP2 0000134b: SWAP1 0000134c: PUSH4 0xffffffff 00001351: AND 00001352: JUMP 00001353: JUMPDEST 00001354: SWAP1 00001355: POP 00001356: PUSH1 0x00 00001358: PUSH2 0x136c 0000135b: DUP3 0000135c: PUSH1 0x12 0000135e: SLOAD 0000135f: PUSH2 0x2e80 00001362: SWAP1 00001363: SWAP2 00001364: SWAP1 00001365: PUSH4 0xffffffff 0000136a: AND 0000136b: JUMP 0000136c: JUMPDEST 0000136d: SWAP1 0000136e: POP 0000136f: PUSH1 0x01 00001371: PUSH1 0x13 00001373: PUSH1 0x14 00001375: PUSH2 0x0100 00001378: EXP 00001379: DUP2 0000137a: SLOAD 0000137b: DUP2 0000137c: PUSH1 0xff 0000137e: MUL 0000137f: NOT 00001380: AND 00001381: SWAP1 00001382: DUP4 00001383: ISZERO 00001384: ISZERO 00001385: MUL 00001386: OR 00001387: SWAP1 00001388: SSTORE 00001389: POP 0000138a: PUSH2 0x13d6 0000138d: DUP4 0000138e: DUP3 0000138f: PUSH1 0x13 00001391: PUSH1 0x00 00001393: SWAP1 00001394: SLOAD 00001395: SWAP1 00001396: PUSH2 0x0100 00001399: EXP 0000139a: SWAP1 0000139b: DIV 0000139c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013b1: AND 000013b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013c7: AND 000013c8: PUSH2 0x34d5 000013cb: SWAP1 000013cc: SWAP3 000013cd: SWAP2 000013ce: SWAP1 000013cf: PUSH4 0xffffffff 000013d4: AND 000013d5: JUMP 000013d6: JUMPDEST 000013d7: POP 000013d8: POP 000013d9: JUMPDEST 000013da: POP 000013db: JUMP 000013dc: JUMPDEST 000013dd: PUSH2 0x13e4 000013e0: PUSH2 0x2f03 000013e3: JUMP 000013e4: JUMPDEST 000013e5: PUSH2 0x13ec 000013e8: PUSH2 0x2fc8 000013eb: JUMP 000013ec: JUMPDEST 000013ed: DUP1 000013ee: PUSH1 0x06 000013f0: DUP2 000013f1: SWAP1 000013f2: SSTORE 000013f3: POP 000013f4: DUP1 000013f5: PUSH1 0x0d 000013f7: DUP2 000013f8: SWAP1 000013f9: SSTORE 000013fa: POP 000013fb: POP 000013fc: JUMP 000013fd: JUMPDEST 000013fe: PUSH1 0x02 00001400: PUSH1 0x00 00001402: SWAP1 00001403: SLOAD 00001404: SWAP1 00001405: PUSH2 0x0100 00001408: EXP 00001409: SWAP1 0000140a: DIV 0000140b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001420: AND 00001421: DUP2 00001422: JUMP 00001423: JUMPDEST 00001424: PUSH1 0x10 00001426: SLOAD 00001427: DUP2 00001428: JUMP 00001429: JUMPDEST 0000142a: PUSH1 0x06 0000142c: SLOAD 0000142d: DUP2 0000142e: JUMP 0000142f: JUMPDEST 00001430: PUSH2 0x1437 00001433: PUSH2 0x3375 00001436: JUMP 00001437: JUMPDEST 00001438: PUSH2 0x143f 0000143b: PUSH2 0x3577 0000143e: JUMP 0000143f: JUMPDEST 00001440: PUSH1 0x04 00001442: PUSH1 0x00 00001444: DUP1 00001445: PUSH2 0x0100 00001448: EXP 00001449: DUP2 0000144a: SLOAD 0000144b: DUP2 0000144c: PUSH1 0xff 0000144e: MUL 0000144f: NOT 00001450: AND 00001451: SWAP1 00001452: DUP4 00001453: PUSH1 0x05 00001455: DUP2 00001456: GT 00001457: ISZERO 00001458: PUSH2 0x145d 0000145b: JUMPI 0000145c: INVALID 0000145d: JUMPDEST 0000145e: MUL 0000145f: OR 00001460: SWAP1 00001461: SSTORE 00001462: POP 00001463: JUMP 00001464: JUMPDEST 00001465: PUSH2 0x0e10 00001468: DUP2 00001469: JUMP 0000146a: JUMPDEST 0000146b: PUSH1 0x0a 0000146d: DUP2 0000146e: JUMP 0000146f: JUMPDEST 00001470: PUSH1 0x08 00001472: SLOAD 00001473: DUP2 00001474: JUMP 00001475: JUMPDEST 00001476: PUSH6 0x5af3107a4000 0000147d: DUP2 0000147e: JUMP 0000147f: JUMPDEST 00001480: PUSH1 0x0e 00001482: SLOAD 00001483: DUP2 00001484: JUMP 00001485: JUMPDEST 00001486: PUSH2 0x148d 00001489: PUSH2 0x3375 0000148c: JUMP 0000148d: JUMPDEST 0000148e: PUSH2 0x1495 00001491: PUSH2 0x2fc8 00001494: JUMP 00001495: JUMPDEST 00001496: DUP1 00001497: PUSH1 0x0f 00001499: SWAP1 0000149a: DUP1 0000149b: MLOAD 0000149c: SWAP1 0000149d: PUSH1 0x20 0000149f: ADD 000014a0: SWAP1 000014a1: PUSH2 0x14ab 000014a4: SWAP3 000014a5: SWAP2 000014a6: SWAP1 000014a7: PUSH2 0x4558 000014aa: JUMP 000014ab: JUMPDEST 000014ac: POP 000014ad: DUP2 000014ae: PUSH1 0x16 000014b0: SWAP1 000014b1: DUP1 000014b2: MLOAD 000014b3: SWAP1 000014b4: PUSH1 0x20 000014b6: ADD 000014b7: SWAP1 000014b8: PUSH2 0x14c2 000014bb: SWAP3 000014bc: SWAP2 000014bd: SWAP1 000014be: PUSH2 0x4558 000014c1: JUMP 000014c2: JUMPDEST 000014c3: POP 000014c4: POP 000014c5: POP 000014c6: JUMP 000014c7: JUMPDEST 000014c8: PUSH1 0x0d 000014ca: SLOAD 000014cb: DUP2 000014cc: JUMP 000014cd: JUMPDEST 000014ce: PUSH2 0x14d5 000014d1: PUSH2 0x3375 000014d4: JUMP 000014d5: JUMPDEST 000014d6: PUSH2 0x14dd 000014d9: PUSH2 0x3577 000014dc: JUMP 000014dd: JUMPDEST 000014de: PUSH1 0x00 000014e0: PUSH1 0x01 000014e2: SWAP1 000014e3: SLOAD 000014e4: SWAP1 000014e5: PUSH2 0x0100 000014e8: EXP 000014e9: SWAP1 000014ea: DIV 000014eb: PUSH1 0xff 000014ed: AND 000014ee: PUSH1 0x00 000014f0: DUP1 000014f1: PUSH2 0x0100 000014f4: EXP 000014f5: DUP2 000014f6: SLOAD 000014f7: DUP2 000014f8: PUSH1 0xff 000014fa: MUL 000014fb: NOT 000014fc: AND 000014fd: SWAP1 000014fe: DUP4 000014ff: PUSH1 0x05 00001501: DUP2 00001502: GT 00001503: ISZERO 00001504: PUSH2 0x1509 00001507: JUMPI 00001508: INVALID 00001509: JUMPDEST 0000150a: MUL 0000150b: OR 0000150c: SWAP1 0000150d: SSTORE 0000150e: POP 0000150f: JUMP 00001510: JUMPDEST 00001511: PUSH1 0x0a 00001513: SLOAD 00001514: DUP2 00001515: JUMP 00001516: JUMPDEST 00001517: PUSH2 0x151e 0000151a: PUSH2 0x3375 0000151d: JUMP 0000151e: JUMPDEST 0000151f: PUSH1 0x03 00001521: PUSH1 0x05 00001523: DUP2 00001524: GT 00001525: ISZERO 00001526: PUSH2 0x152b 00001529: JUMPI 0000152a: INVALID 0000152b: JUMPDEST 0000152c: PUSH1 0x00 0000152e: DUP1 0000152f: SLOAD 00001530: SWAP1 00001531: PUSH2 0x0100 00001534: EXP 00001535: SWAP1 00001536: DIV 00001537: PUSH1 0xff 00001539: AND 0000153a: PUSH1 0x05 0000153c: DUP2 0000153d: GT 0000153e: ISZERO 0000153f: PUSH2 0x1544 00001542: JUMPI 00001543: INVALID 00001544: JUMPDEST 00001545: EQ 00001546: ISZERO 00001547: DUP1 00001548: ISZERO 00001549: PUSH2 0x1576 0000154c: JUMPI 0000154d: POP 0000154e: PUSH1 0x04 00001550: PUSH1 0x05 00001552: DUP2 00001553: GT 00001554: ISZERO 00001555: PUSH2 0x155a 00001558: JUMPI 00001559: INVALID 0000155a: JUMPDEST 0000155b: PUSH1 0x00 0000155d: DUP1 0000155e: SLOAD 0000155f: SWAP1 00001560: PUSH2 0x0100 00001563: EXP 00001564: SWAP1 00001565: DIV 00001566: PUSH1 0xff 00001568: AND 00001569: PUSH1 0x05 0000156b: DUP2 0000156c: GT 0000156d: ISZERO 0000156e: PUSH2 0x1573 00001571: JUMPI 00001572: INVALID 00001573: JUMPDEST 00001574: EQ 00001575: ISZERO 00001576: JUMPDEST 00001577: DUP1 00001578: ISZERO 00001579: PUSH2 0x15a5 0000157c: JUMPI 0000157d: POP 0000157e: PUSH1 0x05 00001580: DUP1 00001581: DUP2 00001582: GT 00001583: ISZERO 00001584: PUSH2 0x1589 00001587: JUMPI 00001588: INVALID 00001589: JUMPDEST 0000158a: PUSH1 0x00 0000158c: DUP1 0000158d: SLOAD 0000158e: SWAP1 0000158f: PUSH2 0x0100 00001592: EXP 00001593: SWAP1 00001594: DIV 00001595: PUSH1 0xff 00001597: AND 00001598: PUSH1 0x05 0000159a: DUP2 0000159b: GT 0000159c: ISZERO 0000159d: PUSH2 0x15a2 000015a0: JUMPI 000015a1: INVALID 000015a2: JUMPDEST 000015a3: EQ 000015a4: ISZERO 000015a5: JUMPDEST 000015a6: PUSH2 0x1617 000015a9: JUMPI 000015aa: PUSH1 0x40 000015ac: MLOAD 000015ad: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000015ce: DUP2 000015cf: MSTORE 000015d0: PUSH1 0x04 000015d2: ADD 000015d3: DUP1 000015d4: DUP1 000015d5: PUSH1 0x20 000015d7: ADD 000015d8: DUP3 000015d9: DUP2 000015da: SUB 000015db: DUP3 000015dc: MSTORE 000015dd: PUSH1 0x14 000015df: DUP2 000015e0: MSTORE 000015e1: PUSH1 0x20 000015e3: ADD 000015e4: DUP1 000015e5: PUSH32 0x426173653a2053544154455f49535f46494e414c000000000000000000000000 00001606: DUP2 00001607: MSTORE 00001608: POP 00001609: PUSH1 0x20 0000160b: ADD 0000160c: SWAP2 0000160d: POP 0000160e: POP 0000160f: PUSH1 0x40 00001611: MLOAD 00001612: DUP1 00001613: SWAP2 00001614: SUB 00001615: SWAP1 00001616: REVERT 00001617: JUMPDEST 00001618: PUSH1 0x00 0000161a: DUP1 0000161b: SLOAD 0000161c: SWAP1 0000161d: PUSH2 0x0100 00001620: EXP 00001621: SWAP1 00001622: DIV 00001623: PUSH1 0xff 00001625: AND 00001626: PUSH1 0x00 00001628: PUSH1 0x01 0000162a: PUSH2 0x0100 0000162d: EXP 0000162e: DUP2 0000162f: SLOAD 00001630: DUP2 00001631: PUSH1 0xff 00001633: MUL 00001634: NOT 00001635: AND 00001636: SWAP1 00001637: DUP4 00001638: PUSH1 0x05 0000163a: DUP2 0000163b: GT 0000163c: ISZERO 0000163d: PUSH2 0x1642 00001640: JUMPI 00001641: INVALID 00001642: JUMPDEST 00001643: MUL 00001644: OR 00001645: SWAP1 00001646: SSTORE 00001647: POP 00001648: PUSH1 0x05 0000164a: PUSH1 0x00 0000164c: DUP1 0000164d: PUSH2 0x0100 00001650: EXP 00001651: DUP2 00001652: SLOAD 00001653: DUP2 00001654: PUSH1 0xff 00001656: MUL 00001657: NOT 00001658: AND 00001659: SWAP1 0000165a: DUP4 0000165b: PUSH1 0x05 0000165d: DUP2 0000165e: GT 0000165f: ISZERO 00001660: PUSH2 0x1665 00001663: JUMPI 00001664: INVALID 00001665: JUMPDEST 00001666: MUL 00001667: OR 00001668: SWAP1 00001669: SSTORE 0000166a: POP 0000166b: JUMP 0000166c: JUMPDEST 0000166d: PUSH1 0x15 0000166f: SLOAD 00001670: DUP2 00001671: JUMP 00001672: JUMPDEST 00001673: PUSH2 0x167a 00001676: PUSH2 0x3611 00001679: JUMP 0000167a: JUMPDEST 0000167b: PUSH1 0x08 0000167d: SLOAD 0000167e: TIMESTAMP 0000167f: GT 00001680: ISZERO 00001681: PUSH2 0x16aa 00001684: JUMPI 00001685: PUSH1 0x0a 00001687: SLOAD 00001688: PUSH1 0x0c 0000168a: SLOAD 0000168b: LT 0000168c: PUSH2 0x169c 0000168f: JUMPI 00001690: PUSH2 0x1697 00001693: PUSH2 0x36ac 00001696: JUMP 00001697: JUMPDEST 00001698: PUSH2 0x16a5 0000169b: JUMP 0000169c: JUMPDEST 0000169d: PUSH2 0x16a4 000016a0: PUSH2 0x36d1 000016a3: JUMP 000016a4: JUMPDEST 000016a5: JUMPDEST 000016a6: PUSH2 0x16c0 000016a9: JUMP 000016aa: JUMPDEST 000016ab: PUSH1 0x06 000016ad: SLOAD 000016ae: PUSH1 0x0c 000016b0: SLOAD 000016b1: EQ 000016b2: ISZERO 000016b3: PUSH2 0x16bf 000016b6: JUMPI 000016b7: PUSH2 0x16be 000016ba: PUSH2 0x36ac 000016bd: JUMP 000016be: JUMPDEST 000016bf: JUMPDEST 000016c0: JUMPDEST 000016c1: JUMP 000016c2: JUMPDEST 000016c3: PUSH2 0x16ca 000016c6: PUSH2 0x36f6 000016c9: JUMP 000016ca: JUMPDEST 000016cb: PUSH1 0x00 000016cd: PUSH1 0x1a 000016cf: PUSH1 0x00 000016d1: CALLER 000016d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016e7: AND 000016e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016fd: AND 000016fe: DUP2 000016ff: MSTORE 00001700: PUSH1 0x20 00001702: ADD 00001703: SWAP1 00001704: DUP2 00001705: MSTORE 00001706: PUSH1 0x20 00001708: ADD 00001709: PUSH1 0x00 0000170b: KECCAK256 0000170c: SLOAD 0000170d: SWAP1 0000170e: POP 0000170f: PUSH1 0x00 00001711: DUP2 00001712: GT 00001713: PUSH2 0x1784 00001716: JUMPI 00001717: PUSH1 0x40 00001719: MLOAD 0000171a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000173b: DUP2 0000173c: MSTORE 0000173d: PUSH1 0x04 0000173f: ADD 00001740: DUP1 00001741: DUP1 00001742: PUSH1 0x20 00001744: ADD 00001745: DUP3 00001746: DUP2 00001747: SUB 00001748: DUP3 00001749: MSTORE 0000174a: PUSH1 0x16 0000174c: DUP2 0000174d: MSTORE 0000174e: PUSH1 0x20 00001750: ADD 00001751: DUP1 00001752: PUSH32 0x426173653a20414c52454144595f524546554e44454400000000000000000000 00001773: DUP2 00001774: MSTORE 00001775: POP 00001776: PUSH1 0x20 00001778: ADD 00001779: SWAP2 0000177a: POP 0000177b: POP 0000177c: PUSH1 0x40 0000177e: MLOAD 0000177f: DUP1 00001780: SWAP2 00001781: SUB 00001782: SWAP1 00001783: REVERT 00001784: JUMPDEST 00001785: PUSH1 0x00 00001787: PUSH1 0x1a 00001789: PUSH1 0x00 0000178b: CALLER 0000178c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017a1: AND 000017a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017b7: AND 000017b8: DUP2 000017b9: MSTORE 000017ba: PUSH1 0x20 000017bc: ADD 000017bd: SWAP1 000017be: DUP2 000017bf: MSTORE 000017c0: PUSH1 0x20 000017c2: ADD 000017c3: PUSH1 0x00 000017c5: KECCAK256 000017c6: DUP2 000017c7: SWAP1 000017c8: SSTORE 000017c9: POP 000017ca: PUSH1 0x00 000017cc: PUSH1 0x19 000017ce: PUSH1 0x00 000017d0: CALLER 000017d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017e6: AND 000017e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017fc: AND 000017fd: DUP2 000017fe: MSTORE 000017ff: PUSH1 0x20 00001801: ADD 00001802: SWAP1 00001803: DUP2 00001804: MSTORE 00001805: PUSH1 0x20 00001807: ADD 00001808: PUSH1 0x00 0000180a: KECCAK256 0000180b: DUP2 0000180c: SWAP1 0000180d: SSTORE 0000180e: POP 0000180f: CALLER 00001810: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001825: AND 00001826: PUSH2 0x08fc 00001829: DUP3 0000182a: SWAP1 0000182b: DUP2 0000182c: ISZERO 0000182d: MUL 0000182e: SWAP1 0000182f: PUSH1 0x40 00001831: MLOAD 00001832: PUSH1 0x00 00001834: PUSH1 0x40 00001836: MLOAD 00001837: DUP1 00001838: DUP4 00001839: SUB 0000183a: DUP2 0000183b: DUP6 0000183c: DUP9 0000183d: DUP9 0000183e: CALL 0000183f: SWAP4 00001840: POP 00001841: POP 00001842: POP 00001843: POP 00001844: ISZERO 00001845: DUP1 00001846: ISZERO 00001847: PUSH2 0x1854 0000184a: JUMPI 0000184b: RETURNDATASIZE 0000184c: PUSH1 0x00 0000184e: DUP1 0000184f: RETURNDATACOPY 00001850: RETURNDATASIZE 00001851: PUSH1 0x00 00001853: REVERT 00001854: JUMPDEST 00001855: POP 00001856: PUSH32 0xbb28353e4598c3b9199101a66e0989549b659a59a54d2c27fbb183f1932c8e6d 00001877: CALLER 00001878: DUP3 00001879: PUSH1 0x40 0000187b: MLOAD 0000187c: DUP1 0000187d: DUP4 0000187e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001893: AND 00001894: DUP2 00001895: MSTORE 00001896: PUSH1 0x20 00001898: ADD 00001899: DUP3 0000189a: DUP2 0000189b: MSTORE 0000189c: PUSH1 0x20 0000189e: ADD 0000189f: SWAP3 000018a0: POP 000018a1: POP 000018a2: POP 000018a3: PUSH1 0x40 000018a5: MLOAD 000018a6: DUP1 000018a7: SWAP2 000018a8: SUB 000018a9: SWAP1 000018aa: LOG1 000018ab: POP 000018ac: JUMP 000018ad: JUMPDEST 000018ae: PUSH1 0x13 000018b0: PUSH1 0x14 000018b2: SWAP1 000018b3: SLOAD 000018b4: SWAP1 000018b5: PUSH2 0x0100 000018b8: EXP 000018b9: SWAP1 000018ba: DIV 000018bb: PUSH1 0xff 000018bd: AND 000018be: DUP2 000018bf: JUMP 000018c0: JUMPDEST 000018c1: PUSH2 0x18c8 000018c4: PUSH2 0x2f03 000018c7: JUMP 000018c8: JUMPDEST 000018c9: PUSH2 0x18d0 000018cc: PUSH2 0x2fc8 000018cf: JUMP 000018d0: JUMPDEST 000018d1: DUP1 000018d2: PUSH1 0x05 000018d4: PUSH1 0x00 000018d6: PUSH2 0x0100 000018d9: EXP 000018da: DUP2 000018db: SLOAD 000018dc: DUP2 000018dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018f2: MUL 000018f3: NOT 000018f4: AND 000018f5: SWAP1 000018f6: DUP4 000018f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000190c: AND 0000190d: MUL 0000190e: OR 0000190f: SWAP1 00001910: SSTORE 00001911: POP 00001912: POP 00001913: JUMP 00001914: JUMPDEST 00001915: PUSH1 0x01 00001917: PUSH1 0x00 00001919: SWAP1 0000191a: SLOAD 0000191b: SWAP1 0000191c: PUSH2 0x0100 0000191f: EXP 00001920: SWAP1 00001921: DIV 00001922: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001937: AND 00001938: DUP2 00001939: JUMP 0000193a: JUMPDEST 0000193b: PUSH8 0x0de0b6b3a7640000 00001944: DUP2 00001945: JUMP 00001946: JUMPDEST 00001947: PUSH1 0x09 00001949: SLOAD 0000194a: DUP2 0000194b: JUMP 0000194c: JUMPDEST 0000194d: PUSH2 0x1954 00001950: PUSH2 0x2f03 00001953: JUMP 00001954: JUMPDEST 00001955: PUSH2 0x195c 00001958: PUSH2 0x2fc8 0000195b: JUMP 0000195c: JUMPDEST 0000195d: PUSH2 0x1966 00001960: DUP3 00001961: DUP3 00001962: PUSH2 0x3791 00001965: JUMP 00001966: JUMPDEST 00001967: DUP2 00001968: PUSH1 0x07 0000196a: DUP2 0000196b: SWAP1 0000196c: SSTORE 0000196d: POP 0000196e: DUP1 0000196f: PUSH1 0x08 00001971: DUP2 00001972: SWAP1 00001973: SSTORE 00001974: POP 00001975: POP 00001976: POP 00001977: JUMP 00001978: JUMPDEST 00001979: PUSH1 0x07 0000197b: SLOAD 0000197c: DUP2 0000197d: JUMP 0000197e: JUMPDEST 0000197f: PUSH1 0x18 00001981: PUSH1 0x00 00001983: SWAP1 00001984: SLOAD 00001985: SWAP1 00001986: PUSH2 0x0100 00001989: EXP 0000198a: SWAP1 0000198b: DIV 0000198c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019a1: AND 000019a2: DUP2 000019a3: JUMP 000019a4: JUMPDEST 000019a5: PUSH2 0x19ac 000019a8: PUSH2 0x3375 000019ab: JUMP 000019ac: JUMPDEST 000019ad: PUSH2 0x19b4 000019b0: PUSH2 0x2fc8 000019b3: JUMP 000019b4: JUMPDEST 000019b5: DUP1 000019b6: PUSH1 0x18 000019b8: PUSH1 0x00 000019ba: PUSH2 0x0100 000019bd: EXP 000019be: DUP2 000019bf: SLOAD 000019c0: DUP2 000019c1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019d6: MUL 000019d7: NOT 000019d8: AND 000019d9: SWAP1 000019da: DUP4 000019db: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019f0: AND 000019f1: MUL 000019f2: OR 000019f3: SWAP1 000019f4: SSTORE 000019f5: POP 000019f6: POP 000019f7: JUMP 000019f8: JUMPDEST 000019f9: PUSH1 0x1a 000019fb: PUSH1 0x20 000019fd: MSTORE 000019fe: DUP1 000019ff: PUSH1 0x00 00001a01: MSTORE 00001a02: PUSH1 0x40 00001a04: PUSH1 0x00 00001a06: KECCAK256 00001a07: PUSH1 0x00 00001a09: SWAP2 00001a0a: POP 00001a0b: SWAP1 00001a0c: POP 00001a0d: SLOAD 00001a0e: DUP2 00001a0f: JUMP 00001a10: JUMPDEST 00001a11: PUSH2 0x1a18 00001a14: PUSH2 0x343a 00001a17: JUMP 00001a18: JUMPDEST 00001a19: PUSH2 0x1a20 00001a1c: PUSH2 0x3894 00001a1f: JUMP 00001a20: JUMPDEST 00001a21: PUSH1 0x00 00001a23: PUSH2 0x1a39 00001a26: PUSH1 0x10 00001a28: SLOAD 00001a29: PUSH1 0x0c 00001a2b: SLOAD 00001a2c: PUSH2 0x2e80 00001a2f: SWAP1 00001a30: SWAP2 00001a31: SWAP1 00001a32: PUSH4 0xffffffff 00001a37: AND 00001a38: JUMP 00001a39: JUMPDEST 00001a3a: SWAP1 00001a3b: POP 00001a3c: PUSH1 0x00 00001a3e: PUSH2 0x1b13 00001a41: DUP3 00001a42: PUSH1 0x05 00001a44: PUSH1 0x00 00001a46: SWAP1 00001a47: SLOAD 00001a48: SWAP1 00001a49: PUSH2 0x0100 00001a4c: EXP 00001a4d: SWAP1 00001a4e: DIV 00001a4f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a64: AND 00001a65: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a7a: AND 00001a7b: PUSH4 0x70a08231 00001a80: ADDRESS 00001a81: PUSH1 0x40 00001a83: MLOAD 00001a84: DUP3 00001a85: PUSH4 0xffffffff 00001a8a: AND 00001a8b: PUSH1 0xe0 00001a8d: SHL 00001a8e: DUP2 00001a8f: MSTORE 00001a90: PUSH1 0x04 00001a92: ADD 00001a93: DUP1 00001a94: DUP3 00001a95: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001aaa: AND 00001aab: DUP2 00001aac: MSTORE 00001aad: PUSH1 0x20 00001aaf: ADD 00001ab0: SWAP2 00001ab1: POP 00001ab2: POP 00001ab3: PUSH1 0x20 00001ab5: PUSH1 0x40 00001ab7: MLOAD 00001ab8: DUP1 00001ab9: DUP4 00001aba: SUB 00001abb: DUP2 00001abc: DUP7 00001abd: DUP1 00001abe: EXTCODESIZE 00001abf: ISZERO 00001ac0: DUP1 00001ac1: ISZERO 00001ac2: PUSH2 0x1aca 00001ac5: JUMPI 00001ac6: PUSH1 0x00 00001ac8: DUP1 00001ac9: REVERT 00001aca: JUMPDEST 00001acb: POP 00001acc: GAS 00001acd: STATICCALL 00001ace: ISZERO 00001acf: DUP1 00001ad0: ISZERO 00001ad1: PUSH2 0x1ade 00001ad4: JUMPI 00001ad5: RETURNDATASIZE 00001ad6: PUSH1 0x00 00001ad8: DUP1 00001ad9: RETURNDATACOPY 00001ada: RETURNDATASIZE 00001adb: PUSH1 0x00 00001add: REVERT 00001ade: JUMPDEST 00001adf: POP 00001ae0: POP 00001ae1: POP 00001ae2: POP 00001ae3: PUSH1 0x40 00001ae5: MLOAD 00001ae6: RETURNDATASIZE 00001ae7: PUSH1 0x20 00001ae9: DUP2 00001aea: LT 00001aeb: ISZERO 00001aec: PUSH2 0x1af4 00001aef: JUMPI 00001af0: PUSH1 0x00 00001af2: DUP1 00001af3: REVERT 00001af4: JUMPDEST 00001af5: DUP2 00001af6: ADD 00001af7: SWAP1 00001af8: DUP1 00001af9: DUP1 00001afa: MLOAD 00001afb: SWAP1 00001afc: PUSH1 0x20 00001afe: ADD 00001aff: SWAP1 00001b00: SWAP3 00001b01: SWAP2 00001b02: SWAP1 00001b03: POP 00001b04: POP 00001b05: POP 00001b06: PUSH2 0x2e80 00001b09: SWAP1 00001b0a: SWAP2 00001b0b: SWAP1 00001b0c: PUSH4 0xffffffff 00001b11: AND 00001b12: JUMP 00001b13: JUMPDEST 00001b14: SWAP1 00001b15: POP 00001b16: PUSH1 0x05 00001b18: PUSH1 0x00 00001b1a: SWAP1 00001b1b: SLOAD 00001b1c: SWAP1 00001b1d: PUSH2 0x0100 00001b20: EXP 00001b21: SWAP1 00001b22: DIV 00001b23: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b38: AND 00001b39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b4e: AND 00001b4f: PUSH4 0xa9059cbb 00001b54: PUSH1 0x04 00001b56: PUSH1 0x00 00001b58: SWAP1 00001b59: SLOAD 00001b5a: SWAP1 00001b5b: PUSH2 0x0100 00001b5e: EXP 00001b5f: SWAP1 00001b60: DIV 00001b61: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b76: AND 00001b77: DUP4 00001b78: PUSH1 0x40 00001b7a: MLOAD 00001b7b: DUP4 00001b7c: PUSH4 0xffffffff 00001b81: AND 00001b82: PUSH1 0xe0 00001b84: SHL 00001b85: DUP2 00001b86: MSTORE 00001b87: PUSH1 0x04 00001b89: ADD 00001b8a: DUP1 00001b8b: DUP4 00001b8c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ba1: AND 00001ba2: DUP2 00001ba3: MSTORE 00001ba4: PUSH1 0x20 00001ba6: ADD 00001ba7: DUP3 00001ba8: DUP2 00001ba9: MSTORE 00001baa: PUSH1 0x20 00001bac: ADD 00001bad: SWAP3 00001bae: POP 00001baf: POP 00001bb0: POP 00001bb1: PUSH1 0x20 00001bb3: PUSH1 0x40 00001bb5: MLOAD 00001bb6: DUP1 00001bb7: DUP4 00001bb8: SUB 00001bb9: DUP2 00001bba: PUSH1 0x00 00001bbc: DUP8 00001bbd: DUP1 00001bbe: EXTCODESIZE 00001bbf: ISZERO 00001bc0: DUP1 00001bc1: ISZERO 00001bc2: PUSH2 0x1bca 00001bc5: JUMPI 00001bc6: PUSH1 0x00 00001bc8: DUP1 00001bc9: REVERT 00001bca: JUMPDEST 00001bcb: POP 00001bcc: GAS 00001bcd: CALL 00001bce: ISZERO 00001bcf: DUP1 00001bd0: ISZERO 00001bd1: PUSH2 0x1bde 00001bd4: JUMPI 00001bd5: RETURNDATASIZE 00001bd6: PUSH1 0x00 00001bd8: DUP1 00001bd9: RETURNDATACOPY 00001bda: RETURNDATASIZE 00001bdb: PUSH1 0x00 00001bdd: REVERT 00001bde: JUMPDEST 00001bdf: POP 00001be0: POP 00001be1: POP 00001be2: POP 00001be3: PUSH1 0x40 00001be5: MLOAD 00001be6: RETURNDATASIZE 00001be7: PUSH1 0x20 00001be9: DUP2 00001bea: LT 00001beb: ISZERO 00001bec: PUSH2 0x1bf4 00001bef: JUMPI 00001bf0: PUSH1 0x00 00001bf2: DUP1 00001bf3: REVERT 00001bf4: JUMPDEST 00001bf5: DUP2 00001bf6: ADD 00001bf7: SWAP1 00001bf8: DUP1 00001bf9: DUP1 00001bfa: MLOAD 00001bfb: SWAP1 00001bfc: PUSH1 0x20 00001bfe: ADD 00001bff: SWAP1 00001c00: SWAP3 00001c01: SWAP2 00001c02: SWAP1 00001c03: POP 00001c04: POP 00001c05: POP 00001c06: POP 00001c07: POP 00001c08: POP 00001c09: JUMP 00001c0a: JUMPDEST 00001c0b: PUSH1 0x00 00001c0d: PUSH1 0x01 00001c0f: SWAP1 00001c10: SLOAD 00001c11: SWAP1 00001c12: PUSH2 0x0100 00001c15: EXP 00001c16: SWAP1 00001c17: DIV 00001c18: PUSH1 0xff 00001c1a: AND 00001c1b: DUP2 00001c1c: JUMP 00001c1d: JUMPDEST 00001c1e: PUSH1 0x14 00001c20: SLOAD 00001c21: DUP2 00001c22: JUMP 00001c23: JUMPDEST 00001c24: PUSH2 0x1c2b 00001c27: PUSH2 0x3375 00001c2a: JUMP 00001c2b: JUMPDEST 00001c2c: PUSH2 0x1c33 00001c2f: PUSH2 0x36f6 00001c32: JUMP 00001c33: JUMPDEST 00001c34: PUSH2 0x1d43 00001c37: DUP2 00001c38: PUSH1 0x13 00001c3a: PUSH1 0x00 00001c3c: SWAP1 00001c3d: SLOAD 00001c3e: SWAP1 00001c3f: PUSH2 0x0100 00001c42: EXP 00001c43: SWAP1 00001c44: DIV 00001c45: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c5a: AND 00001c5b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c70: AND 00001c71: PUSH4 0x70a08231 00001c76: ADDRESS 00001c77: PUSH1 0x40 00001c79: MLOAD 00001c7a: DUP3 00001c7b: PUSH4 0xffffffff 00001c80: AND 00001c81: PUSH1 0xe0 00001c83: SHL 00001c84: DUP2 00001c85: MSTORE 00001c86: PUSH1 0x04 00001c88: ADD 00001c89: DUP1 00001c8a: DUP3 00001c8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ca0: AND 00001ca1: DUP2 00001ca2: MSTORE 00001ca3: PUSH1 0x20 00001ca5: ADD 00001ca6: SWAP2 00001ca7: POP 00001ca8: POP 00001ca9: PUSH1 0x20 00001cab: PUSH1 0x40 00001cad: MLOAD 00001cae: DUP1 00001caf: DUP4 00001cb0: SUB 00001cb1: DUP2 00001cb2: DUP7 00001cb3: DUP1 00001cb4: EXTCODESIZE 00001cb5: ISZERO 00001cb6: DUP1 00001cb7: ISZERO 00001cb8: PUSH2 0x1cc0 00001cbb: JUMPI 00001cbc: PUSH1 0x00 00001cbe: DUP1 00001cbf: REVERT 00001cc0: JUMPDEST 00001cc1: POP 00001cc2: GAS 00001cc3: STATICCALL 00001cc4: ISZERO 00001cc5: DUP1 00001cc6: ISZERO 00001cc7: PUSH2 0x1cd4 00001cca: JUMPI 00001ccb: RETURNDATASIZE 00001ccc: PUSH1 0x00 00001cce: DUP1 00001ccf: RETURNDATACOPY 00001cd0: RETURNDATASIZE 00001cd1: PUSH1 0x00 00001cd3: REVERT 00001cd4: JUMPDEST 00001cd5: POP 00001cd6: POP 00001cd7: POP 00001cd8: POP 00001cd9: PUSH1 0x40 00001cdb: MLOAD 00001cdc: RETURNDATASIZE 00001cdd: PUSH1 0x20 00001cdf: DUP2 00001ce0: LT 00001ce1: ISZERO 00001ce2: PUSH2 0x1cea 00001ce5: JUMPI 00001ce6: PUSH1 0x00 00001ce8: DUP1 00001ce9: REVERT 00001cea: JUMPDEST 00001ceb: DUP2 00001cec: ADD 00001ced: SWAP1 00001cee: DUP1 00001cef: DUP1 00001cf0: MLOAD 00001cf1: SWAP1 00001cf2: PUSH1 0x20 00001cf4: ADD 00001cf5: SWAP1 00001cf6: SWAP3 00001cf7: SWAP2 00001cf8: SWAP1 00001cf9: POP 00001cfa: POP 00001cfb: POP 00001cfc: PUSH1 0x13 00001cfe: PUSH1 0x00 00001d00: SWAP1 00001d01: SLOAD 00001d02: SWAP1 00001d03: PUSH2 0x0100 00001d06: EXP 00001d07: SWAP1 00001d08: DIV 00001d09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d1e: AND 00001d1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d34: AND 00001d35: PUSH2 0x34d5 00001d38: SWAP1 00001d39: SWAP3 00001d3a: SWAP2 00001d3b: SWAP1 00001d3c: PUSH4 0xffffffff 00001d41: AND 00001d42: JUMP 00001d43: JUMPDEST 00001d44: POP 00001d45: JUMP 00001d46: JUMPDEST 00001d47: PUSH1 0x0c 00001d49: SLOAD 00001d4a: DUP2 00001d4b: JUMP 00001d4c: JUMPDEST 00001d4d: PUSH1 0x04 00001d4f: PUSH1 0x00 00001d51: SWAP1 00001d52: SLOAD 00001d53: SWAP1 00001d54: PUSH2 0x0100 00001d57: EXP 00001d58: SWAP1 00001d59: DIV 00001d5a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d6f: AND 00001d70: DUP2 00001d71: JUMP 00001d72: JUMPDEST 00001d73: PUSH2 0x1d7a 00001d76: PUSH2 0x3375 00001d79: JUMP 00001d7a: JUMPDEST 00001d7b: PUSH2 0x1d82 00001d7e: PUSH2 0x2fc8 00001d81: JUMP 00001d82: JUMPDEST 00001d83: DUP1 00001d84: PUSH1 0x17 00001d86: PUSH1 0x00 00001d88: PUSH2 0x0100 00001d8b: EXP 00001d8c: DUP2 00001d8d: SLOAD 00001d8e: DUP2 00001d8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001da4: MUL 00001da5: NOT 00001da6: AND 00001da7: SWAP1 00001da8: DUP4 00001da9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001dbe: AND 00001dbf: MUL 00001dc0: OR 00001dc1: SWAP1 00001dc2: SSTORE 00001dc3: POP 00001dc4: POP 00001dc5: JUMP 00001dc6: JUMPDEST 00001dc7: PUSH1 0x11 00001dc9: SLOAD 00001dca: DUP2 00001dcb: JUMP 00001dcc: JUMPDEST 00001dcd: PUSH1 0x1b 00001dcf: SLOAD 00001dd0: DUP2 00001dd1: JUMP 00001dd2: JUMPDEST 00001dd3: PUSH2 0x1dda 00001dd6: PUSH2 0x2f03 00001dd9: JUMP 00001dda: JUMPDEST 00001ddb: PUSH2 0x1de2 00001dde: PUSH2 0x2fc8 00001de1: JUMP 00001de2: JUMPDEST 00001de3: DUP1 00001de4: PUSH1 0x1b 00001de6: DUP2 00001de7: SWAP1 00001de8: SSTORE 00001de9: POP 00001dea: POP 00001deb: JUMP 00001dec: JUMPDEST 00001ded: PUSH1 0x16 00001def: DUP2 00001df0: DUP2 00001df1: SLOAD 00001df2: DUP2 00001df3: LT 00001df4: PUSH2 0x1df9 00001df7: JUMPI 00001df8: INVALID 00001df9: JUMPDEST 00001dfa: SWAP1 00001dfb: PUSH1 0x00 00001dfd: MSTORE 00001dfe: PUSH1 0x20 00001e00: PUSH1 0x00 00001e02: KECCAK256 00001e03: ADD 00001e04: PUSH1 0x00 00001e06: SWAP2 00001e07: POP 00001e08: SWAP1 00001e09: POP 00001e0a: SLOAD 00001e0b: DUP2 00001e0c: JUMP 00001e0d: JUMPDEST 00001e0e: PUSH2 0x1e15 00001e11: PUSH2 0x343a 00001e14: JUMP 00001e15: JUMPDEST 00001e16: PUSH1 0x15 00001e18: SLOAD 00001e19: TIMESTAMP 00001e1a: LT 00001e1b: ISZERO 00001e1c: PUSH2 0x1e8d 00001e1f: JUMPI 00001e20: PUSH1 0x40 00001e22: MLOAD 00001e23: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001e44: DUP2 00001e45: MSTORE 00001e46: PUSH1 0x04 00001e48: ADD 00001e49: DUP1 00001e4a: DUP1 00001e4b: PUSH1 0x20 00001e4d: ADD 00001e4e: DUP3 00001e4f: DUP2 00001e50: SUB 00001e51: DUP3 00001e52: MSTORE 00001e53: PUSH1 0x1a 00001e55: DUP2 00001e56: MSTORE 00001e57: PUSH1 0x20 00001e59: ADD 00001e5a: DUP1 00001e5b: PUSH32 0x426173653a20434c41494d494e475f4e4f545f53544152544544000000000000 00001e7c: DUP2 00001e7d: MSTORE 00001e7e: POP 00001e7f: PUSH1 0x20 00001e81: ADD 00001e82: SWAP2 00001e83: POP 00001e84: POP 00001e85: PUSH1 0x40 00001e87: MLOAD 00001e88: DUP1 00001e89: SWAP2 00001e8a: SUB 00001e8b: SWAP1 00001e8c: REVERT 00001e8d: JUMPDEST 00001e8e: PUSH1 0x00 00001e90: PUSH1 0x19 00001e92: PUSH1 0x00 00001e94: CALLER 00001e95: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001eaa: AND 00001eab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ec0: AND 00001ec1: DUP2 00001ec2: MSTORE 00001ec3: PUSH1 0x20 00001ec5: ADD 00001ec6: SWAP1 00001ec7: DUP2 00001ec8: MSTORE 00001ec9: PUSH1 0x20 00001ecb: ADD 00001ecc: PUSH1 0x00 00001ece: KECCAK256 00001ecf: SLOAD 00001ed0: SWAP1 00001ed1: POP 00001ed2: PUSH1 0x00 00001ed4: PUSH1 0x1a 00001ed6: PUSH1 0x00 00001ed8: CALLER 00001ed9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001eee: AND 00001eef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f04: AND 00001f05: DUP2 00001f06: MSTORE 00001f07: PUSH1 0x20 00001f09: ADD 00001f0a: SWAP1 00001f0b: DUP2 00001f0c: MSTORE 00001f0d: PUSH1 0x20 00001f0f: ADD 00001f10: PUSH1 0x00 00001f12: KECCAK256 00001f13: SLOAD 00001f14: SWAP1 00001f15: POP 00001f16: PUSH1 0x00 00001f18: DUP3 00001f19: GT 00001f1a: PUSH2 0x1f8b 00001f1d: JUMPI 00001f1e: PUSH1 0x40 00001f20: MLOAD 00001f21: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001f42: DUP2 00001f43: MSTORE 00001f44: PUSH1 0x04 00001f46: ADD 00001f47: DUP1 00001f48: DUP1 00001f49: PUSH1 0x20 00001f4b: ADD 00001f4c: DUP3 00001f4d: DUP2 00001f4e: SUB 00001f4f: DUP3 00001f50: MSTORE 00001f51: PUSH1 0x1a 00001f53: DUP2 00001f54: MSTORE 00001f55: PUSH1 0x20 00001f57: ADD 00001f58: DUP1 00001f59: PUSH32 0x426173653a20524553455256455f42414c414e43455f5a45524f000000000000 00001f7a: DUP2 00001f7b: MSTORE 00001f7c: POP 00001f7d: PUSH1 0x20 00001f7f: ADD 00001f80: SWAP2 00001f81: POP 00001f82: POP 00001f83: PUSH1 0x40 00001f85: MLOAD 00001f86: DUP1 00001f87: SWAP2 00001f88: SUB 00001f89: SWAP1 00001f8a: REVERT 00001f8b: JUMPDEST 00001f8c: PUSH1 0x00 00001f8e: PUSH1 0x19 00001f90: PUSH1 0x00 00001f92: CALLER 00001f93: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fa8: AND 00001fa9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fbe: AND 00001fbf: DUP2 00001fc0: MSTORE 00001fc1: PUSH1 0x20 00001fc3: ADD 00001fc4: SWAP1 00001fc5: DUP2 00001fc6: MSTORE 00001fc7: PUSH1 0x20 00001fc9: ADD 00001fca: PUSH1 0x00 00001fcc: KECCAK256 00001fcd: DUP2 00001fce: SWAP1 00001fcf: SSTORE 00001fd0: POP 00001fd1: PUSH1 0x00 00001fd3: PUSH1 0x1a 00001fd5: PUSH1 0x00 00001fd7: CALLER 00001fd8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fed: AND 00001fee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002003: AND 00002004: DUP2 00002005: MSTORE 00002006: PUSH1 0x20 00002008: ADD 00002009: SWAP1 0000200a: DUP2 0000200b: MSTORE 0000200c: PUSH1 0x20 0000200e: ADD 0000200f: PUSH1 0x00 00002011: KECCAK256 00002012: DUP2 00002013: SWAP1 00002014: SSTORE 00002015: POP 00002016: PUSH2 0x2062 00002019: CALLER 0000201a: DUP4 0000201b: PUSH1 0x05 0000201d: PUSH1 0x00 0000201f: SWAP1 00002020: SLOAD 00002021: SWAP1 00002022: PUSH2 0x0100 00002025: EXP 00002026: SWAP1 00002027: DIV 00002028: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000203d: AND 0000203e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002053: AND 00002054: PUSH2 0x34d5 00002057: SWAP1 00002058: SWAP3 00002059: SWAP2 0000205a: SWAP1 0000205b: PUSH4 0xffffffff 00002060: AND 00002061: JUMP 00002062: JUMPDEST 00002063: PUSH2 0x2077 00002066: DUP3 00002067: PUSH1 0x10 00002069: SLOAD 0000206a: PUSH2 0x3959 0000206d: SWAP1 0000206e: SWAP2 0000206f: SWAP1 00002070: PUSH4 0xffffffff 00002075: AND 00002076: JUMP 00002077: JUMPDEST 00002078: PUSH1 0x10 0000207a: DUP2 0000207b: SWAP1 0000207c: SSTORE 0000207d: POP 0000207e: PUSH1 0x00 00002080: DUP1 00002081: PUSH1 0x12 00002083: SLOAD 00002084: GT 00002085: ISZERO 00002086: PUSH2 0x2102 00002089: JUMPI 0000208a: PUSH2 0x20b2 0000208d: PUSH1 0x11 0000208f: SLOAD 00002090: PUSH2 0x20a4 00002093: DUP5 00002094: PUSH1 0x12 00002096: SLOAD 00002097: PUSH2 0x3063 0000209a: SWAP1 0000209b: SWAP2 0000209c: SWAP1 0000209d: PUSH4 0xffffffff 000020a2: AND 000020a3: JUMP 000020a4: JUMPDEST 000020a5: PUSH2 0x30e9 000020a8: SWAP1 000020a9: SWAP2 000020aa: SWAP1 000020ab: PUSH4 0xffffffff 000020b0: AND 000020b1: JUMP 000020b2: JUMPDEST 000020b3: SWAP1 000020b4: POP 000020b5: PUSH2 0x2101 000020b8: CALLER 000020b9: DUP3 000020ba: PUSH1 0x13 000020bc: PUSH1 0x00 000020be: SWAP1 000020bf: SLOAD 000020c0: SWAP1 000020c1: PUSH2 0x0100 000020c4: EXP 000020c5: SWAP1 000020c6: DIV 000020c7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020dc: AND 000020dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020f2: AND 000020f3: PUSH2 0x34d5 000020f6: SWAP1 000020f7: SWAP3 000020f8: SWAP2 000020f9: SWAP1 000020fa: PUSH4 0xffffffff 000020ff: AND 00002100: JUMP 00002101: JUMPDEST 00002102: JUMPDEST 00002103: PUSH32 0x34fcbac0073d7c3d388e51312faf357774904998eeb8fca628b9e6f65ee1cbf7 00002124: CALLER 00002125: DUP5 00002126: DUP4 00002127: PUSH1 0x40 00002129: MLOAD 0000212a: DUP1 0000212b: DUP5 0000212c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002141: AND 00002142: DUP2 00002143: MSTORE 00002144: PUSH1 0x20 00002146: ADD 00002147: DUP4 00002148: DUP2 00002149: MSTORE 0000214a: PUSH1 0x20 0000214c: ADD 0000214d: DUP3 0000214e: DUP2 0000214f: MSTORE 00002150: PUSH1 0x20 00002152: ADD 00002153: SWAP4 00002154: POP 00002155: POP 00002156: POP 00002157: POP 00002158: PUSH1 0x40 0000215a: MLOAD 0000215b: DUP1 0000215c: SWAP2 0000215d: SUB 0000215e: SWAP1 0000215f: LOG1 00002160: POP 00002161: POP 00002162: POP 00002163: JUMP 00002164: JUMPDEST 00002165: PUSH1 0x19 00002167: PUSH1 0x20 00002169: MSTORE 0000216a: DUP1 0000216b: PUSH1 0x00 0000216d: MSTORE 0000216e: PUSH1 0x40 00002170: PUSH1 0x00 00002172: KECCAK256 00002173: PUSH1 0x00 00002175: SWAP2 00002176: POP 00002177: SWAP1 00002178: POP 00002179: SLOAD 0000217a: DUP2 0000217b: JUMP 0000217c: JUMPDEST 0000217d: PUSH2 0x2184 00002180: PUSH2 0x3375 00002183: JUMP 00002184: JUMPDEST 00002185: PUSH1 0x00 00002187: PUSH1 0x05 00002189: DUP2 0000218a: GT 0000218b: ISZERO 0000218c: PUSH2 0x2191 0000218f: JUMPI 00002190: INVALID 00002191: JUMPDEST 00002192: PUSH1 0x00 00002194: DUP1 00002195: SLOAD 00002196: SWAP1 00002197: PUSH2 0x0100 0000219a: EXP 0000219b: SWAP1 0000219c: DIV 0000219d: PUSH1 0xff 0000219f: AND 000021a0: PUSH1 0x05 000021a2: DUP2 000021a3: GT 000021a4: ISZERO 000021a5: PUSH2 0x21aa 000021a8: JUMPI 000021a9: INVALID 000021aa: JUMPDEST 000021ab: EQ 000021ac: DUP1 000021ad: PUSH2 0x21d9 000021b0: JUMPI 000021b1: POP 000021b2: PUSH1 0x01 000021b4: PUSH1 0x05 000021b6: DUP2 000021b7: GT 000021b8: ISZERO 000021b9: PUSH2 0x21be 000021bc: JUMPI 000021bd: INVALID 000021be: JUMPDEST 000021bf: PUSH1 0x00 000021c1: DUP1 000021c2: SLOAD 000021c3: SWAP1 000021c4: PUSH2 0x0100 000021c7: EXP 000021c8: SWAP1 000021c9: DIV 000021ca: PUSH1 0xff 000021cc: AND 000021cd: PUSH1 0x05 000021cf: DUP2 000021d0: GT 000021d1: ISZERO 000021d2: PUSH2 0x21d7 000021d5: JUMPI 000021d6: INVALID 000021d7: JUMPDEST 000021d8: EQ 000021d9: JUMPDEST 000021da: PUSH2 0x224b 000021dd: JUMPI 000021de: PUSH1 0x40 000021e0: MLOAD 000021e1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002202: DUP2 00002203: MSTORE 00002204: PUSH1 0x04 00002206: ADD 00002207: DUP1 00002208: DUP1 00002209: PUSH1 0x20 0000220b: ADD 0000220c: DUP3 0000220d: DUP2 0000220e: SUB 0000220f: DUP3 00002210: MSTORE 00002211: PUSH1 0x20 00002213: DUP2 00002214: MSTORE 00002215: PUSH1 0x20 00002217: ADD 00002218: DUP1 00002219: PUSH32 0x4f4e4c595f445552494e475f494e495449414c495a45445f4f525f5245414459 0000223a: DUP2 0000223b: MSTORE 0000223c: POP 0000223d: PUSH1 0x20 0000223f: ADD 00002240: SWAP2 00002241: POP 00002242: POP 00002243: PUSH1 0x40 00002245: MLOAD 00002246: DUP1 00002247: SWAP2 00002248: SUB 00002249: SWAP1 0000224a: REVERT 0000224b: JUMPDEST 0000224c: DUP2 0000224d: PUSH1 0x12 0000224f: DUP2 00002250: SWAP1 00002251: SSTORE 00002252: POP 00002253: DUP1 00002254: PUSH1 0x13 00002256: PUSH1 0x00 00002258: PUSH2 0x0100 0000225b: EXP 0000225c: DUP2 0000225d: SLOAD 0000225e: DUP2 0000225f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002274: MUL 00002275: NOT 00002276: AND 00002277: SWAP1 00002278: DUP4 00002279: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000228e: AND 0000228f: MUL 00002290: OR 00002291: SWAP1 00002292: SSTORE 00002293: POP 00002294: POP 00002295: POP 00002296: JUMP 00002297: JUMPDEST 00002298: PUSH1 0x03 0000229a: PUSH1 0x00 0000229c: SWAP1 0000229d: SLOAD 0000229e: SWAP1 0000229f: PUSH2 0x0100 000022a2: EXP 000022a3: SWAP1 000022a4: DIV 000022a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022ba: AND 000022bb: DUP2 000022bc: JUMP 000022bd: JUMPDEST 000022be: PUSH1 0x00 000022c0: DUP1 000022c1: SLOAD 000022c2: SWAP1 000022c3: PUSH2 0x0100 000022c6: EXP 000022c7: SWAP1 000022c8: DIV 000022c9: PUSH1 0xff 000022cb: AND 000022cc: DUP2 000022cd: JUMP 000022ce: JUMPDEST 000022cf: PUSH2 0x22d6 000022d2: PUSH2 0x2f03 000022d5: JUMP 000022d6: JUMPDEST 000022d7: PUSH2 0x22de 000022da: PUSH2 0x2fc8 000022dd: JUMP 000022de: JUMPDEST 000022df: DUP1 000022e0: PUSH1 0x0e 000022e2: DUP2 000022e3: SWAP1 000022e4: SSTORE 000022e5: POP 000022e6: POP 000022e7: JUMP 000022e8: JUMPDEST 000022e9: PUSH1 0x0b 000022eb: SLOAD 000022ec: DUP2 000022ed: JUMP 000022ee: JUMPDEST 000022ef: PUSH2 0x22f6 000022f2: PUSH2 0x2f03 000022f5: JUMP 000022f6: JUMPDEST 000022f7: DUP1 000022f8: PUSH1 0x01 000022fa: PUSH1 0x00 000022fc: PUSH2 0x0100 000022ff: EXP 00002300: DUP2 00002301: SLOAD 00002302: DUP2 00002303: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002318: MUL 00002319: NOT 0000231a: AND 0000231b: SWAP1 0000231c: DUP4 0000231d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002332: AND 00002333: MUL 00002334: OR 00002335: SWAP1 00002336: SSTORE 00002337: POP 00002338: POP 00002339: JUMP 0000233a: JUMPDEST 0000233b: PUSH1 0x0f 0000233d: DUP2 0000233e: DUP2 0000233f: SLOAD 00002340: DUP2 00002341: LT 00002342: PUSH2 0x2347 00002345: JUMPI 00002346: INVALID 00002347: JUMPDEST 00002348: SWAP1 00002349: PUSH1 0x00 0000234b: MSTORE 0000234c: PUSH1 0x20 0000234e: PUSH1 0x00 00002350: KECCAK256 00002351: ADD 00002352: PUSH1 0x00 00002354: SWAP2 00002355: POP 00002356: SWAP1 00002357: POP 00002358: SLOAD 00002359: DUP2 0000235a: JUMP 0000235b: JUMPDEST 0000235c: PUSH2 0x2363 0000235f: PUSH2 0x3611 00002362: JUMP 00002363: JUMPDEST 00002364: PUSH1 0x0e 00002366: SLOAD 00002367: CALLVALUE 00002368: LT 00002369: ISZERO 0000236a: PUSH2 0x23db 0000236d: JUMPI 0000236e: PUSH1 0x40 00002370: MLOAD 00002371: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002392: DUP2 00002393: MSTORE 00002394: PUSH1 0x04 00002396: ADD 00002397: DUP1 00002398: DUP1 00002399: PUSH1 0x20 0000239b: ADD 0000239c: DUP3 0000239d: DUP2 0000239e: SUB 0000239f: DUP3 000023a0: MSTORE 000023a1: PUSH1 0x13 000023a3: DUP2 000023a4: MSTORE 000023a5: PUSH1 0x20 000023a7: ADD 000023a8: DUP1 000023a9: PUSH32 0x46503a204f524445525f544f4f5f534d414c4c00000000000000000000000000 000023ca: DUP2 000023cb: MSTORE 000023cc: POP 000023cd: PUSH1 0x20 000023cf: ADD 000023d0: SWAP2 000023d1: POP 000023d2: POP 000023d3: PUSH1 0x40 000023d5: MLOAD 000023d6: DUP1 000023d7: SWAP2 000023d8: SUB 000023d9: SWAP1 000023da: REVERT 000023db: JUMPDEST 000023dc: PUSH1 0x00 000023de: PUSH2 0x23e5 000023e1: PUSH2 0x39e1 000023e4: JUMP 000023e5: JUMPDEST 000023e6: SWAP1 000023e7: POP 000023e8: PUSH1 0x00 000023ea: PUSH2 0x23f2 000023ed: DUP3 000023ee: PUSH2 0x3b27 000023f1: JUMP 000023f2: JUMPDEST 000023f3: SWAP1 000023f4: POP 000023f5: DUP1 000023f6: PUSH1 0x1a 000023f8: PUSH1 0x00 000023fa: CALLER 000023fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002410: AND 00002411: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002426: AND 00002427: DUP2 00002428: MSTORE 00002429: PUSH1 0x20 0000242b: ADD 0000242c: SWAP1 0000242d: DUP2 0000242e: MSTORE 0000242f: PUSH1 0x20 00002431: ADD 00002432: PUSH1 0x00 00002434: KECCAK256 00002435: SLOAD 00002436: LT 00002437: PUSH2 0x24a8 0000243a: JUMPI 0000243b: PUSH1 0x40 0000243d: MLOAD 0000243e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000245f: DUP2 00002460: MSTORE 00002461: PUSH1 0x04 00002463: ADD 00002464: DUP1 00002465: DUP1 00002466: PUSH1 0x20 00002468: ADD 00002469: DUP3 0000246a: DUP2 0000246b: SUB 0000246c: DUP3 0000246d: MSTORE 0000246e: PUSH1 0x1a 00002470: DUP2 00002471: MSTORE 00002472: PUSH1 0x20 00002474: ADD 00002475: DUP1 00002476: PUSH32 0x46503a204d41585f414c4c4f434154494f4e5f52454143484544000000000000 00002497: DUP2 00002498: MSTORE 00002499: POP 0000249a: PUSH1 0x20 0000249c: ADD 0000249d: SWAP2 0000249e: POP 0000249f: POP 000024a0: PUSH1 0x40 000024a2: MLOAD 000024a3: DUP1 000024a4: SWAP2 000024a5: SUB 000024a6: SWAP1 000024a7: REVERT 000024a8: JUMPDEST 000024a9: PUSH1 0x00 000024ab: PUSH2 0x24f5 000024ae: CALLVALUE 000024af: PUSH1 0x1a 000024b1: PUSH1 0x00 000024b3: CALLER 000024b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000024c9: AND 000024ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000024df: AND 000024e0: DUP2 000024e1: MSTORE 000024e2: PUSH1 0x20 000024e4: ADD 000024e5: SWAP1 000024e6: DUP2 000024e7: MSTORE 000024e8: PUSH1 0x20 000024ea: ADD 000024eb: PUSH1 0x00 000024ed: KECCAK256 000024ee: SLOAD 000024ef: DUP5 000024f0: SUB 000024f1: PUSH2 0x3c83 000024f4: JUMP 000024f5: JUMPDEST 000024f6: SWAP1 000024f7: POP 000024f8: PUSH1 0x00 000024fa: PUSH2 0x2533 000024fd: PUSH2 0x252b 00002500: PUSH1 0x1b 00002502: SLOAD 00002503: PUSH2 0x251d 00002506: PUSH8 0x0de0b6b3a7640000 0000250f: DUP7 00002510: PUSH2 0x3063 00002513: SWAP1 00002514: SWAP2 00002515: SWAP1 00002516: PUSH4 0xffffffff 0000251b: AND 0000251c: JUMP 0000251d: JUMPDEST 0000251e: PUSH2 0x30e9 00002521: SWAP1 00002522: SWAP2 00002523: SWAP1 00002524: PUSH4 0xffffffff 00002529: AND 0000252a: JUMP 0000252b: JUMPDEST 0000252c: PUSH1 0x0d 0000252e: SLOAD 0000252f: PUSH2 0x3c83 00002532: JUMP 00002533: JUMPDEST 00002534: SWAP1 00002535: POP 00002536: PUSH1 0x00 00002538: PUSH2 0x2566 0000253b: PUSH8 0x0de0b6b3a7640000 00002544: PUSH2 0x2558 00002547: PUSH1 0x1b 00002549: SLOAD 0000254a: DUP6 0000254b: PUSH2 0x3063 0000254e: SWAP1 0000254f: SWAP2 00002550: SWAP1 00002551: PUSH4 0xffffffff 00002556: AND 00002557: JUMP 00002558: JUMPDEST 00002559: PUSH2 0x30e9 0000255c: SWAP1 0000255d: SWAP2 0000255e: SWAP1 0000255f: PUSH4 0xffffffff 00002564: AND 00002565: JUMP 00002566: JUMPDEST 00002567: SWAP1 00002568: POP 00002569: PUSH1 0x00 0000256b: DUP2 0000256c: GT 0000256d: DUP1 0000256e: ISZERO 0000256f: PUSH2 0x2578 00002572: JUMPI 00002573: POP 00002574: PUSH1 0x00 00002576: DUP3 00002577: GT 00002578: JUMPDEST 00002579: PUSH2 0x25ea 0000257c: JUMPI 0000257d: PUSH1 0x40 0000257f: MLOAD 00002580: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000025a1: DUP2 000025a2: MSTORE 000025a3: PUSH1 0x04 000025a5: ADD 000025a6: DUP1 000025a7: DUP1 000025a8: PUSH1 0x20 000025aa: ADD 000025ab: DUP3 000025ac: DUP2 000025ad: SUB 000025ae: DUP3 000025af: MSTORE 000025b0: PUSH1 0x1a 000025b2: DUP2 000025b3: MSTORE 000025b4: PUSH1 0x20 000025b6: ADD 000025b7: DUP1 000025b8: PUSH32 0x46503a204d41585f414c4c4f434154494f4e5f52454143484544000000000000 000025d9: DUP2 000025da: MSTORE 000025db: POP 000025dc: PUSH1 0x20 000025de: ADD 000025df: SWAP2 000025e0: POP 000025e1: POP 000025e2: PUSH1 0x40 000025e4: MLOAD 000025e5: DUP1 000025e6: SWAP2 000025e7: SUB 000025e8: SWAP1 000025e9: REVERT 000025ea: JUMPDEST 000025eb: PUSH2 0x25f5 000025ee: CALLER 000025ef: DUP4 000025f0: DUP4 000025f1: PUSH2 0x3c9c 000025f4: JUMP 000025f5: JUMPDEST 000025f6: PUSH6 0x5af3107a4000 000025fd: PUSH2 0x260f 00002600: DUP3 00002601: CALLVALUE 00002602: PUSH2 0x2e80 00002605: SWAP1 00002606: SWAP2 00002607: SWAP1 00002608: PUSH4 0xffffffff 0000260d: AND 0000260e: JUMP 0000260f: JUMPDEST 00002610: LT 00002611: PUSH2 0x266e 00002614: JUMPI 00002615: CALLER 00002616: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000262b: AND 0000262c: PUSH2 0x08fc 0000262f: PUSH2 0x2641 00002632: DUP4 00002633: CALLVALUE 00002634: PUSH2 0x2e80 00002637: SWAP1 00002638: SWAP2 00002639: SWAP1 0000263a: PUSH4 0xffffffff 0000263f: AND 00002640: JUMP 00002641: JUMPDEST 00002642: SWAP1 00002643: DUP2 00002644: ISZERO 00002645: MUL 00002646: SWAP1 00002647: PUSH1 0x40 00002649: MLOAD 0000264a: PUSH1 0x00 0000264c: PUSH1 0x40 0000264e: MLOAD 0000264f: DUP1 00002650: DUP4 00002651: SUB 00002652: DUP2 00002653: DUP6 00002654: DUP9 00002655: DUP9 00002656: CALL 00002657: SWAP4 00002658: POP 00002659: POP 0000265a: POP 0000265b: POP 0000265c: ISZERO 0000265d: DUP1 0000265e: ISZERO 0000265f: PUSH2 0x266c 00002662: JUMPI 00002663: RETURNDATASIZE 00002664: PUSH1 0x00 00002666: DUP1 00002667: RETURNDATACOPY 00002668: RETURNDATASIZE 00002669: PUSH1 0x00 0000266b: REVERT 0000266c: JUMPDEST 0000266d: POP 0000266e: JUMPDEST 0000266f: POP 00002670: POP 00002671: POP 00002672: POP 00002673: POP 00002674: JUMP 00002675: JUMPDEST 00002676: PUSH2 0x267d 00002679: PUSH2 0x3375 0000267c: JUMP 0000267d: JUMPDEST 0000267e: DUP1 0000267f: PUSH1 0x03 00002681: PUSH1 0x00 00002683: PUSH2 0x0100 00002686: EXP 00002687: DUP2 00002688: SLOAD 00002689: DUP2 0000268a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000269f: MUL 000026a0: NOT 000026a1: AND 000026a2: SWAP1 000026a3: DUP4 000026a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000026b9: AND 000026ba: MUL 000026bb: OR 000026bc: SWAP1 000026bd: SSTORE 000026be: POP 000026bf: POP 000026c0: JUMP 000026c1: JUMPDEST 000026c2: PUSH2 0x26c9 000026c5: PUSH2 0x2f03 000026c8: JUMP 000026c9: JUMPDEST 000026ca: PUSH2 0x26d1 000026cd: PUSH2 0x2fc8 000026d0: JUMP 000026d1: JUMPDEST 000026d2: PUSH2 0x26da 000026d5: DUP2 000026d6: PUSH2 0x3dd5 000026d9: JUMP 000026da: JUMPDEST 000026db: DUP1 000026dc: PUSH1 0x09 000026de: DUP2 000026df: SWAP1 000026e0: SSTORE 000026e1: POP 000026e2: POP 000026e3: JUMP 000026e4: JUMPDEST 000026e5: PUSH2 0x26ec 000026e8: PUSH2 0x343a 000026eb: JUMP 000026ec: JUMPDEST 000026ed: PUSH2 0x26f4 000026f0: PUSH2 0x3894 000026f3: JUMP 000026f4: JUMPDEST 000026f5: PUSH1 0x04 000026f7: PUSH1 0x00 000026f9: SWAP1 000026fa: SLOAD 000026fb: SWAP1 000026fc: PUSH2 0x0100 000026ff: EXP 00002700: SWAP1 00002701: DIV 00002702: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002717: AND 00002718: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000272d: AND 0000272e: PUSH2 0x08fc 00002731: SELFBALANCE 00002732: SWAP1 00002733: DUP2 00002734: ISZERO 00002735: MUL 00002736: SWAP1 00002737: PUSH1 0x40 00002739: MLOAD 0000273a: PUSH1 0x00 0000273c: PUSH1 0x40 0000273e: MLOAD 0000273f: DUP1 00002740: DUP4 00002741: SUB 00002742: DUP2 00002743: DUP6 00002744: DUP9 00002745: DUP9 00002746: CALL 00002747: SWAP4 00002748: POP 00002749: POP 0000274a: POP 0000274b: POP 0000274c: ISZERO 0000274d: DUP1 0000274e: ISZERO 0000274f: PUSH2 0x275c 00002752: JUMPI 00002753: RETURNDATASIZE 00002754: PUSH1 0x00 00002756: DUP1 00002757: RETURNDATACOPY 00002758: RETURNDATASIZE 00002759: PUSH1 0x00 0000275b: REVERT 0000275c: JUMPDEST 0000275d: POP 0000275e: JUMP 0000275f: JUMPDEST 00002760: PUSH2 0x2767 00002763: PUSH2 0x2f03 00002766: JUMP 00002767: JUMPDEST 00002768: PUSH2 0x276f 0000276b: PUSH2 0x2fc8 0000276e: JUMP 0000276f: JUMPDEST 00002770: DUP1 00002771: PUSH1 0x04 00002773: PUSH1 0x00 00002775: PUSH2 0x0100 00002778: EXP 00002779: DUP2 0000277a: SLOAD 0000277b: DUP2 0000277c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002791: MUL 00002792: NOT 00002793: AND 00002794: SWAP1 00002795: DUP4 00002796: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027ab: AND 000027ac: MUL 000027ad: OR 000027ae: SWAP1 000027af: SSTORE 000027b0: POP 000027b1: POP 000027b2: JUMP 000027b3: JUMPDEST 000027b4: PUSH2 0x27bb 000027b7: PUSH2 0x36f6 000027ba: JUMP 000027bb: JUMPDEST 000027bc: PUSH2 0x27c3 000027bf: PUSH2 0x3894 000027c2: JUMP 000027c3: JUMPDEST 000027c4: PUSH1 0x05 000027c6: PUSH1 0x00 000027c8: SWAP1 000027c9: SLOAD 000027ca: SWAP1 000027cb: PUSH2 0x0100 000027ce: EXP 000027cf: SWAP1 000027d0: DIV 000027d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027e6: AND 000027e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027fc: AND 000027fd: PUSH4 0xa9059cbb 00002802: PUSH1 0x04 00002804: PUSH1 0x00 00002806: SWAP1 00002807: SLOAD 00002808: SWAP1 00002809: PUSH2 0x0100 0000280c: EXP 0000280d: SWAP1 0000280e: DIV 0000280f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002824: AND 00002825: PUSH1 0x05 00002827: PUSH1 0x00 00002829: SWAP1 0000282a: SLOAD 0000282b: SWAP1 0000282c: PUSH2 0x0100 0000282f: EXP 00002830: SWAP1 00002831: DIV 00002832: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002847: AND 00002848: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000285d: AND 0000285e: PUSH4 0x70a08231 00002863: ADDRESS 00002864: PUSH1 0x40 00002866: MLOAD 00002867: DUP3 00002868: PUSH4 0xffffffff 0000286d: AND 0000286e: PUSH1 0xe0 00002870: SHL 00002871: DUP2 00002872: MSTORE 00002873: PUSH1 0x04 00002875: ADD 00002876: DUP1 00002877: DUP3 00002878: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000288d: AND 0000288e: DUP2 0000288f: MSTORE 00002890: PUSH1 0x20 00002892: ADD 00002893: SWAP2 00002894: POP 00002895: POP 00002896: PUSH1 0x20 00002898: PUSH1 0x40 0000289a: MLOAD 0000289b: DUP1 0000289c: DUP4 0000289d: SUB 0000289e: DUP2 0000289f: DUP7 000028a0: DUP1 000028a1: EXTCODESIZE 000028a2: ISZERO 000028a3: DUP1 000028a4: ISZERO 000028a5: PUSH2 0x28ad 000028a8: JUMPI 000028a9: PUSH1 0x00 000028ab: DUP1 000028ac: REVERT 000028ad: JUMPDEST 000028ae: POP 000028af: GAS 000028b0: STATICCALL 000028b1: ISZERO 000028b2: DUP1 000028b3: ISZERO 000028b4: PUSH2 0x28c1 000028b7: JUMPI 000028b8: RETURNDATASIZE 000028b9: PUSH1 0x00 000028bb: DUP1 000028bc: RETURNDATACOPY 000028bd: RETURNDATASIZE 000028be: PUSH1 0x00 000028c0: REVERT 000028c1: JUMPDEST 000028c2: POP 000028c3: POP 000028c4: POP 000028c5: POP 000028c6: PUSH1 0x40 000028c8: MLOAD 000028c9: RETURNDATASIZE 000028ca: PUSH1 0x20 000028cc: DUP2 000028cd: LT 000028ce: ISZERO 000028cf: PUSH2 0x28d7 000028d2: JUMPI 000028d3: PUSH1 0x00 000028d5: DUP1 000028d6: REVERT 000028d7: JUMPDEST 000028d8: DUP2 000028d9: ADD 000028da: SWAP1 000028db: DUP1 000028dc: DUP1 000028dd: MLOAD 000028de: SWAP1 000028df: PUSH1 0x20 000028e1: ADD 000028e2: SWAP1 000028e3: SWAP3 000028e4: SWAP2 000028e5: SWAP1 000028e6: POP 000028e7: POP 000028e8: POP 000028e9: PUSH1 0x40 000028eb: MLOAD 000028ec: DUP4 000028ed: PUSH4 0xffffffff 000028f2: AND 000028f3: PUSH1 0xe0 000028f5: SHL 000028f6: DUP2 000028f7: MSTORE 000028f8: PUSH1 0x04 000028fa: ADD 000028fb: DUP1 000028fc: DUP4 000028fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002912: AND 00002913: DUP2 00002914: MSTORE 00002915: PUSH1 0x20 00002917: ADD 00002918: DUP3 00002919: DUP2 0000291a: MSTORE 0000291b: PUSH1 0x20 0000291d: ADD 0000291e: SWAP3 0000291f: POP 00002920: POP 00002921: POP 00002922: PUSH1 0x20 00002924: PUSH1 0x40 00002926: MLOAD 00002927: DUP1 00002928: DUP4 00002929: SUB 0000292a: DUP2 0000292b: PUSH1 0x00 0000292d: DUP8 0000292e: DUP1 0000292f: EXTCODESIZE 00002930: ISZERO 00002931: DUP1 00002932: ISZERO 00002933: PUSH2 0x293b 00002936: JUMPI 00002937: PUSH1 0x00 00002939: DUP1 0000293a: REVERT 0000293b: JUMPDEST 0000293c: POP 0000293d: GAS 0000293e: CALL 0000293f: ISZERO 00002940: DUP1 00002941: ISZERO 00002942: PUSH2 0x294f 00002945: JUMPI 00002946: RETURNDATASIZE 00002947: PUSH1 0x00 00002949: DUP1 0000294a: RETURNDATACOPY 0000294b: RETURNDATASIZE 0000294c: PUSH1 0x00 0000294e: REVERT 0000294f: JUMPDEST 00002950: POP 00002951: POP 00002952: POP 00002953: POP 00002954: PUSH1 0x40 00002956: MLOAD 00002957: RETURNDATASIZE 00002958: PUSH1 0x20 0000295a: DUP2 0000295b: LT 0000295c: ISZERO 0000295d: PUSH2 0x2965 00002960: JUMPI 00002961: PUSH1 0x00 00002963: DUP1 00002964: REVERT 00002965: JUMPDEST 00002966: DUP2 00002967: ADD 00002968: SWAP1 00002969: DUP1 0000296a: DUP1 0000296b: MLOAD 0000296c: SWAP1 0000296d: PUSH1 0x20 0000296f: ADD 00002970: SWAP1 00002971: SWAP3 00002972: SWAP2 00002973: SWAP1 00002974: POP 00002975: POP 00002976: POP 00002977: POP 00002978: JUMP 00002979: JUMPDEST 0000297a: PUSH1 0x13 0000297c: PUSH1 0x00 0000297e: SWAP1 0000297f: SLOAD 00002980: SWAP1 00002981: PUSH2 0x0100 00002984: EXP 00002985: SWAP1 00002986: DIV 00002987: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000299c: AND 0000299d: DUP2 0000299e: JUMP 0000299f: JUMPDEST 000029a0: PUSH2 0x29a7 000029a3: PUSH2 0x3375 000029a6: JUMP 000029a7: JUMPDEST 000029a8: DUP1 000029a9: PUSH1 0x15 000029ab: DUP2 000029ac: SWAP1 000029ad: SSTORE 000029ae: POP 000029af: PUSH32 0x25a4f2ff0abb0fd4627d671f1bbd9629eaef1acc636b847044100b1e6be42cc6 000029d0: PUSH1 0x15 000029d2: SLOAD 000029d3: PUSH1 0x40 000029d5: MLOAD 000029d6: DUP1 000029d7: DUP3 000029d8: DUP2 000029d9: MSTORE 000029da: PUSH1 0x20 000029dc: ADD 000029dd: SWAP2 000029de: POP 000029df: POP 000029e0: PUSH1 0x40 000029e2: MLOAD 000029e3: DUP1 000029e4: SWAP2 000029e5: SUB 000029e6: SWAP1 000029e7: LOG1 000029e8: POP 000029e9: JUMP 000029ea: JUMPDEST 000029eb: PUSH1 0x17 000029ed: PUSH1 0x00 000029ef: SWAP1 000029f0: SLOAD 000029f1: SWAP1 000029f2: PUSH2 0x0100 000029f5: EXP 000029f6: SWAP1 000029f7: DIV 000029f8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a0d: AND 00002a0e: DUP2 00002a0f: JUMP 00002a10: JUMPDEST 00002a11: PUSH1 0x01 00002a13: PUSH1 0x00 00002a15: SWAP1 00002a16: SLOAD 00002a17: SWAP1 00002a18: PUSH2 0x0100 00002a1b: EXP 00002a1c: SWAP1 00002a1d: DIV 00002a1e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a33: AND 00002a34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a49: AND 00002a4a: CALLER 00002a4b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a60: AND 00002a61: EQ 00002a62: PUSH2 0x2ad3 00002a65: JUMPI 00002a66: PUSH1 0x40 00002a68: MLOAD 00002a69: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a8a: DUP2 00002a8b: MSTORE 00002a8c: PUSH1 0x04 00002a8e: ADD 00002a8f: DUP1 00002a90: DUP1 00002a91: PUSH1 0x20 00002a93: ADD 00002a94: DUP3 00002a95: DUP2 00002a96: SUB 00002a97: DUP3 00002a98: MSTORE 00002a99: PUSH1 0x12 00002a9b: DUP2 00002a9c: MSTORE 00002a9d: PUSH1 0x20 00002a9f: ADD 00002aa0: DUP1 00002aa1: PUSH32 0x4f4e4c595f50524f4a4543545f41444d494e0000000000000000000000000000 00002ac2: DUP2 00002ac3: MSTORE 00002ac4: POP 00002ac5: PUSH1 0x20 00002ac7: ADD 00002ac8: SWAP2 00002ac9: POP 00002aca: POP 00002acb: PUSH1 0x40 00002acd: MLOAD 00002ace: DUP1 00002acf: SWAP2 00002ad0: SUB 00002ad1: SWAP1 00002ad2: REVERT 00002ad3: JUMPDEST 00002ad4: PUSH1 0x01 00002ad6: PUSH1 0x00 00002ad8: SWAP1 00002ad9: SLOAD 00002ada: SWAP1 00002adb: PUSH2 0x0100 00002ade: EXP 00002adf: SWAP1 00002ae0: DIV 00002ae1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002af6: AND 00002af7: PUSH1 0x00 00002af9: PUSH1 0x02 00002afb: PUSH2 0x0100 00002afe: EXP 00002aff: DUP2 00002b00: SLOAD 00002b01: DUP2 00002b02: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b17: MUL 00002b18: NOT 00002b19: AND 00002b1a: SWAP1 00002b1b: DUP4 00002b1c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b31: AND 00002b32: MUL 00002b33: OR 00002b34: SWAP1 00002b35: SSTORE 00002b36: POP 00002b37: JUMP 00002b38: JUMPDEST 00002b39: PUSH1 0x03 00002b3b: PUSH1 0x00 00002b3d: SWAP1 00002b3e: SLOAD 00002b3f: SWAP1 00002b40: PUSH2 0x0100 00002b43: EXP 00002b44: SWAP1 00002b45: DIV 00002b46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b5b: AND 00002b5c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b71: AND 00002b72: CALLER 00002b73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b88: AND 00002b89: EQ 00002b8a: PUSH2 0x2bfb 00002b8d: JUMPI 00002b8e: PUSH1 0x40 00002b90: MLOAD 00002b91: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002bb2: DUP2 00002bb3: MSTORE 00002bb4: PUSH1 0x04 00002bb6: ADD 00002bb7: DUP1 00002bb8: DUP1 00002bb9: PUSH1 0x20 00002bbb: ADD 00002bbc: DUP3 00002bbd: DUP2 00002bbe: SUB 00002bbf: DUP3 00002bc0: MSTORE 00002bc1: PUSH1 0x10 00002bc3: DUP2 00002bc4: MSTORE 00002bc5: PUSH1 0x20 00002bc7: ADD 00002bc8: DUP1 00002bc9: PUSH32 0x4f4e4c595f52415a45525f41444d494e00000000000000000000000000000000 00002bea: DUP2 00002beb: MSTORE 00002bec: POP 00002bed: PUSH1 0x20 00002bef: ADD 00002bf0: SWAP2 00002bf1: POP 00002bf2: POP 00002bf3: PUSH1 0x40 00002bf5: MLOAD 00002bf6: DUP1 00002bf7: SWAP2 00002bf8: SUB 00002bf9: SWAP1 00002bfa: REVERT 00002bfb: JUMPDEST 00002bfc: PUSH1 0x03 00002bfe: PUSH1 0x00 00002c00: SWAP1 00002c01: SLOAD 00002c02: SWAP1 00002c03: PUSH2 0x0100 00002c06: EXP 00002c07: SWAP1 00002c08: DIV 00002c09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c1e: AND 00002c1f: PUSH1 0x02 00002c21: PUSH1 0x00 00002c23: PUSH2 0x0100 00002c26: EXP 00002c27: DUP2 00002c28: SLOAD 00002c29: DUP2 00002c2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c3f: MUL 00002c40: NOT 00002c41: AND 00002c42: SWAP1 00002c43: DUP4 00002c44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c59: AND 00002c5a: MUL 00002c5b: OR 00002c5c: SWAP1 00002c5d: SSTORE 00002c5e: POP 00002c5f: JUMP 00002c60: JUMPDEST 00002c61: PUSH2 0x2c68 00002c64: PUSH2 0x3375 00002c67: JUMP 00002c68: JUMPDEST 00002c69: PUSH2 0x2c70 00002c6c: PUSH2 0x3ec6 00002c6f: JUMP 00002c70: JUMPDEST 00002c71: PUSH1 0x07 00002c73: SLOAD 00002c74: TIMESTAMP 00002c75: LT 00002c76: ISZERO 00002c77: PUSH2 0x2ce8 00002c7a: JUMPI 00002c7b: PUSH1 0x40 00002c7d: MLOAD 00002c7e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c9f: DUP2 00002ca0: MSTORE 00002ca1: PUSH1 0x04 00002ca3: ADD 00002ca4: DUP1 00002ca5: DUP1 00002ca6: PUSH1 0x20 00002ca8: ADD 00002ca9: DUP3 00002caa: DUP2 00002cab: SUB 00002cac: DUP3 00002cad: MSTORE 00002cae: PUSH1 0x0f 00002cb0: DUP2 00002cb1: MSTORE 00002cb2: PUSH1 0x20 00002cb4: ADD 00002cb5: DUP1 00002cb6: PUSH32 0x426173653a20544f4f5f4541524c590000000000000000000000000000000000 00002cd7: DUP2 00002cd8: MSTORE 00002cd9: POP 00002cda: PUSH1 0x20 00002cdc: ADD 00002cdd: SWAP2 00002cde: POP 00002cdf: POP 00002ce0: PUSH1 0x40 00002ce2: MLOAD 00002ce3: DUP1 00002ce4: SWAP2 00002ce5: SUB 00002ce6: SWAP1 00002ce7: REVERT 00002ce8: JUMPDEST 00002ce9: PUSH1 0x00 00002ceb: PUSH1 0x12 00002ced: SLOAD 00002cee: GT 00002cef: ISZERO 00002cf0: PUSH2 0x2e2f 00002cf3: JUMPI 00002cf4: PUSH1 0x12 00002cf6: SLOAD 00002cf7: PUSH1 0x13 00002cf9: PUSH1 0x00 00002cfb: SWAP1 00002cfc: SLOAD 00002cfd: SWAP1 00002cfe: PUSH2 0x0100 00002d01: EXP 00002d02: SWAP1 00002d03: DIV 00002d04: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d19: AND 00002d1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d2f: AND 00002d30: PUSH4 0x70a08231 00002d35: ADDRESS 00002d36: PUSH1 0x40 00002d38: MLOAD 00002d39: DUP3 00002d3a: PUSH4 0xffffffff 00002d3f: AND 00002d40: PUSH1 0xe0 00002d42: SHL 00002d43: DUP2 00002d44: MSTORE 00002d45: PUSH1 0x04 00002d47: ADD 00002d48: DUP1 00002d49: DUP3 00002d4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d5f: AND 00002d60: DUP2 00002d61: MSTORE 00002d62: PUSH1 0x20 00002d64: ADD 00002d65: SWAP2 00002d66: POP 00002d67: POP 00002d68: PUSH1 0x20 00002d6a: PUSH1 0x40 00002d6c: MLOAD 00002d6d: DUP1 00002d6e: DUP4 00002d6f: SUB 00002d70: DUP2 00002d71: DUP7 00002d72: DUP1 00002d73: EXTCODESIZE 00002d74: ISZERO 00002d75: DUP1 00002d76: ISZERO 00002d77: PUSH2 0x2d7f 00002d7a: JUMPI 00002d7b: PUSH1 0x00 00002d7d: DUP1 00002d7e: REVERT 00002d7f: JUMPDEST 00002d80: POP 00002d81: GAS 00002d82: STATICCALL 00002d83: ISZERO 00002d84: DUP1 00002d85: ISZERO 00002d86: PUSH2 0x2d93 00002d89: JUMPI 00002d8a: RETURNDATASIZE 00002d8b: PUSH1 0x00 00002d8d: DUP1 00002d8e: RETURNDATACOPY 00002d8f: RETURNDATASIZE 00002d90: PUSH1 0x00 00002d92: REVERT 00002d93: JUMPDEST 00002d94: POP 00002d95: POP 00002d96: POP 00002d97: POP 00002d98: PUSH1 0x40 00002d9a: MLOAD 00002d9b: RETURNDATASIZE 00002d9c: PUSH1 0x20 00002d9e: DUP2 00002d9f: LT 00002da0: ISZERO 00002da1: PUSH2 0x2da9 00002da4: JUMPI 00002da5: PUSH1 0x00 00002da7: DUP1 00002da8: REVERT 00002da9: JUMPDEST 00002daa: DUP2 00002dab: ADD 00002dac: SWAP1 00002dad: DUP1 00002dae: DUP1 00002daf: MLOAD 00002db0: SWAP1 00002db1: PUSH1 0x20 00002db3: ADD 00002db4: SWAP1 00002db5: SWAP3 00002db6: SWAP2 00002db7: SWAP1 00002db8: POP 00002db9: POP 00002dba: POP 00002dbb: LT 00002dbc: ISZERO 00002dbd: PUSH2 0x2e2e 00002dc0: JUMPI 00002dc1: PUSH1 0x40 00002dc3: MLOAD 00002dc4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002de5: DUP2 00002de6: MSTORE 00002de7: PUSH1 0x04 00002de9: ADD 00002dea: DUP1 00002deb: DUP1 00002dec: PUSH1 0x20 00002dee: ADD 00002def: DUP3 00002df0: DUP2 00002df1: SUB 00002df2: DUP3 00002df3: MSTORE 00002df4: PUSH1 0x14 00002df6: DUP2 00002df7: MSTORE 00002df8: PUSH1 0x20 00002dfa: ADD 00002dfb: DUP1 00002dfc: PUSH32 0x426173653a204e4f545f454e4f5547485f4f4343000000000000000000000000 00002e1d: DUP2 00002e1e: MSTORE 00002e1f: POP 00002e20: PUSH1 0x20 00002e22: ADD 00002e23: SWAP2 00002e24: POP 00002e25: POP 00002e26: PUSH1 0x40 00002e28: MLOAD 00002e29: DUP1 00002e2a: SWAP2 00002e2b: SUB 00002e2c: SWAP1 00002e2d: REVERT 00002e2e: JUMPDEST 00002e2f: JUMPDEST 00002e30: PUSH1 0x02 00002e32: PUSH1 0x00 00002e34: DUP1 00002e35: PUSH2 0x0100 00002e38: EXP 00002e39: DUP2 00002e3a: SLOAD 00002e3b: DUP2 00002e3c: PUSH1 0xff 00002e3e: MUL 00002e3f: NOT 00002e40: AND 00002e41: SWAP1 00002e42: DUP4 00002e43: PUSH1 0x05 00002e45: DUP2 00002e46: GT 00002e47: ISZERO 00002e48: PUSH2 0x2e4d 00002e4b: JUMPI 00002e4c: INVALID 00002e4d: JUMPDEST 00002e4e: MUL 00002e4f: OR 00002e50: SWAP1 00002e51: SSTORE 00002e52: POP 00002e53: JUMP 00002e54: JUMPDEST 00002e55: PUSH1 0x05 00002e57: PUSH1 0x00 00002e59: SWAP1 00002e5a: SLOAD 00002e5b: SWAP1 00002e5c: PUSH2 0x0100 00002e5f: EXP 00002e60: SWAP1 00002e61: DIV 00002e62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e77: AND 00002e78: DUP2 00002e79: JUMP 00002e7a: JUMPDEST 00002e7b: PUSH1 0x12 00002e7d: SLOAD 00002e7e: DUP2 00002e7f: JUMP 00002e80: JUMPDEST 00002e81: PUSH1 0x00 00002e83: DUP3 00002e84: DUP3 00002e85: GT 00002e86: ISZERO 00002e87: PUSH2 0x2ef8 00002e8a: JUMPI 00002e8b: PUSH1 0x40 00002e8d: MLOAD 00002e8e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002eaf: DUP2 00002eb0: MSTORE 00002eb1: PUSH1 0x04 00002eb3: ADD 00002eb4: DUP1 00002eb5: DUP1 00002eb6: PUSH1 0x20 00002eb8: ADD 00002eb9: DUP3 00002eba: DUP2 00002ebb: SUB 00002ebc: DUP3 00002ebd: MSTORE 00002ebe: PUSH1 0x1e 00002ec0: DUP2 00002ec1: MSTORE 00002ec2: PUSH1 0x20 00002ec4: ADD 00002ec5: DUP1 00002ec6: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 00002ee7: DUP2 00002ee8: MSTORE 00002ee9: POP 00002eea: PUSH1 0x20 00002eec: ADD 00002eed: SWAP2 00002eee: POP 00002eef: POP 00002ef0: PUSH1 0x40 00002ef2: MLOAD 00002ef3: DUP1 00002ef4: SWAP2 00002ef5: SUB 00002ef6: SWAP1 00002ef7: REVERT 00002ef8: JUMPDEST 00002ef9: DUP2 00002efa: DUP4 00002efb: SUB 00002efc: SWAP1 00002efd: POP 00002efe: SWAP3 00002eff: SWAP2 00002f00: POP 00002f01: POP 00002f02: JUMP 00002f03: JUMPDEST 00002f04: PUSH1 0x00 00002f06: PUSH1 0x02 00002f08: SWAP1 00002f09: SLOAD 00002f0a: SWAP1 00002f0b: PUSH2 0x0100 00002f0e: EXP 00002f0f: SWAP1 00002f10: DIV 00002f11: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f26: AND 00002f27: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f3c: AND 00002f3d: CALLER 00002f3e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f53: AND 00002f54: EQ 00002f55: PUSH2 0x2fc6 00002f58: JUMPI 00002f59: PUSH1 0x40 00002f5b: MLOAD 00002f5c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002f7d: DUP2 00002f7e: MSTORE 00002f7f: PUSH1 0x04 00002f81: ADD 00002f82: DUP1 00002f83: DUP1 00002f84: PUSH1 0x20 00002f86: ADD 00002f87: DUP3 00002f88: DUP2 00002f89: SUB 00002f8a: DUP3 00002f8b: MSTORE 00002f8c: PUSH1 0x12 00002f8e: DUP2 00002f8f: MSTORE 00002f90: PUSH1 0x20 00002f92: ADD 00002f93: DUP1 00002f94: PUSH32 0x4f4e4c595f50524f4a4543545f41444d494e0000000000000000000000000000 00002fb5: DUP2 00002fb6: MSTORE 00002fb7: POP 00002fb8: PUSH1 0x20 00002fba: ADD 00002fbb: SWAP2 00002fbc: POP 00002fbd: POP 00002fbe: PUSH1 0x40 00002fc0: MLOAD 00002fc1: DUP1 00002fc2: SWAP2 00002fc3: SUB 00002fc4: SWAP1 00002fc5: REVERT 00002fc6: JUMPDEST 00002fc7: JUMP 00002fc8: JUMPDEST 00002fc9: PUSH1 0x00 00002fcb: PUSH1 0x05 00002fcd: DUP2 00002fce: GT 00002fcf: ISZERO 00002fd0: PUSH2 0x2fd5 00002fd3: JUMPI 00002fd4: INVALID 00002fd5: JUMPDEST 00002fd6: PUSH1 0x00 00002fd8: DUP1 00002fd9: SLOAD 00002fda: SWAP1 00002fdb: PUSH2 0x0100 00002fde: EXP 00002fdf: SWAP1 00002fe0: DIV 00002fe1: PUSH1 0xff 00002fe3: AND 00002fe4: PUSH1 0x05 00002fe6: DUP2 00002fe7: GT 00002fe8: ISZERO 00002fe9: PUSH2 0x2fee 00002fec: JUMPI 00002fed: INVALID 00002fee: JUMPDEST 00002fef: EQ 00002ff0: PUSH2 0x3061 00002ff3: JUMPI 00002ff4: PUSH1 0x40 00002ff6: MLOAD 00002ff7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003018: DUP2 00003019: MSTORE 0000301a: PUSH1 0x04 0000301c: ADD 0000301d: DUP1 0000301e: DUP1 0000301f: PUSH1 0x20 00003021: ADD 00003022: DUP3 00003023: DUP2 00003024: SUB 00003025: DUP3 00003026: MSTORE 00003027: PUSH1 0x17 00003029: DUP2 0000302a: MSTORE 0000302b: PUSH1 0x20 0000302d: ADD 0000302e: DUP1 0000302f: PUSH32 0x4f4e4c595f445552494e475f494e495449414c495a4544000000000000000000 00003050: DUP2 00003051: MSTORE 00003052: POP 00003053: PUSH1 0x20 00003055: ADD 00003056: SWAP2 00003057: POP 00003058: POP 00003059: PUSH1 0x40 0000305b: MLOAD 0000305c: DUP1 0000305d: SWAP2 0000305e: SUB 0000305f: SWAP1 00003060: REVERT 00003061: JUMPDEST 00003062: JUMP 00003063: JUMPDEST 00003064: PUSH1 0x00 00003066: DUP1 00003067: DUP4 00003068: EQ 00003069: ISZERO 0000306a: PUSH2 0x3076 0000306d: JUMPI 0000306e: PUSH1 0x00 00003070: SWAP1 00003071: POP 00003072: PUSH2 0x30e3 00003075: JUMP 00003076: JUMPDEST 00003077: PUSH1 0x00 00003079: DUP3 0000307a: DUP5 0000307b: MUL 0000307c: SWAP1 0000307d: POP 0000307e: DUP3 0000307f: DUP5 00003080: DUP3 00003081: DUP2 00003082: PUSH2 0x3087 00003085: JUMPI 00003086: INVALID 00003087: JUMPDEST 00003088: DIV 00003089: EQ 0000308a: PUSH2 0x30de 0000308d: JUMPI 0000308e: PUSH1 0x40 00003090: MLOAD 00003091: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000030b2: DUP2 000030b3: MSTORE 000030b4: PUSH1 0x04 000030b6: ADD 000030b7: DUP1 000030b8: DUP1 000030b9: PUSH1 0x20 000030bb: ADD 000030bc: DUP3 000030bd: DUP2 000030be: SUB 000030bf: DUP3 000030c0: MSTORE 000030c1: PUSH1 0x21 000030c3: DUP2 000030c4: MSTORE 000030c5: PUSH1 0x20 000030c7: ADD 000030c8: DUP1 000030c9: PUSH2 0x461e 000030cc: PUSH1 0x21 000030ce: SWAP2 000030cf: CODECOPY 000030d0: PUSH1 0x40 000030d2: ADD 000030d3: SWAP2 000030d4: POP 000030d5: POP 000030d6: PUSH1 0x40 000030d8: MLOAD 000030d9: DUP1 000030da: SWAP2 000030db: SUB 000030dc: SWAP1 000030dd: REVERT 000030de: JUMPDEST 000030df: DUP1 000030e0: SWAP2 000030e1: POP 000030e2: POP 000030e3: JUMPDEST 000030e4: SWAP3 000030e5: SWAP2 000030e6: POP 000030e7: POP 000030e8: JUMP 000030e9: JUMPDEST 000030ea: PUSH1 0x00 000030ec: DUP1 000030ed: DUP3 000030ee: GT 000030ef: PUSH2 0x3160 000030f2: JUMPI 000030f3: PUSH1 0x40 000030f5: MLOAD 000030f6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003117: DUP2 00003118: MSTORE 00003119: PUSH1 0x04 0000311b: ADD 0000311c: DUP1 0000311d: DUP1 0000311e: PUSH1 0x20 00003120: ADD 00003121: DUP3 00003122: DUP2 00003123: SUB 00003124: DUP3 00003125: MSTORE 00003126: PUSH1 0x1a 00003128: DUP2 00003129: MSTORE 0000312a: PUSH1 0x20 0000312c: ADD 0000312d: DUP1 0000312e: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 0000314f: DUP2 00003150: MSTORE 00003151: POP 00003152: PUSH1 0x20 00003154: ADD 00003155: SWAP2 00003156: POP 00003157: POP 00003158: PUSH1 0x40 0000315a: MLOAD 0000315b: DUP1 0000315c: SWAP2 0000315d: SUB 0000315e: SWAP1 0000315f: REVERT 00003160: JUMPDEST 00003161: DUP2 00003162: DUP4 00003163: DUP2 00003164: PUSH2 0x3169 00003167: JUMPI 00003168: INVALID 00003169: JUMPDEST 0000316a: DIV 0000316b: SWAP1 0000316c: POP 0000316d: SWAP3 0000316e: SWAP2 0000316f: POP 00003170: POP 00003171: JUMP 00003172: JUMPDEST 00003173: PUSH2 0x317a 00003176: PUSH2 0x2f03 00003179: JUMP 0000317a: JUMPDEST 0000317b: PUSH2 0x3182 0000317e: PUSH2 0x2fc8 00003181: JUMP 00003182: JUMPDEST 00003183: PUSH2 0x3190 00003186: PUSH1 0x07 00003188: SLOAD 00003189: PUSH1 0x08 0000318b: SLOAD 0000318c: PUSH2 0x3791 0000318f: JUMP 00003190: JUMPDEST 00003191: PUSH2 0x319b 00003194: PUSH1 0x09 00003196: SLOAD 00003197: PUSH2 0x3dd5 0000319a: JUMP 0000319b: JUMPDEST 0000319c: PUSH2 0x31a3 0000319f: PUSH2 0x3f61 000031a2: JUMP 000031a3: JUMPDEST 000031a4: PUSH1 0x06 000031a6: SLOAD 000031a7: PUSH1 0x05 000031a9: PUSH1 0x00 000031ab: SWAP1 000031ac: SLOAD 000031ad: SWAP1 000031ae: PUSH2 0x0100 000031b1: EXP 000031b2: SWAP1 000031b3: DIV 000031b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000031c9: AND 000031ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000031df: AND 000031e0: PUSH4 0x70a08231 000031e5: ADDRESS 000031e6: PUSH1 0x40 000031e8: MLOAD 000031e9: DUP3 000031ea: PUSH4 0xffffffff 000031ef: AND 000031f0: PUSH1 0xe0 000031f2: SHL 000031f3: DUP2 000031f4: MSTORE 000031f5: PUSH1 0x04 000031f7: ADD 000031f8: DUP1 000031f9: DUP3 000031fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000320f: AND 00003210: DUP2 00003211: MSTORE 00003212: PUSH1 0x20 00003214: ADD 00003215: SWAP2 00003216: POP 00003217: POP 00003218: PUSH1 0x20 0000321a: PUSH1 0x40 0000321c: MLOAD 0000321d: DUP1 0000321e: DUP4 0000321f: SUB 00003220: DUP2 00003221: DUP7 00003222: DUP1 00003223: EXTCODESIZE 00003224: ISZERO 00003225: DUP1 00003226: ISZERO 00003227: PUSH2 0x322f 0000322a: JUMPI 0000322b: PUSH1 0x00 0000322d: DUP1 0000322e: REVERT 0000322f: JUMPDEST 00003230: POP 00003231: GAS 00003232: STATICCALL 00003233: ISZERO 00003234: DUP1 00003235: ISZERO 00003236: PUSH2 0x3243 00003239: JUMPI 0000323a: RETURNDATASIZE 0000323b: PUSH1 0x00 0000323d: DUP1 0000323e: RETURNDATACOPY 0000323f: RETURNDATASIZE 00003240: PUSH1 0x00 00003242: REVERT 00003243: JUMPDEST 00003244: POP 00003245: POP 00003246: POP 00003247: POP 00003248: PUSH1 0x40 0000324a: MLOAD 0000324b: RETURNDATASIZE 0000324c: PUSH1 0x20 0000324e: DUP2 0000324f: LT 00003250: ISZERO 00003251: PUSH2 0x3259 00003254: JUMPI 00003255: PUSH1 0x00 00003257: DUP1 00003258: REVERT 00003259: JUMPDEST 0000325a: DUP2 0000325b: ADD 0000325c: SWAP1 0000325d: DUP1 0000325e: DUP1 0000325f: MLOAD 00003260: SWAP1 00003261: PUSH1 0x20 00003263: ADD 00003264: SWAP1 00003265: SWAP3 00003266: SWAP2 00003267: SWAP1 00003268: POP 00003269: POP 0000326a: POP 0000326b: LT 0000326c: ISZERO 0000326d: PUSH2 0x32de 00003270: JUMPI 00003271: PUSH1 0x40 00003273: MLOAD 00003274: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003295: DUP2 00003296: MSTORE 00003297: PUSH1 0x04 00003299: ADD 0000329a: DUP1 0000329b: DUP1 0000329c: PUSH1 0x20 0000329e: ADD 0000329f: DUP3 000032a0: DUP2 000032a1: SUB 000032a2: DUP3 000032a3: MSTORE 000032a4: PUSH1 0x1f 000032a6: DUP2 000032a7: MSTORE 000032a8: PUSH1 0x20 000032aa: ADD 000032ab: DUP1 000032ac: PUSH32 0x426173653a204e4f545f454e4f5547485f50524f4a4543545f544f4b454e5300 000032cd: DUP2 000032ce: MSTORE 000032cf: POP 000032d0: PUSH1 0x20 000032d2: ADD 000032d3: SWAP2 000032d4: POP 000032d5: POP 000032d6: PUSH1 0x40 000032d8: MLOAD 000032d9: DUP1 000032da: SWAP2 000032db: SUB 000032dc: SWAP1 000032dd: REVERT 000032de: JUMPDEST 000032df: PUSH2 0x3308 000032e2: PUSH1 0x64 000032e4: PUSH2 0x32fa 000032e7: PUSH1 0x09 000032e9: SLOAD 000032ea: PUSH1 0x06 000032ec: SLOAD 000032ed: PUSH2 0x3063 000032f0: SWAP1 000032f1: SWAP2 000032f2: SWAP1 000032f3: PUSH4 0xffffffff 000032f8: AND 000032f9: JUMP 000032fa: JUMPDEST 000032fb: PUSH2 0x30e9 000032fe: SWAP1 000032ff: SWAP2 00003300: SWAP1 00003301: PUSH4 0xffffffff 00003306: AND 00003307: JUMP 00003308: JUMPDEST 00003309: PUSH1 0x0a 0000330b: DUP2 0000330c: SWAP1 0000330d: SSTORE 0000330e: POP 0000330f: PUSH1 0x08 00003311: SLOAD 00003312: PUSH1 0x15 00003314: DUP2 00003315: SWAP1 00003316: SSTORE 00003317: POP 00003318: PUSH32 0x25a4f2ff0abb0fd4627d671f1bbd9629eaef1acc636b847044100b1e6be42cc6 00003339: PUSH1 0x15 0000333b: SLOAD 0000333c: PUSH1 0x40 0000333e: MLOAD 0000333f: DUP1 00003340: DUP3 00003341: DUP2 00003342: MSTORE 00003343: PUSH1 0x20 00003345: ADD 00003346: SWAP2 00003347: POP 00003348: POP 00003349: PUSH1 0x40 0000334b: MLOAD 0000334c: DUP1 0000334d: SWAP2 0000334e: SUB 0000334f: SWAP1 00003350: LOG1 00003351: PUSH1 0x01 00003353: PUSH1 0x00 00003355: DUP1 00003356: PUSH2 0x0100 00003359: EXP 0000335a: DUP2 0000335b: SLOAD 0000335c: DUP2 0000335d: PUSH1 0xff 0000335f: MUL 00003360: NOT 00003361: AND 00003362: SWAP1 00003363: DUP4 00003364: PUSH1 0x05 00003366: DUP2 00003367: GT 00003368: ISZERO 00003369: PUSH2 0x336e 0000336c: JUMPI 0000336d: INVALID 0000336e: JUMPDEST 0000336f: MUL 00003370: OR 00003371: SWAP1 00003372: SSTORE 00003373: POP 00003374: JUMP 00003375: JUMPDEST 00003376: PUSH1 0x02 00003378: PUSH1 0x00 0000337a: SWAP1 0000337b: SLOAD 0000337c: SWAP1 0000337d: PUSH2 0x0100 00003380: EXP 00003381: SWAP1 00003382: DIV 00003383: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003398: AND 00003399: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000033ae: AND 000033af: CALLER 000033b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000033c5: AND 000033c6: EQ 000033c7: PUSH2 0x3438 000033ca: JUMPI 000033cb: PUSH1 0x40 000033cd: MLOAD 000033ce: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000033ef: DUP2 000033f0: MSTORE 000033f1: PUSH1 0x04 000033f3: ADD 000033f4: DUP1 000033f5: DUP1 000033f6: PUSH1 0x20 000033f8: ADD 000033f9: DUP3 000033fa: DUP2 000033fb: SUB 000033fc: DUP3 000033fd: MSTORE 000033fe: PUSH1 0x10 00003400: DUP2 00003401: MSTORE 00003402: PUSH1 0x20 00003404: ADD 00003405: DUP1 00003406: PUSH32 0x4f4e4c595f52415a45525f41444d494e00000000000000000000000000000000 00003427: DUP2 00003428: MSTORE 00003429: POP 0000342a: PUSH1 0x20 0000342c: ADD 0000342d: SWAP2 0000342e: POP 0000342f: POP 00003430: PUSH1 0x40 00003432: MLOAD 00003433: DUP1 00003434: SWAP2 00003435: SUB 00003436: SWAP1 00003437: REVERT 00003438: JUMPDEST 00003439: JUMP 0000343a: JUMPDEST 0000343b: PUSH1 0x03 0000343d: PUSH1 0x05 0000343f: DUP2 00003440: GT 00003441: ISZERO 00003442: PUSH2 0x3447 00003445: JUMPI 00003446: INVALID 00003447: JUMPDEST 00003448: PUSH1 0x00 0000344a: DUP1 0000344b: SLOAD 0000344c: SWAP1 0000344d: PUSH2 0x0100 00003450: EXP 00003451: SWAP1 00003452: DIV 00003453: PUSH1 0xff 00003455: AND 00003456: PUSH1 0x05 00003458: DUP2 00003459: GT 0000345a: ISZERO 0000345b: PUSH2 0x3460 0000345e: JUMPI 0000345f: INVALID 00003460: JUMPDEST 00003461: EQ 00003462: PUSH2 0x34d3 00003465: JUMPI 00003466: PUSH1 0x40 00003468: MLOAD 00003469: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000348a: DUP2 0000348b: MSTORE 0000348c: PUSH1 0x04 0000348e: ADD 0000348f: DUP1 00003490: DUP1 00003491: PUSH1 0x20 00003493: ADD 00003494: DUP3 00003495: DUP2 00003496: SUB 00003497: DUP3 00003498: MSTORE 00003499: PUSH1 0x13 0000349b: DUP2 0000349c: MSTORE 0000349d: PUSH1 0x20 0000349f: ADD 000034a0: DUP1 000034a1: PUSH32 0x4f4e4c595f445552494e475f5355434345535300000000000000000000000000 000034c2: DUP2 000034c3: MSTORE 000034c4: POP 000034c5: PUSH1 0x20 000034c7: ADD 000034c8: SWAP2 000034c9: POP 000034ca: POP 000034cb: PUSH1 0x40 000034cd: MLOAD 000034ce: DUP1 000034cf: SWAP2 000034d0: SUB 000034d1: SWAP1 000034d2: REVERT 000034d3: JUMPDEST 000034d4: JUMP 000034d5: JUMPDEST 000034d6: PUSH2 0x3572 000034d9: DUP4 000034da: PUSH4 0xa9059cbb 000034df: PUSH1 0xe0 000034e1: SHL 000034e2: DUP5 000034e3: DUP5 000034e4: PUSH1 0x40 000034e6: MLOAD 000034e7: PUSH1 0x24 000034e9: ADD 000034ea: DUP1 000034eb: DUP4 000034ec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003501: AND 00003502: DUP2 00003503: MSTORE 00003504: PUSH1 0x20 00003506: ADD 00003507: DUP3 00003508: DUP2 00003509: MSTORE 0000350a: PUSH1 0x20 0000350c: ADD 0000350d: SWAP3 0000350e: POP 0000350f: POP 00003510: POP 00003511: PUSH1 0x40 00003513: MLOAD 00003514: PUSH1 0x20 00003516: DUP2 00003517: DUP4 00003518: SUB 00003519: SUB 0000351a: DUP2 0000351b: MSTORE 0000351c: SWAP1 0000351d: PUSH1 0x40 0000351f: MSTORE 00003520: SWAP1 00003521: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 0000353e: NOT 0000353f: AND 00003540: PUSH1 0x20 00003542: DUP3 00003543: ADD 00003544: DUP1 00003545: MLOAD 00003546: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003563: DUP4 00003564: DUP2 00003565: DUP4 00003566: AND 00003567: OR 00003568: DUP4 00003569: MSTORE 0000356a: POP 0000356b: POP 0000356c: POP 0000356d: POP 0000356e: PUSH2 0x41c9 00003571: JUMP 00003572: JUMPDEST 00003573: POP 00003574: POP 00003575: POP 00003576: JUMP 00003577: JUMPDEST 00003578: PUSH1 0x05 0000357a: DUP1 0000357b: DUP2 0000357c: GT 0000357d: ISZERO 0000357e: PUSH2 0x3583 00003581: JUMPI 00003582: INVALID 00003583: JUMPDEST 00003584: PUSH1 0x00 00003586: DUP1 00003587: SLOAD 00003588: SWAP1 00003589: PUSH2 0x0100 0000358c: EXP 0000358d: SWAP1 0000358e: DIV 0000358f: PUSH1 0xff 00003591: AND 00003592: PUSH1 0x05 00003594: DUP2 00003595: GT 00003596: ISZERO 00003597: PUSH2 0x359c 0000359a: JUMPI 0000359b: INVALID 0000359c: JUMPDEST 0000359d: EQ 0000359e: PUSH2 0x360f 000035a1: JUMPI 000035a2: PUSH1 0x40 000035a4: MLOAD 000035a5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000035c6: DUP2 000035c7: MSTORE 000035c8: PUSH1 0x04 000035ca: ADD 000035cb: DUP1 000035cc: DUP1 000035cd: PUSH1 0x20 000035cf: ADD 000035d0: DUP3 000035d1: DUP2 000035d2: SUB 000035d3: DUP3 000035d4: MSTORE 000035d5: PUSH1 0x12 000035d7: DUP2 000035d8: MSTORE 000035d9: PUSH1 0x20 000035db: ADD 000035dc: DUP1 000035dd: PUSH32 0x4f4e4c595f445552494e475f5041555345440000000000000000000000000000 000035fe: DUP2 000035ff: MSTORE 00003600: POP 00003601: PUSH1 0x20 00003603: ADD 00003604: SWAP2 00003605: POP 00003606: POP 00003607: PUSH1 0x40 00003609: MLOAD 0000360a: DUP1 0000360b: SWAP2 0000360c: SUB 0000360d: SWAP1 0000360e: REVERT 0000360f: JUMPDEST 00003610: JUMP 00003611: JUMPDEST 00003612: PUSH1 0x02 00003614: PUSH1 0x05 00003616: DUP2 00003617: GT 00003618: ISZERO 00003619: PUSH2 0x361e 0000361c: JUMPI 0000361d: INVALID 0000361e: JUMPDEST 0000361f: PUSH1 0x00 00003621: DUP1 00003622: SLOAD 00003623: SWAP1 00003624: PUSH2 0x0100 00003627: EXP 00003628: SWAP1 00003629: DIV 0000362a: PUSH1 0xff 0000362c: AND 0000362d: PUSH1 0x05 0000362f: DUP2 00003630: GT 00003631: ISZERO 00003632: PUSH2 0x3637 00003635: JUMPI 00003636: INVALID 00003637: JUMPDEST 00003638: EQ 00003639: PUSH2 0x36aa 0000363c: JUMPI 0000363d: PUSH1 0x40 0000363f: MLOAD 00003640: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003661: DUP2 00003662: MSTORE 00003663: PUSH1 0x04 00003665: ADD 00003666: DUP1 00003667: DUP1 00003668: PUSH1 0x20 0000366a: ADD 0000366b: DUP3 0000366c: DUP2 0000366d: SUB 0000366e: DUP3 0000366f: MSTORE 00003670: PUSH1 0x13 00003672: DUP2 00003673: MSTORE 00003674: PUSH1 0x20 00003676: ADD 00003677: DUP1 00003678: PUSH32 0x4f4e4c595f445552494e475f4f4e474f494e4700000000000000000000000000 00003699: DUP2 0000369a: MSTORE 0000369b: POP 0000369c: PUSH1 0x20 0000369e: ADD 0000369f: SWAP2 000036a0: POP 000036a1: POP 000036a2: PUSH1 0x40 000036a4: MLOAD 000036a5: DUP1 000036a6: SWAP2 000036a7: SUB 000036a8: SWAP1 000036a9: REVERT 000036aa: JUMPDEST 000036ab: JUMP 000036ac: JUMPDEST 000036ad: PUSH1 0x03 000036af: PUSH1 0x00 000036b1: DUP1 000036b2: PUSH2 0x0100 000036b5: EXP 000036b6: DUP2 000036b7: SLOAD 000036b8: DUP2 000036b9: PUSH1 0xff 000036bb: MUL 000036bc: NOT 000036bd: AND 000036be: SWAP1 000036bf: DUP4 000036c0: PUSH1 0x05 000036c2: DUP2 000036c3: GT 000036c4: ISZERO 000036c5: PUSH2 0x36ca 000036c8: JUMPI 000036c9: INVALID 000036ca: JUMPDEST 000036cb: MUL 000036cc: OR 000036cd: SWAP1 000036ce: SSTORE 000036cf: POP 000036d0: JUMP 000036d1: JUMPDEST 000036d2: PUSH1 0x04 000036d4: PUSH1 0x00 000036d6: DUP1 000036d7: PUSH2 0x0100 000036da: EXP 000036db: DUP2 000036dc: SLOAD 000036dd: DUP2 000036de: PUSH1 0xff 000036e0: MUL 000036e1: NOT 000036e2: AND 000036e3: SWAP1 000036e4: DUP4 000036e5: PUSH1 0x05 000036e7: DUP2 000036e8: GT 000036e9: ISZERO 000036ea: PUSH2 0x36ef 000036ed: JUMPI 000036ee: INVALID 000036ef: JUMPDEST 000036f0: MUL 000036f1: OR 000036f2: SWAP1 000036f3: SSTORE 000036f4: POP 000036f5: JUMP 000036f6: JUMPDEST 000036f7: PUSH1 0x04 000036f9: PUSH1 0x05 000036fb: DUP2 000036fc: GT 000036fd: ISZERO 000036fe: PUSH2 0x3703 00003701: JUMPI 00003702: INVALID 00003703: JUMPDEST 00003704: PUSH1 0x00 00003706: DUP1 00003707: SLOAD 00003708: SWAP1 00003709: PUSH2 0x0100 0000370c: EXP 0000370d: SWAP1 0000370e: DIV 0000370f: PUSH1 0xff 00003711: AND 00003712: PUSH1 0x05 00003714: DUP2 00003715: GT 00003716: ISZERO 00003717: PUSH2 0x371c 0000371a: JUMPI 0000371b: INVALID 0000371c: JUMPDEST 0000371d: EQ 0000371e: PUSH2 0x378f 00003721: JUMPI 00003722: PUSH1 0x40 00003724: MLOAD 00003725: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003746: DUP2 00003747: MSTORE 00003748: PUSH1 0x04 0000374a: ADD 0000374b: DUP1 0000374c: DUP1 0000374d: PUSH1 0x20 0000374f: ADD 00003750: DUP3 00003751: DUP2 00003752: SUB 00003753: DUP3 00003754: MSTORE 00003755: PUSH1 0x10 00003757: DUP2 00003758: MSTORE 00003759: PUSH1 0x20 0000375b: ADD 0000375c: DUP1 0000375d: PUSH32 0x4f4e4c595f445552494e475f4641494c00000000000000000000000000000000 0000377e: DUP2 0000377f: MSTORE 00003780: POP 00003781: PUSH1 0x20 00003783: ADD 00003784: SWAP2 00003785: POP 00003786: POP 00003787: PUSH1 0x40 00003789: MLOAD 0000378a: DUP1 0000378b: SWAP2 0000378c: SUB 0000378d: SWAP1 0000378e: REVERT 0000378f: JUMPDEST 00003790: JUMP 00003791: JUMPDEST 00003792: PUSH2 0x0e10 00003795: PUSH2 0x37a7 00003798: DUP4 00003799: DUP4 0000379a: PUSH2 0x2e80 0000379d: SWAP1 0000379e: SWAP2 0000379f: SWAP1 000037a0: PUSH4 0xffffffff 000037a5: AND 000037a6: JUMP 000037a7: JUMPDEST 000037a8: LT 000037a9: ISZERO 000037aa: PUSH2 0x381b 000037ad: JUMPI 000037ae: PUSH1 0x40 000037b0: MLOAD 000037b1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000037d2: DUP2 000037d3: MSTORE 000037d4: PUSH1 0x04 000037d6: ADD 000037d7: DUP1 000037d8: DUP1 000037d9: PUSH1 0x20 000037db: ADD 000037dc: DUP3 000037dd: DUP2 000037de: SUB 000037df: DUP3 000037e0: MSTORE 000037e1: PUSH1 0x14 000037e3: DUP2 000037e4: MSTORE 000037e5: PUSH1 0x20 000037e7: ADD 000037e8: DUP1 000037e9: PUSH32 0x426173653a204455524154494f4e5f53484f5254000000000000000000000000 0000380a: DUP2 0000380b: MSTORE 0000380c: POP 0000380d: PUSH1 0x20 0000380f: ADD 00003810: SWAP2 00003811: POP 00003812: POP 00003813: PUSH1 0x40 00003815: MLOAD 00003816: DUP1 00003817: SWAP2 00003818: SUB 00003819: SWAP1 0000381a: REVERT 0000381b: JUMPDEST 0000381c: TIMESTAMP 0000381d: DUP3 0000381e: GT 0000381f: PUSH2 0x3890 00003822: JUMPI 00003823: PUSH1 0x40 00003825: MLOAD 00003826: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003847: DUP2 00003848: MSTORE 00003849: PUSH1 0x04 0000384b: ADD 0000384c: DUP1 0000384d: DUP1 0000384e: PUSH1 0x20 00003850: ADD 00003851: DUP3 00003852: DUP2 00003853: SUB 00003854: DUP3 00003855: MSTORE 00003856: PUSH1 0x17 00003858: DUP2 00003859: MSTORE 0000385a: PUSH1 0x20 0000385c: ADD 0000385d: DUP1 0000385e: PUSH32 0x426173653a2053544152545f54494d455f504153534544000000000000000000 0000387f: DUP2 00003880: MSTORE 00003881: POP 00003882: PUSH1 0x20 00003884: ADD 00003885: SWAP2 00003886: POP 00003887: POP 00003888: PUSH1 0x40 0000388a: MLOAD 0000388b: DUP1 0000388c: SWAP2 0000388d: SUB 0000388e: SWAP1 0000388f: REVERT 00003890: JUMPDEST 00003891: POP 00003892: POP 00003893: JUMP 00003894: JUMPDEST 00003895: PUSH1 0x04 00003897: PUSH1 0x00 00003899: SWAP1 0000389a: SLOAD 0000389b: SWAP1 0000389c: PUSH2 0x0100 0000389f: EXP 000038a0: SWAP1 000038a1: DIV 000038a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038b7: AND 000038b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038cd: AND 000038ce: CALLER 000038cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038e4: AND 000038e5: EQ 000038e6: PUSH2 0x3957 000038e9: JUMPI 000038ea: PUSH1 0x40 000038ec: MLOAD 000038ed: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000390e: DUP2 0000390f: MSTORE 00003910: PUSH1 0x04 00003912: ADD 00003913: DUP1 00003914: DUP1 00003915: PUSH1 0x20 00003917: ADD 00003918: DUP3 00003919: DUP2 0000391a: SUB 0000391b: DUP3 0000391c: MSTORE 0000391d: PUSH1 0x12 0000391f: DUP2 00003920: MSTORE 00003921: PUSH1 0x20 00003923: ADD 00003924: DUP1 00003925: PUSH32 0x4f4e4c595f41535345545f4d414e414745520000000000000000000000000000 00003946: DUP2 00003947: MSTORE 00003948: POP 00003949: PUSH1 0x20 0000394b: ADD 0000394c: SWAP2 0000394d: POP 0000394e: POP 0000394f: PUSH1 0x40 00003951: MLOAD 00003952: DUP1 00003953: SWAP2 00003954: SUB 00003955: SWAP1 00003956: REVERT 00003957: JUMPDEST 00003958: JUMP 00003959: JUMPDEST 0000395a: PUSH1 0x00 0000395c: DUP1 0000395d: DUP3 0000395e: DUP5 0000395f: ADD 00003960: SWAP1 00003961: POP 00003962: DUP4 00003963: DUP2 00003964: LT 00003965: ISZERO 00003966: PUSH2 0x39d7 00003969: JUMPI 0000396a: PUSH1 0x40 0000396c: MLOAD 0000396d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000398e: DUP2 0000398f: MSTORE 00003990: PUSH1 0x04 00003992: ADD 00003993: DUP1 00003994: DUP1 00003995: PUSH1 0x20 00003997: ADD 00003998: DUP3 00003999: DUP2 0000399a: SUB 0000399b: DUP3 0000399c: MSTORE 0000399d: PUSH1 0x1b 0000399f: DUP2 000039a0: MSTORE 000039a1: PUSH1 0x20 000039a3: ADD 000039a4: DUP1 000039a5: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 000039c6: DUP2 000039c7: MSTORE 000039c8: POP 000039c9: PUSH1 0x20 000039cb: ADD 000039cc: SWAP2 000039cd: POP 000039ce: POP 000039cf: PUSH1 0x40 000039d1: MLOAD 000039d2: DUP1 000039d3: SWAP2 000039d4: SUB 000039d5: SWAP1 000039d6: REVERT 000039d7: JUMPDEST 000039d8: DUP1 000039d9: SWAP2 000039da: POP 000039db: POP 000039dc: SWAP3 000039dd: SWAP2 000039de: POP 000039df: POP 000039e0: JUMP 000039e1: JUMPDEST 000039e2: PUSH1 0x00 000039e4: DUP1 000039e5: PUSH1 0x18 000039e7: PUSH1 0x00 000039e9: SWAP1 000039ea: SLOAD 000039eb: SWAP1 000039ec: PUSH2 0x0100 000039ef: EXP 000039f0: SWAP1 000039f1: DIV 000039f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a07: AND 00003a08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a1d: AND 00003a1e: PUSH4 0xb45aae52 00003a23: CALLER 00003a24: PUSH1 0x40 00003a26: MLOAD 00003a27: DUP3 00003a28: PUSH4 0xffffffff 00003a2d: AND 00003a2e: PUSH1 0xe0 00003a30: SHL 00003a31: DUP2 00003a32: MSTORE 00003a33: PUSH1 0x04 00003a35: ADD 00003a36: DUP1 00003a37: DUP3 00003a38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a4d: AND 00003a4e: DUP2 00003a4f: MSTORE 00003a50: PUSH1 0x20 00003a52: ADD 00003a53: SWAP2 00003a54: POP 00003a55: POP 00003a56: PUSH1 0x20 00003a58: PUSH1 0x40 00003a5a: MLOAD 00003a5b: DUP1 00003a5c: DUP4 00003a5d: SUB 00003a5e: DUP2 00003a5f: DUP7 00003a60: DUP1 00003a61: EXTCODESIZE 00003a62: ISZERO 00003a63: DUP1 00003a64: ISZERO 00003a65: PUSH2 0x3a6d 00003a68: JUMPI 00003a69: PUSH1 0x00 00003a6b: DUP1 00003a6c: REVERT 00003a6d: JUMPDEST 00003a6e: POP 00003a6f: GAS 00003a70: STATICCALL 00003a71: ISZERO 00003a72: DUP1 00003a73: ISZERO 00003a74: PUSH2 0x3a81 00003a77: JUMPI 00003a78: RETURNDATASIZE 00003a79: PUSH1 0x00 00003a7b: DUP1 00003a7c: RETURNDATACOPY 00003a7d: RETURNDATASIZE 00003a7e: PUSH1 0x00 00003a80: REVERT 00003a81: JUMPDEST 00003a82: POP 00003a83: POP 00003a84: POP 00003a85: POP 00003a86: PUSH1 0x40 00003a88: MLOAD 00003a89: RETURNDATASIZE 00003a8a: PUSH1 0x20 00003a8c: DUP2 00003a8d: LT 00003a8e: ISZERO 00003a8f: PUSH2 0x3a97 00003a92: JUMPI 00003a93: PUSH1 0x00 00003a95: DUP1 00003a96: REVERT 00003a97: JUMPDEST 00003a98: DUP2 00003a99: ADD 00003a9a: SWAP1 00003a9b: DUP1 00003a9c: DUP1 00003a9d: MLOAD 00003a9e: SWAP1 00003a9f: PUSH1 0x20 00003aa1: ADD 00003aa2: SWAP1 00003aa3: SWAP3 00003aa4: SWAP2 00003aa5: SWAP1 00003aa6: POP 00003aa7: POP 00003aa8: POP 00003aa9: SWAP1 00003aaa: POP 00003aab: PUSH1 0x00 00003aad: DUP2 00003aae: GT 00003aaf: PUSH2 0x3b20 00003ab2: JUMPI 00003ab3: PUSH1 0x40 00003ab5: MLOAD 00003ab6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ad7: DUP2 00003ad8: MSTORE 00003ad9: PUSH1 0x04 00003adb: ADD 00003adc: DUP1 00003add: DUP1 00003ade: PUSH1 0x20 00003ae0: ADD 00003ae1: DUP3 00003ae2: DUP2 00003ae3: SUB 00003ae4: DUP3 00003ae5: MSTORE 00003ae6: PUSH1 0x15 00003ae8: DUP2 00003ae9: MSTORE 00003aea: PUSH1 0x20 00003aec: ADD 00003aed: DUP1 00003aee: PUSH32 0x426173653a204e4f545f57484954454c49535445440000000000000000000000 00003b0f: DUP2 00003b10: MSTORE 00003b11: POP 00003b12: PUSH1 0x20 00003b14: ADD 00003b15: SWAP2 00003b16: POP 00003b17: POP 00003b18: PUSH1 0x40 00003b1a: MLOAD 00003b1b: DUP1 00003b1c: SWAP2 00003b1d: SUB 00003b1e: SWAP1 00003b1f: REVERT 00003b20: JUMPDEST 00003b21: DUP1 00003b22: SWAP2 00003b23: POP 00003b24: POP 00003b25: SWAP1 00003b26: JUMP 00003b27: JUMPDEST 00003b28: PUSH1 0x00 00003b2a: DUP1 00003b2b: PUSH1 0x0f 00003b2d: PUSH1 0x01 00003b2f: DUP5 00003b30: SUB 00003b31: DUP2 00003b32: SLOAD 00003b33: DUP2 00003b34: LT 00003b35: PUSH2 0x3b3a 00003b38: JUMPI 00003b39: INVALID 00003b3a: JUMPDEST 00003b3b: SWAP1 00003b3c: PUSH1 0x00 00003b3e: MSTORE 00003b3f: PUSH1 0x20 00003b41: PUSH1 0x00 00003b43: KECCAK256 00003b44: ADD 00003b45: SLOAD 00003b46: SWAP1 00003b47: POP 00003b48: PUSH1 0x00 00003b4a: PUSH1 0x17 00003b4c: PUSH1 0x00 00003b4e: SWAP1 00003b4f: SLOAD 00003b50: SWAP1 00003b51: PUSH2 0x0100 00003b54: EXP 00003b55: SWAP1 00003b56: DIV 00003b57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003b6c: AND 00003b6d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003b82: AND 00003b83: PUSH4 0x7a766460 00003b88: CALLER 00003b89: PUSH1 0x40 00003b8b: MLOAD 00003b8c: DUP3 00003b8d: PUSH4 0xffffffff 00003b92: AND 00003b93: PUSH1 0xe0 00003b95: SHL 00003b96: DUP2 00003b97: MSTORE 00003b98: PUSH1 0x04 00003b9a: ADD 00003b9b: DUP1 00003b9c: DUP3 00003b9d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003bb2: AND 00003bb3: DUP2 00003bb4: MSTORE 00003bb5: PUSH1 0x20 00003bb7: ADD 00003bb8: SWAP2 00003bb9: POP 00003bba: POP 00003bbb: PUSH1 0x20 00003bbd: PUSH1 0x40 00003bbf: MLOAD 00003bc0: DUP1 00003bc1: DUP4 00003bc2: SUB 00003bc3: DUP2 00003bc4: DUP7 00003bc5: DUP1 00003bc6: EXTCODESIZE 00003bc7: ISZERO 00003bc8: DUP1 00003bc9: ISZERO 00003bca: PUSH2 0x3bd2 00003bcd: JUMPI 00003bce: PUSH1 0x00 00003bd0: DUP1 00003bd1: REVERT 00003bd2: JUMPDEST 00003bd3: POP 00003bd4: GAS 00003bd5: STATICCALL 00003bd6: ISZERO 00003bd7: DUP1 00003bd8: ISZERO 00003bd9: PUSH2 0x3be6 00003bdc: JUMPI 00003bdd: RETURNDATASIZE 00003bde: PUSH1 0x00 00003be0: DUP1 00003be1: RETURNDATACOPY 00003be2: RETURNDATASIZE 00003be3: PUSH1 0x00 00003be5: REVERT 00003be6: JUMPDEST 00003be7: POP 00003be8: POP 00003be9: POP 00003bea: POP 00003beb: PUSH1 0x40 00003bed: MLOAD 00003bee: RETURNDATASIZE 00003bef: PUSH1 0x20 00003bf1: DUP2 00003bf2: LT 00003bf3: ISZERO 00003bf4: PUSH2 0x3bfc 00003bf7: JUMPI 00003bf8: PUSH1 0x00 00003bfa: DUP1 00003bfb: REVERT 00003bfc: JUMPDEST 00003bfd: DUP2 00003bfe: ADD 00003bff: SWAP1 00003c00: DUP1 00003c01: DUP1 00003c02: MLOAD 00003c03: SWAP1 00003c04: PUSH1 0x20 00003c06: ADD 00003c07: SWAP1 00003c08: SWAP3 00003c09: SWAP2 00003c0a: SWAP1 00003c0b: POP 00003c0c: POP 00003c0d: POP 00003c0e: SWAP1 00003c0f: POP 00003c10: PUSH1 0x00 00003c12: DUP1 00003c13: PUSH1 0x00 00003c15: SWAP1 00003c16: POP 00003c17: JUMPDEST 00003c18: PUSH1 0x16 00003c1a: DUP1 00003c1b: SLOAD 00003c1c: SWAP1 00003c1d: POP 00003c1e: DUP2 00003c1f: LT 00003c20: ISZERO 00003c21: PUSH2 0x3c6e 00003c24: JUMPI 00003c25: PUSH1 0x16 00003c27: DUP2 00003c28: DUP2 00003c29: SLOAD 00003c2a: DUP2 00003c2b: LT 00003c2c: PUSH2 0x3c31 00003c2f: JUMPI 00003c30: INVALID 00003c31: JUMPDEST 00003c32: SWAP1 00003c33: PUSH1 0x00 00003c35: MSTORE 00003c36: PUSH1 0x20 00003c38: PUSH1 0x00 00003c3a: KECCAK256 00003c3b: ADD 00003c3c: SLOAD 00003c3d: DUP4 00003c3e: LT 00003c3f: PUSH2 0x3c61 00003c42: JUMPI 00003c43: PUSH1 0x0f 00003c45: DUP2 00003c46: DUP2 00003c47: SLOAD 00003c48: DUP2 00003c49: LT 00003c4a: PUSH2 0x3c4f 00003c4d: JUMPI 00003c4e: INVALID 00003c4f: JUMPDEST 00003c50: SWAP1 00003c51: PUSH1 0x00 00003c53: MSTORE 00003c54: PUSH1 0x20 00003c56: PUSH1 0x00 00003c58: KECCAK256 00003c59: ADD 00003c5a: SLOAD 00003c5b: SWAP2 00003c5c: POP 00003c5d: PUSH2 0x3c6e 00003c60: JUMP 00003c61: JUMPDEST 00003c62: DUP1 00003c63: DUP1 00003c64: PUSH1 0x01 00003c66: ADD 00003c67: SWAP2 00003c68: POP 00003c69: POP 00003c6a: PUSH2 0x3c17 00003c6d: JUMP 00003c6e: JUMPDEST 00003c6f: POP 00003c70: PUSH2 0x3c79 00003c73: DUP2 00003c74: DUP5 00003c75: PUSH2 0x3c83 00003c78: JUMP 00003c79: JUMPDEST 00003c7a: SWAP4 00003c7b: POP 00003c7c: POP 00003c7d: POP 00003c7e: POP 00003c7f: SWAP2 00003c80: SWAP1 00003c81: POP 00003c82: JUMP 00003c83: JUMPDEST 00003c84: PUSH1 0x00 00003c86: DUP2 00003c87: DUP4 00003c88: LT 00003c89: PUSH2 0x3c92 00003c8c: JUMPI 00003c8d: DUP2 00003c8e: PUSH2 0x3c94 00003c91: JUMP 00003c92: JUMPDEST 00003c93: DUP3 00003c94: JUMPDEST 00003c95: SWAP1 00003c96: POP 00003c97: SWAP3 00003c98: SWAP2 00003c99: POP 00003c9a: POP 00003c9b: JUMP 00003c9c: JUMPDEST 00003c9d: DUP2 00003c9e: PUSH1 0x19 00003ca0: PUSH1 0x00 00003ca2: DUP6 00003ca3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cb8: AND 00003cb9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cce: AND 00003ccf: DUP2 00003cd0: MSTORE 00003cd1: PUSH1 0x20 00003cd3: ADD 00003cd4: SWAP1 00003cd5: DUP2 00003cd6: MSTORE 00003cd7: PUSH1 0x20 00003cd9: ADD 00003cda: PUSH1 0x00 00003cdc: KECCAK256 00003cdd: PUSH1 0x00 00003cdf: DUP3 00003ce0: DUP3 00003ce1: SLOAD 00003ce2: ADD 00003ce3: SWAP3 00003ce4: POP 00003ce5: POP 00003ce6: DUP2 00003ce7: SWAP1 00003ce8: SSTORE 00003ce9: POP 00003cea: DUP1 00003ceb: PUSH1 0x1a 00003ced: PUSH1 0x00 00003cef: DUP6 00003cf0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003d05: AND 00003d06: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003d1b: AND 00003d1c: DUP2 00003d1d: MSTORE 00003d1e: PUSH1 0x20 00003d20: ADD 00003d21: SWAP1 00003d22: DUP2 00003d23: MSTORE 00003d24: PUSH1 0x20 00003d26: ADD 00003d27: PUSH1 0x00 00003d29: KECCAK256 00003d2a: PUSH1 0x00 00003d2c: DUP3 00003d2d: DUP3 00003d2e: SLOAD 00003d2f: ADD 00003d30: SWAP3 00003d31: POP 00003d32: POP 00003d33: DUP2 00003d34: SWAP1 00003d35: SSTORE 00003d36: POP 00003d37: DUP2 00003d38: PUSH1 0x0c 00003d3a: PUSH1 0x00 00003d3c: DUP3 00003d3d: DUP3 00003d3e: SLOAD 00003d3f: ADD 00003d40: SWAP3 00003d41: POP 00003d42: POP 00003d43: DUP2 00003d44: SWAP1 00003d45: SSTORE 00003d46: POP 00003d47: DUP2 00003d48: PUSH1 0x0d 00003d4a: PUSH1 0x00 00003d4c: DUP3 00003d4d: DUP3 00003d4e: SLOAD 00003d4f: SUB 00003d50: SWAP3 00003d51: POP 00003d52: POP 00003d53: DUP2 00003d54: SWAP1 00003d55: SSTORE 00003d56: POP 00003d57: DUP1 00003d58: PUSH1 0x0b 00003d5a: PUSH1 0x00 00003d5c: DUP3 00003d5d: DUP3 00003d5e: SLOAD 00003d5f: ADD 00003d60: SWAP3 00003d61: POP 00003d62: POP 00003d63: DUP2 00003d64: SWAP1 00003d65: SSTORE 00003d66: POP 00003d67: PUSH1 0x00 00003d69: PUSH1 0x0d 00003d6b: SLOAD 00003d6c: EQ 00003d6d: ISZERO 00003d6e: PUSH2 0x3d7a 00003d71: JUMPI 00003d72: PUSH2 0x3d79 00003d75: PUSH2 0x36ac 00003d78: JUMP 00003d79: JUMPDEST 00003d7a: JUMPDEST 00003d7b: DUP3 00003d7c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003d91: AND 00003d92: PUSH32 0x9c10a5d88b8bcebd833bb4e481b4622feeafac135896d3a54eea5fd90960c6e1 00003db3: DUP4 00003db4: DUP4 00003db5: PUSH1 0x40 00003db7: MLOAD 00003db8: DUP1 00003db9: DUP4 00003dba: DUP2 00003dbb: MSTORE 00003dbc: PUSH1 0x20 00003dbe: ADD 00003dbf: DUP3 00003dc0: DUP2 00003dc1: MSTORE 00003dc2: PUSH1 0x20 00003dc4: ADD 00003dc5: SWAP3 00003dc6: POP 00003dc7: POP 00003dc8: POP 00003dc9: PUSH1 0x40 00003dcb: MLOAD 00003dcc: DUP1 00003dcd: SWAP2 00003dce: SUB 00003dcf: SWAP1 00003dd0: LOG2 00003dd1: POP 00003dd2: POP 00003dd3: POP 00003dd4: JUMP 00003dd5: JUMPDEST 00003dd6: PUSH1 0x0a 00003dd8: DUP2 00003dd9: LT 00003dda: ISZERO 00003ddb: PUSH2 0x3e4c 00003dde: JUMPI 00003ddf: PUSH1 0x40 00003de1: MLOAD 00003de2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003e03: DUP2 00003e04: MSTORE 00003e05: PUSH1 0x04 00003e07: ADD 00003e08: DUP1 00003e09: DUP1 00003e0a: PUSH1 0x20 00003e0c: ADD 00003e0d: DUP3 00003e0e: DUP2 00003e0f: SUB 00003e10: DUP3 00003e11: MSTORE 00003e12: PUSH1 0x1d 00003e14: DUP2 00003e15: MSTORE 00003e16: PUSH1 0x20 00003e18: ADD 00003e19: DUP1 00003e1a: PUSH32 0x426173653a204d494e5f46494c4c5f50455243454e544147455f4c4f57000000 00003e3b: DUP2 00003e3c: MSTORE 00003e3d: POP 00003e3e: PUSH1 0x20 00003e40: ADD 00003e41: SWAP2 00003e42: POP 00003e43: POP 00003e44: PUSH1 0x40 00003e46: MLOAD 00003e47: DUP1 00003e48: SWAP2 00003e49: SUB 00003e4a: SWAP1 00003e4b: REVERT 00003e4c: JUMPDEST 00003e4d: PUSH1 0x64 00003e4f: DUP2 00003e50: GT 00003e51: ISZERO 00003e52: PUSH2 0x3ec3 00003e55: JUMPI 00003e56: PUSH1 0x40 00003e58: MLOAD 00003e59: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003e7a: DUP2 00003e7b: MSTORE 00003e7c: PUSH1 0x04 00003e7e: ADD 00003e7f: DUP1 00003e80: DUP1 00003e81: PUSH1 0x20 00003e83: ADD 00003e84: DUP3 00003e85: DUP2 00003e86: SUB 00003e87: DUP3 00003e88: MSTORE 00003e89: PUSH1 0x1e 00003e8b: DUP2 00003e8c: MSTORE 00003e8d: PUSH1 0x20 00003e8f: ADD 00003e90: DUP1 00003e91: PUSH32 0x426173653a204d494e5f46494c4c5f50455243454e544147455f484947480000 00003eb2: DUP2 00003eb3: MSTORE 00003eb4: POP 00003eb5: PUSH1 0x20 00003eb7: ADD 00003eb8: SWAP2 00003eb9: POP 00003eba: POP 00003ebb: PUSH1 0x40 00003ebd: MLOAD 00003ebe: DUP1 00003ebf: SWAP2 00003ec0: SUB 00003ec1: SWAP1 00003ec2: REVERT 00003ec3: JUMPDEST 00003ec4: POP 00003ec5: JUMP 00003ec6: JUMPDEST 00003ec7: PUSH1 0x01 00003ec9: PUSH1 0x05 00003ecb: DUP2 00003ecc: GT 00003ecd: ISZERO 00003ece: PUSH2 0x3ed3 00003ed1: JUMPI 00003ed2: INVALID 00003ed3: JUMPDEST 00003ed4: PUSH1 0x00 00003ed6: DUP1 00003ed7: SLOAD 00003ed8: SWAP1 00003ed9: PUSH2 0x0100 00003edc: EXP 00003edd: SWAP1 00003ede: DIV 00003edf: PUSH1 0xff 00003ee1: AND 00003ee2: PUSH1 0x05 00003ee4: DUP2 00003ee5: GT 00003ee6: ISZERO 00003ee7: PUSH2 0x3eec 00003eea: JUMPI 00003eeb: INVALID 00003eec: JUMPDEST 00003eed: EQ 00003eee: PUSH2 0x3f5f 00003ef1: JUMPI 00003ef2: PUSH1 0x40 00003ef4: MLOAD 00003ef5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003f16: DUP2 00003f17: MSTORE 00003f18: PUSH1 0x04 00003f1a: ADD 00003f1b: DUP1 00003f1c: DUP1 00003f1d: PUSH1 0x20 00003f1f: ADD 00003f20: DUP3 00003f21: DUP2 00003f22: SUB 00003f23: DUP3 00003f24: MSTORE 00003f25: PUSH1 0x11 00003f27: DUP2 00003f28: MSTORE 00003f29: PUSH1 0x20 00003f2b: ADD 00003f2c: DUP1 00003f2d: PUSH32 0x4f4e4c595f445552494e475f5245414459000000000000000000000000000000 00003f4e: DUP2 00003f4f: MSTORE 00003f50: POP 00003f51: PUSH1 0x20 00003f53: ADD 00003f54: SWAP2 00003f55: POP 00003f56: POP 00003f57: PUSH1 0x40 00003f59: MLOAD 00003f5a: DUP1 00003f5b: SWAP2 00003f5c: SUB 00003f5d: SWAP1 00003f5e: REVERT 00003f5f: JUMPDEST 00003f60: JUMP 00003f61: JUMPDEST 00003f62: PUSH1 0x0f 00003f64: DUP1 00003f65: SLOAD 00003f66: SWAP1 00003f67: POP 00003f68: PUSH1 0x16 00003f6a: DUP1 00003f6b: SLOAD 00003f6c: SWAP1 00003f6d: POP 00003f6e: EQ 00003f6f: PUSH2 0x3fc3 00003f72: JUMPI 00003f73: PUSH1 0x40 00003f75: MLOAD 00003f76: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003f97: DUP2 00003f98: MSTORE 00003f99: PUSH1 0x04 00003f9b: ADD 00003f9c: DUP1 00003f9d: DUP1 00003f9e: PUSH1 0x20 00003fa0: ADD 00003fa1: DUP3 00003fa2: DUP2 00003fa3: SUB 00003fa4: DUP3 00003fa5: MSTORE 00003fa6: PUSH1 0x35 00003fa8: DUP2 00003fa9: MSTORE 00003faa: PUSH1 0x20 00003fac: ADD 00003fad: DUP1 00003fae: PUSH2 0x45c3 00003fb1: PUSH1 0x35 00003fb3: SWAP2 00003fb4: CODECOPY 00003fb5: PUSH1 0x40 00003fb7: ADD 00003fb8: SWAP2 00003fb9: POP 00003fba: POP 00003fbb: PUSH1 0x40 00003fbd: MLOAD 00003fbe: DUP1 00003fbf: SWAP2 00003fc0: SUB 00003fc1: SWAP1 00003fc2: REVERT 00003fc3: JUMPDEST 00003fc4: PUSH1 0x00 00003fc6: PUSH1 0x01 00003fc8: SWAP1 00003fc9: POP 00003fca: JUMPDEST 00003fcb: PUSH1 0x16 00003fcd: DUP1 00003fce: SLOAD 00003fcf: SWAP1 00003fd0: POP 00003fd1: DUP2 00003fd2: LT 00003fd3: ISZERO 00003fd4: PUSH2 0x4131 00003fd7: JUMPI 00003fd8: PUSH1 0x16 00003fda: DUP2 00003fdb: DUP2 00003fdc: SLOAD 00003fdd: DUP2 00003fde: LT 00003fdf: PUSH2 0x3fe4 00003fe2: JUMPI 00003fe3: INVALID 00003fe4: JUMPDEST 00003fe5: SWAP1 00003fe6: PUSH1 0x00 00003fe8: MSTORE 00003fe9: PUSH1 0x20 00003feb: PUSH1 0x00 00003fed: KECCAK256 00003fee: ADD 00003fef: SLOAD 00003ff0: PUSH1 0x16 00003ff2: PUSH1 0x01 00003ff4: DUP4 00003ff5: SUB 00003ff6: DUP2 00003ff7: SLOAD 00003ff8: DUP2 00003ff9: LT 00003ffa: PUSH2 0x3fff 00003ffd: JUMPI 00003ffe: INVALID 00003fff: JUMPDEST 00004000: SWAP1 00004001: PUSH1 0x00 00004003: MSTORE 00004004: PUSH1 0x20 00004006: PUSH1 0x00 00004008: KECCAK256 00004009: ADD 0000400a: SLOAD 0000400b: GT 0000400c: PUSH2 0x407d 0000400f: JUMPI 00004010: PUSH1 0x40 00004012: MLOAD 00004013: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004034: DUP2 00004035: MSTORE 00004036: PUSH1 0x04 00004038: ADD 00004039: DUP1 0000403a: DUP1 0000403b: PUSH1 0x20 0000403d: ADD 0000403e: DUP3 0000403f: DUP2 00004040: SUB 00004041: DUP3 00004042: MSTORE 00004043: PUSH1 0x1c 00004045: DUP2 00004046: MSTORE 00004047: PUSH1 0x20 00004049: ADD 0000404a: DUP1 0000404b: PUSH32 0x426173653a205354414b455f54494552535f4e4f545f534f5254454400000000 0000406c: DUP2 0000406d: MSTORE 0000406e: POP 0000406f: PUSH1 0x20 00004071: ADD 00004072: SWAP2 00004073: POP 00004074: POP 00004075: PUSH1 0x40 00004077: MLOAD 00004078: DUP1 00004079: SWAP2 0000407a: SUB 0000407b: SWAP1 0000407c: REVERT 0000407d: JUMPDEST 0000407e: PUSH1 0x0f 00004080: DUP2 00004081: DUP2 00004082: SLOAD 00004083: DUP2 00004084: LT 00004085: PUSH2 0x408a 00004088: JUMPI 00004089: INVALID 0000408a: JUMPDEST 0000408b: SWAP1 0000408c: PUSH1 0x00 0000408e: MSTORE 0000408f: PUSH1 0x20 00004091: PUSH1 0x00 00004093: KECCAK256 00004094: ADD 00004095: SLOAD 00004096: PUSH1 0x0f 00004098: PUSH1 0x01 0000409a: DUP4 0000409b: SUB 0000409c: DUP2 0000409d: SLOAD 0000409e: DUP2 0000409f: LT 000040a0: PUSH2 0x40a5 000040a3: JUMPI 000040a4: INVALID 000040a5: JUMPDEST 000040a6: SWAP1 000040a7: PUSH1 0x00 000040a9: MSTORE 000040aa: PUSH1 0x20 000040ac: PUSH1 0x00 000040ae: KECCAK256 000040af: ADD 000040b0: SLOAD 000040b1: LT 000040b2: ISZERO 000040b3: PUSH2 0x4124 000040b6: JUMPI 000040b7: PUSH1 0x40 000040b9: MLOAD 000040ba: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000040db: DUP2 000040dc: MSTORE 000040dd: PUSH1 0x04 000040df: ADD 000040e0: DUP1 000040e1: DUP1 000040e2: PUSH1 0x20 000040e4: ADD 000040e5: DUP3 000040e6: DUP2 000040e7: SUB 000040e8: DUP3 000040e9: MSTORE 000040ea: PUSH1 0x20 000040ec: DUP2 000040ed: MSTORE 000040ee: PUSH1 0x20 000040f0: ADD 000040f1: DUP1 000040f2: PUSH32 0x426173653a204d41585f414c4c4f434154494f4e535f4e4f545f534f52544544 00004113: DUP2 00004114: MSTORE 00004115: POP 00004116: PUSH1 0x20 00004118: ADD 00004119: SWAP2 0000411a: POP 0000411b: POP 0000411c: PUSH1 0x40 0000411e: MLOAD 0000411f: DUP1 00004120: SWAP2 00004121: SUB 00004122: SWAP1 00004123: REVERT 00004124: JUMPDEST 00004125: DUP1 00004126: DUP1 00004127: PUSH1 0x01 00004129: ADD 0000412a: SWAP2 0000412b: POP 0000412c: POP 0000412d: PUSH2 0x3fca 00004130: JUMP 00004131: JUMPDEST 00004132: POP 00004133: PUSH1 0x00 00004135: PUSH1 0x16 00004137: PUSH1 0x01 00004139: PUSH1 0x16 0000413b: DUP1 0000413c: SLOAD 0000413d: SWAP1 0000413e: POP 0000413f: SUB 00004140: DUP2 00004141: SLOAD 00004142: DUP2 00004143: LT 00004144: PUSH2 0x4149 00004147: JUMPI 00004148: INVALID 00004149: JUMPDEST 0000414a: SWAP1 0000414b: PUSH1 0x00 0000414d: MSTORE 0000414e: PUSH1 0x20 00004150: PUSH1 0x00 00004152: KECCAK256 00004153: ADD 00004154: SLOAD 00004155: EQ 00004156: PUSH2 0x41c7 00004159: JUMPI 0000415a: PUSH1 0x40 0000415c: MLOAD 0000415d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000417e: DUP2 0000417f: MSTORE 00004180: PUSH1 0x04 00004182: ADD 00004183: DUP1 00004184: DUP1 00004185: PUSH1 0x20 00004187: ADD 00004188: DUP3 00004189: DUP2 0000418a: SUB 0000418b: DUP3 0000418c: MSTORE 0000418d: PUSH1 0x18 0000418f: DUP2 00004190: MSTORE 00004191: PUSH1 0x20 00004193: ADD 00004194: DUP1 00004195: PUSH32 0x426173653a204e4f5f5a45524f5f5354414b455f544945520000000000000000 000041b6: DUP2 000041b7: MSTORE 000041b8: POP 000041b9: PUSH1 0x20 000041bb: ADD 000041bc: SWAP2 000041bd: POP 000041be: POP 000041bf: PUSH1 0x40 000041c1: MLOAD 000041c2: DUP1 000041c3: SWAP2 000041c4: SUB 000041c5: SWAP1 000041c6: REVERT 000041c7: JUMPDEST 000041c8: JUMP 000041c9: JUMPDEST 000041ca: PUSH1 0x60 000041cc: PUSH2 0x422b 000041cf: DUP3 000041d0: PUSH1 0x40 000041d2: MLOAD 000041d3: DUP1 000041d4: PUSH1 0x40 000041d6: ADD 000041d7: PUSH1 0x40 000041d9: MSTORE 000041da: DUP1 000041db: PUSH1 0x20 000041dd: DUP2 000041de: MSTORE 000041df: PUSH1 0x20 000041e1: ADD 000041e2: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00004203: DUP2 00004204: MSTORE 00004205: POP 00004206: DUP6 00004207: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000421c: AND 0000421d: PUSH2 0x42b8 00004220: SWAP1 00004221: SWAP3 00004222: SWAP2 00004223: SWAP1 00004224: PUSH4 0xffffffff 00004229: AND 0000422a: JUMP 0000422b: JUMPDEST 0000422c: SWAP1 0000422d: POP 0000422e: PUSH1 0x00 00004230: DUP2 00004231: MLOAD 00004232: GT 00004233: ISZERO 00004234: PUSH2 0x42b3 00004237: JUMPI 00004238: DUP1 00004239: DUP1 0000423a: PUSH1 0x20 0000423c: ADD 0000423d: SWAP1 0000423e: MLOAD 0000423f: PUSH1 0x20 00004241: DUP2 00004242: LT 00004243: ISZERO 00004244: PUSH2 0x424c 00004247: JUMPI 00004248: PUSH1 0x00 0000424a: DUP1 0000424b: REVERT 0000424c: JUMPDEST 0000424d: DUP2 0000424e: ADD 0000424f: SWAP1 00004250: DUP1 00004251: DUP1 00004252: MLOAD 00004253: SWAP1 00004254: PUSH1 0x20 00004256: ADD 00004257: SWAP1 00004258: SWAP3 00004259: SWAP2 0000425a: SWAP1 0000425b: POP 0000425c: POP 0000425d: POP 0000425e: PUSH2 0x42b2 00004261: JUMPI 00004262: PUSH1 0x40 00004264: MLOAD 00004265: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004286: DUP2 00004287: MSTORE 00004288: PUSH1 0x04 0000428a: ADD 0000428b: DUP1 0000428c: DUP1 0000428d: PUSH1 0x20 0000428f: ADD 00004290: DUP3 00004291: DUP2 00004292: SUB 00004293: DUP3 00004294: MSTORE 00004295: PUSH1 0x2a 00004297: DUP2 00004298: MSTORE 00004299: PUSH1 0x20 0000429b: ADD 0000429c: DUP1 0000429d: PUSH2 0x463f 000042a0: PUSH1 0x2a 000042a2: SWAP2 000042a3: CODECOPY 000042a4: PUSH1 0x40 000042a6: ADD 000042a7: SWAP2 000042a8: POP 000042a9: POP 000042aa: PUSH1 0x40 000042ac: MLOAD 000042ad: DUP1 000042ae: SWAP2 000042af: SUB 000042b0: SWAP1 000042b1: REVERT 000042b2: JUMPDEST 000042b3: JUMPDEST 000042b4: POP 000042b5: POP 000042b6: POP 000042b7: JUMP 000042b8: JUMPDEST 000042b9: PUSH1 0x60 000042bb: PUSH2 0x42c7 000042be: DUP5 000042bf: DUP5 000042c0: PUSH1 0x00 000042c2: DUP6 000042c3: PUSH2 0x42d0 000042c6: JUMP 000042c7: JUMPDEST 000042c8: SWAP1 000042c9: POP 000042ca: SWAP4 000042cb: SWAP3 000042cc: POP 000042cd: POP 000042ce: POP 000042cf: JUMP 000042d0: JUMPDEST 000042d1: PUSH1 0x60 000042d3: DUP3 000042d4: SELFBALANCE 000042d5: LT 000042d6: ISZERO 000042d7: PUSH2 0x432b 000042da: JUMPI 000042db: PUSH1 0x40 000042dd: MLOAD 000042de: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000042ff: DUP2 00004300: MSTORE 00004301: PUSH1 0x04 00004303: ADD 00004304: DUP1 00004305: DUP1 00004306: PUSH1 0x20 00004308: ADD 00004309: DUP3 0000430a: DUP2 0000430b: SUB 0000430c: DUP3 0000430d: MSTORE 0000430e: PUSH1 0x26 00004310: DUP2 00004311: MSTORE 00004312: PUSH1 0x20 00004314: ADD 00004315: DUP1 00004316: PUSH2 0x45f8 00004319: PUSH1 0x26 0000431b: SWAP2 0000431c: CODECOPY 0000431d: PUSH1 0x40 0000431f: ADD 00004320: SWAP2 00004321: POP 00004322: POP 00004323: PUSH1 0x40 00004325: MLOAD 00004326: DUP1 00004327: SWAP2 00004328: SUB 00004329: SWAP1 0000432a: REVERT 0000432b: JUMPDEST 0000432c: PUSH2 0x4334 0000432f: DUP6 00004330: PUSH2 0x4479 00004333: JUMP 00004334: JUMPDEST 00004335: PUSH2 0x43a6 00004338: JUMPI 00004339: PUSH1 0x40 0000433b: MLOAD 0000433c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000435d: DUP2 0000435e: MSTORE 0000435f: PUSH1 0x04 00004361: ADD 00004362: DUP1 00004363: DUP1 00004364: PUSH1 0x20 00004366: ADD 00004367: DUP3 00004368: DUP2 00004369: SUB 0000436a: DUP3 0000436b: MSTORE 0000436c: PUSH1 0x1d 0000436e: DUP2 0000436f: MSTORE 00004370: PUSH1 0x20 00004372: ADD 00004373: DUP1 00004374: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00004395: DUP2 00004396: MSTORE 00004397: POP 00004398: PUSH1 0x20 0000439a: ADD 0000439b: SWAP2 0000439c: POP 0000439d: POP 0000439e: PUSH1 0x40 000043a0: MLOAD 000043a1: DUP1 000043a2: SWAP2 000043a3: SUB 000043a4: SWAP1 000043a5: REVERT 000043a6: JUMPDEST 000043a7: PUSH1 0x00 000043a9: PUSH1 0x60 000043ab: DUP7 000043ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000043c1: AND 000043c2: DUP6 000043c3: DUP8 000043c4: PUSH1 0x40 000043c6: MLOAD 000043c7: DUP1 000043c8: DUP3 000043c9: DUP1 000043ca: MLOAD 000043cb: SWAP1 000043cc: PUSH1 0x20 000043ce: ADD 000043cf: SWAP1 000043d0: DUP1 000043d1: DUP4 000043d2: DUP4 000043d3: JUMPDEST 000043d4: PUSH1 0x20 000043d6: DUP4 000043d7: LT 000043d8: PUSH2 0x43f6 000043db: JUMPI 000043dc: DUP1 000043dd: MLOAD 000043de: DUP3 000043df: MSTORE 000043e0: PUSH1 0x20 000043e2: DUP3 000043e3: ADD 000043e4: SWAP2 000043e5: POP 000043e6: PUSH1 0x20 000043e8: DUP2 000043e9: ADD 000043ea: SWAP1 000043eb: POP 000043ec: PUSH1 0x20 000043ee: DUP4 000043ef: SUB 000043f0: SWAP3 000043f1: POP 000043f2: PUSH2 0x43d3 000043f5: JUMP 000043f6: JUMPDEST 000043f7: PUSH1 0x01 000043f9: DUP4 000043fa: PUSH1 0x20 000043fc: SUB 000043fd: PUSH2 0x0100 00004400: EXP 00004401: SUB 00004402: DUP1 00004403: NOT 00004404: DUP3 00004405: MLOAD 00004406: AND 00004407: DUP2 00004408: DUP5 00004409: MLOAD 0000440a: AND 0000440b: DUP1 0000440c: DUP3 0000440d: OR 0000440e: DUP6 0000440f: MSTORE 00004410: POP 00004411: POP 00004412: POP 00004413: POP 00004414: POP 00004415: POP 00004416: SWAP1 00004417: POP 00004418: ADD 00004419: SWAP2 0000441a: POP 0000441b: POP 0000441c: PUSH1 0x00 0000441e: PUSH1 0x40 00004420: MLOAD 00004421: DUP1 00004422: DUP4 00004423: SUB 00004424: DUP2 00004425: DUP6 00004426: DUP8 00004427: GAS 00004428: CALL 00004429: SWAP3 0000442a: POP 0000442b: POP 0000442c: POP 0000442d: RETURNDATASIZE 0000442e: DUP1 0000442f: PUSH1 0x00 00004431: DUP2 00004432: EQ 00004433: PUSH2 0x4458 00004436: JUMPI 00004437: PUSH1 0x40 00004439: MLOAD 0000443a: SWAP2 0000443b: POP 0000443c: PUSH1 0x1f 0000443e: NOT 0000443f: PUSH1 0x3f 00004441: RETURNDATASIZE 00004442: ADD 00004443: AND 00004444: DUP3 00004445: ADD 00004446: PUSH1 0x40 00004448: MSTORE 00004449: RETURNDATASIZE 0000444a: DUP3 0000444b: MSTORE 0000444c: RETURNDATASIZE 0000444d: PUSH1 0x00 0000444f: PUSH1 0x20 00004451: DUP5 00004452: ADD 00004453: RETURNDATACOPY 00004454: PUSH2 0x445d 00004457: JUMP 00004458: JUMPDEST 00004459: PUSH1 0x60 0000445b: SWAP2 0000445c: POP 0000445d: JUMPDEST 0000445e: POP 0000445f: SWAP2 00004460: POP 00004461: SWAP2 00004462: POP 00004463: PUSH2 0x446d 00004466: DUP3 00004467: DUP3 00004468: DUP7 00004469: PUSH2 0x448c 0000446c: JUMP 0000446d: JUMPDEST 0000446e: SWAP3 0000446f: POP 00004470: POP 00004471: POP 00004472: SWAP5 00004473: SWAP4 00004474: POP 00004475: POP 00004476: POP 00004477: POP 00004478: JUMP 00004479: JUMPDEST 0000447a: PUSH1 0x00 0000447c: DUP1 0000447d: DUP3 0000447e: EXTCODESIZE 0000447f: SWAP1 00004480: POP 00004481: PUSH1 0x00 00004483: DUP2 00004484: GT 00004485: SWAP2 00004486: POP 00004487: POP 00004488: SWAP2 00004489: SWAP1 0000448a: POP 0000448b: JUMP 0000448c: JUMPDEST 0000448d: PUSH1 0x60 0000448f: DUP4 00004490: ISZERO 00004491: PUSH2 0x449c 00004494: JUMPI 00004495: DUP3 00004496: SWAP1 00004497: POP 00004498: PUSH2 0x4551 0000449b: JUMP 0000449c: JUMPDEST 0000449d: PUSH1 0x00 0000449f: DUP4 000044a0: MLOAD 000044a1: GT 000044a2: ISZERO 000044a3: PUSH2 0x44af 000044a6: JUMPI 000044a7: DUP3 000044a8: MLOAD 000044a9: DUP1 000044aa: DUP5 000044ab: PUSH1 0x20 000044ad: ADD 000044ae: REVERT 000044af: JUMPDEST 000044b0: DUP2 000044b1: PUSH1 0x40 000044b3: MLOAD 000044b4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000044d5: DUP2 000044d6: MSTORE 000044d7: PUSH1 0x04 000044d9: ADD 000044da: DUP1 000044db: DUP1 000044dc: PUSH1 0x20 000044de: ADD 000044df: DUP3 000044e0: DUP2 000044e1: SUB 000044e2: DUP3 000044e3: MSTORE 000044e4: DUP4 000044e5: DUP2 000044e6: DUP2 000044e7: MLOAD 000044e8: DUP2 000044e9: MSTORE 000044ea: PUSH1 0x20 000044ec: ADD 000044ed: SWAP2 000044ee: POP 000044ef: DUP1 000044f0: MLOAD 000044f1: SWAP1 000044f2: PUSH1 0x20 000044f4: ADD 000044f5: SWAP1 000044f6: DUP1 000044f7: DUP4 000044f8: DUP4 000044f9: PUSH1 0x00 000044fb: JUMPDEST 000044fc: DUP4 000044fd: DUP2 000044fe: LT 000044ff: ISZERO 00004500: PUSH2 0x4516 00004503: JUMPI 00004504: DUP1 00004505: DUP3 00004506: ADD 00004507: MLOAD 00004508: DUP2 00004509: DUP5 0000450a: ADD 0000450b: MSTORE 0000450c: PUSH1 0x20 0000450e: DUP2 0000450f: ADD 00004510: SWAP1 00004511: POP 00004512: PUSH2 0x44fb 00004515: JUMP 00004516: JUMPDEST 00004517: POP 00004518: POP 00004519: POP 0000451a: POP 0000451b: SWAP1 0000451c: POP 0000451d: SWAP1 0000451e: DUP2 0000451f: ADD 00004520: SWAP1 00004521: PUSH1 0x1f 00004523: AND 00004524: DUP1 00004525: ISZERO 00004526: PUSH2 0x4543 00004529: JUMPI 0000452a: DUP1 0000452b: DUP3 0000452c: SUB 0000452d: DUP1 0000452e: MLOAD 0000452f: PUSH1 0x01 00004531: DUP4 00004532: PUSH1 0x20 00004534: SUB 00004535: PUSH2 0x0100 00004538: EXP 00004539: SUB 0000453a: NOT 0000453b: AND 0000453c: DUP2 0000453d: MSTORE 0000453e: PUSH1 0x20 00004540: ADD 00004541: SWAP2 00004542: POP 00004543: JUMPDEST 00004544: POP 00004545: SWAP3 00004546: POP 00004547: POP 00004548: POP 00004549: PUSH1 0x40 0000454b: MLOAD 0000454c: DUP1 0000454d: SWAP2 0000454e: SUB 0000454f: SWAP1 00004550: REVERT 00004551: JUMPDEST 00004552: SWAP4 00004553: SWAP3 00004554: POP 00004555: POP 00004556: POP 00004557: JUMP 00004558: JUMPDEST 00004559: DUP3 0000455a: DUP1 0000455b: SLOAD 0000455c: DUP3 0000455d: DUP3 0000455e: SSTORE 0000455f: SWAP1 00004560: PUSH1 0x00 00004562: MSTORE 00004563: PUSH1 0x20 00004565: PUSH1 0x00 00004567: KECCAK256 00004568: SWAP1 00004569: DUP2 0000456a: ADD 0000456b: SWAP3 0000456c: DUP3 0000456d: ISZERO 0000456e: PUSH2 0x4594 00004571: JUMPI 00004572: SWAP2 00004573: PUSH1 0x20 00004575: MUL 00004576: DUP3 00004577: ADD 00004578: JUMPDEST 00004579: DUP3 0000457a: DUP2 0000457b: GT 0000457c: ISZERO 0000457d: PUSH2 0x4593 00004580: JUMPI 00004581: DUP3 00004582: MLOAD 00004583: DUP3 00004584: SSTORE 00004585: SWAP2 00004586: PUSH1 0x20 00004588: ADD 00004589: SWAP2 0000458a: SWAP1 0000458b: PUSH1 0x01 0000458d: ADD 0000458e: SWAP1 0000458f: PUSH2 0x4578 00004592: JUMP 00004593: JUMPDEST 00004594: JUMPDEST 00004595: POP 00004596: SWAP1 00004597: POP 00004598: PUSH2 0x45a1 0000459b: SWAP2 0000459c: SWAP1 0000459d: PUSH2 0x45a5 000045a0: JUMP 000045a1: JUMPDEST 000045a2: POP 000045a3: SWAP1 000045a4: JUMP 000045a5: JUMPDEST 000045a6: JUMPDEST 000045a7: DUP1 000045a8: DUP3 000045a9: GT 000045aa: ISZERO 000045ab: PUSH2 0x45be 000045ae: JUMPI 000045af: PUSH1 0x00 000045b1: DUP2 000045b2: PUSH1 0x00 000045b4: SWAP1 000045b5: SSTORE 000045b6: POP 000045b7: PUSH1 0x01 000045b9: ADD 000045ba: PUSH2 0x45a6 000045bd: JUMP 000045be: JUMPDEST 000045bf: POP 000045c0: SWAP1 000045c1: JUMP 000045c2: INVALID 000045c3: TIMESTAMP 000045c4: PUSH2 0x7365 000045c7: GASPRICE 000045c8: KECCAK256 000045c9: MSTORE8 000045ca: SLOAD 000045cb: COINBASE 000045cc: UNKNOWN(0x4B) 000045cd: GASLIMIT 000045ce: PUSH0 000045cf: SLOAD 000045d0: BLOBHASH 000045d1: GASLIMIT 000045d2: MSTORE 000045d3: MSTORE8 000045d4: PUSH0 000045d5: COINBASE 000045d6: UNKNOWN(0x4E) 000045d7: DIFFICULTY 000045d8: PUSH0 000045d9: UNKNOWN(0x4D) 000045da: COINBASE 000045db: PC 000045dc: PUSH0 000045dd: COINBASE 000045de: UNKNOWN(0x4C) 000045df: UNKNOWN(0x4C) 000045e0: UNKNOWN(0x4F) 000045e1: NUMBER 000045e2: COINBASE 000045e3: SLOAD 000045e4: BLOBHASH 000045e5: UNKNOWN(0x4F) 000045e6: UNKNOWN(0x4E) 000045e7: MSTORE8 000045e8: PUSH0 000045e9: UNKNOWN(0x4E) 000045ea: UNKNOWN(0x4F) 000045eb: SLOAD 000045ec: PUSH0 000045ed: MSTORE8 000045ee: COINBASE 000045ef: UNKNOWN(0x4D) 000045f0: GASLIMIT 000045f1: PUSH0 000045f2: UNKNOWN(0x4C) 000045f3: GASLIMIT 000045f4: UNKNOWN(0x4E) 000045f5: SELFBALANCE 000045f6: SLOAD 000045f7: BASEFEE 000045f8: COINBASE 000045f9: PUSH5 0x6472657373 000045ff: GASPRICE 00004600: KECCAK256 00004601: PUSH10 0x6e73756666696369656e 0000460c: PUSH21 0x2062616c616e636520666f722063616c6c53616665 00004622: UNKNOWN(0x4D) 00004623: PUSH2 0x7468 00004626: GASPRICE 00004627: KECCAK256 00004628: PUSH14 0x756c7469706c69636174696f6e20 00004637: PUSH16 0x766572666c6f77536166654552433230 00004648: GASPRICE 00004649: KECCAK256 0000464a: GASLIMIT 0000464b: MSTORE 0000464c: NUMBER 0000464d: ORIGIN 0000464e: ADDRESS 0000464f: KECCAK256 00004650: PUSH16 0x7065726174696f6e20646964206e6f74 00004661: KECCAK256 00004662: PUSH20 0x756363656564a264697066735822122065d8d109 00004677: LOG3 00004678: UNKNOWN(0xDC) 00004679: UNKNOWN(0xA8) 0000467a: UNKNOWN(0x2C) 0000467b: UNKNOWN(0xCC) 0000467c: MSTORE8 0000467d: BALANCE 0000467e: PUSH27 0xff7339a3a66d03853354fb01e9caac89d0fb13f664736f6c634300 0000469a: SMOD 0000469b: STOP 0000469c: STOP 0000469d: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xf4b94a5d",
"selector": "0xf4b94a5d",
"calldata_variants": [
"0xf4b94a5d",
"0xf4b94a5d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf56b3166",
"selector": "0xf56b3166",
"calldata_variants": [
"0xf56b3166",
"0xf56b31660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6c73294",
"selector": "0xf6c73294",
"calldata_variants": [
"0xf6c73294",
"0xf6c732940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc0c546a",
"selector": "0xfc0c546a",
"calldata_variants": [
"0xfc0c546a",
"0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd1c7e0b",
"selector": "0xfd1c7e0b",
"calldata_variants": [
"0xfd1c7e0b",
"0xfd1c7e0b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e0f72f",
"selector": "0xe9e0f72f",
"calldata_variants": [
"0xe9e0f72f",
"0xe9e0f72f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeae69905",
"selector": "0xeae69905",
"calldata_variants": [
"0xeae69905",
"0xeae699050000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec15444d",
"selector": "0xec15444d",
"calldata_variants": [
"0xec15444d",
"0xec15444d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 10826,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11122,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12093,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 13231,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 14542,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 17997,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xa44a74e5ec99520da168c4163cfe860056bb3d7ac81c728abc6d31cc1c26ebc5
call_targets:
0xefe16f7bf9b7eabd8fcd4274baaf0a91d30ad087
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa44a74e5ec99520da168c4163cfe860056bb3d7ac81c728abc6d31cc1c26ebc5",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xefe16f7bf9b7eabd8fcd4274baaf0a91d30ad087"
],
"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": "0xf4b94a5d",
"selector": "0xf4b94a5d",
"calldata_variants": [
"0xf4b94a5d",
"0xf4b94a5d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf56b3166",
"selector": "0xf56b3166",
"calldata_variants": [
"0xf56b3166",
"0xf56b31660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6c73294",
"selector": "0xf6c73294",
"calldata_variants": [
"0xf6c73294",
"0xf6c732940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc0c546a",
"selector": "0xfc0c546a",
"calldata_variants": [
"0xfc0c546a",
"0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd1c7e0b",
"selector": "0xfd1c7e0b",
"calldata_variants": [
"0xfd1c7e0b",
"0xfd1c7e0b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e0f72f",
"selector": "0xe9e0f72f",
"calldata_variants": [
"0xe9e0f72f",
"0xe9e0f72f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeae69905",
"selector": "0xeae69905",
"calldata_variants": [
"0xeae69905",
"0xeae699050000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec15444d",
"selector": "0xec15444d",
"calldata_variants": [
"0xec15444d",
"0xec15444d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6206,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7117,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9814,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [
{
"pc": 10826,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11122,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12093,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 13231,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 14542,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 17997,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 6
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xa44a74e5ec99520da168c4163cfe860056bb3d7ac81c728abc6d31cc1c26ebc5
call_targets:
0xefe16f7bf9b7eabd8fcd4274baaf0a91d30ad087
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa44a74e5ec99520da168c4163cfe860056bb3d7ac81c728abc6d31cc1c26ebc5",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xefe16f7bf9b7eabd8fcd4274baaf0a91d30ad087"
],
"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": "0xf4b94a5d",
"selector": "0xf4b94a5d",
"calldata_variants": [
"0xf4b94a5d",
"0xf4b94a5d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf56b3166",
"selector": "0xf56b3166",
"calldata_variants": [
"0xf56b3166",
"0xf56b31660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6c73294",
"selector": "0xf6c73294",
"calldata_variants": [
"0xf6c73294",
"0xf6c732940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc0c546a",
"selector": "0xfc0c546a",
"calldata_variants": [
"0xfc0c546a",
"0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd1c7e0b",
"selector": "0xfd1c7e0b",
"calldata_variants": [
"0xfd1c7e0b",
"0xfd1c7e0b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e0f72f",
"selector": "0xe9e0f72f",
"calldata_variants": [
"0xe9e0f72f",
"0xe9e0f72f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeae69905",
"selector": "0xeae69905",
"calldata_variants": [
"0xeae69905",
"0xeae699050000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec15444d",
"selector": "0xec15444d",
"calldata_variants": [
"0xec15444d",
"0xec15444d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6206,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7117,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9814,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": [
{
"pc": 10826,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11122,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12093,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 13231,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 14542,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 17997,
"type": "tx_origin_used"
}
]
}
|
| 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": 11
}
|
| 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": 13
}
|