cd8d0cda-aaf1-4d81-b376-2f4a5954a551
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 |
|---|---|---|---|---|
| 31372 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111230 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 111231 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111232 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111233 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111234 | detector.run | complete | 1 / 3 | 1 week ago |
| 111235 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:298494] OpenAI Codex v0.77.0 (research preview)
[codex:298494] --------
[codex:298494] workdir: /tmp/codex-multi-13bn99xv
[codex:298494] model: gpt-5.2-codex
[codex:298494] provider: openai
[codex:298494] approval: never
[codex:298494] sandbox: read-only
[codex:298494] reasoning effort: xhigh
[codex:298494] reasoning summaries: auto
[codex:298494] session id: 019b80e5-2687-7483-bf6f-d95c454269b7
[codex:298494] --------
[codex:298494] user
[codex:298494] 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:298494]
[codex:298494] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:298494]
[codex:298494] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:298494] - Gas inefficiency, code quality, or best practices
[codex:298494] - Theoretical vulnerabilities without a clear extraction path
[codex:298494] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:298494] - Issues requiring social engineering or off-chain coordination
[codex:298494]
[codex:298494] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:298494] - CALL/DELEGATECALL with controllable destination or calldata
[codex:298494] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:298494] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:298494] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:298494] - External calls before state updates (reentrancy)
[codex:298494] - SELFDESTRUCT with controllable beneficiary
[codex:298494] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:298494]
[codex:298494] For each finding, you MUST explain:
[codex:298494] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:298494] 2. The concrete sequence of transactions to extract value
[codex:298494] 3. Why you believe this is exploitable (not just suspicious)
[codex:298494]
[codex:298494] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:298494] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:298494]
[codex:298494] Output MUST be valid JSON matching the provided schema.
[codex:298494] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:298494] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:298494] mcp startup: no servers
[codex:298494]
[codex:298494] thinking
[codex:298494] **Reading instructions and BYTECODE_BUNDLE.txt**
[codex:298494] exec
[codex:298494] /bin/bash -lc ls in /tmp/codex-multi-13bn99xv succeeded in 5ms:
[codex:298494] BYTECODE_BUNDLE.txt
[codex:298494] codex-output-schema.json
[codex:298494] exec
[codex:298494] /bin/bash -lc 'wc -l BYTECODE_BUNDLE.txt' in /tmp/codex-multi-13bn99xv succeeded in 6ms:
[codex:298494] 5 BYTECODE_BUNDLE.txt
[codex:298494] exec
[codex:298494] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-13bn99xv succeeded in 6ms:
[codex:298494] Runtime bytecode bundle for best-effort auditing.
[codex:298494] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:298494]
[codex:298494] FILE: runtime_bytecode.hex
[codex:298494] 0x60806040526004361061027d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301a8d0a51461028957806302d412c3146102b45780630988ca8c146103445780630c4be888146103cd578063110c75fb1461042457806312cef27a1461048d57806314d15059146104e457806318b919e914610527578063217fe6c6146105b757806324953eaa1461065857806327dc297e146106be578063286dd3f5146107355780632aefe07e146107785780632f4350c2146107a35780632fc8124d146107d25780633897418c1461081557806338bbfa50146108425780633f4ba83a146108ff5780633f73cc15146109165780634042b66f1461094157806343c0baf41461096c57806345644bf4146109fc57806355cc812c14610a3d578063593524ed14610a945780635a4dd2f614610ad55780635c975abb14610b005780635d26108614610b2f57806362aaf08914610bbf578063656d40f714610c00578063715018a614610c92578063719cec3f14610ca957806378d8b22714610cee5780637b9417c814610d1b57806383197ef014610d5e578063834cd32d14610d755780638456cb5914610da05780638a19c8bc14610db75780638da5cb5b14610de25780639a7ebd6c14610e395780639b19251a14610e665780639bc3f26914610ec1578063c0ab2fd414610f18578063c428a27814610f22578063c5c4744c14610f6a578063d440894414610f95578063db006a7514610fd6578063e2ec6ec31461101b578063eadd94ec14611081578063ec8ac4d8146110ac578063ecb1f43d146110fa578063f2fde38b14611125578063f530c0be14611168578063fc0c546a14611193575b610286336111ea565b50005b34801561029557600080fd5b5061029e6117f8565b6040518082815260200191505060405180910390f35b3480156102c057600080fd5b506102c9611805565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103095780820151818401526020810190506102ee565b50505050905090810190601f1680156103365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561035057600080fd5b506103cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506118a3565b005b3480156103d957600080fd5b506103e2611924565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561043057600080fd5b5061048b600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061194a565b005b34801561049957600080fd5b506104a2611b2c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104f057600080fd5b50610525600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b52565b005b34801561053357600080fd5b5061053c611bf2565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561057c578082015181840152602081019050610561565b50505050905090810190601f1680156105a95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105c357600080fd5b5061063e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611c2b565b604051808215151515815260200191505060405180910390f35b34801561066457600080fd5b506106bc60048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611cb2565b005b3480156106ca57600080fd5b506107336004803603810190808035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611d4f565b005b34801561074157600080fd5b50610776600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612101565b005b34801561078457600080fd5b5061078d612202565b6040518082815260200191505060405180910390f35b3480156107af57600080fd5b506107b8612208565b604051808215151515815260200191505060405180910390f35b3480156107de57600080fd5b50610813600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612220565b005b34801561082157600080fd5b50610840600480360381019080803590602001909291905050506122c0565b005b34801561084e57600080fd5b506108fd6004803603810190808035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612328565b005b34801561090b57600080fd5b5061091461232d565b005b34801561092257600080fd5b5061092b6123ed565b6040518082815260200191505060405180910390f35b34801561094d57600080fd5b506109566123f3565b6040518082815260200191505060405180910390f35b34801561097857600080fd5b506109816123f9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109c15780820151818401526020810190506109a6565b50505050905090810190601f1680156109ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a0857600080fd5b50610a3b600480360381019080803590602001909291908035906020019092919080359060200190929190505050612432565b005b348015610a4957600080fd5b50610a7e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124e5565b6040518082815260200191505060405180910390f35b348015610aa057600080fd5b50610abf6004803603810190808035906020019092919050505061252e565b6040518082815260200191505060405180910390f35b348015610ae157600080fd5b50610aea612546565b6040518082815260200191505060405180910390f35b348015610b0c57600080fd5b50610b1561254b565b604051808215151515815260200191505060405180910390f35b348015610b3b57600080fd5b50610b4461255e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b84578082015181840152602081019050610b69565b50505050905090810190601f168015610bb15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610bcb57600080fd5b50610bea60048036038101908080359060200190929190505050612597565b6040518082815260200191505060405180910390f35b348015610c0c57600080fd5b50610c71600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001909291905050506125b3565b60405180838152602001821515151581526020019250505060405180910390f35b348015610c9e57600080fd5b50610ca76129ca565b005b348015610cb557600080fd5b50610cd86004803603810190808035600019169060200190929190505050612acf565b6040518082815260200191505060405180910390f35b348015610cfa57600080fd5b50610d1960048036038101908080359060200190929190505050612ae7565b005b348015610d2757600080fd5b50610d5c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612b97565b005b348015610d6a57600080fd5b50610d73612c98565b005b348015610d8157600080fd5b50610d8a612d45565b6040518082815260200191505060405180910390f35b348015610dac57600080fd5b50610db5612d50565b005b348015610dc357600080fd5b50610dcc612e10565b6040518082815260200191505060405180910390f35b348015610dee57600080fd5b50610df7612e6e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e4557600080fd5b50610e6460048036038101908080359060200190929190505050612e94565b005b348015610e7257600080fd5b50610ea7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612efa565b604051808215151515815260200191505060405180910390f35b348015610ecd57600080fd5b50610f02600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f42565b6040518082815260200191505060405180910390f35b610f20612f5a565b005b348015610f2e57600080fd5b50610f4d60048036038101908080359060200190929190505050612f5c565b604051808381526020018281526020019250505060405180910390f35b348015610f7657600080fd5b50610f7f612f80565b6040518082815260200191505060405180910390f35b348015610fa157600080fd5b50610fc060048036038101908080359060200190929190505050612fa0565b6040518082815260200191505060405180910390f35b348015610fe257600080fd5b5061100160048036038101908080359060200190929190505050612fc1565b604051808215151515815260200191505060405180910390f35b34801561102757600080fd5b5061107f600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506130a7565b005b34801561108d57600080fd5b50611096613144565b6040518082815260200191505060405180910390f35b6110e0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111ea565b604051808215151515815260200191505060405180910390f35b34801561110657600080fd5b5061110f61314a565b6040518082815260200191505060405180910390f35b34801561113157600080fd5b50611166600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613150565b005b34801561117457600080fd5b5061117d6131b8565b6040518082815260200191505060405180910390f35b34801561119f57600080fd5b506111a86131c0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600080600080600080600080600080600080600061123d336040805190810160405280600981526020017f77686974656c69737400000000000000000000000000000000000000000000008152506118a3565b600160149054906101000a900460ff1615151561125957600080fd5b60003411151561126857600080fd5b611273610348612597565b9b5060008c11151561128157fe5b349a506112b1670de0b6b3a76400006112a38e8e6131e690919063ffffffff16565b61321e90919063ffffffff16565b995060008a1115156112c257600080fd5b6011600060038152602001908152602001600020600001546112ef6013548c61323490919063ffffffff16565b111515156112fc57600080fd5b600098508997506000965060009550600194505b60038511151561144c5760008814156113285761144c565b6011600086815260200190815260200160002060000154601354111561134d5761143f565b60135460116000878152602001908152602001600020600001540393508388101561137a5787925061137e565b8392505b6113938360135461323490919063ffffffff16565b6013819055506113ee6113df60116000888152602001908152602001600020600101546113d1670de0b6b3a7640000876131e690919063ffffffff16565b61321e90919063ffffffff16565b8a61323490919063ffffffff16565b985060018514156114135761140c838861323490919063ffffffff16565b9650611429565b611426838761323490919063ffffffff16565b95505b61143c838961325090919063ffffffff16565b97505b8480600101955050611310565b60008911151561145b57600080fd5b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166340c10f198f8b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561152057600080fd5b505af1158015611534573d6000803e3d6000fd5b505050506040513d602081101561154a57600080fd5b8101908080519060200190929190505050151561156657600080fd5b61157b8b60125461323490919063ffffffff16565b6012819055506115968b60155461323490919063ffffffff16565b6015819055508d73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad188d8c604051808381526020018281526020019250505060405180910390a36116368c611628670de0b6b3a76400008a6131e690919063ffffffff16565b61321e90919063ffffffff16565b91506116658c611657670de0b6b3a7640000896131e690919063ffffffff16565b61321e90919063ffffffff16565b90506116c961169061168160028461321e90919063ffffffff16565b8461323490919063ffffffff16565b6116bb600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166124e5565b61323490919063ffffffff16565b60146000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061177e61174560028361321e90919063ffffffff16565b611770601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166124e5565b61323490919063ffffffff16565b60146000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060019c50505050505050505050505050919050565b6849e75e938723ce180081565b600b8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561189b5780601f106118705761010080835404028352916020019161189b565b820191906000526020600020905b81548152906001019060200180831161187e57829003601f168201915b505050505081565b611920826002836040518082805190602001908083835b6020831015156118df57805182526020820191506020810190506020830392506118ba565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902061326990919063ffffffff16565b5050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119a657600080fd5b60006008826040518082805190602001908083835b6020831015156119e057805182526020820191506020810190506020830392506119bb565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206000015414151515611a2457600080fd5b6008600b6040518082805460018160011615610100020316600290048015611a835780601f10611a61576101008083540402835291820191611a83565b820191906000526020600020905b815481529060010190602001808311611a6f575b50509150509081526020016040518091039020600001546008826040518082805190602001908083835b602083101515611ad25780518252602082019150602081019050602083039250611aad565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206000015414151515611b1657600080fd5b611b1f81613282565b611b296000613347565b50565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bae57600080fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6040805190810160405280600981526020017f77686974656c697374000000000000000000000000000000000000000000000081525081565b6000611caa836002846040518082805190602001908083835b602083101515611c695780518252602082019150602081019050602083039250611c44565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206137cf90919063ffffffff16565b905092915050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d1057600080fd5b600090505b8151811015611d4b57611d3e8282815181101515611d2f57fe5b90602001906020020151612101565b8080600101915050611d15565b5050565b600080611d5b84613828565b1515611e59577fb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced600b604051808060200180602001838103835284818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611e115780601f10611de657610100808354040283529160200191611e11565b820191906000526020600020905b815481529060010190602001808311611df457829003601f168201915b5050838103825260118152602001807f496e76616c69642071756572792069642e000000000000000000000000000000815250602001935050505060405180910390a1600080fd5b611e61613852565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fb3577fb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced600b604051808060200180602001838103835284818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611f455780601f10611f1a57610100808354040283529160200191611f45565b820191906000526020600020905b815481529060010190602001808311611f2857829003601f168201915b5050838103825260278152602001807f53656e64657220646f6573206e6f74206d617463682063616c6c6261636b206181526020017f6464726573732e00000000000000000000000000000000000000000000000000815250604001935050505060405180910390a1600080fd5b611fbe8360096125b3565b80925081935050508015156120c5577fb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced600b60405180806020018060200183810383528481815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561207d5780601f106120525761010080835404028352916020019161207d565b820191906000526020600020905b81548152906001019060200180831161206057829003601f168201915b50508381038252601c8152602001807f5061727365206572726f7220666f72204a534f4e206e756d6265722e00000000815250602001935050505060405180910390a1600080fd5b600d60008560001916600019168152602001908152602001600020600090556120f061034883613bb4565b6120fb600954613347565b50505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561215d57600080fd5b61219c816040805190810160405280600981526020017f77686974656c6973740000000000000000000000000000000000000000000000815250613c0e565b7ff1abf01a1043b7c244d128e8595cf0c1d10743b022b03a02dffd8ca3bf729f5a81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b60095481565b600061221b612216336124e5565b612fc1565b905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561227c57600080fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561231c57600080fd5b61232581613d5f565b50565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561238957600080fd5b600160149054906101000a900460ff1615156123a457600080fd5b6000600160146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600a5481565b60125481565b6040805190810160405280600681526020017f6b72616b656e000000000000000000000000000000000000000000000000000081525081565b600080600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561249157600080fd5b600983111515156124a157600080fd5b8391508290505b60098110156124d4576124c5600a836131e690919063ffffffff16565b915080806001019150506124a8565b6124de8583613bb4565b5050505050565b6000601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006020528060005260406000206000915090505481565b600981565b600160149054906101000a900460ff1681565b6040805190810160405280600d81526020017f636f696e4d61726b65744361700000000000000000000000000000000000000081525081565b6000806000838152602001908152602001600020549050919050565b6000806060600080600080889450600c8551111515156125cf57fe5b6000935087925060009150600090505b84518110156129735760227f010000000000000000000000000000000000000000000000000000000000000002858281518110151561261a57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141561269257612966565b602e7f01000000000000000000000000000000000000000000000000000000000000000285828151811015156126c457fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156127405760019150612965565b60307f010000000000000000000000000000000000000000000000000000000000000002858281518110151561277257fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015801561288a575060397f010000000000000000000000000000000000000000000000000000000000000002858281518110151561281a57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191611155b1561295557612933603086838151811015156128a257fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900403612925600a876131e690919063ffffffff16565b61323490919063ffffffff16565b93508115612942576001830392505b600083141561295057612973565b612964565b600080819150965096506129be565b5b5b80806001019150506125df565b5b600083111561299e57612991600a856131e690919063ffffffff16565b9350600183039250612974565b60008414156129b657600080819150965096506129be565b836001965096505b50505050509250929050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a2657600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a26000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b4357600080fd5b610e108110151515612b5457600080fd5b806009819055507f738516904b1f940ab68ca84e47f57e31aeecf3a02e4c76fd9e69d639e863e3836009546040518082815260200191505060405180910390a150565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612bf357600080fd5b612c32816040805190810160405280600981526020017f77686974656c69737400000000000000000000000000000000000000000000008152506140a6565b7fd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612cf457600080fd5b6303c267006016540142111515612d0a57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b660221b37112b55581565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612dac57600080fd5b600160149054906101000a900460ff16151515612dc857600080fd5b60018060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60006011600060018152602001908152602001600020600001546013541015612e3c5760019050612e6b565b6011600060028152602001908152602001600020600001546013541015612e665760029050612e6b565b600390505b90565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612ef057600080fd5b80600a8190555050565b6000612f3b826040805190810160405280600981526020017f77686974656c6973740000000000000000000000000000000000000000000000815250611c2b565b9050919050565b60146020528060005260406000206000915090505481565b565b60116020528060005260406000206000915090508060000154908060010154905082565b6000612f9b633b9aca0060135461321e90919063ffffffff16565b905090565b6000633b9aca00612fb083612597565b811515612fb957fe5b049050919050565b60008082118015612fda5750612fd6336124e5565b8211155b1515612fe557600080fd5b61300082612ff2336124e5565b61325090919063ffffffff16565b601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506130588260155461325090919063ffffffff16565b6015819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151561309e57600080fd5b60019050919050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561310557600080fd5b600090505b815181101561314057613133828281518110151561312457fe5b90602001906020020151612b97565b808060010191505061310a565b5050565b60135481565b600c5481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131ac57600080fd5b6131b5816141f7565b50565b633b9aca0081565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000808314156131f95760009050613218565b818302905081838281151561320a57fe5b0414151561321457fe5b8090505b92915050565b6000818381151561322b57fe5b04905092915050565b6000818301905082811015151561324757fe5b80905092915050565b600082821115151561325e57fe5b818303905092915050565b61327382826137cf565b151561327e57600080fd5b5050565b80600b90805190602001906132989291906157c0565b5042600c819055507fab91f43e7561597fdd3c15c687f3d901be803beef4b59db4d39350523ffe80a381426040518080602001838152602001828103825284818151815260200191508051906020019080838360005b838110156133095780820151818401526020810190506132ee565b50505050905090810190601f1680156133365780820380516001836020036101000a031916815260200191505b50935050505060405180910390a150565b6000806133766015543073ffffffffffffffffffffffffffffffffffffffff163161325090919063ffffffff16565b9150816133ba6040805190810160405280600381526020017f55524c0000000000000000000000000000000000000000000000000000000000815250600a546142f3565b11156134f7577fb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced600b6040518080602001806020018381038352848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156134705780601f1061344557610100808354040283529160200191613470565b820191906000526020600020905b81548152906001019060200180831161345357829003601f168201915b5050838103825260408152602001807f496e73756666696369656e742066756e64732e2043616c6c20746f7055704f7281526020017f61636c65282920746f206164642045544820746f20636f76657220666565732e815250604001935050505060405180910390a16134f26020604051908101604052806000815250613282565b6137ca565b600083111561365757613650836040805190810160405280600381526020017f55524c00000000000000000000000000000000000000000000000000000000008152506008600b60405180828054600181600116156101000203166002900480156135995780601f10613577576101008083540402835291820191613599565b820191906000526020600020905b815481529060010190602001808311613585575b505091505090815260200160405180910390206001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156136435780601f1061361857610100808354040283529160200191613643565b820191906000526020600020905b81548152906001019060200180831161362657829003601f168201915b5050505050600a546146d0565b90506137a9565b6137a66040805190810160405280600381526020017f55524c00000000000000000000000000000000000000000000000000000000008152506008600b60405180828054600181600116156101000203166002900480156136ef5780601f106136cd5761010080835404028352918201916136ef565b820191906000526020600020905b8154815290600101906020018083116136db575b505091505090815260200160405180910390206001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156137995780601f1061376e57610100808354040283529160200191613799565b820191906000526020600020905b81548152906001019060200180831161377c57829003601f168201915b5050505050600a54614c84565b90505b42600d60008360001916600019168152602001908152602001600020819055505b505050565b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600c54600d600084600019166000191681526020019081526020016000205410159050919050565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806138c4575060006138c2600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16615238565b145b156138d5576138d36000615243565b505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561395b57600080fd5b505af115801561396f573d6000803e3d6000fd5b505050506040513d602081101561398557600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515613aee57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015613a7257600080fd5b505af1158015613a86573d6000803e3d6000fd5b505050506040513d6020811015613a9c57600080fd5b8101908080519060200190929190505050600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c281d19e6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015613b7457600080fd5b505af1158015613b88573d6000803e3d6000fd5b505050506040513d6020811015613b9e57600080fd5b8101908080519060200190929190505050905090565b80600080848152602001908152602001600020819055507f381b23b82edcb5da985c284b8f2ab86e09dad5df2a68849414b99f3fcb11b5138282604051808381526020018281526020019250505060405180910390a15050565b613c8b826002836040518082805190602001908083835b602083101515613c4a5780518252602082019150602081019050602083039250613c25565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902061525490919063ffffffff16565b7fd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613d20578082015181840152602081019050613d05565b50505050905090810190601f168015613d4d5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480613dd057506000613dce600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16615238565b145b15613de157613ddf6000615243565b505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015613e6757600080fd5b505af1158015613e7b573d6000803e3d6000fd5b505050506040513d6020811015613e9157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515613ffa57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015613f7e57600080fd5b505af1158015613f92573d6000803e3d6000fd5b505050506040513d6020811015613fa857600080fd5b8101908080519060200190929190505050600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ca6ad1e4826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561408b57600080fd5b505af115801561409f573d6000803e3d6000fd5b5050505050565b614123826002836040518082805190602001908083835b6020831015156140e257805182526020820191506020810190506020830392506140bd565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206152b290919063ffffffff16565b7fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b7004898282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156141b857808201518184015260208101905061419d565b50505050905090810190601f1680156141e55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561423357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061436557506000614363600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16615238565b145b15614376576143746000615243565b505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156143fc57600080fd5b505af1158015614410573d6000803e3d6000fd5b505050506040513d602081101561442657600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561458f57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561451357600080fd5b505af1158015614527573d6000803e3d6000fd5b505050506040513d602081101561453d57600080fd5b8101908080519060200190929190505050600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632ef3accc84846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015614640578082015181840152602081019050614625565b50505050905090810190601f16801561466d5780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b15801561468d57600080fd5b505af11580156146a1573d6000803e3d6000fd5b505050506040513d60208110156146b757600080fd5b8101908080519060200190929190505050905092915050565b6000806000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061474457506000614742600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16615238565b145b15614755576147536000615243565b505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156147db57600080fd5b505af11580156147ef573d6000803e3d6000fd5b505050506040513d602081101561480557600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561496e57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156148f257600080fd5b505af1158015614906573d6000803e3d6000fd5b505050506040513d602081101561491c57600080fd5b8101908080519060200190929190505050600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632ef3accc86856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015614a1f578082015181840152602081019050614a04565b50505050905090810190601f168015614a4c5780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b158015614a6c57600080fd5b505af1158015614a80573d6000803e3d6000fd5b505050506040513d6020811015614a9657600080fd5b81019080805190602001909291905050509050823a02670de0b6b3a764000001811115614ac95760006001029150614c7b565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c51be90f82888888886040518663ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018060200180602001848152602001838103835286818151815260200191508051906020019080838360005b83811015614b87578082015181840152602081019050614b6c565b50505050905090810190601f168015614bb45780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b83811015614bed578082015181840152602081019050614bd2565b50505050905090810190601f168015614c1a5780820380516001836020036101000a031916815260200191505b5096505050505050506020604051808303818588803b158015614c3c57600080fd5b505af1158015614c50573d6000803e3d6000fd5b50505050506040513d6020811015614c6757600080fd5b810190808051906020019092919050505091505b50949350505050565b6000806000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480614cf857506000614cf6600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16615238565b145b15614d0957614d076000615243565b505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015614d8f57600080fd5b505af1158015614da3573d6000803e3d6000fd5b505050506040513d6020811015614db957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515614f2257600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338cc48316040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015614ea657600080fd5b505af1158015614eba573d6000803e3d6000fd5b505050506040513d6020811015614ed057600080fd5b8101908080519060200190929190505050600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632ef3accc86856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015614fd3578082015181840152602081019050614fb8565b50505050905090810190601f1680156150005780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b15801561502057600080fd5b505af1158015615034573d6000803e3d6000fd5b505050506040513d602081101561504a57600080fd5b81019080805190602001909291905050509050823a02670de0b6b3a76400000181111561507d5760006001029150615230565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c51be90f8260008888886040518663ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018060200180602001848152602001838103835286818151815260200191508051906020019080838360005b8381101561513c578082015181840152602081019050615121565b50505050905090810190601f1680156151695780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b838110156151a2578082015181840152602081019050615187565b50505050905090810190601f1680156151cf5780820380516001836020036101000a031916815260200191505b5096505050505050506020604051808303818588803b1580156151f157600080fd5b505af1158015615205573d6000803e3d6000fd5b50505050506040513d602081101561521c57600080fd5b810190808051906020019092919050505091505b509392505050565b6000813b9050919050565b600061524d615310565b9050919050565b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600080615330731d3b2638a7cc9f2cb3d298a3da7a90b67e5506ed615238565b11156153d257731d3b2638a7cc9f2cb3d298a3da7a90b67e5506ed600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506153c96040805190810160405280600b81526020017f6574685f6d61696e6e65740000000000000000000000000000000000000000008152506157a6565b600190506157a3565b60006153f173c03a2615d5efaf5f49f60b7bb6583eaec212fdf1615238565b11156154935773c03a2615d5efaf5f49f60b7bb6583eaec212fdf1600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061548a6040805190810160405280600c81526020017f6574685f726f707374656e3300000000000000000000000000000000000000008152506157a6565b600190506157a3565b60006154b273b7a07bcf2ba2f2703b24c0691b5278999c59ac7e615238565b11156155545773b7a07bcf2ba2f2703b24c0691b5278999c59ac7e600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061554b6040805190810160405280600981526020017f6574685f6b6f76616e00000000000000000000000000000000000000000000008152506157a6565b600190506157a3565b600061557373146500cfd35b22e4a392fe0adc06de1a1368ed48615238565b11156156155773146500cfd35b22e4a392fe0adc06de1a1368ed48600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061560c6040805190810160405280600b81526020017f6574685f72696e6b6562790000000000000000000000000000000000000000008152506157a6565b600190506157a3565b6000615634736f485c8bf6fc43ea212e93bbf8ce046c7f1cb475615238565b111561569857736f485c8bf6fc43ea212e93bbf8ce046c7f1cb475600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506157a3565b60006156b77320e12a1f859b3feae5fb2a0a32c18f5a65555bbf615238565b111561571b577320e12a1f859b3feae5fb2a0a32c18f5a65555bbf600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506157a3565b600061573a7351efaf4c8b3c9afbd5ab9f4bbc82784ab6ef8faa615238565b111561579e577351efaf4c8b3c9afbd5ab9f4bbc82784ab6ef8faa600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506157a3565b600090505b90565b80600590805190602001906157bc9291906157c0565b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061580157805160ff191683800117855561582f565b8280016001018555821561582f579182015b8281111561582e578251825591602001919060010190615813565b5b50905061583c9190615840565b5090565b61586291905b8082111561585e576000816000905550600101615846565b5090565b905600a165627a7a72305820afd65d74e13119b5c0d39eb1872cf6895466fd4091c65f2bada336fd34ae22f50029
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing bytecode for exploit indicators**
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] path='BYTECODE_BUNDLE.txt'
[codex:298494] text=open(path,'r').read()
[codex:298494] # extract hex after 0x
[codex:298494] m=re.search(r'0x([0-9a-fA-F]+)', text)
[codex:298494] if not m:
[codex:298494] print('no hex')
[codex:298494] raise SystemExit
[codex:298494] hexstr=m.group(1)
[codex:298494] print('hex length', len(hexstr))
[codex:298494] # disassemble linear
[codex:298494] ops=[]
[codex:298494] # mapping push size
[codex:298494] op=0
[codex:298494] pos=0
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] size=len(bytecode)
[codex:298494] # track occurrences
[codex:298494] targets={0xf1:'CALL',0xf2:'CALLCODE',0xf4:'DELEGATECALL',0xfa:'STATICCALL',0xff:'SELFDESTRUCT'}
[codex:298494] occ={k:[] for k in targets}
[codex:298494] while pos < size:
[codex:298494] b=bytecode[pos]
[codex:298494] if b in targets:
[codex:298494] occ[b].append(pos)
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] push_bytes = b - 0x5f
[codex:298494] pos += 1 + push_bytes
[codex:298494] else:
[codex:298494] pos += 1
[codex:298494] # print counts and first few positions
[codex:298494] for k,v in occ.items():
[codex:298494] print(targets[k], len(v), 'first', v[:10])
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 28ms:
[codex:298494] hex length 45346
[codex:298494] CALL 19 first [5411, 12430, 14686, 14965, 15223, 15978, 16257, 16526, 17407, 17686]
[codex:298494] CALLCODE 0 first []
[codex:298494] DELEGATECALL 0 first []
[codex:298494] STATICCALL 0 first []
[codex:298494] SELFDESTRUCT 1 first [11588]
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing SELFDESTRUCT safety**
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] text=open('BYTECODE_BUNDLE.txt').read()
[codex:298494] hexstr=re.search(r'0x([0-9a-fA-F]+)', text).group(1)
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] # simple disasm around target
[codex:298494] start=11540
[codex:298494] end=11640
[codex:298494] # opcode names
[codex:298494] opnames={
[codex:298494] 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:298494] 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:298494] 0x20:'SHA3',
[codex:298494] 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:298494] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:298494] 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:298494] 0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
[codex:298494] 0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:298494] 0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:298494] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:298494] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:298494] }
[codex:298494]
[codex:298494] pos=start
[codex:298494] while pos<end:
[codex:298494] b=bytecode[pos]
[codex:298494] name=opnames.get(b, 'OP'+hex(b))
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] n=b-0x5f
[codex:298494] data=bytecode[pos+1:pos+1+n]
[codex:298494] print(f'{pos:06x}: {name} 0x{data.hex()}')
[codex:298494] pos+=1+n
[codex:298494] else:
[codex:298494] print(f'{pos:06x}: {name}')
[codex:298494] pos+=1
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 25ms:
[codex:298494] 002d14: STOP
[codex:298494] 002d15: EXP
[codex:298494] 002d16: SWAP1
[codex:298494] 002d17: DIV
[codex:298494] 002d18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:298494] 002d2d: AND
[codex:298494] 002d2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:298494] 002d43: AND
[codex:298494] 002d44: SELFDESTRUCT
[codex:298494] 002d45: JUMPDEST
[codex:298494] 002d46: PUSH7 0x0221b37112b555
[codex:298494] 002d4e: DUP2
[codex:298494] 002d4f: JUMP
[codex:298494] 002d50: JUMPDEST
[codex:298494] 002d51: PUSH1 0x01
[codex:298494] 002d53: PUSH1 0x00
[codex:298494] 002d55: SWAP1
[codex:298494] 002d56: SLOAD
[codex:298494] 002d57: SWAP1
[codex:298494] 002d58: PUSH2 0x0100
[codex:298494]
[codex:298494] thinking
[codex:298494] **Planning detailed disassembly analysis**
[codex:298494]
[codex:298494] I'm figuring out how to realign the disassembly around the SELFDESTRUCT opcode by locating the nearest preceding JUMPDEST and checking for ownership checks before selfdestruct. I want to parse opcodes carefully to reconstruct control flow and see if selfdestruct is protected from unauthorized calls. This will involve scripting a sequential parser to identify instruction positions and analyze the relevant code block.
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] text=open('BYTECODE_BUNDLE.txt').read()
[codex:298494] hexstr=re.search(r'0x([0-9a-fA-F]+)', text).group(1)
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] # disassemble linear to get positions and opcodes
[codex:298494] pos=0
[codex:298494] ops=[]
[codex:298494] while pos < len(bytecode):
[codex:298494] b=bytecode[pos]
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] n=b-0x5f
[codex:298494] data=bytecode[pos+1:pos+1+n]
[codex:298494] ops.append((pos,b,data))
[codex:298494] pos += 1+n
[codex:298494] else:
[codex:298494] ops.append((pos,b,None))
[codex:298494] pos += 1
[codex:298494] # find selfdestruct pos
[codex:298494] selfs=[pos for (pos,b,data) in ops if b==0xff]
[codex:298494] print('selfdestruct positions', selfs)
[codex:298494] # find nearest preceding JUMPDEST
[codex:298494] jumpdests=[pos for (pos,b,data) in ops if b==0x5b]
[codex:298494] for sd in selfs:
[codex:298494] prev=[jd for jd in jumpdests if jd<sd]
[codex:298494] jd=max(prev) if prev else None
[codex:298494] print('sd', sd, 'prev jumpdest', jd)
[codex:298494] # print instructions from jd to sd+20
[codex:298494] if jd is None: continue
[codex:298494] # build mapping for op names
[codex:298494] opnames={
[codex:298494] 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:298494] 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:298494] 0x20:'SHA3',
[codex:298494] 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:298494] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:298494] 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:298494] 0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
[codex:298494] 0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:298494] 0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:298494] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:298494] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:298494] }
[codex:298494] for pos,b,data in ops:
[codex:298494] if pos < jd: continue
[codex:298494] if pos > sd+20: break
[codex:298494] name=opnames.get(b, hex(b))
[codex:298494] if data is not None:
[codex:298494] print(f'{pos:06x}: {name} 0x{data.hex()}')
[codex:298494] else:
[codex:298494] print(f'{pos:06x}: {name}')
[codex:298494] print('---')
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 32ms:
[codex:298494] selfdestruct positions [11588]
[codex:298494] sd 11588 prev jumpdest 11530
[codex:298494] 002d0a: JUMPDEST
[codex:298494] 002d0b: PUSH1 0x01
[codex:298494] 002d0d: PUSH1 0x00
[codex:298494] 002d0f: SWAP1
[codex:298494] 002d10: SLOAD
[codex:298494] 002d11: SWAP1
[codex:298494] 002d12: PUSH2 0x0100
[codex:298494] 002d15: EXP
[codex:298494] 002d16: SWAP1
[codex:298494] 002d17: DIV
[codex:298494] 002d18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:298494] 002d2d: AND
[codex:298494] 002d2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
[codex:298494] 002d43: AND
[codex:298494] 002d44: SELFDESTRUCT
[codex:298494] 002d45: JUMPDEST
[codex:298494] 002d46: PUSH7 0x0221b37112b555
[codex:298494] 002d4e: DUP2
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing storage and function dispatch**
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] text=open('BYTECODE_BUNDLE.txt').read()
[codex:298494] hexstr=re.search(r'0x([0-9a-fA-F]+)', text).group(1)
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] # disassemble linear
[codex:298494] pos=0
[codex:298494] ops=[]
[codex:298494] while pos < len(bytecode):
[codex:298494] b=bytecode[pos]
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] n=b-0x5f
[codex:298494] data=bytecode[pos+1:pos+1+n]
[codex:298494] ops.append((pos,b,data))
[codex:298494] pos += 1+n
[codex:298494] else:
[codex:298494] ops.append((pos,b,None))
[codex:298494] pos += 1
[codex:298494] # find push2 0x2d0a occurrences
[codex:298494] for i,(pos,b,data) in enumerate(ops):
[codex:298494] if b==0x61 and data==bytes.fromhex('2d0a'):
[codex:298494] # show context around
[codex:298494] ctx=ops[max(0,i-5):i+6]
[codex:298494] print('Found PUSH2 0x2d0a at', hex(pos))
[codex:298494] for p,op,d in ctx:
[codex:298494] name=f'0x{op:02x}'
[codex:298494] if 0x60 <= op <= 0x7f:
[codex:298494] print(f' {p:06x}: PUSH{op-0x5f} 0x{d.hex()}')
[codex:298494] else:
[codex:298494] print(f' {p:06x}: {name}')
[codex:298494] print('---')
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 31ms:
[codex:298494] Found PUSH2 0x2d0a at 0x2d02
[codex:298494] 002cfd: 0x01
[codex:298494] 002cfe: 0x42
[codex:298494] 002cff: 0x11
[codex:298494] 002d00: 0x15
[codex:298494] 002d01: 0x15
[codex:298494] 002d02: PUSH2 0x2d0a
[codex:298494] 002d05: 0x57
[codex:298494] 002d06: PUSH1 0x00
[codex:298494] 002d08: 0x80
[codex:298494] 002d09: 0xfd
[codex:298494] 002d0a: 0x5b
[codex:298494] ---
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing opcode sequence**
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] text=open('BYTECODE_BUNDLE.txt').read()
[codex:298494] hexstr=re.search(r'0x([0-9a-fA-F]+)', text).group(1)
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] # disassemble opnames
[codex:298494] opnames={
[codex:298494] 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:298494] 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:298494] 0x20:'SHA3',
[codex:298494] 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:298494] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:298494] 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:298494] 0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
[codex:298494] 0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:298494] 0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:298494] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:298494] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:298494] }
[codex:298494]
[codex:298494] # disassemble around 0x2cfd to 0x2d0a
[codex:298494] start=0x2cef
[codex:298494] end=0x2d10
[codex:298494] pos=0
[codex:298494] # build list of (pos,op,data)
[codex:298494] ops=[]
[codex:298494] while pos < len(bytecode):
[codex:298494] b=bytecode[pos]
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] n=b-0x5f
[codex:298494] data=bytecode[pos+1:pos+1+n]
[codex:298494] ops.append((pos,b,data))
[codex:298494] pos+=1+n
[codex:298494] else:
[codex:298494] ops.append((pos,b,None))
[codex:298494] pos+=1
[codex:298494] for pos,b,data in ops:
[codex:298494] if pos < start: continue
[codex:298494] if pos > end: break
[codex:298494] name=opnames.get(b,hex(b))
[codex:298494] if data is not None:
[codex:298494] print(f'{pos:06x}: {name} 0x{data.hex()}')
[codex:298494] else:
[codex:298494] print(f'{pos:06x}: {name}')
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 30ms:
[codex:298494] 002cef: JUMPI
[codex:298494] 002cf0: PUSH1 0x00
[codex:298494] 002cf2: DUP1
[codex:298494] 002cf3: REVERT
[codex:298494] 002cf4: JUMPDEST
[codex:298494] 002cf5: PUSH4 0x03c26700
[codex:298494] 002cfa: PUSH1 0x16
[codex:298494] 002cfc: SLOAD
[codex:298494] 002cfd: ADD
[codex:298494] 002cfe: TIMESTAMP
[codex:298494] 002cff: GT
[codex:298494] 002d00: ISZERO
[codex:298494] 002d01: ISZERO
[codex:298494] 002d02: PUSH2 0x2d0a
[codex:298494] 002d05: JUMPI
[codex:298494] 002d06: PUSH1 0x00
[codex:298494] 002d08: DUP1
[codex:298494] 002d09: REVERT
[codex:298494] 002d0a: JUMPDEST
[codex:298494] 002d0b: PUSH1 0x01
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing JUMPI time check logic**
[codex:298494] exec
[codex:298494] /bin/bash -lc "python - <<'PY'
[codex:298494] import re
[codex:298494] text=open('BYTECODE_BUNDLE.txt').read()
[codex:298494] hexstr=re.search(r'0x([0-9a-fA-F]+)', text).group(1)
[codex:298494] bytecode=bytes.fromhex(hexstr)
[codex:298494] # opnames
[codex:298494] opnames={
[codex:298494] 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:298494] 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:298494] 0x20:'SHA3',
[codex:298494] 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:298494] 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:298494] 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:298494] 0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
[codex:298494] 0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:298494] 0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:298494] 0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:298494] 0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:298494] }
[codex:298494]
[codex:298494] # disassemble around 0x2c80
[codex:298494] start=0x2c80
[codex:298494] end=0x2d0b
[codex:298494] # build list
[codex:298494] pos=0
[codex:298494] ops=[]
[codex:298494] while pos < len(bytecode):
[codex:298494] b=bytecode[pos]
[codex:298494] if 0x60 <= b <= 0x7f:
[codex:298494] n=b-0x5f
[codex:298494] data=bytecode[pos+1:pos+1+n]
[codex:298494] ops.append((pos,b,data))
[codex:298494] pos+=1+n
[codex:298494] else:
[codex:298494] ops.append((pos,b,None))
[codex:298494] pos+=1
[codex:298494] for pos,b,data in ops:
[codex:298494] if pos < start: continue
[codex:298494] if pos > end: break
[codex:298494] name=opnames.get(b,hex(b))
[codex:298494] if data is not None:
[codex:298494] print(f'{pos:06x}: {name} 0x{data.hex()}')
[codex:298494] else:
[codex:298494] print(f'{pos:06x}: {name}')
[codex:298494] PY" in /tmp/codex-multi-13bn99xv succeeded in 32ms:
[codex:298494] 002c85: AND
[codex:298494] 002c86: DUP2
[codex:298494] 002c87: MSTORE
[codex:298494] 002c88: PUSH1 0x20
[codex:298494] 002c8a: ADD
[codex:298494] 002c8b: SWAP2
[codex:298494] 002c8c: POP
[codex:298494] 002c8d: POP
[codex:298494] 002c8e: PUSH1 0x40
[codex:298494] 002c90: MLOAD
[codex:298494] 002c91: DUP1
[codex:298494] 002c92: SWAP2
[codex:298494] 002c93: SUB
[codex:298494] 002c94: SWAP1
[codex:298494] 002c95: LOG1
[codex:298494] 002c96: POP
[codex:298494] 002c97: JUMP
[codex:298494] 002c98: JUMPDEST
[codex:298494] 002c99: PUSH1 0x01
[codex:298494] 002c9b: PUSH1 0x00
[codex:298494]
[codex:298494] thinking
[codex:298494] **Analyzing contract security and owner checks**
[codex:298494] codex
[codex:298494] {"no_findings":true,"summary":"Reviewed BYTECODE_BUNDLE.txt runtime bytecode; no concrete, attacker-exploitable value extraction path identified. The only SELFDESTRUCT (offset 0x2d44) is behind a CALLER==owner check and a timestamp gate, and no DELEGATECALL/CALLCODE patterns were found.","findings":[]}
[codex:298494] tokens used
[codex:298494] 38,528
[codex:298494] {"no_findings":true,"summary":"Reviewed BYTECODE_BUNDLE.txt runtime bytecode; no concrete, attacker-exploitable value extraction path identified. The only SELFDESTRUCT (offset 0x2d44) is behind a CALLER==owner check and a timestamp gate, and no DELEGATECALL/CALLCODE patterns were found.","findings":[]}
{
"codex": {
"ran_at": "2026-01-02T22:51:02.028794+00:00",
"returncode": 0
},
"summary": "Reviewed BYTECODE_BUNDLE.txt runtime bytecode; no concrete, attacker-exploitable value extraction path identified. The only SELFDESTRUCT (offset 0x2d44) is behind a CALLER==owner check and a timestamp gate, and no DELEGATECALL/CALLCODE patterns were found.",
"raw_final": {
"summary": "Reviewed BYTECODE_BUNDLE.txt runtime bytecode; no concrete, attacker-exploitable value extraction path identified. The only SELFDESTRUCT (offset 0x2d44) is behind a CALLER==owner check and a timestamp gate, and no DELEGATECALL/CALLCODE patterns were found.",
"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 0x027d 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002e: SWAP1 0000002f: DIV 00000030: PUSH4 0xffffffff 00000035: AND 00000036: DUP1 00000037: PUSH4 0x01a8d0a5 0000003c: EQ 0000003d: PUSH2 0x0289 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0x02d412c3 00000047: EQ 00000048: PUSH2 0x02b4 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0x0988ca8c 00000052: EQ 00000053: PUSH2 0x0344 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0x0c4be888 0000005d: EQ 0000005e: PUSH2 0x03cd 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0x110c75fb 00000068: EQ 00000069: PUSH2 0x0424 0000006c: JUMPI 0000006d: DUP1 0000006e: PUSH4 0x12cef27a 00000073: EQ 00000074: PUSH2 0x048d 00000077: JUMPI 00000078: DUP1 00000079: PUSH4 0x14d15059 0000007e: EQ 0000007f: PUSH2 0x04e4 00000082: JUMPI 00000083: DUP1 00000084: PUSH4 0x18b919e9 00000089: EQ 0000008a: PUSH2 0x0527 0000008d: JUMPI 0000008e: DUP1 0000008f: PUSH4 0x217fe6c6 00000094: EQ 00000095: PUSH2 0x05b7 00000098: JUMPI 00000099: DUP1 0000009a: PUSH4 0x24953eaa 0000009f: EQ 000000a0: PUSH2 0x0658 000000a3: JUMPI 000000a4: DUP1 000000a5: PUSH4 0x27dc297e 000000aa: EQ 000000ab: PUSH2 0x06be 000000ae: JUMPI 000000af: DUP1 000000b0: PUSH4 0x286dd3f5 000000b5: EQ 000000b6: PUSH2 0x0735 000000b9: JUMPI 000000ba: DUP1 000000bb: PUSH4 0x2aefe07e 000000c0: EQ 000000c1: PUSH2 0x0778 000000c4: JUMPI 000000c5: DUP1 000000c6: PUSH4 0x2f4350c2 000000cb: EQ 000000cc: PUSH2 0x07a3 000000cf: JUMPI 000000d0: DUP1 000000d1: PUSH4 0x2fc8124d 000000d6: EQ 000000d7: PUSH2 0x07d2 000000da: JUMPI 000000db: DUP1 000000dc: PUSH4 0x3897418c 000000e1: EQ 000000e2: PUSH2 0x0815 000000e5: JUMPI 000000e6: DUP1 000000e7: PUSH4 0x38bbfa50 000000ec: EQ 000000ed: PUSH2 0x0842 000000f0: JUMPI 000000f1: DUP1 000000f2: PUSH4 0x3f4ba83a 000000f7: EQ 000000f8: PUSH2 0x08ff 000000fb: JUMPI 000000fc: DUP1 000000fd: PUSH4 0x3f73cc15 00000102: EQ 00000103: PUSH2 0x0916 00000106: JUMPI 00000107: DUP1 00000108: PUSH4 0x4042b66f 0000010d: EQ 0000010e: PUSH2 0x0941 00000111: JUMPI 00000112: DUP1 00000113: PUSH4 0x43c0baf4 00000118: EQ 00000119: PUSH2 0x096c 0000011c: JUMPI 0000011d: DUP1 0000011e: PUSH4 0x45644bf4 00000123: EQ 00000124: PUSH2 0x09fc 00000127: JUMPI 00000128: DUP1 00000129: PUSH4 0x55cc812c 0000012e: EQ 0000012f: PUSH2 0x0a3d 00000132: JUMPI 00000133: DUP1 00000134: PUSH4 0x593524ed 00000139: EQ 0000013a: PUSH2 0x0a94 0000013d: JUMPI 0000013e: DUP1 0000013f: PUSH4 0x5a4dd2f6 00000144: EQ 00000145: PUSH2 0x0ad5 00000148: JUMPI 00000149: DUP1 0000014a: PUSH4 0x5c975abb 0000014f: EQ 00000150: PUSH2 0x0b00 00000153: JUMPI 00000154: DUP1 00000155: PUSH4 0x5d261086 0000015a: EQ 0000015b: PUSH2 0x0b2f 0000015e: JUMPI 0000015f: DUP1 00000160: PUSH4 0x62aaf089 00000165: EQ 00000166: PUSH2 0x0bbf 00000169: JUMPI 0000016a: DUP1 0000016b: PUSH4 0x656d40f7 00000170: EQ 00000171: PUSH2 0x0c00 00000174: JUMPI 00000175: DUP1 00000176: PUSH4 0x715018a6 0000017b: EQ 0000017c: PUSH2 0x0c92 0000017f: JUMPI 00000180: DUP1 00000181: PUSH4 0x719cec3f 00000186: EQ 00000187: PUSH2 0x0ca9 0000018a: JUMPI 0000018b: DUP1 0000018c: PUSH4 0x78d8b227 00000191: EQ 00000192: PUSH2 0x0cee 00000195: JUMPI 00000196: DUP1 00000197: PUSH4 0x7b9417c8 0000019c: EQ 0000019d: PUSH2 0x0d1b 000001a0: JUMPI 000001a1: DUP1 000001a2: PUSH4 0x83197ef0 000001a7: EQ 000001a8: PUSH2 0x0d5e 000001ab: JUMPI 000001ac: DUP1 000001ad: PUSH4 0x834cd32d 000001b2: EQ 000001b3: PUSH2 0x0d75 000001b6: JUMPI 000001b7: DUP1 000001b8: PUSH4 0x8456cb59 000001bd: EQ 000001be: PUSH2 0x0da0 000001c1: JUMPI 000001c2: DUP1 000001c3: PUSH4 0x8a19c8bc 000001c8: EQ 000001c9: PUSH2 0x0db7 000001cc: JUMPI 000001cd: DUP1 000001ce: PUSH4 0x8da5cb5b 000001d3: EQ 000001d4: PUSH2 0x0de2 000001d7: JUMPI 000001d8: DUP1 000001d9: PUSH4 0x9a7ebd6c 000001de: EQ 000001df: PUSH2 0x0e39 000001e2: JUMPI 000001e3: DUP1 000001e4: PUSH4 0x9b19251a 000001e9: EQ 000001ea: PUSH2 0x0e66 000001ed: JUMPI 000001ee: DUP1 000001ef: PUSH4 0x9bc3f269 000001f4: EQ 000001f5: PUSH2 0x0ec1 000001f8: JUMPI 000001f9: DUP1 000001fa: PUSH4 0xc0ab2fd4 000001ff: EQ 00000200: PUSH2 0x0f18 00000203: JUMPI 00000204: DUP1 00000205: PUSH4 0xc428a278 0000020a: EQ 0000020b: PUSH2 0x0f22 0000020e: JUMPI 0000020f: DUP1 00000210: PUSH4 0xc5c4744c 00000215: EQ 00000216: PUSH2 0x0f6a 00000219: JUMPI 0000021a: DUP1 0000021b: PUSH4 0xd4408944 00000220: EQ 00000221: PUSH2 0x0f95 00000224: JUMPI 00000225: DUP1 00000226: PUSH4 0xdb006a75 0000022b: EQ 0000022c: PUSH2 0x0fd6 0000022f: JUMPI 00000230: DUP1 00000231: PUSH4 0xe2ec6ec3 00000236: EQ 00000237: PUSH2 0x101b 0000023a: JUMPI 0000023b: DUP1 0000023c: PUSH4 0xeadd94ec 00000241: EQ 00000242: PUSH2 0x1081 00000245: JUMPI 00000246: DUP1 00000247: PUSH4 0xec8ac4d8 0000024c: EQ 0000024d: PUSH2 0x10ac 00000250: JUMPI 00000251: DUP1 00000252: PUSH4 0xecb1f43d 00000257: EQ 00000258: PUSH2 0x10fa 0000025b: JUMPI 0000025c: DUP1 0000025d: PUSH4 0xf2fde38b 00000262: EQ 00000263: PUSH2 0x1125 00000266: JUMPI 00000267: DUP1 00000268: PUSH4 0xf530c0be 0000026d: EQ 0000026e: PUSH2 0x1168 00000271: JUMPI 00000272: DUP1 00000273: PUSH4 0xfc0c546a 00000278: EQ 00000279: PUSH2 0x1193 0000027c: JUMPI 0000027d: JUMPDEST 0000027e: PUSH2 0x0286 00000281: CALLER 00000282: PUSH2 0x11ea 00000285: JUMP 00000286: JUMPDEST 00000287: POP 00000288: STOP 00000289: JUMPDEST 0000028a: CALLVALUE 0000028b: DUP1 0000028c: ISZERO 0000028d: PUSH2 0x0295 00000290: JUMPI 00000291: PUSH1 0x00 00000293: DUP1 00000294: REVERT 00000295: JUMPDEST 00000296: POP 00000297: PUSH2 0x029e 0000029a: PUSH2 0x17f8 0000029d: JUMP 0000029e: JUMPDEST 0000029f: PUSH1 0x40 000002a1: MLOAD 000002a2: DUP1 000002a3: DUP3 000002a4: DUP2 000002a5: MSTORE 000002a6: PUSH1 0x20 000002a8: ADD 000002a9: SWAP2 000002aa: POP 000002ab: POP 000002ac: PUSH1 0x40 000002ae: MLOAD 000002af: DUP1 000002b0: SWAP2 000002b1: SUB 000002b2: SWAP1 000002b3: RETURN 000002b4: JUMPDEST 000002b5: CALLVALUE 000002b6: DUP1 000002b7: ISZERO 000002b8: PUSH2 0x02c0 000002bb: JUMPI 000002bc: PUSH1 0x00 000002be: DUP1 000002bf: REVERT 000002c0: JUMPDEST 000002c1: POP 000002c2: PUSH2 0x02c9 000002c5: PUSH2 0x1805 000002c8: JUMP 000002c9: JUMPDEST 000002ca: PUSH1 0x40 000002cc: MLOAD 000002cd: DUP1 000002ce: DUP1 000002cf: PUSH1 0x20 000002d1: ADD 000002d2: DUP3 000002d3: DUP2 000002d4: SUB 000002d5: DUP3 000002d6: MSTORE 000002d7: DUP4 000002d8: DUP2 000002d9: DUP2 000002da: MLOAD 000002db: DUP2 000002dc: MSTORE 000002dd: PUSH1 0x20 000002df: ADD 000002e0: SWAP2 000002e1: POP 000002e2: DUP1 000002e3: MLOAD 000002e4: SWAP1 000002e5: PUSH1 0x20 000002e7: ADD 000002e8: SWAP1 000002e9: DUP1 000002ea: DUP4 000002eb: DUP4 000002ec: PUSH1 0x00 000002ee: JUMPDEST 000002ef: DUP4 000002f0: DUP2 000002f1: LT 000002f2: ISZERO 000002f3: PUSH2 0x0309 000002f6: JUMPI 000002f7: DUP1 000002f8: DUP3 000002f9: ADD 000002fa: MLOAD 000002fb: DUP2 000002fc: DUP5 000002fd: ADD 000002fe: MSTORE 000002ff: PUSH1 0x20 00000301: DUP2 00000302: ADD 00000303: SWAP1 00000304: POP 00000305: PUSH2 0x02ee 00000308: JUMP 00000309: JUMPDEST 0000030a: POP 0000030b: POP 0000030c: POP 0000030d: POP 0000030e: SWAP1 0000030f: POP 00000310: SWAP1 00000311: DUP2 00000312: ADD 00000313: SWAP1 00000314: PUSH1 0x1f 00000316: AND 00000317: DUP1 00000318: ISZERO 00000319: PUSH2 0x0336 0000031c: JUMPI 0000031d: DUP1 0000031e: DUP3 0000031f: SUB 00000320: DUP1 00000321: MLOAD 00000322: PUSH1 0x01 00000324: DUP4 00000325: PUSH1 0x20 00000327: SUB 00000328: PUSH2 0x0100 0000032b: EXP 0000032c: SUB 0000032d: NOT 0000032e: AND 0000032f: DUP2 00000330: MSTORE 00000331: PUSH1 0x20 00000333: ADD 00000334: SWAP2 00000335: POP 00000336: JUMPDEST 00000337: POP 00000338: SWAP3 00000339: POP 0000033a: POP 0000033b: POP 0000033c: PUSH1 0x40 0000033e: MLOAD 0000033f: DUP1 00000340: SWAP2 00000341: SUB 00000342: SWAP1 00000343: RETURN 00000344: JUMPDEST 00000345: CALLVALUE 00000346: DUP1 00000347: ISZERO 00000348: PUSH2 0x0350 0000034b: JUMPI 0000034c: PUSH1 0x00 0000034e: DUP1 0000034f: REVERT 00000350: JUMPDEST 00000351: POP 00000352: PUSH2 0x03cb 00000355: PUSH1 0x04 00000357: DUP1 00000358: CALLDATASIZE 00000359: SUB 0000035a: DUP2 0000035b: ADD 0000035c: SWAP1 0000035d: DUP1 0000035e: DUP1 0000035f: CALLDATALOAD 00000360: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000375: AND 00000376: SWAP1 00000377: PUSH1 0x20 00000379: ADD 0000037a: SWAP1 0000037b: SWAP3 0000037c: SWAP2 0000037d: SWAP1 0000037e: DUP1 0000037f: CALLDATALOAD 00000380: SWAP1 00000381: PUSH1 0x20 00000383: ADD 00000384: SWAP1 00000385: DUP3 00000386: ADD 00000387: DUP1 00000388: CALLDATALOAD 00000389: SWAP1 0000038a: PUSH1 0x20 0000038c: ADD 0000038d: SWAP1 0000038e: DUP1 0000038f: DUP1 00000390: PUSH1 0x1f 00000392: ADD 00000393: PUSH1 0x20 00000395: DUP1 00000396: SWAP2 00000397: DIV 00000398: MUL 00000399: PUSH1 0x20 0000039b: ADD 0000039c: PUSH1 0x40 0000039e: MLOAD 0000039f: SWAP1 000003a0: DUP2 000003a1: ADD 000003a2: PUSH1 0x40 000003a4: MSTORE 000003a5: DUP1 000003a6: SWAP4 000003a7: SWAP3 000003a8: SWAP2 000003a9: SWAP1 000003aa: DUP2 000003ab: DUP2 000003ac: MSTORE 000003ad: PUSH1 0x20 000003af: ADD 000003b0: DUP4 000003b1: DUP4 000003b2: DUP1 000003b3: DUP3 000003b4: DUP5 000003b5: CALLDATACOPY 000003b6: DUP3 000003b7: ADD 000003b8: SWAP2 000003b9: POP 000003ba: POP 000003bb: POP 000003bc: POP 000003bd: POP 000003be: POP 000003bf: SWAP2 000003c0: SWAP3 000003c1: SWAP2 000003c2: SWAP3 000003c3: SWAP1 000003c4: POP 000003c5: POP 000003c6: POP 000003c7: PUSH2 0x18a3 000003ca: JUMP 000003cb: JUMPDEST 000003cc: STOP 000003cd: JUMPDEST 000003ce: CALLVALUE 000003cf: DUP1 000003d0: ISZERO 000003d1: PUSH2 0x03d9 000003d4: JUMPI 000003d5: PUSH1 0x00 000003d7: DUP1 000003d8: REVERT 000003d9: JUMPDEST 000003da: POP 000003db: PUSH2 0x03e2 000003de: PUSH2 0x1924 000003e1: JUMP 000003e2: JUMPDEST 000003e3: PUSH1 0x40 000003e5: MLOAD 000003e6: DUP1 000003e7: DUP3 000003e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003fd: AND 000003fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000413: AND 00000414: DUP2 00000415: MSTORE 00000416: PUSH1 0x20 00000418: ADD 00000419: SWAP2 0000041a: POP 0000041b: POP 0000041c: PUSH1 0x40 0000041e: MLOAD 0000041f: DUP1 00000420: SWAP2 00000421: SUB 00000422: SWAP1 00000423: RETURN 00000424: JUMPDEST 00000425: CALLVALUE 00000426: DUP1 00000427: ISZERO 00000428: PUSH2 0x0430 0000042b: JUMPI 0000042c: PUSH1 0x00 0000042e: DUP1 0000042f: REVERT 00000430: JUMPDEST 00000431: POP 00000432: PUSH2 0x048b 00000435: PUSH1 0x04 00000437: DUP1 00000438: CALLDATASIZE 00000439: SUB 0000043a: DUP2 0000043b: ADD 0000043c: SWAP1 0000043d: DUP1 0000043e: DUP1 0000043f: CALLDATALOAD 00000440: SWAP1 00000441: PUSH1 0x20 00000443: ADD 00000444: SWAP1 00000445: DUP3 00000446: ADD 00000447: DUP1 00000448: CALLDATALOAD 00000449: SWAP1 0000044a: PUSH1 0x20 0000044c: ADD 0000044d: SWAP1 0000044e: DUP1 0000044f: DUP1 00000450: PUSH1 0x1f 00000452: ADD 00000453: PUSH1 0x20 00000455: DUP1 00000456: SWAP2 00000457: DIV 00000458: MUL 00000459: PUSH1 0x20 0000045b: ADD 0000045c: PUSH1 0x40 0000045e: MLOAD 0000045f: SWAP1 00000460: DUP2 00000461: ADD 00000462: PUSH1 0x40 00000464: MSTORE 00000465: DUP1 00000466: SWAP4 00000467: SWAP3 00000468: SWAP2 00000469: SWAP1 0000046a: DUP2 0000046b: DUP2 0000046c: MSTORE 0000046d: PUSH1 0x20 0000046f: ADD 00000470: DUP4 00000471: DUP4 00000472: DUP1 00000473: DUP3 00000474: DUP5 00000475: CALLDATACOPY 00000476: DUP3 00000477: ADD 00000478: SWAP2 00000479: POP 0000047a: POP 0000047b: POP 0000047c: POP 0000047d: POP 0000047e: POP 0000047f: SWAP2 00000480: SWAP3 00000481: SWAP2 00000482: SWAP3 00000483: SWAP1 00000484: POP 00000485: POP 00000486: POP 00000487: PUSH2 0x194a 0000048a: JUMP 0000048b: JUMPDEST 0000048c: STOP 0000048d: JUMPDEST 0000048e: CALLVALUE 0000048f: DUP1 00000490: ISZERO 00000491: PUSH2 0x0499 00000494: JUMPI 00000495: PUSH1 0x00 00000497: DUP1 00000498: REVERT 00000499: JUMPDEST 0000049a: POP 0000049b: PUSH2 0x04a2 0000049e: PUSH2 0x1b2c 000004a1: JUMP 000004a2: JUMPDEST 000004a3: PUSH1 0x40 000004a5: MLOAD 000004a6: DUP1 000004a7: DUP3 000004a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004bd: AND 000004be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004d3: AND 000004d4: DUP2 000004d5: MSTORE 000004d6: PUSH1 0x20 000004d8: ADD 000004d9: SWAP2 000004da: POP 000004db: POP 000004dc: PUSH1 0x40 000004de: MLOAD 000004df: DUP1 000004e0: SWAP2 000004e1: SUB 000004e2: SWAP1 000004e3: RETURN 000004e4: JUMPDEST 000004e5: CALLVALUE 000004e6: DUP1 000004e7: ISZERO 000004e8: PUSH2 0x04f0 000004eb: JUMPI 000004ec: PUSH1 0x00 000004ee: DUP1 000004ef: REVERT 000004f0: JUMPDEST 000004f1: POP 000004f2: PUSH2 0x0525 000004f5: PUSH1 0x04 000004f7: DUP1 000004f8: CALLDATASIZE 000004f9: SUB 000004fa: DUP2 000004fb: ADD 000004fc: SWAP1 000004fd: DUP1 000004fe: DUP1 000004ff: CALLDATALOAD 00000500: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000515: AND 00000516: SWAP1 00000517: PUSH1 0x20 00000519: ADD 0000051a: SWAP1 0000051b: SWAP3 0000051c: SWAP2 0000051d: SWAP1 0000051e: POP 0000051f: POP 00000520: POP 00000521: PUSH2 0x1b52 00000524: JUMP 00000525: JUMPDEST 00000526: STOP 00000527: JUMPDEST 00000528: CALLVALUE 00000529: DUP1 0000052a: ISZERO 0000052b: PUSH2 0x0533 0000052e: JUMPI 0000052f: PUSH1 0x00 00000531: DUP1 00000532: REVERT 00000533: JUMPDEST 00000534: POP 00000535: PUSH2 0x053c 00000538: PUSH2 0x1bf2 0000053b: JUMP 0000053c: JUMPDEST 0000053d: PUSH1 0x40 0000053f: MLOAD 00000540: DUP1 00000541: DUP1 00000542: PUSH1 0x20 00000544: ADD 00000545: DUP3 00000546: DUP2 00000547: SUB 00000548: DUP3 00000549: MSTORE 0000054a: DUP4 0000054b: DUP2 0000054c: DUP2 0000054d: MLOAD 0000054e: DUP2 0000054f: MSTORE 00000550: PUSH1 0x20 00000552: ADD 00000553: SWAP2 00000554: POP 00000555: DUP1 00000556: MLOAD 00000557: SWAP1 00000558: PUSH1 0x20 0000055a: ADD 0000055b: SWAP1 0000055c: DUP1 0000055d: DUP4 0000055e: DUP4 0000055f: PUSH1 0x00 00000561: JUMPDEST 00000562: DUP4 00000563: DUP2 00000564: LT 00000565: ISZERO 00000566: PUSH2 0x057c 00000569: JUMPI 0000056a: DUP1 0000056b: DUP3 0000056c: ADD 0000056d: MLOAD 0000056e: DUP2 0000056f: DUP5 00000570: ADD 00000571: MSTORE 00000572: PUSH1 0x20 00000574: DUP2 00000575: ADD 00000576: SWAP1 00000577: POP 00000578: PUSH2 0x0561 0000057b: JUMP 0000057c: JUMPDEST 0000057d: POP 0000057e: POP 0000057f: POP 00000580: POP 00000581: SWAP1 00000582: POP 00000583: SWAP1 00000584: DUP2 00000585: ADD 00000586: SWAP1 00000587: PUSH1 0x1f 00000589: AND 0000058a: DUP1 0000058b: ISZERO 0000058c: PUSH2 0x05a9 0000058f: JUMPI 00000590: DUP1 00000591: DUP3 00000592: SUB 00000593: DUP1 00000594: MLOAD 00000595: PUSH1 0x01 00000597: DUP4 00000598: PUSH1 0x20 0000059a: SUB 0000059b: PUSH2 0x0100 0000059e: EXP 0000059f: SUB 000005a0: NOT 000005a1: AND 000005a2: DUP2 000005a3: MSTORE 000005a4: PUSH1 0x20 000005a6: ADD 000005a7: SWAP2 000005a8: POP 000005a9: JUMPDEST 000005aa: POP 000005ab: SWAP3 000005ac: POP 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 0x063e 000005c8: PUSH1 0x04 000005ca: DUP1 000005cb: CALLDATASIZE 000005cc: SUB 000005cd: DUP2 000005ce: ADD 000005cf: SWAP1 000005d0: DUP1 000005d1: DUP1 000005d2: CALLDATALOAD 000005d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005e8: AND 000005e9: SWAP1 000005ea: PUSH1 0x20 000005ec: ADD 000005ed: SWAP1 000005ee: SWAP3 000005ef: SWAP2 000005f0: SWAP1 000005f1: DUP1 000005f2: CALLDATALOAD 000005f3: SWAP1 000005f4: PUSH1 0x20 000005f6: ADD 000005f7: SWAP1 000005f8: DUP3 000005f9: ADD 000005fa: DUP1 000005fb: CALLDATALOAD 000005fc: SWAP1 000005fd: PUSH1 0x20 000005ff: ADD 00000600: SWAP1 00000601: DUP1 00000602: DUP1 00000603: PUSH1 0x1f 00000605: ADD 00000606: PUSH1 0x20 00000608: DUP1 00000609: SWAP2 0000060a: DIV 0000060b: MUL 0000060c: PUSH1 0x20 0000060e: ADD 0000060f: PUSH1 0x40 00000611: MLOAD 00000612: SWAP1 00000613: DUP2 00000614: ADD 00000615: PUSH1 0x40 00000617: MSTORE 00000618: DUP1 00000619: SWAP4 0000061a: SWAP3 0000061b: SWAP2 0000061c: SWAP1 0000061d: DUP2 0000061e: DUP2 0000061f: MSTORE 00000620: PUSH1 0x20 00000622: ADD 00000623: DUP4 00000624: DUP4 00000625: DUP1 00000626: DUP3 00000627: DUP5 00000628: CALLDATACOPY 00000629: DUP3 0000062a: ADD 0000062b: SWAP2 0000062c: POP 0000062d: POP 0000062e: POP 0000062f: POP 00000630: POP 00000631: POP 00000632: SWAP2 00000633: SWAP3 00000634: SWAP2 00000635: SWAP3 00000636: SWAP1 00000637: POP 00000638: POP 00000639: POP 0000063a: PUSH2 0x1c2b 0000063d: JUMP 0000063e: JUMPDEST 0000063f: PUSH1 0x40 00000641: MLOAD 00000642: DUP1 00000643: DUP3 00000644: ISZERO 00000645: ISZERO 00000646: ISZERO 00000647: ISZERO 00000648: DUP2 00000649: MSTORE 0000064a: PUSH1 0x20 0000064c: ADD 0000064d: SWAP2 0000064e: POP 0000064f: POP 00000650: PUSH1 0x40 00000652: MLOAD 00000653: DUP1 00000654: SWAP2 00000655: SUB 00000656: SWAP1 00000657: RETURN 00000658: JUMPDEST 00000659: CALLVALUE 0000065a: DUP1 0000065b: ISZERO 0000065c: PUSH2 0x0664 0000065f: JUMPI 00000660: PUSH1 0x00 00000662: DUP1 00000663: REVERT 00000664: JUMPDEST 00000665: POP 00000666: PUSH2 0x06bc 00000669: PUSH1 0x04 0000066b: DUP1 0000066c: CALLDATASIZE 0000066d: SUB 0000066e: DUP2 0000066f: ADD 00000670: SWAP1 00000671: DUP1 00000672: DUP1 00000673: CALLDATALOAD 00000674: SWAP1 00000675: PUSH1 0x20 00000677: ADD 00000678: SWAP1 00000679: DUP3 0000067a: ADD 0000067b: DUP1 0000067c: CALLDATALOAD 0000067d: SWAP1 0000067e: PUSH1 0x20 00000680: ADD 00000681: SWAP1 00000682: DUP1 00000683: DUP1 00000684: PUSH1 0x20 00000686: MUL 00000687: PUSH1 0x20 00000689: ADD 0000068a: PUSH1 0x40 0000068c: MLOAD 0000068d: SWAP1 0000068e: DUP2 0000068f: ADD 00000690: PUSH1 0x40 00000692: MSTORE 00000693: DUP1 00000694: SWAP4 00000695: SWAP3 00000696: SWAP2 00000697: SWAP1 00000698: DUP2 00000699: DUP2 0000069a: MSTORE 0000069b: PUSH1 0x20 0000069d: ADD 0000069e: DUP4 0000069f: DUP4 000006a0: PUSH1 0x20 000006a2: MUL 000006a3: DUP1 000006a4: DUP3 000006a5: DUP5 000006a6: CALLDATACOPY 000006a7: DUP3 000006a8: ADD 000006a9: SWAP2 000006aa: POP 000006ab: POP 000006ac: POP 000006ad: POP 000006ae: POP 000006af: POP 000006b0: SWAP2 000006b1: SWAP3 000006b2: SWAP2 000006b3: SWAP3 000006b4: SWAP1 000006b5: POP 000006b6: POP 000006b7: POP 000006b8: PUSH2 0x1cb2 000006bb: JUMP 000006bc: JUMPDEST 000006bd: STOP 000006be: JUMPDEST 000006bf: CALLVALUE 000006c0: DUP1 000006c1: ISZERO 000006c2: PUSH2 0x06ca 000006c5: JUMPI 000006c6: PUSH1 0x00 000006c8: DUP1 000006c9: REVERT 000006ca: JUMPDEST 000006cb: POP 000006cc: PUSH2 0x0733 000006cf: PUSH1 0x04 000006d1: DUP1 000006d2: CALLDATASIZE 000006d3: SUB 000006d4: DUP2 000006d5: ADD 000006d6: SWAP1 000006d7: DUP1 000006d8: DUP1 000006d9: CALLDATALOAD 000006da: PUSH1 0x00 000006dc: NOT 000006dd: AND 000006de: SWAP1 000006df: PUSH1 0x20 000006e1: ADD 000006e2: SWAP1 000006e3: SWAP3 000006e4: SWAP2 000006e5: SWAP1 000006e6: DUP1 000006e7: CALLDATALOAD 000006e8: SWAP1 000006e9: PUSH1 0x20 000006eb: ADD 000006ec: SWAP1 000006ed: DUP3 000006ee: ADD 000006ef: DUP1 000006f0: CALLDATALOAD 000006f1: SWAP1 000006f2: PUSH1 0x20 000006f4: ADD 000006f5: SWAP1 000006f6: DUP1 000006f7: DUP1 000006f8: PUSH1 0x1f 000006fa: ADD 000006fb: PUSH1 0x20 000006fd: DUP1 000006fe: SWAP2 000006ff: DIV 00000700: MUL 00000701: PUSH1 0x20 00000703: ADD 00000704: PUSH1 0x40 00000706: MLOAD 00000707: SWAP1 00000708: DUP2 00000709: ADD 0000070a: PUSH1 0x40 0000070c: MSTORE 0000070d: DUP1 0000070e: SWAP4 0000070f: SWAP3 00000710: SWAP2 00000711: SWAP1 00000712: DUP2 00000713: DUP2 00000714: MSTORE 00000715: PUSH1 0x20 00000717: ADD 00000718: DUP4 00000719: DUP4 0000071a: DUP1 0000071b: DUP3 0000071c: DUP5 0000071d: CALLDATACOPY 0000071e: DUP3 0000071f: ADD 00000720: SWAP2 00000721: POP 00000722: POP 00000723: POP 00000724: POP 00000725: POP 00000726: POP 00000727: SWAP2 00000728: SWAP3 00000729: SWAP2 0000072a: SWAP3 0000072b: SWAP1 0000072c: POP 0000072d: POP 0000072e: POP 0000072f: PUSH2 0x1d4f 00000732: JUMP 00000733: JUMPDEST 00000734: STOP 00000735: JUMPDEST 00000736: CALLVALUE 00000737: DUP1 00000738: ISZERO 00000739: PUSH2 0x0741 0000073c: JUMPI 0000073d: PUSH1 0x00 0000073f: DUP1 00000740: REVERT 00000741: JUMPDEST 00000742: POP 00000743: PUSH2 0x0776 00000746: PUSH1 0x04 00000748: DUP1 00000749: CALLDATASIZE 0000074a: SUB 0000074b: DUP2 0000074c: ADD 0000074d: SWAP1 0000074e: DUP1 0000074f: DUP1 00000750: CALLDATALOAD 00000751: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000766: AND 00000767: SWAP1 00000768: PUSH1 0x20 0000076a: ADD 0000076b: SWAP1 0000076c: SWAP3 0000076d: SWAP2 0000076e: SWAP1 0000076f: POP 00000770: POP 00000771: POP 00000772: PUSH2 0x2101 00000775: JUMP 00000776: JUMPDEST 00000777: STOP 00000778: JUMPDEST 00000779: CALLVALUE 0000077a: DUP1 0000077b: ISZERO 0000077c: PUSH2 0x0784 0000077f: JUMPI 00000780: PUSH1 0x00 00000782: DUP1 00000783: REVERT 00000784: JUMPDEST 00000785: POP 00000786: PUSH2 0x078d 00000789: PUSH2 0x2202 0000078c: JUMP 0000078d: JUMPDEST 0000078e: PUSH1 0x40 00000790: MLOAD 00000791: DUP1 00000792: DUP3 00000793: DUP2 00000794: MSTORE 00000795: PUSH1 0x20 00000797: ADD 00000798: SWAP2 00000799: POP 0000079a: POP 0000079b: PUSH1 0x40 0000079d: MLOAD 0000079e: DUP1 0000079f: SWAP2 000007a0: SUB 000007a1: SWAP1 000007a2: RETURN 000007a3: JUMPDEST 000007a4: CALLVALUE 000007a5: DUP1 000007a6: ISZERO 000007a7: PUSH2 0x07af 000007aa: JUMPI 000007ab: PUSH1 0x00 000007ad: DUP1 000007ae: REVERT 000007af: JUMPDEST 000007b0: POP 000007b1: PUSH2 0x07b8 000007b4: PUSH2 0x2208 000007b7: JUMP 000007b8: JUMPDEST 000007b9: PUSH1 0x40 000007bb: MLOAD 000007bc: DUP1 000007bd: DUP3 000007be: ISZERO 000007bf: ISZERO 000007c0: ISZERO 000007c1: ISZERO 000007c2: DUP2 000007c3: MSTORE 000007c4: PUSH1 0x20 000007c6: ADD 000007c7: SWAP2 000007c8: POP 000007c9: POP 000007ca: PUSH1 0x40 000007cc: MLOAD 000007cd: DUP1 000007ce: SWAP2 000007cf: SUB 000007d0: SWAP1 000007d1: RETURN 000007d2: JUMPDEST 000007d3: CALLVALUE 000007d4: DUP1 000007d5: ISZERO 000007d6: PUSH2 0x07de 000007d9: JUMPI 000007da: PUSH1 0x00 000007dc: DUP1 000007dd: REVERT 000007de: JUMPDEST 000007df: POP 000007e0: PUSH2 0x0813 000007e3: PUSH1 0x04 000007e5: DUP1 000007e6: CALLDATASIZE 000007e7: SUB 000007e8: DUP2 000007e9: ADD 000007ea: SWAP1 000007eb: DUP1 000007ec: DUP1 000007ed: CALLDATALOAD 000007ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000803: AND 00000804: SWAP1 00000805: PUSH1 0x20 00000807: ADD 00000808: SWAP1 00000809: SWAP3 0000080a: SWAP2 0000080b: SWAP1 0000080c: POP 0000080d: POP 0000080e: POP 0000080f: PUSH2 0x2220 00000812: JUMP 00000813: JUMPDEST 00000814: STOP 00000815: JUMPDEST 00000816: CALLVALUE 00000817: DUP1 00000818: ISZERO 00000819: PUSH2 0x0821 0000081c: JUMPI 0000081d: PUSH1 0x00 0000081f: DUP1 00000820: REVERT 00000821: JUMPDEST 00000822: POP 00000823: PUSH2 0x0840 00000826: PUSH1 0x04 00000828: DUP1 00000829: CALLDATASIZE 0000082a: SUB 0000082b: DUP2 0000082c: ADD 0000082d: SWAP1 0000082e: DUP1 0000082f: DUP1 00000830: CALLDATALOAD 00000831: SWAP1 00000832: PUSH1 0x20 00000834: ADD 00000835: SWAP1 00000836: SWAP3 00000837: SWAP2 00000838: SWAP1 00000839: POP 0000083a: POP 0000083b: POP 0000083c: PUSH2 0x22c0 0000083f: JUMP 00000840: JUMPDEST 00000841: STOP 00000842: JUMPDEST 00000843: CALLVALUE 00000844: DUP1 00000845: ISZERO 00000846: PUSH2 0x084e 00000849: JUMPI 0000084a: PUSH1 0x00 0000084c: DUP1 0000084d: REVERT 0000084e: JUMPDEST 0000084f: POP 00000850: PUSH2 0x08fd 00000853: PUSH1 0x04 00000855: DUP1 00000856: CALLDATASIZE 00000857: SUB 00000858: DUP2 00000859: ADD 0000085a: SWAP1 0000085b: DUP1 0000085c: DUP1 0000085d: CALLDATALOAD 0000085e: PUSH1 0x00 00000860: NOT 00000861: AND 00000862: SWAP1 00000863: PUSH1 0x20 00000865: ADD 00000866: SWAP1 00000867: SWAP3 00000868: SWAP2 00000869: SWAP1 0000086a: DUP1 0000086b: CALLDATALOAD 0000086c: SWAP1 0000086d: PUSH1 0x20 0000086f: ADD 00000870: SWAP1 00000871: DUP3 00000872: ADD 00000873: DUP1 00000874: CALLDATALOAD 00000875: SWAP1 00000876: PUSH1 0x20 00000878: ADD 00000879: SWAP1 0000087a: DUP1 0000087b: DUP1 0000087c: PUSH1 0x1f 0000087e: ADD 0000087f: PUSH1 0x20 00000881: DUP1 00000882: SWAP2 00000883: DIV 00000884: MUL 00000885: PUSH1 0x20 00000887: ADD 00000888: PUSH1 0x40 0000088a: MLOAD 0000088b: SWAP1 0000088c: DUP2 0000088d: ADD 0000088e: PUSH1 0x40 00000890: MSTORE 00000891: DUP1 00000892: SWAP4 00000893: SWAP3 00000894: SWAP2 00000895: SWAP1 00000896: DUP2 00000897: DUP2 00000898: MSTORE 00000899: PUSH1 0x20 0000089b: ADD 0000089c: DUP4 0000089d: DUP4 0000089e: DUP1 0000089f: DUP3 000008a0: DUP5 000008a1: CALLDATACOPY 000008a2: DUP3 000008a3: ADD 000008a4: SWAP2 000008a5: POP 000008a6: POP 000008a7: POP 000008a8: POP 000008a9: POP 000008aa: POP 000008ab: SWAP2 000008ac: SWAP3 000008ad: SWAP2 000008ae: SWAP3 000008af: SWAP1 000008b0: DUP1 000008b1: CALLDATALOAD 000008b2: SWAP1 000008b3: PUSH1 0x20 000008b5: ADD 000008b6: SWAP1 000008b7: DUP3 000008b8: ADD 000008b9: DUP1 000008ba: CALLDATALOAD 000008bb: SWAP1 000008bc: PUSH1 0x20 000008be: ADD 000008bf: SWAP1 000008c0: DUP1 000008c1: DUP1 000008c2: PUSH1 0x1f 000008c4: ADD 000008c5: PUSH1 0x20 000008c7: DUP1 000008c8: SWAP2 000008c9: DIV 000008ca: MUL 000008cb: PUSH1 0x20 000008cd: ADD 000008ce: PUSH1 0x40 000008d0: MLOAD 000008d1: SWAP1 000008d2: DUP2 000008d3: ADD 000008d4: PUSH1 0x40 000008d6: MSTORE 000008d7: DUP1 000008d8: SWAP4 000008d9: SWAP3 000008da: SWAP2 000008db: SWAP1 000008dc: DUP2 000008dd: DUP2 000008de: MSTORE 000008df: PUSH1 0x20 000008e1: ADD 000008e2: DUP4 000008e3: DUP4 000008e4: DUP1 000008e5: DUP3 000008e6: DUP5 000008e7: CALLDATACOPY 000008e8: DUP3 000008e9: ADD 000008ea: SWAP2 000008eb: POP 000008ec: POP 000008ed: POP 000008ee: POP 000008ef: POP 000008f0: POP 000008f1: SWAP2 000008f2: SWAP3 000008f3: SWAP2 000008f4: SWAP3 000008f5: SWAP1 000008f6: POP 000008f7: POP 000008f8: POP 000008f9: PUSH2 0x2328 000008fc: JUMP 000008fd: JUMPDEST 000008fe: STOP 000008ff: JUMPDEST 00000900: CALLVALUE 00000901: DUP1 00000902: ISZERO 00000903: PUSH2 0x090b 00000906: JUMPI 00000907: PUSH1 0x00 00000909: DUP1 0000090a: REVERT 0000090b: JUMPDEST 0000090c: POP 0000090d: PUSH2 0x0914 00000910: PUSH2 0x232d 00000913: JUMP 00000914: JUMPDEST 00000915: STOP 00000916: JUMPDEST 00000917: CALLVALUE 00000918: DUP1 00000919: ISZERO 0000091a: PUSH2 0x0922 0000091d: JUMPI 0000091e: PUSH1 0x00 00000920: DUP1 00000921: REVERT 00000922: JUMPDEST 00000923: POP 00000924: PUSH2 0x092b 00000927: PUSH2 0x23ed 0000092a: JUMP 0000092b: JUMPDEST 0000092c: PUSH1 0x40 0000092e: MLOAD 0000092f: DUP1 00000930: DUP3 00000931: DUP2 00000932: MSTORE 00000933: PUSH1 0x20 00000935: ADD 00000936: SWAP2 00000937: POP 00000938: POP 00000939: PUSH1 0x40 0000093b: MLOAD 0000093c: DUP1 0000093d: SWAP2 0000093e: SUB 0000093f: SWAP1 00000940: RETURN 00000941: JUMPDEST 00000942: CALLVALUE 00000943: DUP1 00000944: ISZERO 00000945: PUSH2 0x094d 00000948: JUMPI 00000949: PUSH1 0x00 0000094b: DUP1 0000094c: REVERT 0000094d: JUMPDEST 0000094e: POP 0000094f: PUSH2 0x0956 00000952: PUSH2 0x23f3 00000955: JUMP 00000956: JUMPDEST 00000957: PUSH1 0x40 00000959: MLOAD 0000095a: DUP1 0000095b: DUP3 0000095c: DUP2 0000095d: MSTORE 0000095e: PUSH1 0x20 00000960: ADD 00000961: SWAP2 00000962: POP 00000963: POP 00000964: PUSH1 0x40 00000966: MLOAD 00000967: DUP1 00000968: SWAP2 00000969: SUB 0000096a: SWAP1 0000096b: RETURN 0000096c: JUMPDEST 0000096d: CALLVALUE 0000096e: DUP1 0000096f: ISZERO 00000970: PUSH2 0x0978 00000973: JUMPI 00000974: PUSH1 0x00 00000976: DUP1 00000977: REVERT 00000978: JUMPDEST 00000979: POP 0000097a: PUSH2 0x0981 0000097d: PUSH2 0x23f9 00000980: JUMP 00000981: JUMPDEST 00000982: PUSH1 0x40 00000984: MLOAD 00000985: DUP1 00000986: DUP1 00000987: PUSH1 0x20 00000989: ADD 0000098a: DUP3 0000098b: DUP2 0000098c: SUB 0000098d: DUP3 0000098e: MSTORE 0000098f: DUP4 00000990: DUP2 00000991: DUP2 00000992: MLOAD 00000993: DUP2 00000994: MSTORE 00000995: PUSH1 0x20 00000997: ADD 00000998: SWAP2 00000999: POP 0000099a: DUP1 0000099b: MLOAD 0000099c: SWAP1 0000099d: PUSH1 0x20 0000099f: ADD 000009a0: SWAP1 000009a1: DUP1 000009a2: DUP4 000009a3: DUP4 000009a4: PUSH1 0x00 000009a6: JUMPDEST 000009a7: DUP4 000009a8: DUP2 000009a9: LT 000009aa: ISZERO 000009ab: PUSH2 0x09c1 000009ae: JUMPI 000009af: DUP1 000009b0: DUP3 000009b1: ADD 000009b2: MLOAD 000009b3: DUP2 000009b4: DUP5 000009b5: ADD 000009b6: MSTORE 000009b7: PUSH1 0x20 000009b9: DUP2 000009ba: ADD 000009bb: SWAP1 000009bc: POP 000009bd: PUSH2 0x09a6 000009c0: JUMP 000009c1: JUMPDEST 000009c2: POP 000009c3: POP 000009c4: POP 000009c5: POP 000009c6: SWAP1 000009c7: POP 000009c8: SWAP1 000009c9: DUP2 000009ca: ADD 000009cb: SWAP1 000009cc: PUSH1 0x1f 000009ce: AND 000009cf: DUP1 000009d0: ISZERO 000009d1: PUSH2 0x09ee 000009d4: JUMPI 000009d5: DUP1 000009d6: DUP3 000009d7: SUB 000009d8: DUP1 000009d9: MLOAD 000009da: PUSH1 0x01 000009dc: DUP4 000009dd: PUSH1 0x20 000009df: SUB 000009e0: PUSH2 0x0100 000009e3: EXP 000009e4: SUB 000009e5: NOT 000009e6: AND 000009e7: DUP2 000009e8: MSTORE 000009e9: PUSH1 0x20 000009eb: ADD 000009ec: SWAP2 000009ed: POP 000009ee: JUMPDEST 000009ef: POP 000009f0: SWAP3 000009f1: POP 000009f2: POP 000009f3: POP 000009f4: PUSH1 0x40 000009f6: MLOAD 000009f7: DUP1 000009f8: SWAP2 000009f9: SUB 000009fa: SWAP1 000009fb: RETURN 000009fc: JUMPDEST 000009fd: CALLVALUE 000009fe: DUP1 000009ff: ISZERO 00000a00: PUSH2 0x0a08 00000a03: JUMPI 00000a04: PUSH1 0x00 00000a06: DUP1 00000a07: REVERT 00000a08: JUMPDEST 00000a09: POP 00000a0a: PUSH2 0x0a3b 00000a0d: PUSH1 0x04 00000a0f: DUP1 00000a10: CALLDATASIZE 00000a11: SUB 00000a12: DUP2 00000a13: ADD 00000a14: SWAP1 00000a15: DUP1 00000a16: DUP1 00000a17: CALLDATALOAD 00000a18: SWAP1 00000a19: PUSH1 0x20 00000a1b: ADD 00000a1c: SWAP1 00000a1d: SWAP3 00000a1e: SWAP2 00000a1f: SWAP1 00000a20: DUP1 00000a21: CALLDATALOAD 00000a22: SWAP1 00000a23: PUSH1 0x20 00000a25: ADD 00000a26: SWAP1 00000a27: SWAP3 00000a28: SWAP2 00000a29: SWAP1 00000a2a: DUP1 00000a2b: CALLDATALOAD 00000a2c: SWAP1 00000a2d: PUSH1 0x20 00000a2f: ADD 00000a30: SWAP1 00000a31: SWAP3 00000a32: SWAP2 00000a33: SWAP1 00000a34: POP 00000a35: POP 00000a36: POP 00000a37: PUSH2 0x2432 00000a3a: JUMP 00000a3b: JUMPDEST 00000a3c: STOP 00000a3d: JUMPDEST 00000a3e: CALLVALUE 00000a3f: DUP1 00000a40: ISZERO 00000a41: PUSH2 0x0a49 00000a44: JUMPI 00000a45: PUSH1 0x00 00000a47: DUP1 00000a48: REVERT 00000a49: JUMPDEST 00000a4a: POP 00000a4b: PUSH2 0x0a7e 00000a4e: PUSH1 0x04 00000a50: DUP1 00000a51: CALLDATASIZE 00000a52: SUB 00000a53: DUP2 00000a54: ADD 00000a55: SWAP1 00000a56: DUP1 00000a57: DUP1 00000a58: CALLDATALOAD 00000a59: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a6e: AND 00000a6f: SWAP1 00000a70: PUSH1 0x20 00000a72: ADD 00000a73: SWAP1 00000a74: SWAP3 00000a75: SWAP2 00000a76: SWAP1 00000a77: POP 00000a78: POP 00000a79: POP 00000a7a: PUSH2 0x24e5 00000a7d: JUMP 00000a7e: JUMPDEST 00000a7f: PUSH1 0x40 00000a81: MLOAD 00000a82: DUP1 00000a83: DUP3 00000a84: DUP2 00000a85: MSTORE 00000a86: PUSH1 0x20 00000a88: ADD 00000a89: SWAP2 00000a8a: POP 00000a8b: POP 00000a8c: PUSH1 0x40 00000a8e: MLOAD 00000a8f: DUP1 00000a90: SWAP2 00000a91: SUB 00000a92: SWAP1 00000a93: RETURN 00000a94: JUMPDEST 00000a95: CALLVALUE 00000a96: DUP1 00000a97: ISZERO 00000a98: PUSH2 0x0aa0 00000a9b: JUMPI 00000a9c: PUSH1 0x00 00000a9e: DUP1 00000a9f: REVERT 00000aa0: JUMPDEST 00000aa1: POP 00000aa2: PUSH2 0x0abf 00000aa5: PUSH1 0x04 00000aa7: DUP1 00000aa8: CALLDATASIZE 00000aa9: SUB 00000aaa: DUP2 00000aab: ADD 00000aac: SWAP1 00000aad: DUP1 00000aae: DUP1 00000aaf: CALLDATALOAD 00000ab0: SWAP1 00000ab1: PUSH1 0x20 00000ab3: ADD 00000ab4: SWAP1 00000ab5: SWAP3 00000ab6: SWAP2 00000ab7: SWAP1 00000ab8: POP 00000ab9: POP 00000aba: POP 00000abb: PUSH2 0x252e 00000abe: JUMP 00000abf: JUMPDEST 00000ac0: PUSH1 0x40 00000ac2: MLOAD 00000ac3: DUP1 00000ac4: DUP3 00000ac5: DUP2 00000ac6: MSTORE 00000ac7: PUSH1 0x20 00000ac9: ADD 00000aca: SWAP2 00000acb: POP 00000acc: POP 00000acd: PUSH1 0x40 00000acf: MLOAD 00000ad0: DUP1 00000ad1: SWAP2 00000ad2: SUB 00000ad3: SWAP1 00000ad4: RETURN 00000ad5: JUMPDEST 00000ad6: CALLVALUE 00000ad7: DUP1 00000ad8: ISZERO 00000ad9: PUSH2 0x0ae1 00000adc: JUMPI 00000add: PUSH1 0x00 00000adf: DUP1 00000ae0: REVERT 00000ae1: JUMPDEST 00000ae2: POP 00000ae3: PUSH2 0x0aea 00000ae6: PUSH2 0x2546 00000ae9: JUMP 00000aea: JUMPDEST 00000aeb: PUSH1 0x40 00000aed: MLOAD 00000aee: DUP1 00000aef: DUP3 00000af0: DUP2 00000af1: MSTORE 00000af2: PUSH1 0x20 00000af4: ADD 00000af5: SWAP2 00000af6: POP 00000af7: POP 00000af8: PUSH1 0x40 00000afa: MLOAD 00000afb: DUP1 00000afc: SWAP2 00000afd: SUB 00000afe: SWAP1 00000aff: RETURN 00000b00: JUMPDEST 00000b01: CALLVALUE 00000b02: DUP1 00000b03: ISZERO 00000b04: PUSH2 0x0b0c 00000b07: JUMPI 00000b08: PUSH1 0x00 00000b0a: DUP1 00000b0b: REVERT 00000b0c: JUMPDEST 00000b0d: POP 00000b0e: PUSH2 0x0b15 00000b11: PUSH2 0x254b 00000b14: JUMP 00000b15: JUMPDEST 00000b16: PUSH1 0x40 00000b18: MLOAD 00000b19: DUP1 00000b1a: DUP3 00000b1b: ISZERO 00000b1c: ISZERO 00000b1d: ISZERO 00000b1e: ISZERO 00000b1f: DUP2 00000b20: MSTORE 00000b21: PUSH1 0x20 00000b23: ADD 00000b24: SWAP2 00000b25: POP 00000b26: POP 00000b27: PUSH1 0x40 00000b29: MLOAD 00000b2a: DUP1 00000b2b: SWAP2 00000b2c: SUB 00000b2d: SWAP1 00000b2e: RETURN 00000b2f: JUMPDEST 00000b30: CALLVALUE 00000b31: DUP1 00000b32: ISZERO 00000b33: PUSH2 0x0b3b 00000b36: JUMPI 00000b37: PUSH1 0x00 00000b39: DUP1 00000b3a: REVERT 00000b3b: JUMPDEST 00000b3c: POP 00000b3d: PUSH2 0x0b44 00000b40: PUSH2 0x255e 00000b43: JUMP 00000b44: JUMPDEST 00000b45: PUSH1 0x40 00000b47: MLOAD 00000b48: DUP1 00000b49: DUP1 00000b4a: PUSH1 0x20 00000b4c: ADD 00000b4d: DUP3 00000b4e: DUP2 00000b4f: SUB 00000b50: DUP3 00000b51: MSTORE 00000b52: DUP4 00000b53: DUP2 00000b54: DUP2 00000b55: MLOAD 00000b56: DUP2 00000b57: MSTORE 00000b58: PUSH1 0x20 00000b5a: ADD 00000b5b: SWAP2 00000b5c: POP 00000b5d: DUP1 00000b5e: MLOAD 00000b5f: SWAP1 00000b60: PUSH1 0x20 00000b62: ADD 00000b63: SWAP1 00000b64: DUP1 00000b65: DUP4 00000b66: DUP4 00000b67: PUSH1 0x00 00000b69: JUMPDEST 00000b6a: DUP4 00000b6b: DUP2 00000b6c: LT 00000b6d: ISZERO 00000b6e: PUSH2 0x0b84 00000b71: JUMPI 00000b72: DUP1 00000b73: DUP3 00000b74: ADD 00000b75: MLOAD 00000b76: DUP2 00000b77: DUP5 00000b78: ADD 00000b79: MSTORE 00000b7a: PUSH1 0x20 00000b7c: DUP2 00000b7d: ADD 00000b7e: SWAP1 00000b7f: POP 00000b80: PUSH2 0x0b69 00000b83: JUMP 00000b84: JUMPDEST 00000b85: POP 00000b86: POP 00000b87: POP 00000b88: POP 00000b89: SWAP1 00000b8a: POP 00000b8b: SWAP1 00000b8c: DUP2 00000b8d: ADD 00000b8e: SWAP1 00000b8f: PUSH1 0x1f 00000b91: AND 00000b92: DUP1 00000b93: ISZERO 00000b94: PUSH2 0x0bb1 00000b97: JUMPI 00000b98: DUP1 00000b99: DUP3 00000b9a: SUB 00000b9b: DUP1 00000b9c: MLOAD 00000b9d: PUSH1 0x01 00000b9f: DUP4 00000ba0: PUSH1 0x20 00000ba2: SUB 00000ba3: PUSH2 0x0100 00000ba6: EXP 00000ba7: SUB 00000ba8: NOT 00000ba9: AND 00000baa: DUP2 00000bab: MSTORE 00000bac: PUSH1 0x20 00000bae: ADD 00000baf: SWAP2 00000bb0: POP 00000bb1: JUMPDEST 00000bb2: POP 00000bb3: SWAP3 00000bb4: POP 00000bb5: POP 00000bb6: POP 00000bb7: PUSH1 0x40 00000bb9: MLOAD 00000bba: DUP1 00000bbb: SWAP2 00000bbc: SUB 00000bbd: SWAP1 00000bbe: RETURN 00000bbf: JUMPDEST 00000bc0: CALLVALUE 00000bc1: DUP1 00000bc2: ISZERO 00000bc3: PUSH2 0x0bcb 00000bc6: JUMPI 00000bc7: PUSH1 0x00 00000bc9: DUP1 00000bca: REVERT 00000bcb: JUMPDEST 00000bcc: POP 00000bcd: PUSH2 0x0bea 00000bd0: PUSH1 0x04 00000bd2: DUP1 00000bd3: CALLDATASIZE 00000bd4: SUB 00000bd5: DUP2 00000bd6: ADD 00000bd7: SWAP1 00000bd8: DUP1 00000bd9: DUP1 00000bda: CALLDATALOAD 00000bdb: SWAP1 00000bdc: PUSH1 0x20 00000bde: ADD 00000bdf: SWAP1 00000be0: SWAP3 00000be1: SWAP2 00000be2: SWAP1 00000be3: POP 00000be4: POP 00000be5: POP 00000be6: PUSH2 0x2597 00000be9: JUMP 00000bea: JUMPDEST 00000beb: PUSH1 0x40 00000bed: MLOAD 00000bee: DUP1 00000bef: DUP3 00000bf0: DUP2 00000bf1: MSTORE 00000bf2: PUSH1 0x20 00000bf4: ADD 00000bf5: SWAP2 00000bf6: POP 00000bf7: POP 00000bf8: PUSH1 0x40 00000bfa: MLOAD 00000bfb: DUP1 00000bfc: SWAP2 00000bfd: SUB 00000bfe: SWAP1 00000bff: RETURN 00000c00: JUMPDEST 00000c01: CALLVALUE 00000c02: DUP1 00000c03: ISZERO 00000c04: PUSH2 0x0c0c 00000c07: JUMPI 00000c08: PUSH1 0x00 00000c0a: DUP1 00000c0b: REVERT 00000c0c: JUMPDEST 00000c0d: POP 00000c0e: PUSH2 0x0c71 00000c11: PUSH1 0x04 00000c13: DUP1 00000c14: CALLDATASIZE 00000c15: SUB 00000c16: DUP2 00000c17: ADD 00000c18: SWAP1 00000c19: DUP1 00000c1a: DUP1 00000c1b: CALLDATALOAD 00000c1c: SWAP1 00000c1d: PUSH1 0x20 00000c1f: ADD 00000c20: SWAP1 00000c21: DUP3 00000c22: ADD 00000c23: DUP1 00000c24: CALLDATALOAD 00000c25: SWAP1 00000c26: PUSH1 0x20 00000c28: ADD 00000c29: SWAP1 00000c2a: DUP1 00000c2b: DUP1 00000c2c: PUSH1 0x1f 00000c2e: ADD 00000c2f: PUSH1 0x20 00000c31: DUP1 00000c32: SWAP2 00000c33: DIV 00000c34: MUL 00000c35: PUSH1 0x20 00000c37: ADD 00000c38: PUSH1 0x40 00000c3a: MLOAD 00000c3b: SWAP1 00000c3c: DUP2 00000c3d: ADD 00000c3e: PUSH1 0x40 00000c40: MSTORE 00000c41: DUP1 00000c42: SWAP4 00000c43: SWAP3 00000c44: SWAP2 00000c45: SWAP1 00000c46: DUP2 00000c47: DUP2 00000c48: MSTORE 00000c49: PUSH1 0x20 00000c4b: ADD 00000c4c: DUP4 00000c4d: DUP4 00000c4e: DUP1 00000c4f: DUP3 00000c50: DUP5 00000c51: CALLDATACOPY 00000c52: DUP3 00000c53: ADD 00000c54: SWAP2 00000c55: POP 00000c56: POP 00000c57: POP 00000c58: POP 00000c59: POP 00000c5a: POP 00000c5b: SWAP2 00000c5c: SWAP3 00000c5d: SWAP2 00000c5e: SWAP3 00000c5f: SWAP1 00000c60: DUP1 00000c61: CALLDATALOAD 00000c62: SWAP1 00000c63: PUSH1 0x20 00000c65: ADD 00000c66: SWAP1 00000c67: SWAP3 00000c68: SWAP2 00000c69: SWAP1 00000c6a: POP 00000c6b: POP 00000c6c: POP 00000c6d: PUSH2 0x25b3 00000c70: JUMP 00000c71: JUMPDEST 00000c72: PUSH1 0x40 00000c74: MLOAD 00000c75: DUP1 00000c76: DUP4 00000c77: DUP2 00000c78: MSTORE 00000c79: PUSH1 0x20 00000c7b: ADD 00000c7c: DUP3 00000c7d: ISZERO 00000c7e: ISZERO 00000c7f: ISZERO 00000c80: ISZERO 00000c81: DUP2 00000c82: MSTORE 00000c83: PUSH1 0x20 00000c85: ADD 00000c86: SWAP3 00000c87: POP 00000c88: POP 00000c89: POP 00000c8a: PUSH1 0x40 00000c8c: MLOAD 00000c8d: DUP1 00000c8e: SWAP2 00000c8f: SUB 00000c90: SWAP1 00000c91: RETURN 00000c92: JUMPDEST 00000c93: CALLVALUE 00000c94: DUP1 00000c95: ISZERO 00000c96: PUSH2 0x0c9e 00000c99: JUMPI 00000c9a: PUSH1 0x00 00000c9c: DUP1 00000c9d: REVERT 00000c9e: JUMPDEST 00000c9f: POP 00000ca0: PUSH2 0x0ca7 00000ca3: PUSH2 0x29ca 00000ca6: JUMP 00000ca7: JUMPDEST 00000ca8: STOP 00000ca9: JUMPDEST 00000caa: CALLVALUE 00000cab: DUP1 00000cac: ISZERO 00000cad: PUSH2 0x0cb5 00000cb0: JUMPI 00000cb1: PUSH1 0x00 00000cb3: DUP1 00000cb4: REVERT 00000cb5: JUMPDEST 00000cb6: POP 00000cb7: PUSH2 0x0cd8 00000cba: PUSH1 0x04 00000cbc: DUP1 00000cbd: CALLDATASIZE 00000cbe: SUB 00000cbf: DUP2 00000cc0: ADD 00000cc1: SWAP1 00000cc2: DUP1 00000cc3: DUP1 00000cc4: CALLDATALOAD 00000cc5: PUSH1 0x00 00000cc7: NOT 00000cc8: AND 00000cc9: SWAP1 00000cca: PUSH1 0x20 00000ccc: ADD 00000ccd: SWAP1 00000cce: SWAP3 00000ccf: SWAP2 00000cd0: SWAP1 00000cd1: POP 00000cd2: POP 00000cd3: POP 00000cd4: PUSH2 0x2acf 00000cd7: JUMP 00000cd8: JUMPDEST 00000cd9: PUSH1 0x40 00000cdb: MLOAD 00000cdc: DUP1 00000cdd: DUP3 00000cde: DUP2 00000cdf: MSTORE 00000ce0: PUSH1 0x20 00000ce2: ADD 00000ce3: SWAP2 00000ce4: POP 00000ce5: POP 00000ce6: PUSH1 0x40 00000ce8: MLOAD 00000ce9: DUP1 00000cea: SWAP2 00000ceb: SUB 00000cec: SWAP1 00000ced: RETURN 00000cee: JUMPDEST 00000cef: CALLVALUE 00000cf0: DUP1 00000cf1: ISZERO 00000cf2: PUSH2 0x0cfa 00000cf5: JUMPI 00000cf6: PUSH1 0x00 00000cf8: DUP1 00000cf9: REVERT 00000cfa: JUMPDEST 00000cfb: POP 00000cfc: PUSH2 0x0d19 00000cff: PUSH1 0x04 00000d01: DUP1 00000d02: CALLDATASIZE 00000d03: SUB 00000d04: DUP2 00000d05: ADD 00000d06: SWAP1 00000d07: DUP1 00000d08: DUP1 00000d09: CALLDATALOAD 00000d0a: SWAP1 00000d0b: PUSH1 0x20 00000d0d: ADD 00000d0e: SWAP1 00000d0f: SWAP3 00000d10: SWAP2 00000d11: SWAP1 00000d12: POP 00000d13: POP 00000d14: POP 00000d15: PUSH2 0x2ae7 00000d18: JUMP 00000d19: JUMPDEST 00000d1a: STOP 00000d1b: JUMPDEST 00000d1c: CALLVALUE 00000d1d: DUP1 00000d1e: ISZERO 00000d1f: PUSH2 0x0d27 00000d22: JUMPI 00000d23: PUSH1 0x00 00000d25: DUP1 00000d26: REVERT 00000d27: JUMPDEST 00000d28: POP 00000d29: PUSH2 0x0d5c 00000d2c: PUSH1 0x04 00000d2e: DUP1 00000d2f: CALLDATASIZE 00000d30: SUB 00000d31: DUP2 00000d32: ADD 00000d33: SWAP1 00000d34: DUP1 00000d35: DUP1 00000d36: CALLDATALOAD 00000d37: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d4c: AND 00000d4d: SWAP1 00000d4e: PUSH1 0x20 00000d50: ADD 00000d51: SWAP1 00000d52: SWAP3 00000d53: SWAP2 00000d54: SWAP1 00000d55: POP 00000d56: POP 00000d57: POP 00000d58: PUSH2 0x2b97 00000d5b: JUMP 00000d5c: JUMPDEST 00000d5d: STOP 00000d5e: JUMPDEST 00000d5f: CALLVALUE 00000d60: DUP1 00000d61: ISZERO 00000d62: PUSH2 0x0d6a 00000d65: JUMPI 00000d66: PUSH1 0x00 00000d68: DUP1 00000d69: REVERT 00000d6a: JUMPDEST 00000d6b: POP 00000d6c: PUSH2 0x0d73 00000d6f: PUSH2 0x2c98 00000d72: JUMP 00000d73: JUMPDEST 00000d74: STOP 00000d75: JUMPDEST 00000d76: CALLVALUE 00000d77: DUP1 00000d78: ISZERO 00000d79: PUSH2 0x0d81 00000d7c: JUMPI 00000d7d: PUSH1 0x00 00000d7f: DUP1 00000d80: REVERT 00000d81: JUMPDEST 00000d82: POP 00000d83: PUSH2 0x0d8a 00000d86: PUSH2 0x2d45 00000d89: JUMP 00000d8a: JUMPDEST 00000d8b: PUSH1 0x40 00000d8d: MLOAD 00000d8e: DUP1 00000d8f: DUP3 00000d90: DUP2 00000d91: MSTORE 00000d92: PUSH1 0x20 00000d94: ADD 00000d95: SWAP2 00000d96: POP 00000d97: POP 00000d98: PUSH1 0x40 00000d9a: MLOAD 00000d9b: DUP1 00000d9c: SWAP2 00000d9d: SUB 00000d9e: SWAP1 00000d9f: RETURN 00000da0: JUMPDEST 00000da1: CALLVALUE 00000da2: DUP1 00000da3: ISZERO 00000da4: PUSH2 0x0dac 00000da7: JUMPI 00000da8: PUSH1 0x00 00000daa: DUP1 00000dab: REVERT 00000dac: JUMPDEST 00000dad: POP 00000dae: PUSH2 0x0db5 00000db1: PUSH2 0x2d50 00000db4: JUMP 00000db5: JUMPDEST 00000db6: STOP 00000db7: JUMPDEST 00000db8: CALLVALUE 00000db9: DUP1 00000dba: ISZERO 00000dbb: PUSH2 0x0dc3 00000dbe: JUMPI 00000dbf: PUSH1 0x00 00000dc1: DUP1 00000dc2: REVERT 00000dc3: JUMPDEST 00000dc4: POP 00000dc5: PUSH2 0x0dcc 00000dc8: PUSH2 0x2e10 00000dcb: JUMP 00000dcc: JUMPDEST 00000dcd: PUSH1 0x40 00000dcf: MLOAD 00000dd0: DUP1 00000dd1: DUP3 00000dd2: DUP2 00000dd3: MSTORE 00000dd4: PUSH1 0x20 00000dd6: ADD 00000dd7: SWAP2 00000dd8: POP 00000dd9: POP 00000dda: PUSH1 0x40 00000ddc: MLOAD 00000ddd: DUP1 00000dde: SWAP2 00000ddf: SUB 00000de0: SWAP1 00000de1: RETURN 00000de2: JUMPDEST 00000de3: CALLVALUE 00000de4: DUP1 00000de5: ISZERO 00000de6: PUSH2 0x0dee 00000de9: JUMPI 00000dea: PUSH1 0x00 00000dec: DUP1 00000ded: REVERT 00000dee: JUMPDEST 00000def: POP 00000df0: PUSH2 0x0df7 00000df3: PUSH2 0x2e6e 00000df6: JUMP 00000df7: JUMPDEST 00000df8: PUSH1 0x40 00000dfa: MLOAD 00000dfb: DUP1 00000dfc: DUP3 00000dfd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e12: AND 00000e13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e28: AND 00000e29: DUP2 00000e2a: MSTORE 00000e2b: PUSH1 0x20 00000e2d: ADD 00000e2e: SWAP2 00000e2f: POP 00000e30: POP 00000e31: PUSH1 0x40 00000e33: MLOAD 00000e34: DUP1 00000e35: SWAP2 00000e36: SUB 00000e37: SWAP1 00000e38: RETURN 00000e39: JUMPDEST 00000e3a: CALLVALUE 00000e3b: DUP1 00000e3c: ISZERO 00000e3d: PUSH2 0x0e45 00000e40: JUMPI 00000e41: PUSH1 0x00 00000e43: DUP1 00000e44: REVERT 00000e45: JUMPDEST 00000e46: POP 00000e47: PUSH2 0x0e64 00000e4a: PUSH1 0x04 00000e4c: DUP1 00000e4d: CALLDATASIZE 00000e4e: SUB 00000e4f: DUP2 00000e50: ADD 00000e51: SWAP1 00000e52: DUP1 00000e53: DUP1 00000e54: CALLDATALOAD 00000e55: SWAP1 00000e56: PUSH1 0x20 00000e58: ADD 00000e59: SWAP1 00000e5a: SWAP3 00000e5b: SWAP2 00000e5c: SWAP1 00000e5d: POP 00000e5e: POP 00000e5f: POP 00000e60: PUSH2 0x2e94 00000e63: JUMP 00000e64: JUMPDEST 00000e65: STOP 00000e66: JUMPDEST 00000e67: CALLVALUE 00000e68: DUP1 00000e69: ISZERO 00000e6a: PUSH2 0x0e72 00000e6d: JUMPI 00000e6e: PUSH1 0x00 00000e70: DUP1 00000e71: REVERT 00000e72: JUMPDEST 00000e73: POP 00000e74: PUSH2 0x0ea7 00000e77: PUSH1 0x04 00000e79: DUP1 00000e7a: CALLDATASIZE 00000e7b: SUB 00000e7c: DUP2 00000e7d: ADD 00000e7e: SWAP1 00000e7f: DUP1 00000e80: DUP1 00000e81: CALLDATALOAD 00000e82: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e97: AND 00000e98: SWAP1 00000e99: PUSH1 0x20 00000e9b: ADD 00000e9c: SWAP1 00000e9d: SWAP3 00000e9e: SWAP2 00000e9f: SWAP1 00000ea0: POP 00000ea1: POP 00000ea2: POP 00000ea3: PUSH2 0x2efa 00000ea6: JUMP 00000ea7: JUMPDEST 00000ea8: PUSH1 0x40 00000eaa: MLOAD 00000eab: DUP1 00000eac: DUP3 00000ead: ISZERO 00000eae: ISZERO 00000eaf: ISZERO 00000eb0: ISZERO 00000eb1: DUP2 00000eb2: MSTORE 00000eb3: PUSH1 0x20 00000eb5: ADD 00000eb6: SWAP2 00000eb7: POP 00000eb8: POP 00000eb9: PUSH1 0x40 00000ebb: MLOAD 00000ebc: DUP1 00000ebd: SWAP2 00000ebe: SUB 00000ebf: SWAP1 00000ec0: RETURN 00000ec1: JUMPDEST 00000ec2: CALLVALUE 00000ec3: DUP1 00000ec4: ISZERO 00000ec5: PUSH2 0x0ecd 00000ec8: JUMPI 00000ec9: PUSH1 0x00 00000ecb: DUP1 00000ecc: REVERT 00000ecd: JUMPDEST 00000ece: POP 00000ecf: PUSH2 0x0f02 00000ed2: PUSH1 0x04 00000ed4: DUP1 00000ed5: CALLDATASIZE 00000ed6: SUB 00000ed7: DUP2 00000ed8: ADD 00000ed9: SWAP1 00000eda: DUP1 00000edb: DUP1 00000edc: CALLDATALOAD 00000edd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ef2: AND 00000ef3: SWAP1 00000ef4: PUSH1 0x20 00000ef6: ADD 00000ef7: SWAP1 00000ef8: SWAP3 00000ef9: SWAP2 00000efa: SWAP1 00000efb: POP 00000efc: POP 00000efd: POP 00000efe: PUSH2 0x2f42 00000f01: JUMP 00000f02: JUMPDEST 00000f03: PUSH1 0x40 00000f05: MLOAD 00000f06: DUP1 00000f07: DUP3 00000f08: DUP2 00000f09: MSTORE 00000f0a: PUSH1 0x20 00000f0c: ADD 00000f0d: SWAP2 00000f0e: POP 00000f0f: POP 00000f10: PUSH1 0x40 00000f12: MLOAD 00000f13: DUP1 00000f14: SWAP2 00000f15: SUB 00000f16: SWAP1 00000f17: RETURN 00000f18: JUMPDEST 00000f19: PUSH2 0x0f20 00000f1c: PUSH2 0x2f5a 00000f1f: JUMP 00000f20: JUMPDEST 00000f21: STOP 00000f22: JUMPDEST 00000f23: CALLVALUE 00000f24: DUP1 00000f25: ISZERO 00000f26: PUSH2 0x0f2e 00000f29: JUMPI 00000f2a: PUSH1 0x00 00000f2c: DUP1 00000f2d: REVERT 00000f2e: JUMPDEST 00000f2f: POP 00000f30: PUSH2 0x0f4d 00000f33: PUSH1 0x04 00000f35: DUP1 00000f36: CALLDATASIZE 00000f37: SUB 00000f38: DUP2 00000f39: ADD 00000f3a: SWAP1 00000f3b: DUP1 00000f3c: DUP1 00000f3d: CALLDATALOAD 00000f3e: SWAP1 00000f3f: PUSH1 0x20 00000f41: ADD 00000f42: SWAP1 00000f43: SWAP3 00000f44: SWAP2 00000f45: SWAP1 00000f46: POP 00000f47: POP 00000f48: POP 00000f49: PUSH2 0x2f5c 00000f4c: JUMP 00000f4d: JUMPDEST 00000f4e: PUSH1 0x40 00000f50: MLOAD 00000f51: DUP1 00000f52: DUP4 00000f53: DUP2 00000f54: MSTORE 00000f55: PUSH1 0x20 00000f57: ADD 00000f58: DUP3 00000f59: DUP2 00000f5a: MSTORE 00000f5b: PUSH1 0x20 00000f5d: ADD 00000f5e: SWAP3 00000f5f: POP 00000f60: POP 00000f61: POP 00000f62: PUSH1 0x40 00000f64: MLOAD 00000f65: DUP1 00000f66: SWAP2 00000f67: SUB 00000f68: SWAP1 00000f69: RETURN 00000f6a: JUMPDEST 00000f6b: CALLVALUE 00000f6c: DUP1 00000f6d: ISZERO 00000f6e: PUSH2 0x0f76 00000f71: JUMPI 00000f72: PUSH1 0x00 00000f74: DUP1 00000f75: REVERT 00000f76: JUMPDEST 00000f77: POP 00000f78: PUSH2 0x0f7f 00000f7b: PUSH2 0x2f80 00000f7e: JUMP 00000f7f: JUMPDEST 00000f80: PUSH1 0x40 00000f82: MLOAD 00000f83: DUP1 00000f84: DUP3 00000f85: DUP2 00000f86: MSTORE 00000f87: PUSH1 0x20 00000f89: ADD 00000f8a: SWAP2 00000f8b: POP 00000f8c: POP 00000f8d: PUSH1 0x40 00000f8f: MLOAD 00000f90: DUP1 00000f91: SWAP2 00000f92: SUB 00000f93: SWAP1 00000f94: RETURN 00000f95: JUMPDEST 00000f96: CALLVALUE 00000f97: DUP1 00000f98: ISZERO 00000f99: PUSH2 0x0fa1 00000f9c: JUMPI 00000f9d: PUSH1 0x00 00000f9f: DUP1 00000fa0: REVERT 00000fa1: JUMPDEST 00000fa2: POP 00000fa3: PUSH2 0x0fc0 00000fa6: PUSH1 0x04 00000fa8: DUP1 00000fa9: CALLDATASIZE 00000faa: SUB 00000fab: DUP2 00000fac: ADD 00000fad: SWAP1 00000fae: DUP1 00000faf: DUP1 00000fb0: CALLDATALOAD 00000fb1: SWAP1 00000fb2: PUSH1 0x20 00000fb4: ADD 00000fb5: SWAP1 00000fb6: SWAP3 00000fb7: SWAP2 00000fb8: SWAP1 00000fb9: POP 00000fba: POP 00000fbb: POP 00000fbc: PUSH2 0x2fa0 00000fbf: JUMP 00000fc0: JUMPDEST 00000fc1: PUSH1 0x40 00000fc3: MLOAD 00000fc4: DUP1 00000fc5: DUP3 00000fc6: DUP2 00000fc7: MSTORE 00000fc8: PUSH1 0x20 00000fca: ADD 00000fcb: SWAP2 00000fcc: POP 00000fcd: POP 00000fce: PUSH1 0x40 00000fd0: MLOAD 00000fd1: DUP1 00000fd2: SWAP2 00000fd3: SUB 00000fd4: SWAP1 00000fd5: RETURN 00000fd6: JUMPDEST 00000fd7: CALLVALUE 00000fd8: DUP1 00000fd9: ISZERO 00000fda: PUSH2 0x0fe2 00000fdd: JUMPI 00000fde: PUSH1 0x00 00000fe0: DUP1 00000fe1: REVERT 00000fe2: JUMPDEST 00000fe3: POP 00000fe4: PUSH2 0x1001 00000fe7: PUSH1 0x04 00000fe9: DUP1 00000fea: CALLDATASIZE 00000feb: SUB 00000fec: DUP2 00000fed: ADD 00000fee: SWAP1 00000fef: DUP1 00000ff0: DUP1 00000ff1: CALLDATALOAD 00000ff2: SWAP1 00000ff3: PUSH1 0x20 00000ff5: ADD 00000ff6: SWAP1 00000ff7: SWAP3 00000ff8: SWAP2 00000ff9: SWAP1 00000ffa: POP 00000ffb: POP 00000ffc: POP 00000ffd: PUSH2 0x2fc1 00001000: JUMP 00001001: JUMPDEST 00001002: PUSH1 0x40 00001004: MLOAD 00001005: DUP1 00001006: DUP3 00001007: ISZERO 00001008: ISZERO 00001009: ISZERO 0000100a: ISZERO 0000100b: DUP2 0000100c: MSTORE 0000100d: PUSH1 0x20 0000100f: ADD 00001010: SWAP2 00001011: POP 00001012: POP 00001013: PUSH1 0x40 00001015: MLOAD 00001016: DUP1 00001017: SWAP2 00001018: SUB 00001019: SWAP1 0000101a: RETURN 0000101b: JUMPDEST 0000101c: CALLVALUE 0000101d: DUP1 0000101e: ISZERO 0000101f: PUSH2 0x1027 00001022: JUMPI 00001023: PUSH1 0x00 00001025: DUP1 00001026: REVERT 00001027: JUMPDEST 00001028: POP 00001029: PUSH2 0x107f 0000102c: PUSH1 0x04 0000102e: DUP1 0000102f: CALLDATASIZE 00001030: SUB 00001031: DUP2 00001032: ADD 00001033: SWAP1 00001034: DUP1 00001035: DUP1 00001036: CALLDATALOAD 00001037: SWAP1 00001038: PUSH1 0x20 0000103a: ADD 0000103b: SWAP1 0000103c: DUP3 0000103d: ADD 0000103e: DUP1 0000103f: CALLDATALOAD 00001040: SWAP1 00001041: PUSH1 0x20 00001043: ADD 00001044: SWAP1 00001045: DUP1 00001046: DUP1 00001047: PUSH1 0x20 00001049: MUL 0000104a: PUSH1 0x20 0000104c: ADD 0000104d: PUSH1 0x40 0000104f: MLOAD 00001050: SWAP1 00001051: DUP2 00001052: ADD 00001053: PUSH1 0x40 00001055: MSTORE 00001056: DUP1 00001057: SWAP4 00001058: SWAP3 00001059: SWAP2 0000105a: SWAP1 0000105b: DUP2 0000105c: DUP2 0000105d: MSTORE 0000105e: PUSH1 0x20 00001060: ADD 00001061: DUP4 00001062: DUP4 00001063: PUSH1 0x20 00001065: MUL 00001066: DUP1 00001067: DUP3 00001068: DUP5 00001069: CALLDATACOPY 0000106a: DUP3 0000106b: ADD 0000106c: SWAP2 0000106d: POP 0000106e: POP 0000106f: POP 00001070: POP 00001071: POP 00001072: POP 00001073: SWAP2 00001074: SWAP3 00001075: SWAP2 00001076: SWAP3 00001077: SWAP1 00001078: POP 00001079: POP 0000107a: POP 0000107b: PUSH2 0x30a7 0000107e: JUMP 0000107f: JUMPDEST 00001080: STOP 00001081: JUMPDEST 00001082: CALLVALUE 00001083: DUP1 00001084: ISZERO 00001085: PUSH2 0x108d 00001088: JUMPI 00001089: PUSH1 0x00 0000108b: DUP1 0000108c: REVERT 0000108d: JUMPDEST 0000108e: POP 0000108f: PUSH2 0x1096 00001092: PUSH2 0x3144 00001095: JUMP 00001096: JUMPDEST 00001097: PUSH1 0x40 00001099: MLOAD 0000109a: DUP1 0000109b: DUP3 0000109c: DUP2 0000109d: MSTORE 0000109e: PUSH1 0x20 000010a0: ADD 000010a1: SWAP2 000010a2: POP 000010a3: POP 000010a4: PUSH1 0x40 000010a6: MLOAD 000010a7: DUP1 000010a8: SWAP2 000010a9: SUB 000010aa: SWAP1 000010ab: RETURN 000010ac: JUMPDEST 000010ad: PUSH2 0x10e0 000010b0: PUSH1 0x04 000010b2: DUP1 000010b3: CALLDATASIZE 000010b4: SUB 000010b5: DUP2 000010b6: ADD 000010b7: SWAP1 000010b8: DUP1 000010b9: DUP1 000010ba: CALLDATALOAD 000010bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010d0: AND 000010d1: SWAP1 000010d2: PUSH1 0x20 000010d4: ADD 000010d5: SWAP1 000010d6: SWAP3 000010d7: SWAP2 000010d8: SWAP1 000010d9: POP 000010da: POP 000010db: POP 000010dc: PUSH2 0x11ea 000010df: JUMP 000010e0: JUMPDEST 000010e1: PUSH1 0x40 000010e3: MLOAD 000010e4: DUP1 000010e5: DUP3 000010e6: ISZERO 000010e7: ISZERO 000010e8: ISZERO 000010e9: ISZERO 000010ea: DUP2 000010eb: MSTORE 000010ec: PUSH1 0x20 000010ee: ADD 000010ef: SWAP2 000010f0: POP 000010f1: POP 000010f2: PUSH1 0x40 000010f4: MLOAD 000010f5: DUP1 000010f6: SWAP2 000010f7: SUB 000010f8: SWAP1 000010f9: RETURN 000010fa: JUMPDEST 000010fb: CALLVALUE 000010fc: DUP1 000010fd: ISZERO 000010fe: PUSH2 0x1106 00001101: JUMPI 00001102: PUSH1 0x00 00001104: DUP1 00001105: REVERT 00001106: JUMPDEST 00001107: POP 00001108: PUSH2 0x110f 0000110b: PUSH2 0x314a 0000110e: JUMP 0000110f: JUMPDEST 00001110: PUSH1 0x40 00001112: MLOAD 00001113: DUP1 00001114: DUP3 00001115: DUP2 00001116: MSTORE 00001117: PUSH1 0x20 00001119: ADD 0000111a: SWAP2 0000111b: POP 0000111c: POP 0000111d: PUSH1 0x40 0000111f: MLOAD 00001120: DUP1 00001121: SWAP2 00001122: SUB 00001123: SWAP1 00001124: RETURN 00001125: JUMPDEST 00001126: CALLVALUE 00001127: DUP1 00001128: ISZERO 00001129: PUSH2 0x1131 0000112c: JUMPI 0000112d: PUSH1 0x00 0000112f: DUP1 00001130: REVERT 00001131: JUMPDEST 00001132: POP 00001133: PUSH2 0x1166 00001136: PUSH1 0x04 00001138: DUP1 00001139: CALLDATASIZE 0000113a: SUB 0000113b: DUP2 0000113c: ADD 0000113d: SWAP1 0000113e: DUP1 0000113f: DUP1 00001140: CALLDATALOAD 00001141: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001156: AND 00001157: SWAP1 00001158: PUSH1 0x20 0000115a: ADD 0000115b: SWAP1 0000115c: SWAP3 0000115d: SWAP2 0000115e: SWAP1 0000115f: POP 00001160: POP 00001161: POP 00001162: PUSH2 0x3150 00001165: JUMP 00001166: JUMPDEST 00001167: STOP 00001168: JUMPDEST 00001169: CALLVALUE 0000116a: DUP1 0000116b: ISZERO 0000116c: PUSH2 0x1174 0000116f: JUMPI 00001170: PUSH1 0x00 00001172: DUP1 00001173: REVERT 00001174: JUMPDEST 00001175: POP 00001176: PUSH2 0x117d 00001179: PUSH2 0x31b8 0000117c: JUMP 0000117d: JUMPDEST 0000117e: PUSH1 0x40 00001180: MLOAD 00001181: DUP1 00001182: DUP3 00001183: DUP2 00001184: MSTORE 00001185: PUSH1 0x20 00001187: ADD 00001188: SWAP2 00001189: POP 0000118a: POP 0000118b: PUSH1 0x40 0000118d: MLOAD 0000118e: DUP1 0000118f: SWAP2 00001190: SUB 00001191: SWAP1 00001192: RETURN 00001193: JUMPDEST 00001194: CALLVALUE 00001195: DUP1 00001196: ISZERO 00001197: PUSH2 0x119f 0000119a: JUMPI 0000119b: PUSH1 0x00 0000119d: DUP1 0000119e: REVERT 0000119f: JUMPDEST 000011a0: POP 000011a1: PUSH2 0x11a8 000011a4: PUSH2 0x31c0 000011a7: JUMP 000011a8: JUMPDEST 000011a9: PUSH1 0x40 000011ab: MLOAD 000011ac: DUP1 000011ad: DUP3 000011ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011c3: AND 000011c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011d9: AND 000011da: DUP2 000011db: MSTORE 000011dc: PUSH1 0x20 000011de: ADD 000011df: SWAP2 000011e0: POP 000011e1: POP 000011e2: PUSH1 0x40 000011e4: MLOAD 000011e5: DUP1 000011e6: SWAP2 000011e7: SUB 000011e8: SWAP1 000011e9: RETURN 000011ea: JUMPDEST 000011eb: PUSH1 0x00 000011ed: DUP1 000011ee: PUSH1 0x00 000011f0: DUP1 000011f1: PUSH1 0x00 000011f3: DUP1 000011f4: PUSH1 0x00 000011f6: DUP1 000011f7: PUSH1 0x00 000011f9: DUP1 000011fa: PUSH1 0x00 000011fc: DUP1 000011fd: PUSH1 0x00 000011ff: PUSH2 0x123d 00001202: CALLER 00001203: PUSH1 0x40 00001205: DUP1 00001206: MLOAD 00001207: SWAP1 00001208: DUP2 00001209: ADD 0000120a: PUSH1 0x40 0000120c: MSTORE 0000120d: DUP1 0000120e: PUSH1 0x09 00001210: DUP2 00001211: MSTORE 00001212: PUSH1 0x20 00001214: ADD 00001215: PUSH32 0x77686974656c6973740000000000000000000000000000000000000000000000 00001236: DUP2 00001237: MSTORE 00001238: POP 00001239: PUSH2 0x18a3 0000123c: JUMP 0000123d: JUMPDEST 0000123e: PUSH1 0x01 00001240: PUSH1 0x14 00001242: SWAP1 00001243: SLOAD 00001244: SWAP1 00001245: PUSH2 0x0100 00001248: EXP 00001249: SWAP1 0000124a: DIV 0000124b: PUSH1 0xff 0000124d: AND 0000124e: ISZERO 0000124f: ISZERO 00001250: ISZERO 00001251: PUSH2 0x1259 00001254: JUMPI 00001255: PUSH1 0x00 00001257: DUP1 00001258: REVERT 00001259: JUMPDEST 0000125a: PUSH1 0x00 0000125c: CALLVALUE 0000125d: GT 0000125e: ISZERO 0000125f: ISZERO 00001260: PUSH2 0x1268 00001263: JUMPI 00001264: PUSH1 0x00 00001266: DUP1 00001267: REVERT 00001268: JUMPDEST 00001269: PUSH2 0x1273 0000126c: PUSH2 0x0348 0000126f: PUSH2 0x2597 00001272: JUMP 00001273: JUMPDEST 00001274: SWAP12 00001275: POP 00001276: PUSH1 0x00 00001278: DUP13 00001279: GT 0000127a: ISZERO 0000127b: ISZERO 0000127c: PUSH2 0x1281 0000127f: JUMPI 00001280: INVALID 00001281: JUMPDEST 00001282: CALLVALUE 00001283: SWAP11 00001284: POP 00001285: PUSH2 0x12b1 00001288: PUSH8 0x0de0b6b3a7640000 00001291: PUSH2 0x12a3 00001294: DUP15 00001295: DUP15 00001296: PUSH2 0x31e6 00001299: SWAP1 0000129a: SWAP2 0000129b: SWAP1 0000129c: PUSH4 0xffffffff 000012a1: AND 000012a2: JUMP 000012a3: JUMPDEST 000012a4: PUSH2 0x321e 000012a7: SWAP1 000012a8: SWAP2 000012a9: SWAP1 000012aa: PUSH4 0xffffffff 000012af: AND 000012b0: JUMP 000012b1: JUMPDEST 000012b2: SWAP10 000012b3: POP 000012b4: PUSH1 0x00 000012b6: DUP11 000012b7: GT 000012b8: ISZERO 000012b9: ISZERO 000012ba: PUSH2 0x12c2 000012bd: JUMPI 000012be: PUSH1 0x00 000012c0: DUP1 000012c1: REVERT 000012c2: JUMPDEST 000012c3: PUSH1 0x11 000012c5: PUSH1 0x00 000012c7: PUSH1 0x03 000012c9: DUP2 000012ca: MSTORE 000012cb: PUSH1 0x20 000012cd: ADD 000012ce: SWAP1 000012cf: DUP2 000012d0: MSTORE 000012d1: PUSH1 0x20 000012d3: ADD 000012d4: PUSH1 0x00 000012d6: KECCAK256 000012d7: PUSH1 0x00 000012d9: ADD 000012da: SLOAD 000012db: PUSH2 0x12ef 000012de: PUSH1 0x13 000012e0: SLOAD 000012e1: DUP13 000012e2: PUSH2 0x3234 000012e5: SWAP1 000012e6: SWAP2 000012e7: SWAP1 000012e8: PUSH4 0xffffffff 000012ed: AND 000012ee: JUMP 000012ef: JUMPDEST 000012f0: GT 000012f1: ISZERO 000012f2: ISZERO 000012f3: ISZERO 000012f4: PUSH2 0x12fc 000012f7: JUMPI 000012f8: PUSH1 0x00 000012fa: DUP1 000012fb: REVERT 000012fc: JUMPDEST 000012fd: PUSH1 0x00 000012ff: SWAP9 00001300: POP 00001301: DUP10 00001302: SWAP8 00001303: POP 00001304: PUSH1 0x00 00001306: SWAP7 00001307: POP 00001308: PUSH1 0x00 0000130a: SWAP6 0000130b: POP 0000130c: PUSH1 0x01 0000130e: SWAP5 0000130f: POP 00001310: JUMPDEST 00001311: PUSH1 0x03 00001313: DUP6 00001314: GT 00001315: ISZERO 00001316: ISZERO 00001317: PUSH2 0x144c 0000131a: JUMPI 0000131b: PUSH1 0x00 0000131d: DUP9 0000131e: EQ 0000131f: ISZERO 00001320: PUSH2 0x1328 00001323: JUMPI 00001324: PUSH2 0x144c 00001327: JUMP 00001328: JUMPDEST 00001329: PUSH1 0x11 0000132b: PUSH1 0x00 0000132d: DUP7 0000132e: DUP2 0000132f: MSTORE 00001330: PUSH1 0x20 00001332: ADD 00001333: SWAP1 00001334: DUP2 00001335: MSTORE 00001336: PUSH1 0x20 00001338: ADD 00001339: PUSH1 0x00 0000133b: KECCAK256 0000133c: PUSH1 0x00 0000133e: ADD 0000133f: SLOAD 00001340: PUSH1 0x13 00001342: SLOAD 00001343: GT 00001344: ISZERO 00001345: PUSH2 0x134d 00001348: JUMPI 00001349: PUSH2 0x143f 0000134c: JUMP 0000134d: JUMPDEST 0000134e: PUSH1 0x13 00001350: SLOAD 00001351: PUSH1 0x11 00001353: PUSH1 0x00 00001355: DUP8 00001356: DUP2 00001357: MSTORE 00001358: PUSH1 0x20 0000135a: ADD 0000135b: SWAP1 0000135c: DUP2 0000135d: MSTORE 0000135e: PUSH1 0x20 00001360: ADD 00001361: PUSH1 0x00 00001363: KECCAK256 00001364: PUSH1 0x00 00001366: ADD 00001367: SLOAD 00001368: SUB 00001369: SWAP4 0000136a: POP 0000136b: DUP4 0000136c: DUP9 0000136d: LT 0000136e: ISZERO 0000136f: PUSH2 0x137a 00001372: JUMPI 00001373: DUP8 00001374: SWAP3 00001375: POP 00001376: PUSH2 0x137e 00001379: JUMP 0000137a: JUMPDEST 0000137b: DUP4 0000137c: SWAP3 0000137d: POP 0000137e: JUMPDEST 0000137f: PUSH2 0x1393 00001382: DUP4 00001383: PUSH1 0x13 00001385: SLOAD 00001386: PUSH2 0x3234 00001389: SWAP1 0000138a: SWAP2 0000138b: SWAP1 0000138c: PUSH4 0xffffffff 00001391: AND 00001392: JUMP 00001393: JUMPDEST 00001394: PUSH1 0x13 00001396: DUP2 00001397: SWAP1 00001398: SSTORE 00001399: POP 0000139a: PUSH2 0x13ee 0000139d: PUSH2 0x13df 000013a0: PUSH1 0x11 000013a2: PUSH1 0x00 000013a4: DUP9 000013a5: DUP2 000013a6: MSTORE 000013a7: PUSH1 0x20 000013a9: ADD 000013aa: SWAP1 000013ab: DUP2 000013ac: MSTORE 000013ad: PUSH1 0x20 000013af: ADD 000013b0: PUSH1 0x00 000013b2: KECCAK256 000013b3: PUSH1 0x01 000013b5: ADD 000013b6: SLOAD 000013b7: PUSH2 0x13d1 000013ba: PUSH8 0x0de0b6b3a7640000 000013c3: DUP8 000013c4: PUSH2 0x31e6 000013c7: SWAP1 000013c8: SWAP2 000013c9: SWAP1 000013ca: PUSH4 0xffffffff 000013cf: AND 000013d0: JUMP 000013d1: JUMPDEST 000013d2: PUSH2 0x321e 000013d5: SWAP1 000013d6: SWAP2 000013d7: SWAP1 000013d8: PUSH4 0xffffffff 000013dd: AND 000013de: JUMP 000013df: JUMPDEST 000013e0: DUP11 000013e1: PUSH2 0x3234 000013e4: SWAP1 000013e5: SWAP2 000013e6: SWAP1 000013e7: PUSH4 0xffffffff 000013ec: AND 000013ed: JUMP 000013ee: JUMPDEST 000013ef: SWAP9 000013f0: POP 000013f1: PUSH1 0x01 000013f3: DUP6 000013f4: EQ 000013f5: ISZERO 000013f6: PUSH2 0x1413 000013f9: JUMPI 000013fa: PUSH2 0x140c 000013fd: DUP4 000013fe: DUP9 000013ff: PUSH2 0x3234 00001402: SWAP1 00001403: SWAP2 00001404: SWAP1 00001405: PUSH4 0xffffffff 0000140a: AND 0000140b: JUMP 0000140c: JUMPDEST 0000140d: SWAP7 0000140e: POP 0000140f: PUSH2 0x1429 00001412: JUMP 00001413: JUMPDEST 00001414: PUSH2 0x1426 00001417: DUP4 00001418: DUP8 00001419: PUSH2 0x3234 0000141c: SWAP1 0000141d: SWAP2 0000141e: SWAP1 0000141f: PUSH4 0xffffffff 00001424: AND 00001425: JUMP 00001426: JUMPDEST 00001427: SWAP6 00001428: POP 00001429: JUMPDEST 0000142a: PUSH2 0x143c 0000142d: DUP4 0000142e: DUP10 0000142f: PUSH2 0x3250 00001432: SWAP1 00001433: SWAP2 00001434: SWAP1 00001435: PUSH4 0xffffffff 0000143a: AND 0000143b: JUMP 0000143c: JUMPDEST 0000143d: SWAP8 0000143e: POP 0000143f: JUMPDEST 00001440: DUP5 00001441: DUP1 00001442: PUSH1 0x01 00001444: ADD 00001445: SWAP6 00001446: POP 00001447: POP 00001448: PUSH2 0x1310 0000144b: JUMP 0000144c: JUMPDEST 0000144d: PUSH1 0x00 0000144f: DUP10 00001450: GT 00001451: ISZERO 00001452: ISZERO 00001453: PUSH2 0x145b 00001456: JUMPI 00001457: PUSH1 0x00 00001459: DUP1 0000145a: REVERT 0000145b: JUMPDEST 0000145c: PUSH1 0x0e 0000145e: PUSH1 0x00 00001460: SWAP1 00001461: SLOAD 00001462: SWAP1 00001463: PUSH2 0x0100 00001466: EXP 00001467: SWAP1 00001468: DIV 00001469: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000147e: AND 0000147f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001494: AND 00001495: PUSH4 0x40c10f19 0000149a: DUP16 0000149b: DUP12 0000149c: PUSH1 0x40 0000149e: MLOAD 0000149f: DUP4 000014a0: PUSH4 0xffffffff 000014a5: AND 000014a6: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000014c4: MUL 000014c5: DUP2 000014c6: MSTORE 000014c7: PUSH1 0x04 000014c9: ADD 000014ca: DUP1 000014cb: DUP4 000014cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014e1: AND 000014e2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014f7: AND 000014f8: DUP2 000014f9: MSTORE 000014fa: PUSH1 0x20 000014fc: ADD 000014fd: DUP3 000014fe: DUP2 000014ff: MSTORE 00001500: PUSH1 0x20 00001502: ADD 00001503: SWAP3 00001504: POP 00001505: POP 00001506: POP 00001507: PUSH1 0x20 00001509: PUSH1 0x40 0000150b: MLOAD 0000150c: DUP1 0000150d: DUP4 0000150e: SUB 0000150f: DUP2 00001510: PUSH1 0x00 00001512: DUP8 00001513: DUP1 00001514: EXTCODESIZE 00001515: ISZERO 00001516: DUP1 00001517: ISZERO 00001518: PUSH2 0x1520 0000151b: JUMPI 0000151c: PUSH1 0x00 0000151e: DUP1 0000151f: REVERT 00001520: JUMPDEST 00001521: POP 00001522: GAS 00001523: CALL 00001524: ISZERO 00001525: DUP1 00001526: ISZERO 00001527: PUSH2 0x1534 0000152a: JUMPI 0000152b: RETURNDATASIZE 0000152c: PUSH1 0x00 0000152e: DUP1 0000152f: RETURNDATACOPY 00001530: RETURNDATASIZE 00001531: PUSH1 0x00 00001533: REVERT 00001534: JUMPDEST 00001535: POP 00001536: POP 00001537: POP 00001538: POP 00001539: PUSH1 0x40 0000153b: MLOAD 0000153c: RETURNDATASIZE 0000153d: PUSH1 0x20 0000153f: DUP2 00001540: LT 00001541: ISZERO 00001542: PUSH2 0x154a 00001545: JUMPI 00001546: PUSH1 0x00 00001548: DUP1 00001549: REVERT 0000154a: JUMPDEST 0000154b: DUP2 0000154c: ADD 0000154d: SWAP1 0000154e: DUP1 0000154f: DUP1 00001550: MLOAD 00001551: SWAP1 00001552: PUSH1 0x20 00001554: ADD 00001555: SWAP1 00001556: SWAP3 00001557: SWAP2 00001558: SWAP1 00001559: POP 0000155a: POP 0000155b: POP 0000155c: ISZERO 0000155d: ISZERO 0000155e: PUSH2 0x1566 00001561: JUMPI 00001562: PUSH1 0x00 00001564: DUP1 00001565: REVERT 00001566: JUMPDEST 00001567: PUSH2 0x157b 0000156a: DUP12 0000156b: PUSH1 0x12 0000156d: SLOAD 0000156e: PUSH2 0x3234 00001571: SWAP1 00001572: SWAP2 00001573: SWAP1 00001574: PUSH4 0xffffffff 00001579: AND 0000157a: JUMP 0000157b: JUMPDEST 0000157c: PUSH1 0x12 0000157e: DUP2 0000157f: SWAP1 00001580: SSTORE 00001581: POP 00001582: PUSH2 0x1596 00001585: DUP12 00001586: PUSH1 0x15 00001588: SLOAD 00001589: PUSH2 0x3234 0000158c: SWAP1 0000158d: SWAP2 0000158e: SWAP1 0000158f: PUSH4 0xffffffff 00001594: AND 00001595: JUMP 00001596: JUMPDEST 00001597: PUSH1 0x15 00001599: DUP2 0000159a: SWAP1 0000159b: SSTORE 0000159c: POP 0000159d: DUP14 0000159e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015b3: AND 000015b4: CALLER 000015b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015ca: AND 000015cb: PUSH32 0x623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad18 000015ec: DUP14 000015ed: DUP13 000015ee: PUSH1 0x40 000015f0: MLOAD 000015f1: DUP1 000015f2: DUP4 000015f3: DUP2 000015f4: MSTORE 000015f5: PUSH1 0x20 000015f7: ADD 000015f8: DUP3 000015f9: DUP2 000015fa: MSTORE 000015fb: PUSH1 0x20 000015fd: ADD 000015fe: SWAP3 000015ff: POP 00001600: POP 00001601: POP 00001602: PUSH1 0x40 00001604: MLOAD 00001605: DUP1 00001606: SWAP2 00001607: SUB 00001608: SWAP1 00001609: LOG3 0000160a: PUSH2 0x1636 0000160d: DUP13 0000160e: PUSH2 0x1628 00001611: PUSH8 0x0de0b6b3a7640000 0000161a: DUP11 0000161b: PUSH2 0x31e6 0000161e: SWAP1 0000161f: SWAP2 00001620: SWAP1 00001621: PUSH4 0xffffffff 00001626: AND 00001627: JUMP 00001628: JUMPDEST 00001629: PUSH2 0x321e 0000162c: SWAP1 0000162d: SWAP2 0000162e: SWAP1 0000162f: PUSH4 0xffffffff 00001634: AND 00001635: JUMP 00001636: JUMPDEST 00001637: SWAP2 00001638: POP 00001639: PUSH2 0x1665 0000163c: DUP13 0000163d: PUSH2 0x1657 00001640: PUSH8 0x0de0b6b3a7640000 00001649: DUP10 0000164a: PUSH2 0x31e6 0000164d: SWAP1 0000164e: SWAP2 0000164f: SWAP1 00001650: PUSH4 0xffffffff 00001655: AND 00001656: JUMP 00001657: JUMPDEST 00001658: PUSH2 0x321e 0000165b: SWAP1 0000165c: SWAP2 0000165d: SWAP1 0000165e: PUSH4 0xffffffff 00001663: AND 00001664: JUMP 00001665: JUMPDEST 00001666: SWAP1 00001667: POP 00001668: PUSH2 0x16c9 0000166b: PUSH2 0x1690 0000166e: PUSH2 0x1681 00001671: PUSH1 0x02 00001673: DUP5 00001674: PUSH2 0x321e 00001677: SWAP1 00001678: SWAP2 00001679: SWAP1 0000167a: PUSH4 0xffffffff 0000167f: AND 00001680: JUMP 00001681: JUMPDEST 00001682: DUP5 00001683: PUSH2 0x3234 00001686: SWAP1 00001687: SWAP2 00001688: SWAP1 00001689: PUSH4 0xffffffff 0000168e: AND 0000168f: JUMP 00001690: JUMPDEST 00001691: PUSH2 0x16bb 00001694: PUSH1 0x0f 00001696: PUSH1 0x00 00001698: SWAP1 00001699: SLOAD 0000169a: SWAP1 0000169b: PUSH2 0x0100 0000169e: EXP 0000169f: SWAP1 000016a0: DIV 000016a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016b6: AND 000016b7: PUSH2 0x24e5 000016ba: JUMP 000016bb: JUMPDEST 000016bc: PUSH2 0x3234 000016bf: SWAP1 000016c0: SWAP2 000016c1: SWAP1 000016c2: PUSH4 0xffffffff 000016c7: AND 000016c8: JUMP 000016c9: JUMPDEST 000016ca: PUSH1 0x14 000016cc: PUSH1 0x00 000016ce: PUSH1 0x0f 000016d0: PUSH1 0x00 000016d2: SWAP1 000016d3: SLOAD 000016d4: SWAP1 000016d5: PUSH2 0x0100 000016d8: EXP 000016d9: SWAP1 000016da: DIV 000016db: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016f0: AND 000016f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001706: AND 00001707: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000171c: AND 0000171d: DUP2 0000171e: MSTORE 0000171f: PUSH1 0x20 00001721: ADD 00001722: SWAP1 00001723: DUP2 00001724: MSTORE 00001725: PUSH1 0x20 00001727: ADD 00001728: PUSH1 0x00 0000172a: KECCAK256 0000172b: DUP2 0000172c: SWAP1 0000172d: SSTORE 0000172e: POP 0000172f: PUSH2 0x177e 00001732: PUSH2 0x1745 00001735: PUSH1 0x02 00001737: DUP4 00001738: PUSH2 0x321e 0000173b: SWAP1 0000173c: SWAP2 0000173d: SWAP1 0000173e: PUSH4 0xffffffff 00001743: AND 00001744: JUMP 00001745: JUMPDEST 00001746: PUSH2 0x1770 00001749: PUSH1 0x10 0000174b: PUSH1 0x00 0000174d: SWAP1 0000174e: SLOAD 0000174f: SWAP1 00001750: PUSH2 0x0100 00001753: EXP 00001754: SWAP1 00001755: DIV 00001756: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000176b: AND 0000176c: PUSH2 0x24e5 0000176f: JUMP 00001770: JUMPDEST 00001771: PUSH2 0x3234 00001774: SWAP1 00001775: SWAP2 00001776: SWAP1 00001777: PUSH4 0xffffffff 0000177c: AND 0000177d: JUMP 0000177e: JUMPDEST 0000177f: PUSH1 0x14 00001781: PUSH1 0x00 00001783: PUSH1 0x10 00001785: PUSH1 0x00 00001787: SWAP1 00001788: SLOAD 00001789: SWAP1 0000178a: PUSH2 0x0100 0000178d: EXP 0000178e: SWAP1 0000178f: DIV 00001790: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017a5: AND 000017a6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017bb: AND 000017bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017d1: AND 000017d2: DUP2 000017d3: MSTORE 000017d4: PUSH1 0x20 000017d6: ADD 000017d7: SWAP1 000017d8: DUP2 000017d9: MSTORE 000017da: PUSH1 0x20 000017dc: ADD 000017dd: PUSH1 0x00 000017df: KECCAK256 000017e0: DUP2 000017e1: SWAP1 000017e2: SSTORE 000017e3: POP 000017e4: PUSH1 0x01 000017e6: SWAP13 000017e7: POP 000017e8: POP 000017e9: POP 000017ea: POP 000017eb: POP 000017ec: POP 000017ed: POP 000017ee: POP 000017ef: POP 000017f0: POP 000017f1: POP 000017f2: POP 000017f3: POP 000017f4: SWAP2 000017f5: SWAP1 000017f6: POP 000017f7: JUMP 000017f8: JUMPDEST 000017f9: PUSH9 0x49e75e938723ce1800 00001803: DUP2 00001804: JUMP 00001805: JUMPDEST 00001806: PUSH1 0x0b 00001808: DUP1 00001809: SLOAD 0000180a: PUSH1 0x01 0000180c: DUP2 0000180d: PUSH1 0x01 0000180f: AND 00001810: ISZERO 00001811: PUSH2 0x0100 00001814: MUL 00001815: SUB 00001816: AND 00001817: PUSH1 0x02 00001819: SWAP1 0000181a: DIV 0000181b: DUP1 0000181c: PUSH1 0x1f 0000181e: ADD 0000181f: PUSH1 0x20 00001821: DUP1 00001822: SWAP2 00001823: DIV 00001824: MUL 00001825: PUSH1 0x20 00001827: ADD 00001828: PUSH1 0x40 0000182a: MLOAD 0000182b: SWAP1 0000182c: DUP2 0000182d: ADD 0000182e: PUSH1 0x40 00001830: MSTORE 00001831: DUP1 00001832: SWAP3 00001833: SWAP2 00001834: SWAP1 00001835: DUP2 00001836: DUP2 00001837: MSTORE 00001838: PUSH1 0x20 0000183a: ADD 0000183b: DUP3 0000183c: DUP1 0000183d: SLOAD 0000183e: PUSH1 0x01 00001840: DUP2 00001841: PUSH1 0x01 00001843: AND 00001844: ISZERO 00001845: PUSH2 0x0100 00001848: MUL 00001849: SUB 0000184a: AND 0000184b: PUSH1 0x02 0000184d: SWAP1 0000184e: DIV 0000184f: DUP1 00001850: ISZERO 00001851: PUSH2 0x189b 00001854: JUMPI 00001855: DUP1 00001856: PUSH1 0x1f 00001858: LT 00001859: PUSH2 0x1870 0000185c: JUMPI 0000185d: PUSH2 0x0100 00001860: DUP1 00001861: DUP4 00001862: SLOAD 00001863: DIV 00001864: MUL 00001865: DUP4 00001866: MSTORE 00001867: SWAP2 00001868: PUSH1 0x20 0000186a: ADD 0000186b: SWAP2 0000186c: PUSH2 0x189b 0000186f: JUMP 00001870: JUMPDEST 00001871: DUP3 00001872: ADD 00001873: SWAP2 00001874: SWAP1 00001875: PUSH1 0x00 00001877: MSTORE 00001878: PUSH1 0x20 0000187a: PUSH1 0x00 0000187c: KECCAK256 0000187d: SWAP1 0000187e: JUMPDEST 0000187f: DUP2 00001880: SLOAD 00001881: DUP2 00001882: MSTORE 00001883: SWAP1 00001884: PUSH1 0x01 00001886: ADD 00001887: SWAP1 00001888: PUSH1 0x20 0000188a: ADD 0000188b: DUP1 0000188c: DUP4 0000188d: GT 0000188e: PUSH2 0x187e 00001891: JUMPI 00001892: DUP3 00001893: SWAP1 00001894: SUB 00001895: PUSH1 0x1f 00001897: AND 00001898: DUP3 00001899: ADD 0000189a: SWAP2 0000189b: JUMPDEST 0000189c: POP 0000189d: POP 0000189e: POP 0000189f: POP 000018a0: POP 000018a1: DUP2 000018a2: JUMP 000018a3: JUMPDEST 000018a4: PUSH2 0x1920 000018a7: DUP3 000018a8: PUSH1 0x02 000018aa: DUP4 000018ab: PUSH1 0x40 000018ad: MLOAD 000018ae: DUP1 000018af: DUP3 000018b0: DUP1 000018b1: MLOAD 000018b2: SWAP1 000018b3: PUSH1 0x20 000018b5: ADD 000018b6: SWAP1 000018b7: DUP1 000018b8: DUP4 000018b9: DUP4 000018ba: JUMPDEST 000018bb: PUSH1 0x20 000018bd: DUP4 000018be: LT 000018bf: ISZERO 000018c0: ISZERO 000018c1: PUSH2 0x18df 000018c4: JUMPI 000018c5: DUP1 000018c6: MLOAD 000018c7: DUP3 000018c8: MSTORE 000018c9: PUSH1 0x20 000018cb: DUP3 000018cc: ADD 000018cd: SWAP2 000018ce: POP 000018cf: PUSH1 0x20 000018d1: DUP2 000018d2: ADD 000018d3: SWAP1 000018d4: POP 000018d5: PUSH1 0x20 000018d7: DUP4 000018d8: SUB 000018d9: SWAP3 000018da: POP 000018db: PUSH2 0x18ba 000018de: JUMP 000018df: JUMPDEST 000018e0: PUSH1 0x01 000018e2: DUP4 000018e3: PUSH1 0x20 000018e5: SUB 000018e6: PUSH2 0x0100 000018e9: EXP 000018ea: SUB 000018eb: DUP1 000018ec: NOT 000018ed: DUP3 000018ee: MLOAD 000018ef: AND 000018f0: DUP2 000018f1: DUP5 000018f2: MLOAD 000018f3: AND 000018f4: DUP1 000018f5: DUP3 000018f6: OR 000018f7: DUP6 000018f8: MSTORE 000018f9: POP 000018fa: POP 000018fb: POP 000018fc: POP 000018fd: POP 000018fe: POP 000018ff: SWAP1 00001900: POP 00001901: ADD 00001902: SWAP2 00001903: POP 00001904: POP 00001905: SWAP1 00001906: DUP2 00001907: MSTORE 00001908: PUSH1 0x20 0000190a: ADD 0000190b: PUSH1 0x40 0000190d: MLOAD 0000190e: DUP1 0000190f: SWAP2 00001910: SUB 00001911: SWAP1 00001912: KECCAK256 00001913: PUSH2 0x3269 00001916: SWAP1 00001917: SWAP2 00001918: SWAP1 00001919: PUSH4 0xffffffff 0000191e: AND 0000191f: JUMP 00001920: JUMPDEST 00001921: POP 00001922: POP 00001923: JUMP 00001924: JUMPDEST 00001925: PUSH1 0x0f 00001927: PUSH1 0x00 00001929: SWAP1 0000192a: SLOAD 0000192b: SWAP1 0000192c: PUSH2 0x0100 0000192f: EXP 00001930: SWAP1 00001931: DIV 00001932: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001947: AND 00001948: DUP2 00001949: JUMP 0000194a: JUMPDEST 0000194b: PUSH1 0x01 0000194d: PUSH1 0x00 0000194f: SWAP1 00001950: SLOAD 00001951: SWAP1 00001952: PUSH2 0x0100 00001955: EXP 00001956: SWAP1 00001957: DIV 00001958: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000196d: AND 0000196e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001983: AND 00001984: CALLER 00001985: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000199a: AND 0000199b: EQ 0000199c: ISZERO 0000199d: ISZERO 0000199e: PUSH2 0x19a6 000019a1: JUMPI 000019a2: PUSH1 0x00 000019a4: DUP1 000019a5: REVERT 000019a6: JUMPDEST 000019a7: PUSH1 0x00 000019a9: PUSH1 0x08 000019ab: DUP3 000019ac: PUSH1 0x40 000019ae: MLOAD 000019af: DUP1 000019b0: DUP3 000019b1: DUP1 000019b2: MLOAD 000019b3: SWAP1 000019b4: PUSH1 0x20 000019b6: ADD 000019b7: SWAP1 000019b8: DUP1 000019b9: DUP4 000019ba: DUP4 000019bb: JUMPDEST 000019bc: PUSH1 0x20 000019be: DUP4 000019bf: LT 000019c0: ISZERO 000019c1: ISZERO 000019c2: PUSH2 0x19e0 000019c5: JUMPI 000019c6: DUP1 000019c7: MLOAD 000019c8: DUP3 000019c9: MSTORE 000019ca: PUSH1 0x20 000019cc: DUP3 000019cd: ADD 000019ce: SWAP2 000019cf: POP 000019d0: PUSH1 0x20 000019d2: DUP2 000019d3: ADD 000019d4: SWAP1 000019d5: POP 000019d6: PUSH1 0x20 000019d8: DUP4 000019d9: SUB 000019da: SWAP3 000019db: POP 000019dc: PUSH2 0x19bb 000019df: JUMP 000019e0: JUMPDEST 000019e1: PUSH1 0x01 000019e3: DUP4 000019e4: PUSH1 0x20 000019e6: SUB 000019e7: PUSH2 0x0100 000019ea: EXP 000019eb: SUB 000019ec: DUP1 000019ed: NOT 000019ee: DUP3 000019ef: MLOAD 000019f0: AND 000019f1: DUP2 000019f2: DUP5 000019f3: MLOAD 000019f4: AND 000019f5: DUP1 000019f6: DUP3 000019f7: OR 000019f8: DUP6 000019f9: MSTORE 000019fa: POP 000019fb: POP 000019fc: POP 000019fd: POP 000019fe: POP 000019ff: POP 00001a00: SWAP1 00001a01: POP 00001a02: ADD 00001a03: SWAP2 00001a04: POP 00001a05: POP 00001a06: SWAP1 00001a07: DUP2 00001a08: MSTORE 00001a09: PUSH1 0x20 00001a0b: ADD 00001a0c: PUSH1 0x40 00001a0e: MLOAD 00001a0f: DUP1 00001a10: SWAP2 00001a11: SUB 00001a12: SWAP1 00001a13: KECCAK256 00001a14: PUSH1 0x00 00001a16: ADD 00001a17: SLOAD 00001a18: EQ 00001a19: ISZERO 00001a1a: ISZERO 00001a1b: ISZERO 00001a1c: PUSH2 0x1a24 00001a1f: JUMPI 00001a20: PUSH1 0x00 00001a22: DUP1 00001a23: REVERT 00001a24: JUMPDEST 00001a25: PUSH1 0x08 00001a27: PUSH1 0x0b 00001a29: PUSH1 0x40 00001a2b: MLOAD 00001a2c: DUP1 00001a2d: DUP3 00001a2e: DUP1 00001a2f: SLOAD 00001a30: PUSH1 0x01 00001a32: DUP2 00001a33: PUSH1 0x01 00001a35: AND 00001a36: ISZERO 00001a37: PUSH2 0x0100 00001a3a: MUL 00001a3b: SUB 00001a3c: AND 00001a3d: PUSH1 0x02 00001a3f: SWAP1 00001a40: DIV 00001a41: DUP1 00001a42: ISZERO 00001a43: PUSH2 0x1a83 00001a46: JUMPI 00001a47: DUP1 00001a48: PUSH1 0x1f 00001a4a: LT 00001a4b: PUSH2 0x1a61 00001a4e: JUMPI 00001a4f: PUSH2 0x0100 00001a52: DUP1 00001a53: DUP4 00001a54: SLOAD 00001a55: DIV 00001a56: MUL 00001a57: DUP4 00001a58: MSTORE 00001a59: SWAP2 00001a5a: DUP3 00001a5b: ADD 00001a5c: SWAP2 00001a5d: PUSH2 0x1a83 00001a60: JUMP 00001a61: JUMPDEST 00001a62: DUP3 00001a63: ADD 00001a64: SWAP2 00001a65: SWAP1 00001a66: PUSH1 0x00 00001a68: MSTORE 00001a69: PUSH1 0x20 00001a6b: PUSH1 0x00 00001a6d: KECCAK256 00001a6e: SWAP1 00001a6f: JUMPDEST 00001a70: DUP2 00001a71: SLOAD 00001a72: DUP2 00001a73: MSTORE 00001a74: SWAP1 00001a75: PUSH1 0x01 00001a77: ADD 00001a78: SWAP1 00001a79: PUSH1 0x20 00001a7b: ADD 00001a7c: DUP1 00001a7d: DUP4 00001a7e: GT 00001a7f: PUSH2 0x1a6f 00001a82: JUMPI 00001a83: JUMPDEST 00001a84: POP 00001a85: POP 00001a86: SWAP2 00001a87: POP 00001a88: POP 00001a89: SWAP1 00001a8a: DUP2 00001a8b: MSTORE 00001a8c: PUSH1 0x20 00001a8e: ADD 00001a8f: PUSH1 0x40 00001a91: MLOAD 00001a92: DUP1 00001a93: SWAP2 00001a94: SUB 00001a95: SWAP1 00001a96: KECCAK256 00001a97: PUSH1 0x00 00001a99: ADD 00001a9a: SLOAD 00001a9b: PUSH1 0x08 00001a9d: DUP3 00001a9e: PUSH1 0x40 00001aa0: MLOAD 00001aa1: DUP1 00001aa2: DUP3 00001aa3: DUP1 00001aa4: MLOAD 00001aa5: SWAP1 00001aa6: PUSH1 0x20 00001aa8: ADD 00001aa9: SWAP1 00001aaa: DUP1 00001aab: DUP4 00001aac: DUP4 00001aad: JUMPDEST 00001aae: PUSH1 0x20 00001ab0: DUP4 00001ab1: LT 00001ab2: ISZERO 00001ab3: ISZERO 00001ab4: PUSH2 0x1ad2 00001ab7: JUMPI 00001ab8: DUP1 00001ab9: MLOAD 00001aba: DUP3 00001abb: MSTORE 00001abc: PUSH1 0x20 00001abe: DUP3 00001abf: ADD 00001ac0: SWAP2 00001ac1: POP 00001ac2: PUSH1 0x20 00001ac4: DUP2 00001ac5: ADD 00001ac6: SWAP1 00001ac7: POP 00001ac8: PUSH1 0x20 00001aca: DUP4 00001acb: SUB 00001acc: SWAP3 00001acd: POP 00001ace: PUSH2 0x1aad 00001ad1: JUMP 00001ad2: JUMPDEST 00001ad3: PUSH1 0x01 00001ad5: DUP4 00001ad6: PUSH1 0x20 00001ad8: SUB 00001ad9: PUSH2 0x0100 00001adc: EXP 00001add: SUB 00001ade: DUP1 00001adf: NOT 00001ae0: DUP3 00001ae1: MLOAD 00001ae2: AND 00001ae3: DUP2 00001ae4: DUP5 00001ae5: MLOAD 00001ae6: AND 00001ae7: DUP1 00001ae8: DUP3 00001ae9: OR 00001aea: DUP6 00001aeb: MSTORE 00001aec: POP 00001aed: POP 00001aee: POP 00001aef: POP 00001af0: POP 00001af1: POP 00001af2: SWAP1 00001af3: POP 00001af4: ADD 00001af5: SWAP2 00001af6: POP 00001af7: POP 00001af8: SWAP1 00001af9: DUP2 00001afa: MSTORE 00001afb: PUSH1 0x20 00001afd: ADD 00001afe: PUSH1 0x40 00001b00: MLOAD 00001b01: DUP1 00001b02: SWAP2 00001b03: SUB 00001b04: SWAP1 00001b05: KECCAK256 00001b06: PUSH1 0x00 00001b08: ADD 00001b09: SLOAD 00001b0a: EQ 00001b0b: ISZERO 00001b0c: ISZERO 00001b0d: ISZERO 00001b0e: PUSH2 0x1b16 00001b11: JUMPI 00001b12: PUSH1 0x00 00001b14: DUP1 00001b15: REVERT 00001b16: JUMPDEST 00001b17: PUSH2 0x1b1f 00001b1a: DUP2 00001b1b: PUSH2 0x3282 00001b1e: JUMP 00001b1f: JUMPDEST 00001b20: PUSH2 0x1b29 00001b23: PUSH1 0x00 00001b25: PUSH2 0x3347 00001b28: JUMP 00001b29: JUMPDEST 00001b2a: POP 00001b2b: JUMP 00001b2c: JUMPDEST 00001b2d: PUSH1 0x10 00001b2f: PUSH1 0x00 00001b31: SWAP1 00001b32: SLOAD 00001b33: SWAP1 00001b34: PUSH2 0x0100 00001b37: EXP 00001b38: SWAP1 00001b39: DIV 00001b3a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b4f: AND 00001b50: DUP2 00001b51: JUMP 00001b52: JUMPDEST 00001b53: PUSH1 0x01 00001b55: PUSH1 0x00 00001b57: SWAP1 00001b58: SLOAD 00001b59: SWAP1 00001b5a: PUSH2 0x0100 00001b5d: EXP 00001b5e: SWAP1 00001b5f: DIV 00001b60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b75: AND 00001b76: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b8b: AND 00001b8c: CALLER 00001b8d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ba2: AND 00001ba3: EQ 00001ba4: ISZERO 00001ba5: ISZERO 00001ba6: PUSH2 0x1bae 00001ba9: JUMPI 00001baa: PUSH1 0x00 00001bac: DUP1 00001bad: REVERT 00001bae: JUMPDEST 00001baf: DUP1 00001bb0: PUSH1 0x0f 00001bb2: PUSH1 0x00 00001bb4: PUSH2 0x0100 00001bb7: EXP 00001bb8: DUP2 00001bb9: SLOAD 00001bba: DUP2 00001bbb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bd0: MUL 00001bd1: NOT 00001bd2: AND 00001bd3: SWAP1 00001bd4: DUP4 00001bd5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bea: AND 00001beb: MUL 00001bec: OR 00001bed: SWAP1 00001bee: SSTORE 00001bef: POP 00001bf0: POP 00001bf1: JUMP 00001bf2: JUMPDEST 00001bf3: PUSH1 0x40 00001bf5: DUP1 00001bf6: MLOAD 00001bf7: SWAP1 00001bf8: DUP2 00001bf9: ADD 00001bfa: PUSH1 0x40 00001bfc: MSTORE 00001bfd: DUP1 00001bfe: PUSH1 0x09 00001c00: DUP2 00001c01: MSTORE 00001c02: PUSH1 0x20 00001c04: ADD 00001c05: PUSH32 0x77686974656c6973740000000000000000000000000000000000000000000000 00001c26: DUP2 00001c27: MSTORE 00001c28: POP 00001c29: DUP2 00001c2a: JUMP 00001c2b: JUMPDEST 00001c2c: PUSH1 0x00 00001c2e: PUSH2 0x1caa 00001c31: DUP4 00001c32: PUSH1 0x02 00001c34: DUP5 00001c35: PUSH1 0x40 00001c37: MLOAD 00001c38: DUP1 00001c39: DUP3 00001c3a: DUP1 00001c3b: MLOAD 00001c3c: SWAP1 00001c3d: PUSH1 0x20 00001c3f: ADD 00001c40: SWAP1 00001c41: DUP1 00001c42: DUP4 00001c43: DUP4 00001c44: JUMPDEST 00001c45: PUSH1 0x20 00001c47: DUP4 00001c48: LT 00001c49: ISZERO 00001c4a: ISZERO 00001c4b: PUSH2 0x1c69 00001c4e: JUMPI 00001c4f: DUP1 00001c50: MLOAD 00001c51: DUP3 00001c52: MSTORE 00001c53: PUSH1 0x20 00001c55: DUP3 00001c56: ADD 00001c57: SWAP2 00001c58: POP 00001c59: PUSH1 0x20 00001c5b: DUP2 00001c5c: ADD 00001c5d: SWAP1 00001c5e: POP 00001c5f: PUSH1 0x20 00001c61: DUP4 00001c62: SUB 00001c63: SWAP3 00001c64: POP 00001c65: PUSH2 0x1c44 00001c68: JUMP 00001c69: JUMPDEST 00001c6a: PUSH1 0x01 00001c6c: DUP4 00001c6d: PUSH1 0x20 00001c6f: SUB 00001c70: PUSH2 0x0100 00001c73: EXP 00001c74: SUB 00001c75: DUP1 00001c76: NOT 00001c77: DUP3 00001c78: MLOAD 00001c79: AND 00001c7a: DUP2 00001c7b: DUP5 00001c7c: MLOAD 00001c7d: AND 00001c7e: DUP1 00001c7f: DUP3 00001c80: OR 00001c81: DUP6 00001c82: MSTORE 00001c83: POP 00001c84: POP 00001c85: POP 00001c86: POP 00001c87: POP 00001c88: POP 00001c89: SWAP1 00001c8a: POP 00001c8b: ADD 00001c8c: SWAP2 00001c8d: POP 00001c8e: POP 00001c8f: SWAP1 00001c90: DUP2 00001c91: MSTORE 00001c92: PUSH1 0x20 00001c94: ADD 00001c95: PUSH1 0x40 00001c97: MLOAD 00001c98: DUP1 00001c99: SWAP2 00001c9a: SUB 00001c9b: SWAP1 00001c9c: KECCAK256 00001c9d: PUSH2 0x37cf 00001ca0: SWAP1 00001ca1: SWAP2 00001ca2: SWAP1 00001ca3: PUSH4 0xffffffff 00001ca8: AND 00001ca9: JUMP 00001caa: JUMPDEST 00001cab: SWAP1 00001cac: POP 00001cad: SWAP3 00001cae: SWAP2 00001caf: POP 00001cb0: POP 00001cb1: JUMP 00001cb2: JUMPDEST 00001cb3: PUSH1 0x00 00001cb5: PUSH1 0x01 00001cb7: PUSH1 0x00 00001cb9: SWAP1 00001cba: SLOAD 00001cbb: SWAP1 00001cbc: PUSH2 0x0100 00001cbf: EXP 00001cc0: SWAP1 00001cc1: DIV 00001cc2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001cd7: AND 00001cd8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ced: AND 00001cee: CALLER 00001cef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d04: AND 00001d05: EQ 00001d06: ISZERO 00001d07: ISZERO 00001d08: PUSH2 0x1d10 00001d0b: JUMPI 00001d0c: PUSH1 0x00 00001d0e: DUP1 00001d0f: REVERT 00001d10: JUMPDEST 00001d11: PUSH1 0x00 00001d13: SWAP1 00001d14: POP 00001d15: JUMPDEST 00001d16: DUP2 00001d17: MLOAD 00001d18: DUP2 00001d19: LT 00001d1a: ISZERO 00001d1b: PUSH2 0x1d4b 00001d1e: JUMPI 00001d1f: PUSH2 0x1d3e 00001d22: DUP3 00001d23: DUP3 00001d24: DUP2 00001d25: MLOAD 00001d26: DUP2 00001d27: LT 00001d28: ISZERO 00001d29: ISZERO 00001d2a: PUSH2 0x1d2f 00001d2d: JUMPI 00001d2e: INVALID 00001d2f: JUMPDEST 00001d30: SWAP1 00001d31: PUSH1 0x20 00001d33: ADD 00001d34: SWAP1 00001d35: PUSH1 0x20 00001d37: MUL 00001d38: ADD 00001d39: MLOAD 00001d3a: PUSH2 0x2101 00001d3d: JUMP 00001d3e: JUMPDEST 00001d3f: DUP1 00001d40: DUP1 00001d41: PUSH1 0x01 00001d43: ADD 00001d44: SWAP2 00001d45: POP 00001d46: POP 00001d47: PUSH2 0x1d15 00001d4a: JUMP 00001d4b: JUMPDEST 00001d4c: POP 00001d4d: POP 00001d4e: JUMP 00001d4f: JUMPDEST 00001d50: PUSH1 0x00 00001d52: DUP1 00001d53: PUSH2 0x1d5b 00001d56: DUP5 00001d57: PUSH2 0x3828 00001d5a: JUMP 00001d5b: JUMPDEST 00001d5c: ISZERO 00001d5d: ISZERO 00001d5e: PUSH2 0x1e59 00001d61: JUMPI 00001d62: PUSH32 0xb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced 00001d83: PUSH1 0x0b 00001d85: PUSH1 0x40 00001d87: MLOAD 00001d88: DUP1 00001d89: DUP1 00001d8a: PUSH1 0x20 00001d8c: ADD 00001d8d: DUP1 00001d8e: PUSH1 0x20 00001d90: ADD 00001d91: DUP4 00001d92: DUP2 00001d93: SUB 00001d94: DUP4 00001d95: MSTORE 00001d96: DUP5 00001d97: DUP2 00001d98: DUP2 00001d99: SLOAD 00001d9a: PUSH1 0x01 00001d9c: DUP2 00001d9d: PUSH1 0x01 00001d9f: AND 00001da0: ISZERO 00001da1: PUSH2 0x0100 00001da4: MUL 00001da5: SUB 00001da6: AND 00001da7: PUSH1 0x02 00001da9: SWAP1 00001daa: DIV 00001dab: DUP2 00001dac: MSTORE 00001dad: PUSH1 0x20 00001daf: ADD 00001db0: SWAP2 00001db1: POP 00001db2: DUP1 00001db3: SLOAD 00001db4: PUSH1 0x01 00001db6: DUP2 00001db7: PUSH1 0x01 00001db9: AND 00001dba: ISZERO 00001dbb: PUSH2 0x0100 00001dbe: MUL 00001dbf: SUB 00001dc0: AND 00001dc1: PUSH1 0x02 00001dc3: SWAP1 00001dc4: DIV 00001dc5: DUP1 00001dc6: ISZERO 00001dc7: PUSH2 0x1e11 00001dca: JUMPI 00001dcb: DUP1 00001dcc: PUSH1 0x1f 00001dce: LT 00001dcf: PUSH2 0x1de6 00001dd2: JUMPI 00001dd3: PUSH2 0x0100 00001dd6: DUP1 00001dd7: DUP4 00001dd8: SLOAD 00001dd9: DIV 00001dda: MUL 00001ddb: DUP4 00001ddc: MSTORE 00001ddd: SWAP2 00001dde: PUSH1 0x20 00001de0: ADD 00001de1: SWAP2 00001de2: PUSH2 0x1e11 00001de5: JUMP 00001de6: JUMPDEST 00001de7: DUP3 00001de8: ADD 00001de9: SWAP2 00001dea: SWAP1 00001deb: PUSH1 0x00 00001ded: MSTORE 00001dee: PUSH1 0x20 00001df0: PUSH1 0x00 00001df2: KECCAK256 00001df3: SWAP1 00001df4: JUMPDEST 00001df5: DUP2 00001df6: SLOAD 00001df7: DUP2 00001df8: MSTORE 00001df9: SWAP1 00001dfa: PUSH1 0x01 00001dfc: ADD 00001dfd: SWAP1 00001dfe: PUSH1 0x20 00001e00: ADD 00001e01: DUP1 00001e02: DUP4 00001e03: GT 00001e04: PUSH2 0x1df4 00001e07: JUMPI 00001e08: DUP3 00001e09: SWAP1 00001e0a: SUB 00001e0b: PUSH1 0x1f 00001e0d: AND 00001e0e: DUP3 00001e0f: ADD 00001e10: SWAP2 00001e11: JUMPDEST 00001e12: POP 00001e13: POP 00001e14: DUP4 00001e15: DUP2 00001e16: SUB 00001e17: DUP3 00001e18: MSTORE 00001e19: PUSH1 0x11 00001e1b: DUP2 00001e1c: MSTORE 00001e1d: PUSH1 0x20 00001e1f: ADD 00001e20: DUP1 00001e21: PUSH32 0x496e76616c69642071756572792069642e000000000000000000000000000000 00001e42: DUP2 00001e43: MSTORE 00001e44: POP 00001e45: PUSH1 0x20 00001e47: ADD 00001e48: SWAP4 00001e49: POP 00001e4a: POP 00001e4b: POP 00001e4c: POP 00001e4d: PUSH1 0x40 00001e4f: MLOAD 00001e50: DUP1 00001e51: SWAP2 00001e52: SUB 00001e53: SWAP1 00001e54: LOG1 00001e55: PUSH1 0x00 00001e57: DUP1 00001e58: REVERT 00001e59: JUMPDEST 00001e5a: PUSH2 0x1e61 00001e5d: PUSH2 0x3852 00001e60: JUMP 00001e61: JUMPDEST 00001e62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e77: AND 00001e78: CALLER 00001e79: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e8e: AND 00001e8f: EQ 00001e90: ISZERO 00001e91: ISZERO 00001e92: PUSH2 0x1fb3 00001e95: JUMPI 00001e96: PUSH32 0xb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced 00001eb7: PUSH1 0x0b 00001eb9: PUSH1 0x40 00001ebb: MLOAD 00001ebc: DUP1 00001ebd: DUP1 00001ebe: PUSH1 0x20 00001ec0: ADD 00001ec1: DUP1 00001ec2: PUSH1 0x20 00001ec4: ADD 00001ec5: DUP4 00001ec6: DUP2 00001ec7: SUB 00001ec8: DUP4 00001ec9: MSTORE 00001eca: DUP5 00001ecb: DUP2 00001ecc: DUP2 00001ecd: SLOAD 00001ece: PUSH1 0x01 00001ed0: DUP2 00001ed1: PUSH1 0x01 00001ed3: AND 00001ed4: ISZERO 00001ed5: PUSH2 0x0100 00001ed8: MUL 00001ed9: SUB 00001eda: AND 00001edb: PUSH1 0x02 00001edd: SWAP1 00001ede: DIV 00001edf: DUP2 00001ee0: MSTORE 00001ee1: PUSH1 0x20 00001ee3: ADD 00001ee4: SWAP2 00001ee5: POP 00001ee6: DUP1 00001ee7: SLOAD 00001ee8: PUSH1 0x01 00001eea: DUP2 00001eeb: PUSH1 0x01 00001eed: AND 00001eee: ISZERO 00001eef: PUSH2 0x0100 00001ef2: MUL 00001ef3: SUB 00001ef4: AND 00001ef5: PUSH1 0x02 00001ef7: SWAP1 00001ef8: DIV 00001ef9: DUP1 00001efa: ISZERO 00001efb: PUSH2 0x1f45 00001efe: JUMPI 00001eff: DUP1 00001f00: PUSH1 0x1f 00001f02: LT 00001f03: PUSH2 0x1f1a 00001f06: JUMPI 00001f07: PUSH2 0x0100 00001f0a: DUP1 00001f0b: DUP4 00001f0c: SLOAD 00001f0d: DIV 00001f0e: MUL 00001f0f: DUP4 00001f10: MSTORE 00001f11: SWAP2 00001f12: PUSH1 0x20 00001f14: ADD 00001f15: SWAP2 00001f16: PUSH2 0x1f45 00001f19: JUMP 00001f1a: JUMPDEST 00001f1b: DUP3 00001f1c: ADD 00001f1d: SWAP2 00001f1e: SWAP1 00001f1f: PUSH1 0x00 00001f21: MSTORE 00001f22: PUSH1 0x20 00001f24: PUSH1 0x00 00001f26: KECCAK256 00001f27: SWAP1 00001f28: JUMPDEST 00001f29: DUP2 00001f2a: SLOAD 00001f2b: DUP2 00001f2c: MSTORE 00001f2d: SWAP1 00001f2e: PUSH1 0x01 00001f30: ADD 00001f31: SWAP1 00001f32: PUSH1 0x20 00001f34: ADD 00001f35: DUP1 00001f36: DUP4 00001f37: GT 00001f38: PUSH2 0x1f28 00001f3b: JUMPI 00001f3c: DUP3 00001f3d: SWAP1 00001f3e: SUB 00001f3f: PUSH1 0x1f 00001f41: AND 00001f42: DUP3 00001f43: ADD 00001f44: SWAP2 00001f45: JUMPDEST 00001f46: POP 00001f47: POP 00001f48: DUP4 00001f49: DUP2 00001f4a: SUB 00001f4b: DUP3 00001f4c: MSTORE 00001f4d: PUSH1 0x27 00001f4f: DUP2 00001f50: MSTORE 00001f51: PUSH1 0x20 00001f53: ADD 00001f54: DUP1 00001f55: PUSH32 0x53656e64657220646f6573206e6f74206d617463682063616c6c6261636b2061 00001f76: DUP2 00001f77: MSTORE 00001f78: PUSH1 0x20 00001f7a: ADD 00001f7b: PUSH32 0x6464726573732e00000000000000000000000000000000000000000000000000 00001f9c: DUP2 00001f9d: MSTORE 00001f9e: POP 00001f9f: PUSH1 0x40 00001fa1: ADD 00001fa2: SWAP4 00001fa3: POP 00001fa4: POP 00001fa5: POP 00001fa6: POP 00001fa7: PUSH1 0x40 00001fa9: MLOAD 00001faa: DUP1 00001fab: SWAP2 00001fac: SUB 00001fad: SWAP1 00001fae: LOG1 00001faf: PUSH1 0x00 00001fb1: DUP1 00001fb2: REVERT 00001fb3: JUMPDEST 00001fb4: PUSH2 0x1fbe 00001fb7: DUP4 00001fb8: PUSH1 0x09 00001fba: PUSH2 0x25b3 00001fbd: JUMP 00001fbe: JUMPDEST 00001fbf: DUP1 00001fc0: SWAP3 00001fc1: POP 00001fc2: DUP2 00001fc3: SWAP4 00001fc4: POP 00001fc5: POP 00001fc6: POP 00001fc7: DUP1 00001fc8: ISZERO 00001fc9: ISZERO 00001fca: PUSH2 0x20c5 00001fcd: JUMPI 00001fce: PUSH32 0xb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced 00001fef: PUSH1 0x0b 00001ff1: PUSH1 0x40 00001ff3: MLOAD 00001ff4: DUP1 00001ff5: DUP1 00001ff6: PUSH1 0x20 00001ff8: ADD 00001ff9: DUP1 00001ffa: PUSH1 0x20 00001ffc: ADD 00001ffd: DUP4 00001ffe: DUP2 00001fff: SUB 00002000: DUP4 00002001: MSTORE 00002002: DUP5 00002003: DUP2 00002004: DUP2 00002005: SLOAD 00002006: PUSH1 0x01 00002008: DUP2 00002009: PUSH1 0x01 0000200b: AND 0000200c: ISZERO 0000200d: PUSH2 0x0100 00002010: MUL 00002011: SUB 00002012: AND 00002013: PUSH1 0x02 00002015: SWAP1 00002016: DIV 00002017: DUP2 00002018: MSTORE 00002019: PUSH1 0x20 0000201b: ADD 0000201c: SWAP2 0000201d: POP 0000201e: DUP1 0000201f: SLOAD 00002020: PUSH1 0x01 00002022: DUP2 00002023: PUSH1 0x01 00002025: AND 00002026: ISZERO 00002027: PUSH2 0x0100 0000202a: MUL 0000202b: SUB 0000202c: AND 0000202d: PUSH1 0x02 0000202f: SWAP1 00002030: DIV 00002031: DUP1 00002032: ISZERO 00002033: PUSH2 0x207d 00002036: JUMPI 00002037: DUP1 00002038: PUSH1 0x1f 0000203a: LT 0000203b: PUSH2 0x2052 0000203e: JUMPI 0000203f: PUSH2 0x0100 00002042: DUP1 00002043: DUP4 00002044: SLOAD 00002045: DIV 00002046: MUL 00002047: DUP4 00002048: MSTORE 00002049: SWAP2 0000204a: PUSH1 0x20 0000204c: ADD 0000204d: SWAP2 0000204e: PUSH2 0x207d 00002051: JUMP 00002052: JUMPDEST 00002053: DUP3 00002054: ADD 00002055: SWAP2 00002056: SWAP1 00002057: PUSH1 0x00 00002059: MSTORE 0000205a: PUSH1 0x20 0000205c: PUSH1 0x00 0000205e: KECCAK256 0000205f: SWAP1 00002060: JUMPDEST 00002061: DUP2 00002062: SLOAD 00002063: DUP2 00002064: MSTORE 00002065: SWAP1 00002066: PUSH1 0x01 00002068: ADD 00002069: SWAP1 0000206a: PUSH1 0x20 0000206c: ADD 0000206d: DUP1 0000206e: DUP4 0000206f: GT 00002070: PUSH2 0x2060 00002073: JUMPI 00002074: DUP3 00002075: SWAP1 00002076: SUB 00002077: PUSH1 0x1f 00002079: AND 0000207a: DUP3 0000207b: ADD 0000207c: SWAP2 0000207d: JUMPDEST 0000207e: POP 0000207f: POP 00002080: DUP4 00002081: DUP2 00002082: SUB 00002083: DUP3 00002084: MSTORE 00002085: PUSH1 0x1c 00002087: DUP2 00002088: MSTORE 00002089: PUSH1 0x20 0000208b: ADD 0000208c: DUP1 0000208d: PUSH32 0x5061727365206572726f7220666f72204a534f4e206e756d6265722e00000000 000020ae: DUP2 000020af: MSTORE 000020b0: POP 000020b1: PUSH1 0x20 000020b3: ADD 000020b4: SWAP4 000020b5: POP 000020b6: POP 000020b7: POP 000020b8: POP 000020b9: PUSH1 0x40 000020bb: MLOAD 000020bc: DUP1 000020bd: SWAP2 000020be: SUB 000020bf: SWAP1 000020c0: LOG1 000020c1: PUSH1 0x00 000020c3: DUP1 000020c4: REVERT 000020c5: JUMPDEST 000020c6: PUSH1 0x0d 000020c8: PUSH1 0x00 000020ca: DUP6 000020cb: PUSH1 0x00 000020cd: NOT 000020ce: AND 000020cf: PUSH1 0x00 000020d1: NOT 000020d2: AND 000020d3: DUP2 000020d4: MSTORE 000020d5: PUSH1 0x20 000020d7: ADD 000020d8: SWAP1 000020d9: DUP2 000020da: MSTORE 000020db: PUSH1 0x20 000020dd: ADD 000020de: PUSH1 0x00 000020e0: KECCAK256 000020e1: PUSH1 0x00 000020e3: SWAP1 000020e4: SSTORE 000020e5: PUSH2 0x20f0 000020e8: PUSH2 0x0348 000020eb: DUP4 000020ec: PUSH2 0x3bb4 000020ef: JUMP 000020f0: JUMPDEST 000020f1: PUSH2 0x20fb 000020f4: PUSH1 0x09 000020f6: SLOAD 000020f7: PUSH2 0x3347 000020fa: JUMP 000020fb: JUMPDEST 000020fc: POP 000020fd: POP 000020fe: POP 000020ff: POP 00002100: JUMP 00002101: JUMPDEST 00002102: PUSH1 0x01 00002104: PUSH1 0x00 00002106: SWAP1 00002107: SLOAD 00002108: SWAP1 00002109: PUSH2 0x0100 0000210c: EXP 0000210d: SWAP1 0000210e: DIV 0000210f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002124: AND 00002125: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000213a: AND 0000213b: CALLER 0000213c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002151: AND 00002152: EQ 00002153: ISZERO 00002154: ISZERO 00002155: PUSH2 0x215d 00002158: JUMPI 00002159: PUSH1 0x00 0000215b: DUP1 0000215c: REVERT 0000215d: JUMPDEST 0000215e: PUSH2 0x219c 00002161: DUP2 00002162: PUSH1 0x40 00002164: DUP1 00002165: MLOAD 00002166: SWAP1 00002167: DUP2 00002168: ADD 00002169: PUSH1 0x40 0000216b: MSTORE 0000216c: DUP1 0000216d: PUSH1 0x09 0000216f: DUP2 00002170: MSTORE 00002171: PUSH1 0x20 00002173: ADD 00002174: PUSH32 0x77686974656c6973740000000000000000000000000000000000000000000000 00002195: DUP2 00002196: MSTORE 00002197: POP 00002198: PUSH2 0x3c0e 0000219b: JUMP 0000219c: JUMPDEST 0000219d: PUSH32 0xf1abf01a1043b7c244d128e8595cf0c1d10743b022b03a02dffd8ca3bf729f5a 000021be: DUP2 000021bf: PUSH1 0x40 000021c1: MLOAD 000021c2: DUP1 000021c3: DUP3 000021c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021d9: AND 000021da: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021ef: AND 000021f0: DUP2 000021f1: MSTORE 000021f2: PUSH1 0x20 000021f4: ADD 000021f5: SWAP2 000021f6: POP 000021f7: POP 000021f8: PUSH1 0x40 000021fa: MLOAD 000021fb: DUP1 000021fc: SWAP2 000021fd: SUB 000021fe: SWAP1 000021ff: LOG1 00002200: POP 00002201: JUMP 00002202: JUMPDEST 00002203: PUSH1 0x09 00002205: SLOAD 00002206: DUP2 00002207: JUMP 00002208: JUMPDEST 00002209: PUSH1 0x00 0000220b: PUSH2 0x221b 0000220e: PUSH2 0x2216 00002211: CALLER 00002212: PUSH2 0x24e5 00002215: JUMP 00002216: JUMPDEST 00002217: PUSH2 0x2fc1 0000221a: JUMP 0000221b: JUMPDEST 0000221c: SWAP1 0000221d: POP 0000221e: SWAP1 0000221f: JUMP 00002220: JUMPDEST 00002221: PUSH1 0x01 00002223: PUSH1 0x00 00002225: SWAP1 00002226: SLOAD 00002227: SWAP1 00002228: PUSH2 0x0100 0000222b: EXP 0000222c: SWAP1 0000222d: DIV 0000222e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002243: AND 00002244: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002259: AND 0000225a: CALLER 0000225b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002270: AND 00002271: EQ 00002272: ISZERO 00002273: ISZERO 00002274: PUSH2 0x227c 00002277: JUMPI 00002278: PUSH1 0x00 0000227a: DUP1 0000227b: REVERT 0000227c: JUMPDEST 0000227d: DUP1 0000227e: PUSH1 0x10 00002280: PUSH1 0x00 00002282: PUSH2 0x0100 00002285: EXP 00002286: DUP2 00002287: SLOAD 00002288: DUP2 00002289: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000229e: MUL 0000229f: NOT 000022a0: AND 000022a1: SWAP1 000022a2: DUP4 000022a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022b8: AND 000022b9: MUL 000022ba: OR 000022bb: SWAP1 000022bc: SSTORE 000022bd: POP 000022be: POP 000022bf: JUMP 000022c0: JUMPDEST 000022c1: PUSH1 0x01 000022c3: PUSH1 0x00 000022c5: SWAP1 000022c6: SLOAD 000022c7: SWAP1 000022c8: PUSH2 0x0100 000022cb: EXP 000022cc: SWAP1 000022cd: DIV 000022ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022e3: AND 000022e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022f9: AND 000022fa: CALLER 000022fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002310: AND 00002311: EQ 00002312: ISZERO 00002313: ISZERO 00002314: PUSH2 0x231c 00002317: JUMPI 00002318: PUSH1 0x00 0000231a: DUP1 0000231b: REVERT 0000231c: JUMPDEST 0000231d: PUSH2 0x2325 00002320: DUP2 00002321: PUSH2 0x3d5f 00002324: JUMP 00002325: JUMPDEST 00002326: POP 00002327: JUMP 00002328: JUMPDEST 00002329: POP 0000232a: POP 0000232b: POP 0000232c: JUMP 0000232d: JUMPDEST 0000232e: PUSH1 0x01 00002330: PUSH1 0x00 00002332: SWAP1 00002333: SLOAD 00002334: SWAP1 00002335: PUSH2 0x0100 00002338: EXP 00002339: SWAP1 0000233a: DIV 0000233b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002350: AND 00002351: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002366: AND 00002367: CALLER 00002368: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000237d: AND 0000237e: EQ 0000237f: ISZERO 00002380: ISZERO 00002381: PUSH2 0x2389 00002384: JUMPI 00002385: PUSH1 0x00 00002387: DUP1 00002388: REVERT 00002389: JUMPDEST 0000238a: PUSH1 0x01 0000238c: PUSH1 0x14 0000238e: SWAP1 0000238f: SLOAD 00002390: SWAP1 00002391: PUSH2 0x0100 00002394: EXP 00002395: SWAP1 00002396: DIV 00002397: PUSH1 0xff 00002399: AND 0000239a: ISZERO 0000239b: ISZERO 0000239c: PUSH2 0x23a4 0000239f: JUMPI 000023a0: PUSH1 0x00 000023a2: DUP1 000023a3: REVERT 000023a4: JUMPDEST 000023a5: PUSH1 0x00 000023a7: PUSH1 0x01 000023a9: PUSH1 0x14 000023ab: PUSH2 0x0100 000023ae: EXP 000023af: DUP2 000023b0: SLOAD 000023b1: DUP2 000023b2: PUSH1 0xff 000023b4: MUL 000023b5: NOT 000023b6: AND 000023b7: SWAP1 000023b8: DUP4 000023b9: ISZERO 000023ba: ISZERO 000023bb: MUL 000023bc: OR 000023bd: SWAP1 000023be: SSTORE 000023bf: POP 000023c0: PUSH32 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33 000023e1: PUSH1 0x40 000023e3: MLOAD 000023e4: PUSH1 0x40 000023e6: MLOAD 000023e7: DUP1 000023e8: SWAP2 000023e9: SUB 000023ea: SWAP1 000023eb: LOG1 000023ec: JUMP 000023ed: JUMPDEST 000023ee: PUSH1 0x0a 000023f0: SLOAD 000023f1: DUP2 000023f2: JUMP 000023f3: JUMPDEST 000023f4: PUSH1 0x12 000023f6: SLOAD 000023f7: DUP2 000023f8: JUMP 000023f9: JUMPDEST 000023fa: PUSH1 0x40 000023fc: DUP1 000023fd: MLOAD 000023fe: SWAP1 000023ff: DUP2 00002400: ADD 00002401: PUSH1 0x40 00002403: MSTORE 00002404: DUP1 00002405: PUSH1 0x06 00002407: DUP2 00002408: MSTORE 00002409: PUSH1 0x20 0000240b: ADD 0000240c: PUSH32 0x6b72616b656e0000000000000000000000000000000000000000000000000000 0000242d: DUP2 0000242e: MSTORE 0000242f: POP 00002430: DUP2 00002431: JUMP 00002432: JUMPDEST 00002433: PUSH1 0x00 00002435: DUP1 00002436: PUSH1 0x01 00002438: PUSH1 0x00 0000243a: SWAP1 0000243b: SLOAD 0000243c: SWAP1 0000243d: PUSH2 0x0100 00002440: EXP 00002441: SWAP1 00002442: DIV 00002443: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002458: AND 00002459: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000246e: AND 0000246f: CALLER 00002470: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002485: AND 00002486: EQ 00002487: ISZERO 00002488: ISZERO 00002489: PUSH2 0x2491 0000248c: JUMPI 0000248d: PUSH1 0x00 0000248f: DUP1 00002490: REVERT 00002491: JUMPDEST 00002492: PUSH1 0x09 00002494: DUP4 00002495: GT 00002496: ISZERO 00002497: ISZERO 00002498: ISZERO 00002499: PUSH2 0x24a1 0000249c: JUMPI 0000249d: PUSH1 0x00 0000249f: DUP1 000024a0: REVERT 000024a1: JUMPDEST 000024a2: DUP4 000024a3: SWAP2 000024a4: POP 000024a5: DUP3 000024a6: SWAP1 000024a7: POP 000024a8: JUMPDEST 000024a9: PUSH1 0x09 000024ab: DUP2 000024ac: LT 000024ad: ISZERO 000024ae: PUSH2 0x24d4 000024b1: JUMPI 000024b2: PUSH2 0x24c5 000024b5: PUSH1 0x0a 000024b7: DUP4 000024b8: PUSH2 0x31e6 000024bb: SWAP1 000024bc: SWAP2 000024bd: SWAP1 000024be: PUSH4 0xffffffff 000024c3: AND 000024c4: JUMP 000024c5: JUMPDEST 000024c6: SWAP2 000024c7: POP 000024c8: DUP1 000024c9: DUP1 000024ca: PUSH1 0x01 000024cc: ADD 000024cd: SWAP2 000024ce: POP 000024cf: POP 000024d0: PUSH2 0x24a8 000024d3: JUMP 000024d4: JUMPDEST 000024d5: PUSH2 0x24de 000024d8: DUP6 000024d9: DUP4 000024da: PUSH2 0x3bb4 000024dd: JUMP 000024de: JUMPDEST 000024df: POP 000024e0: POP 000024e1: POP 000024e2: POP 000024e3: POP 000024e4: JUMP 000024e5: JUMPDEST 000024e6: PUSH1 0x00 000024e8: PUSH1 0x14 000024ea: PUSH1 0x00 000024ec: DUP4 000024ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002502: AND 00002503: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002518: AND 00002519: DUP2 0000251a: MSTORE 0000251b: PUSH1 0x20 0000251d: ADD 0000251e: SWAP1 0000251f: DUP2 00002520: MSTORE 00002521: PUSH1 0x20 00002523: ADD 00002524: PUSH1 0x00 00002526: KECCAK256 00002527: SLOAD 00002528: SWAP1 00002529: POP 0000252a: SWAP2 0000252b: SWAP1 0000252c: POP 0000252d: JUMP 0000252e: JUMPDEST 0000252f: PUSH1 0x00 00002531: PUSH1 0x20 00002533: MSTORE 00002534: DUP1 00002535: PUSH1 0x00 00002537: MSTORE 00002538: PUSH1 0x40 0000253a: PUSH1 0x00 0000253c: KECCAK256 0000253d: PUSH1 0x00 0000253f: SWAP2 00002540: POP 00002541: SWAP1 00002542: POP 00002543: SLOAD 00002544: DUP2 00002545: JUMP 00002546: JUMPDEST 00002547: PUSH1 0x09 00002549: DUP2 0000254a: JUMP 0000254b: JUMPDEST 0000254c: PUSH1 0x01 0000254e: PUSH1 0x14 00002550: SWAP1 00002551: SLOAD 00002552: SWAP1 00002553: PUSH2 0x0100 00002556: EXP 00002557: SWAP1 00002558: DIV 00002559: PUSH1 0xff 0000255b: AND 0000255c: DUP2 0000255d: JUMP 0000255e: JUMPDEST 0000255f: PUSH1 0x40 00002561: DUP1 00002562: MLOAD 00002563: SWAP1 00002564: DUP2 00002565: ADD 00002566: PUSH1 0x40 00002568: MSTORE 00002569: DUP1 0000256a: PUSH1 0x0d 0000256c: DUP2 0000256d: MSTORE 0000256e: PUSH1 0x20 00002570: ADD 00002571: PUSH32 0x636f696e4d61726b657443617000000000000000000000000000000000000000 00002592: DUP2 00002593: MSTORE 00002594: POP 00002595: DUP2 00002596: JUMP 00002597: JUMPDEST 00002598: PUSH1 0x00 0000259a: DUP1 0000259b: PUSH1 0x00 0000259d: DUP4 0000259e: DUP2 0000259f: MSTORE 000025a0: PUSH1 0x20 000025a2: ADD 000025a3: SWAP1 000025a4: DUP2 000025a5: MSTORE 000025a6: PUSH1 0x20 000025a8: ADD 000025a9: PUSH1 0x00 000025ab: KECCAK256 000025ac: SLOAD 000025ad: SWAP1 000025ae: POP 000025af: SWAP2 000025b0: SWAP1 000025b1: POP 000025b2: JUMP 000025b3: JUMPDEST 000025b4: PUSH1 0x00 000025b6: DUP1 000025b7: PUSH1 0x60 000025b9: PUSH1 0x00 000025bb: DUP1 000025bc: PUSH1 0x00 000025be: DUP1 000025bf: DUP9 000025c0: SWAP5 000025c1: POP 000025c2: PUSH1 0x0c 000025c4: DUP6 000025c5: MLOAD 000025c6: GT 000025c7: ISZERO 000025c8: ISZERO 000025c9: ISZERO 000025ca: PUSH2 0x25cf 000025cd: JUMPI 000025ce: INVALID 000025cf: JUMPDEST 000025d0: PUSH1 0x00 000025d2: SWAP4 000025d3: POP 000025d4: DUP8 000025d5: SWAP3 000025d6: POP 000025d7: PUSH1 0x00 000025d9: SWAP2 000025da: POP 000025db: PUSH1 0x00 000025dd: SWAP1 000025de: POP 000025df: JUMPDEST 000025e0: DUP5 000025e1: MLOAD 000025e2: DUP2 000025e3: LT 000025e4: ISZERO 000025e5: PUSH2 0x2973 000025e8: JUMPI 000025e9: PUSH1 0x22 000025eb: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 0000260c: MUL 0000260d: DUP6 0000260e: DUP3 0000260f: DUP2 00002610: MLOAD 00002611: DUP2 00002612: LT 00002613: ISZERO 00002614: ISZERO 00002615: PUSH2 0x261a 00002618: JUMPI 00002619: INVALID 0000261a: JUMPDEST 0000261b: SWAP1 0000261c: PUSH1 0x20 0000261e: ADD 0000261f: ADD 00002620: MLOAD 00002621: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00002642: SWAP1 00002643: DIV 00002644: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00002665: MUL 00002666: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002686: NOT 00002687: AND 00002688: EQ 00002689: ISZERO 0000268a: PUSH2 0x2692 0000268d: JUMPI 0000268e: PUSH2 0x2966 00002691: JUMP 00002692: JUMPDEST 00002693: PUSH1 0x2e 00002695: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 000026b6: MUL 000026b7: DUP6 000026b8: DUP3 000026b9: DUP2 000026ba: MLOAD 000026bb: DUP2 000026bc: LT 000026bd: ISZERO 000026be: ISZERO 000026bf: PUSH2 0x26c4 000026c2: JUMPI 000026c3: INVALID 000026c4: JUMPDEST 000026c5: SWAP1 000026c6: PUSH1 0x20 000026c8: ADD 000026c9: ADD 000026ca: MLOAD 000026cb: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 000026ec: SWAP1 000026ed: DIV 000026ee: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 0000270f: MUL 00002710: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002730: NOT 00002731: AND 00002732: EQ 00002733: ISZERO 00002734: PUSH2 0x2740 00002737: JUMPI 00002738: PUSH1 0x01 0000273a: SWAP2 0000273b: POP 0000273c: PUSH2 0x2965 0000273f: JUMP 00002740: JUMPDEST 00002741: PUSH1 0x30 00002743: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00002764: MUL 00002765: DUP6 00002766: DUP3 00002767: DUP2 00002768: MLOAD 00002769: DUP2 0000276a: LT 0000276b: ISZERO 0000276c: ISZERO 0000276d: PUSH2 0x2772 00002770: JUMPI 00002771: INVALID 00002772: JUMPDEST 00002773: SWAP1 00002774: PUSH1 0x20 00002776: ADD 00002777: ADD 00002778: MLOAD 00002779: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 0000279a: SWAP1 0000279b: DIV 0000279c: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 000027bd: MUL 000027be: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000027de: NOT 000027df: AND 000027e0: LT 000027e1: ISZERO 000027e2: DUP1 000027e3: ISZERO 000027e4: PUSH2 0x288a 000027e7: JUMPI 000027e8: POP 000027e9: PUSH1 0x39 000027eb: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 0000280c: MUL 0000280d: DUP6 0000280e: DUP3 0000280f: DUP2 00002810: MLOAD 00002811: DUP2 00002812: LT 00002813: ISZERO 00002814: ISZERO 00002815: PUSH2 0x281a 00002818: JUMPI 00002819: INVALID 0000281a: JUMPDEST 0000281b: SWAP1 0000281c: PUSH1 0x20 0000281e: ADD 0000281f: ADD 00002820: MLOAD 00002821: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00002842: SWAP1 00002843: DIV 00002844: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00002865: MUL 00002866: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002886: NOT 00002887: AND 00002888: GT 00002889: ISZERO 0000288a: JUMPDEST 0000288b: ISZERO 0000288c: PUSH2 0x2955 0000288f: JUMPI 00002890: PUSH2 0x2933 00002893: PUSH1 0x30 00002895: DUP7 00002896: DUP4 00002897: DUP2 00002898: MLOAD 00002899: DUP2 0000289a: LT 0000289b: ISZERO 0000289c: ISZERO 0000289d: PUSH2 0x28a2 000028a0: JUMPI 000028a1: INVALID 000028a2: JUMPDEST 000028a3: SWAP1 000028a4: PUSH1 0x20 000028a6: ADD 000028a7: ADD 000028a8: MLOAD 000028a9: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 000028ca: SWAP1 000028cb: DIV 000028cc: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 000028ed: MUL 000028ee: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 0000290f: SWAP1 00002910: DIV 00002911: SUB 00002912: PUSH2 0x2925 00002915: PUSH1 0x0a 00002917: DUP8 00002918: PUSH2 0x31e6 0000291b: SWAP1 0000291c: SWAP2 0000291d: SWAP1 0000291e: PUSH4 0xffffffff 00002923: AND 00002924: JUMP 00002925: JUMPDEST 00002926: PUSH2 0x3234 00002929: SWAP1 0000292a: SWAP2 0000292b: SWAP1 0000292c: PUSH4 0xffffffff 00002931: AND 00002932: JUMP 00002933: JUMPDEST 00002934: SWAP4 00002935: POP 00002936: DUP2 00002937: ISZERO 00002938: PUSH2 0x2942 0000293b: JUMPI 0000293c: PUSH1 0x01 0000293e: DUP4 0000293f: SUB 00002940: SWAP3 00002941: POP 00002942: JUMPDEST 00002943: PUSH1 0x00 00002945: DUP4 00002946: EQ 00002947: ISZERO 00002948: PUSH2 0x2950 0000294b: JUMPI 0000294c: PUSH2 0x2973 0000294f: JUMP 00002950: JUMPDEST 00002951: PUSH2 0x2964 00002954: JUMP 00002955: JUMPDEST 00002956: PUSH1 0x00 00002958: DUP1 00002959: DUP2 0000295a: SWAP2 0000295b: POP 0000295c: SWAP7 0000295d: POP 0000295e: SWAP7 0000295f: POP 00002960: PUSH2 0x29be 00002963: JUMP 00002964: JUMPDEST 00002965: JUMPDEST 00002966: JUMPDEST 00002967: DUP1 00002968: DUP1 00002969: PUSH1 0x01 0000296b: ADD 0000296c: SWAP2 0000296d: POP 0000296e: POP 0000296f: PUSH2 0x25df 00002972: JUMP 00002973: JUMPDEST 00002974: JUMPDEST 00002975: PUSH1 0x00 00002977: DUP4 00002978: GT 00002979: ISZERO 0000297a: PUSH2 0x299e 0000297d: JUMPI 0000297e: PUSH2 0x2991 00002981: PUSH1 0x0a 00002983: DUP6 00002984: PUSH2 0x31e6 00002987: SWAP1 00002988: SWAP2 00002989: SWAP1 0000298a: PUSH4 0xffffffff 0000298f: AND 00002990: JUMP 00002991: JUMPDEST 00002992: SWAP4 00002993: POP 00002994: PUSH1 0x01 00002996: DUP4 00002997: SUB 00002998: SWAP3 00002999: POP 0000299a: PUSH2 0x2974 0000299d: JUMP 0000299e: JUMPDEST 0000299f: PUSH1 0x00 000029a1: DUP5 000029a2: EQ 000029a3: ISZERO 000029a4: PUSH2 0x29b6 000029a7: JUMPI 000029a8: PUSH1 0x00 000029aa: DUP1 000029ab: DUP2 000029ac: SWAP2 000029ad: POP 000029ae: SWAP7 000029af: POP 000029b0: SWAP7 000029b1: POP 000029b2: PUSH2 0x29be 000029b5: JUMP 000029b6: JUMPDEST 000029b7: DUP4 000029b8: PUSH1 0x01 000029ba: SWAP7 000029bb: POP 000029bc: SWAP7 000029bd: POP 000029be: JUMPDEST 000029bf: POP 000029c0: POP 000029c1: POP 000029c2: POP 000029c3: POP 000029c4: SWAP3 000029c5: POP 000029c6: SWAP3 000029c7: SWAP1 000029c8: POP 000029c9: JUMP 000029ca: JUMPDEST 000029cb: PUSH1 0x01 000029cd: PUSH1 0x00 000029cf: SWAP1 000029d0: SLOAD 000029d1: SWAP1 000029d2: PUSH2 0x0100 000029d5: EXP 000029d6: SWAP1 000029d7: DIV 000029d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029ed: AND 000029ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a03: AND 00002a04: CALLER 00002a05: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a1a: AND 00002a1b: EQ 00002a1c: ISZERO 00002a1d: ISZERO 00002a1e: PUSH2 0x2a26 00002a21: JUMPI 00002a22: PUSH1 0x00 00002a24: DUP1 00002a25: REVERT 00002a26: JUMPDEST 00002a27: PUSH1 0x01 00002a29: PUSH1 0x00 00002a2b: SWAP1 00002a2c: SLOAD 00002a2d: SWAP1 00002a2e: PUSH2 0x0100 00002a31: EXP 00002a32: SWAP1 00002a33: DIV 00002a34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a49: AND 00002a4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a5f: AND 00002a60: PUSH32 0xf8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c64820 00002a81: PUSH1 0x40 00002a83: MLOAD 00002a84: PUSH1 0x40 00002a86: MLOAD 00002a87: DUP1 00002a88: SWAP2 00002a89: SUB 00002a8a: SWAP1 00002a8b: LOG2 00002a8c: PUSH1 0x00 00002a8e: PUSH1 0x01 00002a90: PUSH1 0x00 00002a92: PUSH2 0x0100 00002a95: EXP 00002a96: DUP2 00002a97: SLOAD 00002a98: DUP2 00002a99: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002aae: MUL 00002aaf: NOT 00002ab0: AND 00002ab1: SWAP1 00002ab2: DUP4 00002ab3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ac8: AND 00002ac9: MUL 00002aca: OR 00002acb: SWAP1 00002acc: SSTORE 00002acd: POP 00002ace: JUMP 00002acf: JUMPDEST 00002ad0: PUSH1 0x0d 00002ad2: PUSH1 0x20 00002ad4: MSTORE 00002ad5: DUP1 00002ad6: PUSH1 0x00 00002ad8: MSTORE 00002ad9: PUSH1 0x40 00002adb: PUSH1 0x00 00002add: KECCAK256 00002ade: PUSH1 0x00 00002ae0: SWAP2 00002ae1: POP 00002ae2: SWAP1 00002ae3: POP 00002ae4: SLOAD 00002ae5: DUP2 00002ae6: JUMP 00002ae7: JUMPDEST 00002ae8: PUSH1 0x01 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: CALLER 00002b22: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b37: AND 00002b38: EQ 00002b39: ISZERO 00002b3a: ISZERO 00002b3b: PUSH2 0x2b43 00002b3e: JUMPI 00002b3f: PUSH1 0x00 00002b41: DUP1 00002b42: REVERT 00002b43: JUMPDEST 00002b44: PUSH2 0x0e10 00002b47: DUP2 00002b48: LT 00002b49: ISZERO 00002b4a: ISZERO 00002b4b: ISZERO 00002b4c: PUSH2 0x2b54 00002b4f: JUMPI 00002b50: PUSH1 0x00 00002b52: DUP1 00002b53: REVERT 00002b54: JUMPDEST 00002b55: DUP1 00002b56: PUSH1 0x09 00002b58: DUP2 00002b59: SWAP1 00002b5a: SSTORE 00002b5b: POP 00002b5c: PUSH32 0x738516904b1f940ab68ca84e47f57e31aeecf3a02e4c76fd9e69d639e863e383 00002b7d: PUSH1 0x09 00002b7f: SLOAD 00002b80: PUSH1 0x40 00002b82: MLOAD 00002b83: DUP1 00002b84: DUP3 00002b85: DUP2 00002b86: MSTORE 00002b87: PUSH1 0x20 00002b89: ADD 00002b8a: SWAP2 00002b8b: POP 00002b8c: POP 00002b8d: PUSH1 0x40 00002b8f: MLOAD 00002b90: DUP1 00002b91: SWAP2 00002b92: SUB 00002b93: SWAP1 00002b94: LOG1 00002b95: POP 00002b96: JUMP 00002b97: JUMPDEST 00002b98: PUSH1 0x01 00002b9a: PUSH1 0x00 00002b9c: SWAP1 00002b9d: SLOAD 00002b9e: SWAP1 00002b9f: PUSH2 0x0100 00002ba2: EXP 00002ba3: SWAP1 00002ba4: DIV 00002ba5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002bba: AND 00002bbb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002bd0: AND 00002bd1: CALLER 00002bd2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002be7: AND 00002be8: EQ 00002be9: ISZERO 00002bea: ISZERO 00002beb: PUSH2 0x2bf3 00002bee: JUMPI 00002bef: PUSH1 0x00 00002bf1: DUP1 00002bf2: REVERT 00002bf3: JUMPDEST 00002bf4: PUSH2 0x2c32 00002bf7: DUP2 00002bf8: PUSH1 0x40 00002bfa: DUP1 00002bfb: MLOAD 00002bfc: SWAP1 00002bfd: DUP2 00002bfe: ADD 00002bff: PUSH1 0x40 00002c01: MSTORE 00002c02: DUP1 00002c03: PUSH1 0x09 00002c05: DUP2 00002c06: MSTORE 00002c07: PUSH1 0x20 00002c09: ADD 00002c0a: PUSH32 0x77686974656c6973740000000000000000000000000000000000000000000000 00002c2b: DUP2 00002c2c: MSTORE 00002c2d: POP 00002c2e: PUSH2 0x40a6 00002c31: JUMP 00002c32: JUMPDEST 00002c33: PUSH32 0xd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f 00002c54: DUP2 00002c55: PUSH1 0x40 00002c57: MLOAD 00002c58: DUP1 00002c59: DUP3 00002c5a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c6f: AND 00002c70: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c85: AND 00002c86: DUP2 00002c87: MSTORE 00002c88: PUSH1 0x20 00002c8a: ADD 00002c8b: SWAP2 00002c8c: POP 00002c8d: POP 00002c8e: PUSH1 0x40 00002c90: MLOAD 00002c91: DUP1 00002c92: SWAP2 00002c93: SUB 00002c94: SWAP1 00002c95: LOG1 00002c96: POP 00002c97: JUMP 00002c98: JUMPDEST 00002c99: PUSH1 0x01 00002c9b: PUSH1 0x00 00002c9d: SWAP1 00002c9e: SLOAD 00002c9f: SWAP1 00002ca0: PUSH2 0x0100 00002ca3: EXP 00002ca4: SWAP1 00002ca5: DIV 00002ca6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002cbb: AND 00002cbc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002cd1: AND 00002cd2: CALLER 00002cd3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ce8: AND 00002ce9: EQ 00002cea: ISZERO 00002ceb: ISZERO 00002cec: PUSH2 0x2cf4 00002cef: JUMPI 00002cf0: PUSH1 0x00 00002cf2: DUP1 00002cf3: REVERT 00002cf4: JUMPDEST 00002cf5: PUSH4 0x03c26700 00002cfa: PUSH1 0x16 00002cfc: SLOAD 00002cfd: ADD 00002cfe: TIMESTAMP 00002cff: GT 00002d00: ISZERO 00002d01: ISZERO 00002d02: PUSH2 0x2d0a 00002d05: JUMPI 00002d06: PUSH1 0x00 00002d08: DUP1 00002d09: REVERT 00002d0a: JUMPDEST 00002d0b: PUSH1 0x01 00002d0d: PUSH1 0x00 00002d0f: SWAP1 00002d10: SLOAD 00002d11: SWAP1 00002d12: PUSH2 0x0100 00002d15: EXP 00002d16: SWAP1 00002d17: DIV 00002d18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d2d: AND 00002d2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d43: AND 00002d44: SELFDESTRUCT 00002d45: JUMPDEST 00002d46: PUSH7 0x0221b37112b555 00002d4e: DUP2 00002d4f: JUMP 00002d50: JUMPDEST 00002d51: PUSH1 0x01 00002d53: PUSH1 0x00 00002d55: SWAP1 00002d56: SLOAD 00002d57: SWAP1 00002d58: PUSH2 0x0100 00002d5b: EXP 00002d5c: SWAP1 00002d5d: DIV 00002d5e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d73: AND 00002d74: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d89: AND 00002d8a: CALLER 00002d8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002da0: AND 00002da1: EQ 00002da2: ISZERO 00002da3: ISZERO 00002da4: PUSH2 0x2dac 00002da7: JUMPI 00002da8: PUSH1 0x00 00002daa: DUP1 00002dab: REVERT 00002dac: JUMPDEST 00002dad: PUSH1 0x01 00002daf: PUSH1 0x14 00002db1: SWAP1 00002db2: SLOAD 00002db3: SWAP1 00002db4: PUSH2 0x0100 00002db7: EXP 00002db8: SWAP1 00002db9: DIV 00002dba: PUSH1 0xff 00002dbc: AND 00002dbd: ISZERO 00002dbe: ISZERO 00002dbf: ISZERO 00002dc0: PUSH2 0x2dc8 00002dc3: JUMPI 00002dc4: PUSH1 0x00 00002dc6: DUP1 00002dc7: REVERT 00002dc8: JUMPDEST 00002dc9: PUSH1 0x01 00002dcb: DUP1 00002dcc: PUSH1 0x14 00002dce: PUSH2 0x0100 00002dd1: EXP 00002dd2: DUP2 00002dd3: SLOAD 00002dd4: DUP2 00002dd5: PUSH1 0xff 00002dd7: MUL 00002dd8: NOT 00002dd9: AND 00002dda: SWAP1 00002ddb: DUP4 00002ddc: ISZERO 00002ddd: ISZERO 00002dde: MUL 00002ddf: OR 00002de0: SWAP1 00002de1: SSTORE 00002de2: POP 00002de3: PUSH32 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625 00002e04: PUSH1 0x40 00002e06: MLOAD 00002e07: PUSH1 0x40 00002e09: MLOAD 00002e0a: DUP1 00002e0b: SWAP2 00002e0c: SUB 00002e0d: SWAP1 00002e0e: LOG1 00002e0f: JUMP 00002e10: JUMPDEST 00002e11: PUSH1 0x00 00002e13: PUSH1 0x11 00002e15: PUSH1 0x00 00002e17: PUSH1 0x01 00002e19: DUP2 00002e1a: MSTORE 00002e1b: PUSH1 0x20 00002e1d: ADD 00002e1e: SWAP1 00002e1f: DUP2 00002e20: MSTORE 00002e21: PUSH1 0x20 00002e23: ADD 00002e24: PUSH1 0x00 00002e26: KECCAK256 00002e27: PUSH1 0x00 00002e29: ADD 00002e2a: SLOAD 00002e2b: PUSH1 0x13 00002e2d: SLOAD 00002e2e: LT 00002e2f: ISZERO 00002e30: PUSH2 0x2e3c 00002e33: JUMPI 00002e34: PUSH1 0x01 00002e36: SWAP1 00002e37: POP 00002e38: PUSH2 0x2e6b 00002e3b: JUMP 00002e3c: JUMPDEST 00002e3d: PUSH1 0x11 00002e3f: PUSH1 0x00 00002e41: PUSH1 0x02 00002e43: DUP2 00002e44: MSTORE 00002e45: PUSH1 0x20 00002e47: ADD 00002e48: SWAP1 00002e49: DUP2 00002e4a: MSTORE 00002e4b: PUSH1 0x20 00002e4d: ADD 00002e4e: PUSH1 0x00 00002e50: KECCAK256 00002e51: PUSH1 0x00 00002e53: ADD 00002e54: SLOAD 00002e55: PUSH1 0x13 00002e57: SLOAD 00002e58: LT 00002e59: ISZERO 00002e5a: PUSH2 0x2e66 00002e5d: JUMPI 00002e5e: PUSH1 0x02 00002e60: SWAP1 00002e61: POP 00002e62: PUSH2 0x2e6b 00002e65: JUMP 00002e66: JUMPDEST 00002e67: PUSH1 0x03 00002e69: SWAP1 00002e6a: POP 00002e6b: JUMPDEST 00002e6c: SWAP1 00002e6d: JUMP 00002e6e: JUMPDEST 00002e6f: PUSH1 0x01 00002e71: PUSH1 0x00 00002e73: SWAP1 00002e74: SLOAD 00002e75: SWAP1 00002e76: PUSH2 0x0100 00002e79: EXP 00002e7a: SWAP1 00002e7b: DIV 00002e7c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e91: AND 00002e92: DUP2 00002e93: JUMP 00002e94: JUMPDEST 00002e95: PUSH1 0x01 00002e97: PUSH1 0x00 00002e99: SWAP1 00002e9a: SLOAD 00002e9b: SWAP1 00002e9c: PUSH2 0x0100 00002e9f: EXP 00002ea0: SWAP1 00002ea1: DIV 00002ea2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002eb7: AND 00002eb8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ecd: AND 00002ece: CALLER 00002ecf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ee4: AND 00002ee5: EQ 00002ee6: ISZERO 00002ee7: ISZERO 00002ee8: PUSH2 0x2ef0 00002eeb: JUMPI 00002eec: PUSH1 0x00 00002eee: DUP1 00002eef: REVERT 00002ef0: JUMPDEST 00002ef1: DUP1 00002ef2: PUSH1 0x0a 00002ef4: DUP2 00002ef5: SWAP1 00002ef6: SSTORE 00002ef7: POP 00002ef8: POP 00002ef9: JUMP 00002efa: JUMPDEST 00002efb: PUSH1 0x00 00002efd: PUSH2 0x2f3b 00002f00: DUP3 00002f01: PUSH1 0x40 00002f03: DUP1 00002f04: MLOAD 00002f05: SWAP1 00002f06: DUP2 00002f07: ADD 00002f08: PUSH1 0x40 00002f0a: MSTORE 00002f0b: DUP1 00002f0c: PUSH1 0x09 00002f0e: DUP2 00002f0f: MSTORE 00002f10: PUSH1 0x20 00002f12: ADD 00002f13: PUSH32 0x77686974656c6973740000000000000000000000000000000000000000000000 00002f34: DUP2 00002f35: MSTORE 00002f36: POP 00002f37: PUSH2 0x1c2b 00002f3a: JUMP 00002f3b: JUMPDEST 00002f3c: SWAP1 00002f3d: POP 00002f3e: SWAP2 00002f3f: SWAP1 00002f40: POP 00002f41: JUMP 00002f42: JUMPDEST 00002f43: PUSH1 0x14 00002f45: PUSH1 0x20 00002f47: MSTORE 00002f48: DUP1 00002f49: PUSH1 0x00 00002f4b: MSTORE 00002f4c: PUSH1 0x40 00002f4e: PUSH1 0x00 00002f50: KECCAK256 00002f51: PUSH1 0x00 00002f53: SWAP2 00002f54: POP 00002f55: SWAP1 00002f56: POP 00002f57: SLOAD 00002f58: DUP2 00002f59: JUMP 00002f5a: JUMPDEST 00002f5b: JUMP 00002f5c: JUMPDEST 00002f5d: PUSH1 0x11 00002f5f: PUSH1 0x20 00002f61: MSTORE 00002f62: DUP1 00002f63: PUSH1 0x00 00002f65: MSTORE 00002f66: PUSH1 0x40 00002f68: PUSH1 0x00 00002f6a: KECCAK256 00002f6b: PUSH1 0x00 00002f6d: SWAP2 00002f6e: POP 00002f6f: SWAP1 00002f70: POP 00002f71: DUP1 00002f72: PUSH1 0x00 00002f74: ADD 00002f75: SLOAD 00002f76: SWAP1 00002f77: DUP1 00002f78: PUSH1 0x01 00002f7a: ADD 00002f7b: SLOAD 00002f7c: SWAP1 00002f7d: POP 00002f7e: DUP3 00002f7f: JUMP 00002f80: JUMPDEST 00002f81: PUSH1 0x00 00002f83: PUSH2 0x2f9b 00002f86: PUSH4 0x3b9aca00 00002f8b: PUSH1 0x13 00002f8d: SLOAD 00002f8e: PUSH2 0x321e 00002f91: SWAP1 00002f92: SWAP2 00002f93: SWAP1 00002f94: PUSH4 0xffffffff 00002f99: AND 00002f9a: JUMP 00002f9b: JUMPDEST 00002f9c: SWAP1 00002f9d: POP 00002f9e: SWAP1 00002f9f: JUMP 00002fa0: JUMPDEST 00002fa1: PUSH1 0x00 00002fa3: PUSH4 0x3b9aca00 00002fa8: PUSH2 0x2fb0 00002fab: DUP4 00002fac: PUSH2 0x2597 00002faf: JUMP 00002fb0: JUMPDEST 00002fb1: DUP2 00002fb2: ISZERO 00002fb3: ISZERO 00002fb4: PUSH2 0x2fb9 00002fb7: JUMPI 00002fb8: INVALID 00002fb9: JUMPDEST 00002fba: DIV 00002fbb: SWAP1 00002fbc: POP 00002fbd: SWAP2 00002fbe: SWAP1 00002fbf: POP 00002fc0: JUMP 00002fc1: JUMPDEST 00002fc2: PUSH1 0x00 00002fc4: DUP1 00002fc5: DUP3 00002fc6: GT 00002fc7: DUP1 00002fc8: ISZERO 00002fc9: PUSH2 0x2fda 00002fcc: JUMPI 00002fcd: POP 00002fce: PUSH2 0x2fd6 00002fd1: CALLER 00002fd2: PUSH2 0x24e5 00002fd5: JUMP 00002fd6: JUMPDEST 00002fd7: DUP3 00002fd8: GT 00002fd9: ISZERO 00002fda: JUMPDEST 00002fdb: ISZERO 00002fdc: ISZERO 00002fdd: PUSH2 0x2fe5 00002fe0: JUMPI 00002fe1: PUSH1 0x00 00002fe3: DUP1 00002fe4: REVERT 00002fe5: JUMPDEST 00002fe6: PUSH2 0x3000 00002fe9: DUP3 00002fea: PUSH2 0x2ff2 00002fed: CALLER 00002fee: PUSH2 0x24e5 00002ff1: JUMP 00002ff2: JUMPDEST 00002ff3: PUSH2 0x3250 00002ff6: SWAP1 00002ff7: SWAP2 00002ff8: SWAP1 00002ff9: PUSH4 0xffffffff 00002ffe: AND 00002fff: JUMP 00003000: JUMPDEST 00003001: PUSH1 0x14 00003003: PUSH1 0x00 00003005: CALLER 00003006: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000301b: AND 0000301c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003031: AND 00003032: DUP2 00003033: MSTORE 00003034: PUSH1 0x20 00003036: ADD 00003037: SWAP1 00003038: DUP2 00003039: MSTORE 0000303a: PUSH1 0x20 0000303c: ADD 0000303d: PUSH1 0x00 0000303f: KECCAK256 00003040: DUP2 00003041: SWAP1 00003042: SSTORE 00003043: POP 00003044: PUSH2 0x3058 00003047: DUP3 00003048: PUSH1 0x15 0000304a: SLOAD 0000304b: PUSH2 0x3250 0000304e: SWAP1 0000304f: SWAP2 00003050: SWAP1 00003051: PUSH4 0xffffffff 00003056: AND 00003057: JUMP 00003058: JUMPDEST 00003059: PUSH1 0x15 0000305b: DUP2 0000305c: SWAP1 0000305d: SSTORE 0000305e: POP 0000305f: CALLER 00003060: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003075: AND 00003076: PUSH2 0x08fc 00003079: DUP4 0000307a: SWAP1 0000307b: DUP2 0000307c: ISZERO 0000307d: MUL 0000307e: SWAP1 0000307f: PUSH1 0x40 00003081: MLOAD 00003082: PUSH1 0x00 00003084: PUSH1 0x40 00003086: MLOAD 00003087: DUP1 00003088: DUP4 00003089: SUB 0000308a: DUP2 0000308b: DUP6 0000308c: DUP9 0000308d: DUP9 0000308e: CALL 0000308f: SWAP4 00003090: POP 00003091: POP 00003092: POP 00003093: POP 00003094: ISZERO 00003095: ISZERO 00003096: PUSH2 0x309e 00003099: JUMPI 0000309a: PUSH1 0x00 0000309c: DUP1 0000309d: REVERT 0000309e: JUMPDEST 0000309f: PUSH1 0x01 000030a1: SWAP1 000030a2: POP 000030a3: SWAP2 000030a4: SWAP1 000030a5: POP 000030a6: JUMP 000030a7: JUMPDEST 000030a8: PUSH1 0x00 000030aa: PUSH1 0x01 000030ac: PUSH1 0x00 000030ae: SWAP1 000030af: SLOAD 000030b0: SWAP1 000030b1: PUSH2 0x0100 000030b4: EXP 000030b5: SWAP1 000030b6: DIV 000030b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000030cc: AND 000030cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000030e2: AND 000030e3: CALLER 000030e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000030f9: AND 000030fa: EQ 000030fb: ISZERO 000030fc: ISZERO 000030fd: PUSH2 0x3105 00003100: JUMPI 00003101: PUSH1 0x00 00003103: DUP1 00003104: REVERT 00003105: JUMPDEST 00003106: PUSH1 0x00 00003108: SWAP1 00003109: POP 0000310a: JUMPDEST 0000310b: DUP2 0000310c: MLOAD 0000310d: DUP2 0000310e: LT 0000310f: ISZERO 00003110: PUSH2 0x3140 00003113: JUMPI 00003114: PUSH2 0x3133 00003117: DUP3 00003118: DUP3 00003119: DUP2 0000311a: MLOAD 0000311b: DUP2 0000311c: LT 0000311d: ISZERO 0000311e: ISZERO 0000311f: PUSH2 0x3124 00003122: JUMPI 00003123: INVALID 00003124: JUMPDEST 00003125: SWAP1 00003126: PUSH1 0x20 00003128: ADD 00003129: SWAP1 0000312a: PUSH1 0x20 0000312c: MUL 0000312d: ADD 0000312e: MLOAD 0000312f: PUSH2 0x2b97 00003132: JUMP 00003133: JUMPDEST 00003134: DUP1 00003135: DUP1 00003136: PUSH1 0x01 00003138: ADD 00003139: SWAP2 0000313a: POP 0000313b: POP 0000313c: PUSH2 0x310a 0000313f: JUMP 00003140: JUMPDEST 00003141: POP 00003142: POP 00003143: JUMP 00003144: JUMPDEST 00003145: PUSH1 0x13 00003147: SLOAD 00003148: DUP2 00003149: JUMP 0000314a: JUMPDEST 0000314b: PUSH1 0x0c 0000314d: SLOAD 0000314e: DUP2 0000314f: JUMP 00003150: JUMPDEST 00003151: PUSH1 0x01 00003153: PUSH1 0x00 00003155: SWAP1 00003156: SLOAD 00003157: SWAP1 00003158: PUSH2 0x0100 0000315b: EXP 0000315c: SWAP1 0000315d: DIV 0000315e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003173: AND 00003174: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003189: AND 0000318a: CALLER 0000318b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000031a0: AND 000031a1: EQ 000031a2: ISZERO 000031a3: ISZERO 000031a4: PUSH2 0x31ac 000031a7: JUMPI 000031a8: PUSH1 0x00 000031aa: DUP1 000031ab: REVERT 000031ac: JUMPDEST 000031ad: PUSH2 0x31b5 000031b0: DUP2 000031b1: PUSH2 0x41f7 000031b4: JUMP 000031b5: JUMPDEST 000031b6: POP 000031b7: JUMP 000031b8: JUMPDEST 000031b9: PUSH4 0x3b9aca00 000031be: DUP2 000031bf: JUMP 000031c0: JUMPDEST 000031c1: PUSH1 0x0e 000031c3: PUSH1 0x00 000031c5: SWAP1 000031c6: SLOAD 000031c7: SWAP1 000031c8: PUSH2 0x0100 000031cb: EXP 000031cc: SWAP1 000031cd: DIV 000031ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000031e3: AND 000031e4: DUP2 000031e5: JUMP 000031e6: JUMPDEST 000031e7: PUSH1 0x00 000031e9: DUP1 000031ea: DUP4 000031eb: EQ 000031ec: ISZERO 000031ed: PUSH2 0x31f9 000031f0: JUMPI 000031f1: PUSH1 0x00 000031f3: SWAP1 000031f4: POP 000031f5: PUSH2 0x3218 000031f8: JUMP 000031f9: JUMPDEST 000031fa: DUP2 000031fb: DUP4 000031fc: MUL 000031fd: SWAP1 000031fe: POP 000031ff: DUP2 00003200: DUP4 00003201: DUP3 00003202: DUP2 00003203: ISZERO 00003204: ISZERO 00003205: PUSH2 0x320a 00003208: JUMPI 00003209: INVALID 0000320a: JUMPDEST 0000320b: DIV 0000320c: EQ 0000320d: ISZERO 0000320e: ISZERO 0000320f: PUSH2 0x3214 00003212: JUMPI 00003213: INVALID 00003214: JUMPDEST 00003215: DUP1 00003216: SWAP1 00003217: POP 00003218: JUMPDEST 00003219: SWAP3 0000321a: SWAP2 0000321b: POP 0000321c: POP 0000321d: JUMP 0000321e: JUMPDEST 0000321f: PUSH1 0x00 00003221: DUP2 00003222: DUP4 00003223: DUP2 00003224: ISZERO 00003225: ISZERO 00003226: PUSH2 0x322b 00003229: JUMPI 0000322a: INVALID 0000322b: JUMPDEST 0000322c: DIV 0000322d: SWAP1 0000322e: POP 0000322f: SWAP3 00003230: SWAP2 00003231: POP 00003232: POP 00003233: JUMP 00003234: JUMPDEST 00003235: PUSH1 0x00 00003237: DUP2 00003238: DUP4 00003239: ADD 0000323a: SWAP1 0000323b: POP 0000323c: DUP3 0000323d: DUP2 0000323e: LT 0000323f: ISZERO 00003240: ISZERO 00003241: ISZERO 00003242: PUSH2 0x3247 00003245: JUMPI 00003246: INVALID 00003247: JUMPDEST 00003248: DUP1 00003249: SWAP1 0000324a: POP 0000324b: SWAP3 0000324c: SWAP2 0000324d: POP 0000324e: POP 0000324f: JUMP 00003250: JUMPDEST 00003251: PUSH1 0x00 00003253: DUP3 00003254: DUP3 00003255: GT 00003256: ISZERO 00003257: ISZERO 00003258: ISZERO 00003259: PUSH2 0x325e 0000325c: JUMPI 0000325d: INVALID 0000325e: JUMPDEST 0000325f: DUP2 00003260: DUP4 00003261: SUB 00003262: SWAP1 00003263: POP 00003264: SWAP3 00003265: SWAP2 00003266: POP 00003267: POP 00003268: JUMP 00003269: JUMPDEST 0000326a: PUSH2 0x3273 0000326d: DUP3 0000326e: DUP3 0000326f: PUSH2 0x37cf 00003272: JUMP 00003273: JUMPDEST 00003274: ISZERO 00003275: ISZERO 00003276: PUSH2 0x327e 00003279: JUMPI 0000327a: PUSH1 0x00 0000327c: DUP1 0000327d: REVERT 0000327e: JUMPDEST 0000327f: POP 00003280: POP 00003281: JUMP 00003282: JUMPDEST 00003283: DUP1 00003284: PUSH1 0x0b 00003286: SWAP1 00003287: DUP1 00003288: MLOAD 00003289: SWAP1 0000328a: PUSH1 0x20 0000328c: ADD 0000328d: SWAP1 0000328e: PUSH2 0x3298 00003291: SWAP3 00003292: SWAP2 00003293: SWAP1 00003294: PUSH2 0x57c0 00003297: JUMP 00003298: JUMPDEST 00003299: POP 0000329a: TIMESTAMP 0000329b: PUSH1 0x0c 0000329d: DUP2 0000329e: SWAP1 0000329f: SSTORE 000032a0: POP 000032a1: PUSH32 0xab91f43e7561597fdd3c15c687f3d901be803beef4b59db4d39350523ffe80a3 000032c2: DUP2 000032c3: TIMESTAMP 000032c4: PUSH1 0x40 000032c6: MLOAD 000032c7: DUP1 000032c8: DUP1 000032c9: PUSH1 0x20 000032cb: ADD 000032cc: DUP4 000032cd: DUP2 000032ce: MSTORE 000032cf: PUSH1 0x20 000032d1: ADD 000032d2: DUP3 000032d3: DUP2 000032d4: SUB 000032d5: DUP3 000032d6: MSTORE 000032d7: DUP5 000032d8: DUP2 000032d9: DUP2 000032da: MLOAD 000032db: DUP2 000032dc: MSTORE 000032dd: PUSH1 0x20 000032df: ADD 000032e0: SWAP2 000032e1: POP 000032e2: DUP1 000032e3: MLOAD 000032e4: SWAP1 000032e5: PUSH1 0x20 000032e7: ADD 000032e8: SWAP1 000032e9: DUP1 000032ea: DUP4 000032eb: DUP4 000032ec: PUSH1 0x00 000032ee: JUMPDEST 000032ef: DUP4 000032f0: DUP2 000032f1: LT 000032f2: ISZERO 000032f3: PUSH2 0x3309 000032f6: JUMPI 000032f7: DUP1 000032f8: DUP3 000032f9: ADD 000032fa: MLOAD 000032fb: DUP2 000032fc: DUP5 000032fd: ADD 000032fe: MSTORE 000032ff: PUSH1 0x20 00003301: DUP2 00003302: ADD 00003303: SWAP1 00003304: POP 00003305: PUSH2 0x32ee 00003308: JUMP 00003309: JUMPDEST 0000330a: POP 0000330b: POP 0000330c: POP 0000330d: POP 0000330e: SWAP1 0000330f: POP 00003310: SWAP1 00003311: DUP2 00003312: ADD 00003313: SWAP1 00003314: PUSH1 0x1f 00003316: AND 00003317: DUP1 00003318: ISZERO 00003319: PUSH2 0x3336 0000331c: JUMPI 0000331d: DUP1 0000331e: DUP3 0000331f: SUB 00003320: DUP1 00003321: MLOAD 00003322: PUSH1 0x01 00003324: DUP4 00003325: PUSH1 0x20 00003327: SUB 00003328: PUSH2 0x0100 0000332b: EXP 0000332c: SUB 0000332d: NOT 0000332e: AND 0000332f: DUP2 00003330: MSTORE 00003331: PUSH1 0x20 00003333: ADD 00003334: SWAP2 00003335: POP 00003336: JUMPDEST 00003337: POP 00003338: SWAP4 00003339: POP 0000333a: POP 0000333b: POP 0000333c: POP 0000333d: PUSH1 0x40 0000333f: MLOAD 00003340: DUP1 00003341: SWAP2 00003342: SUB 00003343: SWAP1 00003344: LOG1 00003345: POP 00003346: JUMP 00003347: JUMPDEST 00003348: PUSH1 0x00 0000334a: DUP1 0000334b: PUSH2 0x3376 0000334e: PUSH1 0x15 00003350: SLOAD 00003351: ADDRESS 00003352: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003367: AND 00003368: BALANCE 00003369: PUSH2 0x3250 0000336c: SWAP1 0000336d: SWAP2 0000336e: SWAP1 0000336f: PUSH4 0xffffffff 00003374: AND 00003375: JUMP 00003376: JUMPDEST 00003377: SWAP2 00003378: POP 00003379: DUP2 0000337a: PUSH2 0x33ba 0000337d: PUSH1 0x40 0000337f: DUP1 00003380: MLOAD 00003381: SWAP1 00003382: DUP2 00003383: ADD 00003384: PUSH1 0x40 00003386: MSTORE 00003387: DUP1 00003388: PUSH1 0x03 0000338a: DUP2 0000338b: MSTORE 0000338c: PUSH1 0x20 0000338e: ADD 0000338f: PUSH32 0x55524c0000000000000000000000000000000000000000000000000000000000 000033b0: DUP2 000033b1: MSTORE 000033b2: POP 000033b3: PUSH1 0x0a 000033b5: SLOAD 000033b6: PUSH2 0x42f3 000033b9: JUMP 000033ba: JUMPDEST 000033bb: GT 000033bc: ISZERO 000033bd: PUSH2 0x34f7 000033c0: JUMPI 000033c1: PUSH32 0xb4af787a962f4415b8b778d908c974b7edc4892030d56a66b7b17d39a521dced 000033e2: PUSH1 0x0b 000033e4: PUSH1 0x40 000033e6: MLOAD 000033e7: DUP1 000033e8: DUP1 000033e9: PUSH1 0x20 000033eb: ADD 000033ec: DUP1 000033ed: PUSH1 0x20 000033ef: ADD 000033f0: DUP4 000033f1: DUP2 000033f2: SUB 000033f3: DUP4 000033f4: MSTORE 000033f5: DUP5 000033f6: DUP2 000033f7: DUP2 000033f8: SLOAD 000033f9: PUSH1 0x01 000033fb: DUP2 000033fc: PUSH1 0x01 000033fe: AND 000033ff: ISZERO 00003400: PUSH2 0x0100 00003403: MUL 00003404: SUB 00003405: AND 00003406: PUSH1 0x02 00003408: SWAP1 00003409: DIV 0000340a: DUP2 0000340b: MSTORE 0000340c: PUSH1 0x20 0000340e: ADD 0000340f: SWAP2 00003410: POP 00003411: DUP1 00003412: SLOAD 00003413: PUSH1 0x01 00003415: DUP2 00003416: PUSH1 0x01 00003418: AND 00003419: ISZERO 0000341a: PUSH2 0x0100 0000341d: MUL 0000341e: SUB 0000341f: AND 00003420: PUSH1 0x02 00003422: SWAP1 00003423: DIV 00003424: DUP1 00003425: ISZERO 00003426: PUSH2 0x3470 00003429: JUMPI 0000342a: DUP1 0000342b: PUSH1 0x1f 0000342d: LT 0000342e: PUSH2 0x3445 00003431: JUMPI 00003432: PUSH2 0x0100 00003435: DUP1 00003436: DUP4 00003437: SLOAD 00003438: DIV 00003439: MUL 0000343a: DUP4 0000343b: MSTORE 0000343c: SWAP2 0000343d: PUSH1 0x20 0000343f: ADD 00003440: SWAP2 00003441: PUSH2 0x3470 00003444: JUMP 00003445: JUMPDEST 00003446: DUP3 00003447: ADD 00003448: SWAP2 00003449: SWAP1 0000344a: PUSH1 0x00 0000344c: MSTORE 0000344d: PUSH1 0x20 0000344f: PUSH1 0x00 00003451: KECCAK256 00003452: SWAP1 00003453: JUMPDEST 00003454: DUP2 00003455: SLOAD 00003456: DUP2 00003457: MSTORE 00003458: SWAP1 00003459: PUSH1 0x01 0000345b: ADD 0000345c: SWAP1 0000345d: PUSH1 0x20 0000345f: ADD 00003460: DUP1 00003461: DUP4 00003462: GT 00003463: PUSH2 0x3453 00003466: JUMPI 00003467: DUP3 00003468: SWAP1 00003469: SUB 0000346a: PUSH1 0x1f 0000346c: AND 0000346d: DUP3 0000346e: ADD 0000346f: SWAP2 00003470: JUMPDEST 00003471: POP 00003472: POP 00003473: DUP4 00003474: DUP2 00003475: SUB 00003476: DUP3 00003477: MSTORE 00003478: PUSH1 0x40 0000347a: DUP2 0000347b: MSTORE 0000347c: PUSH1 0x20 0000347e: ADD 0000347f: DUP1 00003480: PUSH32 0x496e73756666696369656e742066756e64732e2043616c6c20746f7055704f72 000034a1: DUP2 000034a2: MSTORE 000034a3: PUSH1 0x20 000034a5: ADD 000034a6: PUSH32 0x61636c65282920746f206164642045544820746f20636f76657220666565732e 000034c7: DUP2 000034c8: MSTORE 000034c9: POP 000034ca: PUSH1 0x40 000034cc: ADD 000034cd: SWAP4 000034ce: POP 000034cf: POP 000034d0: POP 000034d1: POP 000034d2: PUSH1 0x40 000034d4: MLOAD 000034d5: DUP1 000034d6: SWAP2 000034d7: SUB 000034d8: SWAP1 000034d9: LOG1 000034da: PUSH2 0x34f2 000034dd: PUSH1 0x20 000034df: PUSH1 0x40 000034e1: MLOAD 000034e2: SWAP1 000034e3: DUP2 000034e4: ADD 000034e5: PUSH1 0x40 000034e7: MSTORE 000034e8: DUP1 000034e9: PUSH1 0x00 000034eb: DUP2 000034ec: MSTORE 000034ed: POP 000034ee: PUSH2 0x3282 000034f1: JUMP 000034f2: JUMPDEST 000034f3: PUSH2 0x37ca 000034f6: JUMP 000034f7: JUMPDEST 000034f8: PUSH1 0x00 000034fa: DUP4 000034fb: GT 000034fc: ISZERO 000034fd: PUSH2 0x3657 00003500: JUMPI 00003501: PUSH2 0x3650 00003504: DUP4 00003505: PUSH1 0x40 00003507: DUP1 00003508: MLOAD 00003509: SWAP1 0000350a: DUP2 0000350b: ADD 0000350c: PUSH1 0x40 0000350e: MSTORE 0000350f: DUP1 00003510: PUSH1 0x03 00003512: DUP2 00003513: MSTORE 00003514: PUSH1 0x20 00003516: ADD 00003517: PUSH32 0x55524c0000000000000000000000000000000000000000000000000000000000 00003538: DUP2 00003539: MSTORE 0000353a: POP 0000353b: PUSH1 0x08 0000353d: PUSH1 0x0b 0000353f: PUSH1 0x40 00003541: MLOAD 00003542: DUP1 00003543: DUP3 00003544: DUP1 00003545: SLOAD 00003546: PUSH1 0x01 00003548: DUP2 00003549: PUSH1 0x01 0000354b: AND 0000354c: ISZERO 0000354d: PUSH2 0x0100 00003550: MUL 00003551: SUB 00003552: AND 00003553: PUSH1 0x02 00003555: SWAP1 00003556: DIV 00003557: DUP1 00003558: ISZERO 00003559: PUSH2 0x3599 0000355c: JUMPI 0000355d: DUP1 0000355e: PUSH1 0x1f 00003560: LT 00003561: PUSH2 0x3577 00003564: JUMPI 00003565: PUSH2 0x0100 00003568: DUP1 00003569: DUP4 0000356a: SLOAD 0000356b: DIV 0000356c: MUL 0000356d: DUP4 0000356e: MSTORE 0000356f: SWAP2 00003570: DUP3 00003571: ADD 00003572: SWAP2 00003573: PUSH2 0x3599 00003576: JUMP 00003577: JUMPDEST 00003578: DUP3 00003579: ADD 0000357a: SWAP2 0000357b: SWAP1 0000357c: PUSH1 0x00 0000357e: MSTORE 0000357f: PUSH1 0x20 00003581: PUSH1 0x00 00003583: KECCAK256 00003584: SWAP1 00003585: JUMPDEST 00003586: DUP2 00003587: SLOAD 00003588: DUP2 00003589: MSTORE 0000358a: SWAP1 0000358b: PUSH1 0x01 0000358d: ADD 0000358e: SWAP1 0000358f: PUSH1 0x20 00003591: ADD 00003592: DUP1 00003593: DUP4 00003594: GT 00003595: PUSH2 0x3585 00003598: JUMPI 00003599: JUMPDEST 0000359a: POP 0000359b: POP 0000359c: SWAP2 0000359d: POP 0000359e: POP 0000359f: SWAP1 000035a0: DUP2 000035a1: MSTORE 000035a2: PUSH1 0x20 000035a4: ADD 000035a5: PUSH1 0x40 000035a7: MLOAD 000035a8: DUP1 000035a9: SWAP2 000035aa: SUB 000035ab: SWAP1 000035ac: KECCAK256 000035ad: PUSH1 0x01 000035af: ADD 000035b0: DUP1 000035b1: SLOAD 000035b2: PUSH1 0x01 000035b4: DUP2 000035b5: PUSH1 0x01 000035b7: AND 000035b8: ISZERO 000035b9: PUSH2 0x0100 000035bc: MUL 000035bd: SUB 000035be: AND 000035bf: PUSH1 0x02 000035c1: SWAP1 000035c2: DIV 000035c3: DUP1 000035c4: PUSH1 0x1f 000035c6: ADD 000035c7: PUSH1 0x20 000035c9: DUP1 000035ca: SWAP2 000035cb: DIV 000035cc: MUL 000035cd: PUSH1 0x20 000035cf: ADD 000035d0: PUSH1 0x40 000035d2: MLOAD 000035d3: SWAP1 000035d4: DUP2 000035d5: ADD 000035d6: PUSH1 0x40 000035d8: MSTORE 000035d9: DUP1 000035da: SWAP3 000035db: SWAP2 000035dc: SWAP1 000035dd: DUP2 000035de: DUP2 000035df: MSTORE 000035e0: PUSH1 0x20 000035e2: ADD 000035e3: DUP3 000035e4: DUP1 000035e5: SLOAD 000035e6: PUSH1 0x01 000035e8: DUP2 000035e9: PUSH1 0x01 000035eb: AND 000035ec: ISZERO 000035ed: PUSH2 0x0100 000035f0: MUL 000035f1: SUB 000035f2: AND 000035f3: PUSH1 0x02 000035f5: SWAP1 000035f6: DIV 000035f7: DUP1 000035f8: ISZERO 000035f9: PUSH2 0x3643 000035fc: JUMPI 000035fd: DUP1 000035fe: PUSH1 0x1f 00003600: LT 00003601: PUSH2 0x3618 00003604: JUMPI 00003605: PUSH2 0x0100 00003608: DUP1 00003609: DUP4 0000360a: SLOAD 0000360b: DIV 0000360c: MUL 0000360d: DUP4 0000360e: MSTORE 0000360f: SWAP2 00003610: PUSH1 0x20 00003612: ADD 00003613: SWAP2 00003614: PUSH2 0x3643 00003617: JUMP 00003618: JUMPDEST 00003619: DUP3 0000361a: ADD 0000361b: SWAP2 0000361c: SWAP1 0000361d: PUSH1 0x00 0000361f: MSTORE 00003620: PUSH1 0x20 00003622: PUSH1 0x00 00003624: KECCAK256 00003625: SWAP1 00003626: JUMPDEST 00003627: DUP2 00003628: SLOAD 00003629: DUP2 0000362a: MSTORE 0000362b: SWAP1 0000362c: PUSH1 0x01 0000362e: ADD 0000362f: SWAP1 00003630: PUSH1 0x20 00003632: ADD 00003633: DUP1 00003634: DUP4 00003635: GT 00003636: PUSH2 0x3626 00003639: JUMPI 0000363a: DUP3 0000363b: SWAP1 0000363c: SUB 0000363d: PUSH1 0x1f 0000363f: AND 00003640: DUP3 00003641: ADD 00003642: SWAP2 00003643: JUMPDEST 00003644: POP 00003645: POP 00003646: POP 00003647: POP 00003648: POP 00003649: PUSH1 0x0a 0000364b: SLOAD 0000364c: PUSH2 0x46d0 0000364f: JUMP 00003650: JUMPDEST 00003651: SWAP1 00003652: POP 00003653: PUSH2 0x37a9 00003656: JUMP 00003657: JUMPDEST 00003658: PUSH2 0x37a6 0000365b: PUSH1 0x40 0000365d: DUP1 0000365e: MLOAD 0000365f: SWAP1 00003660: DUP2 00003661: ADD 00003662: PUSH1 0x40 00003664: MSTORE 00003665: DUP1 00003666: PUSH1 0x03 00003668: DUP2 00003669: MSTORE 0000366a: PUSH1 0x20 0000366c: ADD 0000366d: PUSH32 0x55524c0000000000000000000000000000000000000000000000000000000000 0000368e: DUP2 0000368f: MSTORE 00003690: POP 00003691: PUSH1 0x08 00003693: PUSH1 0x0b 00003695: PUSH1 0x40 00003697: MLOAD 00003698: DUP1 00003699: DUP3 0000369a: DUP1 0000369b: SLOAD 0000369c: PUSH1 0x01 0000369e: DUP2 0000369f: PUSH1 0x01 000036a1: AND 000036a2: ISZERO 000036a3: PUSH2 0x0100 000036a6: MUL 000036a7: SUB 000036a8: AND 000036a9: PUSH1 0x02 000036ab: SWAP1 000036ac: DIV 000036ad: DUP1 000036ae: ISZERO 000036af: PUSH2 0x36ef 000036b2: JUMPI 000036b3: DUP1 000036b4: PUSH1 0x1f 000036b6: LT 000036b7: PUSH2 0x36cd 000036ba: JUMPI 000036bb: PUSH2 0x0100 000036be: DUP1 000036bf: DUP4 000036c0: SLOAD 000036c1: DIV 000036c2: MUL 000036c3: DUP4 000036c4: MSTORE 000036c5: SWAP2 000036c6: DUP3 000036c7: ADD 000036c8: SWAP2 000036c9: PUSH2 0x36ef 000036cc: JUMP 000036cd: JUMPDEST 000036ce: DUP3 000036cf: ADD 000036d0: SWAP2 000036d1: SWAP1 000036d2: PUSH1 0x00 000036d4: MSTORE 000036d5: PUSH1 0x20 000036d7: PUSH1 0x00 000036d9: KECCAK256 000036da: SWAP1 000036db: JUMPDEST 000036dc: DUP2 000036dd: SLOAD 000036de: DUP2 000036df: MSTORE 000036e0: SWAP1 000036e1: PUSH1 0x01 000036e3: ADD 000036e4: SWAP1 000036e5: PUSH1 0x20 000036e7: ADD 000036e8: DUP1 000036e9: DUP4 000036ea: GT 000036eb: PUSH2 0x36db 000036ee: JUMPI 000036ef: JUMPDEST 000036f0: POP 000036f1: POP 000036f2: SWAP2 000036f3: POP 000036f4: POP 000036f5: SWAP1 000036f6: DUP2 000036f7: MSTORE 000036f8: PUSH1 0x20 000036fa: ADD 000036fb: PUSH1 0x40 000036fd: MLOAD 000036fe: DUP1 000036ff: SWAP2 00003700: SUB 00003701: SWAP1 00003702: KECCAK256 00003703: PUSH1 0x01 00003705: ADD 00003706: DUP1 00003707: SLOAD 00003708: PUSH1 0x01 0000370a: DUP2 0000370b: PUSH1 0x01 0000370d: AND 0000370e: ISZERO 0000370f: PUSH2 0x0100 00003712: MUL 00003713: SUB 00003714: AND 00003715: PUSH1 0x02 00003717: SWAP1 00003718: DIV 00003719: DUP1 0000371a: PUSH1 0x1f 0000371c: ADD 0000371d: PUSH1 0x20 0000371f: DUP1 00003720: SWAP2 00003721: DIV 00003722: MUL 00003723: PUSH1 0x20 00003725: ADD 00003726: PUSH1 0x40 00003728: MLOAD 00003729: SWAP1 0000372a: DUP2 0000372b: ADD 0000372c: PUSH1 0x40 0000372e: MSTORE 0000372f: DUP1 00003730: SWAP3 00003731: SWAP2 00003732: SWAP1 00003733: DUP2 00003734: DUP2 00003735: MSTORE 00003736: PUSH1 0x20 00003738: ADD 00003739: DUP3 0000373a: DUP1 0000373b: SLOAD 0000373c: PUSH1 0x01 0000373e: DUP2 0000373f: PUSH1 0x01 00003741: AND 00003742: ISZERO 00003743: PUSH2 0x0100 00003746: MUL 00003747: SUB 00003748: AND 00003749: PUSH1 0x02 0000374b: SWAP1 0000374c: DIV 0000374d: DUP1 0000374e: ISZERO 0000374f: PUSH2 0x3799 00003752: JUMPI 00003753: DUP1 00003754: PUSH1 0x1f 00003756: LT 00003757: PUSH2 0x376e 0000375a: JUMPI 0000375b: PUSH2 0x0100 0000375e: DUP1 0000375f: DUP4 00003760: SLOAD 00003761: DIV 00003762: MUL 00003763: DUP4 00003764: MSTORE 00003765: SWAP2 00003766: PUSH1 0x20 00003768: ADD 00003769: SWAP2 0000376a: PUSH2 0x3799 0000376d: JUMP 0000376e: JUMPDEST 0000376f: DUP3 00003770: ADD 00003771: SWAP2 00003772: SWAP1 00003773: PUSH1 0x00 00003775: MSTORE 00003776: PUSH1 0x20 00003778: PUSH1 0x00 0000377a: KECCAK256 0000377b: SWAP1 0000377c: JUMPDEST 0000377d: DUP2 0000377e: SLOAD 0000377f: DUP2 00003780: MSTORE 00003781: SWAP1 00003782: PUSH1 0x01 00003784: ADD 00003785: SWAP1 00003786: PUSH1 0x20 00003788: ADD 00003789: DUP1 0000378a: DUP4 0000378b: GT 0000378c: PUSH2 0x377c 0000378f: JUMPI 00003790: DUP3 00003791: SWAP1 00003792: SUB 00003793: PUSH1 0x1f 00003795: AND 00003796: DUP3 00003797: ADD 00003798: SWAP2 00003799: JUMPDEST 0000379a: POP 0000379b: POP 0000379c: POP 0000379d: POP 0000379e: POP 0000379f: PUSH1 0x0a 000037a1: SLOAD 000037a2: PUSH2 0x4c84 000037a5: JUMP 000037a6: JUMPDEST 000037a7: SWAP1 000037a8: POP 000037a9: JUMPDEST 000037aa: TIMESTAMP 000037ab: PUSH1 0x0d 000037ad: PUSH1 0x00 000037af: DUP4 000037b0: PUSH1 0x00 000037b2: NOT 000037b3: AND 000037b4: PUSH1 0x00 000037b6: NOT 000037b7: AND 000037b8: DUP2 000037b9: MSTORE 000037ba: PUSH1 0x20 000037bc: ADD 000037bd: SWAP1 000037be: DUP2 000037bf: MSTORE 000037c0: PUSH1 0x20 000037c2: ADD 000037c3: PUSH1 0x00 000037c5: KECCAK256 000037c6: DUP2 000037c7: SWAP1 000037c8: SSTORE 000037c9: POP 000037ca: JUMPDEST 000037cb: POP 000037cc: POP 000037cd: POP 000037ce: JUMP 000037cf: JUMPDEST 000037d0: PUSH1 0x00 000037d2: DUP3 000037d3: PUSH1 0x00 000037d5: ADD 000037d6: PUSH1 0x00 000037d8: DUP4 000037d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000037ee: AND 000037ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003804: AND 00003805: DUP2 00003806: MSTORE 00003807: PUSH1 0x20 00003809: ADD 0000380a: SWAP1 0000380b: DUP2 0000380c: MSTORE 0000380d: PUSH1 0x20 0000380f: ADD 00003810: PUSH1 0x00 00003812: KECCAK256 00003813: PUSH1 0x00 00003815: SWAP1 00003816: SLOAD 00003817: SWAP1 00003818: PUSH2 0x0100 0000381b: EXP 0000381c: SWAP1 0000381d: DIV 0000381e: PUSH1 0xff 00003820: AND 00003821: SWAP1 00003822: POP 00003823: SWAP3 00003824: SWAP2 00003825: POP 00003826: POP 00003827: JUMP 00003828: JUMPDEST 00003829: PUSH1 0x00 0000382b: PUSH1 0x0c 0000382d: SLOAD 0000382e: PUSH1 0x0d 00003830: PUSH1 0x00 00003832: DUP5 00003833: PUSH1 0x00 00003835: NOT 00003836: AND 00003837: PUSH1 0x00 00003839: NOT 0000383a: AND 0000383b: DUP2 0000383c: MSTORE 0000383d: PUSH1 0x20 0000383f: ADD 00003840: SWAP1 00003841: DUP2 00003842: MSTORE 00003843: PUSH1 0x20 00003845: ADD 00003846: PUSH1 0x00 00003848: KECCAK256 00003849: SLOAD 0000384a: LT 0000384b: ISZERO 0000384c: SWAP1 0000384d: POP 0000384e: SWAP2 0000384f: SWAP1 00003850: POP 00003851: JUMP 00003852: JUMPDEST 00003853: PUSH1 0x00 00003855: DUP1 00003856: PUSH1 0x03 00003858: PUSH1 0x00 0000385a: SWAP1 0000385b: SLOAD 0000385c: SWAP1 0000385d: PUSH2 0x0100 00003860: EXP 00003861: SWAP1 00003862: DIV 00003863: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003878: AND 00003879: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000388e: AND 0000388f: EQ 00003890: DUP1 00003891: PUSH2 0x38c4 00003894: JUMPI 00003895: POP 00003896: PUSH1 0x00 00003898: PUSH2 0x38c2 0000389b: PUSH1 0x03 0000389d: PUSH1 0x00 0000389f: SWAP1 000038a0: SLOAD 000038a1: SWAP1 000038a2: PUSH2 0x0100 000038a5: EXP 000038a6: SWAP1 000038a7: DIV 000038a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038bd: AND 000038be: PUSH2 0x5238 000038c1: JUMP 000038c2: JUMPDEST 000038c3: EQ 000038c4: JUMPDEST 000038c5: ISZERO 000038c6: PUSH2 0x38d5 000038c9: JUMPI 000038ca: PUSH2 0x38d3 000038cd: PUSH1 0x00 000038cf: PUSH2 0x5243 000038d2: JUMP 000038d3: JUMPDEST 000038d4: POP 000038d5: JUMPDEST 000038d6: PUSH1 0x03 000038d8: PUSH1 0x00 000038da: SWAP1 000038db: SLOAD 000038dc: SWAP1 000038dd: PUSH2 0x0100 000038e0: EXP 000038e1: SWAP1 000038e2: DIV 000038e3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000038f8: AND 000038f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000390e: AND 0000390f: PUSH4 0x38cc4831 00003914: PUSH1 0x40 00003916: MLOAD 00003917: DUP2 00003918: PUSH4 0xffffffff 0000391d: AND 0000391e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000393c: MUL 0000393d: DUP2 0000393e: MSTORE 0000393f: PUSH1 0x04 00003941: ADD 00003942: PUSH1 0x20 00003944: PUSH1 0x40 00003946: MLOAD 00003947: DUP1 00003948: DUP4 00003949: SUB 0000394a: DUP2 0000394b: PUSH1 0x00 0000394d: DUP8 0000394e: DUP1 0000394f: EXTCODESIZE 00003950: ISZERO 00003951: DUP1 00003952: ISZERO 00003953: PUSH2 0x395b 00003956: JUMPI 00003957: PUSH1 0x00 00003959: DUP1 0000395a: REVERT 0000395b: JUMPDEST 0000395c: POP 0000395d: GAS 0000395e: CALL 0000395f: ISZERO 00003960: DUP1 00003961: ISZERO 00003962: PUSH2 0x396f 00003965: JUMPI 00003966: RETURNDATASIZE 00003967: PUSH1 0x00 00003969: DUP1 0000396a: RETURNDATACOPY 0000396b: RETURNDATASIZE 0000396c: PUSH1 0x00 0000396e: REVERT 0000396f: JUMPDEST 00003970: POP 00003971: POP 00003972: POP 00003973: POP 00003974: PUSH1 0x40 00003976: MLOAD 00003977: RETURNDATASIZE 00003978: PUSH1 0x20 0000397a: DUP2 0000397b: LT 0000397c: ISZERO 0000397d: PUSH2 0x3985 00003980: JUMPI 00003981: PUSH1 0x00 00003983: DUP1 00003984: REVERT 00003985: JUMPDEST 00003986: DUP2 00003987: ADD 00003988: SWAP1 00003989: DUP1 0000398a: DUP1 0000398b: MLOAD 0000398c: SWAP1 0000398d: PUSH1 0x20 0000398f: ADD 00003990: SWAP1 00003991: SWAP3 00003992: SWAP2 00003993: SWAP1 00003994: POP 00003995: POP 00003996: POP 00003997: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039ac: AND 000039ad: PUSH1 0x04 000039af: PUSH1 0x00 000039b1: SWAP1 000039b2: SLOAD 000039b3: SWAP1 000039b4: PUSH2 0x0100 000039b7: EXP 000039b8: SWAP1 000039b9: DIV 000039ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039cf: AND 000039d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000039e5: AND 000039e6: EQ 000039e7: ISZERO 000039e8: ISZERO 000039e9: PUSH2 0x3aee 000039ec: JUMPI 000039ed: PUSH1 0x03 000039ef: PUSH1 0x00 000039f1: SWAP1 000039f2: SLOAD 000039f3: SWAP1 000039f4: PUSH2 0x0100 000039f7: EXP 000039f8: SWAP1 000039f9: DIV 000039fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a0f: AND 00003a10: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003a25: AND 00003a26: PUSH4 0x38cc4831 00003a2b: PUSH1 0x40 00003a2d: MLOAD 00003a2e: DUP2 00003a2f: PUSH4 0xffffffff 00003a34: AND 00003a35: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00003a53: MUL 00003a54: DUP2 00003a55: MSTORE 00003a56: PUSH1 0x04 00003a58: ADD 00003a59: PUSH1 0x20 00003a5b: PUSH1 0x40 00003a5d: MLOAD 00003a5e: DUP1 00003a5f: DUP4 00003a60: SUB 00003a61: DUP2 00003a62: PUSH1 0x00 00003a64: DUP8 00003a65: DUP1 00003a66: EXTCODESIZE 00003a67: ISZERO 00003a68: DUP1 00003a69: ISZERO 00003a6a: PUSH2 0x3a72 00003a6d: JUMPI 00003a6e: PUSH1 0x00 00003a70: DUP1 00003a71: REVERT 00003a72: JUMPDEST 00003a73: POP 00003a74: GAS 00003a75: CALL 00003a76: ISZERO 00003a77: DUP1 00003a78: ISZERO 00003a79: PUSH2 0x3a86 00003a7c: JUMPI 00003a7d: RETURNDATASIZE 00003a7e: PUSH1 0x00 00003a80: DUP1 00003a81: RETURNDATACOPY 00003a82: RETURNDATASIZE 00003a83: PUSH1 0x00 00003a85: REVERT 00003a86: JUMPDEST 00003a87: POP 00003a88: POP 00003a89: POP 00003a8a: POP 00003a8b: PUSH1 0x40 00003a8d: MLOAD 00003a8e: RETURNDATASIZE 00003a8f: PUSH1 0x20 00003a91: DUP2 00003a92: LT 00003a93: ISZERO 00003a94: PUSH2 0x3a9c 00003a97: JUMPI 00003a98: PUSH1 0x00 00003a9a: DUP1 00003a9b: REVERT 00003a9c: JUMPDEST 00003a9d: DUP2 00003a9e: ADD 00003a9f: SWAP1 00003aa0: DUP1 00003aa1: DUP1 00003aa2: MLOAD 00003aa3: SWAP1 00003aa4: PUSH1 0x20 00003aa6: ADD 00003aa7: SWAP1 00003aa8: SWAP3 00003aa9: SWAP2 00003aaa: SWAP1 00003aab: POP 00003aac: POP 00003aad: POP 00003aae: PUSH1 0x04 00003ab0: PUSH1 0x00 00003ab2: PUSH2 0x0100 00003ab5: EXP 00003ab6: DUP2 00003ab7: SLOAD 00003ab8: DUP2 00003ab9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ace: MUL 00003acf: NOT 00003ad0: AND 00003ad1: SWAP1 00003ad2: DUP4 00003ad3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ae8: AND 00003ae9: MUL 00003aea: OR 00003aeb: SWAP1 00003aec: SSTORE 00003aed: POP 00003aee: JUMPDEST 00003aef: PUSH1 0x04 00003af1: PUSH1 0x00 00003af3: SWAP1 00003af4: SLOAD 00003af5: SWAP1 00003af6: PUSH2 0x0100 00003af9: EXP 00003afa: SWAP1 00003afb: DIV 00003afc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003b11: AND 00003b12: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003b27: AND 00003b28: PUSH4 0xc281d19e 00003b2d: PUSH1 0x40 00003b2f: MLOAD 00003b30: DUP2 00003b31: PUSH4 0xffffffff 00003b36: AND 00003b37: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00003b55: MUL 00003b56: DUP2 00003b57: MSTORE 00003b58: PUSH1 0x04 00003b5a: ADD 00003b5b: PUSH1 0x20 00003b5d: PUSH1 0x40 00003b5f: MLOAD 00003b60: DUP1 00003b61: DUP4 00003b62: SUB 00003b63: DUP2 00003b64: PUSH1 0x00 00003b66: DUP8 00003b67: DUP1 00003b68: EXTCODESIZE 00003b69: ISZERO 00003b6a: DUP1 00003b6b: ISZERO 00003b6c: PUSH2 0x3b74 00003b6f: JUMPI 00003b70: PUSH1 0x00 00003b72: DUP1 00003b73: REVERT 00003b74: JUMPDEST 00003b75: POP 00003b76: GAS 00003b77: CALL 00003b78: ISZERO 00003b79: DUP1 00003b7a: ISZERO 00003b7b: PUSH2 0x3b88 00003b7e: JUMPI 00003b7f: RETURNDATASIZE 00003b80: PUSH1 0x00 00003b82: DUP1 00003b83: RETURNDATACOPY 00003b84: RETURNDATASIZE 00003b85: PUSH1 0x00 00003b87: REVERT 00003b88: JUMPDEST 00003b89: POP 00003b8a: POP 00003b8b: POP 00003b8c: POP 00003b8d: PUSH1 0x40 00003b8f: MLOAD 00003b90: RETURNDATASIZE 00003b91: PUSH1 0x20 00003b93: DUP2 00003b94: LT 00003b95: ISZERO 00003b96: PUSH2 0x3b9e 00003b99: JUMPI 00003b9a: PUSH1 0x00 00003b9c: DUP1 00003b9d: REVERT 00003b9e: JUMPDEST 00003b9f: DUP2 00003ba0: ADD 00003ba1: SWAP1 00003ba2: DUP1 00003ba3: DUP1 00003ba4: MLOAD 00003ba5: SWAP1 00003ba6: PUSH1 0x20 00003ba8: ADD 00003ba9: SWAP1 00003baa: SWAP3 00003bab: SWAP2 00003bac: SWAP1 00003bad: POP 00003bae: POP 00003baf: POP 00003bb0: SWAP1 00003bb1: POP 00003bb2: SWAP1 00003bb3: JUMP 00003bb4: JUMPDEST 00003bb5: DUP1 00003bb6: PUSH1 0x00 00003bb8: DUP1 00003bb9: DUP5 00003bba: DUP2 00003bbb: MSTORE 00003bbc: PUSH1 0x20 00003bbe: ADD 00003bbf: SWAP1 00003bc0: DUP2 00003bc1: MSTORE 00003bc2: PUSH1 0x20 00003bc4: ADD 00003bc5: PUSH1 0x00 00003bc7: KECCAK256 00003bc8: DUP2 00003bc9: SWAP1 00003bca: SSTORE 00003bcb: POP 00003bcc: PUSH32 0x381b23b82edcb5da985c284b8f2ab86e09dad5df2a68849414b99f3fcb11b513 00003bed: DUP3 00003bee: DUP3 00003bef: PUSH1 0x40 00003bf1: MLOAD 00003bf2: DUP1 00003bf3: DUP4 00003bf4: DUP2 00003bf5: MSTORE 00003bf6: PUSH1 0x20 00003bf8: ADD 00003bf9: DUP3 00003bfa: DUP2 00003bfb: MSTORE 00003bfc: PUSH1 0x20 00003bfe: ADD 00003bff: SWAP3 00003c00: POP 00003c01: POP 00003c02: POP 00003c03: PUSH1 0x40 00003c05: MLOAD 00003c06: DUP1 00003c07: SWAP2 00003c08: SUB 00003c09: SWAP1 00003c0a: LOG1 00003c0b: POP 00003c0c: POP 00003c0d: JUMP 00003c0e: JUMPDEST 00003c0f: PUSH2 0x3c8b 00003c12: DUP3 00003c13: PUSH1 0x02 00003c15: DUP4 00003c16: PUSH1 0x40 00003c18: MLOAD 00003c19: DUP1 00003c1a: DUP3 00003c1b: DUP1 00003c1c: MLOAD 00003c1d: SWAP1 00003c1e: PUSH1 0x20 00003c20: ADD 00003c21: SWAP1 00003c22: DUP1 00003c23: DUP4 00003c24: DUP4 00003c25: JUMPDEST 00003c26: PUSH1 0x20 00003c28: DUP4 00003c29: LT 00003c2a: ISZERO 00003c2b: ISZERO 00003c2c: PUSH2 0x3c4a 00003c2f: JUMPI 00003c30: DUP1 00003c31: MLOAD 00003c32: DUP3 00003c33: MSTORE 00003c34: PUSH1 0x20 00003c36: DUP3 00003c37: ADD 00003c38: SWAP2 00003c39: POP 00003c3a: PUSH1 0x20 00003c3c: DUP2 00003c3d: ADD 00003c3e: SWAP1 00003c3f: POP 00003c40: PUSH1 0x20 00003c42: DUP4 00003c43: SUB 00003c44: SWAP3 00003c45: POP 00003c46: PUSH2 0x3c25 00003c49: JUMP 00003c4a: JUMPDEST 00003c4b: PUSH1 0x01 00003c4d: DUP4 00003c4e: PUSH1 0x20 00003c50: SUB 00003c51: PUSH2 0x0100 00003c54: EXP 00003c55: SUB 00003c56: DUP1 00003c57: NOT 00003c58: DUP3 00003c59: MLOAD 00003c5a: AND 00003c5b: DUP2 00003c5c: DUP5 00003c5d: MLOAD 00003c5e: AND 00003c5f: DUP1 00003c60: DUP3 00003c61: OR 00003c62: DUP6 00003c63: MSTORE 00003c64: POP 00003c65: POP 00003c66: POP 00003c67: POP 00003c68: POP 00003c69: POP 00003c6a: SWAP1 00003c6b: POP 00003c6c: ADD 00003c6d: SWAP2 00003c6e: POP 00003c6f: POP 00003c70: SWAP1 00003c71: DUP2 00003c72: MSTORE 00003c73: PUSH1 0x20 00003c75: ADD 00003c76: PUSH1 0x40 00003c78: MLOAD 00003c79: DUP1 00003c7a: SWAP2 00003c7b: SUB 00003c7c: SWAP1 00003c7d: KECCAK256 00003c7e: PUSH2 0x5254 00003c81: SWAP1 00003c82: SWAP2 00003c83: SWAP1 00003c84: PUSH4 0xffffffff 00003c89: AND 00003c8a: JUMP 00003c8b: JUMPDEST 00003c8c: PUSH32 0xd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a 00003cad: DUP3 00003cae: DUP3 00003caf: PUSH1 0x40 00003cb1: MLOAD 00003cb2: DUP1 00003cb3: DUP4 00003cb4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cc9: AND 00003cca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003cdf: AND 00003ce0: DUP2 00003ce1: MSTORE 00003ce2: PUSH1 0x20 00003ce4: ADD 00003ce5: DUP1 00003ce6: PUSH1 0x20 00003ce8: ADD 00003ce9: DUP3 00003cea: DUP2 00003ceb: SUB 00003cec: DUP3 00003ced: MSTORE 00003cee: DUP4 00003cef: DUP2 00003cf0: DUP2 00003cf1: MLOAD 00003cf2: DUP2 00003cf3: MSTORE 00003cf4: PUSH1 0x20 00003cf6: ADD 00003cf7: SWAP2 00003cf8: POP 00003cf9: DUP1 00003cfa: MLOAD 00003cfb: SWAP1 00003cfc: PUSH1 0x20 00003cfe: ADD 00003cff: SWAP1 00003d00: DUP1 00003d01: DUP4 00003d02: DUP4 00003d03: PUSH1 0x00 00003d05: JUMPDEST 00003d06: DUP4 00003d07: DUP2 00003d08: LT 00003d09: ISZERO 00003d0a: PUSH2 0x3d20 00003d0d: JUMPI 00003d0e: DUP1 00003d0f: DUP3 00003d10: ADD 00003d11: MLOAD 00003d12: DUP2 00003d13: DUP5 00003d14: ADD 00003d15: MSTORE 00003d16: PUSH1 0x20 00003d18: DUP2 00003d19: ADD 00003d1a: SWAP1 00003d1b: POP 00003d1c: PUSH2 0x3d05 00003d1f: JUMP 00003d20: JUMPDEST 00003d21: POP 00003d22: POP 00003d23: POP 00003d24: POP 00003d25: SWAP1 00003d26: POP 00003d27: SWAP1 00003d28: DUP2 00003d29: ADD 00003d2a: SWAP1 00003d2b: PUSH1 0x1f 00003d2d: AND 00003d2e: DUP1 00003d2f: ISZERO 00003d30: PUSH2 0x3d4d 00003d33: JUMPI 00003d34: DUP1 00003d35: DUP3 00003d36: SUB 00003d37: DUP1 00003d38: MLOAD 00003d39: PUSH1 0x01 00003d3b: DUP4 00003d3c: PUSH1 0x20 00003d3e: SUB 00003d3f: PUSH2 0x0100 00003d42: EXP 00003d43: SUB 00003d44: NOT 00003d45: AND 00003d46: DUP2 00003d47: MSTORE 00003d48: PUSH1 0x20 00003d4a: ADD 00003d4b: SWAP2 00003d4c: POP 00003d4d: JUMPDEST 00003d4e: POP 00003d4f: SWAP4 00003d50: POP 00003d51: POP 00003d52: POP 00003d53: POP 00003d54: PUSH1 0x40 00003d56: MLOAD 00003d57: DUP1 00003d58: SWAP2 00003d59: SUB 00003d5a: SWAP1 00003d5b: LOG1 00003d5c: POP 00003d5d: POP 00003d5e: JUMP 00003d5f: JUMPDEST 00003d60: PUSH1 0x00 00003d62: PUSH1 0x03 00003d64: PUSH1 0x00 00003d66: SWAP1 00003d67: SLOAD 00003d68: SWAP1 00003d69: PUSH2 0x0100 00003d6c: EXP 00003d6d: SWAP1 00003d6e: DIV 00003d6f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003d84: AND 00003d85: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003d9a: AND 00003d9b: EQ 00003d9c: DUP1 00003d9d: PUSH2 0x3dd0 00003da0: JUMPI 00003da1: POP 00003da2: PUSH1 0x00 00003da4: PUSH2 0x3dce 00003da7: PUSH1 0x03 00003da9: PUSH1 0x00 00003dab: SWAP1 00003dac: SLOAD 00003dad: SWAP1 00003dae: PUSH2 0x0100 00003db1: EXP 00003db2: SWAP1 00003db3: DIV 00003db4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003dc9: AND 00003dca: PUSH2 0x5238 00003dcd: JUMP 00003dce: JUMPDEST 00003dcf: EQ 00003dd0: JUMPDEST 00003dd1: ISZERO 00003dd2: PUSH2 0x3de1 00003dd5: JUMPI 00003dd6: PUSH2 0x3ddf 00003dd9: PUSH1 0x00 00003ddb: PUSH2 0x5243 00003dde: JUMP 00003ddf: JUMPDEST 00003de0: POP 00003de1: JUMPDEST 00003de2: PUSH1 0x03 00003de4: PUSH1 0x00 00003de6: SWAP1 00003de7: SLOAD 00003de8: SWAP1 00003de9: PUSH2 0x0100 00003dec: EXP 00003ded: SWAP1 00003dee: DIV 00003def: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e04: AND 00003e05: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003e1a: AND 00003e1b: PUSH4 0x38cc4831 00003e20: PUSH1 0x40 00003e22: MLOAD 00003e23: DUP2 00003e24: PUSH4 0xffffffff 00003e29: AND 00003e2a: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00003e48: MUL 00003e49: DUP2 00003e4a: MSTORE 00003e4b: PUSH1 0x04 00003e4d: ADD 00003e4e: PUSH1 0x20 00003e50: PUSH1 0x40 00003e52: MLOAD 00003e53: DUP1 00003e54: DUP4 00003e55: SUB 00003e56: DUP2 00003e57: PUSH1 0x00 00003e59: DUP8 00003e5a: DUP1 00003e5b: EXTCODESIZE 00003e5c: ISZERO 00003e5d: DUP1 00003e5e: ISZERO 00003e5f: PUSH2 0x3e67 00003e62: JUMPI 00003e63: PUSH1 0x00 00003e65: DUP1 00003e66: REVERT 00003e67: JUMPDEST 00003e68: POP 00003e69: GAS 00003e6a: CALL 00003e6b: ISZERO 00003e6c: DUP1 00003e6d: ISZERO 00003e6e: PUSH2 0x3e7b 00003e71: JUMPI 00003e72: RETURNDATASIZE 00003e73: PUSH1 0x00 00003e75: DUP1 00003e76: RETURNDATACOPY 00003e77: RETURNDATASIZE 00003e78: PUSH1 0x00 00003e7a: REVERT 00003e7b: JUMPDEST 00003e7c: POP 00003e7d: POP 00003e7e: POP 00003e7f: POP 00003e80: PUSH1 0x40 00003e82: MLOAD 00003e83: RETURNDATASIZE 00003e84: PUSH1 0x20 00003e86: DUP2 00003e87: LT 00003e88: ISZERO 00003e89: PUSH2 0x3e91 00003e8c: JUMPI 00003e8d: PUSH1 0x00 00003e8f: DUP1 00003e90: REVERT 00003e91: JUMPDEST 00003e92: DUP2 00003e93: ADD 00003e94: SWAP1 00003e95: DUP1 00003e96: DUP1 00003e97: MLOAD 00003e98: SWAP1 00003e99: PUSH1 0x20 00003e9b: ADD 00003e9c: SWAP1 00003e9d: SWAP3 00003e9e: SWAP2 00003e9f: SWAP1 00003ea0: POP 00003ea1: POP 00003ea2: POP 00003ea3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003eb8: AND 00003eb9: PUSH1 0x04 00003ebb: PUSH1 0x00 00003ebd: SWAP1 00003ebe: SLOAD 00003ebf: SWAP1 00003ec0: PUSH2 0x0100 00003ec3: EXP 00003ec4: SWAP1 00003ec5: DIV 00003ec6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003edb: AND 00003edc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ef1: AND 00003ef2: EQ 00003ef3: ISZERO 00003ef4: ISZERO 00003ef5: PUSH2 0x3ffa 00003ef8: JUMPI 00003ef9: PUSH1 0x03 00003efb: PUSH1 0x00 00003efd: SWAP1 00003efe: SLOAD 00003eff: SWAP1 00003f00: PUSH2 0x0100 00003f03: EXP 00003f04: SWAP1 00003f05: DIV 00003f06: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003f1b: AND 00003f1c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003f31: AND 00003f32: PUSH4 0x38cc4831 00003f37: PUSH1 0x40 00003f39: MLOAD 00003f3a: DUP2 00003f3b: PUSH4 0xffffffff 00003f40: AND 00003f41: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00003f5f: MUL 00003f60: DUP2 00003f61: MSTORE 00003f62: PUSH1 0x04 00003f64: ADD 00003f65: PUSH1 0x20 00003f67: PUSH1 0x40 00003f69: MLOAD 00003f6a: DUP1 00003f6b: DUP4 00003f6c: SUB 00003f6d: DUP2 00003f6e: PUSH1 0x00 00003f70: DUP8 00003f71: DUP1 00003f72: EXTCODESIZE 00003f73: ISZERO 00003f74: DUP1 00003f75: ISZERO 00003f76: PUSH2 0x3f7e 00003f79: JUMPI 00003f7a: PUSH1 0x00 00003f7c: DUP1 00003f7d: REVERT 00003f7e: JUMPDEST 00003f7f: POP 00003f80: GAS 00003f81: CALL 00003f82: ISZERO 00003f83: DUP1 00003f84: ISZERO 00003f85: PUSH2 0x3f92 00003f88: JUMPI 00003f89: RETURNDATASIZE 00003f8a: PUSH1 0x00 00003f8c: DUP1 00003f8d: RETURNDATACOPY 00003f8e: RETURNDATASIZE 00003f8f: PUSH1 0x00 00003f91: REVERT 00003f92: JUMPDEST 00003f93: POP 00003f94: POP 00003f95: POP 00003f96: POP 00003f97: PUSH1 0x40 00003f99: MLOAD 00003f9a: RETURNDATASIZE 00003f9b: PUSH1 0x20 00003f9d: DUP2 00003f9e: LT 00003f9f: ISZERO 00003fa0: PUSH2 0x3fa8 00003fa3: JUMPI 00003fa4: PUSH1 0x00 00003fa6: DUP1 00003fa7: REVERT 00003fa8: JUMPDEST 00003fa9: DUP2 00003faa: ADD 00003fab: SWAP1 00003fac: DUP1 00003fad: DUP1 00003fae: MLOAD 00003faf: SWAP1 00003fb0: PUSH1 0x20 00003fb2: ADD 00003fb3: SWAP1 00003fb4: SWAP3 00003fb5: SWAP2 00003fb6: SWAP1 00003fb7: POP 00003fb8: POP 00003fb9: POP 00003fba: PUSH1 0x04 00003fbc: PUSH1 0x00 00003fbe: PUSH2 0x0100 00003fc1: EXP 00003fc2: DUP2 00003fc3: SLOAD 00003fc4: DUP2 00003fc5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003fda: MUL 00003fdb: NOT 00003fdc: AND 00003fdd: SWAP1 00003fde: DUP4 00003fdf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ff4: AND 00003ff5: MUL 00003ff6: OR 00003ff7: SWAP1 00003ff8: SSTORE 00003ff9: POP 00003ffa: JUMPDEST 00003ffb: PUSH1 0x04 00003ffd: PUSH1 0x00 00003fff: SWAP1 00004000: SLOAD 00004001: SWAP1 00004002: PUSH2 0x0100 00004005: EXP 00004006: SWAP1 00004007: DIV 00004008: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000401d: AND 0000401e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004033: AND 00004034: PUSH4 0xca6ad1e4 00004039: DUP3 0000403a: PUSH1 0x40 0000403c: MLOAD 0000403d: DUP3 0000403e: PUSH4 0xffffffff 00004043: AND 00004044: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00004062: MUL 00004063: DUP2 00004064: MSTORE 00004065: PUSH1 0x04 00004067: ADD 00004068: DUP1 00004069: DUP3 0000406a: DUP2 0000406b: MSTORE 0000406c: PUSH1 0x20 0000406e: ADD 0000406f: SWAP2 00004070: POP 00004071: POP 00004072: PUSH1 0x00 00004074: PUSH1 0x40 00004076: MLOAD 00004077: DUP1 00004078: DUP4 00004079: SUB 0000407a: DUP2 0000407b: PUSH1 0x00 0000407d: DUP8 0000407e: DUP1 0000407f: EXTCODESIZE 00004080: ISZERO 00004081: DUP1 00004082: ISZERO 00004083: PUSH2 0x408b 00004086: JUMPI 00004087: PUSH1 0x00 00004089: DUP1 0000408a: REVERT 0000408b: JUMPDEST 0000408c: POP 0000408d: GAS 0000408e: CALL 0000408f: ISZERO 00004090: DUP1 00004091: ISZERO 00004092: PUSH2 0x409f 00004095: JUMPI 00004096: RETURNDATASIZE 00004097: PUSH1 0x00 00004099: DUP1 0000409a: RETURNDATACOPY 0000409b: RETURNDATASIZE 0000409c: PUSH1 0x00 0000409e: REVERT 0000409f: JUMPDEST 000040a0: POP 000040a1: POP 000040a2: POP 000040a3: POP 000040a4: POP 000040a5: JUMP 000040a6: JUMPDEST 000040a7: PUSH2 0x4123 000040aa: DUP3 000040ab: PUSH1 0x02 000040ad: DUP4 000040ae: PUSH1 0x40 000040b0: MLOAD 000040b1: DUP1 000040b2: DUP3 000040b3: DUP1 000040b4: MLOAD 000040b5: SWAP1 000040b6: PUSH1 0x20 000040b8: ADD 000040b9: SWAP1 000040ba: DUP1 000040bb: DUP4 000040bc: DUP4 000040bd: JUMPDEST 000040be: PUSH1 0x20 000040c0: DUP4 000040c1: LT 000040c2: ISZERO 000040c3: ISZERO 000040c4: PUSH2 0x40e2 000040c7: JUMPI 000040c8: DUP1 000040c9: MLOAD 000040ca: DUP3 000040cb: MSTORE 000040cc: PUSH1 0x20 000040ce: DUP3 000040cf: ADD 000040d0: SWAP2 000040d1: POP 000040d2: PUSH1 0x20 000040d4: DUP2 000040d5: ADD 000040d6: SWAP1 000040d7: POP 000040d8: PUSH1 0x20 000040da: DUP4 000040db: SUB 000040dc: SWAP3 000040dd: POP 000040de: PUSH2 0x40bd 000040e1: JUMP 000040e2: JUMPDEST 000040e3: PUSH1 0x01 000040e5: DUP4 000040e6: PUSH1 0x20 000040e8: SUB 000040e9: PUSH2 0x0100 000040ec: EXP 000040ed: SUB 000040ee: DUP1 000040ef: NOT 000040f0: DUP3 000040f1: MLOAD 000040f2: AND 000040f3: DUP2 000040f4: DUP5 000040f5: MLOAD 000040f6: AND 000040f7: DUP1 000040f8: DUP3 000040f9: OR 000040fa: DUP6 000040fb: MSTORE 000040fc: POP 000040fd: POP 000040fe: POP 000040ff: POP 00004100: POP 00004101: POP 00004102: SWAP1 00004103: POP 00004104: ADD 00004105: SWAP2 00004106: POP 00004107: POP 00004108: SWAP1 00004109: DUP2 0000410a: MSTORE 0000410b: PUSH1 0x20 0000410d: ADD 0000410e: PUSH1 0x40 00004110: MLOAD 00004111: DUP1 00004112: SWAP2 00004113: SUB 00004114: SWAP1 00004115: KECCAK256 00004116: PUSH2 0x52b2 00004119: SWAP1 0000411a: SWAP2 0000411b: SWAP1 0000411c: PUSH4 0xffffffff 00004121: AND 00004122: JUMP 00004123: JUMPDEST 00004124: PUSH32 0xbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b700489 00004145: DUP3 00004146: DUP3 00004147: PUSH1 0x40 00004149: MLOAD 0000414a: DUP1 0000414b: DUP4 0000414c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004161: AND 00004162: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004177: AND 00004178: DUP2 00004179: MSTORE 0000417a: PUSH1 0x20 0000417c: ADD 0000417d: DUP1 0000417e: PUSH1 0x20 00004180: ADD 00004181: DUP3 00004182: DUP2 00004183: SUB 00004184: DUP3 00004185: MSTORE 00004186: DUP4 00004187: DUP2 00004188: DUP2 00004189: MLOAD 0000418a: DUP2 0000418b: MSTORE 0000418c: PUSH1 0x20 0000418e: ADD 0000418f: SWAP2 00004190: POP 00004191: DUP1 00004192: MLOAD 00004193: SWAP1 00004194: PUSH1 0x20 00004196: ADD 00004197: SWAP1 00004198: DUP1 00004199: DUP4 0000419a: DUP4 0000419b: PUSH1 0x00 0000419d: JUMPDEST 0000419e: DUP4 0000419f: DUP2 000041a0: LT 000041a1: ISZERO 000041a2: PUSH2 0x41b8 000041a5: JUMPI 000041a6: DUP1 000041a7: DUP3 000041a8: ADD 000041a9: MLOAD 000041aa: DUP2 000041ab: DUP5 000041ac: ADD 000041ad: MSTORE 000041ae: PUSH1 0x20 000041b0: DUP2 000041b1: ADD 000041b2: SWAP1 000041b3: POP 000041b4: PUSH2 0x419d 000041b7: JUMP 000041b8: JUMPDEST 000041b9: POP 000041ba: POP 000041bb: POP 000041bc: POP 000041bd: SWAP1 000041be: POP 000041bf: SWAP1 000041c0: DUP2 000041c1: ADD 000041c2: SWAP1 000041c3: PUSH1 0x1f 000041c5: AND 000041c6: DUP1 000041c7: ISZERO 000041c8: PUSH2 0x41e5 000041cb: JUMPI 000041cc: DUP1 000041cd: DUP3 000041ce: SUB 000041cf: DUP1 000041d0: MLOAD 000041d1: PUSH1 0x01 000041d3: DUP4 000041d4: PUSH1 0x20 000041d6: SUB 000041d7: PUSH2 0x0100 000041da: EXP 000041db: SUB 000041dc: NOT 000041dd: AND 000041de: DUP2 000041df: MSTORE 000041e0: PUSH1 0x20 000041e2: ADD 000041e3: SWAP2 000041e4: POP 000041e5: JUMPDEST 000041e6: POP 000041e7: SWAP4 000041e8: POP 000041e9: POP 000041ea: POP 000041eb: POP 000041ec: PUSH1 0x40 000041ee: MLOAD 000041ef: DUP1 000041f0: SWAP2 000041f1: SUB 000041f2: SWAP1 000041f3: LOG1 000041f4: POP 000041f5: POP 000041f6: JUMP 000041f7: JUMPDEST 000041f8: PUSH1 0x00 000041fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000420f: AND 00004210: DUP2 00004211: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004226: AND 00004227: EQ 00004228: ISZERO 00004229: ISZERO 0000422a: ISZERO 0000422b: PUSH2 0x4233 0000422e: JUMPI 0000422f: PUSH1 0x00 00004231: DUP1 00004232: REVERT 00004233: JUMPDEST 00004234: DUP1 00004235: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000424a: AND 0000424b: PUSH1 0x01 0000424d: PUSH1 0x00 0000424f: SWAP1 00004250: SLOAD 00004251: SWAP1 00004252: PUSH2 0x0100 00004255: EXP 00004256: SWAP1 00004257: DIV 00004258: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000426d: AND 0000426e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004283: AND 00004284: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000042a5: PUSH1 0x40 000042a7: MLOAD 000042a8: PUSH1 0x40 000042aa: MLOAD 000042ab: DUP1 000042ac: SWAP2 000042ad: SUB 000042ae: SWAP1 000042af: LOG3 000042b0: DUP1 000042b1: PUSH1 0x01 000042b3: PUSH1 0x00 000042b5: PUSH2 0x0100 000042b8: EXP 000042b9: DUP2 000042ba: SLOAD 000042bb: DUP2 000042bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000042d1: MUL 000042d2: NOT 000042d3: AND 000042d4: SWAP1 000042d5: DUP4 000042d6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000042eb: AND 000042ec: MUL 000042ed: OR 000042ee: SWAP1 000042ef: SSTORE 000042f0: POP 000042f1: POP 000042f2: JUMP 000042f3: JUMPDEST 000042f4: PUSH1 0x00 000042f6: DUP1 000042f7: PUSH1 0x03 000042f9: PUSH1 0x00 000042fb: SWAP1 000042fc: SLOAD 000042fd: SWAP1 000042fe: PUSH2 0x0100 00004301: EXP 00004302: SWAP1 00004303: DIV 00004304: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004319: AND 0000431a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000432f: AND 00004330: EQ 00004331: DUP1 00004332: PUSH2 0x4365 00004335: JUMPI 00004336: POP 00004337: PUSH1 0x00 00004339: PUSH2 0x4363 0000433c: PUSH1 0x03 0000433e: PUSH1 0x00 00004340: SWAP1 00004341: SLOAD 00004342: SWAP1 00004343: PUSH2 0x0100 00004346: EXP 00004347: SWAP1 00004348: DIV 00004349: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000435e: AND 0000435f: PUSH2 0x5238 00004362: JUMP 00004363: JUMPDEST 00004364: EQ 00004365: JUMPDEST 00004366: ISZERO 00004367: PUSH2 0x4376 0000436a: JUMPI 0000436b: PUSH2 0x4374 0000436e: PUSH1 0x00 00004370: PUSH2 0x5243 00004373: JUMP 00004374: JUMPDEST 00004375: POP 00004376: JUMPDEST 00004377: PUSH1 0x03 00004379: PUSH1 0x00 0000437b: SWAP1 0000437c: SLOAD 0000437d: SWAP1 0000437e: PUSH2 0x0100 00004381: EXP 00004382: SWAP1 00004383: DIV 00004384: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004399: AND 0000439a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000043af: AND 000043b0: PUSH4 0x38cc4831 000043b5: PUSH1 0x40 000043b7: MLOAD 000043b8: DUP2 000043b9: PUSH4 0xffffffff 000043be: AND 000043bf: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000043dd: MUL 000043de: DUP2 000043df: MSTORE 000043e0: PUSH1 0x04 000043e2: ADD 000043e3: PUSH1 0x20 000043e5: PUSH1 0x40 000043e7: MLOAD 000043e8: DUP1 000043e9: DUP4 000043ea: SUB 000043eb: DUP2 000043ec: PUSH1 0x00 000043ee: DUP8 000043ef: DUP1 000043f0: EXTCODESIZE 000043f1: ISZERO 000043f2: DUP1 000043f3: ISZERO 000043f4: PUSH2 0x43fc 000043f7: JUMPI 000043f8: PUSH1 0x00 000043fa: DUP1 000043fb: REVERT 000043fc: JUMPDEST 000043fd: POP 000043fe: GAS 000043ff: CALL 00004400: ISZERO 00004401: DUP1 00004402: ISZERO 00004403: PUSH2 0x4410 00004406: JUMPI 00004407: RETURNDATASIZE 00004408: PUSH1 0x00 0000440a: DUP1 0000440b: RETURNDATACOPY 0000440c: RETURNDATASIZE 0000440d: PUSH1 0x00 0000440f: REVERT 00004410: JUMPDEST 00004411: POP 00004412: POP 00004413: POP 00004414: POP 00004415: PUSH1 0x40 00004417: MLOAD 00004418: RETURNDATASIZE 00004419: PUSH1 0x20 0000441b: DUP2 0000441c: LT 0000441d: ISZERO 0000441e: PUSH2 0x4426 00004421: JUMPI 00004422: PUSH1 0x00 00004424: DUP1 00004425: REVERT 00004426: JUMPDEST 00004427: DUP2 00004428: ADD 00004429: SWAP1 0000442a: DUP1 0000442b: DUP1 0000442c: MLOAD 0000442d: SWAP1 0000442e: PUSH1 0x20 00004430: ADD 00004431: SWAP1 00004432: SWAP3 00004433: SWAP2 00004434: SWAP1 00004435: POP 00004436: POP 00004437: POP 00004438: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000444d: AND 0000444e: PUSH1 0x04 00004450: PUSH1 0x00 00004452: SWAP1 00004453: SLOAD 00004454: SWAP1 00004455: PUSH2 0x0100 00004458: EXP 00004459: SWAP1 0000445a: DIV 0000445b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004470: AND 00004471: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004486: AND 00004487: EQ 00004488: ISZERO 00004489: ISZERO 0000448a: PUSH2 0x458f 0000448d: JUMPI 0000448e: PUSH1 0x03 00004490: PUSH1 0x00 00004492: SWAP1 00004493: SLOAD 00004494: SWAP1 00004495: PUSH2 0x0100 00004498: EXP 00004499: SWAP1 0000449a: DIV 0000449b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000044b0: AND 000044b1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000044c6: AND 000044c7: PUSH4 0x38cc4831 000044cc: PUSH1 0x40 000044ce: MLOAD 000044cf: DUP2 000044d0: PUSH4 0xffffffff 000044d5: AND 000044d6: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000044f4: MUL 000044f5: DUP2 000044f6: MSTORE 000044f7: PUSH1 0x04 000044f9: ADD 000044fa: PUSH1 0x20 000044fc: PUSH1 0x40 000044fe: MLOAD 000044ff: DUP1 00004500: DUP4 00004501: SUB 00004502: DUP2 00004503: PUSH1 0x00 00004505: DUP8 00004506: DUP1 00004507: EXTCODESIZE 00004508: ISZERO 00004509: DUP1 0000450a: ISZERO 0000450b: PUSH2 0x4513 0000450e: JUMPI 0000450f: PUSH1 0x00 00004511: DUP1 00004512: REVERT 00004513: JUMPDEST 00004514: POP 00004515: GAS 00004516: CALL 00004517: ISZERO 00004518: DUP1 00004519: ISZERO 0000451a: PUSH2 0x4527 0000451d: JUMPI 0000451e: RETURNDATASIZE 0000451f: PUSH1 0x00 00004521: DUP1 00004522: RETURNDATACOPY 00004523: RETURNDATASIZE 00004524: PUSH1 0x00 00004526: REVERT 00004527: JUMPDEST 00004528: POP 00004529: POP 0000452a: POP 0000452b: POP 0000452c: PUSH1 0x40 0000452e: MLOAD 0000452f: RETURNDATASIZE 00004530: PUSH1 0x20 00004532: DUP2 00004533: LT 00004534: ISZERO 00004535: PUSH2 0x453d 00004538: JUMPI 00004539: PUSH1 0x00 0000453b: DUP1 0000453c: REVERT 0000453d: JUMPDEST 0000453e: DUP2 0000453f: ADD 00004540: SWAP1 00004541: DUP1 00004542: DUP1 00004543: MLOAD 00004544: SWAP1 00004545: PUSH1 0x20 00004547: ADD 00004548: SWAP1 00004549: SWAP3 0000454a: SWAP2 0000454b: SWAP1 0000454c: POP 0000454d: POP 0000454e: POP 0000454f: PUSH1 0x04 00004551: PUSH1 0x00 00004553: PUSH2 0x0100 00004556: EXP 00004557: DUP2 00004558: SLOAD 00004559: DUP2 0000455a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000456f: MUL 00004570: NOT 00004571: AND 00004572: SWAP1 00004573: DUP4 00004574: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004589: AND 0000458a: MUL 0000458b: OR 0000458c: SWAP1 0000458d: SSTORE 0000458e: POP 0000458f: JUMPDEST 00004590: PUSH1 0x04 00004592: PUSH1 0x00 00004594: SWAP1 00004595: SLOAD 00004596: SWAP1 00004597: PUSH2 0x0100 0000459a: EXP 0000459b: SWAP1 0000459c: DIV 0000459d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000045b2: AND 000045b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000045c8: AND 000045c9: PUSH4 0x2ef3accc 000045ce: DUP5 000045cf: DUP5 000045d0: PUSH1 0x40 000045d2: MLOAD 000045d3: DUP4 000045d4: PUSH4 0xffffffff 000045d9: AND 000045da: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000045f8: MUL 000045f9: DUP2 000045fa: MSTORE 000045fb: PUSH1 0x04 000045fd: ADD 000045fe: DUP1 000045ff: DUP1 00004600: PUSH1 0x20 00004602: ADD 00004603: DUP4 00004604: DUP2 00004605: MSTORE 00004606: PUSH1 0x20 00004608: ADD 00004609: DUP3 0000460a: DUP2 0000460b: SUB 0000460c: DUP3 0000460d: MSTORE 0000460e: DUP5 0000460f: DUP2 00004610: DUP2 00004611: MLOAD 00004612: DUP2 00004613: MSTORE 00004614: PUSH1 0x20 00004616: ADD 00004617: SWAP2 00004618: POP 00004619: DUP1 0000461a: MLOAD 0000461b: SWAP1 0000461c: PUSH1 0x20 0000461e: ADD 0000461f: SWAP1 00004620: DUP1 00004621: DUP4 00004622: DUP4 00004623: PUSH1 0x00 00004625: JUMPDEST 00004626: DUP4 00004627: DUP2 00004628: LT 00004629: ISZERO 0000462a: PUSH2 0x4640 0000462d: JUMPI 0000462e: DUP1 0000462f: DUP3 00004630: ADD 00004631: MLOAD 00004632: DUP2 00004633: DUP5 00004634: ADD 00004635: MSTORE 00004636: PUSH1 0x20 00004638: DUP2 00004639: ADD 0000463a: SWAP1 0000463b: POP 0000463c: PUSH2 0x4625 0000463f: JUMP 00004640: JUMPDEST 00004641: POP 00004642: POP 00004643: POP 00004644: POP 00004645: SWAP1 00004646: POP 00004647: SWAP1 00004648: DUP2 00004649: ADD 0000464a: SWAP1 0000464b: PUSH1 0x1f 0000464d: AND 0000464e: DUP1 0000464f: ISZERO 00004650: PUSH2 0x466d 00004653: JUMPI 00004654: DUP1 00004655: DUP3 00004656: SUB 00004657: DUP1 00004658: MLOAD 00004659: PUSH1 0x01 0000465b: DUP4 0000465c: PUSH1 0x20 0000465e: SUB 0000465f: PUSH2 0x0100 00004662: EXP 00004663: SUB 00004664: NOT 00004665: AND 00004666: DUP2 00004667: MSTORE 00004668: PUSH1 0x20 0000466a: ADD 0000466b: SWAP2 0000466c: POP 0000466d: JUMPDEST 0000466e: POP 0000466f: SWAP4 00004670: POP 00004671: POP 00004672: POP 00004673: POP 00004674: PUSH1 0x20 00004676: PUSH1 0x40 00004678: MLOAD 00004679: DUP1 0000467a: DUP4 0000467b: SUB 0000467c: DUP2 0000467d: PUSH1 0x00 0000467f: DUP8 00004680: DUP1 00004681: EXTCODESIZE 00004682: ISZERO 00004683: DUP1 00004684: ISZERO 00004685: PUSH2 0x468d 00004688: JUMPI 00004689: PUSH1 0x00 0000468b: DUP1 0000468c: REVERT 0000468d: JUMPDEST 0000468e: POP 0000468f: GAS 00004690: CALL 00004691: ISZERO 00004692: DUP1 00004693: ISZERO 00004694: PUSH2 0x46a1 00004697: JUMPI 00004698: RETURNDATASIZE 00004699: PUSH1 0x00 0000469b: DUP1 0000469c: RETURNDATACOPY 0000469d: RETURNDATASIZE 0000469e: PUSH1 0x00 000046a0: REVERT 000046a1: JUMPDEST 000046a2: POP 000046a3: POP 000046a4: POP 000046a5: POP 000046a6: PUSH1 0x40 000046a8: MLOAD 000046a9: RETURNDATASIZE 000046aa: PUSH1 0x20 000046ac: DUP2 000046ad: LT 000046ae: ISZERO 000046af: PUSH2 0x46b7 000046b2: JUMPI 000046b3: PUSH1 0x00 000046b5: DUP1 000046b6: REVERT 000046b7: JUMPDEST 000046b8: DUP2 000046b9: ADD 000046ba: SWAP1 000046bb: DUP1 000046bc: DUP1 000046bd: MLOAD 000046be: SWAP1 000046bf: PUSH1 0x20 000046c1: ADD 000046c2: SWAP1 000046c3: SWAP3 000046c4: SWAP2 000046c5: SWAP1 000046c6: POP 000046c7: POP 000046c8: POP 000046c9: SWAP1 000046ca: POP 000046cb: SWAP3 000046cc: SWAP2 000046cd: POP 000046ce: POP 000046cf: JUMP 000046d0: JUMPDEST 000046d1: PUSH1 0x00 000046d3: DUP1 000046d4: PUSH1 0x00 000046d6: PUSH1 0x03 000046d8: PUSH1 0x00 000046da: SWAP1 000046db: SLOAD 000046dc: SWAP1 000046dd: PUSH2 0x0100 000046e0: EXP 000046e1: SWAP1 000046e2: DIV 000046e3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000046f8: AND 000046f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000470e: AND 0000470f: EQ 00004710: DUP1 00004711: PUSH2 0x4744 00004714: JUMPI 00004715: POP 00004716: PUSH1 0x00 00004718: PUSH2 0x4742 0000471b: PUSH1 0x03 0000471d: PUSH1 0x00 0000471f: SWAP1 00004720: SLOAD 00004721: SWAP1 00004722: PUSH2 0x0100 00004725: EXP 00004726: SWAP1 00004727: DIV 00004728: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000473d: AND 0000473e: PUSH2 0x5238 00004741: JUMP 00004742: JUMPDEST 00004743: EQ 00004744: JUMPDEST 00004745: ISZERO 00004746: PUSH2 0x4755 00004749: JUMPI 0000474a: PUSH2 0x4753 0000474d: PUSH1 0x00 0000474f: PUSH2 0x5243 00004752: JUMP 00004753: JUMPDEST 00004754: POP 00004755: JUMPDEST 00004756: PUSH1 0x03 00004758: PUSH1 0x00 0000475a: SWAP1 0000475b: SLOAD 0000475c: SWAP1 0000475d: PUSH2 0x0100 00004760: EXP 00004761: SWAP1 00004762: DIV 00004763: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004778: AND 00004779: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000478e: AND 0000478f: PUSH4 0x38cc4831 00004794: PUSH1 0x40 00004796: MLOAD 00004797: DUP2 00004798: PUSH4 0xffffffff 0000479d: AND 0000479e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000047bc: MUL 000047bd: DUP2 000047be: MSTORE 000047bf: PUSH1 0x04 000047c1: ADD 000047c2: PUSH1 0x20 000047c4: PUSH1 0x40 000047c6: MLOAD 000047c7: DUP1 000047c8: DUP4 000047c9: SUB 000047ca: DUP2 000047cb: PUSH1 0x00 000047cd: DUP8 000047ce: DUP1 000047cf: EXTCODESIZE 000047d0: ISZERO 000047d1: DUP1 000047d2: ISZERO 000047d3: PUSH2 0x47db 000047d6: JUMPI 000047d7: PUSH1 0x00 000047d9: DUP1 000047da: REVERT 000047db: JUMPDEST 000047dc: POP 000047dd: GAS 000047de: CALL 000047df: ISZERO 000047e0: DUP1 000047e1: ISZERO 000047e2: PUSH2 0x47ef 000047e5: JUMPI 000047e6: RETURNDATASIZE 000047e7: PUSH1 0x00 000047e9: DUP1 000047ea: RETURNDATACOPY 000047eb: RETURNDATASIZE 000047ec: PUSH1 0x00 000047ee: REVERT 000047ef: JUMPDEST 000047f0: POP 000047f1: POP 000047f2: POP 000047f3: POP 000047f4: PUSH1 0x40 000047f6: MLOAD 000047f7: RETURNDATASIZE 000047f8: PUSH1 0x20 000047fa: DUP2 000047fb: LT 000047fc: ISZERO 000047fd: PUSH2 0x4805 00004800: JUMPI 00004801: PUSH1 0x00 00004803: DUP1 00004804: REVERT 00004805: JUMPDEST 00004806: DUP2 00004807: ADD 00004808: SWAP1 00004809: DUP1 0000480a: DUP1 0000480b: MLOAD 0000480c: SWAP1 0000480d: PUSH1 0x20 0000480f: ADD 00004810: SWAP1 00004811: SWAP3 00004812: SWAP2 00004813: SWAP1 00004814: POP 00004815: POP 00004816: POP 00004817: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000482c: AND 0000482d: PUSH1 0x04 0000482f: PUSH1 0x00 00004831: SWAP1 00004832: SLOAD 00004833: SWAP1 00004834: PUSH2 0x0100 00004837: EXP 00004838: SWAP1 00004839: DIV 0000483a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000484f: AND 00004850: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004865: AND 00004866: EQ 00004867: ISZERO 00004868: ISZERO 00004869: PUSH2 0x496e 0000486c: JUMPI 0000486d: PUSH1 0x03 0000486f: PUSH1 0x00 00004871: SWAP1 00004872: SLOAD 00004873: SWAP1 00004874: PUSH2 0x0100 00004877: EXP 00004878: SWAP1 00004879: DIV 0000487a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000488f: AND 00004890: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000048a5: AND 000048a6: PUSH4 0x38cc4831 000048ab: PUSH1 0x40 000048ad: MLOAD 000048ae: DUP2 000048af: PUSH4 0xffffffff 000048b4: AND 000048b5: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000048d3: MUL 000048d4: DUP2 000048d5: MSTORE 000048d6: PUSH1 0x04 000048d8: ADD 000048d9: PUSH1 0x20 000048db: PUSH1 0x40 000048dd: MLOAD 000048de: DUP1 000048df: DUP4 000048e0: SUB 000048e1: DUP2 000048e2: PUSH1 0x00 000048e4: DUP8 000048e5: DUP1 000048e6: EXTCODESIZE 000048e7: ISZERO 000048e8: DUP1 000048e9: ISZERO 000048ea: PUSH2 0x48f2 000048ed: JUMPI 000048ee: PUSH1 0x00 000048f0: DUP1 000048f1: REVERT 000048f2: JUMPDEST 000048f3: POP 000048f4: GAS 000048f5: CALL 000048f6: ISZERO 000048f7: DUP1 000048f8: ISZERO 000048f9: PUSH2 0x4906 000048fc: JUMPI 000048fd: RETURNDATASIZE 000048fe: PUSH1 0x00 00004900: DUP1 00004901: RETURNDATACOPY 00004902: RETURNDATASIZE 00004903: PUSH1 0x00 00004905: REVERT 00004906: JUMPDEST 00004907: POP 00004908: POP 00004909: POP 0000490a: POP 0000490b: PUSH1 0x40 0000490d: MLOAD 0000490e: RETURNDATASIZE 0000490f: PUSH1 0x20 00004911: DUP2 00004912: LT 00004913: ISZERO 00004914: PUSH2 0x491c 00004917: JUMPI 00004918: PUSH1 0x00 0000491a: DUP1 0000491b: REVERT 0000491c: JUMPDEST 0000491d: DUP2 0000491e: ADD 0000491f: SWAP1 00004920: DUP1 00004921: DUP1 00004922: MLOAD 00004923: SWAP1 00004924: PUSH1 0x20 00004926: ADD 00004927: SWAP1 00004928: SWAP3 00004929: SWAP2 0000492a: SWAP1 0000492b: POP 0000492c: POP 0000492d: POP 0000492e: PUSH1 0x04 00004930: PUSH1 0x00 00004932: PUSH2 0x0100 00004935: EXP 00004936: DUP2 00004937: SLOAD 00004938: DUP2 00004939: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000494e: MUL 0000494f: NOT 00004950: AND 00004951: SWAP1 00004952: DUP4 00004953: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004968: AND 00004969: MUL 0000496a: OR 0000496b: SWAP1 0000496c: SSTORE 0000496d: POP 0000496e: JUMPDEST 0000496f: PUSH1 0x04 00004971: PUSH1 0x00 00004973: SWAP1 00004974: SLOAD 00004975: SWAP1 00004976: PUSH2 0x0100 00004979: EXP 0000497a: SWAP1 0000497b: DIV 0000497c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004991: AND 00004992: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000049a7: AND 000049a8: PUSH4 0x2ef3accc 000049ad: DUP7 000049ae: DUP6 000049af: PUSH1 0x40 000049b1: MLOAD 000049b2: DUP4 000049b3: PUSH4 0xffffffff 000049b8: AND 000049b9: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000049d7: MUL 000049d8: DUP2 000049d9: MSTORE 000049da: PUSH1 0x04 000049dc: ADD 000049dd: DUP1 000049de: DUP1 000049df: PUSH1 0x20 000049e1: ADD 000049e2: DUP4 000049e3: DUP2 000049e4: MSTORE 000049e5: PUSH1 0x20 000049e7: ADD 000049e8: DUP3 000049e9: DUP2 000049ea: SUB 000049eb: DUP3 000049ec: MSTORE 000049ed: DUP5 000049ee: DUP2 000049ef: DUP2 000049f0: MLOAD 000049f1: DUP2 000049f2: MSTORE 000049f3: PUSH1 0x20 000049f5: ADD 000049f6: SWAP2 000049f7: POP 000049f8: DUP1 000049f9: MLOAD 000049fa: SWAP1 000049fb: PUSH1 0x20 000049fd: ADD 000049fe: SWAP1 000049ff: DUP1 00004a00: DUP4 00004a01: DUP4 00004a02: PUSH1 0x00 00004a04: JUMPDEST 00004a05: DUP4 00004a06: DUP2 00004a07: LT 00004a08: ISZERO 00004a09: PUSH2 0x4a1f 00004a0c: JUMPI 00004a0d: DUP1 00004a0e: DUP3 00004a0f: ADD 00004a10: MLOAD 00004a11: DUP2 00004a12: DUP5 00004a13: ADD 00004a14: MSTORE 00004a15: PUSH1 0x20 00004a17: DUP2 00004a18: ADD 00004a19: SWAP1 00004a1a: POP 00004a1b: PUSH2 0x4a04 00004a1e: JUMP 00004a1f: JUMPDEST 00004a20: POP 00004a21: POP 00004a22: POP 00004a23: POP 00004a24: SWAP1 00004a25: POP 00004a26: SWAP1 00004a27: DUP2 00004a28: ADD 00004a29: SWAP1 00004a2a: PUSH1 0x1f 00004a2c: AND 00004a2d: DUP1 00004a2e: ISZERO 00004a2f: PUSH2 0x4a4c 00004a32: JUMPI 00004a33: DUP1 00004a34: DUP3 00004a35: SUB 00004a36: DUP1 00004a37: MLOAD 00004a38: PUSH1 0x01 00004a3a: DUP4 00004a3b: PUSH1 0x20 00004a3d: SUB 00004a3e: PUSH2 0x0100 00004a41: EXP 00004a42: SUB 00004a43: NOT 00004a44: AND 00004a45: DUP2 00004a46: MSTORE 00004a47: PUSH1 0x20 00004a49: ADD 00004a4a: SWAP2 00004a4b: POP 00004a4c: JUMPDEST 00004a4d: POP 00004a4e: SWAP4 00004a4f: POP 00004a50: POP 00004a51: POP 00004a52: POP 00004a53: PUSH1 0x20 00004a55: PUSH1 0x40 00004a57: MLOAD 00004a58: DUP1 00004a59: DUP4 00004a5a: SUB 00004a5b: DUP2 00004a5c: PUSH1 0x00 00004a5e: DUP8 00004a5f: DUP1 00004a60: EXTCODESIZE 00004a61: ISZERO 00004a62: DUP1 00004a63: ISZERO 00004a64: PUSH2 0x4a6c 00004a67: JUMPI 00004a68: PUSH1 0x00 00004a6a: DUP1 00004a6b: REVERT 00004a6c: JUMPDEST 00004a6d: POP 00004a6e: GAS 00004a6f: CALL 00004a70: ISZERO 00004a71: DUP1 00004a72: ISZERO 00004a73: PUSH2 0x4a80 00004a76: JUMPI 00004a77: RETURNDATASIZE 00004a78: PUSH1 0x00 00004a7a: DUP1 00004a7b: RETURNDATACOPY 00004a7c: RETURNDATASIZE 00004a7d: PUSH1 0x00 00004a7f: REVERT 00004a80: JUMPDEST 00004a81: POP 00004a82: POP 00004a83: POP 00004a84: POP 00004a85: PUSH1 0x40 00004a87: MLOAD 00004a88: RETURNDATASIZE 00004a89: PUSH1 0x20 00004a8b: DUP2 00004a8c: LT 00004a8d: ISZERO 00004a8e: PUSH2 0x4a96 00004a91: JUMPI 00004a92: PUSH1 0x00 00004a94: DUP1 00004a95: REVERT 00004a96: JUMPDEST 00004a97: DUP2 00004a98: ADD 00004a99: SWAP1 00004a9a: DUP1 00004a9b: DUP1 00004a9c: MLOAD 00004a9d: SWAP1 00004a9e: PUSH1 0x20 00004aa0: ADD 00004aa1: SWAP1 00004aa2: SWAP3 00004aa3: SWAP2 00004aa4: SWAP1 00004aa5: POP 00004aa6: POP 00004aa7: POP 00004aa8: SWAP1 00004aa9: POP 00004aaa: DUP3 00004aab: GASPRICE 00004aac: MUL 00004aad: PUSH8 0x0de0b6b3a7640000 00004ab6: ADD 00004ab7: DUP2 00004ab8: GT 00004ab9: ISZERO 00004aba: PUSH2 0x4ac9 00004abd: JUMPI 00004abe: PUSH1 0x00 00004ac0: PUSH1 0x01 00004ac2: MUL 00004ac3: SWAP2 00004ac4: POP 00004ac5: PUSH2 0x4c7b 00004ac8: JUMP 00004ac9: JUMPDEST 00004aca: PUSH1 0x04 00004acc: PUSH1 0x00 00004ace: SWAP1 00004acf: SLOAD 00004ad0: SWAP1 00004ad1: PUSH2 0x0100 00004ad4: EXP 00004ad5: SWAP1 00004ad6: DIV 00004ad7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004aec: AND 00004aed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004b02: AND 00004b03: PUSH4 0xc51be90f 00004b08: DUP3 00004b09: DUP9 00004b0a: DUP9 00004b0b: DUP9 00004b0c: DUP9 00004b0d: PUSH1 0x40 00004b0f: MLOAD 00004b10: DUP7 00004b11: PUSH4 0xffffffff 00004b16: AND 00004b17: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00004b35: MUL 00004b36: DUP2 00004b37: MSTORE 00004b38: PUSH1 0x04 00004b3a: ADD 00004b3b: DUP1 00004b3c: DUP6 00004b3d: DUP2 00004b3e: MSTORE 00004b3f: PUSH1 0x20 00004b41: ADD 00004b42: DUP1 00004b43: PUSH1 0x20 00004b45: ADD 00004b46: DUP1 00004b47: PUSH1 0x20 00004b49: ADD 00004b4a: DUP5 00004b4b: DUP2 00004b4c: MSTORE 00004b4d: PUSH1 0x20 00004b4f: ADD 00004b50: DUP4 00004b51: DUP2 00004b52: SUB 00004b53: DUP4 00004b54: MSTORE 00004b55: DUP7 00004b56: DUP2 00004b57: DUP2 00004b58: MLOAD 00004b59: DUP2 00004b5a: MSTORE 00004b5b: PUSH1 0x20 00004b5d: ADD 00004b5e: SWAP2 00004b5f: POP 00004b60: DUP1 00004b61: MLOAD 00004b62: SWAP1 00004b63: PUSH1 0x20 00004b65: ADD 00004b66: SWAP1 00004b67: DUP1 00004b68: DUP4 00004b69: DUP4 00004b6a: PUSH1 0x00 00004b6c: JUMPDEST 00004b6d: DUP4 00004b6e: DUP2 00004b6f: LT 00004b70: ISZERO 00004b71: PUSH2 0x4b87 00004b74: JUMPI 00004b75: DUP1 00004b76: DUP3 00004b77: ADD 00004b78: MLOAD 00004b79: DUP2 00004b7a: DUP5 00004b7b: ADD 00004b7c: MSTORE 00004b7d: PUSH1 0x20 00004b7f: DUP2 00004b80: ADD 00004b81: SWAP1 00004b82: POP 00004b83: PUSH2 0x4b6c 00004b86: JUMP 00004b87: JUMPDEST 00004b88: POP 00004b89: POP 00004b8a: POP 00004b8b: POP 00004b8c: SWAP1 00004b8d: POP 00004b8e: SWAP1 00004b8f: DUP2 00004b90: ADD 00004b91: SWAP1 00004b92: PUSH1 0x1f 00004b94: AND 00004b95: DUP1 00004b96: ISZERO 00004b97: PUSH2 0x4bb4 00004b9a: JUMPI 00004b9b: DUP1 00004b9c: DUP3 00004b9d: SUB 00004b9e: DUP1 00004b9f: MLOAD 00004ba0: PUSH1 0x01 00004ba2: DUP4 00004ba3: PUSH1 0x20 00004ba5: SUB 00004ba6: PUSH2 0x0100 00004ba9: EXP 00004baa: SUB 00004bab: NOT 00004bac: AND 00004bad: DUP2 00004bae: MSTORE 00004baf: PUSH1 0x20 00004bb1: ADD 00004bb2: SWAP2 00004bb3: POP 00004bb4: JUMPDEST 00004bb5: POP 00004bb6: DUP4 00004bb7: DUP2 00004bb8: SUB 00004bb9: DUP3 00004bba: MSTORE 00004bbb: DUP6 00004bbc: DUP2 00004bbd: DUP2 00004bbe: MLOAD 00004bbf: DUP2 00004bc0: MSTORE 00004bc1: PUSH1 0x20 00004bc3: ADD 00004bc4: SWAP2 00004bc5: POP 00004bc6: DUP1 00004bc7: MLOAD 00004bc8: SWAP1 00004bc9: PUSH1 0x20 00004bcb: ADD 00004bcc: SWAP1 00004bcd: DUP1 00004bce: DUP4 00004bcf: DUP4 00004bd0: PUSH1 0x00 00004bd2: JUMPDEST 00004bd3: DUP4 00004bd4: DUP2 00004bd5: LT 00004bd6: ISZERO 00004bd7: PUSH2 0x4bed 00004bda: JUMPI 00004bdb: DUP1 00004bdc: DUP3 00004bdd: ADD 00004bde: MLOAD 00004bdf: DUP2 00004be0: DUP5 00004be1: ADD 00004be2: MSTORE 00004be3: PUSH1 0x20 00004be5: DUP2 00004be6: ADD 00004be7: SWAP1 00004be8: POP 00004be9: PUSH2 0x4bd2 00004bec: JUMP 00004bed: JUMPDEST 00004bee: POP 00004bef: POP 00004bf0: POP 00004bf1: POP 00004bf2: SWAP1 00004bf3: POP 00004bf4: SWAP1 00004bf5: DUP2 00004bf6: ADD 00004bf7: SWAP1 00004bf8: PUSH1 0x1f 00004bfa: AND 00004bfb: DUP1 00004bfc: ISZERO 00004bfd: PUSH2 0x4c1a 00004c00: JUMPI 00004c01: DUP1 00004c02: DUP3 00004c03: SUB 00004c04: DUP1 00004c05: MLOAD 00004c06: PUSH1 0x01 00004c08: DUP4 00004c09: PUSH1 0x20 00004c0b: SUB 00004c0c: PUSH2 0x0100 00004c0f: EXP 00004c10: SUB 00004c11: NOT 00004c12: AND 00004c13: DUP2 00004c14: MSTORE 00004c15: PUSH1 0x20 00004c17: ADD 00004c18: SWAP2 00004c19: POP 00004c1a: JUMPDEST 00004c1b: POP 00004c1c: SWAP7 00004c1d: POP 00004c1e: POP 00004c1f: POP 00004c20: POP 00004c21: POP 00004c22: POP 00004c23: POP 00004c24: PUSH1 0x20 00004c26: PUSH1 0x40 00004c28: MLOAD 00004c29: DUP1 00004c2a: DUP4 00004c2b: SUB 00004c2c: DUP2 00004c2d: DUP6 00004c2e: DUP9 00004c2f: DUP1 00004c30: EXTCODESIZE 00004c31: ISZERO 00004c32: DUP1 00004c33: ISZERO 00004c34: PUSH2 0x4c3c 00004c37: JUMPI 00004c38: PUSH1 0x00 00004c3a: DUP1 00004c3b: REVERT 00004c3c: JUMPDEST 00004c3d: POP 00004c3e: GAS 00004c3f: CALL 00004c40: ISZERO 00004c41: DUP1 00004c42: ISZERO 00004c43: PUSH2 0x4c50 00004c46: JUMPI 00004c47: RETURNDATASIZE 00004c48: PUSH1 0x00 00004c4a: DUP1 00004c4b: RETURNDATACOPY 00004c4c: RETURNDATASIZE 00004c4d: PUSH1 0x00 00004c4f: REVERT 00004c50: JUMPDEST 00004c51: POP 00004c52: POP 00004c53: POP 00004c54: POP 00004c55: POP 00004c56: PUSH1 0x40 00004c58: MLOAD 00004c59: RETURNDATASIZE 00004c5a: PUSH1 0x20 00004c5c: DUP2 00004c5d: LT 00004c5e: ISZERO 00004c5f: PUSH2 0x4c67 00004c62: JUMPI 00004c63: PUSH1 0x00 00004c65: DUP1 00004c66: REVERT 00004c67: JUMPDEST 00004c68: DUP2 00004c69: ADD 00004c6a: SWAP1 00004c6b: DUP1 00004c6c: DUP1 00004c6d: MLOAD 00004c6e: SWAP1 00004c6f: PUSH1 0x20 00004c71: ADD 00004c72: SWAP1 00004c73: SWAP3 00004c74: SWAP2 00004c75: SWAP1 00004c76: POP 00004c77: POP 00004c78: POP 00004c79: SWAP2 00004c7a: POP 00004c7b: JUMPDEST 00004c7c: POP 00004c7d: SWAP5 00004c7e: SWAP4 00004c7f: POP 00004c80: POP 00004c81: POP 00004c82: POP 00004c83: JUMP 00004c84: JUMPDEST 00004c85: PUSH1 0x00 00004c87: DUP1 00004c88: PUSH1 0x00 00004c8a: PUSH1 0x03 00004c8c: PUSH1 0x00 00004c8e: SWAP1 00004c8f: SLOAD 00004c90: SWAP1 00004c91: PUSH2 0x0100 00004c94: EXP 00004c95: SWAP1 00004c96: DIV 00004c97: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004cac: AND 00004cad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004cc2: AND 00004cc3: EQ 00004cc4: DUP1 00004cc5: PUSH2 0x4cf8 00004cc8: JUMPI 00004cc9: POP 00004cca: PUSH1 0x00 00004ccc: PUSH2 0x4cf6 00004ccf: PUSH1 0x03 00004cd1: PUSH1 0x00 00004cd3: SWAP1 00004cd4: SLOAD 00004cd5: SWAP1 00004cd6: PUSH2 0x0100 00004cd9: EXP 00004cda: SWAP1 00004cdb: DIV 00004cdc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004cf1: AND 00004cf2: PUSH2 0x5238 00004cf5: JUMP 00004cf6: JUMPDEST 00004cf7: EQ 00004cf8: JUMPDEST 00004cf9: ISZERO 00004cfa: PUSH2 0x4d09 00004cfd: JUMPI 00004cfe: PUSH2 0x4d07 00004d01: PUSH1 0x00 00004d03: PUSH2 0x5243 00004d06: JUMP 00004d07: JUMPDEST 00004d08: POP 00004d09: JUMPDEST 00004d0a: PUSH1 0x03 00004d0c: PUSH1 0x00 00004d0e: SWAP1 00004d0f: SLOAD 00004d10: SWAP1 00004d11: PUSH2 0x0100 00004d14: EXP 00004d15: SWAP1 00004d16: DIV 00004d17: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004d2c: AND 00004d2d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004d42: AND 00004d43: PUSH4 0x38cc4831 00004d48: PUSH1 0x40 00004d4a: MLOAD 00004d4b: DUP2 00004d4c: PUSH4 0xffffffff 00004d51: AND 00004d52: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00004d70: MUL 00004d71: DUP2 00004d72: MSTORE 00004d73: PUSH1 0x04 00004d75: ADD 00004d76: PUSH1 0x20 00004d78: PUSH1 0x40 00004d7a: MLOAD 00004d7b: DUP1 00004d7c: DUP4 00004d7d: SUB 00004d7e: DUP2 00004d7f: PUSH1 0x00 00004d81: DUP8 00004d82: DUP1 00004d83: EXTCODESIZE 00004d84: ISZERO 00004d85: DUP1 00004d86: ISZERO 00004d87: PUSH2 0x4d8f 00004d8a: JUMPI 00004d8b: PUSH1 0x00 00004d8d: DUP1 00004d8e: REVERT 00004d8f: JUMPDEST 00004d90: POP 00004d91: GAS 00004d92: CALL 00004d93: ISZERO 00004d94: DUP1 00004d95: ISZERO 00004d96: PUSH2 0x4da3 00004d99: JUMPI 00004d9a: RETURNDATASIZE 00004d9b: PUSH1 0x00 00004d9d: DUP1 00004d9e: RETURNDATACOPY 00004d9f: RETURNDATASIZE 00004da0: PUSH1 0x00 00004da2: REVERT 00004da3: JUMPDEST 00004da4: POP 00004da5: POP 00004da6: POP 00004da7: POP 00004da8: PUSH1 0x40 00004daa: MLOAD 00004dab: RETURNDATASIZE 00004dac: PUSH1 0x20 00004dae: DUP2 00004daf: LT 00004db0: ISZERO 00004db1: PUSH2 0x4db9 00004db4: JUMPI 00004db5: PUSH1 0x00 00004db7: DUP1 00004db8: REVERT 00004db9: JUMPDEST 00004dba: DUP2 00004dbb: ADD 00004dbc: SWAP1 00004dbd: DUP1 00004dbe: DUP1 00004dbf: MLOAD 00004dc0: SWAP1 00004dc1: PUSH1 0x20 00004dc3: ADD 00004dc4: SWAP1 00004dc5: SWAP3 00004dc6: SWAP2 00004dc7: SWAP1 00004dc8: POP 00004dc9: POP 00004dca: POP 00004dcb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004de0: AND 00004de1: PUSH1 0x04 00004de3: PUSH1 0x00 00004de5: SWAP1 00004de6: SLOAD 00004de7: SWAP1 00004de8: PUSH2 0x0100 00004deb: EXP 00004dec: SWAP1 00004ded: DIV 00004dee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004e03: AND 00004e04: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004e19: AND 00004e1a: EQ 00004e1b: ISZERO 00004e1c: ISZERO 00004e1d: PUSH2 0x4f22 00004e20: JUMPI 00004e21: PUSH1 0x03 00004e23: PUSH1 0x00 00004e25: SWAP1 00004e26: SLOAD 00004e27: SWAP1 00004e28: PUSH2 0x0100 00004e2b: EXP 00004e2c: SWAP1 00004e2d: DIV 00004e2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004e43: AND 00004e44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004e59: AND 00004e5a: PUSH4 0x38cc4831 00004e5f: PUSH1 0x40 00004e61: MLOAD 00004e62: DUP2 00004e63: PUSH4 0xffffffff 00004e68: AND 00004e69: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00004e87: MUL 00004e88: DUP2 00004e89: MSTORE 00004e8a: PUSH1 0x04 00004e8c: ADD 00004e8d: PUSH1 0x20 00004e8f: PUSH1 0x40 00004e91: MLOAD 00004e92: DUP1 00004e93: DUP4 00004e94: SUB 00004e95: DUP2 00004e96: PUSH1 0x00 00004e98: DUP8 00004e99: DUP1 00004e9a: EXTCODESIZE 00004e9b: ISZERO 00004e9c: DUP1 00004e9d: ISZERO 00004e9e: PUSH2 0x4ea6 00004ea1: JUMPI 00004ea2: PUSH1 0x00 00004ea4: DUP1 00004ea5: REVERT 00004ea6: JUMPDEST 00004ea7: POP 00004ea8: GAS 00004ea9: CALL 00004eaa: ISZERO 00004eab: DUP1 00004eac: ISZERO 00004ead: PUSH2 0x4eba 00004eb0: JUMPI 00004eb1: RETURNDATASIZE 00004eb2: PUSH1 0x00 00004eb4: DUP1 00004eb5: RETURNDATACOPY 00004eb6: RETURNDATASIZE 00004eb7: PUSH1 0x00 00004eb9: REVERT 00004eba: JUMPDEST 00004ebb: POP 00004ebc: POP 00004ebd: POP 00004ebe: POP 00004ebf: PUSH1 0x40 00004ec1: MLOAD 00004ec2: RETURNDATASIZE 00004ec3: PUSH1 0x20 00004ec5: DUP2 00004ec6: LT 00004ec7: ISZERO 00004ec8: PUSH2 0x4ed0 00004ecb: JUMPI 00004ecc: PUSH1 0x00 00004ece: DUP1 00004ecf: REVERT 00004ed0: JUMPDEST 00004ed1: DUP2 00004ed2: ADD 00004ed3: SWAP1 00004ed4: DUP1 00004ed5: DUP1 00004ed6: MLOAD 00004ed7: SWAP1 00004ed8: PUSH1 0x20 00004eda: ADD 00004edb: SWAP1 00004edc: SWAP3 00004edd: SWAP2 00004ede: SWAP1 00004edf: POP 00004ee0: POP 00004ee1: POP 00004ee2: PUSH1 0x04 00004ee4: PUSH1 0x00 00004ee6: PUSH2 0x0100 00004ee9: EXP 00004eea: DUP2 00004eeb: SLOAD 00004eec: DUP2 00004eed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f02: MUL 00004f03: NOT 00004f04: AND 00004f05: SWAP1 00004f06: DUP4 00004f07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f1c: AND 00004f1d: MUL 00004f1e: OR 00004f1f: SWAP1 00004f20: SSTORE 00004f21: POP 00004f22: JUMPDEST 00004f23: PUSH1 0x04 00004f25: PUSH1 0x00 00004f27: SWAP1 00004f28: SLOAD 00004f29: SWAP1 00004f2a: PUSH2 0x0100 00004f2d: EXP 00004f2e: SWAP1 00004f2f: DIV 00004f30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f45: AND 00004f46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f5b: AND 00004f5c: PUSH4 0x2ef3accc 00004f61: DUP7 00004f62: DUP6 00004f63: PUSH1 0x40 00004f65: MLOAD 00004f66: DUP4 00004f67: PUSH4 0xffffffff 00004f6c: AND 00004f6d: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00004f8b: MUL 00004f8c: DUP2 00004f8d: MSTORE 00004f8e: PUSH1 0x04 00004f90: ADD 00004f91: DUP1 00004f92: DUP1 00004f93: PUSH1 0x20 00004f95: ADD 00004f96: DUP4 00004f97: DUP2 00004f98: MSTORE 00004f99: PUSH1 0x20 00004f9b: ADD 00004f9c: DUP3 00004f9d: DUP2 00004f9e: SUB 00004f9f: DUP3 00004fa0: MSTORE 00004fa1: DUP5 00004fa2: DUP2 00004fa3: DUP2 00004fa4: MLOAD 00004fa5: DUP2 00004fa6: MSTORE 00004fa7: PUSH1 0x20 00004fa9: ADD 00004faa: SWAP2 00004fab: POP 00004fac: DUP1 00004fad: MLOAD 00004fae: SWAP1 00004faf: PUSH1 0x20 00004fb1: ADD 00004fb2: SWAP1 00004fb3: DUP1 00004fb4: DUP4 00004fb5: DUP4 00004fb6: PUSH1 0x00 00004fb8: JUMPDEST 00004fb9: DUP4 00004fba: DUP2 00004fbb: LT 00004fbc: ISZERO 00004fbd: PUSH2 0x4fd3 00004fc0: JUMPI 00004fc1: DUP1 00004fc2: DUP3 00004fc3: ADD 00004fc4: MLOAD 00004fc5: DUP2 00004fc6: DUP5 00004fc7: ADD 00004fc8: MSTORE 00004fc9: PUSH1 0x20 00004fcb: DUP2 00004fcc: ADD 00004fcd: SWAP1 00004fce: POP 00004fcf: PUSH2 0x4fb8 00004fd2: JUMP 00004fd3: JUMPDEST 00004fd4: POP 00004fd5: POP 00004fd6: POP 00004fd7: POP 00004fd8: SWAP1 00004fd9: POP 00004fda: SWAP1 00004fdb: DUP2 00004fdc: ADD 00004fdd: SWAP1 00004fde: PUSH1 0x1f 00004fe0: AND 00004fe1: DUP1 00004fe2: ISZERO 00004fe3: PUSH2 0x5000 00004fe6: JUMPI 00004fe7: DUP1 00004fe8: DUP3 00004fe9: SUB 00004fea: DUP1 00004feb: MLOAD 00004fec: PUSH1 0x01 00004fee: DUP4 00004fef: PUSH1 0x20 00004ff1: SUB 00004ff2: PUSH2 0x0100 00004ff5: EXP 00004ff6: SUB 00004ff7: NOT 00004ff8: AND 00004ff9: DUP2 00004ffa: MSTORE 00004ffb: PUSH1 0x20 00004ffd: ADD 00004ffe: SWAP2 00004fff: POP 00005000: JUMPDEST 00005001: POP 00005002: SWAP4 00005003: POP 00005004: POP 00005005: POP 00005006: POP 00005007: PUSH1 0x20 00005009: PUSH1 0x40 0000500b: MLOAD 0000500c: DUP1 0000500d: DUP4 0000500e: SUB 0000500f: DUP2 00005010: PUSH1 0x00 00005012: DUP8 00005013: DUP1 00005014: EXTCODESIZE 00005015: ISZERO 00005016: DUP1 00005017: ISZERO 00005018: PUSH2 0x5020 0000501b: JUMPI 0000501c: PUSH1 0x00 0000501e: DUP1 0000501f: REVERT 00005020: JUMPDEST 00005021: POP 00005022: GAS 00005023: CALL 00005024: ISZERO 00005025: DUP1 00005026: ISZERO 00005027: PUSH2 0x5034 0000502a: JUMPI 0000502b: RETURNDATASIZE 0000502c: PUSH1 0x00 0000502e: DUP1 0000502f: RETURNDATACOPY 00005030: RETURNDATASIZE 00005031: PUSH1 0x00 00005033: REVERT 00005034: JUMPDEST 00005035: POP 00005036: POP 00005037: POP 00005038: POP 00005039: PUSH1 0x40 0000503b: MLOAD 0000503c: RETURNDATASIZE 0000503d: PUSH1 0x20 0000503f: DUP2 00005040: LT 00005041: ISZERO 00005042: PUSH2 0x504a 00005045: JUMPI 00005046: PUSH1 0x00 00005048: DUP1 00005049: REVERT 0000504a: JUMPDEST 0000504b: DUP2 0000504c: ADD 0000504d: SWAP1 0000504e: DUP1 0000504f: DUP1 00005050: MLOAD 00005051: SWAP1 00005052: PUSH1 0x20 00005054: ADD 00005055: SWAP1 00005056: SWAP3 00005057: SWAP2 00005058: SWAP1 00005059: POP 0000505a: POP 0000505b: POP 0000505c: SWAP1 0000505d: POP 0000505e: DUP3 0000505f: GASPRICE 00005060: MUL 00005061: PUSH8 0x0de0b6b3a7640000 0000506a: ADD 0000506b: DUP2 0000506c: GT 0000506d: ISZERO 0000506e: PUSH2 0x507d 00005071: JUMPI 00005072: PUSH1 0x00 00005074: PUSH1 0x01 00005076: MUL 00005077: SWAP2 00005078: POP 00005079: PUSH2 0x5230 0000507c: JUMP 0000507d: JUMPDEST 0000507e: PUSH1 0x04 00005080: PUSH1 0x00 00005082: SWAP1 00005083: SLOAD 00005084: SWAP1 00005085: PUSH2 0x0100 00005088: EXP 00005089: SWAP1 0000508a: DIV 0000508b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000050a0: AND 000050a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000050b6: AND 000050b7: PUSH4 0xc51be90f 000050bc: DUP3 000050bd: PUSH1 0x00 000050bf: DUP9 000050c0: DUP9 000050c1: DUP9 000050c2: PUSH1 0x40 000050c4: MLOAD 000050c5: DUP7 000050c6: PUSH4 0xffffffff 000050cb: AND 000050cc: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000050ea: MUL 000050eb: DUP2 000050ec: MSTORE 000050ed: PUSH1 0x04 000050ef: ADD 000050f0: DUP1 000050f1: DUP6 000050f2: DUP2 000050f3: MSTORE 000050f4: PUSH1 0x20 000050f6: ADD 000050f7: DUP1 000050f8: PUSH1 0x20 000050fa: ADD 000050fb: DUP1 000050fc: PUSH1 0x20 000050fe: ADD 000050ff: DUP5 00005100: DUP2 00005101: MSTORE 00005102: PUSH1 0x20 00005104: ADD 00005105: DUP4 00005106: DUP2 00005107: SUB 00005108: DUP4 00005109: MSTORE 0000510a: DUP7 0000510b: DUP2 0000510c: DUP2 0000510d: MLOAD 0000510e: DUP2 0000510f: MSTORE 00005110: PUSH1 0x20 00005112: ADD 00005113: SWAP2 00005114: POP 00005115: DUP1 00005116: MLOAD 00005117: SWAP1 00005118: PUSH1 0x20 0000511a: ADD 0000511b: SWAP1 0000511c: DUP1 0000511d: DUP4 0000511e: DUP4 0000511f: PUSH1 0x00 00005121: JUMPDEST 00005122: DUP4 00005123: DUP2 00005124: LT 00005125: ISZERO 00005126: PUSH2 0x513c 00005129: JUMPI 0000512a: DUP1 0000512b: DUP3 0000512c: ADD 0000512d: MLOAD 0000512e: DUP2 0000512f: DUP5 00005130: ADD 00005131: MSTORE 00005132: PUSH1 0x20 00005134: DUP2 00005135: ADD 00005136: SWAP1 00005137: POP 00005138: PUSH2 0x5121 0000513b: JUMP 0000513c: JUMPDEST 0000513d: POP 0000513e: POP 0000513f: POP 00005140: POP 00005141: SWAP1 00005142: POP 00005143: SWAP1 00005144: DUP2 00005145: ADD 00005146: SWAP1 00005147: PUSH1 0x1f 00005149: AND 0000514a: DUP1 0000514b: ISZERO 0000514c: PUSH2 0x5169 0000514f: JUMPI 00005150: DUP1 00005151: DUP3 00005152: SUB 00005153: DUP1 00005154: MLOAD 00005155: PUSH1 0x01 00005157: DUP4 00005158: PUSH1 0x20 0000515a: SUB 0000515b: PUSH2 0x0100 0000515e: EXP 0000515f: SUB 00005160: NOT 00005161: AND 00005162: DUP2 00005163: MSTORE 00005164: PUSH1 0x20 00005166: ADD 00005167: SWAP2 00005168: POP 00005169: JUMPDEST 0000516a: POP 0000516b: DUP4 0000516c: DUP2 0000516d: SUB 0000516e: DUP3 0000516f: MSTORE 00005170: DUP6 00005171: DUP2 00005172: DUP2 00005173: MLOAD 00005174: DUP2 00005175: MSTORE 00005176: PUSH1 0x20 00005178: ADD 00005179: SWAP2 0000517a: POP 0000517b: DUP1 0000517c: MLOAD 0000517d: SWAP1 0000517e: PUSH1 0x20 00005180: ADD 00005181: SWAP1 00005182: DUP1 00005183: DUP4 00005184: DUP4 00005185: PUSH1 0x00 00005187: JUMPDEST 00005188: DUP4 00005189: DUP2 0000518a: LT 0000518b: ISZERO 0000518c: PUSH2 0x51a2 0000518f: JUMPI 00005190: DUP1 00005191: DUP3 00005192: ADD 00005193: MLOAD 00005194: DUP2 00005195: DUP5 00005196: ADD 00005197: MSTORE 00005198: PUSH1 0x20 0000519a: DUP2 0000519b: ADD 0000519c: SWAP1 0000519d: POP 0000519e: PUSH2 0x5187 000051a1: JUMP 000051a2: JUMPDEST 000051a3: POP 000051a4: POP 000051a5: POP 000051a6: POP 000051a7: SWAP1 000051a8: POP 000051a9: SWAP1 000051aa: DUP2 000051ab: ADD 000051ac: SWAP1 000051ad: PUSH1 0x1f 000051af: AND 000051b0: DUP1 000051b1: ISZERO 000051b2: PUSH2 0x51cf 000051b5: JUMPI 000051b6: DUP1 000051b7: DUP3 000051b8: SUB 000051b9: DUP1 000051ba: MLOAD 000051bb: PUSH1 0x01 000051bd: DUP4 000051be: PUSH1 0x20 000051c0: SUB 000051c1: PUSH2 0x0100 000051c4: EXP 000051c5: SUB 000051c6: NOT 000051c7: AND 000051c8: DUP2 000051c9: MSTORE 000051ca: PUSH1 0x20 000051cc: ADD 000051cd: SWAP2 000051ce: POP 000051cf: JUMPDEST 000051d0: POP 000051d1: SWAP7 000051d2: POP 000051d3: POP 000051d4: POP 000051d5: POP 000051d6: POP 000051d7: POP 000051d8: POP 000051d9: PUSH1 0x20 000051db: PUSH1 0x40 000051dd: MLOAD 000051de: DUP1 000051df: DUP4 000051e0: SUB 000051e1: DUP2 000051e2: DUP6 000051e3: DUP9 000051e4: DUP1 000051e5: EXTCODESIZE 000051e6: ISZERO 000051e7: DUP1 000051e8: ISZERO 000051e9: PUSH2 0x51f1 000051ec: JUMPI 000051ed: PUSH1 0x00 000051ef: DUP1 000051f0: REVERT 000051f1: JUMPDEST 000051f2: POP 000051f3: GAS 000051f4: CALL 000051f5: ISZERO 000051f6: DUP1 000051f7: ISZERO 000051f8: PUSH2 0x5205 000051fb: JUMPI 000051fc: RETURNDATASIZE 000051fd: PUSH1 0x00 000051ff: DUP1 00005200: RETURNDATACOPY 00005201: RETURNDATASIZE 00005202: PUSH1 0x00 00005204: REVERT 00005205: JUMPDEST 00005206: POP 00005207: POP 00005208: POP 00005209: POP 0000520a: POP 0000520b: PUSH1 0x40 0000520d: MLOAD 0000520e: RETURNDATASIZE 0000520f: PUSH1 0x20 00005211: DUP2 00005212: LT 00005213: ISZERO 00005214: PUSH2 0x521c 00005217: JUMPI 00005218: PUSH1 0x00 0000521a: DUP1 0000521b: REVERT 0000521c: JUMPDEST 0000521d: DUP2 0000521e: ADD 0000521f: SWAP1 00005220: DUP1 00005221: DUP1 00005222: MLOAD 00005223: SWAP1 00005224: PUSH1 0x20 00005226: ADD 00005227: SWAP1 00005228: SWAP3 00005229: SWAP2 0000522a: SWAP1 0000522b: POP 0000522c: POP 0000522d: POP 0000522e: SWAP2 0000522f: POP 00005230: JUMPDEST 00005231: POP 00005232: SWAP4 00005233: SWAP3 00005234: POP 00005235: POP 00005236: POP 00005237: JUMP 00005238: JUMPDEST 00005239: PUSH1 0x00 0000523b: DUP2 0000523c: EXTCODESIZE 0000523d: SWAP1 0000523e: POP 0000523f: SWAP2 00005240: SWAP1 00005241: POP 00005242: JUMP 00005243: JUMPDEST 00005244: PUSH1 0x00 00005246: PUSH2 0x524d 00005249: PUSH2 0x5310 0000524c: JUMP 0000524d: JUMPDEST 0000524e: SWAP1 0000524f: POP 00005250: SWAP2 00005251: SWAP1 00005252: POP 00005253: JUMP 00005254: JUMPDEST 00005255: PUSH1 0x00 00005257: DUP3 00005258: PUSH1 0x00 0000525a: ADD 0000525b: PUSH1 0x00 0000525d: DUP4 0000525e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005273: AND 00005274: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005289: AND 0000528a: DUP2 0000528b: MSTORE 0000528c: PUSH1 0x20 0000528e: ADD 0000528f: SWAP1 00005290: DUP2 00005291: MSTORE 00005292: PUSH1 0x20 00005294: ADD 00005295: PUSH1 0x00 00005297: KECCAK256 00005298: PUSH1 0x00 0000529a: PUSH2 0x0100 0000529d: EXP 0000529e: DUP2 0000529f: SLOAD 000052a0: DUP2 000052a1: PUSH1 0xff 000052a3: MUL 000052a4: NOT 000052a5: AND 000052a6: SWAP1 000052a7: DUP4 000052a8: ISZERO 000052a9: ISZERO 000052aa: MUL 000052ab: OR 000052ac: SWAP1 000052ad: SSTORE 000052ae: POP 000052af: POP 000052b0: POP 000052b1: JUMP 000052b2: JUMPDEST 000052b3: PUSH1 0x01 000052b5: DUP3 000052b6: PUSH1 0x00 000052b8: ADD 000052b9: PUSH1 0x00 000052bb: DUP4 000052bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000052d1: AND 000052d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000052e7: AND 000052e8: DUP2 000052e9: MSTORE 000052ea: PUSH1 0x20 000052ec: ADD 000052ed: SWAP1 000052ee: DUP2 000052ef: MSTORE 000052f0: PUSH1 0x20 000052f2: ADD 000052f3: PUSH1 0x00 000052f5: KECCAK256 000052f6: PUSH1 0x00 000052f8: PUSH2 0x0100 000052fb: EXP 000052fc: DUP2 000052fd: SLOAD 000052fe: DUP2 000052ff: PUSH1 0xff 00005301: MUL 00005302: NOT 00005303: AND 00005304: SWAP1 00005305: DUP4 00005306: ISZERO 00005307: ISZERO 00005308: MUL 00005309: OR 0000530a: SWAP1 0000530b: SSTORE 0000530c: POP 0000530d: POP 0000530e: POP 0000530f: JUMP 00005310: JUMPDEST 00005311: PUSH1 0x00 00005313: DUP1 00005314: PUSH2 0x5330 00005317: PUSH20 0x1d3b2638a7cc9f2cb3d298a3da7a90b67e5506ed 0000532c: PUSH2 0x5238 0000532f: JUMP 00005330: JUMPDEST 00005331: GT 00005332: ISZERO 00005333: PUSH2 0x53d2 00005336: JUMPI 00005337: PUSH20 0x1d3b2638a7cc9f2cb3d298a3da7a90b67e5506ed 0000534c: PUSH1 0x03 0000534e: PUSH1 0x00 00005350: PUSH2 0x0100 00005353: EXP 00005354: DUP2 00005355: SLOAD 00005356: DUP2 00005357: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000536c: MUL 0000536d: NOT 0000536e: AND 0000536f: SWAP1 00005370: DUP4 00005371: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005386: AND 00005387: MUL 00005388: OR 00005389: SWAP1 0000538a: SSTORE 0000538b: POP 0000538c: PUSH2 0x53c9 0000538f: PUSH1 0x40 00005391: DUP1 00005392: MLOAD 00005393: SWAP1 00005394: DUP2 00005395: ADD 00005396: PUSH1 0x40 00005398: MSTORE 00005399: DUP1 0000539a: PUSH1 0x0b 0000539c: DUP2 0000539d: MSTORE 0000539e: PUSH1 0x20 000053a0: ADD 000053a1: PUSH32 0x6574685f6d61696e6e6574000000000000000000000000000000000000000000 000053c2: DUP2 000053c3: MSTORE 000053c4: POP 000053c5: PUSH2 0x57a6 000053c8: JUMP 000053c9: JUMPDEST 000053ca: PUSH1 0x01 000053cc: SWAP1 000053cd: POP 000053ce: PUSH2 0x57a3 000053d1: JUMP 000053d2: JUMPDEST 000053d3: PUSH1 0x00 000053d5: PUSH2 0x53f1 000053d8: PUSH20 0xc03a2615d5efaf5f49f60b7bb6583eaec212fdf1 000053ed: PUSH2 0x5238 000053f0: JUMP 000053f1: JUMPDEST 000053f2: GT 000053f3: ISZERO 000053f4: PUSH2 0x5493 000053f7: JUMPI 000053f8: PUSH20 0xc03a2615d5efaf5f49f60b7bb6583eaec212fdf1 0000540d: PUSH1 0x03 0000540f: PUSH1 0x00 00005411: PUSH2 0x0100 00005414: EXP 00005415: DUP2 00005416: SLOAD 00005417: DUP2 00005418: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000542d: MUL 0000542e: NOT 0000542f: AND 00005430: SWAP1 00005431: DUP4 00005432: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005447: AND 00005448: MUL 00005449: OR 0000544a: SWAP1 0000544b: SSTORE 0000544c: POP 0000544d: PUSH2 0x548a 00005450: PUSH1 0x40 00005452: DUP1 00005453: MLOAD 00005454: SWAP1 00005455: DUP2 00005456: ADD 00005457: PUSH1 0x40 00005459: MSTORE 0000545a: DUP1 0000545b: PUSH1 0x0c 0000545d: DUP2 0000545e: MSTORE 0000545f: PUSH1 0x20 00005461: ADD 00005462: PUSH32 0x6574685f726f707374656e330000000000000000000000000000000000000000 00005483: DUP2 00005484: MSTORE 00005485: POP 00005486: PUSH2 0x57a6 00005489: JUMP 0000548a: JUMPDEST 0000548b: PUSH1 0x01 0000548d: SWAP1 0000548e: POP 0000548f: PUSH2 0x57a3 00005492: JUMP 00005493: JUMPDEST 00005494: PUSH1 0x00 00005496: PUSH2 0x54b2 00005499: PUSH20 0xb7a07bcf2ba2f2703b24c0691b5278999c59ac7e 000054ae: PUSH2 0x5238 000054b1: JUMP 000054b2: JUMPDEST 000054b3: GT 000054b4: ISZERO 000054b5: PUSH2 0x5554 000054b8: JUMPI 000054b9: PUSH20 0xb7a07bcf2ba2f2703b24c0691b5278999c59ac7e 000054ce: PUSH1 0x03 000054d0: PUSH1 0x00 000054d2: PUSH2 0x0100 000054d5: EXP 000054d6: DUP2 000054d7: SLOAD 000054d8: DUP2 000054d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000054ee: MUL 000054ef: NOT 000054f0: AND 000054f1: SWAP1 000054f2: DUP4 000054f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005508: AND 00005509: MUL 0000550a: OR 0000550b: SWAP1 0000550c: SSTORE 0000550d: POP 0000550e: PUSH2 0x554b 00005511: PUSH1 0x40 00005513: DUP1 00005514: MLOAD 00005515: SWAP1 00005516: DUP2 00005517: ADD 00005518: PUSH1 0x40 0000551a: MSTORE 0000551b: DUP1 0000551c: PUSH1 0x09 0000551e: DUP2 0000551f: MSTORE 00005520: PUSH1 0x20 00005522: ADD 00005523: PUSH32 0x6574685f6b6f76616e0000000000000000000000000000000000000000000000 00005544: DUP2 00005545: MSTORE 00005546: POP 00005547: PUSH2 0x57a6 0000554a: JUMP 0000554b: JUMPDEST 0000554c: PUSH1 0x01 0000554e: SWAP1 0000554f: POP 00005550: PUSH2 0x57a3 00005553: JUMP 00005554: JUMPDEST 00005555: PUSH1 0x00 00005557: PUSH2 0x5573 0000555a: PUSH20 0x146500cfd35b22e4a392fe0adc06de1a1368ed48 0000556f: PUSH2 0x5238 00005572: JUMP 00005573: JUMPDEST 00005574: GT 00005575: ISZERO 00005576: PUSH2 0x5615 00005579: JUMPI 0000557a: PUSH20 0x146500cfd35b22e4a392fe0adc06de1a1368ed48 0000558f: PUSH1 0x03 00005591: PUSH1 0x00 00005593: PUSH2 0x0100 00005596: EXP 00005597: DUP2 00005598: SLOAD 00005599: DUP2 0000559a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000055af: MUL 000055b0: NOT 000055b1: AND 000055b2: SWAP1 000055b3: DUP4 000055b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000055c9: AND 000055ca: MUL 000055cb: OR 000055cc: SWAP1 000055cd: SSTORE 000055ce: POP 000055cf: PUSH2 0x560c 000055d2: PUSH1 0x40 000055d4: DUP1 000055d5: MLOAD 000055d6: SWAP1 000055d7: DUP2 000055d8: ADD 000055d9: PUSH1 0x40 000055db: MSTORE 000055dc: DUP1 000055dd: PUSH1 0x0b 000055df: DUP2 000055e0: MSTORE 000055e1: PUSH1 0x20 000055e3: ADD 000055e4: PUSH32 0x6574685f72696e6b656279000000000000000000000000000000000000000000 00005605: DUP2 00005606: MSTORE 00005607: POP 00005608: PUSH2 0x57a6 0000560b: JUMP 0000560c: JUMPDEST 0000560d: PUSH1 0x01 0000560f: SWAP1 00005610: POP 00005611: PUSH2 0x57a3 00005614: JUMP 00005615: JUMPDEST 00005616: PUSH1 0x00 00005618: PUSH2 0x5634 0000561b: PUSH20 0x6f485c8bf6fc43ea212e93bbf8ce046c7f1cb475 00005630: PUSH2 0x5238 00005633: JUMP 00005634: JUMPDEST 00005635: GT 00005636: ISZERO 00005637: PUSH2 0x5698 0000563a: JUMPI 0000563b: PUSH20 0x6f485c8bf6fc43ea212e93bbf8ce046c7f1cb475 00005650: PUSH1 0x03 00005652: PUSH1 0x00 00005654: PUSH2 0x0100 00005657: EXP 00005658: DUP2 00005659: SLOAD 0000565a: DUP2 0000565b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005670: MUL 00005671: NOT 00005672: AND 00005673: SWAP1 00005674: DUP4 00005675: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000568a: AND 0000568b: MUL 0000568c: OR 0000568d: SWAP1 0000568e: SSTORE 0000568f: POP 00005690: PUSH1 0x01 00005692: SWAP1 00005693: POP 00005694: PUSH2 0x57a3 00005697: JUMP 00005698: JUMPDEST 00005699: PUSH1 0x00 0000569b: PUSH2 0x56b7 0000569e: PUSH20 0x20e12a1f859b3feae5fb2a0a32c18f5a65555bbf 000056b3: PUSH2 0x5238 000056b6: JUMP 000056b7: JUMPDEST 000056b8: GT 000056b9: ISZERO 000056ba: PUSH2 0x571b 000056bd: JUMPI 000056be: PUSH20 0x20e12a1f859b3feae5fb2a0a32c18f5a65555bbf 000056d3: PUSH1 0x03 000056d5: PUSH1 0x00 000056d7: PUSH2 0x0100 000056da: EXP 000056db: DUP2 000056dc: SLOAD 000056dd: DUP2 000056de: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000056f3: MUL 000056f4: NOT 000056f5: AND 000056f6: SWAP1 000056f7: DUP4 000056f8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000570d: AND 0000570e: MUL 0000570f: OR 00005710: SWAP1 00005711: SSTORE 00005712: POP 00005713: PUSH1 0x01 00005715: SWAP1 00005716: POP 00005717: PUSH2 0x57a3 0000571a: JUMP 0000571b: JUMPDEST 0000571c: PUSH1 0x00 0000571e: PUSH2 0x573a 00005721: PUSH20 0x51efaf4c8b3c9afbd5ab9f4bbc82784ab6ef8faa 00005736: PUSH2 0x5238 00005739: JUMP 0000573a: JUMPDEST 0000573b: GT 0000573c: ISZERO 0000573d: PUSH2 0x579e 00005740: JUMPI 00005741: PUSH20 0x51efaf4c8b3c9afbd5ab9f4bbc82784ab6ef8faa 00005756: PUSH1 0x03 00005758: PUSH1 0x00 0000575a: PUSH2 0x0100 0000575d: EXP 0000575e: DUP2 0000575f: SLOAD 00005760: DUP2 00005761: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005776: MUL 00005777: NOT 00005778: AND 00005779: SWAP1 0000577a: DUP4 0000577b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005790: AND 00005791: MUL 00005792: OR 00005793: SWAP1 00005794: SSTORE 00005795: POP 00005796: PUSH1 0x01 00005798: SWAP1 00005799: POP 0000579a: PUSH2 0x57a3 0000579d: JUMP 0000579e: JUMPDEST 0000579f: PUSH1 0x00 000057a1: SWAP1 000057a2: POP 000057a3: JUMPDEST 000057a4: SWAP1 000057a5: JUMP 000057a6: JUMPDEST 000057a7: DUP1 000057a8: PUSH1 0x05 000057aa: SWAP1 000057ab: DUP1 000057ac: MLOAD 000057ad: SWAP1 000057ae: PUSH1 0x20 000057b0: ADD 000057b1: SWAP1 000057b2: PUSH2 0x57bc 000057b5: SWAP3 000057b6: SWAP2 000057b7: SWAP1 000057b8: PUSH2 0x57c0 000057bb: JUMP 000057bc: JUMPDEST 000057bd: POP 000057be: POP 000057bf: JUMP 000057c0: JUMPDEST 000057c1: DUP3 000057c2: DUP1 000057c3: SLOAD 000057c4: PUSH1 0x01 000057c6: DUP2 000057c7: PUSH1 0x01 000057c9: AND 000057ca: ISZERO 000057cb: PUSH2 0x0100 000057ce: MUL 000057cf: SUB 000057d0: AND 000057d1: PUSH1 0x02 000057d3: SWAP1 000057d4: DIV 000057d5: SWAP1 000057d6: PUSH1 0x00 000057d8: MSTORE 000057d9: PUSH1 0x20 000057db: PUSH1 0x00 000057dd: KECCAK256 000057de: SWAP1 000057df: PUSH1 0x1f 000057e1: ADD 000057e2: PUSH1 0x20 000057e4: SWAP1 000057e5: DIV 000057e6: DUP2 000057e7: ADD 000057e8: SWAP3 000057e9: DUP3 000057ea: PUSH1 0x1f 000057ec: LT 000057ed: PUSH2 0x5801 000057f0: JUMPI 000057f1: DUP1 000057f2: MLOAD 000057f3: PUSH1 0xff 000057f5: NOT 000057f6: AND 000057f7: DUP4 000057f8: DUP1 000057f9: ADD 000057fa: OR 000057fb: DUP6 000057fc: SSTORE 000057fd: PUSH2 0x582f 00005800: JUMP 00005801: JUMPDEST 00005802: DUP3 00005803: DUP1 00005804: ADD 00005805: PUSH1 0x01 00005807: ADD 00005808: DUP6 00005809: SSTORE 0000580a: DUP3 0000580b: ISZERO 0000580c: PUSH2 0x582f 0000580f: JUMPI 00005810: SWAP2 00005811: DUP3 00005812: ADD 00005813: JUMPDEST 00005814: DUP3 00005815: DUP2 00005816: GT 00005817: ISZERO 00005818: PUSH2 0x582e 0000581b: JUMPI 0000581c: DUP3 0000581d: MLOAD 0000581e: DUP3 0000581f: SSTORE 00005820: SWAP2 00005821: PUSH1 0x20 00005823: ADD 00005824: SWAP2 00005825: SWAP1 00005826: PUSH1 0x01 00005828: ADD 00005829: SWAP1 0000582a: PUSH2 0x5813 0000582d: JUMP 0000582e: JUMPDEST 0000582f: JUMPDEST 00005830: POP 00005831: SWAP1 00005832: POP 00005833: PUSH2 0x583c 00005836: SWAP2 00005837: SWAP1 00005838: PUSH2 0x5840 0000583b: JUMP 0000583c: JUMPDEST 0000583d: POP 0000583e: SWAP1 0000583f: JUMP 00005840: JUMPDEST 00005841: PUSH2 0x5862 00005844: SWAP2 00005845: SWAP1 00005846: JUMPDEST 00005847: DUP1 00005848: DUP3 00005849: GT 0000584a: ISZERO 0000584b: PUSH2 0x585e 0000584e: JUMPI 0000584f: PUSH1 0x00 00005851: DUP2 00005852: PUSH1 0x00 00005854: SWAP1 00005855: SSTORE 00005856: POP 00005857: PUSH1 0x01 00005859: ADD 0000585a: PUSH2 0x5846 0000585d: JUMP 0000585e: JUMPDEST 0000585f: POP 00005860: SWAP1 00005861: JUMP 00005862: JUMPDEST 00005863: SWAP1 00005864: JUMP 00005865: STOP 00005866: LOG1 00005867: PUSH6 0x627a7a723058 0000586e: KECCAK256 0000586f: UNKNOWN(0xAF) 00005870: UNKNOWN(0xD6) 00005871: TSTORE 00005872: PUSH21 0xe13119b5c0d39eb1872cf6895466fd4091c65f2bad 00005888: LOG3 00005889: CALLDATASIZE 0000588a: REVERT 0000588b: CALLVALUE 0000588c: UNKNOWN(0xAE) 0000588d: UNKNOWN(0x22) 0000588e: CREATE2 0000588f: STOP 00005890: UNKNOWN(0x29)
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | cast | SELFDESTRUCT present | 85 | no | — |
viewevidence_json{
"notes": "selfdestruct can remove contract code and send funds; review reachability",
"selfdestruct_count": 1
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0x1461a78158dfeddd90f7686f6e53daa9dbfdf31117a1b813eeef460c64b8046c
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0x1461a78158dfeddd90f7686f6e53daa9dbfdf31117a1b813eeef460c64b8046c",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01a8d0a5",
"selector": "0x01a8d0a5",
"calldata_variants": [
"0x01a8d0a5",
"0x01a8d0a50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02d412c3",
"selector": "0x02d412c3",
"calldata_variants": [
"0x02d412c3",
"0x02d412c30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0988ca8c",
"selector": "0x0988ca8c",
"calldata_variants": [
"0x0988ca8c",
"0x0988ca8c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0c4be888",
"selector": "0x0c4be888",
"calldata_variants": [
"0x0c4be888",
"0x0c4be8880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x110c75fb",
"selector": "0x110c75fb",
"calldata_variants": [
"0x110c75fb",
"0x110c75fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12cef27a",
"selector": "0x12cef27a",
"calldata_variants": [
"0x12cef27a",
"0x12cef27a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14d15059",
"selector": "0x14d15059",
"calldata_variants": [
"0x14d15059",
"0x14d150590000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 6532,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7052,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7406,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7800,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8507,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8794,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8954,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9063,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9327,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 10756,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11041,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11217,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11474,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11658,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11982,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12515,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12682,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"selfdestruct_count": 1
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0x1461a78158dfeddd90f7686f6e53daa9dbfdf31117a1b813eeef460c64b8046c
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0x1461a78158dfeddd90f7686f6e53daa9dbfdf31117a1b813eeef460c64b8046c",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01a8d0a5",
"selector": "0x01a8d0a5",
"calldata_variants": [
"0x01a8d0a5",
"0x01a8d0a50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02d412c3",
"selector": "0x02d412c3",
"calldata_variants": [
"0x02d412c3",
"0x02d412c30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0988ca8c",
"selector": "0x0988ca8c",
"calldata_variants": [
"0x0988ca8c",
"0x0988ca8c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0c4be888",
"selector": "0x0c4be888",
"calldata_variants": [
"0x0c4be888",
"0x0c4be8880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x110c75fb",
"selector": "0x110c75fb",
"calldata_variants": [
"0x110c75fb",
"0x110c75fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12cef27a",
"selector": "0x12cef27a",
"calldata_variants": [
"0x12cef27a",
"0x12cef27a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14d15059",
"selector": "0x14d15059",
"calldata_variants": [
"0x14d15059",
"0x14d150590000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 1
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x919804c296a9f7a52b702039b89d4d1dfac639e9a79af6cca7599ff260475414
call_targets:
0xe29bbc8fcd866dfff36dcac6b006a3a97adba9c9
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x919804c296a9f7a52b702039b89d4d1dfac639e9a79af6cca7599ff260475414",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe29bbc8fcd866dfff36dcac6b006a3a97adba9c9"
],
"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": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01a8d0a5",
"selector": "0x01a8d0a5",
"calldata_variants": [
"0x01a8d0a5",
"0x01a8d0a50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02d412c3",
"selector": "0x02d412c3",
"calldata_variants": [
"0x02d412c3",
"0x02d412c30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0988ca8c",
"selector": "0x0988ca8c",
"calldata_variants": [
"0x0988ca8c",
"0x0988ca8c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0c4be888",
"selector": "0x0c4be888",
"calldata_variants": [
"0x0c4be888",
"0x0c4be8880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x110c75fb",
"selector": "0x110c75fb",
"calldata_variants": [
"0x110c75fb",
"0x110c75fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12cef27a",
"selector": "0x12cef27a",
"calldata_variants": [
"0x12cef27a",
"0x12cef27a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14d15059",
"selector": "0x14d15059",
"calldata_variants": [
"0x14d15059",
"0x14d150590000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5411,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 12430,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14686,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 19,
"guards_detected": [
{
"pc": 6532,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7052,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7406,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7800,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8507,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8794,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8954,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9063,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9327,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 10756,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11041,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11217,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11474,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11658,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11982,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12515,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12682,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 19
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x919804c296a9f7a52b702039b89d4d1dfac639e9a79af6cca7599ff260475414
call_targets:
0xe29bbc8fcd866dfff36dcac6b006a3a97adba9c9
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x919804c296a9f7a52b702039b89d4d1dfac639e9a79af6cca7599ff260475414",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe29bbc8fcd866dfff36dcac6b006a3a97adba9c9"
],
"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": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01a8d0a5",
"selector": "0x01a8d0a5",
"calldata_variants": [
"0x01a8d0a5",
"0x01a8d0a50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02d412c3",
"selector": "0x02d412c3",
"calldata_variants": [
"0x02d412c3",
"0x02d412c30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0988ca8c",
"selector": "0x0988ca8c",
"calldata_variants": [
"0x0988ca8c",
"0x0988ca8c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0c4be888",
"selector": "0x0c4be888",
"calldata_variants": [
"0x0c4be888",
"0x0c4be8880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x110c75fb",
"selector": "0x110c75fb",
"calldata_variants": [
"0x110c75fb",
"0x110c75fb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12cef27a",
"selector": "0x12cef27a",
"calldata_variants": [
"0x12cef27a",
"0x12cef27a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14d15059",
"selector": "0x14d15059",
"calldata_variants": [
"0x14d15059",
"0x14d150590000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5411,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 12430,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14686,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 19,
"guards_detected": [
{
"pc": 6532,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7052,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7406,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 7800,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8507,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8794,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8954,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9063,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9327,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 10756,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11041,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11217,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11474,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11658,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 11982,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12515,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 12682,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 1
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 19
}
|
| 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": 20
}
|