b0faeb80-0e82-49fd-9575-6dc92cdcacd7
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 |
|---|---|---|---|---|
| 31769 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 96037 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 96038 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 96039 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 96040 | capability.graph | complete | 1 / 3 | 1 week ago |
| 96041 | detector.run | complete | 1 / 3 | 1 week ago |
| 96042 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:499358] OpenAI Codex v0.77.0 (research preview)
[codex:499358] --------
[codex:499358] workdir: /tmp/codex-multi-2drizlq8
[codex:499358] model: gpt-5.2-codex
[codex:499358] provider: openai
[codex:499358] approval: never
[codex:499358] sandbox: read-only
[codex:499358] reasoning effort: xhigh
[codex:499358] reasoning summaries: auto
[codex:499358] session id: 019b8ff4-2b34-7f31-860f-dd75a325d1ee
[codex:499358] --------
[codex:499358] user
[codex:499358] 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:499358]
[codex:499358] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:499358]
[codex:499358] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:499358] - Gas inefficiency, code quality, or best practices
[codex:499358] - Theoretical vulnerabilities without a clear extraction path
[codex:499358] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:499358] - Issues requiring social engineering or off-chain coordination
[codex:499358]
[codex:499358] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:499358] - CALL/DELEGATECALL with controllable destination or calldata
[codex:499358] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:499358] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:499358] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:499358] - External calls before state updates (reentrancy)
[codex:499358] - SELFDESTRUCT with controllable beneficiary
[codex:499358] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:499358]
[codex:499358] For each finding, you MUST explain:
[codex:499358] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:499358] 2. The concrete sequence of transactions to extract value
[codex:499358] 3. Why you believe this is exploitable (not just suspicious)
[codex:499358]
[codex:499358] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:499358] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:499358]
[codex:499358] Output MUST be valid JSON matching the provided schema.
[codex:499358] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:499358] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:499358] mcp startup: no servers
[codex:499358]
[codex:499358] thinking
[codex:499358] **Preparing to read BYTECODE_BUNDLE.txt**
[codex:499358] exec
[codex:499358] /bin/bash -lc ls in /tmp/codex-multi-2drizlq8 succeeded in 7ms:
[codex:499358] BYTECODE_BUNDLE.txt
[codex:499358] codex-output-schema.json
[codex:499358] exec
[codex:499358] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-2drizlq8 succeeded in 6ms:
[codex:499358] Runtime bytecode bundle for best-effort auditing.
[codex:499358] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:499358]
[codex:499358] FILE: runtime_bytecode.hex
[codex:499358] 0x6080604052600436106101e75760003560e01c8063a18a7bfc11610102578063f07d4a4b11610095578063f876b83711610064578063f876b8371461087b578063fba05415146108a6578063fd4a0a96146108d1578063fec740ee146108fc576101f1565b8063f07d4a4b146107ab578063f14210a6146107d6578063f55583fe14610825578063f6496f1314610850576101f1565b8063bd0db481116100d1578063bd0db4811461067f578063c1e9a771146106ce578063c52c978f14610709578063ed44063e14610780576101f1565b8063a18a7bfc146105b7578063ab4ae8ec14610608578063b5eb9c0114610633578063b7b0422d14610651576101f1565b806356a61a701161017a5780638456cb59116101495780638456cb59146104fb5780638a6253df146105125780639021e3671461053d578063999b65ea1461058c576101f1565b806356a61a701461041c5780635c8e06f414610477578063662fac39146104b95780637ddf6a0c146104d0576101f1565b806330f8e5b6116101b657806330f8e5b6146103605780633f4ba83a1461038b57806345b057e9146103a25780634ebb4549146103f1576101f1565b80631163ba34146101f657806311841c41146102315780631959a0021461025c5780632cf003c2146102cf576101f1565b366101f157600080fd5b600080fd5b34801561020257600080fd5b5061022f6004803603602081101561021957600080fd5b8101908080359060200190929190505050610927565b005b34801561023d57600080fd5b50610246610b1c565b6040518082815260200191505060405180910390f35b34801561026857600080fd5b506102ab6004803603602081101561027f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b24565b60405180848152602001838152602001828152602001935050505060405180910390f35b3480156102db57600080fd5b5061031e600480360360208110156102f257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c69565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561036c57600080fd5b50610375610e09565b6040518082815260200191505060405180910390f35b34801561039757600080fd5b506103a0610ed9565b005b3480156103ae57600080fd5b506103db600480360360208110156103c557600080fd5b8101908080359060200190929190505050611157565b6040518082815260200191505060405180910390f35b3480156103fd57600080fd5b506104066118ee565b6040518082815260200191505060405180910390f35b34801561042857600080fd5b506104756004803603604081101561043f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611994565b005b6104a36004803603602081101561048d57600080fd5b8101908080359060200190929190505050611c93565b6040518082815260200191505060405180910390f35b3480156104c557600080fd5b506104ce612379565b005b3480156104dc57600080fd5b506104e56126fe565b6040518082815260200191505060405180910390f35b34801561050757600080fd5b50610510612721565b005b34801561051e57600080fd5b50610527612906565b6040518082815260200191505060405180910390f35b34801561054957600080fd5b506105766004803603602081101561056057600080fd5b8101908080359060200190929190505050612910565b6040518082815260200191505060405180910390f35b34801561059857600080fd5b506105a1612e68565b6040518082815260200191505060405180910390f35b3480156105c357600080fd5b50610606600480360360208110156105da57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612e72565b005b34801561061457600080fd5b5061061d6135e7565b6040518082815260200191505060405180910390f35b61063b61360a565b6040518082815260200191505060405180910390f35b61067d6004803603602081101561066757600080fd5b8101908080359060200190929190505050613a4c565b005b34801561068b57600080fd5b506106b8600480360360208110156106a257600080fd5b8101908080359060200190929190505050613f00565b6040518082815260200191505060405180910390f35b3480156106da57600080fd5b50610707600480360360208110156106f157600080fd5b810190808035906020019092919050505061443b565b005b34801561071557600080fd5b506107426004803603602081101561072c57600080fd5b8101908080359060200190929190505050614626565b6040518082606460200280838360005b8381101561076d578082015181840152602081019050610752565b5050505090500191505060405180910390f35b34801561078c57600080fd5b50610795614854565b6040518082815260200191505060405180910390f35b3480156107b757600080fd5b506107c0614acd565b6040518082815260200191505060405180910390f35b3480156107e257600080fd5b5061080f600480360360208110156107f957600080fd5b8101908080359060200190929190505050614ad7565b6040518082815260200191505060405180910390f35b34801561083157600080fd5b5061083a6150f7565b6040518082815260200191505060405180910390f35b34801561085c57600080fd5b50610865615152565b6040518082815260200191505060405180910390f35b34801561088757600080fd5b5061089061515c565b6040518082815260200191505060405180910390f35b3480156108b257600080fd5b506108bb615166565b6040518082815260200191505060405180910390f35b3480156108dd57600080fd5b506108e6615247565b6040518082815260200191505060405180910390f35b34801561090857600080fd5b50610911615251565b6040518082815260200191505060405180910390f35b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109ea576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b600160038111156109f757fe5b6014809054906101000a900460ff166003811115610a1157fe5b14610a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b600a8110158015610a96575060328111155b610b08576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f77726f6e67206d6f7274676167652070657263656e740000000000000000000081525060200191505060405180910390fd5b80600c8190555080606403600d8190555050565b600047905090565b60008060008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16610b95576000806000829250819150809050925092509250610c62565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201549250925092505b9193909250565b600060016003811115610c7857fe5b6014809054906101000a900460ff166003811115610c9257fe5b14610d05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dff57600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610e04565b600090505b919050565b60003373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ece576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b600b80549050905090565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f9c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b60016003811115610fa957fe5b6014809054906101000a900460ff166003811115610fc357fe5b14611036576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b60038081111561104257fe5b6014809054906101000a900460ff16600381111561105c57fe5b146110cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b60016014806101000a81548160ff021916908360038111156110ed57fe5b02179055507fdfaf3bee2f7ce6311c89d47da927ee3d803804022e3e72d07a1f51368edf81d433604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b60006001600381111561116657fe5b6014809054906101000a900460ff16600381111561118057fe5b146111f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561129f57503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b611311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b60008211611387576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16611448576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e7661696c64206163636f756e74000000000000000000000000000000000081525060200191505060405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156114e957600080fd5b505afa1580156114fd573d6000803e3d6000fd5b505050506040513d602081101561151357600080fd5b810190808051906020019092919050505090508281101561159c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f696e73756666696369656e74207a647320666f7220776974686472617700000081525060200191505060405180910390fd5b6115a8336000806152ca565b826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101561165f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f696e73756666696369656e74207a647320666f72206163636f756e740000000081525060200191505060405180910390fd5b6116b3836000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461537390919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061170d8360075461537390919063ffffffff16565b600781905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156117bc57600080fd5b505af11580156117d0573d6000803e3d6000fd5b505050506040513d60208110156117e657600080fd5b8101908080519060200190929190505050507fc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f0377336000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154915050919050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff1661194c5760009050611991565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015490505b90565b600160038111156119a157fe5b6014809054906101000a900460ff1660038111156119bb57fe5b14611a2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015611ada57503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b611b4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16611c0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e7661696c64206163636f756e74000000000000000000000000000000000081525060200191505060405180910390fd5b60008111611c83576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f726f756e6420697320300000000000000000000000000000000000000000000081525060200191505060405180910390fd5b611c8f826001836152ca565b5050565b600060016003811115611ca257fe5b6014809054906101000a900460ff166003811115611cbc57fe5b14611d2f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015611ddb57503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b611e4d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b60008211611ec3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015611f9857600080fd5b505afa158015611fac573d6000803e3d6000fd5b505050506040513d6020811015611fc257600080fd5b810190808051906020019092919050505090508281101561204b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f636865636b2074686520746f6b656e20616c6c6f77616e63650000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff166120aa576120a93360006153bd565b5b6120b6336000806152ca565b61210a836000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546155fa90919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612164836007546155fa90919063ffffffff16565b600781905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561224757600080fd5b505af115801561225b573d6000803e3d6000fd5b505050506040513d602081101561227157600080fd5b8101908080519060200190929190505050507f768530721fabc8b082e61e2c0837b8b59e77cc7a9942a31bb4b47d86b819e01f336000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154915050919050565b6001600381111561238657fe5b6014809054906101000a900460ff1660038111156123a057fe5b14612413576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b61242a611680600f546155fa90919063ffffffff16565b431161249e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f77726f6e672074696d6520666f72206d696e657200000000000000000000000081525060200191505060405180910390fd5b60026014806101000a81548160ff021916908360038111156124bc57fe5b0217905550600860065490806001815401808255809150506001900390600052602060002001600090919091909150556009600754908060018154018082558091505060019003906000526020600020016000909190919091505560008061252a612525615682565b615692565b8092508193505050600060065414801561254657506000600754145b1561255457600091506125e4565b60006006541480156125695750600060075414155b1561259d57612596600d5461258860648561570f90919063ffffffff16565b61575990919063ffffffff16565b91506125e3565b6000600654141580156125b257506000600754145b156125e2576125df600c546125d160648561570f90919063ffffffff16565b61575990919063ffffffff16565b91505b5b5b61261e6125fb60318361575990919063ffffffff16565b612610846007546155fa90919063ffffffff16565b6155fa90919063ffffffff16565b600781905550612639826011546155fa90919063ffffffff16565b60118190555061266761265660318361575990919063ffffffff16565b6012546155fa90919063ffffffff16565b60128190555043600f8190555060016014806101000a81548160ff0219169083600381111561269257fe5b02179055507f9d7687b6172eca88505d6ac59b2b59edc1559089bf2501820b640c66111968e433604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a15050565b600061271c60035461270e6157df565b61537390919063ffffffff16565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146127e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b600160038111156127f157fe5b6014809054906101000a900460ff16600381111561280b57fe5b1461287e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b60036014806101000a81548160ff0219169083600381111561289c57fe5b02179055507f09e0da496684a1610726ed3e5c3b65c90ac04cd3a3c2e8994f82a498152ae97733604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000600e54905090565b60006001600381111561291f57fe5b6014809054906101000a900460ff16600381111561293957fe5b146129ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612a6f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f63616c6c6572206973206e6f7420746865206c7020706f6f6c0000000000000081525060200191505060405180910390fd5b60008211612ae5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612b8657600080fd5b505afa158015612b9a573d6000803e3d6000fd5b505050506040513d6020811015612bb057600080fd5b8101908080519060200190929190505050905082811015612c39576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f696e73756666696369656e74207a647320666f7220776974686472617700000081525060200191505060405180910390fd5b6000612c57600354612c496157df565b61537390919063ffffffff16565b905083811015612ccf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f696e73756666696369656e74207a647320666f72206c7020706f6f6c0000000081525060200191505060405180910390fd5b612ce4846003546155fa90919063ffffffff16565b600381905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612d9357600080fd5b505af1158015612da7573d6000803e3d6000fd5b505050506040513d6020811015612dbd57600080fd5b8101908080519060200190929190505050507fc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f037733612e04868461537390919063ffffffff16565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1612e5f848261537390919063ffffffff16565b92505050919050565b6000600c54905090565b60016003811115612e7f57fe5b6014809054906101000a900460ff166003811115612e9957fe5b14612f0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612faf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f6163636f756e7420697320746865207a65726f2061646472657373000000000081525060200191505060405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415613073576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f6163636f756e742063616e206e6f74206265206f70657261746f7220706f6f6c81525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561311a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180615d8d6021913960400191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156131de576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f6163636f756e742063616e206e6f74206265204c5020706f6f6c00000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415613280576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f6163636f756e742063616e206e6f742062652073656c6620726566657272657281525060200191505060405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16613341576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f696e7661696c64207265666572726572206163636f756e74000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16613402576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c6964206163636f756e74000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614613503576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f726566657272657220686173206265656e20736574000000000000000000000081525060200191505060405180910390fd5b80600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006136056005546135f7615898565b61537390919063ffffffff16565b905090565b60006001600381111561361957fe5b6014809054906101000a900460ff16600381111561363357fe5b146136a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561375257503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b6137c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b6000341161383a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16613899576138983360006153bd565b5b6138a5336000806152ca565b6138f9346000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546155fa90919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550613953346006546155fa90919063ffffffff16565b6006819055507f3a74d241e62d1aa30f6bbc17cfafcd109975a604bc6340fccd699cbd4231c29f336000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154905090565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614613b0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b60006003811115613b1c57fe5b6014809054906101000a900460ff166003811115613b3657fe5b14613ba9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b613bc4601354600a0a62200b2061575990919063ffffffff16565b8114613c38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f77726f6e6720746f74616c20737570706c7920666f72205a445300000000000081525060200191505060405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015613d0d57600080fd5b505afa158015613d21573d6000803e3d6000fd5b505050506040513d6020811015613d3757600080fd5b8101908080519060200190929190505050905081811015613dc0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f636865636b2074686520746f6b656e20616c6c6f77616e63650000000000000081525060200191505060405180910390fd5b60016014806101000a81548160ff02191690836003811115613dde57fe5b0217905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015613ec057600080fd5b505af1158015613ed4573d6000803e3d6000fd5b505050506040513d6020811015613eea57600080fd5b8101908080519060200190929190505050505050565b600060016003811115613f0f57fe5b6014809054906101000a900460ff166003811115613f2957fe5b14613f9c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461405f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b600082116140d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561417657600080fd5b505afa15801561418a573d6000803e3d6000fd5b505050506040513d60208110156141a057600080fd5b8101908080519060200190929190505050905082811015614229576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f696e73756666696369656e74207a647320666f7220776974686472617700000081525060200191505060405180910390fd5b6000614247600554614239615898565b61537390919063ffffffff16565b9050838110156142a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180615dae6022913960400191505060405180910390fd5b6142b7846005546155fa90919063ffffffff16565b600581905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561436657600080fd5b505af115801561437a573d6000803e3d6000fd5b505050506040513d602081101561439057600080fd5b8101908080519060200190929190505050507fc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f0377336143d7868461537390919063ffffffff16565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1614432848261537390919063ffffffff16565b92505050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146144fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b6001600381111561450b57fe5b6014809054906101000a900460ff16600381111561452557fe5b14614598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b600181101580156145aa5750600a8111155b61461c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6d696e74696e67206973206e6f742076616c696400000000000000000000000081525060200191505060405180910390fd5b80600e8190555050565b61462e615d48565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146146f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b600082101580156147065750600b8054905082105b614778576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f77726f6e6720696e64657800000000000000000000000000000000000000000081525060200191505060405180910390fd5b614780615d48565b60006147966064856155fa90919063ffffffff16565b90506001600b80549050038111156147b4576001600b805490500390505b60008490505b81811161484957600b81815481106147ce57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683826064811061480557fe5b602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080806001019150506147ba565b508192505050919050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff166148b25760009050614aca565b6000806148c860016148c2615682565b01615692565b809250819350505060006148de33600080615977565b5080915050600080905060006007541180156148fa5750600082115b156149505761494d60075461493f84614931600d5461492360648b61570f90919063ffffffff16565b61575990919063ffffffff16565b61575990919063ffffffff16565b61570f90919063ffffffff16565b90505b600080905060006006541180156149a8575060008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154115b15614a3f57614a3c600654614a2e6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154614a20600c54614a1260648c61570f90919063ffffffff16565b61575990919063ffffffff16565b61575990919063ffffffff16565b61570f90919063ffffffff16565b90505b60008090506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1615614a9c578490505b614ac181614ab384866155fa90919063ffffffff16565b6155fa90919063ffffffff16565b96505050505050505b90565b6000600654905090565b600060016003811115614ae657fe5b6014809054906101000a900460ff166003811115614b0057fe5b14614b73576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e7661696c642073746174650000000000000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015614c1f57503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b614c91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616c6c6572206973206e6f7420746865206f70657261746f7200000000000081525060200191505060405180910390fd5b60008211614d07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f616d6f756e74206172652030000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff16614dc8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e7661696c64206163636f756e74000000000000000000000000000000000081525060200191505060405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541015614e7f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f696e73756666696369656e742065746820666f72206163636f756e740000000081525060200191505060405180910390fd5b600047905082811015614efa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f696e73756666696369656e742065746820666f7220776974686472617700000081525060200191505060405180910390fd5b614f06336000806152ca565b614f5a836000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461537390919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550614fb48360065461537390919063ffffffff16565b6006819055503373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015615000573d6000803e3d6000fd5b507fdffa3d6a37be885892903f995612345a6690cf4475fa82d728c65dc3dbfe7559336000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154915050919050565b6000806151026157df565b9050600061510e615898565b905061514b60125461513d60115461512f85876155fa90919063ffffffff16565b6155fa90919063ffffffff16565b6155fa90919063ffffffff16565b9250505090565b6000600d54905090565b6000601154905090565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561520757600080fd5b505afa15801561521b573d6000803e3d6000fd5b505050506040513d602081101561523157600080fd5b8101908080519060200190929190505050905090565b6000600754905090565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff166152af57600090506152c7565b60006152bd33600080615977565b5080915050809150505b90565b6000806152d8858585615977565b8092508193505050816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550806000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201819055505050505050565b60006153b583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250615bc2565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415615460576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f6163636f756e7420697320746865207a65726f2061646472657373000000000081525060200191505060405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160019054906101000a900460ff1615615522576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f6163636f756e7420697320616c7265616479206f70656e00000000000000000081525060200191505060405180910390fd5b6040518060a001604052806000815260200160008152602001615543615682565b81526020018215158152602001600115158152506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548160ff02191690831515021790555060808201518160030160016101000a81548160ff0219169083151502179055509050505050565b600080828401905083811015615678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000600160098054905003905090565b60008060006156b0601354600a0a604661575990919063ffffffff16565b905060006156ce601354600a0a600e5461575990919063ffffffff16565b9050606985106156f4576156f1601354600a0a600761575990919063ffffffff16565b91505b61020d851061570257600090505b8181935093505050915091565b600061575183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250615c82565b905092915050565b60008083141561576c57600090506157d9565b600082840290508284828161577d57fe5b04146157d4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180615d6c6021913960400191505060405180910390fd5b809150505b92915050565b6000806157ea615682565b9050606981101561582957615821601354600a0a6158138361038461575990919063ffffffff16565b61575990919063ffffffff16565b915050615895565b61583d60698261537390919063ffffffff16565b9050615891601354600a0a61588361585f84605a61575990919063ffffffff16565b615875606961038461575990919063ffffffff16565b6155fa90919063ffffffff16565b61575990919063ffffffff16565b9150505b90565b6000806158a3615682565b905060698110156158f5576158ed601354600a0a6158df6158ce84601e61575990919063ffffffff16565b6129046155fa90919063ffffffff16565b61575990919063ffffffff16565b915050615974565b61590960698261537390919063ffffffff16565b9050615970601354600a0a61596261595161592e85600361575990919063ffffffff16565b6159436069601e61575990919063ffffffff16565b6155fa90919063ffffffff16565b6129046155fa90919063ffffffff16565b61575990919063ffffffff16565b9150505b90565b60008060008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816000015490506000826002015490506000600184600201540190505b600980549050811015615bb0576000806159f483615692565b8092508193505050600060098481548110615a0b57fe5b90600052602060002001549050600060088581548110615a2757fe5b906000526020600020015490506000809050600083118015615a495750600088115b15615a9d57615a9a83615a8c8a615a7e600d54615a7060648c61570f90919063ffffffff16565b61575990919063ffffffff16565b61575990919063ffffffff16565b61570f90919063ffffffff16565b90505b6000809050600083118015615ab6575060008a60010154115b15615b0e57615b0b83615afd8c60010154615aef600c54615ae160648d61570f90919063ffffffff16565b61575990919063ffffffff16565b61575990919063ffffffff16565b61570f90919063ffffffff16565b90505b60008090508a60030160009054906101000a900460ff1615615b2e578590505b615b6581615b5784615b49878f6155fa90919063ffffffff16565b6155fa90919063ffffffff16565b6155fa90919063ffffffff16565b99508798508e15615b9c57615b8460018f61537390919063ffffffff16565b9d5060008e1415615b9b5750505050505050615bb0565b5b5050505050505080806001019150506159db565b50818194509450505050935093915050565b6000838311158290615c6f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015615c34578082015181840152602081019050615c19565b50505050905090810190601f168015615c615780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290615d2e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015615cf3578082015181840152602081019050615cd8565b50505050905090810190601f168015615d205780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581615d3a57fe5b049050809150509392505050565b60405180610c80016040528060649060208202803883398082019150509050509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776163636f756e742063616e206e6f7420626520636f6e7472616374206f776e6572696e73756666696369656e74207a647320666f72206f70657261746f7220706f6f6ca264697066735822122032e8044ce69c87a9e43cd8b5684ac08f2a19e1fdf166ba1ad6171b34843c44c864736f6c63430006000033
[codex:499358]
[codex:499358] thinking
[codex:499358] **Analyzing runtime bytecode thoroughly**
[codex:499358]
[codex:499358] I’m making sure to read the entire bytecode file in manageable parts since the output was truncated. I plan to use Python to extract and analyze the full hex string for opcodes like CALL, DELEGATECALL, and SELFDESTRUCT, carefully checking for access controls and potential exploits. The goal is to confirm whether any concrete exploit paths exist by mapping storage usages and opcode patterns.
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] p=Path('BYTECODE_BUNDLE.txt')
[codex:499358] text=p.read_text()
[codex:499358] # extract hex after 'FILE: runtime_bytecode.hex'
[codex:499358] # find first 0x... hex sequence
[codex:499358] m=re.search(r'0x[0-9a-fA-F]+', text)
[codex:499358] print('found hex', bool(m))
[codex:499358] if m:
[codex:499358] hexstr=m.group(0)
[codex:499358] print('hex chars', len(hexstr)-2)
[codex:499358] print('bytes', (len(hexstr)-2)//2)
[codex:499358] print('start', hexstr[:20])
[codex:499358] print('end', hexstr[-20:])
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 46ms:
[codex:499358] found hex True
[codex:499358] hex chars 48138
[codex:499358] bytes 24069
[codex:499358] start 0x608060405260043610
[codex:499358] end 736f6c63430006000033
[codex:499358]
[codex:499358] thinking
[codex:499358] **Preparing to disassemble bytecode for key opcodes**
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358] # opcode names
[codex:499358] opnames={
[codex:499358] 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:499358] 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:499358] 0x20:'SHA3',
[codex:499358] 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:499358] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:499358] 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:499358] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:499358] }
[codex:499358] # disassemble scanning for target opcodes
[codex:499358] idx=0
[codex:499358] hits=[]
[codex:499358] while idx < len(code):
[codex:499358] op=code[idx]
[codex:499358] if 0x60 <= op <= 0x7f:
[codex:499358] push_n=op-0x5f
[codex:499358] data=code[idx+1:idx+1+push_n]
[codex:499358] if op in (0xf1,0xf2,0xf4,0xff):
[codex:499358] pass
[codex:499358] idx += 1+push_n
[codex:499358] continue
[codex:499358] if op in (0xf1,0xf2,0xf4,0xfa,0xff):
[codex:499358] hits.append((idx,opnames.get(op,hex(op))))
[codex:499358] idx += 1
[codex:499358] print('total hits', len(hits))
[codex:499358] for h in hits[:50]:
[codex:499358] print(h)
[codex:499358] print('last hit', hits[-1])
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 48ms:
[codex:499358] total hits 12
[codex:499358] (5356, 'STATICCALL')
[codex:499358] (6079, 'CALL')
[codex:499358] (8091, 'STATICCALL')
[codex:499358] (8778, 'CALL')
[codex:499358] (11145, 'STATICCALL')
[codex:499358] (11670, 'CALL')
[codex:499358] (15632, 'STATICCALL')
[codex:499358] (16067, 'CALL')
[codex:499358] (16761, 'STATICCALL')
[codex:499358] (17257, 'CALL')
[codex:499358] (20458, 'CALL')
[codex:499358] (21002, 'STATICCALL')
[codex:499358] last hit (21002, 'STATICCALL')
[codex:499358]
[codex:499358] thinking
[codex:499358] **Analyzing CALL instructions and value transfers**
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358] # opcode names
[codex:499358] opnames={
[codex:499358] 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:499358] 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:499358] 0x20:'SHA3',
[codex:499358] 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:499358] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:499358] 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:499358] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:499358] }
[codex:499358]
[codex:499358] # disassemble to list (offset, opname, immediate)
[codex:499358] ins=[]
[codex:499358] i=0
[codex:499358] while i < len(code):
[codex:499358] op=code[i]
[codex:499358] if 0x60 <= op <= 0x7f:
[codex:499358] n=op-0x5f
[codex:499358] data=code[i+1:i+1+n]
[codex:499358] ins.append((i, f'PUSH{n}', data.hex()))
[codex:499358] i+=1+n
[codex:499358] else:
[codex:499358] ins.append((i, opnames.get(op, f'OP_{op:02x}'), None))
[codex:499358] i+=1
[codex:499358]
[codex:499358] # find call offsets
[codex:499358] call_offsets=[off for off,op,_ in ins if op=='CALL']
[codex:499358]
[codex:499358] # map offset to index
[codex:499358] offset_to_idx={off:idx for idx,(off,_,__) in enumerate(ins)}
[codex:499358]
[codex:499358] for off in call_offsets:
[codex:499358] idx=offset_to_idx[off]
[codex:499358] start=max(0, idx-20)
[codex:499358] end=min(len(ins), idx+5)
[codex:499358] print('\\nCALL at', off)
[codex:499358] for j in range(start,end):
[codex:499358] o,op,imm=ins[j]
[codex:499358] if imm is None:
[codex:499358] print(f'{o:06x}: {op}')
[codex:499358] else:
[codex:499358] print(f'{o:06x}: {op} 0x{imm}')
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 39ms:
[codex:499358]
[codex:499358] CALL at 6079
[codex:499358] 0017a7: MLOAD
[codex:499358] 0017a8: OP_80
[codex:499358] 0017a9: OP_83
[codex:499358] 0017aa: SUB
[codex:499358] 0017ab: OP_81
[codex:499358] 0017ac: PUSH1 0x00
[codex:499358] 0017ae: OP_87
[codex:499358] 0017af: OP_80
[codex:499358] 0017b0: EXTCODESIZE
[codex:499358] 0017b1: ISZERO
[codex:499358] 0017b2: OP_80
[codex:499358] 0017b3: ISZERO
[codex:499358] 0017b4: PUSH2 0x17bc
[codex:499358] 0017b7: JUMPI
[codex:499358] 0017b8: PUSH1 0x00
[codex:499358] 0017ba: OP_80
[codex:499358] 0017bb: REVERT
[codex:499358] 0017bc: JUMPDEST
[codex:499358]
[codex:499358] thinking
[codex:499358] **Expanding opcode mapping and analysis window**
[codex:499358]
[codex:499358] I'm noticing the disassembler misses immediate push values and some stack operations like DUP and SWAP, so the stack state is unclear near certain calls. I'll update the opcode map to include DUP1–DUP16, SWAP1–SWAP16, and LOG opcodes, then expand the decoded instruction window around calls to better understand the calls and arguments. This should give clearer insight into contract interactions.
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358]
[codex:499358] opnames={
[codex:499358] 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:499358] 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:499358] 0x20:'SHA3',
[codex:499358] 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:499358] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:499358] 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:499358] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:499358] }
[codex:499358] # add DUP, SWAP, LOG
[codex:499358] for i in range(1,17):
[codex:499358] opnames[0x7f+i] = f'DUP{i}'
[codex:499358] opnames[0x8f+i] = f'SWAP{i}'
[codex:499358] for i in range(0,5):
[codex:499358] opnames[0xa0+i] = f'LOG{i}'
[codex:499358]
[codex:499358] ins=[]
[codex:499358] i=0
[codex:499358] while i < len(code):
[codex:499358] op=code[i]
[codex:499358] if 0x60 <= op <= 0x7f:
[codex:499358] n=op-0x5f
[codex:499358] data=code[i+1:i+1+n]
[codex:499358] ins.append((i, f'PUSH{n}', data.hex()))
[codex:499358] i+=1+n
[codex:499358] else:
[codex:499358] ins.append((i, opnames.get(op, f'OP_{op:02x}'), None))
[codex:499358] i+=1
[codex:499358]
[codex:499358] call_offsets=[off for off,op,_ in ins if op=='CALL']
[codex:499358] offset_to_idx={off:idx for idx,(off,_,__) in enumerate(ins)}
[codex:499358]
[codex:499358] for off in call_offsets:
[codex:499358] idx=offset_to_idx[off]
[codex:499358] start=max(0, idx-40)
[codex:499358] end=min(len(ins), idx+6)
[codex:499358] print('\\nCALL at', off)
[codex:499358] for j in range(start,end):
[codex:499358] o,op,imm=ins[j]
[codex:499358] if imm is None:
[codex:499358] print(f'{o:06x}: {op}')
[codex:499358] else:
[codex:499358] print(f'{o:06x}: {op} 0x{imm}')
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 40ms:
[codex:499358]
[codex:499358] CALL at 6079
[codex:499358] 001767: DUP4
[codex:499358] 001768: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:499358] 00177d: AND
[codex:499358] 00177e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:499358] 001793: AND
[codex:499358] 001794: DUP2
[codex:499358] 001795: MSTORE
[codex:499358] 001796: PUSH1 0x20
[codex:499358] 001798: ADD
[codex:499358] 001799: DUP3
[codex:499358] 00179a: DUP2
[codex:499358] 00179b: MSTORE
[codex:499358] 00179c: PUSH1 0x20
[codex:499358] 00179e: ADD
[codex:499358] 00179f: SWAP3
[codex:499358] 0017a0: POP
[codex:499358] 0017a1: POP
[codex:499358] 0017a2: POP
[codex:499358]
[codex:499358] thinking
[codex:499358] **Analyzing CALL parameters and transfer patterns**
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358]
[codex:499358] def find_bytes(b):
[codex:499358] offs=[]
[codex:499358] i=0
[codex:499358] while True:
[codex:499358] j=code.find(b,i)
[codex:499358] if j==-1: break
[codex:499358] offs.append(j)
[codex:499358] i=j+1
[codex:499358] return offs
[codex:499358]
[codex:499358] for sig in ['a9059cbb','23b872dd','70a08231','dd62ed3e']:
[codex:499358] offs=find_bytes(bytes.fromhex(sig))
[codex:499358] print(sig, offs[:10], 'count', len(offs))
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 28ms:
[codex:499358] a9059cbb [5966, 11557, 17144] count 3
[codex:499358] 23b872dd [8613, 15902] count 2
[codex:499358] 70a08231 [5253, 11042, 16658, 20899] count 4
[codex:499358] dd62ed3e [7936, 15477] count 2
[codex:499358]
[codex:499358] thinking
[codex:499358] **Mapping signatures to calls**
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358]
[codex:499358] opnames={
[codex:499358] 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:499358] 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:499358] 0x20:'SHA3',
[codex:499358] 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:499358] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:499358] 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:499358] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:499358] }
[codex:499358] for i in range(1,17):
[codex:499358] opnames[0x7f+i]=f'DUP{i}'
[codex:499358] opnames[0x8f+i]=f'SWAP{i}'
[codex:499358] for i in range(0,5):
[codex:499358] opnames[0xa0+i]=f'LOG{i}'
[codex:499358]
[codex:499358] # disassemble to list (offset, opname, immediate)
[codex:499358] ins=[]
[codex:499358] i=0
[codex:499358] while i < len(code):
[codex:499358] op=code[i]
[codex:499358] if 0x60 <= op <= 0x7f:
[codex:499358] n=op-0x5f
[codex:499358] data=code[i+1:i+1+n]
[codex:499358] ins.append((i, f'PUSH{n}', data.hex()))
[codex:499358] i+=1+n
[codex:499358] else:
[codex:499358] ins.append((i, opnames.get(op, f'OP_{op:02x}'), None))
[codex:499358] i+=1
[codex:499358] # build map from offset to index
[codex:499358] idx_map={off:idx for idx,(off,_,__) in enumerate(ins)}
[codex:499358]
[codex:499358] sig_bytes=[('a9059cbb',bytes.fromhex('a9059cbb')),('23b872dd',bytes.fromhex('23b872dd')),('70a08231',bytes.fromhex('70a08231')),('dd62ed3e',bytes.fromhex('dd62ed3e'))]
[codex:499358] for name, b in sig_bytes:
[codex:499358] offs=[]
[codex:499358] start=0
[codex:499358] while True:
[codex:499358] j=code.find(b,start)
[codex:499358] if j==-1: break
[codex:499358] offs.append(j)
[codex:499358] start=j+1
[codex:499358] print('\\nSIG', name, 'occurrences', offs)
[codex:499358] for off in offs:
[codex:499358] # find instruction index near off (it should be immediate data of PUSH4)
[codex:499358] # locate instruction whose immediate starts at off
[codex:499358] idx=None
[codex:499358] for k,(o,op,imm) in enumerate(ins):
[codex:499358] if imm and o+1 == off and len(imm)==8 and imm==name:
[codex:499358] idx=k
[codex:499358] break
[codex:499358] if idx is None:
[codex:499358] # maybe imm includes name in middle? skip
[codex:499358] continue
[codex:499358] start=max(0, idx-10)
[codex:499358] end=min(len(ins), idx+15)
[codex:499358] print(' around offset', off)
[codex:499358] for j in range(start,end):
[codex:499358] o,op,imm=ins[j]
[codex:499358] if imm is None:
[codex:499358] print(f'{o:06x}: {op}')
[codex:499358] else:
[codex:499358] print(f'{o:06x}: {op} 0x{imm}')
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 53ms:
[codex:499358]
[codex:499358] SIG a9059cbb occurrences [5966, 11557, 17144]
[codex:499358] around offset 5966
[codex:499358] 001719: SLOAD
[codex:499358] 00171a: SWAP1
[codex:499358] 00171b: PUSH2 0x0100
[codex:499358] 00171e: EXP
[codex:499358] 00171f: SWAP1
[codex:499358] 001720: DIV
[codex:499358] 001721: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:499358] 001736: AND
[codex:499358] 001737: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:499358] 00174c: AND
[codex:499358] 00174d: PUSH4 0xa9059cbb
[codex:499358] 001752: CALLER
[codex:499358] 001753: DUP6
[codex:499358] 001754: PUSH1 0x40
[codex:499358] 001756: MLOAD
[codex:499358] 001757: DUP4
[codex:499358] 001758: PUSH4 0xffffffff
[codex:499358]
[codex:499358] thinking
[codex:499358] **Analyzing storage slot writes for token address**
[codex:499358] exec
[codex:499358] /bin/bash -lc "python - <<'PY'
[codex:499358] import re
[codex:499358] from pathlib import Path
[codex:499358] text=Path('BYTECODE_BUNDLE.txt').read_text()
[codex:499358] hexstr=re.search(r'0x[0-9a-fA-F]+', text).group(0)[2:]
[codex:499358] code=bytes.fromhex(hexstr)
[codex:499358]
[codex:499358] opnames={
[codex:499358] 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:499358] 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:499358] 0x20:'SHA3',
[codex:499358] 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:499358] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:499358] 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:499358] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:499358] }
[codex:499358] for i in range(1,17):
[codex:499358] opnames[0x7f+i]=f'DUP{i}'
[codex:499358] opnames[0x8f+i]=f'SWAP{i}'
[codex:499358] for i in range(0,5):
[codex:499358] opnames[0xa0+i]=f'LOG{i}'
[codex:499358]
[codex:499358] ins=[]
[codex:499358] i=0
[codex:499358] while i < len(code):
[codex:499358] op=code[i]
[codex:499358] if 0x60 <= op <= 0x7f:
[codex:499358] n=op-0x5f
[codex:499358] data=code[i+1:i+1+n]
[codex:499358] ins.append((i, f'PUSH{n}', data.hex()))
[codex:499358] i+=1+n
[codex:499358] else:
[codex:499358] ins.append((i, opnames.get(op, f'OP_{op:02x}'), None))
[codex:499358] i+=1
[codex:499358]
[codex:499358] sstore_idxs=[idx for idx,(_,op,_) in enumerate(ins) if op=='SSTORE']
[codex:499358] print('SSTORE count', len(sstore_idxs))
[codex:499358] for idx in sstore_idxs:
[codex:499358] start=max(0, idx-6)
[codex:499358] end=min(len(ins), idx+2)
[codex:499358] print('\\nSSTORE at', ins[idx][0])
[codex:499358] for j in range(start,end):
[codex:499358] o,op,imm=ins[j]
[codex:499358] if imm is None:
[codex:499358] print(f'{o:06x}: {op}')
[codex:499358] else:
[codex:499358] print(f'{o:06x}: {op} 0x{imm}')
[codex:499358] PY" in /tmp/codex-multi-2drizlq8 succeeded in 40ms:
[codex:499358] SSTORE count 36
[codex:499358]
[codex:499358] SSTORE at 2830
[codex:499358] 000b07: REVERT
[codex:499358] 000b08: JUMPDEST
[codex:499358] 000b09: DUP1
[codex:499358] 000b0a: PUSH1 0x0c
[codex:499358] 000b0c: DUP2
[codex:499358] 000b0d: SWAP1
[codex:499358] 000b0e: SSTORE
[codex:499358] 000b0f: POP
[codex:499358]
[codex:499358] SSTORE at 2840
[codex:499358] 000b10: DUP1
[codex:499358] 000b11: PUSH1 0x64
[codex:499358] 000b13: SUB
[codex:499358] 000b14: PUSH1 0x0d
[codex:499358] 000b16: DUP2
[codex:499358] 000b17: SWAP1
[codex:499358] 000b18: SSTORE
[codex:499358]
[codex:499358] thinking
[codex:499358] **Concluding no exploits found**
[codex:499358] codex
[codex:499358] {"no_findings":true,"summary":"No concrete, exploitable value-extraction path identified from the provided bytecode-only analysis.","findings":[]}
[codex:499358] tokens used
[codex:499358] 42,213
[codex:499358] {"no_findings":true,"summary":"No concrete, exploitable value-extraction path identified from the provided bytecode-only analysis.","findings":[]}
{
"codex": {
"ran_at": "2026-01-05T21:01:21.594748+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable value-extraction path identified from the provided bytecode-only analysis.",
"raw_final": {
"summary": "No concrete, exploitable value-extraction path identified from the provided bytecode-only analysis.",
"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 0x01e7 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0xa18a7bfc 00000019: GT 0000001a: PUSH2 0x0102 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xf07d4a4b 00000024: GT 00000025: PUSH2 0x0095 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xf876b837 0000002f: GT 00000030: PUSH2 0x0064 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xf876b837 0000003a: EQ 0000003b: PUSH2 0x087b 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xfba05415 00000045: EQ 00000046: PUSH2 0x08a6 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xfd4a0a96 00000050: EQ 00000051: PUSH2 0x08d1 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xfec740ee 0000005b: EQ 0000005c: PUSH2 0x08fc 0000005f: JUMPI 00000060: PUSH2 0x01f1 00000063: JUMP 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xf07d4a4b 0000006b: EQ 0000006c: PUSH2 0x07ab 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xf14210a6 00000076: EQ 00000077: PUSH2 0x07d6 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xf55583fe 00000081: EQ 00000082: PUSH2 0x0825 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xf6496f13 0000008c: EQ 0000008d: PUSH2 0x0850 00000090: JUMPI 00000091: PUSH2 0x01f1 00000094: JUMP 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0xbd0db481 0000009c: GT 0000009d: PUSH2 0x00d1 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xbd0db481 000000a7: EQ 000000a8: PUSH2 0x067f 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xc1e9a771 000000b2: EQ 000000b3: PUSH2 0x06ce 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xc52c978f 000000bd: EQ 000000be: PUSH2 0x0709 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xed44063e 000000c8: EQ 000000c9: PUSH2 0x0780 000000cc: JUMPI 000000cd: PUSH2 0x01f1 000000d0: JUMP 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0xa18a7bfc 000000d8: EQ 000000d9: PUSH2 0x05b7 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0xab4ae8ec 000000e3: EQ 000000e4: PUSH2 0x0608 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0xb5eb9c01 000000ee: EQ 000000ef: PUSH2 0x0633 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0xb7b0422d 000000f9: EQ 000000fa: PUSH2 0x0651 000000fd: JUMPI 000000fe: PUSH2 0x01f1 00000101: JUMP 00000102: JUMPDEST 00000103: DUP1 00000104: PUSH4 0x56a61a70 00000109: GT 0000010a: PUSH2 0x017a 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0x8456cb59 00000114: GT 00000115: PUSH2 0x0149 00000118: JUMPI 00000119: DUP1 0000011a: PUSH4 0x8456cb59 0000011f: EQ 00000120: PUSH2 0x04fb 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0x8a6253df 0000012a: EQ 0000012b: PUSH2 0x0512 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0x9021e367 00000135: EQ 00000136: PUSH2 0x053d 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0x999b65ea 00000140: EQ 00000141: PUSH2 0x058c 00000144: JUMPI 00000145: PUSH2 0x01f1 00000148: JUMP 00000149: JUMPDEST 0000014a: DUP1 0000014b: PUSH4 0x56a61a70 00000150: EQ 00000151: PUSH2 0x041c 00000154: JUMPI 00000155: DUP1 00000156: PUSH4 0x5c8e06f4 0000015b: EQ 0000015c: PUSH2 0x0477 0000015f: JUMPI 00000160: DUP1 00000161: PUSH4 0x662fac39 00000166: EQ 00000167: PUSH2 0x04b9 0000016a: JUMPI 0000016b: DUP1 0000016c: PUSH4 0x7ddf6a0c 00000171: EQ 00000172: PUSH2 0x04d0 00000175: JUMPI 00000176: PUSH2 0x01f1 00000179: JUMP 0000017a: JUMPDEST 0000017b: DUP1 0000017c: PUSH4 0x30f8e5b6 00000181: GT 00000182: PUSH2 0x01b6 00000185: JUMPI 00000186: DUP1 00000187: PUSH4 0x30f8e5b6 0000018c: EQ 0000018d: PUSH2 0x0360 00000190: JUMPI 00000191: DUP1 00000192: PUSH4 0x3f4ba83a 00000197: EQ 00000198: PUSH2 0x038b 0000019b: JUMPI 0000019c: DUP1 0000019d: PUSH4 0x45b057e9 000001a2: EQ 000001a3: PUSH2 0x03a2 000001a6: JUMPI 000001a7: DUP1 000001a8: PUSH4 0x4ebb4549 000001ad: EQ 000001ae: PUSH2 0x03f1 000001b1: JUMPI 000001b2: PUSH2 0x01f1 000001b5: JUMP 000001b6: JUMPDEST 000001b7: DUP1 000001b8: PUSH4 0x1163ba34 000001bd: EQ 000001be: PUSH2 0x01f6 000001c1: JUMPI 000001c2: DUP1 000001c3: PUSH4 0x11841c41 000001c8: EQ 000001c9: PUSH2 0x0231 000001cc: JUMPI 000001cd: DUP1 000001ce: PUSH4 0x1959a002 000001d3: EQ 000001d4: PUSH2 0x025c 000001d7: JUMPI 000001d8: DUP1 000001d9: PUSH4 0x2cf003c2 000001de: EQ 000001df: PUSH2 0x02cf 000001e2: JUMPI 000001e3: PUSH2 0x01f1 000001e6: JUMP 000001e7: JUMPDEST 000001e8: CALLDATASIZE 000001e9: PUSH2 0x01f1 000001ec: JUMPI 000001ed: PUSH1 0x00 000001ef: DUP1 000001f0: REVERT 000001f1: JUMPDEST 000001f2: PUSH1 0x00 000001f4: DUP1 000001f5: REVERT 000001f6: JUMPDEST 000001f7: CALLVALUE 000001f8: DUP1 000001f9: ISZERO 000001fa: PUSH2 0x0202 000001fd: JUMPI 000001fe: PUSH1 0x00 00000200: DUP1 00000201: REVERT 00000202: JUMPDEST 00000203: POP 00000204: PUSH2 0x022f 00000207: PUSH1 0x04 00000209: DUP1 0000020a: CALLDATASIZE 0000020b: SUB 0000020c: PUSH1 0x20 0000020e: DUP2 0000020f: LT 00000210: ISZERO 00000211: PUSH2 0x0219 00000214: JUMPI 00000215: PUSH1 0x00 00000217: DUP1 00000218: REVERT 00000219: JUMPDEST 0000021a: DUP2 0000021b: ADD 0000021c: SWAP1 0000021d: DUP1 0000021e: DUP1 0000021f: CALLDATALOAD 00000220: SWAP1 00000221: PUSH1 0x20 00000223: ADD 00000224: SWAP1 00000225: SWAP3 00000226: SWAP2 00000227: SWAP1 00000228: POP 00000229: POP 0000022a: POP 0000022b: PUSH2 0x0927 0000022e: JUMP 0000022f: JUMPDEST 00000230: STOP 00000231: JUMPDEST 00000232: CALLVALUE 00000233: DUP1 00000234: ISZERO 00000235: PUSH2 0x023d 00000238: JUMPI 00000239: PUSH1 0x00 0000023b: DUP1 0000023c: REVERT 0000023d: JUMPDEST 0000023e: POP 0000023f: PUSH2 0x0246 00000242: PUSH2 0x0b1c 00000245: JUMP 00000246: JUMPDEST 00000247: PUSH1 0x40 00000249: MLOAD 0000024a: DUP1 0000024b: DUP3 0000024c: DUP2 0000024d: MSTORE 0000024e: PUSH1 0x20 00000250: ADD 00000251: SWAP2 00000252: POP 00000253: POP 00000254: PUSH1 0x40 00000256: MLOAD 00000257: DUP1 00000258: SWAP2 00000259: SUB 0000025a: SWAP1 0000025b: RETURN 0000025c: JUMPDEST 0000025d: CALLVALUE 0000025e: DUP1 0000025f: ISZERO 00000260: PUSH2 0x0268 00000263: JUMPI 00000264: PUSH1 0x00 00000266: DUP1 00000267: REVERT 00000268: JUMPDEST 00000269: POP 0000026a: PUSH2 0x02ab 0000026d: PUSH1 0x04 0000026f: DUP1 00000270: CALLDATASIZE 00000271: SUB 00000272: PUSH1 0x20 00000274: DUP2 00000275: LT 00000276: ISZERO 00000277: PUSH2 0x027f 0000027a: JUMPI 0000027b: PUSH1 0x00 0000027d: DUP1 0000027e: REVERT 0000027f: JUMPDEST 00000280: DUP2 00000281: ADD 00000282: SWAP1 00000283: DUP1 00000284: DUP1 00000285: CALLDATALOAD 00000286: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000029b: AND 0000029c: SWAP1 0000029d: PUSH1 0x20 0000029f: ADD 000002a0: SWAP1 000002a1: SWAP3 000002a2: SWAP2 000002a3: SWAP1 000002a4: POP 000002a5: POP 000002a6: POP 000002a7: PUSH2 0x0b24 000002aa: JUMP 000002ab: JUMPDEST 000002ac: PUSH1 0x40 000002ae: MLOAD 000002af: DUP1 000002b0: DUP5 000002b1: DUP2 000002b2: MSTORE 000002b3: PUSH1 0x20 000002b5: ADD 000002b6: DUP4 000002b7: DUP2 000002b8: MSTORE 000002b9: PUSH1 0x20 000002bb: ADD 000002bc: DUP3 000002bd: DUP2 000002be: MSTORE 000002bf: PUSH1 0x20 000002c1: ADD 000002c2: SWAP4 000002c3: POP 000002c4: POP 000002c5: POP 000002c6: POP 000002c7: PUSH1 0x40 000002c9: MLOAD 000002ca: DUP1 000002cb: SWAP2 000002cc: SUB 000002cd: SWAP1 000002ce: RETURN 000002cf: JUMPDEST 000002d0: CALLVALUE 000002d1: DUP1 000002d2: ISZERO 000002d3: PUSH2 0x02db 000002d6: JUMPI 000002d7: PUSH1 0x00 000002d9: DUP1 000002da: REVERT 000002db: JUMPDEST 000002dc: POP 000002dd: PUSH2 0x031e 000002e0: PUSH1 0x04 000002e2: DUP1 000002e3: CALLDATASIZE 000002e4: SUB 000002e5: PUSH1 0x20 000002e7: DUP2 000002e8: LT 000002e9: ISZERO 000002ea: PUSH2 0x02f2 000002ed: JUMPI 000002ee: PUSH1 0x00 000002f0: DUP1 000002f1: REVERT 000002f2: JUMPDEST 000002f3: DUP2 000002f4: ADD 000002f5: SWAP1 000002f6: DUP1 000002f7: DUP1 000002f8: CALLDATALOAD 000002f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000030e: AND 0000030f: SWAP1 00000310: PUSH1 0x20 00000312: ADD 00000313: SWAP1 00000314: SWAP3 00000315: SWAP2 00000316: SWAP1 00000317: POP 00000318: POP 00000319: POP 0000031a: PUSH2 0x0c69 0000031d: JUMP 0000031e: JUMPDEST 0000031f: PUSH1 0x40 00000321: MLOAD 00000322: DUP1 00000323: DUP3 00000324: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000339: AND 0000033a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000034f: AND 00000350: DUP2 00000351: MSTORE 00000352: PUSH1 0x20 00000354: ADD 00000355: SWAP2 00000356: POP 00000357: POP 00000358: PUSH1 0x40 0000035a: MLOAD 0000035b: DUP1 0000035c: SWAP2 0000035d: SUB 0000035e: SWAP1 0000035f: RETURN 00000360: JUMPDEST 00000361: CALLVALUE 00000362: DUP1 00000363: ISZERO 00000364: PUSH2 0x036c 00000367: JUMPI 00000368: PUSH1 0x00 0000036a: DUP1 0000036b: REVERT 0000036c: JUMPDEST 0000036d: POP 0000036e: PUSH2 0x0375 00000371: PUSH2 0x0e09 00000374: JUMP 00000375: JUMPDEST 00000376: PUSH1 0x40 00000378: MLOAD 00000379: DUP1 0000037a: DUP3 0000037b: DUP2 0000037c: MSTORE 0000037d: PUSH1 0x20 0000037f: ADD 00000380: SWAP2 00000381: POP 00000382: POP 00000383: PUSH1 0x40 00000385: MLOAD 00000386: DUP1 00000387: SWAP2 00000388: SUB 00000389: SWAP1 0000038a: RETURN 0000038b: JUMPDEST 0000038c: CALLVALUE 0000038d: DUP1 0000038e: ISZERO 0000038f: PUSH2 0x0397 00000392: JUMPI 00000393: PUSH1 0x00 00000395: DUP1 00000396: REVERT 00000397: JUMPDEST 00000398: POP 00000399: PUSH2 0x03a0 0000039c: PUSH2 0x0ed9 0000039f: JUMP 000003a0: JUMPDEST 000003a1: STOP 000003a2: JUMPDEST 000003a3: CALLVALUE 000003a4: DUP1 000003a5: ISZERO 000003a6: PUSH2 0x03ae 000003a9: JUMPI 000003aa: PUSH1 0x00 000003ac: DUP1 000003ad: REVERT 000003ae: JUMPDEST 000003af: POP 000003b0: PUSH2 0x03db 000003b3: PUSH1 0x04 000003b5: DUP1 000003b6: CALLDATASIZE 000003b7: SUB 000003b8: PUSH1 0x20 000003ba: DUP2 000003bb: LT 000003bc: ISZERO 000003bd: PUSH2 0x03c5 000003c0: JUMPI 000003c1: PUSH1 0x00 000003c3: DUP1 000003c4: REVERT 000003c5: JUMPDEST 000003c6: DUP2 000003c7: ADD 000003c8: SWAP1 000003c9: DUP1 000003ca: DUP1 000003cb: CALLDATALOAD 000003cc: SWAP1 000003cd: PUSH1 0x20 000003cf: ADD 000003d0: SWAP1 000003d1: SWAP3 000003d2: SWAP2 000003d3: SWAP1 000003d4: POP 000003d5: POP 000003d6: POP 000003d7: PUSH2 0x1157 000003da: JUMP 000003db: JUMPDEST 000003dc: PUSH1 0x40 000003de: MLOAD 000003df: DUP1 000003e0: DUP3 000003e1: DUP2 000003e2: MSTORE 000003e3: PUSH1 0x20 000003e5: ADD 000003e6: SWAP2 000003e7: POP 000003e8: POP 000003e9: PUSH1 0x40 000003eb: MLOAD 000003ec: DUP1 000003ed: SWAP2 000003ee: SUB 000003ef: SWAP1 000003f0: RETURN 000003f1: JUMPDEST 000003f2: CALLVALUE 000003f3: DUP1 000003f4: ISZERO 000003f5: PUSH2 0x03fd 000003f8: JUMPI 000003f9: PUSH1 0x00 000003fb: DUP1 000003fc: REVERT 000003fd: JUMPDEST 000003fe: POP 000003ff: PUSH2 0x0406 00000402: PUSH2 0x18ee 00000405: JUMP 00000406: JUMPDEST 00000407: PUSH1 0x40 00000409: MLOAD 0000040a: DUP1 0000040b: DUP3 0000040c: DUP2 0000040d: MSTORE 0000040e: PUSH1 0x20 00000410: ADD 00000411: SWAP2 00000412: POP 00000413: POP 00000414: PUSH1 0x40 00000416: MLOAD 00000417: DUP1 00000418: SWAP2 00000419: SUB 0000041a: SWAP1 0000041b: RETURN 0000041c: JUMPDEST 0000041d: CALLVALUE 0000041e: DUP1 0000041f: ISZERO 00000420: PUSH2 0x0428 00000423: JUMPI 00000424: PUSH1 0x00 00000426: DUP1 00000427: REVERT 00000428: JUMPDEST 00000429: POP 0000042a: PUSH2 0x0475 0000042d: PUSH1 0x04 0000042f: DUP1 00000430: CALLDATASIZE 00000431: SUB 00000432: PUSH1 0x40 00000434: DUP2 00000435: LT 00000436: ISZERO 00000437: PUSH2 0x043f 0000043a: JUMPI 0000043b: PUSH1 0x00 0000043d: DUP1 0000043e: REVERT 0000043f: JUMPDEST 00000440: DUP2 00000441: ADD 00000442: SWAP1 00000443: DUP1 00000444: DUP1 00000445: CALLDATALOAD 00000446: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000045b: AND 0000045c: SWAP1 0000045d: PUSH1 0x20 0000045f: ADD 00000460: SWAP1 00000461: SWAP3 00000462: SWAP2 00000463: SWAP1 00000464: DUP1 00000465: CALLDATALOAD 00000466: SWAP1 00000467: PUSH1 0x20 00000469: ADD 0000046a: SWAP1 0000046b: SWAP3 0000046c: SWAP2 0000046d: SWAP1 0000046e: POP 0000046f: POP 00000470: POP 00000471: PUSH2 0x1994 00000474: JUMP 00000475: JUMPDEST 00000476: STOP 00000477: JUMPDEST 00000478: PUSH2 0x04a3 0000047b: PUSH1 0x04 0000047d: DUP1 0000047e: CALLDATASIZE 0000047f: SUB 00000480: PUSH1 0x20 00000482: DUP2 00000483: LT 00000484: ISZERO 00000485: PUSH2 0x048d 00000488: JUMPI 00000489: PUSH1 0x00 0000048b: DUP1 0000048c: REVERT 0000048d: JUMPDEST 0000048e: DUP2 0000048f: ADD 00000490: SWAP1 00000491: DUP1 00000492: DUP1 00000493: CALLDATALOAD 00000494: SWAP1 00000495: PUSH1 0x20 00000497: ADD 00000498: SWAP1 00000499: SWAP3 0000049a: SWAP2 0000049b: SWAP1 0000049c: POP 0000049d: POP 0000049e: POP 0000049f: PUSH2 0x1c93 000004a2: JUMP 000004a3: JUMPDEST 000004a4: PUSH1 0x40 000004a6: MLOAD 000004a7: DUP1 000004a8: DUP3 000004a9: DUP2 000004aa: MSTORE 000004ab: PUSH1 0x20 000004ad: ADD 000004ae: SWAP2 000004af: POP 000004b0: POP 000004b1: PUSH1 0x40 000004b3: MLOAD 000004b4: DUP1 000004b5: SWAP2 000004b6: SUB 000004b7: SWAP1 000004b8: RETURN 000004b9: JUMPDEST 000004ba: CALLVALUE 000004bb: DUP1 000004bc: ISZERO 000004bd: PUSH2 0x04c5 000004c0: JUMPI 000004c1: PUSH1 0x00 000004c3: DUP1 000004c4: REVERT 000004c5: JUMPDEST 000004c6: POP 000004c7: PUSH2 0x04ce 000004ca: PUSH2 0x2379 000004cd: JUMP 000004ce: JUMPDEST 000004cf: STOP 000004d0: JUMPDEST 000004d1: CALLVALUE 000004d2: DUP1 000004d3: ISZERO 000004d4: PUSH2 0x04dc 000004d7: JUMPI 000004d8: PUSH1 0x00 000004da: DUP1 000004db: REVERT 000004dc: JUMPDEST 000004dd: POP 000004de: PUSH2 0x04e5 000004e1: PUSH2 0x26fe 000004e4: JUMP 000004e5: JUMPDEST 000004e6: PUSH1 0x40 000004e8: MLOAD 000004e9: DUP1 000004ea: DUP3 000004eb: DUP2 000004ec: MSTORE 000004ed: PUSH1 0x20 000004ef: ADD 000004f0: SWAP2 000004f1: POP 000004f2: POP 000004f3: PUSH1 0x40 000004f5: MLOAD 000004f6: DUP1 000004f7: SWAP2 000004f8: SUB 000004f9: SWAP1 000004fa: RETURN 000004fb: JUMPDEST 000004fc: CALLVALUE 000004fd: DUP1 000004fe: ISZERO 000004ff: PUSH2 0x0507 00000502: JUMPI 00000503: PUSH1 0x00 00000505: DUP1 00000506: REVERT 00000507: JUMPDEST 00000508: POP 00000509: PUSH2 0x0510 0000050c: PUSH2 0x2721 0000050f: JUMP 00000510: JUMPDEST 00000511: STOP 00000512: JUMPDEST 00000513: CALLVALUE 00000514: DUP1 00000515: ISZERO 00000516: PUSH2 0x051e 00000519: JUMPI 0000051a: PUSH1 0x00 0000051c: DUP1 0000051d: REVERT 0000051e: JUMPDEST 0000051f: POP 00000520: PUSH2 0x0527 00000523: PUSH2 0x2906 00000526: JUMP 00000527: JUMPDEST 00000528: PUSH1 0x40 0000052a: MLOAD 0000052b: DUP1 0000052c: DUP3 0000052d: DUP2 0000052e: MSTORE 0000052f: PUSH1 0x20 00000531: ADD 00000532: SWAP2 00000533: POP 00000534: POP 00000535: PUSH1 0x40 00000537: MLOAD 00000538: DUP1 00000539: SWAP2 0000053a: SUB 0000053b: SWAP1 0000053c: RETURN 0000053d: JUMPDEST 0000053e: CALLVALUE 0000053f: DUP1 00000540: ISZERO 00000541: PUSH2 0x0549 00000544: JUMPI 00000545: PUSH1 0x00 00000547: DUP1 00000548: REVERT 00000549: JUMPDEST 0000054a: POP 0000054b: PUSH2 0x0576 0000054e: PUSH1 0x04 00000550: DUP1 00000551: CALLDATASIZE 00000552: SUB 00000553: PUSH1 0x20 00000555: DUP2 00000556: LT 00000557: ISZERO 00000558: PUSH2 0x0560 0000055b: JUMPI 0000055c: PUSH1 0x00 0000055e: DUP1 0000055f: REVERT 00000560: JUMPDEST 00000561: DUP2 00000562: ADD 00000563: SWAP1 00000564: DUP1 00000565: DUP1 00000566: CALLDATALOAD 00000567: SWAP1 00000568: PUSH1 0x20 0000056a: ADD 0000056b: SWAP1 0000056c: SWAP3 0000056d: SWAP2 0000056e: SWAP1 0000056f: POP 00000570: POP 00000571: POP 00000572: PUSH2 0x2910 00000575: JUMP 00000576: JUMPDEST 00000577: PUSH1 0x40 00000579: MLOAD 0000057a: DUP1 0000057b: DUP3 0000057c: DUP2 0000057d: MSTORE 0000057e: PUSH1 0x20 00000580: ADD 00000581: SWAP2 00000582: POP 00000583: POP 00000584: PUSH1 0x40 00000586: MLOAD 00000587: DUP1 00000588: SWAP2 00000589: SUB 0000058a: SWAP1 0000058b: RETURN 0000058c: JUMPDEST 0000058d: CALLVALUE 0000058e: DUP1 0000058f: ISZERO 00000590: PUSH2 0x0598 00000593: JUMPI 00000594: PUSH1 0x00 00000596: DUP1 00000597: REVERT 00000598: JUMPDEST 00000599: POP 0000059a: PUSH2 0x05a1 0000059d: PUSH2 0x2e68 000005a0: JUMP 000005a1: JUMPDEST 000005a2: PUSH1 0x40 000005a4: MLOAD 000005a5: DUP1 000005a6: DUP3 000005a7: DUP2 000005a8: MSTORE 000005a9: PUSH1 0x20 000005ab: ADD 000005ac: SWAP2 000005ad: POP 000005ae: POP 000005af: PUSH1 0x40 000005b1: MLOAD 000005b2: DUP1 000005b3: SWAP2 000005b4: SUB 000005b5: SWAP1 000005b6: RETURN 000005b7: JUMPDEST 000005b8: CALLVALUE 000005b9: DUP1 000005ba: ISZERO 000005bb: PUSH2 0x05c3 000005be: JUMPI 000005bf: PUSH1 0x00 000005c1: DUP1 000005c2: REVERT 000005c3: JUMPDEST 000005c4: POP 000005c5: PUSH2 0x0606 000005c8: PUSH1 0x04 000005ca: DUP1 000005cb: CALLDATASIZE 000005cc: SUB 000005cd: PUSH1 0x20 000005cf: DUP2 000005d0: LT 000005d1: ISZERO 000005d2: PUSH2 0x05da 000005d5: JUMPI 000005d6: PUSH1 0x00 000005d8: DUP1 000005d9: REVERT 000005da: JUMPDEST 000005db: DUP2 000005dc: ADD 000005dd: SWAP1 000005de: DUP1 000005df: DUP1 000005e0: CALLDATALOAD 000005e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005f6: AND 000005f7: SWAP1 000005f8: PUSH1 0x20 000005fa: ADD 000005fb: SWAP1 000005fc: SWAP3 000005fd: SWAP2 000005fe: SWAP1 000005ff: POP 00000600: POP 00000601: POP 00000602: PUSH2 0x2e72 00000605: JUMP 00000606: JUMPDEST 00000607: STOP 00000608: JUMPDEST 00000609: CALLVALUE 0000060a: DUP1 0000060b: ISZERO 0000060c: PUSH2 0x0614 0000060f: JUMPI 00000610: PUSH1 0x00 00000612: DUP1 00000613: REVERT 00000614: JUMPDEST 00000615: POP 00000616: PUSH2 0x061d 00000619: PUSH2 0x35e7 0000061c: JUMP 0000061d: JUMPDEST 0000061e: PUSH1 0x40 00000620: MLOAD 00000621: DUP1 00000622: DUP3 00000623: DUP2 00000624: MSTORE 00000625: PUSH1 0x20 00000627: ADD 00000628: SWAP2 00000629: POP 0000062a: POP 0000062b: PUSH1 0x40 0000062d: MLOAD 0000062e: DUP1 0000062f: SWAP2 00000630: SUB 00000631: SWAP1 00000632: RETURN 00000633: JUMPDEST 00000634: PUSH2 0x063b 00000637: PUSH2 0x360a 0000063a: JUMP 0000063b: JUMPDEST 0000063c: PUSH1 0x40 0000063e: MLOAD 0000063f: DUP1 00000640: DUP3 00000641: DUP2 00000642: MSTORE 00000643: PUSH1 0x20 00000645: ADD 00000646: SWAP2 00000647: POP 00000648: POP 00000649: PUSH1 0x40 0000064b: MLOAD 0000064c: DUP1 0000064d: SWAP2 0000064e: SUB 0000064f: SWAP1 00000650: RETURN 00000651: JUMPDEST 00000652: PUSH2 0x067d 00000655: PUSH1 0x04 00000657: DUP1 00000658: CALLDATASIZE 00000659: SUB 0000065a: PUSH1 0x20 0000065c: DUP2 0000065d: LT 0000065e: ISZERO 0000065f: PUSH2 0x0667 00000662: JUMPI 00000663: PUSH1 0x00 00000665: DUP1 00000666: REVERT 00000667: JUMPDEST 00000668: DUP2 00000669: ADD 0000066a: SWAP1 0000066b: DUP1 0000066c: DUP1 0000066d: CALLDATALOAD 0000066e: SWAP1 0000066f: PUSH1 0x20 00000671: ADD 00000672: SWAP1 00000673: SWAP3 00000674: SWAP2 00000675: SWAP1 00000676: POP 00000677: POP 00000678: POP 00000679: PUSH2 0x3a4c 0000067c: JUMP 0000067d: JUMPDEST 0000067e: STOP 0000067f: JUMPDEST 00000680: CALLVALUE 00000681: DUP1 00000682: ISZERO 00000683: PUSH2 0x068b 00000686: JUMPI 00000687: PUSH1 0x00 00000689: DUP1 0000068a: REVERT 0000068b: JUMPDEST 0000068c: POP 0000068d: PUSH2 0x06b8 00000690: PUSH1 0x04 00000692: DUP1 00000693: CALLDATASIZE 00000694: SUB 00000695: PUSH1 0x20 00000697: DUP2 00000698: LT 00000699: ISZERO 0000069a: PUSH2 0x06a2 0000069d: JUMPI 0000069e: PUSH1 0x00 000006a0: DUP1 000006a1: REVERT 000006a2: JUMPDEST 000006a3: DUP2 000006a4: ADD 000006a5: SWAP1 000006a6: DUP1 000006a7: DUP1 000006a8: CALLDATALOAD 000006a9: SWAP1 000006aa: PUSH1 0x20 000006ac: ADD 000006ad: SWAP1 000006ae: SWAP3 000006af: SWAP2 000006b0: SWAP1 000006b1: POP 000006b2: POP 000006b3: POP 000006b4: PUSH2 0x3f00 000006b7: JUMP 000006b8: JUMPDEST 000006b9: PUSH1 0x40 000006bb: MLOAD 000006bc: DUP1 000006bd: DUP3 000006be: DUP2 000006bf: MSTORE 000006c0: PUSH1 0x20 000006c2: ADD 000006c3: SWAP2 000006c4: POP 000006c5: POP 000006c6: PUSH1 0x40 000006c8: MLOAD 000006c9: DUP1 000006ca: SWAP2 000006cb: SUB 000006cc: SWAP1 000006cd: RETURN 000006ce: JUMPDEST 000006cf: CALLVALUE 000006d0: DUP1 000006d1: ISZERO 000006d2: PUSH2 0x06da 000006d5: JUMPI 000006d6: PUSH1 0x00 000006d8: DUP1 000006d9: REVERT 000006da: JUMPDEST 000006db: POP 000006dc: PUSH2 0x0707 000006df: PUSH1 0x04 000006e1: DUP1 000006e2: CALLDATASIZE 000006e3: SUB 000006e4: PUSH1 0x20 000006e6: DUP2 000006e7: LT 000006e8: ISZERO 000006e9: PUSH2 0x06f1 000006ec: JUMPI 000006ed: PUSH1 0x00 000006ef: DUP1 000006f0: REVERT 000006f1: JUMPDEST 000006f2: DUP2 000006f3: ADD 000006f4: SWAP1 000006f5: DUP1 000006f6: DUP1 000006f7: CALLDATALOAD 000006f8: SWAP1 000006f9: PUSH1 0x20 000006fb: ADD 000006fc: SWAP1 000006fd: SWAP3 000006fe: SWAP2 000006ff: SWAP1 00000700: POP 00000701: POP 00000702: POP 00000703: PUSH2 0x443b 00000706: JUMP 00000707: JUMPDEST 00000708: STOP 00000709: JUMPDEST 0000070a: CALLVALUE 0000070b: DUP1 0000070c: ISZERO 0000070d: PUSH2 0x0715 00000710: JUMPI 00000711: PUSH1 0x00 00000713: DUP1 00000714: REVERT 00000715: JUMPDEST 00000716: POP 00000717: PUSH2 0x0742 0000071a: PUSH1 0x04 0000071c: DUP1 0000071d: CALLDATASIZE 0000071e: SUB 0000071f: PUSH1 0x20 00000721: DUP2 00000722: LT 00000723: ISZERO 00000724: PUSH2 0x072c 00000727: JUMPI 00000728: PUSH1 0x00 0000072a: DUP1 0000072b: REVERT 0000072c: JUMPDEST 0000072d: DUP2 0000072e: ADD 0000072f: SWAP1 00000730: DUP1 00000731: DUP1 00000732: CALLDATALOAD 00000733: SWAP1 00000734: PUSH1 0x20 00000736: ADD 00000737: SWAP1 00000738: SWAP3 00000739: SWAP2 0000073a: SWAP1 0000073b: POP 0000073c: POP 0000073d: POP 0000073e: PUSH2 0x4626 00000741: JUMP 00000742: JUMPDEST 00000743: PUSH1 0x40 00000745: MLOAD 00000746: DUP1 00000747: DUP3 00000748: PUSH1 0x64 0000074a: PUSH1 0x20 0000074c: MUL 0000074d: DUP1 0000074e: DUP4 0000074f: DUP4 00000750: PUSH1 0x00 00000752: JUMPDEST 00000753: DUP4 00000754: DUP2 00000755: LT 00000756: ISZERO 00000757: PUSH2 0x076d 0000075a: JUMPI 0000075b: DUP1 0000075c: DUP3 0000075d: ADD 0000075e: MLOAD 0000075f: DUP2 00000760: DUP5 00000761: ADD 00000762: MSTORE 00000763: PUSH1 0x20 00000765: DUP2 00000766: ADD 00000767: SWAP1 00000768: POP 00000769: PUSH2 0x0752 0000076c: JUMP 0000076d: JUMPDEST 0000076e: POP 0000076f: POP 00000770: POP 00000771: POP 00000772: SWAP1 00000773: POP 00000774: ADD 00000775: SWAP2 00000776: POP 00000777: POP 00000778: PUSH1 0x40 0000077a: MLOAD 0000077b: DUP1 0000077c: SWAP2 0000077d: SUB 0000077e: SWAP1 0000077f: RETURN 00000780: JUMPDEST 00000781: CALLVALUE 00000782: DUP1 00000783: ISZERO 00000784: PUSH2 0x078c 00000787: JUMPI 00000788: PUSH1 0x00 0000078a: DUP1 0000078b: REVERT 0000078c: JUMPDEST 0000078d: POP 0000078e: PUSH2 0x0795 00000791: PUSH2 0x4854 00000794: JUMP 00000795: JUMPDEST 00000796: PUSH1 0x40 00000798: MLOAD 00000799: DUP1 0000079a: DUP3 0000079b: DUP2 0000079c: MSTORE 0000079d: PUSH1 0x20 0000079f: ADD 000007a0: SWAP2 000007a1: POP 000007a2: POP 000007a3: PUSH1 0x40 000007a5: MLOAD 000007a6: DUP1 000007a7: SWAP2 000007a8: SUB 000007a9: SWAP1 000007aa: RETURN 000007ab: JUMPDEST 000007ac: CALLVALUE 000007ad: DUP1 000007ae: ISZERO 000007af: PUSH2 0x07b7 000007b2: JUMPI 000007b3: PUSH1 0x00 000007b5: DUP1 000007b6: REVERT 000007b7: JUMPDEST 000007b8: POP 000007b9: PUSH2 0x07c0 000007bc: PUSH2 0x4acd 000007bf: JUMP 000007c0: JUMPDEST 000007c1: PUSH1 0x40 000007c3: MLOAD 000007c4: DUP1 000007c5: DUP3 000007c6: DUP2 000007c7: MSTORE 000007c8: PUSH1 0x20 000007ca: ADD 000007cb: SWAP2 000007cc: POP 000007cd: POP 000007ce: PUSH1 0x40 000007d0: MLOAD 000007d1: DUP1 000007d2: SWAP2 000007d3: SUB 000007d4: SWAP1 000007d5: RETURN 000007d6: JUMPDEST 000007d7: CALLVALUE 000007d8: DUP1 000007d9: ISZERO 000007da: PUSH2 0x07e2 000007dd: JUMPI 000007de: PUSH1 0x00 000007e0: DUP1 000007e1: REVERT 000007e2: JUMPDEST 000007e3: POP 000007e4: PUSH2 0x080f 000007e7: PUSH1 0x04 000007e9: DUP1 000007ea: CALLDATASIZE 000007eb: SUB 000007ec: PUSH1 0x20 000007ee: DUP2 000007ef: LT 000007f0: ISZERO 000007f1: PUSH2 0x07f9 000007f4: JUMPI 000007f5: PUSH1 0x00 000007f7: DUP1 000007f8: REVERT 000007f9: JUMPDEST 000007fa: DUP2 000007fb: ADD 000007fc: SWAP1 000007fd: DUP1 000007fe: DUP1 000007ff: CALLDATALOAD 00000800: SWAP1 00000801: PUSH1 0x20 00000803: ADD 00000804: SWAP1 00000805: SWAP3 00000806: SWAP2 00000807: SWAP1 00000808: POP 00000809: POP 0000080a: POP 0000080b: PUSH2 0x4ad7 0000080e: JUMP 0000080f: JUMPDEST 00000810: PUSH1 0x40 00000812: MLOAD 00000813: DUP1 00000814: DUP3 00000815: DUP2 00000816: MSTORE 00000817: PUSH1 0x20 00000819: ADD 0000081a: SWAP2 0000081b: POP 0000081c: POP 0000081d: PUSH1 0x40 0000081f: MLOAD 00000820: DUP1 00000821: SWAP2 00000822: SUB 00000823: SWAP1 00000824: RETURN 00000825: JUMPDEST 00000826: CALLVALUE 00000827: DUP1 00000828: ISZERO 00000829: PUSH2 0x0831 0000082c: JUMPI 0000082d: PUSH1 0x00 0000082f: DUP1 00000830: REVERT 00000831: JUMPDEST 00000832: POP 00000833: PUSH2 0x083a 00000836: PUSH2 0x50f7 00000839: JUMP 0000083a: JUMPDEST 0000083b: PUSH1 0x40 0000083d: MLOAD 0000083e: DUP1 0000083f: DUP3 00000840: DUP2 00000841: MSTORE 00000842: PUSH1 0x20 00000844: ADD 00000845: SWAP2 00000846: POP 00000847: POP 00000848: PUSH1 0x40 0000084a: MLOAD 0000084b: DUP1 0000084c: SWAP2 0000084d: SUB 0000084e: SWAP1 0000084f: RETURN 00000850: JUMPDEST 00000851: CALLVALUE 00000852: DUP1 00000853: ISZERO 00000854: PUSH2 0x085c 00000857: JUMPI 00000858: PUSH1 0x00 0000085a: DUP1 0000085b: REVERT 0000085c: JUMPDEST 0000085d: POP 0000085e: PUSH2 0x0865 00000861: PUSH2 0x5152 00000864: JUMP 00000865: JUMPDEST 00000866: PUSH1 0x40 00000868: MLOAD 00000869: DUP1 0000086a: DUP3 0000086b: DUP2 0000086c: MSTORE 0000086d: PUSH1 0x20 0000086f: ADD 00000870: SWAP2 00000871: POP 00000872: POP 00000873: PUSH1 0x40 00000875: MLOAD 00000876: DUP1 00000877: SWAP2 00000878: SUB 00000879: SWAP1 0000087a: RETURN 0000087b: JUMPDEST 0000087c: CALLVALUE 0000087d: DUP1 0000087e: ISZERO 0000087f: PUSH2 0x0887 00000882: JUMPI 00000883: PUSH1 0x00 00000885: DUP1 00000886: REVERT 00000887: JUMPDEST 00000888: POP 00000889: PUSH2 0x0890 0000088c: PUSH2 0x515c 0000088f: JUMP 00000890: JUMPDEST 00000891: PUSH1 0x40 00000893: MLOAD 00000894: DUP1 00000895: DUP3 00000896: DUP2 00000897: MSTORE 00000898: PUSH1 0x20 0000089a: ADD 0000089b: SWAP2 0000089c: POP 0000089d: POP 0000089e: PUSH1 0x40 000008a0: MLOAD 000008a1: DUP1 000008a2: SWAP2 000008a3: SUB 000008a4: SWAP1 000008a5: RETURN 000008a6: JUMPDEST 000008a7: CALLVALUE 000008a8: DUP1 000008a9: ISZERO 000008aa: PUSH2 0x08b2 000008ad: JUMPI 000008ae: PUSH1 0x00 000008b0: DUP1 000008b1: REVERT 000008b2: JUMPDEST 000008b3: POP 000008b4: PUSH2 0x08bb 000008b7: PUSH2 0x5166 000008ba: JUMP 000008bb: JUMPDEST 000008bc: PUSH1 0x40 000008be: MLOAD 000008bf: DUP1 000008c0: DUP3 000008c1: DUP2 000008c2: MSTORE 000008c3: PUSH1 0x20 000008c5: ADD 000008c6: SWAP2 000008c7: POP 000008c8: POP 000008c9: PUSH1 0x40 000008cb: MLOAD 000008cc: DUP1 000008cd: SWAP2 000008ce: SUB 000008cf: SWAP1 000008d0: RETURN 000008d1: JUMPDEST 000008d2: CALLVALUE 000008d3: DUP1 000008d4: ISZERO 000008d5: PUSH2 0x08dd 000008d8: JUMPI 000008d9: PUSH1 0x00 000008db: DUP1 000008dc: REVERT 000008dd: JUMPDEST 000008de: POP 000008df: PUSH2 0x08e6 000008e2: PUSH2 0x5247 000008e5: JUMP 000008e6: JUMPDEST 000008e7: PUSH1 0x40 000008e9: MLOAD 000008ea: DUP1 000008eb: DUP3 000008ec: DUP2 000008ed: MSTORE 000008ee: PUSH1 0x20 000008f0: ADD 000008f1: SWAP2 000008f2: POP 000008f3: POP 000008f4: PUSH1 0x40 000008f6: MLOAD 000008f7: DUP1 000008f8: SWAP2 000008f9: SUB 000008fa: SWAP1 000008fb: RETURN 000008fc: JUMPDEST 000008fd: CALLVALUE 000008fe: DUP1 000008ff: ISZERO 00000900: PUSH2 0x0908 00000903: JUMPI 00000904: PUSH1 0x00 00000906: DUP1 00000907: REVERT 00000908: JUMPDEST 00000909: POP 0000090a: PUSH2 0x0911 0000090d: PUSH2 0x5251 00000910: JUMP 00000911: JUMPDEST 00000912: PUSH1 0x40 00000914: MLOAD 00000915: DUP1 00000916: DUP3 00000917: DUP2 00000918: MSTORE 00000919: PUSH1 0x20 0000091b: ADD 0000091c: SWAP2 0000091d: POP 0000091e: POP 0000091f: PUSH1 0x40 00000921: MLOAD 00000922: DUP1 00000923: SWAP2 00000924: SUB 00000925: SWAP1 00000926: RETURN 00000927: JUMPDEST 00000928: CALLER 00000929: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000093e: AND 0000093f: PUSH1 0x01 00000941: PUSH1 0x00 00000943: SWAP1 00000944: SLOAD 00000945: SWAP1 00000946: PUSH2 0x0100 00000949: EXP 0000094a: SWAP1 0000094b: DIV 0000094c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000961: AND 00000962: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000977: AND 00000978: EQ 00000979: PUSH2 0x09ea 0000097c: JUMPI 0000097d: PUSH1 0x40 0000097f: MLOAD 00000980: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000009a1: DUP2 000009a2: MSTORE 000009a3: PUSH1 0x04 000009a5: ADD 000009a6: DUP1 000009a7: DUP1 000009a8: PUSH1 0x20 000009aa: ADD 000009ab: DUP3 000009ac: DUP2 000009ad: SUB 000009ae: DUP3 000009af: MSTORE 000009b0: PUSH1 0x1a 000009b2: DUP2 000009b3: MSTORE 000009b4: PUSH1 0x20 000009b6: ADD 000009b7: DUP1 000009b8: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 000009d9: DUP2 000009da: MSTORE 000009db: POP 000009dc: PUSH1 0x20 000009de: ADD 000009df: SWAP2 000009e0: POP 000009e1: POP 000009e2: PUSH1 0x40 000009e4: MLOAD 000009e5: DUP1 000009e6: SWAP2 000009e7: SUB 000009e8: SWAP1 000009e9: REVERT 000009ea: JUMPDEST 000009eb: PUSH1 0x01 000009ed: PUSH1 0x03 000009ef: DUP2 000009f0: GT 000009f1: ISZERO 000009f2: PUSH2 0x09f7 000009f5: JUMPI 000009f6: INVALID 000009f7: JUMPDEST 000009f8: PUSH1 0x14 000009fa: DUP1 000009fb: SWAP1 000009fc: SLOAD 000009fd: SWAP1 000009fe: PUSH2 0x0100 00000a01: EXP 00000a02: SWAP1 00000a03: DIV 00000a04: PUSH1 0xff 00000a06: AND 00000a07: PUSH1 0x03 00000a09: DUP2 00000a0a: GT 00000a0b: ISZERO 00000a0c: PUSH2 0x0a11 00000a0f: JUMPI 00000a10: INVALID 00000a11: JUMPDEST 00000a12: EQ 00000a13: PUSH2 0x0a84 00000a16: JUMPI 00000a17: PUSH1 0x40 00000a19: MLOAD 00000a1a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000a3b: DUP2 00000a3c: MSTORE 00000a3d: PUSH1 0x04 00000a3f: ADD 00000a40: DUP1 00000a41: DUP1 00000a42: PUSH1 0x20 00000a44: ADD 00000a45: DUP3 00000a46: DUP2 00000a47: SUB 00000a48: DUP3 00000a49: MSTORE 00000a4a: PUSH1 0x0d 00000a4c: DUP2 00000a4d: MSTORE 00000a4e: PUSH1 0x20 00000a50: ADD 00000a51: DUP1 00000a52: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00000a73: DUP2 00000a74: MSTORE 00000a75: POP 00000a76: PUSH1 0x20 00000a78: ADD 00000a79: SWAP2 00000a7a: POP 00000a7b: POP 00000a7c: PUSH1 0x40 00000a7e: MLOAD 00000a7f: DUP1 00000a80: SWAP2 00000a81: SUB 00000a82: SWAP1 00000a83: REVERT 00000a84: JUMPDEST 00000a85: PUSH1 0x0a 00000a87: DUP2 00000a88: LT 00000a89: ISZERO 00000a8a: DUP1 00000a8b: ISZERO 00000a8c: PUSH2 0x0a96 00000a8f: JUMPI 00000a90: POP 00000a91: PUSH1 0x32 00000a93: DUP2 00000a94: GT 00000a95: ISZERO 00000a96: JUMPDEST 00000a97: PUSH2 0x0b08 00000a9a: JUMPI 00000a9b: PUSH1 0x40 00000a9d: MLOAD 00000a9e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000abf: DUP2 00000ac0: MSTORE 00000ac1: PUSH1 0x04 00000ac3: ADD 00000ac4: DUP1 00000ac5: DUP1 00000ac6: PUSH1 0x20 00000ac8: ADD 00000ac9: DUP3 00000aca: DUP2 00000acb: SUB 00000acc: DUP3 00000acd: MSTORE 00000ace: PUSH1 0x16 00000ad0: DUP2 00000ad1: MSTORE 00000ad2: PUSH1 0x20 00000ad4: ADD 00000ad5: DUP1 00000ad6: PUSH32 0x77726f6e67206d6f7274676167652070657263656e7400000000000000000000 00000af7: DUP2 00000af8: MSTORE 00000af9: POP 00000afa: PUSH1 0x20 00000afc: ADD 00000afd: SWAP2 00000afe: POP 00000aff: POP 00000b00: PUSH1 0x40 00000b02: MLOAD 00000b03: DUP1 00000b04: SWAP2 00000b05: SUB 00000b06: SWAP1 00000b07: REVERT 00000b08: JUMPDEST 00000b09: DUP1 00000b0a: PUSH1 0x0c 00000b0c: DUP2 00000b0d: SWAP1 00000b0e: SSTORE 00000b0f: POP 00000b10: DUP1 00000b11: PUSH1 0x64 00000b13: SUB 00000b14: PUSH1 0x0d 00000b16: DUP2 00000b17: SWAP1 00000b18: SSTORE 00000b19: POP 00000b1a: POP 00000b1b: JUMP 00000b1c: JUMPDEST 00000b1d: PUSH1 0x00 00000b1f: SELFBALANCE 00000b20: SWAP1 00000b21: POP 00000b22: SWAP1 00000b23: JUMP 00000b24: JUMPDEST 00000b25: PUSH1 0x00 00000b27: DUP1 00000b28: PUSH1 0x00 00000b2a: DUP1 00000b2b: PUSH1 0x00 00000b2d: DUP6 00000b2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b43: AND 00000b44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b59: AND 00000b5a: DUP2 00000b5b: MSTORE 00000b5c: PUSH1 0x20 00000b5e: ADD 00000b5f: SWAP1 00000b60: DUP2 00000b61: MSTORE 00000b62: PUSH1 0x20 00000b64: ADD 00000b65: PUSH1 0x00 00000b67: KECCAK256 00000b68: PUSH1 0x03 00000b6a: ADD 00000b6b: PUSH1 0x01 00000b6d: SWAP1 00000b6e: SLOAD 00000b6f: SWAP1 00000b70: PUSH2 0x0100 00000b73: EXP 00000b74: SWAP1 00000b75: DIV 00000b76: PUSH1 0xff 00000b78: AND 00000b79: PUSH2 0x0b95 00000b7c: JUMPI 00000b7d: PUSH1 0x00 00000b7f: DUP1 00000b80: PUSH1 0x00 00000b82: DUP3 00000b83: SWAP3 00000b84: POP 00000b85: DUP2 00000b86: SWAP2 00000b87: POP 00000b88: DUP1 00000b89: SWAP1 00000b8a: POP 00000b8b: SWAP3 00000b8c: POP 00000b8d: SWAP3 00000b8e: POP 00000b8f: SWAP3 00000b90: POP 00000b91: PUSH2 0x0c62 00000b94: JUMP 00000b95: JUMPDEST 00000b96: PUSH1 0x00 00000b98: DUP1 00000b99: DUP6 00000b9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000baf: AND 00000bb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bc5: AND 00000bc6: DUP2 00000bc7: MSTORE 00000bc8: PUSH1 0x20 00000bca: ADD 00000bcb: SWAP1 00000bcc: DUP2 00000bcd: MSTORE 00000bce: PUSH1 0x20 00000bd0: ADD 00000bd1: PUSH1 0x00 00000bd3: KECCAK256 00000bd4: PUSH1 0x00 00000bd6: ADD 00000bd7: SLOAD 00000bd8: PUSH1 0x00 00000bda: DUP1 00000bdb: DUP7 00000bdc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bf1: AND 00000bf2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c07: AND 00000c08: DUP2 00000c09: MSTORE 00000c0a: PUSH1 0x20 00000c0c: ADD 00000c0d: SWAP1 00000c0e: DUP2 00000c0f: MSTORE 00000c10: PUSH1 0x20 00000c12: ADD 00000c13: PUSH1 0x00 00000c15: KECCAK256 00000c16: PUSH1 0x01 00000c18: ADD 00000c19: SLOAD 00000c1a: PUSH1 0x00 00000c1c: DUP1 00000c1d: DUP8 00000c1e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c33: AND 00000c34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c49: AND 00000c4a: DUP2 00000c4b: MSTORE 00000c4c: PUSH1 0x20 00000c4e: ADD 00000c4f: SWAP1 00000c50: DUP2 00000c51: MSTORE 00000c52: PUSH1 0x20 00000c54: ADD 00000c55: PUSH1 0x00 00000c57: KECCAK256 00000c58: PUSH1 0x02 00000c5a: ADD 00000c5b: SLOAD 00000c5c: SWAP3 00000c5d: POP 00000c5e: SWAP3 00000c5f: POP 00000c60: SWAP3 00000c61: POP 00000c62: JUMPDEST 00000c63: SWAP2 00000c64: SWAP4 00000c65: SWAP1 00000c66: SWAP3 00000c67: POP 00000c68: JUMP 00000c69: JUMPDEST 00000c6a: PUSH1 0x00 00000c6c: PUSH1 0x01 00000c6e: PUSH1 0x03 00000c70: DUP2 00000c71: GT 00000c72: ISZERO 00000c73: PUSH2 0x0c78 00000c76: JUMPI 00000c77: INVALID 00000c78: JUMPDEST 00000c79: PUSH1 0x14 00000c7b: DUP1 00000c7c: SWAP1 00000c7d: SLOAD 00000c7e: SWAP1 00000c7f: PUSH2 0x0100 00000c82: EXP 00000c83: SWAP1 00000c84: DIV 00000c85: PUSH1 0xff 00000c87: AND 00000c88: PUSH1 0x03 00000c8a: DUP2 00000c8b: GT 00000c8c: ISZERO 00000c8d: PUSH2 0x0c92 00000c90: JUMPI 00000c91: INVALID 00000c92: JUMPDEST 00000c93: EQ 00000c94: PUSH2 0x0d05 00000c97: JUMPI 00000c98: PUSH1 0x40 00000c9a: MLOAD 00000c9b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000cbc: DUP2 00000cbd: MSTORE 00000cbe: PUSH1 0x04 00000cc0: ADD 00000cc1: DUP1 00000cc2: DUP1 00000cc3: PUSH1 0x20 00000cc5: ADD 00000cc6: DUP3 00000cc7: DUP2 00000cc8: SUB 00000cc9: DUP3 00000cca: MSTORE 00000ccb: PUSH1 0x0d 00000ccd: DUP2 00000cce: MSTORE 00000ccf: PUSH1 0x20 00000cd1: ADD 00000cd2: DUP1 00000cd3: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00000cf4: DUP2 00000cf5: MSTORE 00000cf6: POP 00000cf7: PUSH1 0x20 00000cf9: ADD 00000cfa: SWAP2 00000cfb: POP 00000cfc: POP 00000cfd: PUSH1 0x40 00000cff: MLOAD 00000d00: DUP1 00000d01: SWAP2 00000d02: SUB 00000d03: SWAP1 00000d04: REVERT 00000d05: JUMPDEST 00000d06: PUSH1 0x00 00000d08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d1d: AND 00000d1e: PUSH1 0x0a 00000d20: PUSH1 0x00 00000d22: DUP5 00000d23: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d38: AND 00000d39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d4e: AND 00000d4f: DUP2 00000d50: MSTORE 00000d51: PUSH1 0x20 00000d53: ADD 00000d54: SWAP1 00000d55: DUP2 00000d56: MSTORE 00000d57: PUSH1 0x20 00000d59: ADD 00000d5a: PUSH1 0x00 00000d5c: KECCAK256 00000d5d: PUSH1 0x00 00000d5f: SWAP1 00000d60: SLOAD 00000d61: SWAP1 00000d62: PUSH2 0x0100 00000d65: EXP 00000d66: SWAP1 00000d67: DIV 00000d68: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d7d: AND 00000d7e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d93: AND 00000d94: EQ 00000d95: PUSH2 0x0dff 00000d98: JUMPI 00000d99: PUSH1 0x0a 00000d9b: PUSH1 0x00 00000d9d: DUP4 00000d9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000db3: AND 00000db4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000dc9: AND 00000dca: DUP2 00000dcb: MSTORE 00000dcc: PUSH1 0x20 00000dce: ADD 00000dcf: SWAP1 00000dd0: DUP2 00000dd1: MSTORE 00000dd2: PUSH1 0x20 00000dd4: ADD 00000dd5: PUSH1 0x00 00000dd7: KECCAK256 00000dd8: PUSH1 0x00 00000dda: SWAP1 00000ddb: SLOAD 00000ddc: SWAP1 00000ddd: PUSH2 0x0100 00000de0: EXP 00000de1: SWAP1 00000de2: DIV 00000de3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000df8: AND 00000df9: SWAP1 00000dfa: POP 00000dfb: PUSH2 0x0e04 00000dfe: JUMP 00000dff: JUMPDEST 00000e00: PUSH1 0x00 00000e02: SWAP1 00000e03: POP 00000e04: JUMPDEST 00000e05: SWAP2 00000e06: SWAP1 00000e07: POP 00000e08: JUMP 00000e09: JUMPDEST 00000e0a: PUSH1 0x00 00000e0c: CALLER 00000e0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e22: AND 00000e23: PUSH1 0x01 00000e25: PUSH1 0x00 00000e27: SWAP1 00000e28: SLOAD 00000e29: SWAP1 00000e2a: PUSH2 0x0100 00000e2d: EXP 00000e2e: SWAP1 00000e2f: DIV 00000e30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e45: AND 00000e46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e5b: AND 00000e5c: EQ 00000e5d: PUSH2 0x0ece 00000e60: JUMPI 00000e61: PUSH1 0x40 00000e63: MLOAD 00000e64: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e85: DUP2 00000e86: MSTORE 00000e87: PUSH1 0x04 00000e89: ADD 00000e8a: DUP1 00000e8b: DUP1 00000e8c: PUSH1 0x20 00000e8e: ADD 00000e8f: DUP3 00000e90: DUP2 00000e91: SUB 00000e92: DUP3 00000e93: MSTORE 00000e94: PUSH1 0x1a 00000e96: DUP2 00000e97: MSTORE 00000e98: PUSH1 0x20 00000e9a: ADD 00000e9b: DUP1 00000e9c: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00000ebd: DUP2 00000ebe: MSTORE 00000ebf: POP 00000ec0: PUSH1 0x20 00000ec2: ADD 00000ec3: SWAP2 00000ec4: POP 00000ec5: POP 00000ec6: PUSH1 0x40 00000ec8: MLOAD 00000ec9: DUP1 00000eca: SWAP2 00000ecb: SUB 00000ecc: SWAP1 00000ecd: REVERT 00000ece: JUMPDEST 00000ecf: PUSH1 0x0b 00000ed1: DUP1 00000ed2: SLOAD 00000ed3: SWAP1 00000ed4: POP 00000ed5: SWAP1 00000ed6: POP 00000ed7: SWAP1 00000ed8: JUMP 00000ed9: JUMPDEST 00000eda: CALLER 00000edb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ef0: AND 00000ef1: PUSH1 0x01 00000ef3: PUSH1 0x00 00000ef5: SWAP1 00000ef6: SLOAD 00000ef7: SWAP1 00000ef8: PUSH2 0x0100 00000efb: EXP 00000efc: SWAP1 00000efd: DIV 00000efe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f13: AND 00000f14: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f29: AND 00000f2a: EQ 00000f2b: PUSH2 0x0f9c 00000f2e: JUMPI 00000f2f: PUSH1 0x40 00000f31: MLOAD 00000f32: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f53: DUP2 00000f54: MSTORE 00000f55: PUSH1 0x04 00000f57: ADD 00000f58: DUP1 00000f59: DUP1 00000f5a: PUSH1 0x20 00000f5c: ADD 00000f5d: DUP3 00000f5e: DUP2 00000f5f: SUB 00000f60: DUP3 00000f61: MSTORE 00000f62: PUSH1 0x1a 00000f64: DUP2 00000f65: MSTORE 00000f66: PUSH1 0x20 00000f68: ADD 00000f69: DUP1 00000f6a: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00000f8b: DUP2 00000f8c: MSTORE 00000f8d: POP 00000f8e: PUSH1 0x20 00000f90: ADD 00000f91: SWAP2 00000f92: POP 00000f93: POP 00000f94: PUSH1 0x40 00000f96: MLOAD 00000f97: DUP1 00000f98: SWAP2 00000f99: SUB 00000f9a: SWAP1 00000f9b: REVERT 00000f9c: JUMPDEST 00000f9d: PUSH1 0x01 00000f9f: PUSH1 0x03 00000fa1: DUP2 00000fa2: GT 00000fa3: ISZERO 00000fa4: PUSH2 0x0fa9 00000fa7: JUMPI 00000fa8: INVALID 00000fa9: JUMPDEST 00000faa: PUSH1 0x14 00000fac: DUP1 00000fad: SWAP1 00000fae: SLOAD 00000faf: SWAP1 00000fb0: PUSH2 0x0100 00000fb3: EXP 00000fb4: SWAP1 00000fb5: DIV 00000fb6: PUSH1 0xff 00000fb8: AND 00000fb9: PUSH1 0x03 00000fbb: DUP2 00000fbc: GT 00000fbd: ISZERO 00000fbe: PUSH2 0x0fc3 00000fc1: JUMPI 00000fc2: INVALID 00000fc3: JUMPDEST 00000fc4: EQ 00000fc5: PUSH2 0x1036 00000fc8: JUMPI 00000fc9: PUSH1 0x40 00000fcb: MLOAD 00000fcc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000fed: DUP2 00000fee: MSTORE 00000fef: PUSH1 0x04 00000ff1: ADD 00000ff2: DUP1 00000ff3: DUP1 00000ff4: PUSH1 0x20 00000ff6: ADD 00000ff7: DUP3 00000ff8: DUP2 00000ff9: SUB 00000ffa: DUP3 00000ffb: MSTORE 00000ffc: PUSH1 0x0d 00000ffe: DUP2 00000fff: MSTORE 00001000: PUSH1 0x20 00001002: ADD 00001003: DUP1 00001004: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00001025: DUP2 00001026: MSTORE 00001027: POP 00001028: PUSH1 0x20 0000102a: ADD 0000102b: SWAP2 0000102c: POP 0000102d: POP 0000102e: PUSH1 0x40 00001030: MLOAD 00001031: DUP1 00001032: SWAP2 00001033: SUB 00001034: SWAP1 00001035: REVERT 00001036: JUMPDEST 00001037: PUSH1 0x03 00001039: DUP1 0000103a: DUP2 0000103b: GT 0000103c: ISZERO 0000103d: PUSH2 0x1042 00001040: JUMPI 00001041: INVALID 00001042: JUMPDEST 00001043: PUSH1 0x14 00001045: DUP1 00001046: SWAP1 00001047: SLOAD 00001048: SWAP1 00001049: PUSH2 0x0100 0000104c: EXP 0000104d: SWAP1 0000104e: DIV 0000104f: PUSH1 0xff 00001051: AND 00001052: PUSH1 0x03 00001054: DUP2 00001055: GT 00001056: ISZERO 00001057: PUSH2 0x105c 0000105a: JUMPI 0000105b: INVALID 0000105c: JUMPDEST 0000105d: EQ 0000105e: PUSH2 0x10cf 00001061: JUMPI 00001062: PUSH1 0x40 00001064: MLOAD 00001065: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001086: DUP2 00001087: MSTORE 00001088: PUSH1 0x04 0000108a: ADD 0000108b: DUP1 0000108c: DUP1 0000108d: PUSH1 0x20 0000108f: ADD 00001090: DUP3 00001091: DUP2 00001092: SUB 00001093: DUP3 00001094: MSTORE 00001095: PUSH1 0x0d 00001097: DUP2 00001098: MSTORE 00001099: PUSH1 0x20 0000109b: ADD 0000109c: DUP1 0000109d: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 000010be: DUP2 000010bf: MSTORE 000010c0: POP 000010c1: PUSH1 0x20 000010c3: ADD 000010c4: SWAP2 000010c5: POP 000010c6: POP 000010c7: PUSH1 0x40 000010c9: MLOAD 000010ca: DUP1 000010cb: SWAP2 000010cc: SUB 000010cd: SWAP1 000010ce: REVERT 000010cf: JUMPDEST 000010d0: PUSH1 0x01 000010d2: PUSH1 0x14 000010d4: DUP1 000010d5: PUSH2 0x0100 000010d8: EXP 000010d9: DUP2 000010da: SLOAD 000010db: DUP2 000010dc: PUSH1 0xff 000010de: MUL 000010df: NOT 000010e0: AND 000010e1: SWAP1 000010e2: DUP4 000010e3: PUSH1 0x03 000010e5: DUP2 000010e6: GT 000010e7: ISZERO 000010e8: PUSH2 0x10ed 000010eb: JUMPI 000010ec: INVALID 000010ed: JUMPDEST 000010ee: MUL 000010ef: OR 000010f0: SWAP1 000010f1: SSTORE 000010f2: POP 000010f3: PUSH32 0xdfaf3bee2f7ce6311c89d47da927ee3d803804022e3e72d07a1f51368edf81d4 00001114: CALLER 00001115: PUSH1 0x40 00001117: MLOAD 00001118: DUP1 00001119: DUP3 0000111a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000112f: AND 00001130: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001145: AND 00001146: DUP2 00001147: MSTORE 00001148: PUSH1 0x20 0000114a: ADD 0000114b: SWAP2 0000114c: POP 0000114d: POP 0000114e: PUSH1 0x40 00001150: MLOAD 00001151: DUP1 00001152: SWAP2 00001153: SUB 00001154: SWAP1 00001155: LOG1 00001156: JUMP 00001157: JUMPDEST 00001158: PUSH1 0x00 0000115a: PUSH1 0x01 0000115c: PUSH1 0x03 0000115e: DUP2 0000115f: GT 00001160: ISZERO 00001161: PUSH2 0x1166 00001164: JUMPI 00001165: INVALID 00001166: JUMPDEST 00001167: PUSH1 0x14 00001169: DUP1 0000116a: SWAP1 0000116b: SLOAD 0000116c: SWAP1 0000116d: PUSH2 0x0100 00001170: EXP 00001171: SWAP1 00001172: DIV 00001173: PUSH1 0xff 00001175: AND 00001176: PUSH1 0x03 00001178: DUP2 00001179: GT 0000117a: ISZERO 0000117b: PUSH2 0x1180 0000117e: JUMPI 0000117f: INVALID 00001180: JUMPDEST 00001181: EQ 00001182: PUSH2 0x11f3 00001185: JUMPI 00001186: PUSH1 0x40 00001188: MLOAD 00001189: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000011aa: DUP2 000011ab: MSTORE 000011ac: PUSH1 0x04 000011ae: ADD 000011af: DUP1 000011b0: DUP1 000011b1: PUSH1 0x20 000011b3: ADD 000011b4: DUP3 000011b5: DUP2 000011b6: SUB 000011b7: DUP3 000011b8: MSTORE 000011b9: PUSH1 0x0d 000011bb: DUP2 000011bc: MSTORE 000011bd: PUSH1 0x20 000011bf: ADD 000011c0: DUP1 000011c1: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 000011e2: DUP2 000011e3: MSTORE 000011e4: POP 000011e5: PUSH1 0x20 000011e7: ADD 000011e8: SWAP2 000011e9: POP 000011ea: POP 000011eb: PUSH1 0x40 000011ed: MLOAD 000011ee: DUP1 000011ef: SWAP2 000011f0: SUB 000011f1: SWAP1 000011f2: REVERT 000011f3: JUMPDEST 000011f4: CALLER 000011f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000120a: AND 0000120b: PUSH1 0x04 0000120d: PUSH1 0x00 0000120f: SWAP1 00001210: SLOAD 00001211: SWAP1 00001212: PUSH2 0x0100 00001215: EXP 00001216: SWAP1 00001217: DIV 00001218: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000122d: AND 0000122e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001243: AND 00001244: EQ 00001245: ISZERO 00001246: DUP1 00001247: ISZERO 00001248: PUSH2 0x129f 0000124b: JUMPI 0000124c: POP 0000124d: CALLER 0000124e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001263: AND 00001264: PUSH1 0x02 00001266: PUSH1 0x00 00001268: SWAP1 00001269: SLOAD 0000126a: SWAP1 0000126b: PUSH2 0x0100 0000126e: EXP 0000126f: SWAP1 00001270: DIV 00001271: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001286: AND 00001287: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000129c: AND 0000129d: EQ 0000129e: ISZERO 0000129f: JUMPDEST 000012a0: PUSH2 0x1311 000012a3: JUMPI 000012a4: PUSH1 0x40 000012a6: MLOAD 000012a7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000012c8: DUP2 000012c9: MSTORE 000012ca: PUSH1 0x04 000012cc: ADD 000012cd: DUP1 000012ce: DUP1 000012cf: PUSH1 0x20 000012d1: ADD 000012d2: DUP3 000012d3: DUP2 000012d4: SUB 000012d5: DUP3 000012d6: MSTORE 000012d7: PUSH1 0x1a 000012d9: DUP2 000012da: MSTORE 000012db: PUSH1 0x20 000012dd: ADD 000012de: DUP1 000012df: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00001300: DUP2 00001301: MSTORE 00001302: POP 00001303: PUSH1 0x20 00001305: ADD 00001306: SWAP2 00001307: POP 00001308: POP 00001309: PUSH1 0x40 0000130b: MLOAD 0000130c: DUP1 0000130d: SWAP2 0000130e: SUB 0000130f: SWAP1 00001310: REVERT 00001311: JUMPDEST 00001312: PUSH1 0x00 00001314: DUP3 00001315: GT 00001316: PUSH2 0x1387 00001319: JUMPI 0000131a: PUSH1 0x40 0000131c: MLOAD 0000131d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000133e: DUP2 0000133f: MSTORE 00001340: PUSH1 0x04 00001342: ADD 00001343: DUP1 00001344: DUP1 00001345: PUSH1 0x20 00001347: ADD 00001348: DUP3 00001349: DUP2 0000134a: SUB 0000134b: DUP3 0000134c: MSTORE 0000134d: PUSH1 0x0c 0000134f: DUP2 00001350: MSTORE 00001351: PUSH1 0x20 00001353: ADD 00001354: DUP1 00001355: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 00001376: DUP2 00001377: MSTORE 00001378: POP 00001379: PUSH1 0x20 0000137b: ADD 0000137c: SWAP2 0000137d: POP 0000137e: POP 0000137f: PUSH1 0x40 00001381: MLOAD 00001382: DUP1 00001383: SWAP2 00001384: SUB 00001385: SWAP1 00001386: REVERT 00001387: JUMPDEST 00001388: PUSH1 0x00 0000138a: DUP1 0000138b: CALLER 0000138c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013a1: AND 000013a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013b7: AND 000013b8: DUP2 000013b9: MSTORE 000013ba: PUSH1 0x20 000013bc: ADD 000013bd: SWAP1 000013be: DUP2 000013bf: MSTORE 000013c0: PUSH1 0x20 000013c2: ADD 000013c3: PUSH1 0x00 000013c5: KECCAK256 000013c6: PUSH1 0x03 000013c8: ADD 000013c9: PUSH1 0x01 000013cb: SWAP1 000013cc: SLOAD 000013cd: SWAP1 000013ce: PUSH2 0x0100 000013d1: EXP 000013d2: SWAP1 000013d3: DIV 000013d4: PUSH1 0xff 000013d6: AND 000013d7: PUSH2 0x1448 000013da: JUMPI 000013db: PUSH1 0x40 000013dd: MLOAD 000013de: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000013ff: DUP2 00001400: MSTORE 00001401: PUSH1 0x04 00001403: ADD 00001404: DUP1 00001405: DUP1 00001406: PUSH1 0x20 00001408: ADD 00001409: DUP3 0000140a: DUP2 0000140b: SUB 0000140c: DUP3 0000140d: MSTORE 0000140e: PUSH1 0x0f 00001410: DUP2 00001411: MSTORE 00001412: PUSH1 0x20 00001414: ADD 00001415: DUP1 00001416: PUSH32 0x696e7661696c64206163636f756e740000000000000000000000000000000000 00001437: DUP2 00001438: MSTORE 00001439: POP 0000143a: PUSH1 0x20 0000143c: ADD 0000143d: SWAP2 0000143e: POP 0000143f: POP 00001440: PUSH1 0x40 00001442: MLOAD 00001443: DUP1 00001444: SWAP2 00001445: SUB 00001446: SWAP1 00001447: REVERT 00001448: JUMPDEST 00001449: PUSH1 0x00 0000144b: PUSH1 0x14 0000144d: PUSH1 0x00 0000144f: SWAP1 00001450: SLOAD 00001451: SWAP1 00001452: PUSH2 0x0100 00001455: EXP 00001456: SWAP1 00001457: DIV 00001458: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000146d: AND 0000146e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001483: AND 00001484: PUSH4 0x70a08231 00001489: ADDRESS 0000148a: PUSH1 0x40 0000148c: MLOAD 0000148d: DUP3 0000148e: PUSH4 0xffffffff 00001493: AND 00001494: PUSH1 0xe0 00001496: SHL 00001497: DUP2 00001498: MSTORE 00001499: PUSH1 0x04 0000149b: ADD 0000149c: DUP1 0000149d: DUP3 0000149e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014b3: AND 000014b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014c9: AND 000014ca: DUP2 000014cb: MSTORE 000014cc: PUSH1 0x20 000014ce: ADD 000014cf: SWAP2 000014d0: POP 000014d1: POP 000014d2: PUSH1 0x20 000014d4: PUSH1 0x40 000014d6: MLOAD 000014d7: DUP1 000014d8: DUP4 000014d9: SUB 000014da: DUP2 000014db: DUP7 000014dc: DUP1 000014dd: EXTCODESIZE 000014de: ISZERO 000014df: DUP1 000014e0: ISZERO 000014e1: PUSH2 0x14e9 000014e4: JUMPI 000014e5: PUSH1 0x00 000014e7: DUP1 000014e8: REVERT 000014e9: JUMPDEST 000014ea: POP 000014eb: GAS 000014ec: STATICCALL 000014ed: ISZERO 000014ee: DUP1 000014ef: ISZERO 000014f0: PUSH2 0x14fd 000014f3: JUMPI 000014f4: RETURNDATASIZE 000014f5: PUSH1 0x00 000014f7: DUP1 000014f8: RETURNDATACOPY 000014f9: RETURNDATASIZE 000014fa: PUSH1 0x00 000014fc: REVERT 000014fd: JUMPDEST 000014fe: POP 000014ff: POP 00001500: POP 00001501: POP 00001502: PUSH1 0x40 00001504: MLOAD 00001505: RETURNDATASIZE 00001506: PUSH1 0x20 00001508: DUP2 00001509: LT 0000150a: ISZERO 0000150b: PUSH2 0x1513 0000150e: JUMPI 0000150f: PUSH1 0x00 00001511: DUP1 00001512: REVERT 00001513: JUMPDEST 00001514: DUP2 00001515: ADD 00001516: SWAP1 00001517: DUP1 00001518: DUP1 00001519: MLOAD 0000151a: SWAP1 0000151b: PUSH1 0x20 0000151d: ADD 0000151e: SWAP1 0000151f: SWAP3 00001520: SWAP2 00001521: SWAP1 00001522: POP 00001523: POP 00001524: POP 00001525: SWAP1 00001526: POP 00001527: DUP3 00001528: DUP2 00001529: LT 0000152a: ISZERO 0000152b: PUSH2 0x159c 0000152e: JUMPI 0000152f: PUSH1 0x40 00001531: MLOAD 00001532: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001553: DUP2 00001554: MSTORE 00001555: PUSH1 0x04 00001557: ADD 00001558: DUP1 00001559: DUP1 0000155a: PUSH1 0x20 0000155c: ADD 0000155d: DUP3 0000155e: DUP2 0000155f: SUB 00001560: DUP3 00001561: MSTORE 00001562: PUSH1 0x1d 00001564: DUP2 00001565: MSTORE 00001566: PUSH1 0x20 00001568: ADD 00001569: DUP1 0000156a: PUSH32 0x696e73756666696369656e74207a647320666f72207769746864726177000000 0000158b: DUP2 0000158c: MSTORE 0000158d: POP 0000158e: PUSH1 0x20 00001590: ADD 00001591: SWAP2 00001592: POP 00001593: POP 00001594: PUSH1 0x40 00001596: MLOAD 00001597: DUP1 00001598: SWAP2 00001599: SUB 0000159a: SWAP1 0000159b: REVERT 0000159c: JUMPDEST 0000159d: PUSH2 0x15a8 000015a0: CALLER 000015a1: PUSH1 0x00 000015a3: DUP1 000015a4: PUSH2 0x52ca 000015a7: JUMP 000015a8: JUMPDEST 000015a9: DUP3 000015aa: PUSH1 0x00 000015ac: DUP1 000015ad: CALLER 000015ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015c3: AND 000015c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015d9: AND 000015da: DUP2 000015db: MSTORE 000015dc: PUSH1 0x20 000015de: ADD 000015df: SWAP1 000015e0: DUP2 000015e1: MSTORE 000015e2: PUSH1 0x20 000015e4: ADD 000015e5: PUSH1 0x00 000015e7: KECCAK256 000015e8: PUSH1 0x00 000015ea: ADD 000015eb: SLOAD 000015ec: LT 000015ed: ISZERO 000015ee: PUSH2 0x165f 000015f1: JUMPI 000015f2: PUSH1 0x40 000015f4: MLOAD 000015f5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001616: DUP2 00001617: MSTORE 00001618: PUSH1 0x04 0000161a: ADD 0000161b: DUP1 0000161c: DUP1 0000161d: PUSH1 0x20 0000161f: ADD 00001620: DUP3 00001621: DUP2 00001622: SUB 00001623: DUP3 00001624: MSTORE 00001625: PUSH1 0x1c 00001627: DUP2 00001628: MSTORE 00001629: PUSH1 0x20 0000162b: ADD 0000162c: DUP1 0000162d: PUSH32 0x696e73756666696369656e74207a647320666f72206163636f756e7400000000 0000164e: DUP2 0000164f: MSTORE 00001650: POP 00001651: PUSH1 0x20 00001653: ADD 00001654: SWAP2 00001655: POP 00001656: POP 00001657: PUSH1 0x40 00001659: MLOAD 0000165a: DUP1 0000165b: SWAP2 0000165c: SUB 0000165d: SWAP1 0000165e: REVERT 0000165f: JUMPDEST 00001660: PUSH2 0x16b3 00001663: DUP4 00001664: PUSH1 0x00 00001666: DUP1 00001667: CALLER 00001668: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000167d: AND 0000167e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001693: AND 00001694: DUP2 00001695: MSTORE 00001696: PUSH1 0x20 00001698: ADD 00001699: SWAP1 0000169a: DUP2 0000169b: MSTORE 0000169c: PUSH1 0x20 0000169e: ADD 0000169f: PUSH1 0x00 000016a1: KECCAK256 000016a2: PUSH1 0x00 000016a4: ADD 000016a5: SLOAD 000016a6: PUSH2 0x5373 000016a9: SWAP1 000016aa: SWAP2 000016ab: SWAP1 000016ac: PUSH4 0xffffffff 000016b1: AND 000016b2: JUMP 000016b3: JUMPDEST 000016b4: PUSH1 0x00 000016b6: DUP1 000016b7: CALLER 000016b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016cd: AND 000016ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016e3: AND 000016e4: DUP2 000016e5: MSTORE 000016e6: PUSH1 0x20 000016e8: ADD 000016e9: SWAP1 000016ea: DUP2 000016eb: MSTORE 000016ec: PUSH1 0x20 000016ee: ADD 000016ef: PUSH1 0x00 000016f1: KECCAK256 000016f2: PUSH1 0x00 000016f4: ADD 000016f5: DUP2 000016f6: SWAP1 000016f7: SSTORE 000016f8: POP 000016f9: PUSH2 0x170d 000016fc: DUP4 000016fd: PUSH1 0x07 000016ff: SLOAD 00001700: PUSH2 0x5373 00001703: SWAP1 00001704: SWAP2 00001705: SWAP1 00001706: PUSH4 0xffffffff 0000170b: AND 0000170c: JUMP 0000170d: JUMPDEST 0000170e: PUSH1 0x07 00001710: DUP2 00001711: SWAP1 00001712: SSTORE 00001713: POP 00001714: PUSH1 0x14 00001716: PUSH1 0x00 00001718: SWAP1 00001719: SLOAD 0000171a: SWAP1 0000171b: PUSH2 0x0100 0000171e: EXP 0000171f: SWAP1 00001720: DIV 00001721: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001736: AND 00001737: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000174c: AND 0000174d: PUSH4 0xa9059cbb 00001752: CALLER 00001753: DUP6 00001754: PUSH1 0x40 00001756: MLOAD 00001757: DUP4 00001758: PUSH4 0xffffffff 0000175d: AND 0000175e: PUSH1 0xe0 00001760: SHL 00001761: DUP2 00001762: MSTORE 00001763: PUSH1 0x04 00001765: ADD 00001766: DUP1 00001767: DUP4 00001768: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000177d: AND 0000177e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001793: AND 00001794: DUP2 00001795: MSTORE 00001796: PUSH1 0x20 00001798: ADD 00001799: DUP3 0000179a: DUP2 0000179b: MSTORE 0000179c: PUSH1 0x20 0000179e: ADD 0000179f: SWAP3 000017a0: POP 000017a1: POP 000017a2: POP 000017a3: PUSH1 0x20 000017a5: PUSH1 0x40 000017a7: MLOAD 000017a8: DUP1 000017a9: DUP4 000017aa: SUB 000017ab: DUP2 000017ac: PUSH1 0x00 000017ae: DUP8 000017af: DUP1 000017b0: EXTCODESIZE 000017b1: ISZERO 000017b2: DUP1 000017b3: ISZERO 000017b4: PUSH2 0x17bc 000017b7: JUMPI 000017b8: PUSH1 0x00 000017ba: DUP1 000017bb: REVERT 000017bc: JUMPDEST 000017bd: POP 000017be: GAS 000017bf: CALL 000017c0: ISZERO 000017c1: DUP1 000017c2: ISZERO 000017c3: PUSH2 0x17d0 000017c6: JUMPI 000017c7: RETURNDATASIZE 000017c8: PUSH1 0x00 000017ca: DUP1 000017cb: RETURNDATACOPY 000017cc: RETURNDATASIZE 000017cd: PUSH1 0x00 000017cf: REVERT 000017d0: JUMPDEST 000017d1: POP 000017d2: POP 000017d3: POP 000017d4: POP 000017d5: PUSH1 0x40 000017d7: MLOAD 000017d8: RETURNDATASIZE 000017d9: PUSH1 0x20 000017db: DUP2 000017dc: LT 000017dd: ISZERO 000017de: PUSH2 0x17e6 000017e1: JUMPI 000017e2: PUSH1 0x00 000017e4: DUP1 000017e5: REVERT 000017e6: JUMPDEST 000017e7: DUP2 000017e8: ADD 000017e9: SWAP1 000017ea: DUP1 000017eb: DUP1 000017ec: MLOAD 000017ed: SWAP1 000017ee: PUSH1 0x20 000017f0: ADD 000017f1: SWAP1 000017f2: SWAP3 000017f3: SWAP2 000017f4: SWAP1 000017f5: POP 000017f6: POP 000017f7: POP 000017f8: POP 000017f9: PUSH32 0xc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f0377 0000181a: CALLER 0000181b: PUSH1 0x00 0000181d: DUP1 0000181e: CALLER 0000181f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001834: AND 00001835: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000184a: AND 0000184b: DUP2 0000184c: MSTORE 0000184d: PUSH1 0x20 0000184f: ADD 00001850: SWAP1 00001851: DUP2 00001852: MSTORE 00001853: PUSH1 0x20 00001855: ADD 00001856: PUSH1 0x00 00001858: KECCAK256 00001859: PUSH1 0x00 0000185b: ADD 0000185c: SLOAD 0000185d: PUSH1 0x40 0000185f: MLOAD 00001860: DUP1 00001861: DUP4 00001862: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001877: AND 00001878: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000188d: AND 0000188e: DUP2 0000188f: MSTORE 00001890: PUSH1 0x20 00001892: ADD 00001893: DUP3 00001894: DUP2 00001895: MSTORE 00001896: PUSH1 0x20 00001898: ADD 00001899: SWAP3 0000189a: POP 0000189b: POP 0000189c: POP 0000189d: PUSH1 0x40 0000189f: MLOAD 000018a0: DUP1 000018a1: SWAP2 000018a2: SUB 000018a3: SWAP1 000018a4: LOG1 000018a5: PUSH1 0x00 000018a7: DUP1 000018a8: CALLER 000018a9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018be: AND 000018bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018d4: AND 000018d5: DUP2 000018d6: MSTORE 000018d7: PUSH1 0x20 000018d9: ADD 000018da: SWAP1 000018db: DUP2 000018dc: MSTORE 000018dd: PUSH1 0x20 000018df: ADD 000018e0: PUSH1 0x00 000018e2: KECCAK256 000018e3: PUSH1 0x00 000018e5: ADD 000018e6: SLOAD 000018e7: SWAP2 000018e8: POP 000018e9: POP 000018ea: SWAP2 000018eb: SWAP1 000018ec: POP 000018ed: JUMP 000018ee: JUMPDEST 000018ef: PUSH1 0x00 000018f1: DUP1 000018f2: PUSH1 0x00 000018f4: CALLER 000018f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000190a: AND 0000190b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001920: AND 00001921: DUP2 00001922: MSTORE 00001923: PUSH1 0x20 00001925: ADD 00001926: SWAP1 00001927: DUP2 00001928: MSTORE 00001929: PUSH1 0x20 0000192b: ADD 0000192c: PUSH1 0x00 0000192e: KECCAK256 0000192f: PUSH1 0x03 00001931: ADD 00001932: PUSH1 0x01 00001934: SWAP1 00001935: SLOAD 00001936: SWAP1 00001937: PUSH2 0x0100 0000193a: EXP 0000193b: SWAP1 0000193c: DIV 0000193d: PUSH1 0xff 0000193f: AND 00001940: PUSH2 0x194c 00001943: JUMPI 00001944: PUSH1 0x00 00001946: SWAP1 00001947: POP 00001948: PUSH2 0x1991 0000194b: JUMP 0000194c: JUMPDEST 0000194d: PUSH1 0x00 0000194f: DUP1 00001950: CALLER 00001951: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001966: AND 00001967: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000197c: AND 0000197d: DUP2 0000197e: MSTORE 0000197f: PUSH1 0x20 00001981: ADD 00001982: SWAP1 00001983: DUP2 00001984: MSTORE 00001985: PUSH1 0x20 00001987: ADD 00001988: PUSH1 0x00 0000198a: KECCAK256 0000198b: PUSH1 0x01 0000198d: ADD 0000198e: SLOAD 0000198f: SWAP1 00001990: POP 00001991: JUMPDEST 00001992: SWAP1 00001993: JUMP 00001994: JUMPDEST 00001995: PUSH1 0x01 00001997: PUSH1 0x03 00001999: DUP2 0000199a: GT 0000199b: ISZERO 0000199c: PUSH2 0x19a1 0000199f: JUMPI 000019a0: INVALID 000019a1: JUMPDEST 000019a2: PUSH1 0x14 000019a4: DUP1 000019a5: SWAP1 000019a6: SLOAD 000019a7: SWAP1 000019a8: PUSH2 0x0100 000019ab: EXP 000019ac: SWAP1 000019ad: DIV 000019ae: PUSH1 0xff 000019b0: AND 000019b1: PUSH1 0x03 000019b3: DUP2 000019b4: GT 000019b5: ISZERO 000019b6: PUSH2 0x19bb 000019b9: JUMPI 000019ba: INVALID 000019bb: JUMPDEST 000019bc: EQ 000019bd: PUSH2 0x1a2e 000019c0: JUMPI 000019c1: PUSH1 0x40 000019c3: MLOAD 000019c4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000019e5: DUP2 000019e6: MSTORE 000019e7: PUSH1 0x04 000019e9: ADD 000019ea: DUP1 000019eb: DUP1 000019ec: PUSH1 0x20 000019ee: ADD 000019ef: DUP3 000019f0: DUP2 000019f1: SUB 000019f2: DUP3 000019f3: MSTORE 000019f4: PUSH1 0x0d 000019f6: DUP2 000019f7: MSTORE 000019f8: PUSH1 0x20 000019fa: ADD 000019fb: DUP1 000019fc: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00001a1d: DUP2 00001a1e: MSTORE 00001a1f: POP 00001a20: PUSH1 0x20 00001a22: ADD 00001a23: SWAP2 00001a24: POP 00001a25: POP 00001a26: PUSH1 0x40 00001a28: MLOAD 00001a29: DUP1 00001a2a: SWAP2 00001a2b: SUB 00001a2c: SWAP1 00001a2d: REVERT 00001a2e: JUMPDEST 00001a2f: CALLER 00001a30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a45: AND 00001a46: PUSH1 0x04 00001a48: PUSH1 0x00 00001a4a: SWAP1 00001a4b: SLOAD 00001a4c: SWAP1 00001a4d: PUSH2 0x0100 00001a50: EXP 00001a51: SWAP1 00001a52: DIV 00001a53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a68: AND 00001a69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a7e: AND 00001a7f: EQ 00001a80: ISZERO 00001a81: DUP1 00001a82: ISZERO 00001a83: PUSH2 0x1ada 00001a86: JUMPI 00001a87: POP 00001a88: CALLER 00001a89: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a9e: AND 00001a9f: PUSH1 0x02 00001aa1: PUSH1 0x00 00001aa3: SWAP1 00001aa4: SLOAD 00001aa5: SWAP1 00001aa6: PUSH2 0x0100 00001aa9: EXP 00001aaa: SWAP1 00001aab: DIV 00001aac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ac1: AND 00001ac2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ad7: AND 00001ad8: EQ 00001ad9: ISZERO 00001ada: JUMPDEST 00001adb: PUSH2 0x1b4c 00001ade: JUMPI 00001adf: PUSH1 0x40 00001ae1: MLOAD 00001ae2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001b03: DUP2 00001b04: MSTORE 00001b05: PUSH1 0x04 00001b07: ADD 00001b08: DUP1 00001b09: DUP1 00001b0a: PUSH1 0x20 00001b0c: ADD 00001b0d: DUP3 00001b0e: DUP2 00001b0f: SUB 00001b10: DUP3 00001b11: MSTORE 00001b12: PUSH1 0x1a 00001b14: DUP2 00001b15: MSTORE 00001b16: PUSH1 0x20 00001b18: ADD 00001b19: DUP1 00001b1a: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00001b3b: DUP2 00001b3c: MSTORE 00001b3d: POP 00001b3e: PUSH1 0x20 00001b40: ADD 00001b41: SWAP2 00001b42: POP 00001b43: POP 00001b44: PUSH1 0x40 00001b46: MLOAD 00001b47: DUP1 00001b48: SWAP2 00001b49: SUB 00001b4a: SWAP1 00001b4b: REVERT 00001b4c: JUMPDEST 00001b4d: PUSH1 0x00 00001b4f: DUP1 00001b50: DUP4 00001b51: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b66: AND 00001b67: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b7c: AND 00001b7d: DUP2 00001b7e: MSTORE 00001b7f: PUSH1 0x20 00001b81: ADD 00001b82: SWAP1 00001b83: DUP2 00001b84: MSTORE 00001b85: PUSH1 0x20 00001b87: ADD 00001b88: PUSH1 0x00 00001b8a: KECCAK256 00001b8b: PUSH1 0x03 00001b8d: ADD 00001b8e: PUSH1 0x01 00001b90: SWAP1 00001b91: SLOAD 00001b92: SWAP1 00001b93: PUSH2 0x0100 00001b96: EXP 00001b97: SWAP1 00001b98: DIV 00001b99: PUSH1 0xff 00001b9b: AND 00001b9c: PUSH2 0x1c0d 00001b9f: JUMPI 00001ba0: PUSH1 0x40 00001ba2: MLOAD 00001ba3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001bc4: DUP2 00001bc5: MSTORE 00001bc6: PUSH1 0x04 00001bc8: ADD 00001bc9: DUP1 00001bca: DUP1 00001bcb: PUSH1 0x20 00001bcd: ADD 00001bce: DUP3 00001bcf: DUP2 00001bd0: SUB 00001bd1: DUP3 00001bd2: MSTORE 00001bd3: PUSH1 0x0f 00001bd5: DUP2 00001bd6: MSTORE 00001bd7: PUSH1 0x20 00001bd9: ADD 00001bda: DUP1 00001bdb: PUSH32 0x696e7661696c64206163636f756e740000000000000000000000000000000000 00001bfc: DUP2 00001bfd: MSTORE 00001bfe: POP 00001bff: PUSH1 0x20 00001c01: ADD 00001c02: SWAP2 00001c03: POP 00001c04: POP 00001c05: PUSH1 0x40 00001c07: MLOAD 00001c08: DUP1 00001c09: SWAP2 00001c0a: SUB 00001c0b: SWAP1 00001c0c: REVERT 00001c0d: JUMPDEST 00001c0e: PUSH1 0x00 00001c10: DUP2 00001c11: GT 00001c12: PUSH2 0x1c83 00001c15: JUMPI 00001c16: PUSH1 0x40 00001c18: MLOAD 00001c19: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001c3a: DUP2 00001c3b: MSTORE 00001c3c: PUSH1 0x04 00001c3e: ADD 00001c3f: DUP1 00001c40: DUP1 00001c41: PUSH1 0x20 00001c43: ADD 00001c44: DUP3 00001c45: DUP2 00001c46: SUB 00001c47: DUP3 00001c48: MSTORE 00001c49: PUSH1 0x0a 00001c4b: DUP2 00001c4c: MSTORE 00001c4d: PUSH1 0x20 00001c4f: ADD 00001c50: DUP1 00001c51: PUSH32 0x726f756e64206973203000000000000000000000000000000000000000000000 00001c72: DUP2 00001c73: MSTORE 00001c74: POP 00001c75: PUSH1 0x20 00001c77: ADD 00001c78: SWAP2 00001c79: POP 00001c7a: POP 00001c7b: PUSH1 0x40 00001c7d: MLOAD 00001c7e: DUP1 00001c7f: SWAP2 00001c80: SUB 00001c81: SWAP1 00001c82: REVERT 00001c83: JUMPDEST 00001c84: PUSH2 0x1c8f 00001c87: DUP3 00001c88: PUSH1 0x01 00001c8a: DUP4 00001c8b: PUSH2 0x52ca 00001c8e: JUMP 00001c8f: JUMPDEST 00001c90: POP 00001c91: POP 00001c92: JUMP 00001c93: JUMPDEST 00001c94: PUSH1 0x00 00001c96: PUSH1 0x01 00001c98: PUSH1 0x03 00001c9a: DUP2 00001c9b: GT 00001c9c: ISZERO 00001c9d: PUSH2 0x1ca2 00001ca0: JUMPI 00001ca1: INVALID 00001ca2: JUMPDEST 00001ca3: PUSH1 0x14 00001ca5: DUP1 00001ca6: SWAP1 00001ca7: SLOAD 00001ca8: SWAP1 00001ca9: PUSH2 0x0100 00001cac: EXP 00001cad: SWAP1 00001cae: DIV 00001caf: PUSH1 0xff 00001cb1: AND 00001cb2: PUSH1 0x03 00001cb4: DUP2 00001cb5: GT 00001cb6: ISZERO 00001cb7: PUSH2 0x1cbc 00001cba: JUMPI 00001cbb: INVALID 00001cbc: JUMPDEST 00001cbd: EQ 00001cbe: PUSH2 0x1d2f 00001cc1: JUMPI 00001cc2: PUSH1 0x40 00001cc4: MLOAD 00001cc5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001ce6: DUP2 00001ce7: MSTORE 00001ce8: PUSH1 0x04 00001cea: ADD 00001ceb: DUP1 00001cec: DUP1 00001ced: PUSH1 0x20 00001cef: ADD 00001cf0: DUP3 00001cf1: DUP2 00001cf2: SUB 00001cf3: DUP3 00001cf4: MSTORE 00001cf5: PUSH1 0x0d 00001cf7: DUP2 00001cf8: MSTORE 00001cf9: PUSH1 0x20 00001cfb: ADD 00001cfc: DUP1 00001cfd: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00001d1e: DUP2 00001d1f: MSTORE 00001d20: POP 00001d21: PUSH1 0x20 00001d23: ADD 00001d24: SWAP2 00001d25: POP 00001d26: POP 00001d27: PUSH1 0x40 00001d29: MLOAD 00001d2a: DUP1 00001d2b: SWAP2 00001d2c: SUB 00001d2d: SWAP1 00001d2e: REVERT 00001d2f: JUMPDEST 00001d30: CALLER 00001d31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d46: AND 00001d47: PUSH1 0x04 00001d49: PUSH1 0x00 00001d4b: SWAP1 00001d4c: SLOAD 00001d4d: SWAP1 00001d4e: PUSH2 0x0100 00001d51: EXP 00001d52: SWAP1 00001d53: DIV 00001d54: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d69: AND 00001d6a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d7f: AND 00001d80: EQ 00001d81: ISZERO 00001d82: DUP1 00001d83: ISZERO 00001d84: PUSH2 0x1ddb 00001d87: JUMPI 00001d88: POP 00001d89: CALLER 00001d8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d9f: AND 00001da0: PUSH1 0x02 00001da2: PUSH1 0x00 00001da4: SWAP1 00001da5: SLOAD 00001da6: SWAP1 00001da7: PUSH2 0x0100 00001daa: EXP 00001dab: SWAP1 00001dac: DIV 00001dad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001dc2: AND 00001dc3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001dd8: AND 00001dd9: EQ 00001dda: ISZERO 00001ddb: JUMPDEST 00001ddc: PUSH2 0x1e4d 00001ddf: JUMPI 00001de0: PUSH1 0x40 00001de2: MLOAD 00001de3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001e04: DUP2 00001e05: MSTORE 00001e06: PUSH1 0x04 00001e08: ADD 00001e09: DUP1 00001e0a: DUP1 00001e0b: PUSH1 0x20 00001e0d: ADD 00001e0e: DUP3 00001e0f: DUP2 00001e10: SUB 00001e11: DUP3 00001e12: MSTORE 00001e13: PUSH1 0x1a 00001e15: DUP2 00001e16: MSTORE 00001e17: PUSH1 0x20 00001e19: ADD 00001e1a: DUP1 00001e1b: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00001e3c: DUP2 00001e3d: MSTORE 00001e3e: POP 00001e3f: PUSH1 0x20 00001e41: ADD 00001e42: SWAP2 00001e43: POP 00001e44: POP 00001e45: PUSH1 0x40 00001e47: MLOAD 00001e48: DUP1 00001e49: SWAP2 00001e4a: SUB 00001e4b: SWAP1 00001e4c: REVERT 00001e4d: JUMPDEST 00001e4e: PUSH1 0x00 00001e50: DUP3 00001e51: GT 00001e52: PUSH2 0x1ec3 00001e55: JUMPI 00001e56: PUSH1 0x40 00001e58: MLOAD 00001e59: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001e7a: DUP2 00001e7b: MSTORE 00001e7c: PUSH1 0x04 00001e7e: ADD 00001e7f: DUP1 00001e80: DUP1 00001e81: PUSH1 0x20 00001e83: ADD 00001e84: DUP3 00001e85: DUP2 00001e86: SUB 00001e87: DUP3 00001e88: MSTORE 00001e89: PUSH1 0x0c 00001e8b: DUP2 00001e8c: MSTORE 00001e8d: PUSH1 0x20 00001e8f: ADD 00001e90: DUP1 00001e91: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 00001eb2: DUP2 00001eb3: MSTORE 00001eb4: POP 00001eb5: PUSH1 0x20 00001eb7: ADD 00001eb8: SWAP2 00001eb9: POP 00001eba: POP 00001ebb: PUSH1 0x40 00001ebd: MLOAD 00001ebe: DUP1 00001ebf: SWAP2 00001ec0: SUB 00001ec1: SWAP1 00001ec2: REVERT 00001ec3: JUMPDEST 00001ec4: PUSH1 0x00 00001ec6: PUSH1 0x14 00001ec8: PUSH1 0x00 00001eca: SWAP1 00001ecb: SLOAD 00001ecc: SWAP1 00001ecd: PUSH2 0x0100 00001ed0: EXP 00001ed1: SWAP1 00001ed2: DIV 00001ed3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ee8: AND 00001ee9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001efe: AND 00001eff: PUSH4 0xdd62ed3e 00001f04: CALLER 00001f05: ADDRESS 00001f06: PUSH1 0x40 00001f08: MLOAD 00001f09: DUP4 00001f0a: PUSH4 0xffffffff 00001f0f: AND 00001f10: PUSH1 0xe0 00001f12: SHL 00001f13: DUP2 00001f14: MSTORE 00001f15: PUSH1 0x04 00001f17: ADD 00001f18: DUP1 00001f19: DUP4 00001f1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f2f: AND 00001f30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f45: AND 00001f46: DUP2 00001f47: MSTORE 00001f48: PUSH1 0x20 00001f4a: ADD 00001f4b: DUP3 00001f4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f61: AND 00001f62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f77: AND 00001f78: DUP2 00001f79: MSTORE 00001f7a: PUSH1 0x20 00001f7c: ADD 00001f7d: SWAP3 00001f7e: POP 00001f7f: POP 00001f80: POP 00001f81: PUSH1 0x20 00001f83: PUSH1 0x40 00001f85: MLOAD 00001f86: DUP1 00001f87: DUP4 00001f88: SUB 00001f89: DUP2 00001f8a: DUP7 00001f8b: DUP1 00001f8c: EXTCODESIZE 00001f8d: ISZERO 00001f8e: DUP1 00001f8f: ISZERO 00001f90: PUSH2 0x1f98 00001f93: JUMPI 00001f94: PUSH1 0x00 00001f96: DUP1 00001f97: REVERT 00001f98: JUMPDEST 00001f99: POP 00001f9a: GAS 00001f9b: STATICCALL 00001f9c: ISZERO 00001f9d: DUP1 00001f9e: ISZERO 00001f9f: PUSH2 0x1fac 00001fa2: JUMPI 00001fa3: RETURNDATASIZE 00001fa4: PUSH1 0x00 00001fa6: DUP1 00001fa7: RETURNDATACOPY 00001fa8: RETURNDATASIZE 00001fa9: PUSH1 0x00 00001fab: REVERT 00001fac: JUMPDEST 00001fad: POP 00001fae: POP 00001faf: POP 00001fb0: POP 00001fb1: PUSH1 0x40 00001fb3: MLOAD 00001fb4: RETURNDATASIZE 00001fb5: PUSH1 0x20 00001fb7: DUP2 00001fb8: LT 00001fb9: ISZERO 00001fba: PUSH2 0x1fc2 00001fbd: JUMPI 00001fbe: PUSH1 0x00 00001fc0: DUP1 00001fc1: REVERT 00001fc2: JUMPDEST 00001fc3: DUP2 00001fc4: ADD 00001fc5: SWAP1 00001fc6: DUP1 00001fc7: DUP1 00001fc8: MLOAD 00001fc9: SWAP1 00001fca: PUSH1 0x20 00001fcc: ADD 00001fcd: SWAP1 00001fce: SWAP3 00001fcf: SWAP2 00001fd0: SWAP1 00001fd1: POP 00001fd2: POP 00001fd3: POP 00001fd4: SWAP1 00001fd5: POP 00001fd6: DUP3 00001fd7: DUP2 00001fd8: LT 00001fd9: ISZERO 00001fda: PUSH2 0x204b 00001fdd: JUMPI 00001fde: PUSH1 0x40 00001fe0: MLOAD 00001fe1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002002: DUP2 00002003: MSTORE 00002004: PUSH1 0x04 00002006: ADD 00002007: DUP1 00002008: DUP1 00002009: PUSH1 0x20 0000200b: ADD 0000200c: DUP3 0000200d: DUP2 0000200e: SUB 0000200f: DUP3 00002010: MSTORE 00002011: PUSH1 0x19 00002013: DUP2 00002014: MSTORE 00002015: PUSH1 0x20 00002017: ADD 00002018: DUP1 00002019: PUSH32 0x636865636b2074686520746f6b656e20616c6c6f77616e636500000000000000 0000203a: DUP2 0000203b: MSTORE 0000203c: POP 0000203d: PUSH1 0x20 0000203f: ADD 00002040: SWAP2 00002041: POP 00002042: POP 00002043: PUSH1 0x40 00002045: MLOAD 00002046: DUP1 00002047: SWAP2 00002048: SUB 00002049: SWAP1 0000204a: REVERT 0000204b: JUMPDEST 0000204c: PUSH1 0x00 0000204e: DUP1 0000204f: CALLER 00002050: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002065: AND 00002066: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000207b: AND 0000207c: DUP2 0000207d: MSTORE 0000207e: PUSH1 0x20 00002080: ADD 00002081: SWAP1 00002082: DUP2 00002083: MSTORE 00002084: PUSH1 0x20 00002086: ADD 00002087: PUSH1 0x00 00002089: KECCAK256 0000208a: PUSH1 0x03 0000208c: ADD 0000208d: PUSH1 0x01 0000208f: SWAP1 00002090: SLOAD 00002091: SWAP1 00002092: PUSH2 0x0100 00002095: EXP 00002096: SWAP1 00002097: DIV 00002098: PUSH1 0xff 0000209a: AND 0000209b: PUSH2 0x20aa 0000209e: JUMPI 0000209f: PUSH2 0x20a9 000020a2: CALLER 000020a3: PUSH1 0x00 000020a5: PUSH2 0x53bd 000020a8: JUMP 000020a9: JUMPDEST 000020aa: JUMPDEST 000020ab: PUSH2 0x20b6 000020ae: CALLER 000020af: PUSH1 0x00 000020b1: DUP1 000020b2: PUSH2 0x52ca 000020b5: JUMP 000020b6: JUMPDEST 000020b7: PUSH2 0x210a 000020ba: DUP4 000020bb: PUSH1 0x00 000020bd: DUP1 000020be: CALLER 000020bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020d4: AND 000020d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020ea: AND 000020eb: DUP2 000020ec: MSTORE 000020ed: PUSH1 0x20 000020ef: ADD 000020f0: SWAP1 000020f1: DUP2 000020f2: MSTORE 000020f3: PUSH1 0x20 000020f5: ADD 000020f6: PUSH1 0x00 000020f8: KECCAK256 000020f9: PUSH1 0x00 000020fb: ADD 000020fc: SLOAD 000020fd: PUSH2 0x55fa 00002100: SWAP1 00002101: SWAP2 00002102: SWAP1 00002103: PUSH4 0xffffffff 00002108: AND 00002109: JUMP 0000210a: JUMPDEST 0000210b: PUSH1 0x00 0000210d: DUP1 0000210e: CALLER 0000210f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002124: AND 00002125: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000213a: AND 0000213b: DUP2 0000213c: MSTORE 0000213d: PUSH1 0x20 0000213f: ADD 00002140: SWAP1 00002141: DUP2 00002142: MSTORE 00002143: PUSH1 0x20 00002145: ADD 00002146: PUSH1 0x00 00002148: KECCAK256 00002149: PUSH1 0x00 0000214b: ADD 0000214c: DUP2 0000214d: SWAP1 0000214e: SSTORE 0000214f: POP 00002150: PUSH2 0x2164 00002153: DUP4 00002154: PUSH1 0x07 00002156: SLOAD 00002157: PUSH2 0x55fa 0000215a: SWAP1 0000215b: SWAP2 0000215c: SWAP1 0000215d: PUSH4 0xffffffff 00002162: AND 00002163: JUMP 00002164: JUMPDEST 00002165: PUSH1 0x07 00002167: DUP2 00002168: SWAP1 00002169: SSTORE 0000216a: POP 0000216b: PUSH1 0x14 0000216d: PUSH1 0x00 0000216f: SWAP1 00002170: SLOAD 00002171: SWAP1 00002172: PUSH2 0x0100 00002175: EXP 00002176: SWAP1 00002177: DIV 00002178: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000218d: AND 0000218e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021a3: AND 000021a4: PUSH4 0x23b872dd 000021a9: CALLER 000021aa: ADDRESS 000021ab: DUP7 000021ac: PUSH1 0x40 000021ae: MLOAD 000021af: DUP5 000021b0: PUSH4 0xffffffff 000021b5: AND 000021b6: PUSH1 0xe0 000021b8: SHL 000021b9: DUP2 000021ba: MSTORE 000021bb: PUSH1 0x04 000021bd: ADD 000021be: DUP1 000021bf: DUP5 000021c0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021d5: AND 000021d6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021eb: AND 000021ec: DUP2 000021ed: MSTORE 000021ee: PUSH1 0x20 000021f0: ADD 000021f1: DUP4 000021f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002207: AND 00002208: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000221d: AND 0000221e: DUP2 0000221f: MSTORE 00002220: PUSH1 0x20 00002222: ADD 00002223: DUP3 00002224: DUP2 00002225: MSTORE 00002226: PUSH1 0x20 00002228: ADD 00002229: SWAP4 0000222a: POP 0000222b: POP 0000222c: POP 0000222d: POP 0000222e: PUSH1 0x20 00002230: PUSH1 0x40 00002232: MLOAD 00002233: DUP1 00002234: DUP4 00002235: SUB 00002236: DUP2 00002237: PUSH1 0x00 00002239: DUP8 0000223a: DUP1 0000223b: EXTCODESIZE 0000223c: ISZERO 0000223d: DUP1 0000223e: ISZERO 0000223f: PUSH2 0x2247 00002242: JUMPI 00002243: PUSH1 0x00 00002245: DUP1 00002246: REVERT 00002247: JUMPDEST 00002248: POP 00002249: GAS 0000224a: CALL 0000224b: ISZERO 0000224c: DUP1 0000224d: ISZERO 0000224e: PUSH2 0x225b 00002251: JUMPI 00002252: RETURNDATASIZE 00002253: PUSH1 0x00 00002255: DUP1 00002256: RETURNDATACOPY 00002257: RETURNDATASIZE 00002258: PUSH1 0x00 0000225a: REVERT 0000225b: JUMPDEST 0000225c: POP 0000225d: POP 0000225e: POP 0000225f: POP 00002260: PUSH1 0x40 00002262: MLOAD 00002263: RETURNDATASIZE 00002264: PUSH1 0x20 00002266: DUP2 00002267: LT 00002268: ISZERO 00002269: PUSH2 0x2271 0000226c: JUMPI 0000226d: PUSH1 0x00 0000226f: DUP1 00002270: REVERT 00002271: JUMPDEST 00002272: DUP2 00002273: ADD 00002274: SWAP1 00002275: DUP1 00002276: DUP1 00002277: MLOAD 00002278: SWAP1 00002279: PUSH1 0x20 0000227b: ADD 0000227c: SWAP1 0000227d: SWAP3 0000227e: SWAP2 0000227f: SWAP1 00002280: POP 00002281: POP 00002282: POP 00002283: POP 00002284: PUSH32 0x768530721fabc8b082e61e2c0837b8b59e77cc7a9942a31bb4b47d86b819e01f 000022a5: CALLER 000022a6: PUSH1 0x00 000022a8: DUP1 000022a9: CALLER 000022aa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022bf: AND 000022c0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022d5: AND 000022d6: DUP2 000022d7: MSTORE 000022d8: PUSH1 0x20 000022da: ADD 000022db: SWAP1 000022dc: DUP2 000022dd: MSTORE 000022de: PUSH1 0x20 000022e0: ADD 000022e1: PUSH1 0x00 000022e3: KECCAK256 000022e4: PUSH1 0x00 000022e6: ADD 000022e7: SLOAD 000022e8: PUSH1 0x40 000022ea: MLOAD 000022eb: DUP1 000022ec: DUP4 000022ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002302: AND 00002303: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002318: AND 00002319: DUP2 0000231a: MSTORE 0000231b: PUSH1 0x20 0000231d: ADD 0000231e: DUP3 0000231f: DUP2 00002320: MSTORE 00002321: PUSH1 0x20 00002323: ADD 00002324: SWAP3 00002325: POP 00002326: POP 00002327: POP 00002328: PUSH1 0x40 0000232a: MLOAD 0000232b: DUP1 0000232c: SWAP2 0000232d: SUB 0000232e: SWAP1 0000232f: LOG1 00002330: PUSH1 0x00 00002332: DUP1 00002333: CALLER 00002334: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002349: AND 0000234a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000235f: AND 00002360: DUP2 00002361: MSTORE 00002362: PUSH1 0x20 00002364: ADD 00002365: SWAP1 00002366: DUP2 00002367: MSTORE 00002368: PUSH1 0x20 0000236a: ADD 0000236b: PUSH1 0x00 0000236d: KECCAK256 0000236e: PUSH1 0x00 00002370: ADD 00002371: SLOAD 00002372: SWAP2 00002373: POP 00002374: POP 00002375: SWAP2 00002376: SWAP1 00002377: POP 00002378: JUMP 00002379: JUMPDEST 0000237a: PUSH1 0x01 0000237c: PUSH1 0x03 0000237e: DUP2 0000237f: GT 00002380: ISZERO 00002381: PUSH2 0x2386 00002384: JUMPI 00002385: INVALID 00002386: JUMPDEST 00002387: PUSH1 0x14 00002389: DUP1 0000238a: SWAP1 0000238b: SLOAD 0000238c: SWAP1 0000238d: PUSH2 0x0100 00002390: EXP 00002391: SWAP1 00002392: DIV 00002393: PUSH1 0xff 00002395: AND 00002396: PUSH1 0x03 00002398: DUP2 00002399: GT 0000239a: ISZERO 0000239b: PUSH2 0x23a0 0000239e: JUMPI 0000239f: INVALID 000023a0: JUMPDEST 000023a1: EQ 000023a2: PUSH2 0x2413 000023a5: JUMPI 000023a6: PUSH1 0x40 000023a8: MLOAD 000023a9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000023ca: DUP2 000023cb: MSTORE 000023cc: PUSH1 0x04 000023ce: ADD 000023cf: DUP1 000023d0: DUP1 000023d1: PUSH1 0x20 000023d3: ADD 000023d4: DUP3 000023d5: DUP2 000023d6: SUB 000023d7: DUP3 000023d8: MSTORE 000023d9: PUSH1 0x0d 000023db: DUP2 000023dc: MSTORE 000023dd: PUSH1 0x20 000023df: ADD 000023e0: DUP1 000023e1: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00002402: DUP2 00002403: MSTORE 00002404: POP 00002405: PUSH1 0x20 00002407: ADD 00002408: SWAP2 00002409: POP 0000240a: POP 0000240b: PUSH1 0x40 0000240d: MLOAD 0000240e: DUP1 0000240f: SWAP2 00002410: SUB 00002411: SWAP1 00002412: REVERT 00002413: JUMPDEST 00002414: PUSH2 0x242a 00002417: PUSH2 0x1680 0000241a: PUSH1 0x0f 0000241c: SLOAD 0000241d: PUSH2 0x55fa 00002420: SWAP1 00002421: SWAP2 00002422: SWAP1 00002423: PUSH4 0xffffffff 00002428: AND 00002429: JUMP 0000242a: JUMPDEST 0000242b: NUMBER 0000242c: GT 0000242d: PUSH2 0x249e 00002430: JUMPI 00002431: PUSH1 0x40 00002433: MLOAD 00002434: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002455: DUP2 00002456: MSTORE 00002457: PUSH1 0x04 00002459: ADD 0000245a: DUP1 0000245b: DUP1 0000245c: PUSH1 0x20 0000245e: ADD 0000245f: DUP3 00002460: DUP2 00002461: SUB 00002462: DUP3 00002463: MSTORE 00002464: PUSH1 0x14 00002466: DUP2 00002467: MSTORE 00002468: PUSH1 0x20 0000246a: ADD 0000246b: DUP1 0000246c: PUSH32 0x77726f6e672074696d6520666f72206d696e6572000000000000000000000000 0000248d: DUP2 0000248e: MSTORE 0000248f: POP 00002490: PUSH1 0x20 00002492: ADD 00002493: SWAP2 00002494: POP 00002495: POP 00002496: PUSH1 0x40 00002498: MLOAD 00002499: DUP1 0000249a: SWAP2 0000249b: SUB 0000249c: SWAP1 0000249d: REVERT 0000249e: JUMPDEST 0000249f: PUSH1 0x02 000024a1: PUSH1 0x14 000024a3: DUP1 000024a4: PUSH2 0x0100 000024a7: EXP 000024a8: DUP2 000024a9: SLOAD 000024aa: DUP2 000024ab: PUSH1 0xff 000024ad: MUL 000024ae: NOT 000024af: AND 000024b0: SWAP1 000024b1: DUP4 000024b2: PUSH1 0x03 000024b4: DUP2 000024b5: GT 000024b6: ISZERO 000024b7: PUSH2 0x24bc 000024ba: JUMPI 000024bb: INVALID 000024bc: JUMPDEST 000024bd: MUL 000024be: OR 000024bf: SWAP1 000024c0: SSTORE 000024c1: POP 000024c2: PUSH1 0x08 000024c4: PUSH1 0x06 000024c6: SLOAD 000024c7: SWAP1 000024c8: DUP1 000024c9: PUSH1 0x01 000024cb: DUP2 000024cc: SLOAD 000024cd: ADD 000024ce: DUP1 000024cf: DUP3 000024d0: SSTORE 000024d1: DUP1 000024d2: SWAP2 000024d3: POP 000024d4: POP 000024d5: PUSH1 0x01 000024d7: SWAP1 000024d8: SUB 000024d9: SWAP1 000024da: PUSH1 0x00 000024dc: MSTORE 000024dd: PUSH1 0x20 000024df: PUSH1 0x00 000024e1: KECCAK256 000024e2: ADD 000024e3: PUSH1 0x00 000024e5: SWAP1 000024e6: SWAP2 000024e7: SWAP1 000024e8: SWAP2 000024e9: SWAP1 000024ea: SWAP2 000024eb: POP 000024ec: SSTORE 000024ed: PUSH1 0x09 000024ef: PUSH1 0x07 000024f1: SLOAD 000024f2: SWAP1 000024f3: DUP1 000024f4: PUSH1 0x01 000024f6: DUP2 000024f7: SLOAD 000024f8: ADD 000024f9: DUP1 000024fa: DUP3 000024fb: SSTORE 000024fc: DUP1 000024fd: SWAP2 000024fe: POP 000024ff: POP 00002500: PUSH1 0x01 00002502: SWAP1 00002503: SUB 00002504: SWAP1 00002505: PUSH1 0x00 00002507: MSTORE 00002508: PUSH1 0x20 0000250a: PUSH1 0x00 0000250c: KECCAK256 0000250d: ADD 0000250e: PUSH1 0x00 00002510: SWAP1 00002511: SWAP2 00002512: SWAP1 00002513: SWAP2 00002514: SWAP1 00002515: SWAP2 00002516: POP 00002517: SSTORE 00002518: PUSH1 0x00 0000251a: DUP1 0000251b: PUSH2 0x252a 0000251e: PUSH2 0x2525 00002521: PUSH2 0x5682 00002524: JUMP 00002525: JUMPDEST 00002526: PUSH2 0x5692 00002529: JUMP 0000252a: JUMPDEST 0000252b: DUP1 0000252c: SWAP3 0000252d: POP 0000252e: DUP2 0000252f: SWAP4 00002530: POP 00002531: POP 00002532: POP 00002533: PUSH1 0x00 00002535: PUSH1 0x06 00002537: SLOAD 00002538: EQ 00002539: DUP1 0000253a: ISZERO 0000253b: PUSH2 0x2546 0000253e: JUMPI 0000253f: POP 00002540: PUSH1 0x00 00002542: PUSH1 0x07 00002544: SLOAD 00002545: EQ 00002546: JUMPDEST 00002547: ISZERO 00002548: PUSH2 0x2554 0000254b: JUMPI 0000254c: PUSH1 0x00 0000254e: SWAP2 0000254f: POP 00002550: PUSH2 0x25e4 00002553: JUMP 00002554: JUMPDEST 00002555: PUSH1 0x00 00002557: PUSH1 0x06 00002559: SLOAD 0000255a: EQ 0000255b: DUP1 0000255c: ISZERO 0000255d: PUSH2 0x2569 00002560: JUMPI 00002561: POP 00002562: PUSH1 0x00 00002564: PUSH1 0x07 00002566: SLOAD 00002567: EQ 00002568: ISZERO 00002569: JUMPDEST 0000256a: ISZERO 0000256b: PUSH2 0x259d 0000256e: JUMPI 0000256f: PUSH2 0x2596 00002572: PUSH1 0x0d 00002574: SLOAD 00002575: PUSH2 0x2588 00002578: PUSH1 0x64 0000257a: DUP6 0000257b: PUSH2 0x570f 0000257e: SWAP1 0000257f: SWAP2 00002580: SWAP1 00002581: PUSH4 0xffffffff 00002586: AND 00002587: JUMP 00002588: JUMPDEST 00002589: PUSH2 0x5759 0000258c: SWAP1 0000258d: SWAP2 0000258e: SWAP1 0000258f: PUSH4 0xffffffff 00002594: AND 00002595: JUMP 00002596: JUMPDEST 00002597: SWAP2 00002598: POP 00002599: PUSH2 0x25e3 0000259c: JUMP 0000259d: JUMPDEST 0000259e: PUSH1 0x00 000025a0: PUSH1 0x06 000025a2: SLOAD 000025a3: EQ 000025a4: ISZERO 000025a5: DUP1 000025a6: ISZERO 000025a7: PUSH2 0x25b2 000025aa: JUMPI 000025ab: POP 000025ac: PUSH1 0x00 000025ae: PUSH1 0x07 000025b0: SLOAD 000025b1: EQ 000025b2: JUMPDEST 000025b3: ISZERO 000025b4: PUSH2 0x25e2 000025b7: JUMPI 000025b8: PUSH2 0x25df 000025bb: PUSH1 0x0c 000025bd: SLOAD 000025be: PUSH2 0x25d1 000025c1: PUSH1 0x64 000025c3: DUP6 000025c4: PUSH2 0x570f 000025c7: SWAP1 000025c8: SWAP2 000025c9: SWAP1 000025ca: PUSH4 0xffffffff 000025cf: AND 000025d0: JUMP 000025d1: JUMPDEST 000025d2: PUSH2 0x5759 000025d5: SWAP1 000025d6: SWAP2 000025d7: SWAP1 000025d8: PUSH4 0xffffffff 000025dd: AND 000025de: JUMP 000025df: JUMPDEST 000025e0: SWAP2 000025e1: POP 000025e2: JUMPDEST 000025e3: JUMPDEST 000025e4: JUMPDEST 000025e5: PUSH2 0x261e 000025e8: PUSH2 0x25fb 000025eb: PUSH1 0x31 000025ed: DUP4 000025ee: PUSH2 0x5759 000025f1: SWAP1 000025f2: SWAP2 000025f3: SWAP1 000025f4: PUSH4 0xffffffff 000025f9: AND 000025fa: JUMP 000025fb: JUMPDEST 000025fc: PUSH2 0x2610 000025ff: DUP5 00002600: PUSH1 0x07 00002602: SLOAD 00002603: PUSH2 0x55fa 00002606: SWAP1 00002607: SWAP2 00002608: SWAP1 00002609: PUSH4 0xffffffff 0000260e: AND 0000260f: JUMP 00002610: JUMPDEST 00002611: PUSH2 0x55fa 00002614: SWAP1 00002615: SWAP2 00002616: SWAP1 00002617: PUSH4 0xffffffff 0000261c: AND 0000261d: JUMP 0000261e: JUMPDEST 0000261f: PUSH1 0x07 00002621: DUP2 00002622: SWAP1 00002623: SSTORE 00002624: POP 00002625: PUSH2 0x2639 00002628: DUP3 00002629: PUSH1 0x11 0000262b: SLOAD 0000262c: PUSH2 0x55fa 0000262f: SWAP1 00002630: SWAP2 00002631: SWAP1 00002632: PUSH4 0xffffffff 00002637: AND 00002638: JUMP 00002639: JUMPDEST 0000263a: PUSH1 0x11 0000263c: DUP2 0000263d: SWAP1 0000263e: SSTORE 0000263f: POP 00002640: PUSH2 0x2667 00002643: PUSH2 0x2656 00002646: PUSH1 0x31 00002648: DUP4 00002649: PUSH2 0x5759 0000264c: SWAP1 0000264d: SWAP2 0000264e: SWAP1 0000264f: PUSH4 0xffffffff 00002654: AND 00002655: JUMP 00002656: JUMPDEST 00002657: PUSH1 0x12 00002659: SLOAD 0000265a: PUSH2 0x55fa 0000265d: SWAP1 0000265e: SWAP2 0000265f: SWAP1 00002660: PUSH4 0xffffffff 00002665: AND 00002666: JUMP 00002667: JUMPDEST 00002668: PUSH1 0x12 0000266a: DUP2 0000266b: SWAP1 0000266c: SSTORE 0000266d: POP 0000266e: NUMBER 0000266f: PUSH1 0x0f 00002671: DUP2 00002672: SWAP1 00002673: SSTORE 00002674: POP 00002675: PUSH1 0x01 00002677: PUSH1 0x14 00002679: DUP1 0000267a: PUSH2 0x0100 0000267d: EXP 0000267e: DUP2 0000267f: SLOAD 00002680: DUP2 00002681: PUSH1 0xff 00002683: MUL 00002684: NOT 00002685: AND 00002686: SWAP1 00002687: DUP4 00002688: PUSH1 0x03 0000268a: DUP2 0000268b: GT 0000268c: ISZERO 0000268d: PUSH2 0x2692 00002690: JUMPI 00002691: INVALID 00002692: JUMPDEST 00002693: MUL 00002694: OR 00002695: SWAP1 00002696: SSTORE 00002697: POP 00002698: PUSH32 0x9d7687b6172eca88505d6ac59b2b59edc1559089bf2501820b640c66111968e4 000026b9: CALLER 000026ba: PUSH1 0x40 000026bc: MLOAD 000026bd: DUP1 000026be: DUP3 000026bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000026d4: AND 000026d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000026ea: AND 000026eb: DUP2 000026ec: MSTORE 000026ed: PUSH1 0x20 000026ef: ADD 000026f0: SWAP2 000026f1: POP 000026f2: POP 000026f3: PUSH1 0x40 000026f5: MLOAD 000026f6: DUP1 000026f7: SWAP2 000026f8: SUB 000026f9: SWAP1 000026fa: LOG1 000026fb: POP 000026fc: POP 000026fd: JUMP 000026fe: JUMPDEST 000026ff: PUSH1 0x00 00002701: PUSH2 0x271c 00002704: PUSH1 0x03 00002706: SLOAD 00002707: PUSH2 0x270e 0000270a: PUSH2 0x57df 0000270d: JUMP 0000270e: JUMPDEST 0000270f: PUSH2 0x5373 00002712: SWAP1 00002713: SWAP2 00002714: SWAP1 00002715: PUSH4 0xffffffff 0000271a: AND 0000271b: JUMP 0000271c: JUMPDEST 0000271d: SWAP1 0000271e: POP 0000271f: SWAP1 00002720: JUMP 00002721: JUMPDEST 00002722: CALLER 00002723: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002738: AND 00002739: PUSH1 0x01 0000273b: PUSH1 0x00 0000273d: SWAP1 0000273e: SLOAD 0000273f: SWAP1 00002740: PUSH2 0x0100 00002743: EXP 00002744: SWAP1 00002745: DIV 00002746: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000275b: AND 0000275c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002771: AND 00002772: EQ 00002773: PUSH2 0x27e4 00002776: JUMPI 00002777: PUSH1 0x40 00002779: MLOAD 0000277a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000279b: DUP2 0000279c: MSTORE 0000279d: PUSH1 0x04 0000279f: ADD 000027a0: DUP1 000027a1: DUP1 000027a2: PUSH1 0x20 000027a4: ADD 000027a5: DUP3 000027a6: DUP2 000027a7: SUB 000027a8: DUP3 000027a9: MSTORE 000027aa: PUSH1 0x1a 000027ac: DUP2 000027ad: MSTORE 000027ae: PUSH1 0x20 000027b0: ADD 000027b1: DUP1 000027b2: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 000027d3: DUP2 000027d4: MSTORE 000027d5: POP 000027d6: PUSH1 0x20 000027d8: ADD 000027d9: SWAP2 000027da: POP 000027db: POP 000027dc: PUSH1 0x40 000027de: MLOAD 000027df: DUP1 000027e0: SWAP2 000027e1: SUB 000027e2: SWAP1 000027e3: REVERT 000027e4: JUMPDEST 000027e5: PUSH1 0x01 000027e7: PUSH1 0x03 000027e9: DUP2 000027ea: GT 000027eb: ISZERO 000027ec: PUSH2 0x27f1 000027ef: JUMPI 000027f0: INVALID 000027f1: JUMPDEST 000027f2: PUSH1 0x14 000027f4: DUP1 000027f5: SWAP1 000027f6: SLOAD 000027f7: SWAP1 000027f8: PUSH2 0x0100 000027fb: EXP 000027fc: SWAP1 000027fd: DIV 000027fe: PUSH1 0xff 00002800: AND 00002801: PUSH1 0x03 00002803: DUP2 00002804: GT 00002805: ISZERO 00002806: PUSH2 0x280b 00002809: JUMPI 0000280a: INVALID 0000280b: JUMPDEST 0000280c: EQ 0000280d: PUSH2 0x287e 00002810: JUMPI 00002811: PUSH1 0x40 00002813: MLOAD 00002814: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002835: DUP2 00002836: MSTORE 00002837: PUSH1 0x04 00002839: ADD 0000283a: DUP1 0000283b: DUP1 0000283c: PUSH1 0x20 0000283e: ADD 0000283f: DUP3 00002840: DUP2 00002841: SUB 00002842: DUP3 00002843: MSTORE 00002844: PUSH1 0x0d 00002846: DUP2 00002847: MSTORE 00002848: PUSH1 0x20 0000284a: ADD 0000284b: DUP1 0000284c: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 0000286d: DUP2 0000286e: MSTORE 0000286f: POP 00002870: PUSH1 0x20 00002872: ADD 00002873: SWAP2 00002874: POP 00002875: POP 00002876: PUSH1 0x40 00002878: MLOAD 00002879: DUP1 0000287a: SWAP2 0000287b: SUB 0000287c: SWAP1 0000287d: REVERT 0000287e: JUMPDEST 0000287f: PUSH1 0x03 00002881: PUSH1 0x14 00002883: DUP1 00002884: PUSH2 0x0100 00002887: EXP 00002888: DUP2 00002889: SLOAD 0000288a: DUP2 0000288b: PUSH1 0xff 0000288d: MUL 0000288e: NOT 0000288f: AND 00002890: SWAP1 00002891: DUP4 00002892: PUSH1 0x03 00002894: DUP2 00002895: GT 00002896: ISZERO 00002897: PUSH2 0x289c 0000289a: JUMPI 0000289b: INVALID 0000289c: JUMPDEST 0000289d: MUL 0000289e: OR 0000289f: SWAP1 000028a0: SSTORE 000028a1: POP 000028a2: PUSH32 0x09e0da496684a1610726ed3e5c3b65c90ac04cd3a3c2e8994f82a498152ae977 000028c3: CALLER 000028c4: PUSH1 0x40 000028c6: MLOAD 000028c7: DUP1 000028c8: DUP3 000028c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000028de: AND 000028df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000028f4: AND 000028f5: DUP2 000028f6: MSTORE 000028f7: PUSH1 0x20 000028f9: ADD 000028fa: SWAP2 000028fb: POP 000028fc: POP 000028fd: PUSH1 0x40 000028ff: MLOAD 00002900: DUP1 00002901: SWAP2 00002902: SUB 00002903: SWAP1 00002904: LOG1 00002905: JUMP 00002906: JUMPDEST 00002907: PUSH1 0x00 00002909: PUSH1 0x0e 0000290b: SLOAD 0000290c: SWAP1 0000290d: POP 0000290e: SWAP1 0000290f: JUMP 00002910: JUMPDEST 00002911: PUSH1 0x00 00002913: PUSH1 0x01 00002915: PUSH1 0x03 00002917: DUP2 00002918: GT 00002919: ISZERO 0000291a: PUSH2 0x291f 0000291d: JUMPI 0000291e: INVALID 0000291f: JUMPDEST 00002920: PUSH1 0x14 00002922: DUP1 00002923: SWAP1 00002924: SLOAD 00002925: SWAP1 00002926: PUSH2 0x0100 00002929: EXP 0000292a: SWAP1 0000292b: DIV 0000292c: PUSH1 0xff 0000292e: AND 0000292f: PUSH1 0x03 00002931: DUP2 00002932: GT 00002933: ISZERO 00002934: PUSH2 0x2939 00002937: JUMPI 00002938: INVALID 00002939: JUMPDEST 0000293a: EQ 0000293b: PUSH2 0x29ac 0000293e: JUMPI 0000293f: PUSH1 0x40 00002941: MLOAD 00002942: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002963: DUP2 00002964: MSTORE 00002965: PUSH1 0x04 00002967: ADD 00002968: DUP1 00002969: DUP1 0000296a: PUSH1 0x20 0000296c: ADD 0000296d: DUP3 0000296e: DUP2 0000296f: SUB 00002970: DUP3 00002971: MSTORE 00002972: PUSH1 0x0d 00002974: DUP2 00002975: MSTORE 00002976: PUSH1 0x20 00002978: ADD 00002979: DUP1 0000297a: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 0000299b: DUP2 0000299c: MSTORE 0000299d: POP 0000299e: PUSH1 0x20 000029a0: ADD 000029a1: SWAP2 000029a2: POP 000029a3: POP 000029a4: PUSH1 0x40 000029a6: MLOAD 000029a7: DUP1 000029a8: SWAP2 000029a9: SUB 000029aa: SWAP1 000029ab: REVERT 000029ac: JUMPDEST 000029ad: CALLER 000029ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029c3: AND 000029c4: PUSH1 0x02 000029c6: PUSH1 0x00 000029c8: SWAP1 000029c9: SLOAD 000029ca: SWAP1 000029cb: PUSH2 0x0100 000029ce: EXP 000029cf: SWAP1 000029d0: DIV 000029d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029e6: AND 000029e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029fc: AND 000029fd: EQ 000029fe: PUSH2 0x2a6f 00002a01: JUMPI 00002a02: PUSH1 0x40 00002a04: MLOAD 00002a05: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a26: DUP2 00002a27: MSTORE 00002a28: PUSH1 0x04 00002a2a: ADD 00002a2b: DUP1 00002a2c: DUP1 00002a2d: PUSH1 0x20 00002a2f: ADD 00002a30: DUP3 00002a31: DUP2 00002a32: SUB 00002a33: DUP3 00002a34: MSTORE 00002a35: PUSH1 0x19 00002a37: DUP2 00002a38: MSTORE 00002a39: PUSH1 0x20 00002a3b: ADD 00002a3c: DUP1 00002a3d: PUSH32 0x63616c6c6572206973206e6f7420746865206c7020706f6f6c00000000000000 00002a5e: DUP2 00002a5f: MSTORE 00002a60: POP 00002a61: PUSH1 0x20 00002a63: ADD 00002a64: SWAP2 00002a65: POP 00002a66: POP 00002a67: PUSH1 0x40 00002a69: MLOAD 00002a6a: DUP1 00002a6b: SWAP2 00002a6c: SUB 00002a6d: SWAP1 00002a6e: REVERT 00002a6f: JUMPDEST 00002a70: PUSH1 0x00 00002a72: DUP3 00002a73: GT 00002a74: PUSH2 0x2ae5 00002a77: JUMPI 00002a78: PUSH1 0x40 00002a7a: MLOAD 00002a7b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a9c: DUP2 00002a9d: MSTORE 00002a9e: PUSH1 0x04 00002aa0: ADD 00002aa1: DUP1 00002aa2: DUP1 00002aa3: PUSH1 0x20 00002aa5: ADD 00002aa6: DUP3 00002aa7: DUP2 00002aa8: SUB 00002aa9: DUP3 00002aaa: MSTORE 00002aab: PUSH1 0x0c 00002aad: DUP2 00002aae: MSTORE 00002aaf: PUSH1 0x20 00002ab1: ADD 00002ab2: DUP1 00002ab3: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 00002ad4: DUP2 00002ad5: MSTORE 00002ad6: POP 00002ad7: PUSH1 0x20 00002ad9: ADD 00002ada: SWAP2 00002adb: POP 00002adc: POP 00002add: PUSH1 0x40 00002adf: MLOAD 00002ae0: DUP1 00002ae1: SWAP2 00002ae2: SUB 00002ae3: SWAP1 00002ae4: REVERT 00002ae5: JUMPDEST 00002ae6: PUSH1 0x00 00002ae8: PUSH1 0x14 00002aea: PUSH1 0x00 00002aec: SWAP1 00002aed: SLOAD 00002aee: SWAP1 00002aef: PUSH2 0x0100 00002af2: EXP 00002af3: SWAP1 00002af4: DIV 00002af5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b0a: AND 00002b0b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b20: AND 00002b21: PUSH4 0x70a08231 00002b26: ADDRESS 00002b27: PUSH1 0x40 00002b29: MLOAD 00002b2a: DUP3 00002b2b: PUSH4 0xffffffff 00002b30: AND 00002b31: PUSH1 0xe0 00002b33: SHL 00002b34: DUP2 00002b35: MSTORE 00002b36: PUSH1 0x04 00002b38: ADD 00002b39: DUP1 00002b3a: DUP3 00002b3b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b50: AND 00002b51: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b66: AND 00002b67: DUP2 00002b68: MSTORE 00002b69: PUSH1 0x20 00002b6b: ADD 00002b6c: SWAP2 00002b6d: POP 00002b6e: POP 00002b6f: PUSH1 0x20 00002b71: PUSH1 0x40 00002b73: MLOAD 00002b74: DUP1 00002b75: DUP4 00002b76: SUB 00002b77: DUP2 00002b78: DUP7 00002b79: DUP1 00002b7a: EXTCODESIZE 00002b7b: ISZERO 00002b7c: DUP1 00002b7d: ISZERO 00002b7e: PUSH2 0x2b86 00002b81: JUMPI 00002b82: PUSH1 0x00 00002b84: DUP1 00002b85: REVERT 00002b86: JUMPDEST 00002b87: POP 00002b88: GAS 00002b89: STATICCALL 00002b8a: ISZERO 00002b8b: DUP1 00002b8c: ISZERO 00002b8d: PUSH2 0x2b9a 00002b90: JUMPI 00002b91: RETURNDATASIZE 00002b92: PUSH1 0x00 00002b94: DUP1 00002b95: RETURNDATACOPY 00002b96: RETURNDATASIZE 00002b97: PUSH1 0x00 00002b99: REVERT 00002b9a: JUMPDEST 00002b9b: POP 00002b9c: POP 00002b9d: POP 00002b9e: POP 00002b9f: PUSH1 0x40 00002ba1: MLOAD 00002ba2: RETURNDATASIZE 00002ba3: PUSH1 0x20 00002ba5: DUP2 00002ba6: LT 00002ba7: ISZERO 00002ba8: PUSH2 0x2bb0 00002bab: JUMPI 00002bac: PUSH1 0x00 00002bae: DUP1 00002baf: REVERT 00002bb0: JUMPDEST 00002bb1: DUP2 00002bb2: ADD 00002bb3: SWAP1 00002bb4: DUP1 00002bb5: DUP1 00002bb6: MLOAD 00002bb7: SWAP1 00002bb8: PUSH1 0x20 00002bba: ADD 00002bbb: SWAP1 00002bbc: SWAP3 00002bbd: SWAP2 00002bbe: SWAP1 00002bbf: POP 00002bc0: POP 00002bc1: POP 00002bc2: SWAP1 00002bc3: POP 00002bc4: DUP3 00002bc5: DUP2 00002bc6: LT 00002bc7: ISZERO 00002bc8: PUSH2 0x2c39 00002bcb: JUMPI 00002bcc: PUSH1 0x40 00002bce: MLOAD 00002bcf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002bf0: DUP2 00002bf1: MSTORE 00002bf2: PUSH1 0x04 00002bf4: ADD 00002bf5: DUP1 00002bf6: DUP1 00002bf7: PUSH1 0x20 00002bf9: ADD 00002bfa: DUP3 00002bfb: DUP2 00002bfc: SUB 00002bfd: DUP3 00002bfe: MSTORE 00002bff: PUSH1 0x1d 00002c01: DUP2 00002c02: MSTORE 00002c03: PUSH1 0x20 00002c05: ADD 00002c06: DUP1 00002c07: PUSH32 0x696e73756666696369656e74207a647320666f72207769746864726177000000 00002c28: DUP2 00002c29: MSTORE 00002c2a: POP 00002c2b: PUSH1 0x20 00002c2d: ADD 00002c2e: SWAP2 00002c2f: POP 00002c30: POP 00002c31: PUSH1 0x40 00002c33: MLOAD 00002c34: DUP1 00002c35: SWAP2 00002c36: SUB 00002c37: SWAP1 00002c38: REVERT 00002c39: JUMPDEST 00002c3a: PUSH1 0x00 00002c3c: PUSH2 0x2c57 00002c3f: PUSH1 0x03 00002c41: SLOAD 00002c42: PUSH2 0x2c49 00002c45: PUSH2 0x57df 00002c48: JUMP 00002c49: JUMPDEST 00002c4a: PUSH2 0x5373 00002c4d: SWAP1 00002c4e: SWAP2 00002c4f: SWAP1 00002c50: PUSH4 0xffffffff 00002c55: AND 00002c56: JUMP 00002c57: JUMPDEST 00002c58: SWAP1 00002c59: POP 00002c5a: DUP4 00002c5b: DUP2 00002c5c: LT 00002c5d: ISZERO 00002c5e: PUSH2 0x2ccf 00002c61: JUMPI 00002c62: PUSH1 0x40 00002c64: MLOAD 00002c65: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c86: DUP2 00002c87: MSTORE 00002c88: PUSH1 0x04 00002c8a: ADD 00002c8b: DUP1 00002c8c: DUP1 00002c8d: PUSH1 0x20 00002c8f: ADD 00002c90: DUP3 00002c91: DUP2 00002c92: SUB 00002c93: DUP3 00002c94: MSTORE 00002c95: PUSH1 0x1c 00002c97: DUP2 00002c98: MSTORE 00002c99: PUSH1 0x20 00002c9b: ADD 00002c9c: DUP1 00002c9d: PUSH32 0x696e73756666696369656e74207a647320666f72206c7020706f6f6c00000000 00002cbe: DUP2 00002cbf: MSTORE 00002cc0: POP 00002cc1: PUSH1 0x20 00002cc3: ADD 00002cc4: SWAP2 00002cc5: POP 00002cc6: POP 00002cc7: PUSH1 0x40 00002cc9: MLOAD 00002cca: DUP1 00002ccb: SWAP2 00002ccc: SUB 00002ccd: SWAP1 00002cce: REVERT 00002ccf: JUMPDEST 00002cd0: PUSH2 0x2ce4 00002cd3: DUP5 00002cd4: PUSH1 0x03 00002cd6: SLOAD 00002cd7: PUSH2 0x55fa 00002cda: SWAP1 00002cdb: SWAP2 00002cdc: SWAP1 00002cdd: PUSH4 0xffffffff 00002ce2: AND 00002ce3: JUMP 00002ce4: JUMPDEST 00002ce5: PUSH1 0x03 00002ce7: DUP2 00002ce8: SWAP1 00002ce9: SSTORE 00002cea: POP 00002ceb: PUSH1 0x14 00002ced: PUSH1 0x00 00002cef: SWAP1 00002cf0: SLOAD 00002cf1: SWAP1 00002cf2: PUSH2 0x0100 00002cf5: EXP 00002cf6: SWAP1 00002cf7: DIV 00002cf8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d0d: AND 00002d0e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d23: AND 00002d24: PUSH4 0xa9059cbb 00002d29: CALLER 00002d2a: DUP7 00002d2b: PUSH1 0x40 00002d2d: MLOAD 00002d2e: DUP4 00002d2f: PUSH4 0xffffffff 00002d34: AND 00002d35: PUSH1 0xe0 00002d37: SHL 00002d38: DUP2 00002d39: MSTORE 00002d3a: PUSH1 0x04 00002d3c: ADD 00002d3d: DUP1 00002d3e: DUP4 00002d3f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d54: AND 00002d55: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d6a: AND 00002d6b: DUP2 00002d6c: MSTORE 00002d6d: PUSH1 0x20 00002d6f: ADD 00002d70: DUP3 00002d71: DUP2 00002d72: MSTORE 00002d73: PUSH1 0x20 00002d75: ADD 00002d76: SWAP3 00002d77: POP 00002d78: POP 00002d79: POP 00002d7a: PUSH1 0x20 00002d7c: PUSH1 0x40 00002d7e: MLOAD 00002d7f: DUP1 00002d80: DUP4 00002d81: SUB 00002d82: DUP2 00002d83: PUSH1 0x00 00002d85: DUP8 00002d86: DUP1 00002d87: EXTCODESIZE 00002d88: ISZERO 00002d89: DUP1 00002d8a: ISZERO 00002d8b: PUSH2 0x2d93 00002d8e: JUMPI 00002d8f: PUSH1 0x00 00002d91: DUP1 00002d92: REVERT 00002d93: JUMPDEST 00002d94: POP 00002d95: GAS 00002d96: CALL 00002d97: ISZERO 00002d98: DUP1 00002d99: ISZERO 00002d9a: PUSH2 0x2da7 00002d9d: JUMPI 00002d9e: RETURNDATASIZE 00002d9f: PUSH1 0x00 00002da1: DUP1 00002da2: RETURNDATACOPY 00002da3: RETURNDATASIZE 00002da4: PUSH1 0x00 00002da6: REVERT 00002da7: JUMPDEST 00002da8: POP 00002da9: POP 00002daa: POP 00002dab: POP 00002dac: PUSH1 0x40 00002dae: MLOAD 00002daf: RETURNDATASIZE 00002db0: PUSH1 0x20 00002db2: DUP2 00002db3: LT 00002db4: ISZERO 00002db5: PUSH2 0x2dbd 00002db8: JUMPI 00002db9: PUSH1 0x00 00002dbb: DUP1 00002dbc: REVERT 00002dbd: JUMPDEST 00002dbe: DUP2 00002dbf: ADD 00002dc0: SWAP1 00002dc1: DUP1 00002dc2: DUP1 00002dc3: MLOAD 00002dc4: SWAP1 00002dc5: PUSH1 0x20 00002dc7: ADD 00002dc8: SWAP1 00002dc9: SWAP3 00002dca: SWAP2 00002dcb: SWAP1 00002dcc: POP 00002dcd: POP 00002dce: POP 00002dcf: POP 00002dd0: PUSH32 0xc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f0377 00002df1: CALLER 00002df2: PUSH2 0x2e04 00002df5: DUP7 00002df6: DUP5 00002df7: PUSH2 0x5373 00002dfa: SWAP1 00002dfb: SWAP2 00002dfc: SWAP1 00002dfd: PUSH4 0xffffffff 00002e02: AND 00002e03: JUMP 00002e04: JUMPDEST 00002e05: PUSH1 0x40 00002e07: MLOAD 00002e08: DUP1 00002e09: DUP4 00002e0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e1f: AND 00002e20: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e35: AND 00002e36: DUP2 00002e37: MSTORE 00002e38: PUSH1 0x20 00002e3a: ADD 00002e3b: DUP3 00002e3c: DUP2 00002e3d: MSTORE 00002e3e: PUSH1 0x20 00002e40: ADD 00002e41: SWAP3 00002e42: POP 00002e43: POP 00002e44: POP 00002e45: PUSH1 0x40 00002e47: MLOAD 00002e48: DUP1 00002e49: SWAP2 00002e4a: SUB 00002e4b: SWAP1 00002e4c: LOG1 00002e4d: PUSH2 0x2e5f 00002e50: DUP5 00002e51: DUP3 00002e52: PUSH2 0x5373 00002e55: SWAP1 00002e56: SWAP2 00002e57: SWAP1 00002e58: PUSH4 0xffffffff 00002e5d: AND 00002e5e: JUMP 00002e5f: JUMPDEST 00002e60: SWAP3 00002e61: POP 00002e62: POP 00002e63: POP 00002e64: SWAP2 00002e65: SWAP1 00002e66: POP 00002e67: JUMP 00002e68: JUMPDEST 00002e69: PUSH1 0x00 00002e6b: PUSH1 0x0c 00002e6d: SLOAD 00002e6e: SWAP1 00002e6f: POP 00002e70: SWAP1 00002e71: JUMP 00002e72: JUMPDEST 00002e73: PUSH1 0x01 00002e75: PUSH1 0x03 00002e77: DUP2 00002e78: GT 00002e79: ISZERO 00002e7a: PUSH2 0x2e7f 00002e7d: JUMPI 00002e7e: INVALID 00002e7f: JUMPDEST 00002e80: PUSH1 0x14 00002e82: DUP1 00002e83: SWAP1 00002e84: SLOAD 00002e85: SWAP1 00002e86: PUSH2 0x0100 00002e89: EXP 00002e8a: SWAP1 00002e8b: DIV 00002e8c: PUSH1 0xff 00002e8e: AND 00002e8f: PUSH1 0x03 00002e91: DUP2 00002e92: GT 00002e93: ISZERO 00002e94: PUSH2 0x2e99 00002e97: JUMPI 00002e98: INVALID 00002e99: JUMPDEST 00002e9a: EQ 00002e9b: PUSH2 0x2f0c 00002e9e: JUMPI 00002e9f: PUSH1 0x40 00002ea1: MLOAD 00002ea2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002ec3: DUP2 00002ec4: MSTORE 00002ec5: PUSH1 0x04 00002ec7: ADD 00002ec8: DUP1 00002ec9: DUP1 00002eca: PUSH1 0x20 00002ecc: ADD 00002ecd: DUP3 00002ece: DUP2 00002ecf: SUB 00002ed0: DUP3 00002ed1: MSTORE 00002ed2: PUSH1 0x0d 00002ed4: DUP2 00002ed5: MSTORE 00002ed6: PUSH1 0x20 00002ed8: ADD 00002ed9: DUP1 00002eda: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00002efb: DUP2 00002efc: MSTORE 00002efd: POP 00002efe: PUSH1 0x20 00002f00: ADD 00002f01: SWAP2 00002f02: POP 00002f03: POP 00002f04: PUSH1 0x40 00002f06: MLOAD 00002f07: DUP1 00002f08: SWAP2 00002f09: SUB 00002f0a: SWAP1 00002f0b: REVERT 00002f0c: JUMPDEST 00002f0d: PUSH1 0x00 00002f0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f24: AND 00002f25: DUP2 00002f26: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f3b: AND 00002f3c: EQ 00002f3d: ISZERO 00002f3e: PUSH2 0x2faf 00002f41: JUMPI 00002f42: PUSH1 0x40 00002f44: MLOAD 00002f45: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002f66: DUP2 00002f67: MSTORE 00002f68: PUSH1 0x04 00002f6a: ADD 00002f6b: DUP1 00002f6c: DUP1 00002f6d: PUSH1 0x20 00002f6f: ADD 00002f70: DUP3 00002f71: DUP2 00002f72: SUB 00002f73: DUP3 00002f74: MSTORE 00002f75: PUSH1 0x1b 00002f77: DUP2 00002f78: MSTORE 00002f79: PUSH1 0x20 00002f7b: ADD 00002f7c: DUP1 00002f7d: PUSH32 0x6163636f756e7420697320746865207a65726f20616464726573730000000000 00002f9e: DUP2 00002f9f: MSTORE 00002fa0: POP 00002fa1: PUSH1 0x20 00002fa3: ADD 00002fa4: SWAP2 00002fa5: POP 00002fa6: POP 00002fa7: PUSH1 0x40 00002fa9: MLOAD 00002faa: DUP1 00002fab: SWAP2 00002fac: SUB 00002fad: SWAP1 00002fae: REVERT 00002faf: JUMPDEST 00002fb0: PUSH1 0x04 00002fb2: PUSH1 0x00 00002fb4: SWAP1 00002fb5: SLOAD 00002fb6: SWAP1 00002fb7: PUSH2 0x0100 00002fba: EXP 00002fbb: SWAP1 00002fbc: DIV 00002fbd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002fd2: AND 00002fd3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002fe8: AND 00002fe9: DUP2 00002fea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002fff: AND 00003000: EQ 00003001: ISZERO 00003002: PUSH2 0x3073 00003005: JUMPI 00003006: PUSH1 0x40 00003008: MLOAD 00003009: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000302a: DUP2 0000302b: MSTORE 0000302c: PUSH1 0x04 0000302e: ADD 0000302f: DUP1 00003030: DUP1 00003031: PUSH1 0x20 00003033: ADD 00003034: DUP3 00003035: DUP2 00003036: SUB 00003037: DUP3 00003038: MSTORE 00003039: PUSH1 0x20 0000303b: DUP2 0000303c: MSTORE 0000303d: PUSH1 0x20 0000303f: ADD 00003040: DUP1 00003041: PUSH32 0x6163636f756e742063616e206e6f74206265206f70657261746f7220706f6f6c 00003062: DUP2 00003063: MSTORE 00003064: POP 00003065: PUSH1 0x20 00003067: ADD 00003068: SWAP2 00003069: POP 0000306a: POP 0000306b: PUSH1 0x40 0000306d: MLOAD 0000306e: DUP1 0000306f: SWAP2 00003070: SUB 00003071: SWAP1 00003072: REVERT 00003073: JUMPDEST 00003074: PUSH1 0x01 00003076: PUSH1 0x00 00003078: SWAP1 00003079: SLOAD 0000307a: SWAP1 0000307b: PUSH2 0x0100 0000307e: EXP 0000307f: SWAP1 00003080: DIV 00003081: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003096: AND 00003097: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000030ac: AND 000030ad: DUP2 000030ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000030c3: AND 000030c4: EQ 000030c5: ISZERO 000030c6: PUSH2 0x311a 000030c9: JUMPI 000030ca: PUSH1 0x40 000030cc: MLOAD 000030cd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000030ee: DUP2 000030ef: MSTORE 000030f0: PUSH1 0x04 000030f2: ADD 000030f3: DUP1 000030f4: DUP1 000030f5: PUSH1 0x20 000030f7: ADD 000030f8: DUP3 000030f9: DUP2 000030fa: SUB 000030fb: DUP3 000030fc: MSTORE 000030fd: PUSH1 0x21 000030ff: DUP2 00003100: MSTORE 00003101: PUSH1 0x20 00003103: ADD 00003104: DUP1 00003105: PUSH2 0x5d8d 00003108: PUSH1 0x21 0000310a: SWAP2 0000310b: CODECOPY 0000310c: PUSH1 0x40 0000310e: ADD 0000310f: SWAP2 00003110: POP 00003111: POP 00003112: PUSH1 0x40 00003114: MLOAD 00003115: DUP1 00003116: SWAP2 00003117: SUB 00003118: SWAP1 00003119: REVERT 0000311a: JUMPDEST 0000311b: PUSH1 0x02 0000311d: PUSH1 0x00 0000311f: SWAP1 00003120: SLOAD 00003121: SWAP1 00003122: PUSH2 0x0100 00003125: EXP 00003126: SWAP1 00003127: DIV 00003128: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000313d: AND 0000313e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003153: AND 00003154: DUP2 00003155: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000316a: AND 0000316b: EQ 0000316c: ISZERO 0000316d: PUSH2 0x31de 00003170: JUMPI 00003171: PUSH1 0x40 00003173: MLOAD 00003174: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003195: DUP2 00003196: MSTORE 00003197: PUSH1 0x04 00003199: ADD 0000319a: DUP1 0000319b: DUP1 0000319c: PUSH1 0x20 0000319e: ADD 0000319f: DUP3 000031a0: DUP2 000031a1: SUB 000031a2: DUP3 000031a3: MSTORE 000031a4: PUSH1 0x1a 000031a6: DUP2 000031a7: MSTORE 000031a8: PUSH1 0x20 000031aa: ADD 000031ab: DUP1 000031ac: PUSH32 0x6163636f756e742063616e206e6f74206265204c5020706f6f6c000000000000 000031cd: DUP2 000031ce: MSTORE 000031cf: POP 000031d0: PUSH1 0x20 000031d2: ADD 000031d3: SWAP2 000031d4: POP 000031d5: POP 000031d6: PUSH1 0x40 000031d8: MLOAD 000031d9: DUP1 000031da: SWAP2 000031db: SUB 000031dc: SWAP1 000031dd: REVERT 000031de: JUMPDEST 000031df: CALLER 000031e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000031f5: AND 000031f6: DUP2 000031f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000320c: AND 0000320d: EQ 0000320e: ISZERO 0000320f: PUSH2 0x3280 00003212: JUMPI 00003213: PUSH1 0x40 00003215: MLOAD 00003216: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003237: DUP2 00003238: MSTORE 00003239: PUSH1 0x04 0000323b: ADD 0000323c: DUP1 0000323d: DUP1 0000323e: PUSH1 0x20 00003240: ADD 00003241: DUP3 00003242: DUP2 00003243: SUB 00003244: DUP3 00003245: MSTORE 00003246: PUSH1 0x20 00003248: DUP2 00003249: MSTORE 0000324a: PUSH1 0x20 0000324c: ADD 0000324d: DUP1 0000324e: PUSH32 0x6163636f756e742063616e206e6f742062652073656c66207265666572726572 0000326f: DUP2 00003270: MSTORE 00003271: POP 00003272: PUSH1 0x20 00003274: ADD 00003275: SWAP2 00003276: POP 00003277: POP 00003278: PUSH1 0x40 0000327a: MLOAD 0000327b: DUP1 0000327c: SWAP2 0000327d: SUB 0000327e: SWAP1 0000327f: REVERT 00003280: JUMPDEST 00003281: PUSH1 0x00 00003283: DUP1 00003284: DUP3 00003285: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000329a: AND 0000329b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000032b0: AND 000032b1: DUP2 000032b2: MSTORE 000032b3: PUSH1 0x20 000032b5: ADD 000032b6: SWAP1 000032b7: DUP2 000032b8: MSTORE 000032b9: PUSH1 0x20 000032bb: ADD 000032bc: PUSH1 0x00 000032be: KECCAK256 000032bf: PUSH1 0x03 000032c1: ADD 000032c2: PUSH1 0x01 000032c4: SWAP1 000032c5: SLOAD 000032c6: SWAP1 000032c7: PUSH2 0x0100 000032ca: EXP 000032cb: SWAP1 000032cc: DIV 000032cd: PUSH1 0xff 000032cf: AND 000032d0: PUSH2 0x3341 000032d3: JUMPI 000032d4: PUSH1 0x40 000032d6: MLOAD 000032d7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000032f8: DUP2 000032f9: MSTORE 000032fa: PUSH1 0x04 000032fc: ADD 000032fd: DUP1 000032fe: DUP1 000032ff: PUSH1 0x20 00003301: ADD 00003302: DUP3 00003303: DUP2 00003304: SUB 00003305: DUP3 00003306: MSTORE 00003307: PUSH1 0x18 00003309: DUP2 0000330a: MSTORE 0000330b: PUSH1 0x20 0000330d: ADD 0000330e: DUP1 0000330f: PUSH32 0x696e7661696c64207265666572726572206163636f756e740000000000000000 00003330: DUP2 00003331: MSTORE 00003332: POP 00003333: PUSH1 0x20 00003335: ADD 00003336: SWAP2 00003337: POP 00003338: POP 00003339: PUSH1 0x40 0000333b: MLOAD 0000333c: DUP1 0000333d: SWAP2 0000333e: SUB 0000333f: SWAP1 00003340: REVERT 00003341: JUMPDEST 00003342: PUSH1 0x00 00003344: DUP1 00003345: CALLER 00003346: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000335b: AND 0000335c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003371: AND 00003372: DUP2 00003373: MSTORE 00003374: PUSH1 0x20 00003376: ADD 00003377: SWAP1 00003378: DUP2 00003379: MSTORE 0000337a: PUSH1 0x20 0000337c: ADD 0000337d: PUSH1 0x00 0000337f: KECCAK256 00003380: PUSH1 0x03 00003382: ADD 00003383: PUSH1 0x01 00003385: SWAP1 00003386: SLOAD 00003387: SWAP1 00003388: PUSH2 0x0100 0000338b: EXP 0000338c: SWAP1 0000338d: DIV 0000338e: PUSH1 0xff 00003390: AND 00003391: PUSH2 0x3402 00003394: JUMPI 00003395: PUSH1 0x40 00003397: MLOAD 00003398: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000033b9: DUP2 000033ba: MSTORE 000033bb: PUSH1 0x04 000033bd: ADD 000033be: DUP1 000033bf: DUP1 000033c0: PUSH1 0x20 000033c2: ADD 000033c3: DUP3 000033c4: DUP2 000033c5: SUB 000033c6: DUP3 000033c7: MSTORE 000033c8: PUSH1 0x0f 000033ca: DUP2 000033cb: MSTORE 000033cc: PUSH1 0x20 000033ce: ADD 000033cf: DUP1 000033d0: PUSH32 0x696e76616c6964206163636f756e740000000000000000000000000000000000 000033f1: DUP2 000033f2: MSTORE 000033f3: POP 000033f4: PUSH1 0x20 000033f6: ADD 000033f7: SWAP2 000033f8: POP 000033f9: POP 000033fa: PUSH1 0x40 000033fc: MLOAD 000033fd: DUP1 000033fe: SWAP2 000033ff: SUB 00003400: SWAP1 00003401: REVERT 00003402: JUMPDEST 00003403: PUSH1 0x00 00003405: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000341a: AND 0000341b: PUSH1 0x0a 0000341d: PUSH1 0x00 0000341f: CALLER 00003420: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003435: AND 00003436: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000344b: AND 0000344c: DUP2 0000344d: MSTORE 0000344e: PUSH1 0x20 00003450: ADD 00003451: SWAP1 00003452: DUP2 00003453: MSTORE 00003454: PUSH1 0x20 00003456: ADD 00003457: PUSH1 0x00 00003459: KECCAK256 0000345a: PUSH1 0x00 0000345c: SWAP1 0000345d: SLOAD 0000345e: SWAP1 0000345f: PUSH2 0x0100 00003462: EXP 00003463: SWAP1 00003464: DIV 00003465: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000347a: AND 0000347b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003490: AND 00003491: EQ 00003492: PUSH2 0x3503 00003495: JUMPI 00003496: PUSH1 0x40 00003498: MLOAD 00003499: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000034ba: DUP2 000034bb: MSTORE 000034bc: PUSH1 0x04 000034be: ADD 000034bf: DUP1 000034c0: DUP1 000034c1: PUSH1 0x20 000034c3: ADD 000034c4: DUP3 000034c5: DUP2 000034c6: SUB 000034c7: DUP3 000034c8: MSTORE 000034c9: PUSH1 0x15 000034cb: DUP2 000034cc: MSTORE 000034cd: PUSH1 0x20 000034cf: ADD 000034d0: DUP1 000034d1: PUSH32 0x726566657272657220686173206265656e207365740000000000000000000000 000034f2: DUP2 000034f3: MSTORE 000034f4: POP 000034f5: PUSH1 0x20 000034f7: ADD 000034f8: SWAP2 000034f9: POP 000034fa: POP 000034fb: PUSH1 0x40 000034fd: MLOAD 000034fe: DUP1 000034ff: SWAP2 00003500: SUB 00003501: SWAP1 00003502: REVERT 00003503: JUMPDEST 00003504: DUP1 00003505: PUSH1 0x0a 00003507: PUSH1 0x00 00003509: CALLER 0000350a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000351f: AND 00003520: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003535: AND 00003536: DUP2 00003537: MSTORE 00003538: PUSH1 0x20 0000353a: ADD 0000353b: SWAP1 0000353c: DUP2 0000353d: MSTORE 0000353e: PUSH1 0x20 00003540: ADD 00003541: PUSH1 0x00 00003543: KECCAK256 00003544: PUSH1 0x00 00003546: PUSH2 0x0100 00003549: EXP 0000354a: DUP2 0000354b: SLOAD 0000354c: DUP2 0000354d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003562: MUL 00003563: NOT 00003564: AND 00003565: SWAP1 00003566: DUP4 00003567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000357c: AND 0000357d: MUL 0000357e: OR 0000357f: SWAP1 00003580: SSTORE 00003581: POP 00003582: PUSH1 0x0b 00003584: CALLER 00003585: SWAP1 00003586: DUP1 00003587: PUSH1 0x01 00003589: DUP2 0000358a: SLOAD 0000358b: ADD 0000358c: DUP1 0000358d: DUP3 0000358e: SSTORE 0000358f: DUP1 00003590: SWAP2 00003591: POP 00003592: POP 00003593: PUSH1 0x01 00003595: SWAP1 00003596: SUB 00003597: SWAP1 00003598: PUSH1 0x00 0000359a: MSTORE 0000359b: PUSH1 0x20 0000359d: PUSH1 0x00 0000359f: KECCAK256 000035a0: ADD 000035a1: PUSH1 0x00 000035a3: SWAP1 000035a4: SWAP2 000035a5: SWAP1 000035a6: SWAP2 000035a7: SWAP1 000035a8: SWAP2 000035a9: PUSH2 0x0100 000035ac: EXP 000035ad: DUP2 000035ae: SLOAD 000035af: DUP2 000035b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000035c5: MUL 000035c6: NOT 000035c7: AND 000035c8: SWAP1 000035c9: DUP4 000035ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000035df: AND 000035e0: MUL 000035e1: OR 000035e2: SWAP1 000035e3: SSTORE 000035e4: POP 000035e5: POP 000035e6: JUMP 000035e7: JUMPDEST 000035e8: PUSH1 0x00 000035ea: PUSH2 0x3605 000035ed: PUSH1 0x05 000035ef: SLOAD 000035f0: PUSH2 0x35f7 000035f3: PUSH2 0x5898 000035f6: JUMP 000035f7: JUMPDEST 000035f8: PUSH2 0x5373 000035fb: SWAP1 000035fc: SWAP2 000035fd: SWAP1 000035fe: PUSH4 0xffffffff 00003603: AND 00003604: JUMP 00003605: JUMPDEST 00003606: SWAP1 00003607: POP 00003608: SWAP1 00003609: JUMP 0000360a: JUMPDEST 0000360b: PUSH1 0x00 0000360d: PUSH1 0x01 0000360f: PUSH1 0x03 00003611: DUP2 00003612: GT 00003613: ISZERO 00003614: PUSH2 0x3619 00003617: JUMPI 00003618: INVALID 00003619: JUMPDEST 0000361a: PUSH1 0x14 0000361c: DUP1 0000361d: SWAP1 0000361e: SLOAD 0000361f: SWAP1 00003620: PUSH2 0x0100 00003623: EXP 00003624: SWAP1 00003625: DIV 00003626: PUSH1 0xff 00003628: AND 00003629: PUSH1 0x03 0000362b: DUP2 0000362c: GT 0000362d: ISZERO 0000362e: PUSH2 0x3633 00003631: JUMPI 00003632: INVALID 00003633: JUMPDEST 00003634: EQ 00003635: PUSH2 0x36a6 00003638: JUMPI 00003639: PUSH1 0x40 0000363b: MLOAD 0000363c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000365d: DUP2 0000365e: MSTORE 0000365f: PUSH1 0x04 00003661: ADD 00003662: DUP1 00003663: DUP1 00003664: PUSH1 0x20 00003666: ADD 00003667: DUP3 00003668: DUP2 00003669: SUB 0000366a: DUP3 0000366b: MSTORE 0000366c: PUSH1 0x0d 0000366e: DUP2 0000366f: MSTORE 00003670: PUSH1 0x20 00003672: ADD 00003673: DUP1 00003674: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00003695: DUP2 00003696: MSTORE 00003697: POP 00003698: PUSH1 0x20 0000369a: ADD 0000369b: SWAP2 0000369c: POP 0000369d: POP 0000369e: PUSH1 0x40 000036a0: MLOAD 000036a1: DUP1 000036a2: SWAP2 000036a3: SUB 000036a4: SWAP1 000036a5: REVERT 000036a6: JUMPDEST 000036a7: CALLER 000036a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000036bd: AND 000036be: PUSH1 0x04 000036c0: PUSH1 0x00 000036c2: SWAP1 000036c3: SLOAD 000036c4: SWAP1 000036c5: PUSH2 0x0100 000036c8: EXP 000036c9: SWAP1 000036ca: DIV 000036cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000036e0: AND 000036e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000036f6: AND 000036f7: EQ 000036f8: ISZERO 000036f9: DUP1 000036fa: ISZERO 000036fb: PUSH2 0x3752 000036fe: JUMPI 000036ff: POP 00003700: CALLER 00003701: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003716: AND 00003717: PUSH1 0x02 00003719: PUSH1 0x00 0000371b: SWAP1 0000371c: SLOAD 0000371d: SWAP1 0000371e: PUSH2 0x0100 00003721: EXP 00003722: SWAP1 00003723: DIV 00003724: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003739: AND 0000373a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000374f: AND 00003750: EQ 00003751: ISZERO 00003752: JUMPDEST 00003753: PUSH2 0x37c4 00003756: JUMPI 00003757: PUSH1 0x40 00003759: MLOAD 0000375a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000377b: DUP2 0000377c: MSTORE 0000377d: PUSH1 0x04 0000377f: ADD 00003780: DUP1 00003781: DUP1 00003782: PUSH1 0x20 00003784: ADD 00003785: DUP3 00003786: DUP2 00003787: SUB 00003788: DUP3 00003789: MSTORE 0000378a: PUSH1 0x1a 0000378c: DUP2 0000378d: MSTORE 0000378e: PUSH1 0x20 00003790: ADD 00003791: DUP1 00003792: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 000037b3: DUP2 000037b4: MSTORE 000037b5: POP 000037b6: PUSH1 0x20 000037b8: ADD 000037b9: SWAP2 000037ba: POP 000037bb: POP 000037bc: PUSH1 0x40 000037be: MLOAD 000037bf: DUP1 000037c0: SWAP2 000037c1: SUB 000037c2: SWAP1 000037c3: REVERT 000037c4: JUMPDEST 000037c5: PUSH1 0x00 000037c7: CALLVALUE 000037c8: GT 000037c9: PUSH2 0x383a 000037cc: JUMPI 000037cd: PUSH1 0x40 000037cf: MLOAD 000037d0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000037f1: DUP2 000037f2: MSTORE 000037f3: PUSH1 0x04 000037f5: ADD 000037f6: DUP1 000037f7: DUP1 000037f8: PUSH1 0x20 000037fa: ADD 000037fb: DUP3 000037fc: DUP2 000037fd: SUB 000037fe: DUP3 000037ff: MSTORE 00003800: PUSH1 0x0c 00003802: DUP2 00003803: MSTORE 00003804: PUSH1 0x20 00003806: ADD 00003807: DUP1 00003808: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 00003829: DUP2 0000382a: MSTORE 0000382b: POP 0000382c: PUSH1 0x20 0000382e: ADD 0000382f: SWAP2 00003830: POP 00003831: POP 00003832: PUSH1 0x40 00003834: MLOAD 00003835: DUP1 00003836: SWAP2 00003837: SUB 00003838: SWAP1 00003839: REVERT 0000383a: JUMPDEST 0000383b: PUSH1 0x00 0000383d: DUP1 0000383e: CALLER 0000383f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003854: AND 00003855: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000386a: AND 0000386b: DUP2 0000386c: MSTORE 0000386d: PUSH1 0x20 0000386f: ADD 00003870: SWAP1 00003871: DUP2 00003872: MSTORE 00003873: PUSH1 0x20 00003875: ADD 00003876: PUSH1 0x00 00003878: KECCAK256 00003879: PUSH1 0x03 0000387b: ADD 0000387c: PUSH1 0x01 0000387e: SWAP1 0000387f: SLOAD 00003880: SWAP1 00003881: PUSH2 0x0100 00003884: EXP 00003885: SWAP1 00003886: DIV 00003887: PUSH1 0xff 00003889: AND 0000388a: PUSH2 0x3899 0000388d: JUMPI 0000388e: PUSH2 0x3898 00003891: CALLER 00003892: PUSH1 0x00 00003894: PUSH2 0x53bd 00003897: JUMP 00003898: JUMPDEST 00003899: JUMPDEST 0000389a: PUSH2 0x38a5 0000389d: CALLER 0000389e: PUSH1 0x00 000038a0: DUP1 000038a1: PUSH2 0x52ca 000038a4: JUMP 000038a5: JUMPDEST 000038a6: PUSH2 0x38f9 000038a9: CALLVALUE 000038aa: PUSH1 0x00 000038ac: DUP1 000038ad: CALLER 000038ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038c3: AND 000038c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038d9: AND 000038da: DUP2 000038db: MSTORE 000038dc: PUSH1 0x20 000038de: ADD 000038df: SWAP1 000038e0: DUP2 000038e1: MSTORE 000038e2: PUSH1 0x20 000038e4: ADD 000038e5: PUSH1 0x00 000038e7: KECCAK256 000038e8: PUSH1 0x01 000038ea: ADD 000038eb: SLOAD 000038ec: PUSH2 0x55fa 000038ef: SWAP1 000038f0: SWAP2 000038f1: SWAP1 000038f2: PUSH4 0xffffffff 000038f7: AND 000038f8: JUMP 000038f9: JUMPDEST 000038fa: PUSH1 0x00 000038fc: DUP1 000038fd: CALLER 000038fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003913: AND 00003914: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003929: AND 0000392a: DUP2 0000392b: MSTORE 0000392c: PUSH1 0x20 0000392e: ADD 0000392f: SWAP1 00003930: DUP2 00003931: MSTORE 00003932: PUSH1 0x20 00003934: ADD 00003935: PUSH1 0x00 00003937: KECCAK256 00003938: PUSH1 0x01 0000393a: ADD 0000393b: DUP2 0000393c: SWAP1 0000393d: SSTORE 0000393e: POP 0000393f: PUSH2 0x3953 00003942: CALLVALUE 00003943: PUSH1 0x06 00003945: SLOAD 00003946: PUSH2 0x55fa 00003949: SWAP1 0000394a: SWAP2 0000394b: SWAP1 0000394c: PUSH4 0xffffffff 00003951: AND 00003952: JUMP 00003953: JUMPDEST 00003954: PUSH1 0x06 00003956: DUP2 00003957: SWAP1 00003958: SSTORE 00003959: POP 0000395a: PUSH32 0x3a74d241e62d1aa30f6bbc17cfafcd109975a604bc6340fccd699cbd4231c29f 0000397b: CALLER 0000397c: PUSH1 0x00 0000397e: DUP1 0000397f: CALLER 00003980: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003995: AND 00003996: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039ab: AND 000039ac: DUP2 000039ad: MSTORE 000039ae: PUSH1 0x20 000039b0: ADD 000039b1: SWAP1 000039b2: DUP2 000039b3: MSTORE 000039b4: PUSH1 0x20 000039b6: ADD 000039b7: PUSH1 0x00 000039b9: KECCAK256 000039ba: PUSH1 0x01 000039bc: ADD 000039bd: SLOAD 000039be: PUSH1 0x40 000039c0: MLOAD 000039c1: DUP1 000039c2: DUP4 000039c3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039d8: AND 000039d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039ee: AND 000039ef: DUP2 000039f0: MSTORE 000039f1: PUSH1 0x20 000039f3: ADD 000039f4: DUP3 000039f5: DUP2 000039f6: MSTORE 000039f7: PUSH1 0x20 000039f9: ADD 000039fa: SWAP3 000039fb: POP 000039fc: POP 000039fd: POP 000039fe: PUSH1 0x40 00003a00: MLOAD 00003a01: DUP1 00003a02: SWAP2 00003a03: SUB 00003a04: SWAP1 00003a05: LOG1 00003a06: PUSH1 0x00 00003a08: DUP1 00003a09: CALLER 00003a0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a1f: AND 00003a20: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a35: AND 00003a36: DUP2 00003a37: MSTORE 00003a38: PUSH1 0x20 00003a3a: ADD 00003a3b: SWAP1 00003a3c: DUP2 00003a3d: MSTORE 00003a3e: PUSH1 0x20 00003a40: ADD 00003a41: PUSH1 0x00 00003a43: KECCAK256 00003a44: PUSH1 0x01 00003a46: ADD 00003a47: SLOAD 00003a48: SWAP1 00003a49: POP 00003a4a: SWAP1 00003a4b: JUMP 00003a4c: JUMPDEST 00003a4d: CALLER 00003a4e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a63: AND 00003a64: PUSH1 0x01 00003a66: PUSH1 0x00 00003a68: SWAP1 00003a69: SLOAD 00003a6a: SWAP1 00003a6b: PUSH2 0x0100 00003a6e: EXP 00003a6f: SWAP1 00003a70: DIV 00003a71: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a86: AND 00003a87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a9c: AND 00003a9d: EQ 00003a9e: PUSH2 0x3b0f 00003aa1: JUMPI 00003aa2: PUSH1 0x40 00003aa4: MLOAD 00003aa5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ac6: DUP2 00003ac7: MSTORE 00003ac8: PUSH1 0x04 00003aca: ADD 00003acb: DUP1 00003acc: DUP1 00003acd: PUSH1 0x20 00003acf: ADD 00003ad0: DUP3 00003ad1: DUP2 00003ad2: SUB 00003ad3: DUP3 00003ad4: MSTORE 00003ad5: PUSH1 0x1a 00003ad7: DUP2 00003ad8: MSTORE 00003ad9: PUSH1 0x20 00003adb: ADD 00003adc: DUP1 00003add: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00003afe: DUP2 00003aff: MSTORE 00003b00: POP 00003b01: PUSH1 0x20 00003b03: ADD 00003b04: SWAP2 00003b05: POP 00003b06: POP 00003b07: PUSH1 0x40 00003b09: MLOAD 00003b0a: DUP1 00003b0b: SWAP2 00003b0c: SUB 00003b0d: SWAP1 00003b0e: REVERT 00003b0f: JUMPDEST 00003b10: PUSH1 0x00 00003b12: PUSH1 0x03 00003b14: DUP2 00003b15: GT 00003b16: ISZERO 00003b17: PUSH2 0x3b1c 00003b1a: JUMPI 00003b1b: INVALID 00003b1c: JUMPDEST 00003b1d: PUSH1 0x14 00003b1f: DUP1 00003b20: SWAP1 00003b21: SLOAD 00003b22: SWAP1 00003b23: PUSH2 0x0100 00003b26: EXP 00003b27: SWAP1 00003b28: DIV 00003b29: PUSH1 0xff 00003b2b: AND 00003b2c: PUSH1 0x03 00003b2e: DUP2 00003b2f: GT 00003b30: ISZERO 00003b31: PUSH2 0x3b36 00003b34: JUMPI 00003b35: INVALID 00003b36: JUMPDEST 00003b37: EQ 00003b38: PUSH2 0x3ba9 00003b3b: JUMPI 00003b3c: PUSH1 0x40 00003b3e: MLOAD 00003b3f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003b60: DUP2 00003b61: MSTORE 00003b62: PUSH1 0x04 00003b64: ADD 00003b65: DUP1 00003b66: DUP1 00003b67: PUSH1 0x20 00003b69: ADD 00003b6a: DUP3 00003b6b: DUP2 00003b6c: SUB 00003b6d: DUP3 00003b6e: MSTORE 00003b6f: PUSH1 0x0d 00003b71: DUP2 00003b72: MSTORE 00003b73: PUSH1 0x20 00003b75: ADD 00003b76: DUP1 00003b77: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00003b98: DUP2 00003b99: MSTORE 00003b9a: POP 00003b9b: PUSH1 0x20 00003b9d: ADD 00003b9e: SWAP2 00003b9f: POP 00003ba0: POP 00003ba1: PUSH1 0x40 00003ba3: MLOAD 00003ba4: DUP1 00003ba5: SWAP2 00003ba6: SUB 00003ba7: SWAP1 00003ba8: REVERT 00003ba9: JUMPDEST 00003baa: PUSH2 0x3bc4 00003bad: PUSH1 0x13 00003baf: SLOAD 00003bb0: PUSH1 0x0a 00003bb2: EXP 00003bb3: PUSH3 0x200b20 00003bb7: PUSH2 0x5759 00003bba: SWAP1 00003bbb: SWAP2 00003bbc: SWAP1 00003bbd: PUSH4 0xffffffff 00003bc2: AND 00003bc3: JUMP 00003bc4: JUMPDEST 00003bc5: DUP2 00003bc6: EQ 00003bc7: PUSH2 0x3c38 00003bca: JUMPI 00003bcb: PUSH1 0x40 00003bcd: MLOAD 00003bce: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003bef: DUP2 00003bf0: MSTORE 00003bf1: PUSH1 0x04 00003bf3: ADD 00003bf4: DUP1 00003bf5: DUP1 00003bf6: PUSH1 0x20 00003bf8: ADD 00003bf9: DUP3 00003bfa: DUP2 00003bfb: SUB 00003bfc: DUP3 00003bfd: MSTORE 00003bfe: PUSH1 0x1a 00003c00: DUP2 00003c01: MSTORE 00003c02: PUSH1 0x20 00003c04: ADD 00003c05: DUP1 00003c06: PUSH32 0x77726f6e6720746f74616c20737570706c7920666f72205a4453000000000000 00003c27: DUP2 00003c28: MSTORE 00003c29: POP 00003c2a: PUSH1 0x20 00003c2c: ADD 00003c2d: SWAP2 00003c2e: POP 00003c2f: POP 00003c30: PUSH1 0x40 00003c32: MLOAD 00003c33: DUP1 00003c34: SWAP2 00003c35: SUB 00003c36: SWAP1 00003c37: REVERT 00003c38: JUMPDEST 00003c39: PUSH1 0x00 00003c3b: PUSH1 0x14 00003c3d: PUSH1 0x00 00003c3f: SWAP1 00003c40: SLOAD 00003c41: SWAP1 00003c42: PUSH2 0x0100 00003c45: EXP 00003c46: SWAP1 00003c47: DIV 00003c48: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003c5d: AND 00003c5e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003c73: AND 00003c74: PUSH4 0xdd62ed3e 00003c79: CALLER 00003c7a: ADDRESS 00003c7b: PUSH1 0x40 00003c7d: MLOAD 00003c7e: DUP4 00003c7f: PUSH4 0xffffffff 00003c84: AND 00003c85: PUSH1 0xe0 00003c87: SHL 00003c88: DUP2 00003c89: MSTORE 00003c8a: PUSH1 0x04 00003c8c: ADD 00003c8d: DUP1 00003c8e: DUP4 00003c8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ca4: AND 00003ca5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cba: AND 00003cbb: DUP2 00003cbc: MSTORE 00003cbd: PUSH1 0x20 00003cbf: ADD 00003cc0: DUP3 00003cc1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cd6: AND 00003cd7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cec: AND 00003ced: DUP2 00003cee: MSTORE 00003cef: PUSH1 0x20 00003cf1: ADD 00003cf2: SWAP3 00003cf3: POP 00003cf4: POP 00003cf5: POP 00003cf6: PUSH1 0x20 00003cf8: PUSH1 0x40 00003cfa: MLOAD 00003cfb: DUP1 00003cfc: DUP4 00003cfd: SUB 00003cfe: DUP2 00003cff: DUP7 00003d00: DUP1 00003d01: EXTCODESIZE 00003d02: ISZERO 00003d03: DUP1 00003d04: ISZERO 00003d05: PUSH2 0x3d0d 00003d08: JUMPI 00003d09: PUSH1 0x00 00003d0b: DUP1 00003d0c: REVERT 00003d0d: JUMPDEST 00003d0e: POP 00003d0f: GAS 00003d10: STATICCALL 00003d11: ISZERO 00003d12: DUP1 00003d13: ISZERO 00003d14: PUSH2 0x3d21 00003d17: JUMPI 00003d18: RETURNDATASIZE 00003d19: PUSH1 0x00 00003d1b: DUP1 00003d1c: RETURNDATACOPY 00003d1d: RETURNDATASIZE 00003d1e: PUSH1 0x00 00003d20: REVERT 00003d21: JUMPDEST 00003d22: POP 00003d23: POP 00003d24: POP 00003d25: POP 00003d26: PUSH1 0x40 00003d28: MLOAD 00003d29: RETURNDATASIZE 00003d2a: PUSH1 0x20 00003d2c: DUP2 00003d2d: LT 00003d2e: ISZERO 00003d2f: PUSH2 0x3d37 00003d32: JUMPI 00003d33: PUSH1 0x00 00003d35: DUP1 00003d36: REVERT 00003d37: JUMPDEST 00003d38: DUP2 00003d39: ADD 00003d3a: SWAP1 00003d3b: DUP1 00003d3c: DUP1 00003d3d: MLOAD 00003d3e: SWAP1 00003d3f: PUSH1 0x20 00003d41: ADD 00003d42: SWAP1 00003d43: SWAP3 00003d44: SWAP2 00003d45: SWAP1 00003d46: POP 00003d47: POP 00003d48: POP 00003d49: SWAP1 00003d4a: POP 00003d4b: DUP2 00003d4c: DUP2 00003d4d: LT 00003d4e: ISZERO 00003d4f: PUSH2 0x3dc0 00003d52: JUMPI 00003d53: PUSH1 0x40 00003d55: MLOAD 00003d56: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003d77: DUP2 00003d78: MSTORE 00003d79: PUSH1 0x04 00003d7b: ADD 00003d7c: DUP1 00003d7d: DUP1 00003d7e: PUSH1 0x20 00003d80: ADD 00003d81: DUP3 00003d82: DUP2 00003d83: SUB 00003d84: DUP3 00003d85: MSTORE 00003d86: PUSH1 0x19 00003d88: DUP2 00003d89: MSTORE 00003d8a: PUSH1 0x20 00003d8c: ADD 00003d8d: DUP1 00003d8e: PUSH32 0x636865636b2074686520746f6b656e20616c6c6f77616e636500000000000000 00003daf: DUP2 00003db0: MSTORE 00003db1: POP 00003db2: PUSH1 0x20 00003db4: ADD 00003db5: SWAP2 00003db6: POP 00003db7: POP 00003db8: PUSH1 0x40 00003dba: MLOAD 00003dbb: DUP1 00003dbc: SWAP2 00003dbd: SUB 00003dbe: SWAP1 00003dbf: REVERT 00003dc0: JUMPDEST 00003dc1: PUSH1 0x01 00003dc3: PUSH1 0x14 00003dc5: DUP1 00003dc6: PUSH2 0x0100 00003dc9: EXP 00003dca: DUP2 00003dcb: SLOAD 00003dcc: DUP2 00003dcd: PUSH1 0xff 00003dcf: MUL 00003dd0: NOT 00003dd1: AND 00003dd2: SWAP1 00003dd3: DUP4 00003dd4: PUSH1 0x03 00003dd6: DUP2 00003dd7: GT 00003dd8: ISZERO 00003dd9: PUSH2 0x3dde 00003ddc: JUMPI 00003ddd: INVALID 00003dde: JUMPDEST 00003ddf: MUL 00003de0: OR 00003de1: SWAP1 00003de2: SSTORE 00003de3: POP 00003de4: PUSH1 0x14 00003de6: PUSH1 0x00 00003de8: SWAP1 00003de9: SLOAD 00003dea: SWAP1 00003deb: PUSH2 0x0100 00003dee: EXP 00003def: SWAP1 00003df0: DIV 00003df1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e06: AND 00003e07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e1c: AND 00003e1d: PUSH4 0x23b872dd 00003e22: CALLER 00003e23: ADDRESS 00003e24: DUP6 00003e25: PUSH1 0x40 00003e27: MLOAD 00003e28: DUP5 00003e29: PUSH4 0xffffffff 00003e2e: AND 00003e2f: PUSH1 0xe0 00003e31: SHL 00003e32: DUP2 00003e33: MSTORE 00003e34: PUSH1 0x04 00003e36: ADD 00003e37: DUP1 00003e38: DUP5 00003e39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e4e: AND 00003e4f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e64: AND 00003e65: DUP2 00003e66: MSTORE 00003e67: PUSH1 0x20 00003e69: ADD 00003e6a: DUP4 00003e6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e80: AND 00003e81: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e96: AND 00003e97: DUP2 00003e98: MSTORE 00003e99: PUSH1 0x20 00003e9b: ADD 00003e9c: DUP3 00003e9d: DUP2 00003e9e: MSTORE 00003e9f: PUSH1 0x20 00003ea1: ADD 00003ea2: SWAP4 00003ea3: POP 00003ea4: POP 00003ea5: POP 00003ea6: POP 00003ea7: PUSH1 0x20 00003ea9: PUSH1 0x40 00003eab: MLOAD 00003eac: DUP1 00003ead: DUP4 00003eae: SUB 00003eaf: DUP2 00003eb0: PUSH1 0x00 00003eb2: DUP8 00003eb3: DUP1 00003eb4: EXTCODESIZE 00003eb5: ISZERO 00003eb6: DUP1 00003eb7: ISZERO 00003eb8: PUSH2 0x3ec0 00003ebb: JUMPI 00003ebc: PUSH1 0x00 00003ebe: DUP1 00003ebf: REVERT 00003ec0: JUMPDEST 00003ec1: POP 00003ec2: GAS 00003ec3: CALL 00003ec4: ISZERO 00003ec5: DUP1 00003ec6: ISZERO 00003ec7: PUSH2 0x3ed4 00003eca: JUMPI 00003ecb: RETURNDATASIZE 00003ecc: PUSH1 0x00 00003ece: DUP1 00003ecf: RETURNDATACOPY 00003ed0: RETURNDATASIZE 00003ed1: PUSH1 0x00 00003ed3: REVERT 00003ed4: JUMPDEST 00003ed5: POP 00003ed6: POP 00003ed7: POP 00003ed8: POP 00003ed9: PUSH1 0x40 00003edb: MLOAD 00003edc: RETURNDATASIZE 00003edd: PUSH1 0x20 00003edf: DUP2 00003ee0: LT 00003ee1: ISZERO 00003ee2: PUSH2 0x3eea 00003ee5: JUMPI 00003ee6: PUSH1 0x00 00003ee8: DUP1 00003ee9: REVERT 00003eea: JUMPDEST 00003eeb: DUP2 00003eec: ADD 00003eed: SWAP1 00003eee: DUP1 00003eef: DUP1 00003ef0: MLOAD 00003ef1: SWAP1 00003ef2: PUSH1 0x20 00003ef4: ADD 00003ef5: SWAP1 00003ef6: SWAP3 00003ef7: SWAP2 00003ef8: SWAP1 00003ef9: POP 00003efa: POP 00003efb: POP 00003efc: POP 00003efd: POP 00003efe: POP 00003eff: JUMP 00003f00: JUMPDEST 00003f01: PUSH1 0x00 00003f03: PUSH1 0x01 00003f05: PUSH1 0x03 00003f07: DUP2 00003f08: GT 00003f09: ISZERO 00003f0a: PUSH2 0x3f0f 00003f0d: JUMPI 00003f0e: INVALID 00003f0f: JUMPDEST 00003f10: PUSH1 0x14 00003f12: DUP1 00003f13: SWAP1 00003f14: SLOAD 00003f15: SWAP1 00003f16: PUSH2 0x0100 00003f19: EXP 00003f1a: SWAP1 00003f1b: DIV 00003f1c: PUSH1 0xff 00003f1e: AND 00003f1f: PUSH1 0x03 00003f21: DUP2 00003f22: GT 00003f23: ISZERO 00003f24: PUSH2 0x3f29 00003f27: JUMPI 00003f28: INVALID 00003f29: JUMPDEST 00003f2a: EQ 00003f2b: PUSH2 0x3f9c 00003f2e: JUMPI 00003f2f: PUSH1 0x40 00003f31: MLOAD 00003f32: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003f53: DUP2 00003f54: MSTORE 00003f55: PUSH1 0x04 00003f57: ADD 00003f58: DUP1 00003f59: DUP1 00003f5a: PUSH1 0x20 00003f5c: ADD 00003f5d: DUP3 00003f5e: DUP2 00003f5f: SUB 00003f60: DUP3 00003f61: MSTORE 00003f62: PUSH1 0x0d 00003f64: DUP2 00003f65: MSTORE 00003f66: PUSH1 0x20 00003f68: ADD 00003f69: DUP1 00003f6a: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00003f8b: DUP2 00003f8c: MSTORE 00003f8d: POP 00003f8e: PUSH1 0x20 00003f90: ADD 00003f91: SWAP2 00003f92: POP 00003f93: POP 00003f94: PUSH1 0x40 00003f96: MLOAD 00003f97: DUP1 00003f98: SWAP2 00003f99: SUB 00003f9a: SWAP1 00003f9b: REVERT 00003f9c: JUMPDEST 00003f9d: CALLER 00003f9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003fb3: AND 00003fb4: PUSH1 0x04 00003fb6: PUSH1 0x00 00003fb8: SWAP1 00003fb9: SLOAD 00003fba: SWAP1 00003fbb: PUSH2 0x0100 00003fbe: EXP 00003fbf: SWAP1 00003fc0: DIV 00003fc1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003fd6: AND 00003fd7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003fec: AND 00003fed: EQ 00003fee: PUSH2 0x405f 00003ff1: JUMPI 00003ff2: PUSH1 0x40 00003ff4: MLOAD 00003ff5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004016: DUP2 00004017: MSTORE 00004018: PUSH1 0x04 0000401a: ADD 0000401b: DUP1 0000401c: DUP1 0000401d: PUSH1 0x20 0000401f: ADD 00004020: DUP3 00004021: DUP2 00004022: SUB 00004023: DUP3 00004024: MSTORE 00004025: PUSH1 0x1a 00004027: DUP2 00004028: MSTORE 00004029: PUSH1 0x20 0000402b: ADD 0000402c: DUP1 0000402d: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 0000404e: DUP2 0000404f: MSTORE 00004050: POP 00004051: PUSH1 0x20 00004053: ADD 00004054: SWAP2 00004055: POP 00004056: POP 00004057: PUSH1 0x40 00004059: MLOAD 0000405a: DUP1 0000405b: SWAP2 0000405c: SUB 0000405d: SWAP1 0000405e: REVERT 0000405f: JUMPDEST 00004060: PUSH1 0x00 00004062: DUP3 00004063: GT 00004064: PUSH2 0x40d5 00004067: JUMPI 00004068: PUSH1 0x40 0000406a: MLOAD 0000406b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000408c: DUP2 0000408d: MSTORE 0000408e: PUSH1 0x04 00004090: ADD 00004091: DUP1 00004092: DUP1 00004093: PUSH1 0x20 00004095: ADD 00004096: DUP3 00004097: DUP2 00004098: SUB 00004099: DUP3 0000409a: MSTORE 0000409b: PUSH1 0x0c 0000409d: DUP2 0000409e: MSTORE 0000409f: PUSH1 0x20 000040a1: ADD 000040a2: DUP1 000040a3: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 000040c4: DUP2 000040c5: MSTORE 000040c6: POP 000040c7: PUSH1 0x20 000040c9: ADD 000040ca: SWAP2 000040cb: POP 000040cc: POP 000040cd: PUSH1 0x40 000040cf: MLOAD 000040d0: DUP1 000040d1: SWAP2 000040d2: SUB 000040d3: SWAP1 000040d4: REVERT 000040d5: JUMPDEST 000040d6: PUSH1 0x00 000040d8: PUSH1 0x14 000040da: PUSH1 0x00 000040dc: SWAP1 000040dd: SLOAD 000040de: SWAP1 000040df: PUSH2 0x0100 000040e2: EXP 000040e3: SWAP1 000040e4: DIV 000040e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000040fa: AND 000040fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004110: AND 00004111: PUSH4 0x70a08231 00004116: ADDRESS 00004117: PUSH1 0x40 00004119: MLOAD 0000411a: DUP3 0000411b: PUSH4 0xffffffff 00004120: AND 00004121: PUSH1 0xe0 00004123: SHL 00004124: DUP2 00004125: MSTORE 00004126: PUSH1 0x04 00004128: ADD 00004129: DUP1 0000412a: DUP3 0000412b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004140: AND 00004141: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004156: AND 00004157: DUP2 00004158: MSTORE 00004159: PUSH1 0x20 0000415b: ADD 0000415c: SWAP2 0000415d: POP 0000415e: POP 0000415f: PUSH1 0x20 00004161: PUSH1 0x40 00004163: MLOAD 00004164: DUP1 00004165: DUP4 00004166: SUB 00004167: DUP2 00004168: DUP7 00004169: DUP1 0000416a: EXTCODESIZE 0000416b: ISZERO 0000416c: DUP1 0000416d: ISZERO 0000416e: PUSH2 0x4176 00004171: JUMPI 00004172: PUSH1 0x00 00004174: DUP1 00004175: REVERT 00004176: JUMPDEST 00004177: POP 00004178: GAS 00004179: STATICCALL 0000417a: ISZERO 0000417b: DUP1 0000417c: ISZERO 0000417d: PUSH2 0x418a 00004180: JUMPI 00004181: RETURNDATASIZE 00004182: PUSH1 0x00 00004184: DUP1 00004185: RETURNDATACOPY 00004186: RETURNDATASIZE 00004187: PUSH1 0x00 00004189: REVERT 0000418a: JUMPDEST 0000418b: POP 0000418c: POP 0000418d: POP 0000418e: POP 0000418f: PUSH1 0x40 00004191: MLOAD 00004192: RETURNDATASIZE 00004193: PUSH1 0x20 00004195: DUP2 00004196: LT 00004197: ISZERO 00004198: PUSH2 0x41a0 0000419b: JUMPI 0000419c: PUSH1 0x00 0000419e: DUP1 0000419f: REVERT 000041a0: JUMPDEST 000041a1: DUP2 000041a2: ADD 000041a3: SWAP1 000041a4: DUP1 000041a5: DUP1 000041a6: MLOAD 000041a7: SWAP1 000041a8: PUSH1 0x20 000041aa: ADD 000041ab: SWAP1 000041ac: SWAP3 000041ad: SWAP2 000041ae: SWAP1 000041af: POP 000041b0: POP 000041b1: POP 000041b2: SWAP1 000041b3: POP 000041b4: DUP3 000041b5: DUP2 000041b6: LT 000041b7: ISZERO 000041b8: PUSH2 0x4229 000041bb: JUMPI 000041bc: PUSH1 0x40 000041be: MLOAD 000041bf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000041e0: DUP2 000041e1: MSTORE 000041e2: PUSH1 0x04 000041e4: ADD 000041e5: DUP1 000041e6: DUP1 000041e7: PUSH1 0x20 000041e9: ADD 000041ea: DUP3 000041eb: DUP2 000041ec: SUB 000041ed: DUP3 000041ee: MSTORE 000041ef: PUSH1 0x1d 000041f1: DUP2 000041f2: MSTORE 000041f3: PUSH1 0x20 000041f5: ADD 000041f6: DUP1 000041f7: PUSH32 0x696e73756666696369656e74207a647320666f72207769746864726177000000 00004218: DUP2 00004219: MSTORE 0000421a: POP 0000421b: PUSH1 0x20 0000421d: ADD 0000421e: SWAP2 0000421f: POP 00004220: POP 00004221: PUSH1 0x40 00004223: MLOAD 00004224: DUP1 00004225: SWAP2 00004226: SUB 00004227: SWAP1 00004228: REVERT 00004229: JUMPDEST 0000422a: PUSH1 0x00 0000422c: PUSH2 0x4247 0000422f: PUSH1 0x05 00004231: SLOAD 00004232: PUSH2 0x4239 00004235: PUSH2 0x5898 00004238: JUMP 00004239: JUMPDEST 0000423a: PUSH2 0x5373 0000423d: SWAP1 0000423e: SWAP2 0000423f: SWAP1 00004240: PUSH4 0xffffffff 00004245: AND 00004246: JUMP 00004247: JUMPDEST 00004248: SWAP1 00004249: POP 0000424a: DUP4 0000424b: DUP2 0000424c: LT 0000424d: ISZERO 0000424e: PUSH2 0x42a2 00004251: JUMPI 00004252: PUSH1 0x40 00004254: MLOAD 00004255: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004276: DUP2 00004277: MSTORE 00004278: PUSH1 0x04 0000427a: ADD 0000427b: DUP1 0000427c: DUP1 0000427d: PUSH1 0x20 0000427f: ADD 00004280: DUP3 00004281: DUP2 00004282: SUB 00004283: DUP3 00004284: MSTORE 00004285: PUSH1 0x22 00004287: DUP2 00004288: MSTORE 00004289: PUSH1 0x20 0000428b: ADD 0000428c: DUP1 0000428d: PUSH2 0x5dae 00004290: PUSH1 0x22 00004292: SWAP2 00004293: CODECOPY 00004294: PUSH1 0x40 00004296: ADD 00004297: SWAP2 00004298: POP 00004299: POP 0000429a: PUSH1 0x40 0000429c: MLOAD 0000429d: DUP1 0000429e: SWAP2 0000429f: SUB 000042a0: SWAP1 000042a1: REVERT 000042a2: JUMPDEST 000042a3: PUSH2 0x42b7 000042a6: DUP5 000042a7: PUSH1 0x05 000042a9: SLOAD 000042aa: PUSH2 0x55fa 000042ad: SWAP1 000042ae: SWAP2 000042af: SWAP1 000042b0: PUSH4 0xffffffff 000042b5: AND 000042b6: JUMP 000042b7: JUMPDEST 000042b8: PUSH1 0x05 000042ba: DUP2 000042bb: SWAP1 000042bc: SSTORE 000042bd: POP 000042be: PUSH1 0x14 000042c0: PUSH1 0x00 000042c2: SWAP1 000042c3: SLOAD 000042c4: SWAP1 000042c5: PUSH2 0x0100 000042c8: EXP 000042c9: SWAP1 000042ca: DIV 000042cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000042e0: AND 000042e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000042f6: AND 000042f7: PUSH4 0xa9059cbb 000042fc: CALLER 000042fd: DUP7 000042fe: PUSH1 0x40 00004300: MLOAD 00004301: DUP4 00004302: PUSH4 0xffffffff 00004307: AND 00004308: PUSH1 0xe0 0000430a: SHL 0000430b: DUP2 0000430c: MSTORE 0000430d: PUSH1 0x04 0000430f: ADD 00004310: DUP1 00004311: DUP4 00004312: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004327: AND 00004328: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000433d: AND 0000433e: DUP2 0000433f: MSTORE 00004340: PUSH1 0x20 00004342: ADD 00004343: DUP3 00004344: DUP2 00004345: MSTORE 00004346: PUSH1 0x20 00004348: ADD 00004349: SWAP3 0000434a: POP 0000434b: POP 0000434c: POP 0000434d: PUSH1 0x20 0000434f: PUSH1 0x40 00004351: MLOAD 00004352: DUP1 00004353: DUP4 00004354: SUB 00004355: DUP2 00004356: PUSH1 0x00 00004358: DUP8 00004359: DUP1 0000435a: EXTCODESIZE 0000435b: ISZERO 0000435c: DUP1 0000435d: ISZERO 0000435e: PUSH2 0x4366 00004361: JUMPI 00004362: PUSH1 0x00 00004364: DUP1 00004365: REVERT 00004366: JUMPDEST 00004367: POP 00004368: GAS 00004369: CALL 0000436a: ISZERO 0000436b: DUP1 0000436c: ISZERO 0000436d: PUSH2 0x437a 00004370: JUMPI 00004371: RETURNDATASIZE 00004372: PUSH1 0x00 00004374: DUP1 00004375: RETURNDATACOPY 00004376: RETURNDATASIZE 00004377: PUSH1 0x00 00004379: REVERT 0000437a: JUMPDEST 0000437b: POP 0000437c: POP 0000437d: POP 0000437e: POP 0000437f: PUSH1 0x40 00004381: MLOAD 00004382: RETURNDATASIZE 00004383: PUSH1 0x20 00004385: DUP2 00004386: LT 00004387: ISZERO 00004388: PUSH2 0x4390 0000438b: JUMPI 0000438c: PUSH1 0x00 0000438e: DUP1 0000438f: REVERT 00004390: JUMPDEST 00004391: DUP2 00004392: ADD 00004393: SWAP1 00004394: DUP1 00004395: DUP1 00004396: MLOAD 00004397: SWAP1 00004398: PUSH1 0x20 0000439a: ADD 0000439b: SWAP1 0000439c: SWAP3 0000439d: SWAP2 0000439e: SWAP1 0000439f: POP 000043a0: POP 000043a1: POP 000043a2: POP 000043a3: PUSH32 0xc7cb98b1a5045dc2e525a70c8547e28d87d82be5312f5ab584218fc2299f0377 000043c4: CALLER 000043c5: PUSH2 0x43d7 000043c8: DUP7 000043c9: DUP5 000043ca: PUSH2 0x5373 000043cd: SWAP1 000043ce: SWAP2 000043cf: SWAP1 000043d0: PUSH4 0xffffffff 000043d5: AND 000043d6: JUMP 000043d7: JUMPDEST 000043d8: PUSH1 0x40 000043da: MLOAD 000043db: DUP1 000043dc: DUP4 000043dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000043f2: AND 000043f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004408: AND 00004409: DUP2 0000440a: MSTORE 0000440b: PUSH1 0x20 0000440d: ADD 0000440e: DUP3 0000440f: DUP2 00004410: MSTORE 00004411: PUSH1 0x20 00004413: ADD 00004414: SWAP3 00004415: POP 00004416: POP 00004417: POP 00004418: PUSH1 0x40 0000441a: MLOAD 0000441b: DUP1 0000441c: SWAP2 0000441d: SUB 0000441e: SWAP1 0000441f: LOG1 00004420: PUSH2 0x4432 00004423: DUP5 00004424: DUP3 00004425: PUSH2 0x5373 00004428: SWAP1 00004429: SWAP2 0000442a: SWAP1 0000442b: PUSH4 0xffffffff 00004430: AND 00004431: JUMP 00004432: JUMPDEST 00004433: SWAP3 00004434: POP 00004435: POP 00004436: POP 00004437: SWAP2 00004438: SWAP1 00004439: POP 0000443a: JUMP 0000443b: JUMPDEST 0000443c: CALLER 0000443d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004452: AND 00004453: PUSH1 0x01 00004455: PUSH1 0x00 00004457: SWAP1 00004458: SLOAD 00004459: SWAP1 0000445a: PUSH2 0x0100 0000445d: EXP 0000445e: SWAP1 0000445f: DIV 00004460: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004475: AND 00004476: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000448b: AND 0000448c: EQ 0000448d: PUSH2 0x44fe 00004490: JUMPI 00004491: PUSH1 0x40 00004493: MLOAD 00004494: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000044b5: DUP2 000044b6: MSTORE 000044b7: PUSH1 0x04 000044b9: ADD 000044ba: DUP1 000044bb: DUP1 000044bc: PUSH1 0x20 000044be: ADD 000044bf: DUP3 000044c0: DUP2 000044c1: SUB 000044c2: DUP3 000044c3: MSTORE 000044c4: PUSH1 0x1a 000044c6: DUP2 000044c7: MSTORE 000044c8: PUSH1 0x20 000044ca: ADD 000044cb: DUP1 000044cc: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 000044ed: DUP2 000044ee: MSTORE 000044ef: POP 000044f0: PUSH1 0x20 000044f2: ADD 000044f3: SWAP2 000044f4: POP 000044f5: POP 000044f6: PUSH1 0x40 000044f8: MLOAD 000044f9: DUP1 000044fa: SWAP2 000044fb: SUB 000044fc: SWAP1 000044fd: REVERT 000044fe: JUMPDEST 000044ff: PUSH1 0x01 00004501: PUSH1 0x03 00004503: DUP2 00004504: GT 00004505: ISZERO 00004506: PUSH2 0x450b 00004509: JUMPI 0000450a: INVALID 0000450b: JUMPDEST 0000450c: PUSH1 0x14 0000450e: DUP1 0000450f: SWAP1 00004510: SLOAD 00004511: SWAP1 00004512: PUSH2 0x0100 00004515: EXP 00004516: SWAP1 00004517: DIV 00004518: PUSH1 0xff 0000451a: AND 0000451b: PUSH1 0x03 0000451d: DUP2 0000451e: GT 0000451f: ISZERO 00004520: PUSH2 0x4525 00004523: JUMPI 00004524: INVALID 00004525: JUMPDEST 00004526: EQ 00004527: PUSH2 0x4598 0000452a: JUMPI 0000452b: PUSH1 0x40 0000452d: MLOAD 0000452e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000454f: DUP2 00004550: MSTORE 00004551: PUSH1 0x04 00004553: ADD 00004554: DUP1 00004555: DUP1 00004556: PUSH1 0x20 00004558: ADD 00004559: DUP3 0000455a: DUP2 0000455b: SUB 0000455c: DUP3 0000455d: MSTORE 0000455e: PUSH1 0x0d 00004560: DUP2 00004561: MSTORE 00004562: PUSH1 0x20 00004564: ADD 00004565: DUP1 00004566: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00004587: DUP2 00004588: MSTORE 00004589: POP 0000458a: PUSH1 0x20 0000458c: ADD 0000458d: SWAP2 0000458e: POP 0000458f: POP 00004590: PUSH1 0x40 00004592: MLOAD 00004593: DUP1 00004594: SWAP2 00004595: SUB 00004596: SWAP1 00004597: REVERT 00004598: JUMPDEST 00004599: PUSH1 0x01 0000459b: DUP2 0000459c: LT 0000459d: ISZERO 0000459e: DUP1 0000459f: ISZERO 000045a0: PUSH2 0x45aa 000045a3: JUMPI 000045a4: POP 000045a5: PUSH1 0x0a 000045a7: DUP2 000045a8: GT 000045a9: ISZERO 000045aa: JUMPDEST 000045ab: PUSH2 0x461c 000045ae: JUMPI 000045af: PUSH1 0x40 000045b1: MLOAD 000045b2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000045d3: DUP2 000045d4: MSTORE 000045d5: PUSH1 0x04 000045d7: ADD 000045d8: DUP1 000045d9: DUP1 000045da: PUSH1 0x20 000045dc: ADD 000045dd: DUP3 000045de: DUP2 000045df: SUB 000045e0: DUP3 000045e1: MSTORE 000045e2: PUSH1 0x14 000045e4: DUP2 000045e5: MSTORE 000045e6: PUSH1 0x20 000045e8: ADD 000045e9: DUP1 000045ea: PUSH32 0x6d696e74696e67206973206e6f742076616c6964000000000000000000000000 0000460b: DUP2 0000460c: MSTORE 0000460d: POP 0000460e: PUSH1 0x20 00004610: ADD 00004611: SWAP2 00004612: POP 00004613: POP 00004614: PUSH1 0x40 00004616: MLOAD 00004617: DUP1 00004618: SWAP2 00004619: SUB 0000461a: SWAP1 0000461b: REVERT 0000461c: JUMPDEST 0000461d: DUP1 0000461e: PUSH1 0x0e 00004620: DUP2 00004621: SWAP1 00004622: SSTORE 00004623: POP 00004624: POP 00004625: JUMP 00004626: JUMPDEST 00004627: PUSH2 0x462e 0000462a: PUSH2 0x5d48 0000462d: JUMP 0000462e: JUMPDEST 0000462f: CALLER 00004630: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004645: AND 00004646: PUSH1 0x01 00004648: PUSH1 0x00 0000464a: SWAP1 0000464b: SLOAD 0000464c: SWAP1 0000464d: PUSH2 0x0100 00004650: EXP 00004651: SWAP1 00004652: DIV 00004653: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004668: AND 00004669: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000467e: AND 0000467f: EQ 00004680: PUSH2 0x46f1 00004683: JUMPI 00004684: PUSH1 0x40 00004686: MLOAD 00004687: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000046a8: DUP2 000046a9: MSTORE 000046aa: PUSH1 0x04 000046ac: ADD 000046ad: DUP1 000046ae: DUP1 000046af: PUSH1 0x20 000046b1: ADD 000046b2: DUP3 000046b3: DUP2 000046b4: SUB 000046b5: DUP3 000046b6: MSTORE 000046b7: PUSH1 0x1a 000046b9: DUP2 000046ba: MSTORE 000046bb: PUSH1 0x20 000046bd: ADD 000046be: DUP1 000046bf: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 000046e0: DUP2 000046e1: MSTORE 000046e2: POP 000046e3: PUSH1 0x20 000046e5: ADD 000046e6: SWAP2 000046e7: POP 000046e8: POP 000046e9: PUSH1 0x40 000046eb: MLOAD 000046ec: DUP1 000046ed: SWAP2 000046ee: SUB 000046ef: SWAP1 000046f0: REVERT 000046f1: JUMPDEST 000046f2: PUSH1 0x00 000046f4: DUP3 000046f5: LT 000046f6: ISZERO 000046f7: DUP1 000046f8: ISZERO 000046f9: PUSH2 0x4706 000046fc: JUMPI 000046fd: POP 000046fe: PUSH1 0x0b 00004700: DUP1 00004701: SLOAD 00004702: SWAP1 00004703: POP 00004704: DUP3 00004705: LT 00004706: JUMPDEST 00004707: PUSH2 0x4778 0000470a: JUMPI 0000470b: PUSH1 0x40 0000470d: MLOAD 0000470e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000472f: DUP2 00004730: MSTORE 00004731: PUSH1 0x04 00004733: ADD 00004734: DUP1 00004735: DUP1 00004736: PUSH1 0x20 00004738: ADD 00004739: DUP3 0000473a: DUP2 0000473b: SUB 0000473c: DUP3 0000473d: MSTORE 0000473e: PUSH1 0x0b 00004740: DUP2 00004741: MSTORE 00004742: PUSH1 0x20 00004744: ADD 00004745: DUP1 00004746: PUSH32 0x77726f6e6720696e646578000000000000000000000000000000000000000000 00004767: DUP2 00004768: MSTORE 00004769: POP 0000476a: PUSH1 0x20 0000476c: ADD 0000476d: SWAP2 0000476e: POP 0000476f: POP 00004770: PUSH1 0x40 00004772: MLOAD 00004773: DUP1 00004774: SWAP2 00004775: SUB 00004776: SWAP1 00004777: REVERT 00004778: JUMPDEST 00004779: PUSH2 0x4780 0000477c: PUSH2 0x5d48 0000477f: JUMP 00004780: JUMPDEST 00004781: PUSH1 0x00 00004783: PUSH2 0x4796 00004786: PUSH1 0x64 00004788: DUP6 00004789: PUSH2 0x55fa 0000478c: SWAP1 0000478d: SWAP2 0000478e: SWAP1 0000478f: PUSH4 0xffffffff 00004794: AND 00004795: JUMP 00004796: JUMPDEST 00004797: SWAP1 00004798: POP 00004799: PUSH1 0x01 0000479b: PUSH1 0x0b 0000479d: DUP1 0000479e: SLOAD 0000479f: SWAP1 000047a0: POP 000047a1: SUB 000047a2: DUP2 000047a3: GT 000047a4: ISZERO 000047a5: PUSH2 0x47b4 000047a8: JUMPI 000047a9: PUSH1 0x01 000047ab: PUSH1 0x0b 000047ad: DUP1 000047ae: SLOAD 000047af: SWAP1 000047b0: POP 000047b1: SUB 000047b2: SWAP1 000047b3: POP 000047b4: JUMPDEST 000047b5: PUSH1 0x00 000047b7: DUP5 000047b8: SWAP1 000047b9: POP 000047ba: JUMPDEST 000047bb: DUP2 000047bc: DUP2 000047bd: GT 000047be: PUSH2 0x4849 000047c1: JUMPI 000047c2: PUSH1 0x0b 000047c4: DUP2 000047c5: DUP2 000047c6: SLOAD 000047c7: DUP2 000047c8: LT 000047c9: PUSH2 0x47ce 000047cc: JUMPI 000047cd: INVALID 000047ce: JUMPDEST 000047cf: SWAP1 000047d0: PUSH1 0x00 000047d2: MSTORE 000047d3: PUSH1 0x20 000047d5: PUSH1 0x00 000047d7: KECCAK256 000047d8: ADD 000047d9: PUSH1 0x00 000047db: SWAP1 000047dc: SLOAD 000047dd: SWAP1 000047de: PUSH2 0x0100 000047e1: EXP 000047e2: SWAP1 000047e3: DIV 000047e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000047f9: AND 000047fa: DUP4 000047fb: DUP3 000047fc: PUSH1 0x64 000047fe: DUP2 000047ff: LT 00004800: PUSH2 0x4805 00004803: JUMPI 00004804: INVALID 00004805: JUMPDEST 00004806: PUSH1 0x20 00004808: MUL 00004809: ADD 0000480a: SWAP1 0000480b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004820: AND 00004821: SWAP1 00004822: DUP2 00004823: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004838: AND 00004839: DUP2 0000483a: MSTORE 0000483b: POP 0000483c: POP 0000483d: DUP1 0000483e: DUP1 0000483f: PUSH1 0x01 00004841: ADD 00004842: SWAP2 00004843: POP 00004844: POP 00004845: PUSH2 0x47ba 00004848: JUMP 00004849: JUMPDEST 0000484a: POP 0000484b: DUP2 0000484c: SWAP3 0000484d: POP 0000484e: POP 0000484f: POP 00004850: SWAP2 00004851: SWAP1 00004852: POP 00004853: JUMP 00004854: JUMPDEST 00004855: PUSH1 0x00 00004857: DUP1 00004858: PUSH1 0x00 0000485a: CALLER 0000485b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004870: AND 00004871: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004886: AND 00004887: DUP2 00004888: MSTORE 00004889: PUSH1 0x20 0000488b: ADD 0000488c: SWAP1 0000488d: DUP2 0000488e: MSTORE 0000488f: PUSH1 0x20 00004891: ADD 00004892: PUSH1 0x00 00004894: KECCAK256 00004895: PUSH1 0x03 00004897: ADD 00004898: PUSH1 0x01 0000489a: SWAP1 0000489b: SLOAD 0000489c: SWAP1 0000489d: PUSH2 0x0100 000048a0: EXP 000048a1: SWAP1 000048a2: DIV 000048a3: PUSH1 0xff 000048a5: AND 000048a6: PUSH2 0x48b2 000048a9: JUMPI 000048aa: PUSH1 0x00 000048ac: SWAP1 000048ad: POP 000048ae: PUSH2 0x4aca 000048b1: JUMP 000048b2: JUMPDEST 000048b3: PUSH1 0x00 000048b5: DUP1 000048b6: PUSH2 0x48c8 000048b9: PUSH1 0x01 000048bb: PUSH2 0x48c2 000048be: PUSH2 0x5682 000048c1: JUMP 000048c2: JUMPDEST 000048c3: ADD 000048c4: PUSH2 0x5692 000048c7: JUMP 000048c8: JUMPDEST 000048c9: DUP1 000048ca: SWAP3 000048cb: POP 000048cc: DUP2 000048cd: SWAP4 000048ce: POP 000048cf: POP 000048d0: POP 000048d1: PUSH1 0x00 000048d3: PUSH2 0x48de 000048d6: CALLER 000048d7: PUSH1 0x00 000048d9: DUP1 000048da: PUSH2 0x5977 000048dd: JUMP 000048de: JUMPDEST 000048df: POP 000048e0: DUP1 000048e1: SWAP2 000048e2: POP 000048e3: POP 000048e4: PUSH1 0x00 000048e6: DUP1 000048e7: SWAP1 000048e8: POP 000048e9: PUSH1 0x00 000048eb: PUSH1 0x07 000048ed: SLOAD 000048ee: GT 000048ef: DUP1 000048f0: ISZERO 000048f1: PUSH2 0x48fa 000048f4: JUMPI 000048f5: POP 000048f6: PUSH1 0x00 000048f8: DUP3 000048f9: GT 000048fa: JUMPDEST 000048fb: ISZERO 000048fc: PUSH2 0x4950 000048ff: JUMPI 00004900: PUSH2 0x494d 00004903: PUSH1 0x07 00004905: SLOAD 00004906: PUSH2 0x493f 00004909: DUP5 0000490a: PUSH2 0x4931 0000490d: PUSH1 0x0d 0000490f: SLOAD 00004910: PUSH2 0x4923 00004913: PUSH1 0x64 00004915: DUP12 00004916: PUSH2 0x570f 00004919: SWAP1 0000491a: SWAP2 0000491b: SWAP1 0000491c: PUSH4 0xffffffff 00004921: AND 00004922: JUMP 00004923: JUMPDEST 00004924: PUSH2 0x5759 00004927: SWAP1 00004928: SWAP2 00004929: SWAP1 0000492a: PUSH4 0xffffffff 0000492f: AND 00004930: JUMP 00004931: JUMPDEST 00004932: PUSH2 0x5759 00004935: SWAP1 00004936: SWAP2 00004937: SWAP1 00004938: PUSH4 0xffffffff 0000493d: AND 0000493e: JUMP 0000493f: JUMPDEST 00004940: PUSH2 0x570f 00004943: SWAP1 00004944: SWAP2 00004945: SWAP1 00004946: PUSH4 0xffffffff 0000494b: AND 0000494c: JUMP 0000494d: JUMPDEST 0000494e: SWAP1 0000494f: POP 00004950: JUMPDEST 00004951: PUSH1 0x00 00004953: DUP1 00004954: SWAP1 00004955: POP 00004956: PUSH1 0x00 00004958: PUSH1 0x06 0000495a: SLOAD 0000495b: GT 0000495c: DUP1 0000495d: ISZERO 0000495e: PUSH2 0x49a8 00004961: JUMPI 00004962: POP 00004963: PUSH1 0x00 00004965: DUP1 00004966: PUSH1 0x00 00004968: CALLER 00004969: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000497e: AND 0000497f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004994: AND 00004995: DUP2 00004996: MSTORE 00004997: PUSH1 0x20 00004999: ADD 0000499a: SWAP1 0000499b: DUP2 0000499c: MSTORE 0000499d: PUSH1 0x20 0000499f: ADD 000049a0: PUSH1 0x00 000049a2: KECCAK256 000049a3: PUSH1 0x01 000049a5: ADD 000049a6: SLOAD 000049a7: GT 000049a8: JUMPDEST 000049a9: ISZERO 000049aa: PUSH2 0x4a3f 000049ad: JUMPI 000049ae: PUSH2 0x4a3c 000049b1: PUSH1 0x06 000049b3: SLOAD 000049b4: PUSH2 0x4a2e 000049b7: PUSH1 0x00 000049b9: DUP1 000049ba: CALLER 000049bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000049d0: AND 000049d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000049e6: AND 000049e7: DUP2 000049e8: MSTORE 000049e9: PUSH1 0x20 000049eb: ADD 000049ec: SWAP1 000049ed: DUP2 000049ee: MSTORE 000049ef: PUSH1 0x20 000049f1: ADD 000049f2: PUSH1 0x00 000049f4: KECCAK256 000049f5: PUSH1 0x01 000049f7: ADD 000049f8: SLOAD 000049f9: PUSH2 0x4a20 000049fc: PUSH1 0x0c 000049fe: SLOAD 000049ff: PUSH2 0x4a12 00004a02: PUSH1 0x64 00004a04: DUP13 00004a05: PUSH2 0x570f 00004a08: SWAP1 00004a09: SWAP2 00004a0a: SWAP1 00004a0b: PUSH4 0xffffffff 00004a10: AND 00004a11: JUMP 00004a12: JUMPDEST 00004a13: PUSH2 0x5759 00004a16: SWAP1 00004a17: SWAP2 00004a18: SWAP1 00004a19: PUSH4 0xffffffff 00004a1e: AND 00004a1f: JUMP 00004a20: JUMPDEST 00004a21: PUSH2 0x5759 00004a24: SWAP1 00004a25: SWAP2 00004a26: SWAP1 00004a27: PUSH4 0xffffffff 00004a2c: AND 00004a2d: JUMP 00004a2e: JUMPDEST 00004a2f: PUSH2 0x570f 00004a32: SWAP1 00004a33: SWAP2 00004a34: SWAP1 00004a35: PUSH4 0xffffffff 00004a3a: AND 00004a3b: JUMP 00004a3c: JUMPDEST 00004a3d: SWAP1 00004a3e: POP 00004a3f: JUMPDEST 00004a40: PUSH1 0x00 00004a42: DUP1 00004a43: SWAP1 00004a44: POP 00004a45: PUSH1 0x00 00004a47: DUP1 00004a48: CALLER 00004a49: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004a5e: AND 00004a5f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004a74: AND 00004a75: DUP2 00004a76: MSTORE 00004a77: PUSH1 0x20 00004a79: ADD 00004a7a: SWAP1 00004a7b: DUP2 00004a7c: MSTORE 00004a7d: PUSH1 0x20 00004a7f: ADD 00004a80: PUSH1 0x00 00004a82: KECCAK256 00004a83: PUSH1 0x03 00004a85: ADD 00004a86: PUSH1 0x00 00004a88: SWAP1 00004a89: SLOAD 00004a8a: SWAP1 00004a8b: PUSH2 0x0100 00004a8e: EXP 00004a8f: SWAP1 00004a90: DIV 00004a91: PUSH1 0xff 00004a93: AND 00004a94: ISZERO 00004a95: PUSH2 0x4a9c 00004a98: JUMPI 00004a99: DUP5 00004a9a: SWAP1 00004a9b: POP 00004a9c: JUMPDEST 00004a9d: PUSH2 0x4ac1 00004aa0: DUP2 00004aa1: PUSH2 0x4ab3 00004aa4: DUP5 00004aa5: DUP7 00004aa6: PUSH2 0x55fa 00004aa9: SWAP1 00004aaa: SWAP2 00004aab: SWAP1 00004aac: PUSH4 0xffffffff 00004ab1: AND 00004ab2: JUMP 00004ab3: JUMPDEST 00004ab4: PUSH2 0x55fa 00004ab7: SWAP1 00004ab8: SWAP2 00004ab9: SWAP1 00004aba: PUSH4 0xffffffff 00004abf: AND 00004ac0: JUMP 00004ac1: JUMPDEST 00004ac2: SWAP7 00004ac3: POP 00004ac4: POP 00004ac5: POP 00004ac6: POP 00004ac7: POP 00004ac8: POP 00004ac9: POP 00004aca: JUMPDEST 00004acb: SWAP1 00004acc: JUMP 00004acd: JUMPDEST 00004ace: PUSH1 0x00 00004ad0: PUSH1 0x06 00004ad2: SLOAD 00004ad3: SWAP1 00004ad4: POP 00004ad5: SWAP1 00004ad6: JUMP 00004ad7: JUMPDEST 00004ad8: PUSH1 0x00 00004ada: PUSH1 0x01 00004adc: PUSH1 0x03 00004ade: DUP2 00004adf: GT 00004ae0: ISZERO 00004ae1: PUSH2 0x4ae6 00004ae4: JUMPI 00004ae5: INVALID 00004ae6: JUMPDEST 00004ae7: PUSH1 0x14 00004ae9: DUP1 00004aea: SWAP1 00004aeb: SLOAD 00004aec: SWAP1 00004aed: PUSH2 0x0100 00004af0: EXP 00004af1: SWAP1 00004af2: DIV 00004af3: PUSH1 0xff 00004af5: AND 00004af6: PUSH1 0x03 00004af8: DUP2 00004af9: GT 00004afa: ISZERO 00004afb: PUSH2 0x4b00 00004afe: JUMPI 00004aff: INVALID 00004b00: JUMPDEST 00004b01: EQ 00004b02: PUSH2 0x4b73 00004b05: JUMPI 00004b06: PUSH1 0x40 00004b08: MLOAD 00004b09: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004b2a: DUP2 00004b2b: MSTORE 00004b2c: PUSH1 0x04 00004b2e: ADD 00004b2f: DUP1 00004b30: DUP1 00004b31: PUSH1 0x20 00004b33: ADD 00004b34: DUP3 00004b35: DUP2 00004b36: SUB 00004b37: DUP3 00004b38: MSTORE 00004b39: PUSH1 0x0d 00004b3b: DUP2 00004b3c: MSTORE 00004b3d: PUSH1 0x20 00004b3f: ADD 00004b40: DUP1 00004b41: PUSH32 0x696e7661696c6420737461746500000000000000000000000000000000000000 00004b62: DUP2 00004b63: MSTORE 00004b64: POP 00004b65: PUSH1 0x20 00004b67: ADD 00004b68: SWAP2 00004b69: POP 00004b6a: POP 00004b6b: PUSH1 0x40 00004b6d: MLOAD 00004b6e: DUP1 00004b6f: SWAP2 00004b70: SUB 00004b71: SWAP1 00004b72: REVERT 00004b73: JUMPDEST 00004b74: CALLER 00004b75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004b8a: AND 00004b8b: PUSH1 0x04 00004b8d: PUSH1 0x00 00004b8f: SWAP1 00004b90: SLOAD 00004b91: SWAP1 00004b92: PUSH2 0x0100 00004b95: EXP 00004b96: SWAP1 00004b97: DIV 00004b98: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004bad: AND 00004bae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004bc3: AND 00004bc4: EQ 00004bc5: ISZERO 00004bc6: DUP1 00004bc7: ISZERO 00004bc8: PUSH2 0x4c1f 00004bcb: JUMPI 00004bcc: POP 00004bcd: CALLER 00004bce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004be3: AND 00004be4: PUSH1 0x02 00004be6: PUSH1 0x00 00004be8: SWAP1 00004be9: SLOAD 00004bea: SWAP1 00004beb: PUSH2 0x0100 00004bee: EXP 00004bef: SWAP1 00004bf0: DIV 00004bf1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004c06: AND 00004c07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004c1c: AND 00004c1d: EQ 00004c1e: ISZERO 00004c1f: JUMPDEST 00004c20: PUSH2 0x4c91 00004c23: JUMPI 00004c24: PUSH1 0x40 00004c26: MLOAD 00004c27: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004c48: DUP2 00004c49: MSTORE 00004c4a: PUSH1 0x04 00004c4c: ADD 00004c4d: DUP1 00004c4e: DUP1 00004c4f: PUSH1 0x20 00004c51: ADD 00004c52: DUP3 00004c53: DUP2 00004c54: SUB 00004c55: DUP3 00004c56: MSTORE 00004c57: PUSH1 0x1a 00004c59: DUP2 00004c5a: MSTORE 00004c5b: PUSH1 0x20 00004c5d: ADD 00004c5e: DUP1 00004c5f: PUSH32 0x63616c6c6572206973206e6f7420746865206f70657261746f72000000000000 00004c80: DUP2 00004c81: MSTORE 00004c82: POP 00004c83: PUSH1 0x20 00004c85: ADD 00004c86: SWAP2 00004c87: POP 00004c88: POP 00004c89: PUSH1 0x40 00004c8b: MLOAD 00004c8c: DUP1 00004c8d: SWAP2 00004c8e: SUB 00004c8f: SWAP1 00004c90: REVERT 00004c91: JUMPDEST 00004c92: PUSH1 0x00 00004c94: DUP3 00004c95: GT 00004c96: PUSH2 0x4d07 00004c99: JUMPI 00004c9a: PUSH1 0x40 00004c9c: MLOAD 00004c9d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004cbe: DUP2 00004cbf: MSTORE 00004cc0: PUSH1 0x04 00004cc2: ADD 00004cc3: DUP1 00004cc4: DUP1 00004cc5: PUSH1 0x20 00004cc7: ADD 00004cc8: DUP3 00004cc9: DUP2 00004cca: SUB 00004ccb: DUP3 00004ccc: MSTORE 00004ccd: PUSH1 0x0c 00004ccf: DUP2 00004cd0: MSTORE 00004cd1: PUSH1 0x20 00004cd3: ADD 00004cd4: DUP1 00004cd5: PUSH32 0x616d6f756e742061726520300000000000000000000000000000000000000000 00004cf6: DUP2 00004cf7: MSTORE 00004cf8: POP 00004cf9: PUSH1 0x20 00004cfb: ADD 00004cfc: SWAP2 00004cfd: POP 00004cfe: POP 00004cff: PUSH1 0x40 00004d01: MLOAD 00004d02: DUP1 00004d03: SWAP2 00004d04: SUB 00004d05: SWAP1 00004d06: REVERT 00004d07: JUMPDEST 00004d08: PUSH1 0x00 00004d0a: DUP1 00004d0b: CALLER 00004d0c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004d21: AND 00004d22: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004d37: AND 00004d38: DUP2 00004d39: MSTORE 00004d3a: PUSH1 0x20 00004d3c: ADD 00004d3d: SWAP1 00004d3e: DUP2 00004d3f: MSTORE 00004d40: PUSH1 0x20 00004d42: ADD 00004d43: PUSH1 0x00 00004d45: KECCAK256 00004d46: PUSH1 0x03 00004d48: ADD 00004d49: PUSH1 0x01 00004d4b: SWAP1 00004d4c: SLOAD 00004d4d: SWAP1 00004d4e: PUSH2 0x0100 00004d51: EXP 00004d52: SWAP1 00004d53: DIV 00004d54: PUSH1 0xff 00004d56: AND 00004d57: PUSH2 0x4dc8 00004d5a: JUMPI 00004d5b: PUSH1 0x40 00004d5d: MLOAD 00004d5e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004d7f: DUP2 00004d80: MSTORE 00004d81: PUSH1 0x04 00004d83: ADD 00004d84: DUP1 00004d85: DUP1 00004d86: PUSH1 0x20 00004d88: ADD 00004d89: DUP3 00004d8a: DUP2 00004d8b: SUB 00004d8c: DUP3 00004d8d: MSTORE 00004d8e: PUSH1 0x0f 00004d90: DUP2 00004d91: MSTORE 00004d92: PUSH1 0x20 00004d94: ADD 00004d95: DUP1 00004d96: PUSH32 0x696e7661696c64206163636f756e740000000000000000000000000000000000 00004db7: DUP2 00004db8: MSTORE 00004db9: POP 00004dba: PUSH1 0x20 00004dbc: ADD 00004dbd: SWAP2 00004dbe: POP 00004dbf: POP 00004dc0: PUSH1 0x40 00004dc2: MLOAD 00004dc3: DUP1 00004dc4: SWAP2 00004dc5: SUB 00004dc6: SWAP1 00004dc7: REVERT 00004dc8: JUMPDEST 00004dc9: DUP2 00004dca: PUSH1 0x00 00004dcc: DUP1 00004dcd: CALLER 00004dce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004de3: AND 00004de4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004df9: AND 00004dfa: DUP2 00004dfb: MSTORE 00004dfc: PUSH1 0x20 00004dfe: ADD 00004dff: SWAP1 00004e00: DUP2 00004e01: MSTORE 00004e02: PUSH1 0x20 00004e04: ADD 00004e05: PUSH1 0x00 00004e07: KECCAK256 00004e08: PUSH1 0x01 00004e0a: ADD 00004e0b: SLOAD 00004e0c: LT 00004e0d: ISZERO 00004e0e: PUSH2 0x4e7f 00004e11: JUMPI 00004e12: PUSH1 0x40 00004e14: MLOAD 00004e15: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004e36: DUP2 00004e37: MSTORE 00004e38: PUSH1 0x04 00004e3a: ADD 00004e3b: DUP1 00004e3c: DUP1 00004e3d: PUSH1 0x20 00004e3f: ADD 00004e40: DUP3 00004e41: DUP2 00004e42: SUB 00004e43: DUP3 00004e44: MSTORE 00004e45: PUSH1 0x1c 00004e47: DUP2 00004e48: MSTORE 00004e49: PUSH1 0x20 00004e4b: ADD 00004e4c: DUP1 00004e4d: PUSH32 0x696e73756666696369656e742065746820666f72206163636f756e7400000000 00004e6e: DUP2 00004e6f: MSTORE 00004e70: POP 00004e71: PUSH1 0x20 00004e73: ADD 00004e74: SWAP2 00004e75: POP 00004e76: POP 00004e77: PUSH1 0x40 00004e79: MLOAD 00004e7a: DUP1 00004e7b: SWAP2 00004e7c: SUB 00004e7d: SWAP1 00004e7e: REVERT 00004e7f: JUMPDEST 00004e80: PUSH1 0x00 00004e82: SELFBALANCE 00004e83: SWAP1 00004e84: POP 00004e85: DUP3 00004e86: DUP2 00004e87: LT 00004e88: ISZERO 00004e89: PUSH2 0x4efa 00004e8c: JUMPI 00004e8d: PUSH1 0x40 00004e8f: MLOAD 00004e90: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004eb1: DUP2 00004eb2: MSTORE 00004eb3: PUSH1 0x04 00004eb5: ADD 00004eb6: DUP1 00004eb7: DUP1 00004eb8: PUSH1 0x20 00004eba: ADD 00004ebb: DUP3 00004ebc: DUP2 00004ebd: SUB 00004ebe: DUP3 00004ebf: MSTORE 00004ec0: PUSH1 0x1d 00004ec2: DUP2 00004ec3: MSTORE 00004ec4: PUSH1 0x20 00004ec6: ADD 00004ec7: DUP1 00004ec8: PUSH32 0x696e73756666696369656e742065746820666f72207769746864726177000000 00004ee9: DUP2 00004eea: MSTORE 00004eeb: POP 00004eec: PUSH1 0x20 00004eee: ADD 00004eef: SWAP2 00004ef0: POP 00004ef1: POP 00004ef2: PUSH1 0x40 00004ef4: MLOAD 00004ef5: DUP1 00004ef6: SWAP2 00004ef7: SUB 00004ef8: SWAP1 00004ef9: REVERT 00004efa: JUMPDEST 00004efb: PUSH2 0x4f06 00004efe: CALLER 00004eff: PUSH1 0x00 00004f01: DUP1 00004f02: PUSH2 0x52ca 00004f05: JUMP 00004f06: JUMPDEST 00004f07: PUSH2 0x4f5a 00004f0a: DUP4 00004f0b: PUSH1 0x00 00004f0d: DUP1 00004f0e: CALLER 00004f0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f24: AND 00004f25: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f3a: AND 00004f3b: DUP2 00004f3c: MSTORE 00004f3d: PUSH1 0x20 00004f3f: ADD 00004f40: SWAP1 00004f41: DUP2 00004f42: MSTORE 00004f43: PUSH1 0x20 00004f45: ADD 00004f46: PUSH1 0x00 00004f48: KECCAK256 00004f49: PUSH1 0x01 00004f4b: ADD 00004f4c: SLOAD 00004f4d: PUSH2 0x5373 00004f50: SWAP1 00004f51: SWAP2 00004f52: SWAP1 00004f53: PUSH4 0xffffffff 00004f58: AND 00004f59: JUMP 00004f5a: JUMPDEST 00004f5b: PUSH1 0x00 00004f5d: DUP1 00004f5e: CALLER 00004f5f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f74: AND 00004f75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f8a: AND 00004f8b: DUP2 00004f8c: MSTORE 00004f8d: PUSH1 0x20 00004f8f: ADD 00004f90: SWAP1 00004f91: DUP2 00004f92: MSTORE 00004f93: PUSH1 0x20 00004f95: ADD 00004f96: PUSH1 0x00 00004f98: KECCAK256 00004f99: PUSH1 0x01 00004f9b: ADD 00004f9c: DUP2 00004f9d: SWAP1 00004f9e: SSTORE 00004f9f: POP 00004fa0: PUSH2 0x4fb4 00004fa3: DUP4 00004fa4: PUSH1 0x06 00004fa6: SLOAD 00004fa7: PUSH2 0x5373 00004faa: SWAP1 00004fab: SWAP2 00004fac: SWAP1 00004fad: PUSH4 0xffffffff 00004fb2: AND 00004fb3: JUMP 00004fb4: JUMPDEST 00004fb5: PUSH1 0x06 00004fb7: DUP2 00004fb8: SWAP1 00004fb9: SSTORE 00004fba: POP 00004fbb: CALLER 00004fbc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004fd1: AND 00004fd2: PUSH2 0x08fc 00004fd5: DUP5 00004fd6: SWAP1 00004fd7: DUP2 00004fd8: ISZERO 00004fd9: MUL 00004fda: SWAP1 00004fdb: PUSH1 0x40 00004fdd: MLOAD 00004fde: PUSH1 0x00 00004fe0: PUSH1 0x40 00004fe2: MLOAD 00004fe3: DUP1 00004fe4: DUP4 00004fe5: SUB 00004fe6: DUP2 00004fe7: DUP6 00004fe8: DUP9 00004fe9: DUP9 00004fea: CALL 00004feb: SWAP4 00004fec: POP 00004fed: POP 00004fee: POP 00004fef: POP 00004ff0: ISZERO 00004ff1: DUP1 00004ff2: ISZERO 00004ff3: PUSH2 0x5000 00004ff6: JUMPI 00004ff7: RETURNDATASIZE 00004ff8: PUSH1 0x00 00004ffa: DUP1 00004ffb: RETURNDATACOPY 00004ffc: RETURNDATASIZE 00004ffd: PUSH1 0x00 00004fff: REVERT 00005000: JUMPDEST 00005001: POP 00005002: PUSH32 0xdffa3d6a37be885892903f995612345a6690cf4475fa82d728c65dc3dbfe7559 00005023: CALLER 00005024: PUSH1 0x00 00005026: DUP1 00005027: CALLER 00005028: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000503d: AND 0000503e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005053: AND 00005054: DUP2 00005055: MSTORE 00005056: PUSH1 0x20 00005058: ADD 00005059: SWAP1 0000505a: DUP2 0000505b: MSTORE 0000505c: PUSH1 0x20 0000505e: ADD 0000505f: PUSH1 0x00 00005061: KECCAK256 00005062: PUSH1 0x01 00005064: ADD 00005065: SLOAD 00005066: PUSH1 0x40 00005068: MLOAD 00005069: DUP1 0000506a: DUP4 0000506b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005080: AND 00005081: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005096: AND 00005097: DUP2 00005098: MSTORE 00005099: PUSH1 0x20 0000509b: ADD 0000509c: DUP3 0000509d: DUP2 0000509e: MSTORE 0000509f: PUSH1 0x20 000050a1: ADD 000050a2: SWAP3 000050a3: POP 000050a4: POP 000050a5: POP 000050a6: PUSH1 0x40 000050a8: MLOAD 000050a9: DUP1 000050aa: SWAP2 000050ab: SUB 000050ac: SWAP1 000050ad: LOG1 000050ae: PUSH1 0x00 000050b0: DUP1 000050b1: CALLER 000050b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000050c7: AND 000050c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000050dd: AND 000050de: DUP2 000050df: MSTORE 000050e0: PUSH1 0x20 000050e2: ADD 000050e3: SWAP1 000050e4: DUP2 000050e5: MSTORE 000050e6: PUSH1 0x20 000050e8: ADD 000050e9: PUSH1 0x00 000050eb: KECCAK256 000050ec: PUSH1 0x01 000050ee: ADD 000050ef: SLOAD 000050f0: SWAP2 000050f1: POP 000050f2: POP 000050f3: SWAP2 000050f4: SWAP1 000050f5: POP 000050f6: JUMP 000050f7: JUMPDEST 000050f8: PUSH1 0x00 000050fa: DUP1 000050fb: PUSH2 0x5102 000050fe: PUSH2 0x57df 00005101: JUMP 00005102: JUMPDEST 00005103: SWAP1 00005104: POP 00005105: PUSH1 0x00 00005107: PUSH2 0x510e 0000510a: PUSH2 0x5898 0000510d: JUMP 0000510e: JUMPDEST 0000510f: SWAP1 00005110: POP 00005111: PUSH2 0x514b 00005114: PUSH1 0x12 00005116: SLOAD 00005117: PUSH2 0x513d 0000511a: PUSH1 0x11 0000511c: SLOAD 0000511d: PUSH2 0x512f 00005120: DUP6 00005121: DUP8 00005122: PUSH2 0x55fa 00005125: SWAP1 00005126: SWAP2 00005127: SWAP1 00005128: PUSH4 0xffffffff 0000512d: AND 0000512e: JUMP 0000512f: JUMPDEST 00005130: PUSH2 0x55fa 00005133: SWAP1 00005134: SWAP2 00005135: SWAP1 00005136: PUSH4 0xffffffff 0000513b: AND 0000513c: JUMP 0000513d: JUMPDEST 0000513e: PUSH2 0x55fa 00005141: SWAP1 00005142: SWAP2 00005143: SWAP1 00005144: PUSH4 0xffffffff 00005149: AND 0000514a: JUMP 0000514b: JUMPDEST 0000514c: SWAP3 0000514d: POP 0000514e: POP 0000514f: POP 00005150: SWAP1 00005151: JUMP 00005152: JUMPDEST 00005153: PUSH1 0x00 00005155: PUSH1 0x0d 00005157: SLOAD 00005158: SWAP1 00005159: POP 0000515a: SWAP1 0000515b: JUMP 0000515c: JUMPDEST 0000515d: PUSH1 0x00 0000515f: PUSH1 0x11 00005161: SLOAD 00005162: SWAP1 00005163: POP 00005164: SWAP1 00005165: JUMP 00005166: JUMPDEST 00005167: PUSH1 0x00 00005169: PUSH1 0x14 0000516b: PUSH1 0x00 0000516d: SWAP1 0000516e: SLOAD 0000516f: SWAP1 00005170: PUSH2 0x0100 00005173: EXP 00005174: SWAP1 00005175: DIV 00005176: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000518b: AND 0000518c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000051a1: AND 000051a2: PUSH4 0x70a08231 000051a7: ADDRESS 000051a8: PUSH1 0x40 000051aa: MLOAD 000051ab: DUP3 000051ac: PUSH4 0xffffffff 000051b1: AND 000051b2: PUSH1 0xe0 000051b4: SHL 000051b5: DUP2 000051b6: MSTORE 000051b7: PUSH1 0x04 000051b9: ADD 000051ba: DUP1 000051bb: DUP3 000051bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000051d1: AND 000051d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000051e7: AND 000051e8: DUP2 000051e9: MSTORE 000051ea: PUSH1 0x20 000051ec: ADD 000051ed: SWAP2 000051ee: POP 000051ef: POP 000051f0: PUSH1 0x20 000051f2: PUSH1 0x40 000051f4: MLOAD 000051f5: DUP1 000051f6: DUP4 000051f7: SUB 000051f8: DUP2 000051f9: DUP7 000051fa: DUP1 000051fb: EXTCODESIZE 000051fc: ISZERO 000051fd: DUP1 000051fe: ISZERO 000051ff: PUSH2 0x5207 00005202: JUMPI 00005203: PUSH1 0x00 00005205: DUP1 00005206: REVERT 00005207: JUMPDEST 00005208: POP 00005209: GAS 0000520a: STATICCALL 0000520b: ISZERO 0000520c: DUP1 0000520d: ISZERO 0000520e: PUSH2 0x521b 00005211: JUMPI 00005212: RETURNDATASIZE 00005213: PUSH1 0x00 00005215: DUP1 00005216: RETURNDATACOPY 00005217: RETURNDATASIZE 00005218: PUSH1 0x00 0000521a: REVERT 0000521b: JUMPDEST 0000521c: POP 0000521d: POP 0000521e: POP 0000521f: POP 00005220: PUSH1 0x40 00005222: MLOAD 00005223: RETURNDATASIZE 00005224: PUSH1 0x20 00005226: DUP2 00005227: LT 00005228: ISZERO 00005229: PUSH2 0x5231 0000522c: JUMPI 0000522d: PUSH1 0x00 0000522f: DUP1 00005230: REVERT 00005231: JUMPDEST 00005232: DUP2 00005233: ADD 00005234: SWAP1 00005235: DUP1 00005236: DUP1 00005237: MLOAD 00005238: SWAP1 00005239: PUSH1 0x20 0000523b: ADD 0000523c: SWAP1 0000523d: SWAP3 0000523e: SWAP2 0000523f: SWAP1 00005240: POP 00005241: POP 00005242: POP 00005243: SWAP1 00005244: POP 00005245: SWAP1 00005246: JUMP 00005247: JUMPDEST 00005248: PUSH1 0x00 0000524a: PUSH1 0x07 0000524c: SLOAD 0000524d: SWAP1 0000524e: POP 0000524f: SWAP1 00005250: JUMP 00005251: JUMPDEST 00005252: PUSH1 0x00 00005254: DUP1 00005255: PUSH1 0x00 00005257: CALLER 00005258: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000526d: AND 0000526e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005283: AND 00005284: DUP2 00005285: MSTORE 00005286: PUSH1 0x20 00005288: ADD 00005289: SWAP1 0000528a: DUP2 0000528b: MSTORE 0000528c: PUSH1 0x20 0000528e: ADD 0000528f: PUSH1 0x00 00005291: KECCAK256 00005292: PUSH1 0x03 00005294: ADD 00005295: PUSH1 0x01 00005297: SWAP1 00005298: SLOAD 00005299: SWAP1 0000529a: PUSH2 0x0100 0000529d: EXP 0000529e: SWAP1 0000529f: DIV 000052a0: PUSH1 0xff 000052a2: AND 000052a3: PUSH2 0x52af 000052a6: JUMPI 000052a7: PUSH1 0x00 000052a9: SWAP1 000052aa: POP 000052ab: PUSH2 0x52c7 000052ae: JUMP 000052af: JUMPDEST 000052b0: PUSH1 0x00 000052b2: PUSH2 0x52bd 000052b5: CALLER 000052b6: PUSH1 0x00 000052b8: DUP1 000052b9: PUSH2 0x5977 000052bc: JUMP 000052bd: JUMPDEST 000052be: POP 000052bf: DUP1 000052c0: SWAP2 000052c1: POP 000052c2: POP 000052c3: DUP1 000052c4: SWAP2 000052c5: POP 000052c6: POP 000052c7: JUMPDEST 000052c8: SWAP1 000052c9: JUMP 000052ca: JUMPDEST 000052cb: PUSH1 0x00 000052cd: DUP1 000052ce: PUSH2 0x52d8 000052d1: DUP6 000052d2: DUP6 000052d3: DUP6 000052d4: PUSH2 0x5977 000052d7: JUMP 000052d8: JUMPDEST 000052d9: DUP1 000052da: SWAP3 000052db: POP 000052dc: DUP2 000052dd: SWAP4 000052de: POP 000052df: POP 000052e0: POP 000052e1: DUP2 000052e2: PUSH1 0x00 000052e4: DUP1 000052e5: DUP8 000052e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000052fb: AND 000052fc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005311: AND 00005312: DUP2 00005313: MSTORE 00005314: PUSH1 0x20 00005316: ADD 00005317: SWAP1 00005318: DUP2 00005319: MSTORE 0000531a: PUSH1 0x20 0000531c: ADD 0000531d: PUSH1 0x00 0000531f: KECCAK256 00005320: PUSH1 0x00 00005322: ADD 00005323: DUP2 00005324: SWAP1 00005325: SSTORE 00005326: POP 00005327: DUP1 00005328: PUSH1 0x00 0000532a: DUP1 0000532b: DUP8 0000532c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005341: AND 00005342: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005357: AND 00005358: DUP2 00005359: MSTORE 0000535a: PUSH1 0x20 0000535c: ADD 0000535d: SWAP1 0000535e: DUP2 0000535f: MSTORE 00005360: PUSH1 0x20 00005362: ADD 00005363: PUSH1 0x00 00005365: KECCAK256 00005366: PUSH1 0x02 00005368: ADD 00005369: DUP2 0000536a: SWAP1 0000536b: SSTORE 0000536c: POP 0000536d: POP 0000536e: POP 0000536f: POP 00005370: POP 00005371: POP 00005372: JUMP 00005373: JUMPDEST 00005374: PUSH1 0x00 00005376: PUSH2 0x53b5 00005379: DUP4 0000537a: DUP4 0000537b: PUSH1 0x40 0000537d: MLOAD 0000537e: DUP1 0000537f: PUSH1 0x40 00005381: ADD 00005382: PUSH1 0x40 00005384: MSTORE 00005385: DUP1 00005386: PUSH1 0x1e 00005388: DUP2 00005389: MSTORE 0000538a: PUSH1 0x20 0000538c: ADD 0000538d: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 000053ae: DUP2 000053af: MSTORE 000053b0: POP 000053b1: PUSH2 0x5bc2 000053b4: JUMP 000053b5: JUMPDEST 000053b6: SWAP1 000053b7: POP 000053b8: SWAP3 000053b9: SWAP2 000053ba: POP 000053bb: POP 000053bc: JUMP 000053bd: JUMPDEST 000053be: PUSH1 0x00 000053c0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000053d5: AND 000053d6: DUP3 000053d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000053ec: AND 000053ed: EQ 000053ee: ISZERO 000053ef: PUSH2 0x5460 000053f2: JUMPI 000053f3: PUSH1 0x40 000053f5: MLOAD 000053f6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00005417: DUP2 00005418: MSTORE 00005419: PUSH1 0x04 0000541b: ADD 0000541c: DUP1 0000541d: DUP1 0000541e: PUSH1 0x20 00005420: ADD 00005421: DUP3 00005422: DUP2 00005423: SUB 00005424: DUP3 00005425: MSTORE 00005426: PUSH1 0x1b 00005428: DUP2 00005429: MSTORE 0000542a: PUSH1 0x20 0000542c: ADD 0000542d: DUP1 0000542e: PUSH32 0x6163636f756e7420697320746865207a65726f20616464726573730000000000 0000544f: DUP2 00005450: MSTORE 00005451: POP 00005452: PUSH1 0x20 00005454: ADD 00005455: SWAP2 00005456: POP 00005457: POP 00005458: PUSH1 0x40 0000545a: MLOAD 0000545b: DUP1 0000545c: SWAP2 0000545d: SUB 0000545e: SWAP1 0000545f: REVERT 00005460: JUMPDEST 00005461: PUSH1 0x00 00005463: DUP1 00005464: DUP4 00005465: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000547a: AND 0000547b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005490: AND 00005491: DUP2 00005492: MSTORE 00005493: PUSH1 0x20 00005495: ADD 00005496: SWAP1 00005497: DUP2 00005498: MSTORE 00005499: PUSH1 0x20 0000549b: ADD 0000549c: PUSH1 0x00 0000549e: KECCAK256 0000549f: PUSH1 0x03 000054a1: ADD 000054a2: PUSH1 0x01 000054a4: SWAP1 000054a5: SLOAD 000054a6: SWAP1 000054a7: PUSH2 0x0100 000054aa: EXP 000054ab: SWAP1 000054ac: DIV 000054ad: PUSH1 0xff 000054af: AND 000054b0: ISZERO 000054b1: PUSH2 0x5522 000054b4: JUMPI 000054b5: PUSH1 0x40 000054b7: MLOAD 000054b8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000054d9: DUP2 000054da: MSTORE 000054db: PUSH1 0x04 000054dd: ADD 000054de: DUP1 000054df: DUP1 000054e0: PUSH1 0x20 000054e2: ADD 000054e3: DUP3 000054e4: DUP2 000054e5: SUB 000054e6: DUP3 000054e7: MSTORE 000054e8: PUSH1 0x17 000054ea: DUP2 000054eb: MSTORE 000054ec: PUSH1 0x20 000054ee: ADD 000054ef: DUP1 000054f0: PUSH32 0x6163636f756e7420697320616c7265616479206f70656e000000000000000000 00005511: DUP2 00005512: MSTORE 00005513: POP 00005514: PUSH1 0x20 00005516: ADD 00005517: SWAP2 00005518: POP 00005519: POP 0000551a: PUSH1 0x40 0000551c: MLOAD 0000551d: DUP1 0000551e: SWAP2 0000551f: SUB 00005520: SWAP1 00005521: REVERT 00005522: JUMPDEST 00005523: PUSH1 0x40 00005525: MLOAD 00005526: DUP1 00005527: PUSH1 0xa0 00005529: ADD 0000552a: PUSH1 0x40 0000552c: MSTORE 0000552d: DUP1 0000552e: PUSH1 0x00 00005530: DUP2 00005531: MSTORE 00005532: PUSH1 0x20 00005534: ADD 00005535: PUSH1 0x00 00005537: DUP2 00005538: MSTORE 00005539: PUSH1 0x20 0000553b: ADD 0000553c: PUSH2 0x5543 0000553f: PUSH2 0x5682 00005542: JUMP 00005543: JUMPDEST 00005544: DUP2 00005545: MSTORE 00005546: PUSH1 0x20 00005548: ADD 00005549: DUP3 0000554a: ISZERO 0000554b: ISZERO 0000554c: DUP2 0000554d: MSTORE 0000554e: PUSH1 0x20 00005550: ADD 00005551: PUSH1 0x01 00005553: ISZERO 00005554: ISZERO 00005555: DUP2 00005556: MSTORE 00005557: POP 00005558: PUSH1 0x00 0000555a: DUP1 0000555b: DUP5 0000555c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005571: AND 00005572: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005587: AND 00005588: DUP2 00005589: MSTORE 0000558a: PUSH1 0x20 0000558c: ADD 0000558d: SWAP1 0000558e: DUP2 0000558f: MSTORE 00005590: PUSH1 0x20 00005592: ADD 00005593: PUSH1 0x00 00005595: KECCAK256 00005596: PUSH1 0x00 00005598: DUP3 00005599: ADD 0000559a: MLOAD 0000559b: DUP2 0000559c: PUSH1 0x00 0000559e: ADD 0000559f: SSTORE 000055a0: PUSH1 0x20 000055a2: DUP3 000055a3: ADD 000055a4: MLOAD 000055a5: DUP2 000055a6: PUSH1 0x01 000055a8: ADD 000055a9: SSTORE 000055aa: PUSH1 0x40 000055ac: DUP3 000055ad: ADD 000055ae: MLOAD 000055af: DUP2 000055b0: PUSH1 0x02 000055b2: ADD 000055b3: SSTORE 000055b4: PUSH1 0x60 000055b6: DUP3 000055b7: ADD 000055b8: MLOAD 000055b9: DUP2 000055ba: PUSH1 0x03 000055bc: ADD 000055bd: PUSH1 0x00 000055bf: PUSH2 0x0100 000055c2: EXP 000055c3: DUP2 000055c4: SLOAD 000055c5: DUP2 000055c6: PUSH1 0xff 000055c8: MUL 000055c9: NOT 000055ca: AND 000055cb: SWAP1 000055cc: DUP4 000055cd: ISZERO 000055ce: ISZERO 000055cf: MUL 000055d0: OR 000055d1: SWAP1 000055d2: SSTORE 000055d3: POP 000055d4: PUSH1 0x80 000055d6: DUP3 000055d7: ADD 000055d8: MLOAD 000055d9: DUP2 000055da: PUSH1 0x03 000055dc: ADD 000055dd: PUSH1 0x01 000055df: PUSH2 0x0100 000055e2: EXP 000055e3: DUP2 000055e4: SLOAD 000055e5: DUP2 000055e6: PUSH1 0xff 000055e8: MUL 000055e9: NOT 000055ea: AND 000055eb: SWAP1 000055ec: DUP4 000055ed: ISZERO 000055ee: ISZERO 000055ef: MUL 000055f0: OR 000055f1: SWAP1 000055f2: SSTORE 000055f3: POP 000055f4: SWAP1 000055f5: POP 000055f6: POP 000055f7: POP 000055f8: POP 000055f9: JUMP 000055fa: JUMPDEST 000055fb: PUSH1 0x00 000055fd: DUP1 000055fe: DUP3 000055ff: DUP5 00005600: ADD 00005601: SWAP1 00005602: POP 00005603: DUP4 00005604: DUP2 00005605: LT 00005606: ISZERO 00005607: PUSH2 0x5678 0000560a: JUMPI 0000560b: PUSH1 0x40 0000560d: MLOAD 0000560e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000562f: DUP2 00005630: MSTORE 00005631: PUSH1 0x04 00005633: ADD 00005634: DUP1 00005635: DUP1 00005636: PUSH1 0x20 00005638: ADD 00005639: DUP3 0000563a: DUP2 0000563b: SUB 0000563c: DUP3 0000563d: MSTORE 0000563e: PUSH1 0x1b 00005640: DUP2 00005641: MSTORE 00005642: PUSH1 0x20 00005644: ADD 00005645: DUP1 00005646: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00005667: DUP2 00005668: MSTORE 00005669: POP 0000566a: PUSH1 0x20 0000566c: ADD 0000566d: SWAP2 0000566e: POP 0000566f: POP 00005670: PUSH1 0x40 00005672: MLOAD 00005673: DUP1 00005674: SWAP2 00005675: SUB 00005676: SWAP1 00005677: REVERT 00005678: JUMPDEST 00005679: DUP1 0000567a: SWAP2 0000567b: POP 0000567c: POP 0000567d: SWAP3 0000567e: SWAP2 0000567f: POP 00005680: POP 00005681: JUMP 00005682: JUMPDEST 00005683: PUSH1 0x00 00005685: PUSH1 0x01 00005687: PUSH1 0x09 00005689: DUP1 0000568a: SLOAD 0000568b: SWAP1 0000568c: POP 0000568d: SUB 0000568e: SWAP1 0000568f: POP 00005690: SWAP1 00005691: JUMP 00005692: JUMPDEST 00005693: PUSH1 0x00 00005695: DUP1 00005696: PUSH1 0x00 00005698: PUSH2 0x56b0 0000569b: PUSH1 0x13 0000569d: SLOAD 0000569e: PUSH1 0x0a 000056a0: EXP 000056a1: PUSH1 0x46 000056a3: PUSH2 0x5759 000056a6: SWAP1 000056a7: SWAP2 000056a8: SWAP1 000056a9: PUSH4 0xffffffff 000056ae: AND 000056af: JUMP 000056b0: JUMPDEST 000056b1: SWAP1 000056b2: POP 000056b3: PUSH1 0x00 000056b5: PUSH2 0x56ce 000056b8: PUSH1 0x13 000056ba: SLOAD 000056bb: PUSH1 0x0a 000056bd: EXP 000056be: PUSH1 0x0e 000056c0: SLOAD 000056c1: PUSH2 0x5759 000056c4: SWAP1 000056c5: SWAP2 000056c6: SWAP1 000056c7: PUSH4 0xffffffff 000056cc: AND 000056cd: JUMP 000056ce: JUMPDEST 000056cf: SWAP1 000056d0: POP 000056d1: PUSH1 0x69 000056d3: DUP6 000056d4: LT 000056d5: PUSH2 0x56f4 000056d8: JUMPI 000056d9: PUSH2 0x56f1 000056dc: PUSH1 0x13 000056de: SLOAD 000056df: PUSH1 0x0a 000056e1: EXP 000056e2: PUSH1 0x07 000056e4: PUSH2 0x5759 000056e7: SWAP1 000056e8: SWAP2 000056e9: SWAP1 000056ea: PUSH4 0xffffffff 000056ef: AND 000056f0: JUMP 000056f1: JUMPDEST 000056f2: SWAP2 000056f3: POP 000056f4: JUMPDEST 000056f5: PUSH2 0x020d 000056f8: DUP6 000056f9: LT 000056fa: PUSH2 0x5702 000056fd: JUMPI 000056fe: PUSH1 0x00 00005700: SWAP1 00005701: POP 00005702: JUMPDEST 00005703: DUP2 00005704: DUP2 00005705: SWAP4 00005706: POP 00005707: SWAP4 00005708: POP 00005709: POP 0000570a: POP 0000570b: SWAP2 0000570c: POP 0000570d: SWAP2 0000570e: JUMP 0000570f: JUMPDEST 00005710: PUSH1 0x00 00005712: PUSH2 0x5751 00005715: DUP4 00005716: DUP4 00005717: PUSH1 0x40 00005719: MLOAD 0000571a: DUP1 0000571b: PUSH1 0x40 0000571d: ADD 0000571e: PUSH1 0x40 00005720: MSTORE 00005721: DUP1 00005722: PUSH1 0x1a 00005724: DUP2 00005725: MSTORE 00005726: PUSH1 0x20 00005728: ADD 00005729: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 0000574a: DUP2 0000574b: MSTORE 0000574c: POP 0000574d: PUSH2 0x5c82 00005750: JUMP 00005751: JUMPDEST 00005752: SWAP1 00005753: POP 00005754: SWAP3 00005755: SWAP2 00005756: POP 00005757: POP 00005758: JUMP 00005759: JUMPDEST 0000575a: PUSH1 0x00 0000575c: DUP1 0000575d: DUP4 0000575e: EQ 0000575f: ISZERO 00005760: PUSH2 0x576c 00005763: JUMPI 00005764: PUSH1 0x00 00005766: SWAP1 00005767: POP 00005768: PUSH2 0x57d9 0000576b: JUMP 0000576c: JUMPDEST 0000576d: PUSH1 0x00 0000576f: DUP3 00005770: DUP5 00005771: MUL 00005772: SWAP1 00005773: POP 00005774: DUP3 00005775: DUP5 00005776: DUP3 00005777: DUP2 00005778: PUSH2 0x577d 0000577b: JUMPI 0000577c: INVALID 0000577d: JUMPDEST 0000577e: DIV 0000577f: EQ 00005780: PUSH2 0x57d4 00005783: JUMPI 00005784: PUSH1 0x40 00005786: MLOAD 00005787: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000057a8: DUP2 000057a9: MSTORE 000057aa: PUSH1 0x04 000057ac: ADD 000057ad: DUP1 000057ae: DUP1 000057af: PUSH1 0x20 000057b1: ADD 000057b2: DUP3 000057b3: DUP2 000057b4: SUB 000057b5: DUP3 000057b6: MSTORE 000057b7: PUSH1 0x21 000057b9: DUP2 000057ba: MSTORE 000057bb: PUSH1 0x20 000057bd: ADD 000057be: DUP1 000057bf: PUSH2 0x5d6c 000057c2: PUSH1 0x21 000057c4: SWAP2 000057c5: CODECOPY 000057c6: PUSH1 0x40 000057c8: ADD 000057c9: SWAP2 000057ca: POP 000057cb: POP 000057cc: PUSH1 0x40 000057ce: MLOAD 000057cf: DUP1 000057d0: SWAP2 000057d1: SUB 000057d2: SWAP1 000057d3: REVERT 000057d4: JUMPDEST 000057d5: DUP1 000057d6: SWAP2 000057d7: POP 000057d8: POP 000057d9: JUMPDEST 000057da: SWAP3 000057db: SWAP2 000057dc: POP 000057dd: POP 000057de: JUMP 000057df: JUMPDEST 000057e0: PUSH1 0x00 000057e2: DUP1 000057e3: PUSH2 0x57ea 000057e6: PUSH2 0x5682 000057e9: JUMP 000057ea: JUMPDEST 000057eb: SWAP1 000057ec: POP 000057ed: PUSH1 0x69 000057ef: DUP2 000057f0: LT 000057f1: ISZERO 000057f2: PUSH2 0x5829 000057f5: JUMPI 000057f6: PUSH2 0x5821 000057f9: PUSH1 0x13 000057fb: SLOAD 000057fc: PUSH1 0x0a 000057fe: EXP 000057ff: PUSH2 0x5813 00005802: DUP4 00005803: PUSH2 0x0384 00005806: PUSH2 0x5759 00005809: SWAP1 0000580a: SWAP2 0000580b: SWAP1 0000580c: PUSH4 0xffffffff 00005811: AND 00005812: JUMP 00005813: JUMPDEST 00005814: PUSH2 0x5759 00005817: SWAP1 00005818: SWAP2 00005819: SWAP1 0000581a: PUSH4 0xffffffff 0000581f: AND 00005820: JUMP 00005821: JUMPDEST 00005822: SWAP2 00005823: POP 00005824: POP 00005825: PUSH2 0x5895 00005828: JUMP 00005829: JUMPDEST 0000582a: PUSH2 0x583d 0000582d: PUSH1 0x69 0000582f: DUP3 00005830: PUSH2 0x5373 00005833: SWAP1 00005834: SWAP2 00005835: SWAP1 00005836: PUSH4 0xffffffff 0000583b: AND 0000583c: JUMP 0000583d: JUMPDEST 0000583e: SWAP1 0000583f: POP 00005840: PUSH2 0x5891 00005843: PUSH1 0x13 00005845: SLOAD 00005846: PUSH1 0x0a 00005848: EXP 00005849: PUSH2 0x5883 0000584c: PUSH2 0x585f 0000584f: DUP5 00005850: PUSH1 0x5a 00005852: PUSH2 0x5759 00005855: SWAP1 00005856: SWAP2 00005857: SWAP1 00005858: PUSH4 0xffffffff 0000585d: AND 0000585e: JUMP 0000585f: JUMPDEST 00005860: PUSH2 0x5875 00005863: PUSH1 0x69 00005865: PUSH2 0x0384 00005868: PUSH2 0x5759 0000586b: SWAP1 0000586c: SWAP2 0000586d: SWAP1 0000586e: PUSH4 0xffffffff 00005873: AND 00005874: JUMP 00005875: JUMPDEST 00005876: PUSH2 0x55fa 00005879: SWAP1 0000587a: SWAP2 0000587b: SWAP1 0000587c: PUSH4 0xffffffff 00005881: AND 00005882: JUMP 00005883: JUMPDEST 00005884: PUSH2 0x5759 00005887: SWAP1 00005888: SWAP2 00005889: SWAP1 0000588a: PUSH4 0xffffffff 0000588f: AND 00005890: JUMP 00005891: JUMPDEST 00005892: SWAP2 00005893: POP 00005894: POP 00005895: JUMPDEST 00005896: SWAP1 00005897: JUMP 00005898: JUMPDEST 00005899: PUSH1 0x00 0000589b: DUP1 0000589c: PUSH2 0x58a3 0000589f: PUSH2 0x5682 000058a2: JUMP 000058a3: JUMPDEST 000058a4: SWAP1 000058a5: POP 000058a6: PUSH1 0x69 000058a8: DUP2 000058a9: LT 000058aa: ISZERO 000058ab: PUSH2 0x58f5 000058ae: JUMPI 000058af: PUSH2 0x58ed 000058b2: PUSH1 0x13 000058b4: SLOAD 000058b5: PUSH1 0x0a 000058b7: EXP 000058b8: PUSH2 0x58df 000058bb: PUSH2 0x58ce 000058be: DUP5 000058bf: PUSH1 0x1e 000058c1: PUSH2 0x5759 000058c4: SWAP1 000058c5: SWAP2 000058c6: SWAP1 000058c7: PUSH4 0xffffffff 000058cc: AND 000058cd: JUMP 000058ce: JUMPDEST 000058cf: PUSH2 0x2904 000058d2: PUSH2 0x55fa 000058d5: SWAP1 000058d6: SWAP2 000058d7: SWAP1 000058d8: PUSH4 0xffffffff 000058dd: AND 000058de: JUMP 000058df: JUMPDEST 000058e0: PUSH2 0x5759 000058e3: SWAP1 000058e4: SWAP2 000058e5: SWAP1 000058e6: PUSH4 0xffffffff 000058eb: AND 000058ec: JUMP 000058ed: JUMPDEST 000058ee: SWAP2 000058ef: POP 000058f0: POP 000058f1: PUSH2 0x5974 000058f4: JUMP 000058f5: JUMPDEST 000058f6: PUSH2 0x5909 000058f9: PUSH1 0x69 000058fb: DUP3 000058fc: PUSH2 0x5373 000058ff: SWAP1 00005900: SWAP2 00005901: SWAP1 00005902: PUSH4 0xffffffff 00005907: AND 00005908: JUMP 00005909: JUMPDEST 0000590a: SWAP1 0000590b: POP 0000590c: PUSH2 0x5970 0000590f: PUSH1 0x13 00005911: SLOAD 00005912: PUSH1 0x0a 00005914: EXP 00005915: PUSH2 0x5962 00005918: PUSH2 0x5951 0000591b: PUSH2 0x592e 0000591e: DUP6 0000591f: PUSH1 0x03 00005921: PUSH2 0x5759 00005924: SWAP1 00005925: SWAP2 00005926: SWAP1 00005927: PUSH4 0xffffffff 0000592c: AND 0000592d: JUMP 0000592e: JUMPDEST 0000592f: PUSH2 0x5943 00005932: PUSH1 0x69 00005934: PUSH1 0x1e 00005936: PUSH2 0x5759 00005939: SWAP1 0000593a: SWAP2 0000593b: SWAP1 0000593c: PUSH4 0xffffffff 00005941: AND 00005942: JUMP 00005943: JUMPDEST 00005944: PUSH2 0x55fa 00005947: SWAP1 00005948: SWAP2 00005949: SWAP1 0000594a: PUSH4 0xffffffff 0000594f: AND 00005950: JUMP 00005951: JUMPDEST 00005952: PUSH2 0x2904 00005955: PUSH2 0x55fa 00005958: SWAP1 00005959: SWAP2 0000595a: SWAP1 0000595b: PUSH4 0xffffffff 00005960: AND 00005961: JUMP 00005962: JUMPDEST 00005963: PUSH2 0x5759 00005966: SWAP1 00005967: SWAP2 00005968: SWAP1 00005969: PUSH4 0xffffffff 0000596e: AND 0000596f: JUMP 00005970: JUMPDEST 00005971: SWAP2 00005972: POP 00005973: POP 00005974: JUMPDEST 00005975: SWAP1 00005976: JUMP 00005977: JUMPDEST 00005978: PUSH1 0x00 0000597a: DUP1 0000597b: PUSH1 0x00 0000597d: DUP1 0000597e: PUSH1 0x00 00005980: DUP8 00005981: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005996: AND 00005997: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000059ac: AND 000059ad: DUP2 000059ae: MSTORE 000059af: PUSH1 0x20 000059b1: ADD 000059b2: SWAP1 000059b3: DUP2 000059b4: MSTORE 000059b5: PUSH1 0x20 000059b7: ADD 000059b8: PUSH1 0x00 000059ba: KECCAK256 000059bb: SWAP1 000059bc: POP 000059bd: PUSH1 0x00 000059bf: DUP2 000059c0: PUSH1 0x00 000059c2: ADD 000059c3: SLOAD 000059c4: SWAP1 000059c5: POP 000059c6: PUSH1 0x00 000059c8: DUP3 000059c9: PUSH1 0x02 000059cb: ADD 000059cc: SLOAD 000059cd: SWAP1 000059ce: POP 000059cf: PUSH1 0x00 000059d1: PUSH1 0x01 000059d3: DUP5 000059d4: PUSH1 0x02 000059d6: ADD 000059d7: SLOAD 000059d8: ADD 000059d9: SWAP1 000059da: POP 000059db: JUMPDEST 000059dc: PUSH1 0x09 000059de: DUP1 000059df: SLOAD 000059e0: SWAP1 000059e1: POP 000059e2: DUP2 000059e3: LT 000059e4: ISZERO 000059e5: PUSH2 0x5bb0 000059e8: JUMPI 000059e9: PUSH1 0x00 000059eb: DUP1 000059ec: PUSH2 0x59f4 000059ef: DUP4 000059f0: PUSH2 0x5692 000059f3: JUMP 000059f4: JUMPDEST 000059f5: DUP1 000059f6: SWAP3 000059f7: POP 000059f8: DUP2 000059f9: SWAP4 000059fa: POP 000059fb: POP 000059fc: POP 000059fd: PUSH1 0x00 000059ff: PUSH1 0x09 00005a01: DUP5 00005a02: DUP2 00005a03: SLOAD 00005a04: DUP2 00005a05: LT 00005a06: PUSH2 0x5a0b 00005a09: JUMPI 00005a0a: INVALID 00005a0b: JUMPDEST 00005a0c: SWAP1 00005a0d: PUSH1 0x00 00005a0f: MSTORE 00005a10: PUSH1 0x20 00005a12: PUSH1 0x00 00005a14: KECCAK256 00005a15: ADD 00005a16: SLOAD 00005a17: SWAP1 00005a18: POP 00005a19: PUSH1 0x00 00005a1b: PUSH1 0x08 00005a1d: DUP6 00005a1e: DUP2 00005a1f: SLOAD 00005a20: DUP2 00005a21: LT 00005a22: PUSH2 0x5a27 00005a25: JUMPI 00005a26: INVALID 00005a27: JUMPDEST 00005a28: SWAP1 00005a29: PUSH1 0x00 00005a2b: MSTORE 00005a2c: PUSH1 0x20 00005a2e: PUSH1 0x00 00005a30: KECCAK256 00005a31: ADD 00005a32: SLOAD 00005a33: SWAP1 00005a34: POP 00005a35: PUSH1 0x00 00005a37: DUP1 00005a38: SWAP1 00005a39: POP 00005a3a: PUSH1 0x00 00005a3c: DUP4 00005a3d: GT 00005a3e: DUP1 00005a3f: ISZERO 00005a40: PUSH2 0x5a49 00005a43: JUMPI 00005a44: POP 00005a45: PUSH1 0x00 00005a47: DUP9 00005a48: GT 00005a49: JUMPDEST 00005a4a: ISZERO 00005a4b: PUSH2 0x5a9d 00005a4e: JUMPI 00005a4f: PUSH2 0x5a9a 00005a52: DUP4 00005a53: PUSH2 0x5a8c 00005a56: DUP11 00005a57: PUSH2 0x5a7e 00005a5a: PUSH1 0x0d 00005a5c: SLOAD 00005a5d: PUSH2 0x5a70 00005a60: PUSH1 0x64 00005a62: DUP13 00005a63: PUSH2 0x570f 00005a66: SWAP1 00005a67: SWAP2 00005a68: SWAP1 00005a69: PUSH4 0xffffffff 00005a6e: AND 00005a6f: JUMP 00005a70: JUMPDEST 00005a71: PUSH2 0x5759 00005a74: SWAP1 00005a75: SWAP2 00005a76: SWAP1 00005a77: PUSH4 0xffffffff 00005a7c: AND 00005a7d: JUMP 00005a7e: JUMPDEST 00005a7f: PUSH2 0x5759 00005a82: SWAP1 00005a83: SWAP2 00005a84: SWAP1 00005a85: PUSH4 0xffffffff 00005a8a: AND 00005a8b: JUMP 00005a8c: JUMPDEST 00005a8d: PUSH2 0x570f 00005a90: SWAP1 00005a91: SWAP2 00005a92: SWAP1 00005a93: PUSH4 0xffffffff 00005a98: AND 00005a99: JUMP 00005a9a: JUMPDEST 00005a9b: SWAP1 00005a9c: POP 00005a9d: JUMPDEST 00005a9e: PUSH1 0x00 00005aa0: DUP1 00005aa1: SWAP1 00005aa2: POP 00005aa3: PUSH1 0x00 00005aa5: DUP4 00005aa6: GT 00005aa7: DUP1 00005aa8: ISZERO 00005aa9: PUSH2 0x5ab6 00005aac: JUMPI 00005aad: POP 00005aae: PUSH1 0x00 00005ab0: DUP11 00005ab1: PUSH1 0x01 00005ab3: ADD 00005ab4: SLOAD 00005ab5: GT 00005ab6: JUMPDEST 00005ab7: ISZERO 00005ab8: PUSH2 0x5b0e 00005abb: JUMPI 00005abc: PUSH2 0x5b0b 00005abf: DUP4 00005ac0: PUSH2 0x5afd 00005ac3: DUP13 00005ac4: PUSH1 0x01 00005ac6: ADD 00005ac7: SLOAD 00005ac8: PUSH2 0x5aef 00005acb: PUSH1 0x0c 00005acd: SLOAD 00005ace: PUSH2 0x5ae1 00005ad1: PUSH1 0x64 00005ad3: DUP14 00005ad4: PUSH2 0x570f 00005ad7: SWAP1 00005ad8: SWAP2 00005ad9: SWAP1 00005ada: PUSH4 0xffffffff 00005adf: AND 00005ae0: JUMP 00005ae1: JUMPDEST 00005ae2: PUSH2 0x5759 00005ae5: SWAP1 00005ae6: SWAP2 00005ae7: SWAP1 00005ae8: PUSH4 0xffffffff 00005aed: AND 00005aee: JUMP 00005aef: JUMPDEST 00005af0: PUSH2 0x5759 00005af3: SWAP1 00005af4: SWAP2 00005af5: SWAP1 00005af6: PUSH4 0xffffffff 00005afb: AND 00005afc: JUMP 00005afd: JUMPDEST 00005afe: PUSH2 0x570f 00005b01: SWAP1 00005b02: SWAP2 00005b03: SWAP1 00005b04: PUSH4 0xffffffff 00005b09: AND 00005b0a: JUMP 00005b0b: JUMPDEST 00005b0c: SWAP1 00005b0d: POP 00005b0e: JUMPDEST 00005b0f: PUSH1 0x00 00005b11: DUP1 00005b12: SWAP1 00005b13: POP 00005b14: DUP11 00005b15: PUSH1 0x03 00005b17: ADD 00005b18: PUSH1 0x00 00005b1a: SWAP1 00005b1b: SLOAD 00005b1c: SWAP1 00005b1d: PUSH2 0x0100 00005b20: EXP 00005b21: SWAP1 00005b22: DIV 00005b23: PUSH1 0xff 00005b25: AND 00005b26: ISZERO 00005b27: PUSH2 0x5b2e 00005b2a: JUMPI 00005b2b: DUP6 00005b2c: SWAP1 00005b2d: POP 00005b2e: JUMPDEST 00005b2f: PUSH2 0x5b65 00005b32: DUP2 00005b33: PUSH2 0x5b57 00005b36: DUP5 00005b37: PUSH2 0x5b49 00005b3a: DUP8 00005b3b: DUP16 00005b3c: PUSH2 0x55fa 00005b3f: SWAP1 00005b40: SWAP2 00005b41: SWAP1 00005b42: PUSH4 0xffffffff 00005b47: AND 00005b48: JUMP 00005b49: JUMPDEST 00005b4a: PUSH2 0x55fa 00005b4d: SWAP1 00005b4e: SWAP2 00005b4f: SWAP1 00005b50: PUSH4 0xffffffff 00005b55: AND 00005b56: JUMP 00005b57: JUMPDEST 00005b58: PUSH2 0x55fa 00005b5b: SWAP1 00005b5c: SWAP2 00005b5d: SWAP1 00005b5e: PUSH4 0xffffffff 00005b63: AND 00005b64: JUMP 00005b65: JUMPDEST 00005b66: SWAP10 00005b67: POP 00005b68: DUP8 00005b69: SWAP9 00005b6a: POP 00005b6b: DUP15 00005b6c: ISZERO 00005b6d: PUSH2 0x5b9c 00005b70: JUMPI 00005b71: PUSH2 0x5b84 00005b74: PUSH1 0x01 00005b76: DUP16 00005b77: PUSH2 0x5373 00005b7a: SWAP1 00005b7b: SWAP2 00005b7c: SWAP1 00005b7d: PUSH4 0xffffffff 00005b82: AND 00005b83: JUMP 00005b84: JUMPDEST 00005b85: SWAP14 00005b86: POP 00005b87: PUSH1 0x00 00005b89: DUP15 00005b8a: EQ 00005b8b: ISZERO 00005b8c: PUSH2 0x5b9b 00005b8f: JUMPI 00005b90: POP 00005b91: POP 00005b92: POP 00005b93: POP 00005b94: POP 00005b95: POP 00005b96: POP 00005b97: PUSH2 0x5bb0 00005b9a: JUMP 00005b9b: JUMPDEST 00005b9c: JUMPDEST 00005b9d: POP 00005b9e: POP 00005b9f: POP 00005ba0: POP 00005ba1: POP 00005ba2: POP 00005ba3: POP 00005ba4: DUP1 00005ba5: DUP1 00005ba6: PUSH1 0x01 00005ba8: ADD 00005ba9: SWAP2 00005baa: POP 00005bab: POP 00005bac: PUSH2 0x59db 00005baf: JUMP 00005bb0: JUMPDEST 00005bb1: POP 00005bb2: DUP2 00005bb3: DUP2 00005bb4: SWAP5 00005bb5: POP 00005bb6: SWAP5 00005bb7: POP 00005bb8: POP 00005bb9: POP 00005bba: POP 00005bbb: SWAP4 00005bbc: POP 00005bbd: SWAP4 00005bbe: SWAP2 00005bbf: POP 00005bc0: POP 00005bc1: JUMP 00005bc2: JUMPDEST 00005bc3: PUSH1 0x00 00005bc5: DUP4 00005bc6: DUP4 00005bc7: GT 00005bc8: ISZERO 00005bc9: DUP3 00005bca: SWAP1 00005bcb: PUSH2 0x5c6f 00005bce: JUMPI 00005bcf: PUSH1 0x40 00005bd1: MLOAD 00005bd2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00005bf3: DUP2 00005bf4: MSTORE 00005bf5: PUSH1 0x04 00005bf7: ADD 00005bf8: DUP1 00005bf9: DUP1 00005bfa: PUSH1 0x20 00005bfc: ADD 00005bfd: DUP3 00005bfe: DUP2 00005bff: SUB 00005c00: DUP3 00005c01: MSTORE 00005c02: DUP4 00005c03: DUP2 00005c04: DUP2 00005c05: MLOAD 00005c06: DUP2 00005c07: MSTORE 00005c08: PUSH1 0x20 00005c0a: ADD 00005c0b: SWAP2 00005c0c: POP 00005c0d: DUP1 00005c0e: MLOAD 00005c0f: SWAP1 00005c10: PUSH1 0x20 00005c12: ADD 00005c13: SWAP1 00005c14: DUP1 00005c15: DUP4 00005c16: DUP4 00005c17: PUSH1 0x00 00005c19: JUMPDEST 00005c1a: DUP4 00005c1b: DUP2 00005c1c: LT 00005c1d: ISZERO 00005c1e: PUSH2 0x5c34 00005c21: JUMPI 00005c22: DUP1 00005c23: DUP3 00005c24: ADD 00005c25: MLOAD 00005c26: DUP2 00005c27: DUP5 00005c28: ADD 00005c29: MSTORE 00005c2a: PUSH1 0x20 00005c2c: DUP2 00005c2d: ADD 00005c2e: SWAP1 00005c2f: POP 00005c30: PUSH2 0x5c19 00005c33: JUMP 00005c34: JUMPDEST 00005c35: POP 00005c36: POP 00005c37: POP 00005c38: POP 00005c39: SWAP1 00005c3a: POP 00005c3b: SWAP1 00005c3c: DUP2 00005c3d: ADD 00005c3e: SWAP1 00005c3f: PUSH1 0x1f 00005c41: AND 00005c42: DUP1 00005c43: ISZERO 00005c44: PUSH2 0x5c61 00005c47: JUMPI 00005c48: DUP1 00005c49: DUP3 00005c4a: SUB 00005c4b: DUP1 00005c4c: MLOAD 00005c4d: PUSH1 0x01 00005c4f: DUP4 00005c50: PUSH1 0x20 00005c52: SUB 00005c53: PUSH2 0x0100 00005c56: EXP 00005c57: SUB 00005c58: NOT 00005c59: AND 00005c5a: DUP2 00005c5b: MSTORE 00005c5c: PUSH1 0x20 00005c5e: ADD 00005c5f: SWAP2 00005c60: POP 00005c61: JUMPDEST 00005c62: POP 00005c63: SWAP3 00005c64: POP 00005c65: POP 00005c66: POP 00005c67: PUSH1 0x40 00005c69: MLOAD 00005c6a: DUP1 00005c6b: SWAP2 00005c6c: SUB 00005c6d: SWAP1 00005c6e: REVERT 00005c6f: JUMPDEST 00005c70: POP 00005c71: PUSH1 0x00 00005c73: DUP4 00005c74: DUP6 00005c75: SUB 00005c76: SWAP1 00005c77: POP 00005c78: DUP1 00005c79: SWAP2 00005c7a: POP 00005c7b: POP 00005c7c: SWAP4 00005c7d: SWAP3 00005c7e: POP 00005c7f: POP 00005c80: POP 00005c81: JUMP 00005c82: JUMPDEST 00005c83: PUSH1 0x00 00005c85: DUP1 00005c86: DUP4 00005c87: GT 00005c88: DUP3 00005c89: SWAP1 00005c8a: PUSH2 0x5d2e 00005c8d: JUMPI 00005c8e: PUSH1 0x40 00005c90: MLOAD 00005c91: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00005cb2: DUP2 00005cb3: MSTORE 00005cb4: PUSH1 0x04 00005cb6: ADD 00005cb7: DUP1 00005cb8: DUP1 00005cb9: PUSH1 0x20 00005cbb: ADD 00005cbc: DUP3 00005cbd: DUP2 00005cbe: SUB 00005cbf: DUP3 00005cc0: MSTORE 00005cc1: DUP4 00005cc2: DUP2 00005cc3: DUP2 00005cc4: MLOAD 00005cc5: DUP2 00005cc6: MSTORE 00005cc7: PUSH1 0x20 00005cc9: ADD 00005cca: SWAP2 00005ccb: POP 00005ccc: DUP1 00005ccd: MLOAD 00005cce: SWAP1 00005ccf: PUSH1 0x20 00005cd1: ADD 00005cd2: SWAP1 00005cd3: DUP1 00005cd4: DUP4 00005cd5: DUP4 00005cd6: PUSH1 0x00 00005cd8: JUMPDEST 00005cd9: DUP4 00005cda: DUP2 00005cdb: LT 00005cdc: ISZERO 00005cdd: PUSH2 0x5cf3 00005ce0: JUMPI 00005ce1: DUP1 00005ce2: DUP3 00005ce3: ADD 00005ce4: MLOAD 00005ce5: DUP2 00005ce6: DUP5 00005ce7: ADD 00005ce8: MSTORE 00005ce9: PUSH1 0x20 00005ceb: DUP2 00005cec: ADD 00005ced: SWAP1 00005cee: POP 00005cef: PUSH2 0x5cd8 00005cf2: JUMP 00005cf3: JUMPDEST 00005cf4: POP 00005cf5: POP 00005cf6: POP 00005cf7: POP 00005cf8: SWAP1 00005cf9: POP 00005cfa: SWAP1 00005cfb: DUP2 00005cfc: ADD 00005cfd: SWAP1 00005cfe: PUSH1 0x1f 00005d00: AND 00005d01: DUP1 00005d02: ISZERO 00005d03: PUSH2 0x5d20 00005d06: JUMPI 00005d07: DUP1 00005d08: DUP3 00005d09: SUB 00005d0a: DUP1 00005d0b: MLOAD 00005d0c: PUSH1 0x01 00005d0e: DUP4 00005d0f: PUSH1 0x20 00005d11: SUB 00005d12: PUSH2 0x0100 00005d15: EXP 00005d16: SUB 00005d17: NOT 00005d18: AND 00005d19: DUP2 00005d1a: MSTORE 00005d1b: PUSH1 0x20 00005d1d: ADD 00005d1e: SWAP2 00005d1f: POP 00005d20: JUMPDEST 00005d21: POP 00005d22: SWAP3 00005d23: POP 00005d24: POP 00005d25: POP 00005d26: PUSH1 0x40 00005d28: MLOAD 00005d29: DUP1 00005d2a: SWAP2 00005d2b: SUB 00005d2c: SWAP1 00005d2d: REVERT 00005d2e: JUMPDEST 00005d2f: POP 00005d30: PUSH1 0x00 00005d32: DUP4 00005d33: DUP6 00005d34: DUP2 00005d35: PUSH2 0x5d3a 00005d38: JUMPI 00005d39: INVALID 00005d3a: JUMPDEST 00005d3b: DIV 00005d3c: SWAP1 00005d3d: POP 00005d3e: DUP1 00005d3f: SWAP2 00005d40: POP 00005d41: POP 00005d42: SWAP4 00005d43: SWAP3 00005d44: POP 00005d45: POP 00005d46: POP 00005d47: JUMP 00005d48: JUMPDEST 00005d49: PUSH1 0x40 00005d4b: MLOAD 00005d4c: DUP1 00005d4d: PUSH2 0x0c80 00005d50: ADD 00005d51: PUSH1 0x40 00005d53: MSTORE 00005d54: DUP1 00005d55: PUSH1 0x64 00005d57: SWAP1 00005d58: PUSH1 0x20 00005d5a: DUP3 00005d5b: MUL 00005d5c: DUP1 00005d5d: CODESIZE 00005d5e: DUP4 00005d5f: CODECOPY 00005d60: DUP1 00005d61: DUP3 00005d62: ADD 00005d63: SWAP2 00005d64: POP 00005d65: POP 00005d66: SWAP1 00005d67: POP 00005d68: POP 00005d69: SWAP1 00005d6a: JUMP 00005d6b: INVALID 00005d6c: MSTORE8 00005d6d: PUSH2 0x6665 00005d70: UNKNOWN(0x4D) 00005d71: PUSH2 0x7468 00005d74: GASPRICE 00005d75: KECCAK256 00005d76: PUSH14 0x756c7469706c69636174696f6e20 00005d85: PUSH16 0x766572666c6f776163636f756e742063 00005d96: PUSH2 0x6e20 00005d99: PUSH15 0x6f7420626520636f6e747261637420 00005da9: PUSH16 0x776e6572696e73756666696369656e74 00005dba: KECCAK256 00005dbb: PUSH27 0x647320666f72206f70657261746f7220706f6f6ca2646970667358 00005dd7: UNKNOWN(0x22) 00005dd8: SLT 00005dd9: KECCAK256 00005dda: ORIGIN 00005ddb: UNKNOWN(0xE8) 00005ddc: DIV 00005ddd: UNKNOWN(0x4C) 00005dde: UNKNOWN(0xE6) 00005ddf: SWAP13 00005de0: DUP8 00005de1: UNKNOWN(0xA9) 00005de2: UNKNOWN(0xE4) 00005de3: EXTCODECOPY 00005de4: UNKNOWN(0xD8) 00005de5: UNKNOWN(0xB5) 00005de6: PUSH9 0x4ac08f2a19e1fdf166 00005df0: UNKNOWN(0xBA) 00005df1: BYTE 00005df2: UNKNOWN(0xD6) 00005df3: OR 00005df4: SHL 00005df5: CALLVALUE 00005df6: DUP5 00005df7: EXTCODECOPY 00005df8: DIFFICULTY 00005df9: UNKNOWN(0xC8) 00005dfa: PUSH5 0x736f6c6343 00005e00: STOP 00005e01: MOD 00005e02: STOP 00005e03: STOP 00005e04: 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": "0xf876b837",
"selector": "0xf876b837",
"calldata_variants": [
"0xf876b837",
"0xf876b8370000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfba05415",
"selector": "0xfba05415",
"calldata_variants": [
"0xfba05415",
"0xfba054150000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd4a0a96",
"selector": "0xfd4a0a96",
"calldata_variants": [
"0xfd4a0a96",
"0xfd4a0a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfec740ee",
"selector": "0xfec740ee",
"calldata_variants": [
"0xfec740ee",
"0xfec740ee0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf07d4a4b",
"selector": "0xf07d4a4b",
"calldata_variants": [
"0xf07d4a4b",
"0xf07d4a4b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf14210a6",
"selector": "0xf14210a6",
"calldata_variants": [
"0xf14210a6",
"0xf14210a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf55583fe",
"selector": "0xf55583fe",
"calldata_variants": [
"0xf55583fe",
"0xf55583fe0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6496f13",
"selector": "0xf6496f13",
"calldata_variants": [
"0xf6496f13",
"0xf6496f130000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 24026,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x22127b6f1e8ad669bb8222f9b3532f50d75b4d62cc4f609b3daf82a8b3ce1c32
call_targets:
0xd65f5c7634bb7b61e4753b1248b76eb7cacc0cac
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x22127b6f1e8ad669bb8222f9b3532f50d75b4d62cc4f609b3daf82a8b3ce1c32",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xd65f5c7634bb7b61e4753b1248b76eb7cacc0cac"
],
"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": "0xf876b837",
"selector": "0xf876b837",
"calldata_variants": [
"0xf876b837",
"0xf876b8370000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfba05415",
"selector": "0xfba05415",
"calldata_variants": [
"0xfba05415",
"0xfba054150000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd4a0a96",
"selector": "0xfd4a0a96",
"calldata_variants": [
"0xfd4a0a96",
"0xfd4a0a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfec740ee",
"selector": "0xfec740ee",
"calldata_variants": [
"0xfec740ee",
"0xfec740ee0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf07d4a4b",
"selector": "0xf07d4a4b",
"calldata_variants": [
"0xf07d4a4b",
"0xf07d4a4b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf14210a6",
"selector": "0xf14210a6",
"calldata_variants": [
"0xf14210a6",
"0xf14210a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf55583fe",
"selector": "0xf55583fe",
"calldata_variants": [
"0xf55583fe",
"0xf55583fe0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6496f13",
"selector": "0xf6496f13",
"calldata_variants": [
"0xf6496f13",
"0xf6496f130000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6079,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8778,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 11670,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [
{
"pc": 24026,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 6
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x22127b6f1e8ad669bb8222f9b3532f50d75b4d62cc4f609b3daf82a8b3ce1c32
call_targets:
0xd65f5c7634bb7b61e4753b1248b76eb7cacc0cac
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x22127b6f1e8ad669bb8222f9b3532f50d75b4d62cc4f609b3daf82a8b3ce1c32",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xd65f5c7634bb7b61e4753b1248b76eb7cacc0cac"
],
"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": "0xf876b837",
"selector": "0xf876b837",
"calldata_variants": [
"0xf876b837",
"0xf876b8370000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfba05415",
"selector": "0xfba05415",
"calldata_variants": [
"0xfba05415",
"0xfba054150000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfd4a0a96",
"selector": "0xfd4a0a96",
"calldata_variants": [
"0xfd4a0a96",
"0xfd4a0a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfec740ee",
"selector": "0xfec740ee",
"calldata_variants": [
"0xfec740ee",
"0xfec740ee0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf07d4a4b",
"selector": "0xf07d4a4b",
"calldata_variants": [
"0xf07d4a4b",
"0xf07d4a4b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf14210a6",
"selector": "0xf14210a6",
"calldata_variants": [
"0xf14210a6",
"0xf14210a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf55583fe",
"selector": "0xf55583fe",
"calldata_variants": [
"0xf55583fe",
"0xf55583fe0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6496f13",
"selector": "0xf6496f13",
"calldata_variants": [
"0xf6496f13",
"0xf6496f130000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6079,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8778,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 11670,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": [
{
"pc": 24026,
"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": 13
}
|
| 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": 12
}
|