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

Analysis Run

cc7ab8a4-5254-4342-a9c5-0fe7ccd9475b

complete
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 6:33 AM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31254 report.consolidate complete 1 / 1 3 months ago
110522 artifact.fetch complete 1 / 3 1 week ago
110523 tool.cast_disasm complete 1 / 3 1 week ago
110524 analysis.bundle complete 1 / 3 1 week ago
110525 capability.graph complete 1 / 3 1 week ago
110526 detector.run complete 1 / 3 1 week ago
110527 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: no

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit path identified from bytecode-only analysis of BYTECODE_BUNDLE.txt.
View stderr
[codex:803859] OpenAI Codex v0.77.0 (research preview)
[codex:803859] --------
[codex:803859] workdir: /tmp/codex-multi-lyvyij8_
[codex:803859] model: gpt-5.2-codex
[codex:803859] provider: openai
[codex:803859] approval: never
[codex:803859] sandbox: read-only
[codex:803859] reasoning effort: xhigh
[codex:803859] reasoning summaries: auto
[codex:803859] session id: 019b7d64-4df9-7351-97c5-d6b29d1405e1
[codex:803859] --------
[codex:803859] user
[codex:803859] 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:803859] 
[codex:803859] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:803859] 
[codex:803859] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:803859] - Gas inefficiency, code quality, or best practices
[codex:803859] - Theoretical vulnerabilities without a clear extraction path
[codex:803859] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:803859] - Issues requiring social engineering or off-chain coordination
[codex:803859] 
[codex:803859] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:803859] - CALL/DELEGATECALL with controllable destination or calldata
[codex:803859] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:803859] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:803859] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:803859] - External calls before state updates (reentrancy)
[codex:803859] - SELFDESTRUCT with controllable beneficiary
[codex:803859] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:803859] 
[codex:803859] For each finding, you MUST explain:
[codex:803859] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:803859] 2. The concrete sequence of transactions to extract value
[codex:803859] 3. Why you believe this is exploitable (not just suspicious)
[codex:803859] 
[codex:803859] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:803859] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:803859] 
[codex:803859] Output MUST be valid JSON matching the provided schema.
[codex:803859] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:803859] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:803859] mcp startup: no servers
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Preparing to read file contents**
[codex:803859] exec
[codex:803859] /bin/bash -lc ls in /tmp/codex-multi-lyvyij8_ succeeded in 5ms:
[codex:803859] BYTECODE_BUNDLE.txt
[codex:803859] codex-output-schema.json
[codex:803859] exec
[codex:803859] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-lyvyij8_ succeeded in 5ms:
[codex:803859] Runtime bytecode bundle for best-effort auditing.
[codex:803859] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:803859] 
[codex:803859] FILE: runtime_bytecode.hex
[codex:803859] 0x60806040526004361061030e5760003560e01c80630116aa521461045357806302484ceb14610473578063025e7c27146104b05780631220c6ed146104d057806314ab0bbc1461050057806314bfd6d01461053b5780631ebf05511461055b5780631fa4d1ba1461059357806322c8f6cd146105b35780632708d2a2146105d35780632d345670146105e85780632f2ba2c314610608578063303006671461062a5780633343c8f71461063d5780633c12375e1461065d5780633e5e5411146106965780633ed02116146106c85780634279590a14610703578063435b5cdc1461072357806343755ed11461075b578063486d2e6c1461077b5780634e71e0c8146107b657806352650d6d146107cb5780635f3476ee146107eb57806360dc87001461080b578063626cb0521461082b5780636782fc9d146108585780636d151101146108785780636daadb11146108985780636fda62ed146108b8578063749008ab146108d85780637c9c9f16146108f85780637e926b4b1461091857806385242fba1461093857806386a0711214610958578063877cac55146109785780638794b69d146109985780638818024e146109ad578063886b5f53146109c957806389c06cb7146109e95780638b35c07a14610a165780638e5ee45714610a365780639043684a14610a565780639bed25d814610a76578063a299349114610a8b578063a4298ab614610aab578063a58edf0914610ac0578063a620caf414610ae0578063a762eb8c14610b00578063be19d11f14610b36578063c38c581314610b4b578063c462342c14610b6b578063cb19735e14610b8b578063cb819df914610ba1578063cc22678e14610bc1578063cf2fd14d14610bd6578063d6cfd38d14610bf6578063d92e233d14610cc3578063db1a987814610cd8578063dd420fa014610cf8578063df2981b314610d0d578063dfbe0ece14610d20578063e1c7392a14610d40578063e3aabeeb14610d55578063e442984514610d75578063e45deb9814610d95578063f2fde38b14610db5578063f3e41b1014610dd5578063f6b34db314610df55761044b565b3661044b5760408051608080820183526102ff60e21b828401908152630180808160e11b606080850191909152908352835160c0810185526009548152600060208083018290523383880181905293830184905234948301948552865180820190975290865260a0820195909552938301849052925190516103909190610e15565b6103a281600001518260200151610ec6565b60208101518051608090910151604051600080516020614fb9833981519152926103ce92600192613ed6565b60405180910390a16006546040516312b50f7360e01b81526001600160a01b03909116906312b50f7390610406908490600401613f56565b6020604051808303816000875af1158015610425573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104499190613ff6565b005b6104496110fa565b34801561045f57600080fd5b5061044961046e36600461402a565b61110c565b34801561047f57600080fd5b50600754610493906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156104bc57600080fd5b506104936104cb366004614045565b61117a565b3480156104dc57600080fd5b506104f06104eb36600461402a565b6111a4565b60405190151581526020016104a7565b34801561050c57600080fd5b5061052d61051b366004614045565b600b6020526000908152604090205481565b6040519081526020016104a7565b34801561054757600080fd5b50610493610556366004614045565b6111ed565b34801561056757600080fd5b5061052d610576366004614076565b600c60209081526000928352604080842090915290825290205481565b34801561059f57600080fd5b506104496105ae3660046141d8565b6111fd565b3480156105bf57600080fd5b50600654610493906001600160a01b031681565b3480156105df57600080fd5b506104f06112e9565b3480156105f457600080fd5b506104f061060336600461402a565b611334565b34801561061457600080fd5b5061061d611368565b6040516104a79190614309565b6104f0610638366004614472565b6113ca565b34801561064957600080fd5b506104496106583660046141d8565b6114c5565b34801561066957600080fd5b5060005461067d9062010000900460601b81565b6040516001600160601b031990911681526020016104a7565b3480156106a257600080fd5b506106af6102ff60e21b81565b6040516001600160e01b031990911681526020016104a7565b3480156106d457600080fd5b506104f06106e33660046144f0565b600d60209081526000928352604080842090915290825290205460ff1681565b34801561070f57600080fd5b5061044961071e36600461455e565b6115b1565b34801561072f57600080fd5b5061052d61073e3660046145f7565b601060209081526000928352604080842090915290825290205481565b34801561076757600080fd5b5061044961077636600461461a565b61169a565b34801561078757600080fd5b506104f061079636600461467d565b600e60209081526000928352604080842090915290825290205460ff1681565b3480156107c257600080fd5b506104f0611730565b3480156107d757600080fd5b506104496107e6366004614045565b611774565b3480156107f757600080fd5b506104f061080636600461469f565b611781565b34801561081757600080fd5b50610449610826366004614745565b6117a8565b34801561083757600080fd5b5061052d61084636600461402a565b600f6020526000908152604090205481565b34801561086457600080fd5b5061044961087336600461479e565b61180a565b34801561088457600080fd5b506104f061089336600461402a565b6118b5565b3480156108a457600080fd5b506104496108b336600461402a565b6118f2565b3480156108c457600080fd5b506104496108d3366004614880565b611923565b3480156108e457600080fd5b50600854610493906001600160a01b031681565b34801561090457600080fd5b506104496109133660046148eb565b61199a565b34801561092457600080fd5b506104f0610933366004614915565b6119be565b34801561094457600080fd5b506104f0610953366004614932565b611a79565b34801561096457600080fd5b50610449610973366004614966565b611a8c565b34801561098457600080fd5b506104496109933660046149a7565b611bac565b3480156109a457600080fd5b5061061d611c72565b3480156109b957600080fd5b5061052d6001600160f81b031981565b3480156109d557600080fd5b506104496109e436600461402a565b611cd2565b3480156109f557600080fd5b5061052d610a0436600461402a565b60016020526000908152604090205481565b348015610a2257600080fd5b50610449610a3136600461402a565b611cfc565b348015610a4257600080fd5b50610449610a5136600461461a565b611d2a565b348015610a6257600080fd5b50610449610a713660046149a7565b611dc0565b348015610a8257600080fd5b506104f061211f565b348015610a9757600080fd5b50610449610aa6366004614a32565b612172565b348015610ab757600080fd5b5061061d61229a565b348015610acc57600080fd5b50610493610adb366004614045565b6122fa565b348015610aec57600080fd5b50610449610afb36600461467d565b61230a565b348015610b0c57600080fd5b5061052d610b1b36600461402a565b6001600160a01b031660009081526001602052604090205490565b348015610b4257600080fd5b506104f061234d565b348015610b5757600080fd5b506104f0610b6636600461402a565b612374565b348015610b7757600080fd5b50610449610b86366004614a68565b6123a8565b348015610b9757600080fd5b5061052d60095481565b348015610bad57600080fd5b50610449610bbc36600461402a565b612441565b348015610bcd57600080fd5b506104f061246b565b348015610be257600080fd5b506104f0610bf136600461402a565b612492565b348015610c0257600080fd5b50610cb0610c11366004614045565b600a6020908152600091825260409182902082516060808201855282546001600160801b038082168452600160801b91829004811684870152600185015484880152865192830187526002850154808216845291909104169381019390935260038201549383019390935260048101546005820154600683015460079093015460ff8316936001600160a01b0361010090940484169392831692169087565b6040516104a79796959493929190614acd565b348015610ccf57600080fd5b50610493600081565b348015610ce457600080fd5b50610449610cf336600461455e565b6124cf565b348015610d0457600080fd5b5061061d6125b1565b610449610d1b36600461467d565b612611565b348015610d2c57600080fd5b50610493610d3b366004614045565b612657565b348015610d4c57600080fd5b50610449612667565b348015610d6157600080fd5b50610449610d70366004614b28565b61285d565b348015610d8157600080fd5b50610449610d90366004614880565b6128da565b348015610da157600080fd5b506104f0610db036600461402a565b612979565b348015610dc157600080fd5b506104f0610dd036600461402a565b6129b6565b348015610de157600080fd5b50610449610df0366004614a32565b612a3c565b348015610e0157600080fd5b50610449610e1036600461467d565b612b65565b6000828152600a6020908152604091829020825160608101845260028201546001600160801b03808216808452600160801b9092041693820193909352600390910154928101929092528210801590610e7b575080602001516001600160801b03168211155b610ec15760405162461bcd60e51b81526020600482015260126024820152717661756c7420616d6f756e7420636865636b60701b60448201526064015b60405180910390fd5b505050565b8051610ed29083612b9d565b8051610edd90612c07565b8051610eee90338360800151612c5e565b6020820151610f0d906001600160801b0319166202010160e81b612d10565b15610f16575050565b6020820151610f36906001600160801b031916630180808160e11b612d10565b15610f3f575050565b6020820151610f5e906001600160801b03191662c0404160e21b612d10565b15610fa55780516000908152600e6020908152604080832082850151845290915290205460ff16610fa15760405162461bcd60e51b8152600401610eb890614b5c565b5050565b6020820151610fc6906001600160801b03191664040101020560d81b612d10565b15610fcf575050565b6020820151610ff0906001600160801b03191664040101040560d81b612d10565b156110335780516000908152600e6020908152604080832082850151845290915290205460ff16610fa15760405162461bcd60e51b8152600401610eb890614b5c565b6020820151611053906001600160801b031916638020204160db1b612d10565b1561105c575050565b602082015161107c906001600160801b031916638020208160db1b612d10565b156110bf5780516000908152600e6020908152604080832082850151845290915290205460ff16610fa15760405162461bcd60e51b8152600401610eb890614b5c565b60405162461bcd60e51b815260206004820152601060248201526f5661756c745f7265715f6e617469766560801b6044820152606401610eb8565b61110a611105612d22565b612d31565b565b611114612d55565b6007546001600160a01b03166111585760405162461bcd60e51b815260206004820152600960248201526877626663207a65726f60b81b6044820152606401610eb8565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6002818154811061118a57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006111b2335b6003612dc3565b6111ce5760405162461bcd60e51b8152600401610eb890614b87565b6111d782612ded565b6111e46002836003612e31565b5060015b919050565b6004818154811061118a57600080fd5b611205612d55565b60005b8251811015610ec15760005b82828151811061122657611226614bab565b6020026020010151518110156112d6576000600d600086858151811061124e5761124e614bab565b60200260200101518152602001908152602001600020600085858151811061127857611278614bab565b6020026020010151848151811061129157611291614bab565b6020908102919091018101516001600160801b0319168252810191909152604001600020805460ff1916911515919091179055806112ce81614bd7565b915050611214565b50806112e181614bd7565b915050611208565b60006112f7335b6002612dc3565b6113135760405162461bcd60e51b8152600401610eb890614bf0565b6113206004336001612e31565b61132d6005336002612e99565b5060015b90565b600061133f336111ab565b61135b5760405162461bcd60e51b8152600401610eb890614b87565b6111e46004836001612e99565b606060058054806020026020016040519081016040528092919081815260200182805480156113c057602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116113a2575b5050505050905090565b602081015180516080909101516000916113e391610e15565b6113f582600001518360200151610ec6565b60208201518051608090910151604051600080516020614fb98339815191529261142192600192613ed6565b60405180910390a1602082015180516080909101516114409190612f01565b6020830151608001526006546040516312b50f7360e01b81526001600160a01b03909116906312b50f7390611479908590600401613f56565b6020604051808303816000875af1158015611498573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114bc9190613ff6565b50600192915050565b6114cd612d55565b60005b8251811015610ec15760005b8282815181106114ee576114ee614bab565b60200260200101515181101561159e576001600d600086858151811061151657611516614bab565b60200260200101518152602001908152602001600020600085858151811061154057611540614bab565b6020026020010151848151811061155957611559614bab565b6020908102919091018101516001600160801b0319168252810191909152604001600020805460ff19169115159190911790558061159681614bd7565b9150506114dc565b50806115a981614bd7565b9150506114d0565b6115b9612d55565b60005b83811015611693578282828181106115d6576115d6614bab565b905060600201600a60008787858181106115f2576115f2614bab565b90506020020135815260200190815260200160002060020181816116169190614c31565b9050507f51d59f78ee8211b3edc94eb20901616991e8c0282b67fa431a20b21410978ed285858381811061164c5761164c614bab565b9050602002013584848481811061166557611665614bab565b905060600201604051611679929190614cb7565b60405180910390a18061168b81614bd7565b9150506115bc565b5050505050565b6116a2612d55565b60005b8251811015610ec1576001600e60008584815181106116c6576116c6614bab565b6020026020010151815260200190815260200160002060008484815181106116f0576116f0614bab565b6020026020010151815260200190815260200160002060006101000a81548160ff021916908315150217905550808061172890614bd7565b9150506116a5565b600061173e335b6004612dc3565b61175a5760405162461bcd60e51b8152600401610eb890614ccb565b6117676002336003612e31565b61132d6003336004612e99565b61177c612d55565b600955565b600061178b612d55565b81516000908152600b602052604090205482526114bc838361301d565b6117b0612d55565b60005b8251811015610ec1576117f88382815181106117d1576117d1614bab565b60200260200101518383815181106117eb576117eb614bab565b6020026020010151613192565b8061180281614bd7565b9150506117b3565b611812612d55565b60005b83518110156118af5781818151811061183057611830614bab565b6020026020010151600c600086848151811061184e5761184e614bab565b60200260200101518152602001908152602001600020600085848151811061187857611878614bab565b6020908102919091018101516001600160e01b031916825281019190915260400160002055806118a781614bd7565b915050611815565b50505050565b60006118c0336111ab565b6118dc5760405162461bcd60e51b8152600401610eb890614b87565b6118e582612ded565b6111e46002836003612e99565b6118fb336111ab565b6119175760405162461bcd60e51b8152600401610eb890614b87565b61192081613205565b50565b61192b612d55565b611933613245565b5060005b838110156116935782828281811061195157611951614bab565b90506020020135600b600087878581811061196e5761196e614bab565b90506020020135815260200190815260200160002081905550808061199290614bd7565b915050611937565b6119a2612d55565b6001600160a01b039091166000908152600f6020526040902055565b60006119c9336111ab565b6119e55760405162461bcd60e51b8152600401610eb890614b87565b81611a6b5760006001600160a01b03166003600081548110611a0957611a09614bab565b6000918252602090912001546001600160a01b031603611a6b5760405162461bcd60e51b815260206004820181905260248201527f666174616c3a205468657265206973206e6f2070656e64696e67206f776e65726044820152606401610eb8565b6111e46002335b6003612e99565b6000611a83612d55565b6111e4826132d9565b611a94612d55565b6008546001600160a01b031680611ad95760405162461bcd60e51b81526020600482015260096024820152680696e697420737761760bc1b6044820152606401610eb8565b6000611ae3613245565b905060005b8381101561169357611b1b858583818110611b0557611b05614bab565b90506020020135836132f090919063ffffffff16565b611b555760405162461bcd60e51b815260206004820152600b60248201526a31b7b4b7103937baba32b960a91b6044820152606401610eb8565b611b9a600a6000878785818110611b6e57611b6e614bab565b60209081029290920135835250810191909152604001600020600601546001600160a01b031684613192565b80611ba481614bd7565b915050611ae8565b611bb4612d55565b60005b8381101561169357611c09858583818110611bd457611bd4614bab565b90506020020135848484818110611bed57611bed614bab565b90506101600201803603810190611c049190614d71565b6132f5565b600080516020615019833981519152858583818110611c2a57611c2a614bab565b90506020020135848484818110611c4357611c43614bab565b90506101600201604051611c58929190614e20565b60405180910390a180611c6a81614bd7565b915050611bb7565b606060048054806020026020016040519081016040528092919081815260200182805480156113c0576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116113a2575050505050905090565b611cda612d55565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b611d05336111ab565b611d215760405162461bcd60e51b8152600401610eb890614b87565b611920816133f8565b611d32612d55565b60005b8251811015610ec1576000600e6000858481518110611d5657611d56614bab565b602002602001015181526020019081526020016000206000848481518110611d8057611d80614bab565b6020026020010151815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611db890614bd7565b915050611d35565b611dc8612d55565b6000611dd2613245565b9050611ddf81600061344c565b611e1b5760405162461bcd60e51b815260206004820152600d60248201526c1a5b9a5d0818dbdb9d1c9858dd609a1b6044820152606401610eb8565b60006001600160a01b03815b8681101561211557826001600160a01b0316868683818110611e4b57611e4b614bab565b90506101600201610120016020810190611e65919061402a565b6001600160a01b031603611eaa5760405162461bcd60e51b815260206004820152600c60248201526b1d185c99d95d0819985d5b1d60a21b6044820152606401610eb8565b611ed8888883818110611ebf57611ebf614bab565b90506020020135878784818110611bed57611bed614bab565b878782818110611eea57611eea614bab565b90506020020135600f6000888885818110611f0757611f07614bab565b90506101600201610120016020810190611f21919061402a565b6001600160a01b03168152602081019190915260400160002055611f66888883818110611f5057611f50614bab565b90506020020135856132f090919063ffffffff16565b156120ac57826001600160a01b0316868683818110611f8757611f87614bab565b9050610160020160e0016020810190611fa0919061402a565b6001600160a01b03161461200d5761200d868683818110611fc357611fc3614bab565b90506101600201610120016020810190611fdd919061402a565b878784818110611fef57611fef614bab565b9050610160020160e0016020810190612008919061402a565b613192565b826001600160a01b031686868381811061202957612029614bab565b90506101600201610100016020810190612043919061402a565b6001600160a01b0316146120ac576120ac86868381811061206657612066614bab565b90506101600201610120016020810190612080919061402a565b87878481811061209257612092614bab565b90506101600201610100016020810190612008919061402a565b6000805160206150198339815191528888838181106120cd576120cd614bab565b905060200201358787848181106120e6576120e6614bab565b905061016002016040516120fb929190614e20565b60405180910390a18061210d81614bd7565b915050611e27565b5050505050505050565b600061212c336001612dc3565b6121655760405162461bcd60e51b815260206004820152600a60248201526927b7363c9020b236b4b760b11b6044820152606401610eb8565b61132d6004336001612e99565b61217a612d55565b6000612184613245565b905060005b83518110156118af578281815181106121a4576121a4614bab565b6020026020010151600a60008684815181106121c2576121c2614bab565b6020026020010151815260200190815260200160002060040160016101000a8154816001600160a01b0302191690836001600160a01b0316021790555061222b84828151811061221457612214614bab565b6020026020010151836132f090919063ffffffff16565b1561228857612288600a600086848151811061224957612249614bab565b6020026020010151815260200190815260200160002060050160009054906101000a90046001600160a01b03168483815181106117eb576117eb614bab565b8061229281614bd7565b915050612189565b606060028054806020026020016040519081016040528092919081815260200182805480156113c0576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116113a2575050505050905090565b6005818154811061118a57600080fd5b6123138261345b565b60008281526010602090815260408083203384529091528120805483929061233c908490614ec1565b90915550610fa190508233836134db565b600061235833611737565b6117675760405162461bcd60e51b8152600401610eb890614ccb565b600061237f336111ab565b61239b5760405162461bcd60e51b8152600401610eb890614b87565b6111e46004836001612e31565b6123b1336111ab565b6123cd5760405162461bcd60e51b8152600401610eb890614b87565b60005462010000900460601b6001600160601b0319161561241c5760405162461bcd60e51b81526020600482015260096024820152686f6e6c79206f6e636560b81b6044820152606401610eb8565b6000805460609290921c620100000262010000600160b01b0319909216919091179055565b612449612d55565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6000612476336112f0565b6113205760405162461bcd60e51b8152600401610eb890614bf0565b600061249d336111ab565b6124b95760405162461bcd60e51b8152600401610eb890614b87565b6124c282612ded565b6111e46003836004612e31565b6124d7612d55565b60005b83811015611693578282828181106124f4576124f4614bab565b905060600201600a600087878581811061251057612510614bab565b90506020020135815260200190815260200160002060000181816125349190614c31565b9050507facfad0157cd2da7666b74ee0913cbf7138d00099b488e5fc050f407085ffcbeb85858381811061256a5761256a614bab565b9050602002013584848481811061258357612583614bab565b905060600201604051612597929190614cb7565b60405180910390a1806125a981614bd7565b9150506124da565b606060038054806020026020016040519081016040528092919081815260200182805480156113c0576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116113a2575050505050905090565b61261a8261345b565b612625823383612c5e565b60008281526010602090815260408083203384529091528120805483929061264e908490614ed8565b90915550505050565b6003818154811061118a57600080fd5b600054610100900460ff16158080156126875750600054600160ff909116105b806126a8575061269630612b8e565b1580156126a8575060005460ff166001145b61270b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610eb8565b6000805460ff19166001179055801561272e576000805461ff0019166101001790555b6127393360036135d4565b6002805460018082019092557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b03199081163317909155600380548084019091557fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805482169055600480548084019091557f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b018054821690556005805492830181556000527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0909101805490911690558015611920576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b612865612d55565b60005b8151811015610fa1576003600a600084848151811061288957612889614bab565b6020026020010151815260200190815260200160002060040160006101000a81548160ff021916908360038111156128c3576128c3613ec0565b0217905550806128d281614bd7565b915050612868565b6128e2612d55565b60005b83811015611693578282828181106128ff576128ff614bab565b9050602002016020810190612914919061402a565b600a600087878581811061292a5761292a614bab565b90506020020135815260200190815260200160002060060160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550808061297190614bd7565b9150506128e5565b6000612984336111ab565b6129a05760405162461bcd60e51b8152600401610eb890614b87565b6129a982612ded565b6111e46005836002612e31565b60006129c1336111ab565b6129dd5760405162461bcd60e51b8152600401610eb890614b87565b6129e682612ded565b6129f1600233611a72565b6129fe6002836003612e31565b6040516001600160a01b0383169033907f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c90600090a3506001919050565b612a44612d55565b6000612a4e613245565b90506000805b845181101561169357838181518110612a6f57612a6f614bab565b6020026020010151600a6000878481518110612a8d57612a8d614bab565b6020026020010151815260200190815260200160002060050160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550612af6858281518110612adf57612adf614bab565b6020026020010151846132f090919063ffffffff16565b15612b5357612b53600a6000878481518110612b1457612b14614bab565b6020026020010151815260200190815260200160002060060160009054906101000a90046001600160a01b03168583815181106117eb576117eb614bab565b80612b5d81614bd7565b915050612a54565b612b6d612d55565b6000828152600a60205260408120600701805483929061233c908490614ec1565b6001600160a01b03163b151590565b6000828152600d60209081526040808320848301516001600160801b031916845290915290205460ff16610fa15760405162461bcd60e51b81526020600482015260116024820152703b30bab63a1034b739ba393ab1ba34b7b760791b6044820152606401610eb8565b6000818152600a60205260409020600601546001600160a01b03166119205760405162461bcd60e51b815260206004820152600d60248201526c6369726375697420627265616b60981b6044820152606401610eb8565b3415612ce9576009548314612ca75760405162461bcd60e51b815260206004820152600f60248201526e18dbda5b881a5b99195e0819985a5b608a1b6044820152606401610eb8565b348114610ec15760405162461bcd60e51b815260206004820152601060248201526f18dbda5b88185b5bdd5b9d0819985a5b60821b6044820152606401610eb8565b6000838152600a60205260409020600601546001600160a01b03166118af81843085613689565b6001600160801b031990811691161490565b6000612d2c6136f4565b905090565b3660008037600080366000845af43d6000803e808015612d50573d6000f35b3d6000fd5b33600090815260016020526040902054612d70816003613715565b80612d815750612d81816001613715565b6119205760405162461bcd60e51b815260206004820152601360248201527227b7363c9027bbb732b91037b91020b236b4b760691b6044820152606401610eb8565b6001600160a01b038216600090815260016020526040812054612de69083613715565b9392505050565b336001600160a01b038216036119205760405162461bcd60e51b815260206004820152600960248201526820baba341029b2b63360b91b6044820152606401610eb8565b612e3a8261375d565b612e4482826135d4565b612e4e83836137a1565b806004811115612e6057612e60613ec0565b6040516001600160a01b038416907f16648684a169742a8946057cc0e413441c39b8c40d8a0b329547a5b58d0fad3390600090a3505050565b612ea28261375d565b612eac8282613850565b612eb68383613907565b806004811115612ec857612ec8613ec0565b6040516001600160a01b038416907f4c122a44c01f7baedf7841724cfb4cecb281d5d9f46ddfe8bcace2d9d121fb5a90600090a3505050565b6000828152600a60209081526040808320815160608101835281546001600160801b038082168352600160801b9091041693810193909352600101549082018190528290670de0b6b3a764000090612f599086614ef0565b612f639190614f0f565b82519091506001600160801b0316811015612f85575080516001600160801b03165b81602001516001600160801b0316811115612faa575060208101516001600160801b03165b808411612fe35760405162461bcd60e51b81526020600482015260076024820152667375622066656560c81b6044820152606401610eb8565b6000858152600a602052604081206007018054839290613004908490614ed8565b9091555061301490508185614ec1565b95945050505050565b6130348160000151826060015183608001516134db565b6020820151613053906001600160801b0319166202020160e81b612d10565b1561305c575050565b602082015161307c906001600160801b031916630302030160e01b612d10565b15613085575050565b60208201516130a5906001600160801b031916630302040160e01b612d10565b156130ae575050565b60208201516130cf906001600160801b03191664040207030160d81b612d10565b156130d8575050565b60208201516130f9906001600160801b03191664040207040160d81b612d10565b15613102575050565b6020820151613123906001600160801b03191664040206030160d81b612d10565b1561312c575050565b602082015161314d906001600160801b03191664040206040160d81b612d10565b15613156575050565b60405162461bcd60e51b81526020600482015260116024820152705661756c745f657865635f6e617469766560781b6044820152606401610eb8565b60405163095ea7b360e01b81526001600160a01b0383169063095ea7b3906131c290849060001990600401614f31565b6020604051808303816000875af11580156131e1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec19190613ff6565b61320e81613951565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60095461325381600061344c565b6132925760405162461bcd60e51b815260206004820152601060248201526f0d2dcd2e87440c6ded2dc40d2dcc8caf60831b6044820152606401610eb8565b6006546001600160a01b03166113315760405162461bcd60e51b815260206004820152600c60248201526b1a5b9a5d0e881cdbd8dad95d60a21b6044820152606401610eb8565b6119208160000151826040015183608001516134db565b141590565b6000828152600a602090815260409182902083518051818401516001600160801b03918216600160801b91831682021784559185015160018085019190915586850151805195810151958316959092169092029390931760028301559183015160038083019190915592840151600482018054869593949293919260ff1990911691849081111561338857613388613ec0565b021790555060608201516004820180546001600160a01b0392831661010002610100600160a81b031990911617905560808301516005830180549183166001600160a01b031992831617905560a084015160068401805491909316911617905560c0909101516007909101555050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6134216139ee565b604080516001600160a01b03928316815291841660208301520160405180910390a161192081613a04565b6001600160801b031916141590565b6000818152600a602052604090206004015460ff16600381600381111561348457613484613ec0565b141580156134a4575060008160038111156134a1576134a1613ec0565b14155b610fa15760405162461bcd60e51b81526020600482015260086024820152676d696e7461626c6560c01b6044820152606401610eb8565b600954830361355b57478111156135255760405162461bcd60e51b815260206004820152600e60248201526d6f7574206f662062616c616e636560901b6044820152606401610eb8565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156118af573d6000803e3d6000fd5b60036000848152600a602052604090206004015460ff16600381111561358357613583613ec0565b036135ae576000838152600a6020526040902060060154610ec1906001600160a01b03168383613a7e565b6000838152600a6020526040902060060154610ec1906001600160a01b03168383613a9d565b6001600160a01b0382166000908152600160205260409020546135f78183613715565b156136395760405162461bcd60e51b8152602060048201526012602482015271636f6e666c696374206175746820666c616760701b6044820152606401610eb8565b81600481111561364b5761364b613ec0565b613656906008614f4a565b6001600160a01b0390931660009081526001602052604090206001600160f81b031960ff949094169390931c1790915550565b6040516001600160a01b03808516602483015283166044820152606481018290526118af9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152613abc565b6000600080516020614ff98339815191525b546001600160a01b0316919050565b60006001600160f81b03198383600481111561373357613733613ec0565b60ff166020811061374657613746614bab565b1a60f81b6001600160f81b03191614905092915050565b6001600160a01b0381166119205760405162461bcd60e51b815260206004820152600b60248201526a5a65726f4164647265737360a81b6044820152606401610eb8565b60006001600160a01b0316826000815481106137bf576137bf614bab565b6000918252602090912001546001600160a01b03160361381f5780826000815481106137ed576137ed614bab565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505050565b81546001810183556000838152602090200180546001600160a01b0383166001600160a01b03199091161790555050565b6001600160a01b0382166000908152600160205260409020546138738183613715565b6138b15760405162461bcd60e51b815260206004820152600f60248201526e0dcdee840ccd8c2cecac840c2eae8d608b1b6044820152606401610eb8565b8160048111156138c3576138c3613ec0565b6138ce906008614f4a565b6001600160a01b0393909316600090815260016020526040902080546001600160f81b031960ff9095169490941c199093169092555050565b6139488282846001868054905061391e9190614ec1565b8154811061392e5761392e614bab565b6000918252602090912001546001600160a01b0316613b5e565b610fa182613c1c565b61395a81612b8e565b6139bc5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610eb8565b80600080516020614ff98339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6000600080516020614fd9833981519152613706565b6001600160a01b038116613a695760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610eb8565b80600080516020614fd98339815191526139cd565b610ec1836340c10f1960e01b84846040516024016136bd929190614f31565b610ec18363a9059cbb60e01b84846040516024016136bd929190614f31565b6000613b01826040518060400160405280600d81526020016c1cd859994e881b1bddd0d85b1b609a1b815250856001600160a01b0316613ca09092919063ffffffff16565b805190915015610ec15780806020019051810190613b1f9190613ff6565b610ec15760405162461bcd60e51b815260206004820152601060248201526f736166653a2072657475726e4461746160801b6044820152606401610eb8565b806001600160a01b0316826001600160a01b031603613b8157610ec18383613cb7565b825460005b8181101561169357836001600160a01b0316858281548110613baa57613baa614bab565b6000918252602090912001546001600160a01b031603613c0a5782858281548110613bd757613bd7614bab565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550611693565b80613c1481614bd7565b915050613b86565b8054600103613c6b57600081600081548110613c3a57613c3a614bab565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555050565b80805480613c7b57613c7b614f73565b600082815260209020810160001990810180546001600160a01b031916905501905550565b6060613caf8484600085613d49565b949350505050565b815460005b81811015613d1257826001600160a01b0316848281548110613ce057613ce0614bab565b6000918252602090912001546001600160a01b031603613d005750505050565b80613d0a81614bd7565b915050613cbc565b5060405162461bcd60e51b815260206004820152600b60248201526a3737ba1031b7b73a30b4b760a91b6044820152606401610eb8565b606082471015613daa5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610eb8565b600080866001600160a01b03168587604051613dc69190614f89565b60006040518083038185875af1925050503d8060008114613e03576040519150601f19603f3d011682016040523d82523d6000602084013e613e08565b606091505b5091509150613e1987838387613e24565b979650505050505050565b60608315613e91578251600003613e8a57613e3e85612b8e565b613e8a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610eb8565b5081613caf565b613caf8383815115613ea65781518083602001fd5b8060405162461bcd60e51b8152600401610eb89190614fa5565b634e487b7160e01b600052602160045260246000fd5b6060810160038510613eea57613eea613ec0565b938152602081019290925260409091015290565b60005b83811015613f19578181015183820152602001613f01565b838111156118af5750506000910152565b60008151808452613f42816020860160208601613efe565b601f01601f19169290920160200192915050565b602081526000825163ffffffff60e01b815116602084015260018060801b0319602082015116604084015250602083015160608084015280516080840152602081015160a0840152604081015160018060a01b0380821660c08601528060608401511660e08601525050608081015161010084015260a0810151905060c0610120840152613caf610140840182613f2a565b801515811461192057600080fd5b60006020828403121561400857600080fd5b8151612de681613fe8565b80356001600160a01b03811681146111e857600080fd5b60006020828403121561403c57600080fd5b612de682614013565b60006020828403121561405757600080fd5b5035919050565b80356001600160e01b0319811681146111e857600080fd5b6000806040838503121561408957600080fd5b823591506140996020840161405e565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156140da576140da6140a2565b60405290565b60405160c081016001600160401b03811182821017156140da576140da6140a2565b604051601f8201601f191681016001600160401b038111828210171561412a5761412a6140a2565b604052919050565b60006001600160401b0382111561414b5761414b6140a2565b5060051b60200190565b600082601f83011261416657600080fd5b8135602061417b61417683614132565b614102565b82815260059290921b8401810191818101908684111561419a57600080fd5b8286015b848110156141b5578035835291830191830161419e565b509695505050505050565b80356001600160801b0319811681146111e857600080fd5b60008060408084860312156141ec57600080fd5b83356001600160401b038082111561420357600080fd5b61420f87838801614155565b945060209150818601358181111561422657600080fd5b8601601f8101881361423757600080fd5b803561424561417682614132565b81815260059190911b8201840190848101908a83111561426457600080fd5b8584015b838110156142f7578035868111156142805760008081fd5b8501603f81018d136142925760008081fd5b878101356142a261417682614132565b81815260059190911b82018a0190898101908f8311156142c25760008081fd5b928b01925b828410156142e7576142d8846141c0565b8252928a0192908a01906142c7565b8652505050918601918601614268565b50809750505050505050509250929050565b6020808252825182820181905260009190848201906040850190845b8181101561434a5783516001600160a01b031683529284019291840191600101614325565b50909695505050505050565b60006040828403121561436857600080fd5b6143706140b8565b905061437b8261405e565b8152614389602083016141c0565b602082015292915050565b600060c082840312156143a657600080fd5b6143ae6140e0565b905081358152602080830135818301526143ca60408401614013565b60408301526143db60608401614013565b60608301526080838101359083015260a08301356001600160401b038082111561440457600080fd5b818501915085601f83011261441857600080fd5b81358181111561442a5761442a6140a2565b61443c601f8201601f19168501614102565b9150808252868482850101111561445257600080fd5b80848401858401376000848284010152508060a085015250505092915050565b60006020828403121561448457600080fd5b81356001600160401b038082111561449b57600080fd5b90830190606082860312156144af57600080fd5b6144b76140b8565b6144c18684614356565b81526040830135828111156144d557600080fd5b6144e187828601614394565b60208301525095945050505050565b6000806040838503121561450357600080fd5b82359150614099602084016141c0565b60008083601f84011261452557600080fd5b5081356001600160401b0381111561453c57600080fd5b6020830191508360208260051b850101111561455757600080fd5b9250929050565b6000806000806040858703121561457457600080fd5b84356001600160401b038082111561458b57600080fd5b61459788838901614513565b909650945060208701359150808211156145b057600080fd5b818701915087601f8301126145c457600080fd5b8135818111156145d357600080fd5b8860206060830285010111156145e857600080fd5b95989497505060200194505050565b6000806040838503121561460a57600080fd5b8235915061409960208401614013565b6000806040838503121561462d57600080fd5b82356001600160401b038082111561464457600080fd5b61465086838701614155565b9350602085013591508082111561466657600080fd5b5061467385828601614155565b9150509250929050565b6000806040838503121561469057600080fd5b50508035926020909101359150565b600080606083850312156146b257600080fd5b6146bc8484614356565b915060408301356001600160401b038111156146d757600080fd5b61467385828601614394565b600082601f8301126146f457600080fd5b8135602061470461417683614132565b82815260059290921b8401810191818101908684111561472357600080fd5b8286015b848110156141b55761473881614013565b8352918301918301614727565b6000806040838503121561475857600080fd5b82356001600160401b038082111561476f57600080fd5b61477b868387016146e3565b9350602085013591508082111561479157600080fd5b50614673858286016146e3565b6000806000606084860312156147b357600080fd5b83356001600160401b03808211156147ca57600080fd5b6147d687838801614155565b94506020915081860135818111156147ed57600080fd5b8601601f810188136147fe57600080fd5b803561480c61417682614132565b81815260059190911b8201840190848101908a83111561482b57600080fd5b928501925b82841015614850576148418461405e565b82529285019290850190614830565b9650505050604086013591508082111561486957600080fd5b5061487686828701614155565b9150509250925092565b6000806000806040858703121561489657600080fd5b84356001600160401b03808211156148ad57600080fd5b6148b988838901614513565b909650945060208701359150808211156148d257600080fd5b506148df87828801614513565b95989497509550505050565b600080604083850312156148fe57600080fd5b61490783614013565b946020939093013593505050565b60006020828403121561492757600080fd5b8135612de681613fe8565b60006020828403121561494457600080fd5b81356001600160401b0381111561495a57600080fd5b613caf84828501614394565b6000806020838503121561497957600080fd5b82356001600160401b0381111561498f57600080fd5b61499b85828601614513565b90969095509350505050565b600080600080604085870312156149bd57600080fd5b84356001600160401b03808211156149d457600080fd5b6149e088838901614513565b909650945060208701359150808211156149f957600080fd5b818701915087601f830112614a0d57600080fd5b813581811115614a1c57600080fd5b886020610160830285010111156145e857600080fd5b60008060408385031215614a4557600080fd5b82356001600160401b0380821115614a5c57600080fd5b61477b86838701614155565b600060208284031215614a7a57600080fd5b81356001600160601b031981168114612de657600080fd5b80516001600160801b03908116835260208083015190911690830152604090810151910152565b60048110614ac957614ac9613ec0565b9052565b6101608101614adc828a614a92565b614ae96060830189614a92565b614af660c0830188614ab9565b6001600160a01b0395861660e08301529385166101008201529190931661012082015261014001919091529392505050565b600060208284031215614b3a57600080fd5b81356001600160401b03811115614b5057600080fd5b613caf84828501614155565b6020808252601190820152701b9bdd081cdd5c1c1bdc9d08185cdcd95d607a1b604082015260600190565b6020808252600a908201526927b7363c9027bbb732b960b11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614be957614be9614bc1565b5060010190565b60208082526012908201527127b7363c902832b73234b7339020b236b4b760711b604082015260600190565b6001600160801b038116811461192057600080fd5b8135614c3c81614c1c565b81546001600160801b03199081166001600160801b039290921691821783556020840135614c6981614c1c565b60801b1617815560409190910135600190910155565b8035614c8a81614c1c565b6001600160801b039081168352602082013590614ca682614c1c565b166020830152604090810135910152565b82815260808101612de66020830184614c7f565b60208082526012908201527127b7363c902832b73234b7339027bbb732b960711b604082015260600190565b600060608284031215614d0957600080fd5b604051606081016001600160401b0381118282101715614d2b57614d2b6140a2565b6040529050808235614d3c81614c1c565b81526020830135614d4c81614c1c565b6020820152604092830135920191909152919050565b8035600481106111e857600080fd5b60006101608284031215614d8457600080fd5b60405160e081016001600160401b0381118282101715614da657614da66140a2565b604052614db38484614cf7565b8152614dc28460608501614cf7565b6020820152614dd360c08401614d62565b6040820152614de460e08401614013565b6060820152614df66101008401614013565b6080820152614e086101208401614013565b60a0820152610140929092013560c083015250919050565b8281526101808101614e356020830184614c7f565b614e456080830160608501614c7f565b614e5160c08401614d62565b614e5e60e0840182614ab9565b50614e6b60e08401614013565b61010060018060a01b0380831682860152614e87828701614013565b9250610120915080831682860152614ea0828701614013565b16610140858101919091529490940135610160909301929092529392505050565b600082821015614ed357614ed3614bc1565b500390565b60008219821115614eeb57614eeb614bc1565b500190565b6000816000190483118215151615614f0a57614f0a614bc1565b500290565b600082614f2c57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b03929092168252602082015260400190565b600060ff821660ff84168160ff0481118215151615614f6b57614f6b614bc1565b029392505050565b634e487b7160e01b600052603160045260246000fd5b60008251614f9b818460208701613efe565b9190910192915050565b602081526000612de66020830184613f2a56fe77af05e6a92fec1895af9546423ef6796ffe69d557ab50a909edfe4d3352b205b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6b3d21df97c6b6a7a77df229a0b01302c712242f00b1ae7eae9c98af47b1aecca264697066735822122015657cafa2a3c2f882f36bcfbd641a7b88907ef9c17cecf2a9b26e116ef77f4564736f6c634300080d0033
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing bytecode for upgradeability risks**
[codex:803859] 
[codex:803859] I'm examining function selectors, delegatecall patterns, and upgrade functions within the large runtime bytecode to check if upgrade mechanisms are properly protected. Since the bytecode shows typical ERC1967 and Ownable features and lacks clear unprotected upgrade or delegatecall paths, I focus on confirming no obvious vulnerabilities before concluding no exploit path is found.
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] import binascii
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] # ensure even length
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] # opcode map for some
[codex:803859] ops = {0xf1:'CALL',0xf4:'DELEGATECALL',0xff:'SELFDESTRUCT',0xfa:'STATICCALL'}
[codex:803859] for opcode,name in ops.items():
[codex:803859]     offs=[i for i,b in enumerate(code) if b==opcode]
[codex:803859]     print(name,len(offs))
[codex:803859]     print(' first 10:',offs[:10])
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 38ms:
[codex:803859] CALL 7
[codex:803859]  first 10: [1044, 3049, 5255, 10729, 12752, 13637, 15827]
[codex:803859] DELEGATECALL 9
[codex:803859]  first 10: [541, 1518, 9451, 9455, 11562, 11583, 12012, 13318, 18158]
[codex:803859] SELFDESTRUCT 57
[codex:803859]  first 10: [801, 1705, 1791, 1970, 3219, 3972, 4118, 4258, 4793, 5505]
[codex:803859] STATICCALL 7
[codex:803859]  first 10: [1105, 2782, 5681, 9530, 10058, 10079, 13324]
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Implementing precise opcode parsing**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] ops = {0xf1:'CALL',0xf4:'DELEGATECALL',0xff:'SELFDESTRUCT',0xfa:'STATICCALL'}
[codex:803859] 
[codex:803859] pc=0
[codex:803859] found={k:[] for k in ops}
[codex:803859] while pc < len(code):
[codex:803859]     op=code[pc]
[codex:803859]     if op in ops:
[codex:803859]         found[op].append(pc)
[codex:803859]         pc+=1
[codex:803859]         continue
[codex:803859]     if 0x60 <= op <= 0x7f:  # PUSH1-32
[codex:803859]         push_len = op-0x5f
[codex:803859]         pc += 1 + push_len
[codex:803859]     else:
[codex:803859]         pc += 1
[codex:803859] 
[codex:803859] for op,name in ops.items():
[codex:803859]     offs=found[op]
[codex:803859]     print(name,len(offs))
[codex:803859]     print(' first 20:',offs[:20])
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 37ms:
[codex:803859] CALL 5
[codex:803859]  first 20: [1044, 5255, 12752, 13637, 15827]
[codex:803859] DELEGATECALL 1
[codex:803859]  first 20: [11583]
[codex:803859] SELFDESTRUCT 0
[codex:803859]  first 20: []
[codex:803859] STATICCALL 0
[codex:803859]  first 20: []
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing delegatecall usage**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] def disasm(start, end):
[codex:803859]     pc=start
[codex:803859]     while pc<end:
[codex:803859]         op=code[pc]
[codex:803859]         if 0x60 <= op <= 0x7f:
[codex:803859]             l=op-0x5f
[codex:803859]             data=code[pc+1:pc+1+l]
[codex:803859]             print(f\"{pc:05d}: PUSH{l} 0x{data.hex()}\")
[codex:803859]             pc += 1+l
[codex:803859]         else:
[codex:803859]             name = {
[codex:803859]                 0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',
[codex:803859]                 0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:803859]                 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:803859]                 0x20:'SHA3',
[codex:803859]                 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:803859]                 0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:803859]                 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:803859]                 0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:803859]             }.get(op, f'OP{op:02x}')
[codex:803859]             print(f\"{pc:05d}: {name}\")
[codex:803859]             pc += 1
[codex:803859] 
[codex:803859] # show around delegatecall at 11583
[codex:803859] start=11583-40
[codex:803859] end=11583+40
[codex:803859] if start<0: start=0
[codex:803859] print(f\"Disasm {start}-{end} (delegatecall @11583)\")
[codex:803859] disasm(start,end)
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 30ms:
[codex:803859] Disasm 11543-11623 (delegatecall @11583)
[codex:803859] 11543: SHL
[codex:803859] 11544: SUB
[codex:803859] 11545: NOT
[codex:803859] 11546: OP90
[codex:803859] 11547: OP81
[codex:803859] 11548: AND
[codex:803859] 11549: OP91
[codex:803859] 11550: AND
[codex:803859] 11551: EQ
[codex:803859] 11552: OP90
[codex:803859] 11553: JUMP
[codex:803859] 11554: JUMPDEST
[codex:803859] 11555: PUSH1 0x00
[codex:803859] 11557: PUSH2 0x2d2c
[codex:803859] 11560: PUSH2 0x36f4
[codex:803859] 11563: JUMP
[codex:803859] 11564: JUMPDEST
[codex:803859] 11565: OP90
[codex:803859] 11566: POP
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing delegatecall and implementation retrieval**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] # simple disassembler with op names
[codex:803859] opnames={
[codex:803859]     0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',
[codex:803859]     0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:803859]     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:803859]     0x20:'SHA3',
[codex:803859]     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:803859]     0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:803859]     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:803859]     0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:803859] }
[codex:803859] 
[codex:803859] code_len=len(code)
[codex:803859] 
[codex:803859] start=0x36f4-40
[codex:803859] end=0x36f4+80
[codex:803859] if start<0: start=0
[codex:803859] if end>code_len: end=code_len
[codex:803859] 
[codex:803859] pc=start
[codex:803859] print(f\"Disasm {start}-{end} around 0x36f4\")
[codex:803859] while pc<end:
[codex:803859]     op=code[pc]
[codex:803859]     if 0x60 <= op <= 0x7f:
[codex:803859]         l=op-0x5f
[codex:803859]         data=code[pc+1:pc+1+l]
[codex:803859]         print(f\"{pc:05d}: PUSH{l} 0x{data.hex()}\")
[codex:803859]         pc += 1+l
[codex:803859]     else:
[codex:803859]         name=opnames.get(op,f'OP{op:02x}')
[codex:803859]         print(f\"{pc:05d}: {name}\")
[codex:803859]         pc+=1
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 28ms:
[codex:803859] Disasm 14028-14148 around 0x36f4
[codex:803859] 14028: OP90
[codex:803859] 14029: MSTORE
[codex:803859] 14030: PUSH1 0x20
[codex:803859] 14032: OP81
[codex:803859] 14033: ADD
[codex:803859] 14034: OP80
[codex:803859] 14035: MLOAD
[codex:803859] 14036: PUSH1 0x01
[codex:803859] 14038: PUSH1 0x01
[codex:803859] 14040: PUSH1 0xe0
[codex:803859] 14042: SHL
[codex:803859] 14043: SUB
[codex:803859] 14044: AND
[codex:803859] 14045: PUSH1 0x01
[codex:803859] 14047: PUSH1 0x01
[codex:803859] 14049: PUSH1 0xe0
[codex:803859] 14051: SHL
[codex:803859] 14052: SUB
[codex:803859] 14053: NOT
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing proxy and upgrade patterns**
[codex:803859] 
[codex:803859] I'm piecing together how the contract reads and writes its implementation address via EIP-1967 storage slots, suspecting a proxy or modular ("diamond") architecture with delegatecall fallbacks. The key next step is to verify whether the upgrade functions have proper access control, since missing checks could let attackers hijack the upgrade process. I'll look for the upgrade-related string in the bytecode to pinpoint relevant code and examine the presence of caller-admin comparisons.
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] import binascii
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] needle=b\"ERC1967: new implementation is not a contract\"
[codex:803859] idx=code.find(needle)
[codex:803859] print('index',idx)
[codex:803859] # print nearby bytes
[codex:803859] print(code[idx-20:idx+len(needle)+20])
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 28ms:
[codex:803859] index -1
[codex:803859] b''
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing embedded revert strings**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] for needle in [b'ERC1967', b'new implementation']:
[codex:803859]     idx=code.find(needle)
[codex:803859]     print(needle, idx)
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 27ms:
[codex:803859] b'ERC1967' 14714
[codex:803859] b'new implementation' 14723
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Disassembling around address 14700**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] opnames={
[codex:803859]     0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',
[codex:803859]     0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:803859]     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:803859]     0x20:'SHA3',
[codex:803859]     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:803859]     0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:803859]     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:803859]     0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:803859] }
[codex:803859] 
[codex:803859] start=14660
[codex:803859] end=14840
[codex:803859] pc=start
[codex:803859] print(f\"Disasm {start}-{end}\")
[codex:803859] while pc<end:
[codex:803859]     op=code[pc]
[codex:803859]     if 0x60 <= op <= 0x7f:
[codex:803859]         l=op-0x5f
[codex:803859]         data=code[pc+1:pc+1+l]
[codex:803859]         print(f\"{pc:05d}: PUSH{l} 0x{data.hex()}\")
[codex:803859]         pc += 1+l
[codex:803859]     else:
[codex:803859]         name=opnames.get(op,f'OP{op:02x}')
[codex:803859]         print(f\"{pc:05d}: {name}\")
[codex:803859]         pc += 1
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 26ms:
[codex:803859] Disasm 14660-14840
[codex:803859] 14660: PUSH2 0x3b5e
[codex:803859] 14663: JUMP
[codex:803859] 14664: JUMPDEST
[codex:803859] 14665: PUSH2 0x0fa1
[codex:803859] 14668: OP82
[codex:803859] 14669: PUSH2 0x3c1c
[codex:803859] 14672: JUMP
[codex:803859] 14673: JUMPDEST
[codex:803859] 14674: PUSH2 0x395a
[codex:803859] 14677: OP81
[codex:803859] 14678: PUSH2 0x2b8e
[codex:803859] 14681: JUMP
[codex:803859] 14682: JUMPDEST
[codex:803859] 14683: PUSH2 0x39bc
[codex:803859] 14686: JUMPI
[codex:803859] 14687: PUSH1 0x40
[codex:803859] 14689: MLOAD
[codex:803859] 14690: PUSH3 0x461bcd
[codex:803859] 14694: PUSH1 0xe5
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing upgrade function selectors**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] selectors=[]
[codex:803859] # scan first 1200 bytes
[codex:803859] limit=1200
[codex:803859] pc=0
[codex:803859] while pc < limit:
[codex:803859]     op=code[pc]
[codex:803859]     if op==0x63:  # PUSH4
[codex:803859]         sel=code[pc+1:pc+5]
[codex:803859]         # look ahead for EQ and JUMPI within next 10 bytes
[codex:803859]         window=code[pc+5:pc+15]
[codex:803859]         if 0x14 in window and 0x57 in window:  # EQ and JUMPI
[codex:803859]             selectors.append('0x'+sel.hex())
[codex:803859]         pc += 5
[codex:803859]     elif 0x60 <= op <= 0x7f:
[codex:803859]         pc += 1 + (op-0x5f)
[codex:803859]     else:
[codex:803859]         pc += 1
[codex:803859] 
[codex:803859] print('found',len(selectors))
[codex:803859] print(sorted(set(selectors)))
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 30ms:
[codex:803859] found 69
[codex:803859] ['0x0116aa52', '0x02484ceb', '0x025e7c27', '0x1220c6ed', '0x14ab0bbc', '0x14bfd6d0', '0x1ebf0551', '0x1fa4d1ba', '0x22c8f6cd', '0x2708d2a2', '0x2d345670', '0x2f2ba2c3', '0x30300667', '0x3343c8f7', '0x3c12375e', '0x3e5e5411', '0x3ed02116', '0x4279590a', '0x435b5cdc', '0x43755ed1', '0x486d2e6c', '0x4e71e0c8', '0x52650d6d', '0x5f3476ee', '0x60dc8700', '0x626cb052', '0x6782fc9d', '0x6d151101', '0x6daadb11', '0x6fda62ed', '0x749008ab', '0x7c9c9f16', '0x7e926b4b', '0x85242fba', '0x86a07112', '0x877cac55', '0x8794b69d', '0x8818024e', '0x886b5f53', '0x89c06cb7', '0x8b35c07a', '0x8e5ee457', '0x9043684a', '0x9bed25d8', '0xa2993491', '0xa4298ab6', '0xa58edf09', '0xa620caf4', '0xa762eb8c', '0xbe19d11f', '0xc38c5813', '0xc462342c', '0xcb19735e', '0xcb819df9', '0xcc22678e', '0xcf2fd14d', '0xd6cfd38d', '0xd92e233d', '0xdb1a9878', '0xdd420fa0', '0xdf2981b3', '0xdfbe0ece', '0xe1c7392a', '0xe3aabeeb', '0xe4429845', '0xe45deb98', '0xf2fde38b', '0xf3e41b10', '0xf6b34db3']
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing upgrade function selectors and internal calls**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] needle=bytes.fromhex('61395a')
[codex:803859] positions=[]
[codex:803859] idx=0
[codex:803859] while True:
[codex:803859]     idx=code.find(needle, idx)
[codex:803859]     if idx==-1: break
[codex:803859]     positions.append(idx)
[codex:803859]     idx += 1
[codex:803859] print('positions',positions)
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 30ms:
[codex:803859] positions [14674]
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing internal upgrade and implementation slot**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] # read 32 bytes at offset 0x4ff9
[codex:803859] start=0x4ff9
[codex:803859] slot=code[start:start+32]
[codex:803859] print('slot constant at 0x4ff9:',slot.hex())
[codex:803859] # also at 0x4fd9 maybe admin slot constant
[codex:803859] for off in [0x4fd9,0x4ff9,0x5019,0x4f99]:
[codex:803859]     if off+32 <= len(code):
[codex:803859]         print(hex(off), code[off:off+32].hex())
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 26ms:
[codex:803859] slot constant at 0x4ff9: 360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
[codex:803859] 0x4fd9 b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103
[codex:803859] 0x4ff9 360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
[codex:803859] 0x5019 6b3d21df97c6b6a7a77df229a0b01302c712242f00b1ae7eae9c98af47b1aecc
[codex:803859] 0x4f99 fe565b9190910192915050565b602081526000612de66020830184613f2a56fe
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing upgradeable proxy slots and functions**
[codex:803859] 
[codex:803859] I’m tracing the EIP-1967 upgradeable proxy pattern by locating key storage slots for admin, implementation, and beacon. I want to find if external functions allow changing these without access control, which could be dangerous. To do this, I plan to identify internal functions like `_setImplementation` and see if external functions call them unchecked, using jump destinations from the dispatcher for each selector. I’ll implement pattern matching to map selectors to jump destinations and pinpoint the external upgrade function entries.
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] # simple pattern matching in first 1500 bytes
[codex:803859] selectors={}
[codex:803859] limit=1500
[codex:803859] pc=0
[codex:803859] while pc < limit-10:
[codex:803859]     if code[pc]==0x63:  # PUSH4
[codex:803859]         sel=code[pc+1:pc+5].hex()
[codex:803859]         # next op should be EQ (0x14) maybe after DUP1 etc? Actually pattern may be PUSH4, EQ, PUSH2 dest, JUMPI
[codex:803859]         # We'll search within next 20 bytes for pattern: 0x14 0x61 <dest_hi> <dest_lo> 0x57
[codex:803859]         window=code[pc+5:pc+25]
[codex:803859]         for i in range(len(window)-4):
[codex:803859]             if window[i]==0x14 and window[i+1]==0x61 and window[i+4]==0x57:
[codex:803859]                 dest=int.from_bytes(window[i+2:i+4],'big')
[codex:803859]                 selectors['0x'+sel]=dest
[codex:803859]                 break
[codex:803859]         pc+=5
[codex:803859]     elif 0x60 <= code[pc] <= 0x7f:
[codex:803859]         pc += 1+(code[pc]-0x5f)
[codex:803859]     else:
[codex:803859]         pc+=1
[codex:803859] 
[codex:803859] print('selectors mapped',len(selectors))
[codex:803859] # print sorted by dest
[codex:803859] for sel,dest in sorted(selectors.items(), key=lambda x:x[1]):
[codex:803859]     print(sel, hex(dest))
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 31ms:
[codex:803859] selectors mapped 69
[codex:803859] 0x0116aa52 0x453
[codex:803859] 0x02484ceb 0x473
[codex:803859] 0x025e7c27 0x4b0
[codex:803859] 0x1220c6ed 0x4d0
[codex:803859] 0x14ab0bbc 0x500
[codex:803859] 0x14bfd6d0 0x53b
[codex:803859] 0x1ebf0551 0x55b
[codex:803859] 0x1fa4d1ba 0x593
[codex:803859] 0x22c8f6cd 0x5b3
[codex:803859] 0x2708d2a2 0x5d3
[codex:803859] 0x2d345670 0x5e8
[codex:803859] 0x2f2ba2c3 0x608
[codex:803859] 0x30300667 0x62a
[codex:803859] 0x3343c8f7 0x63d
[codex:803859] 0x3c12375e 0x65d
[codex:803859] 0x3e5e5411 0x696
[codex:803859] 0x3ed02116 0x6c8
[codex:803859] 0x4279590a 0x703
[codex:803859] 0x435b5cdc 0x723
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Identifying upgrade functions setting implementation slot**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] needle=bytes.fromhex('614ff9')
[codex:803859] positions=[]
[codex:803859] idx=0
[codex:803859] while True:
[codex:803859]     idx=code.find(needle, idx)
[codex:803859]     if idx==-1: break
[codex:803859]     positions.append(idx)
[codex:803859]     idx += 1
[codex:803859] print('PUSH2 0x4ff9 positions',positions)
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 28ms:
[codex:803859] PUSH2 0x4ff9 positions [14077, 14788]
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Analyzing function boundaries and jumps**
[codex:803859] exec
[codex:803859] /bin/bash -lc "python3 - <<'PY'
[codex:803859] from pathlib import Path
[codex:803859] hexdata=Path('BYTECODE_BUNDLE.txt').read_text().split('0x',1)[1].split()[0].strip()
[codex:803859] if hexdata.startswith('0x'): hexdata=hexdata[2:]
[codex:803859] if len(hexdata)%2: hexdata=hexdata[:-1]
[codex:803859] code=bytes.fromhex(hexdata)
[codex:803859] 
[codex:803859] opnames={
[codex:803859]     0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',
[codex:803859]     0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:803859]     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:803859]     0x20:'SHA3',
[codex:803859]     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:803859]     0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:803859]     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:803859]     0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'
[codex:803859] }
[codex:803859] 
[codex:803859] start=14620
[codex:803859] end=14710
[codex:803859] pc=start
[codex:803859] print(f\"Disasm {start}-{end}\")
[codex:803859] while pc<end:
[codex:803859]     op=code[pc]
[codex:803859]     if 0x60 <= op <= 0x7f:
[codex:803859]         l=op-0x5f
[codex:803859]         data=code[pc+1:pc+1+l]
[codex:803859]         print(f\"{pc:05d}: PUSH{l} 0x{data.hex()}\")
[codex:803859]         pc += 1+l
[codex:803859]     else:
[codex:803859]         name=opnames.get(op,f'OP{op:02x}')
[codex:803859]         print(f\"{pc:05d}: {name}\")
[codex:803859]         pc += 1
[codex:803859] PY" in /tmp/codex-multi-lyvyij8_ succeeded in 28ms:
[codex:803859] Disasm 14620-14710
[codex:803859] 14620: OPc1
[codex:803859] 14621: JUMP
[codex:803859] 14622: JUMPDEST
[codex:803859] 14623: OP81
[codex:803859] 14624: SLOAD
[codex:803859] 14625: OP81
[codex:803859] 14626: LT
[codex:803859] 14627: PUSH2 0x392e
[codex:803859] 14630: JUMPI
[codex:803859] 14631: PUSH2 0x392e
[codex:803859] 14634: PUSH2 0x4bab
[codex:803859] 14637: JUMP
[codex:803859] 14638: JUMPDEST
[codex:803859] 14639: PUSH1 0x00
[codex:803859] 14641: OP91
[codex:803859] 14642: OP82
[codex:803859] 14643: MSTORE
[codex:803859] 14644: PUSH1 0x20
[codex:803859] 14646: OP90
[codex:803859] 
[codex:803859] thinking
[codex:803859] **Concluding no exploit found**
[codex:803859] 
[codex:803859] I'll summarize that no concrete, exploitable profit path was identified from the bytecode analysis while noting the complexity and common proxy patterns, to comply with the user's instructions.
[codex:803859] codex
[codex:803859] {"no_findings":true,"summary":"No concrete, exploitable profit path identified from bytecode-only analysis of BYTECODE_BUNDLE.txt.","findings":[]}
[codex:803859] tokens used
[codex:803859] 57,676
[codex:803859] {"no_findings":true,"summary":"No concrete, exploitable profit path identified from bytecode-only analysis of BYTECODE_BUNDLE.txt.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T06:33:23.158734+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit path identified from bytecode-only analysis of BYTECODE_BUNDLE.txt.",
    "raw_final": {
        "summary": "No concrete, exploitable profit path identified from bytecode-only analysis of BYTECODE_BUNDLE.txt.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
3
Total opcodes
13515
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x030e
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x0116aa52
00000019: EQ
0000001a: PUSH2 0x0453
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x02484ceb
00000024: EQ
00000025: PUSH2 0x0473
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0x025e7c27
0000002f: EQ
00000030: PUSH2 0x04b0
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0x1220c6ed
0000003a: EQ
0000003b: PUSH2 0x04d0
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0x14ab0bbc
00000045: EQ
00000046: PUSH2 0x0500
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0x14bfd6d0
00000050: EQ
00000051: PUSH2 0x053b
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0x1ebf0551
0000005b: EQ
0000005c: PUSH2 0x055b
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0x1fa4d1ba
00000066: EQ
00000067: PUSH2 0x0593
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0x22c8f6cd
00000071: EQ
00000072: PUSH2 0x05b3
00000075: JUMPI
00000076: DUP1
00000077: PUSH4 0x2708d2a2
0000007c: EQ
0000007d: PUSH2 0x05d3
00000080: JUMPI
00000081: DUP1
00000082: PUSH4 0x2d345670
00000087: EQ
00000088: PUSH2 0x05e8
0000008b: JUMPI
0000008c: DUP1
0000008d: PUSH4 0x2f2ba2c3
00000092: EQ
00000093: PUSH2 0x0608
00000096: JUMPI
00000097: DUP1
00000098: PUSH4 0x30300667
0000009d: EQ
0000009e: PUSH2 0x062a
000000a1: JUMPI
000000a2: DUP1
000000a3: PUSH4 0x3343c8f7
000000a8: EQ
000000a9: PUSH2 0x063d
000000ac: JUMPI
000000ad: DUP1
000000ae: PUSH4 0x3c12375e
000000b3: EQ
000000b4: PUSH2 0x065d
000000b7: JUMPI
000000b8: DUP1
000000b9: PUSH4 0x3e5e5411
000000be: EQ
000000bf: PUSH2 0x0696
000000c2: JUMPI
000000c3: DUP1
000000c4: PUSH4 0x3ed02116
000000c9: EQ
000000ca: PUSH2 0x06c8
000000cd: JUMPI
000000ce: DUP1
000000cf: PUSH4 0x4279590a
000000d4: EQ
000000d5: PUSH2 0x0703
000000d8: JUMPI
000000d9: DUP1
000000da: PUSH4 0x435b5cdc
000000df: EQ
000000e0: PUSH2 0x0723
000000e3: JUMPI
000000e4: DUP1
000000e5: PUSH4 0x43755ed1
000000ea: EQ
000000eb: PUSH2 0x075b
000000ee: JUMPI
000000ef: DUP1
000000f0: PUSH4 0x486d2e6c
000000f5: EQ
000000f6: PUSH2 0x077b
000000f9: JUMPI
000000fa: DUP1
000000fb: PUSH4 0x4e71e0c8
00000100: EQ
00000101: PUSH2 0x07b6
00000104: JUMPI
00000105: DUP1
00000106: PUSH4 0x52650d6d
0000010b: EQ
0000010c: PUSH2 0x07cb
0000010f: JUMPI
00000110: DUP1
00000111: PUSH4 0x5f3476ee
00000116: EQ
00000117: PUSH2 0x07eb
0000011a: JUMPI
0000011b: DUP1
0000011c: PUSH4 0x60dc8700
00000121: EQ
00000122: PUSH2 0x080b
00000125: JUMPI
00000126: DUP1
00000127: PUSH4 0x626cb052
0000012c: EQ
0000012d: PUSH2 0x082b
00000130: JUMPI
00000131: DUP1
00000132: PUSH4 0x6782fc9d
00000137: EQ
00000138: PUSH2 0x0858
0000013b: JUMPI
0000013c: DUP1
0000013d: PUSH4 0x6d151101
00000142: EQ
00000143: PUSH2 0x0878
00000146: JUMPI
00000147: DUP1
00000148: PUSH4 0x6daadb11
0000014d: EQ
0000014e: PUSH2 0x0898
00000151: JUMPI
00000152: DUP1
00000153: PUSH4 0x6fda62ed
00000158: EQ
00000159: PUSH2 0x08b8
0000015c: JUMPI
0000015d: DUP1
0000015e: PUSH4 0x749008ab
00000163: EQ
00000164: PUSH2 0x08d8
00000167: JUMPI
00000168: DUP1
00000169: PUSH4 0x7c9c9f16
0000016e: EQ
0000016f: PUSH2 0x08f8
00000172: JUMPI
00000173: DUP1
00000174: PUSH4 0x7e926b4b
00000179: EQ
0000017a: PUSH2 0x0918
0000017d: JUMPI
0000017e: DUP1
0000017f: PUSH4 0x85242fba
00000184: EQ
00000185: PUSH2 0x0938
00000188: JUMPI
00000189: DUP1
0000018a: PUSH4 0x86a07112
0000018f: EQ
00000190: PUSH2 0x0958
00000193: JUMPI
00000194: DUP1
00000195: PUSH4 0x877cac55
0000019a: EQ
0000019b: PUSH2 0x0978
0000019e: JUMPI
0000019f: DUP1
000001a0: PUSH4 0x8794b69d
000001a5: EQ
000001a6: PUSH2 0x0998
000001a9: JUMPI
000001aa: DUP1
000001ab: PUSH4 0x8818024e
000001b0: EQ
000001b1: PUSH2 0x09ad
000001b4: JUMPI
000001b5: DUP1
000001b6: PUSH4 0x886b5f53
000001bb: EQ
000001bc: PUSH2 0x09c9
000001bf: JUMPI
000001c0: DUP1
000001c1: PUSH4 0x89c06cb7
000001c6: EQ
000001c7: PUSH2 0x09e9
000001ca: JUMPI
000001cb: DUP1
000001cc: PUSH4 0x8b35c07a
000001d1: EQ
000001d2: PUSH2 0x0a16
000001d5: JUMPI
000001d6: DUP1
000001d7: PUSH4 0x8e5ee457
000001dc: EQ
000001dd: PUSH2 0x0a36
000001e0: JUMPI
000001e1: DUP1
000001e2: PUSH4 0x9043684a
000001e7: EQ
000001e8: PUSH2 0x0a56
000001eb: JUMPI
000001ec: DUP1
000001ed: PUSH4 0x9bed25d8
000001f2: EQ
000001f3: PUSH2 0x0a76
000001f6: JUMPI
000001f7: DUP1
000001f8: PUSH4 0xa2993491
000001fd: EQ
000001fe: PUSH2 0x0a8b
00000201: JUMPI
00000202: DUP1
00000203: PUSH4 0xa4298ab6
00000208: EQ
00000209: PUSH2 0x0aab
0000020c: JUMPI
0000020d: DUP1
0000020e: PUSH4 0xa58edf09
00000213: EQ
00000214: PUSH2 0x0ac0
00000217: JUMPI
00000218: DUP1
00000219: PUSH4 0xa620caf4
0000021e: EQ
0000021f: PUSH2 0x0ae0
00000222: JUMPI
00000223: DUP1
00000224: PUSH4 0xa762eb8c
00000229: EQ
0000022a: PUSH2 0x0b00
0000022d: JUMPI
0000022e: DUP1
0000022f: PUSH4 0xbe19d11f
00000234: EQ
00000235: PUSH2 0x0b36
00000238: JUMPI
00000239: DUP1
0000023a: PUSH4 0xc38c5813
0000023f: EQ
00000240: PUSH2 0x0b4b
00000243: JUMPI
00000244: DUP1
00000245: PUSH4 0xc462342c
0000024a: EQ
0000024b: PUSH2 0x0b6b
0000024e: JUMPI
0000024f: DUP1
00000250: PUSH4 0xcb19735e
00000255: EQ
00000256: PUSH2 0x0b8b
00000259: JUMPI
0000025a: DUP1
0000025b: PUSH4 0xcb819df9
00000260: EQ
00000261: PUSH2 0x0ba1
00000264: JUMPI
00000265: DUP1
00000266: PUSH4 0xcc22678e
0000026b: EQ
0000026c: PUSH2 0x0bc1
0000026f: JUMPI
00000270: DUP1
00000271: PUSH4 0xcf2fd14d
00000276: EQ
00000277: PUSH2 0x0bd6
0000027a: JUMPI
0000027b: DUP1
0000027c: PUSH4 0xd6cfd38d
00000281: EQ
00000282: PUSH2 0x0bf6
00000285: JUMPI
00000286: DUP1
00000287: PUSH4 0xd92e233d
0000028c: EQ
0000028d: PUSH2 0x0cc3
00000290: JUMPI
00000291: DUP1
00000292: PUSH4 0xdb1a9878
00000297: EQ
00000298: PUSH2 0x0cd8
0000029b: JUMPI
0000029c: DUP1
0000029d: PUSH4 0xdd420fa0
000002a2: EQ
000002a3: PUSH2 0x0cf8
000002a6: JUMPI
000002a7: DUP1
000002a8: PUSH4 0xdf2981b3
000002ad: EQ
000002ae: PUSH2 0x0d0d
000002b1: JUMPI
000002b2: DUP1
000002b3: PUSH4 0xdfbe0ece
000002b8: EQ
000002b9: PUSH2 0x0d20
000002bc: JUMPI
000002bd: DUP1
000002be: PUSH4 0xe1c7392a
000002c3: EQ
000002c4: PUSH2 0x0d40
000002c7: JUMPI
000002c8: DUP1
000002c9: PUSH4 0xe3aabeeb
000002ce: EQ
000002cf: PUSH2 0x0d55
000002d2: JUMPI
000002d3: DUP1
000002d4: PUSH4 0xe4429845
000002d9: EQ
000002da: PUSH2 0x0d75
000002dd: JUMPI
000002de: DUP1
000002df: PUSH4 0xe45deb98
000002e4: EQ
000002e5: PUSH2 0x0d95
000002e8: JUMPI
000002e9: DUP1
000002ea: PUSH4 0xf2fde38b
000002ef: EQ
000002f0: PUSH2 0x0db5
000002f3: JUMPI
000002f4: DUP1
000002f5: PUSH4 0xf3e41b10
000002fa: EQ
000002fb: PUSH2 0x0dd5
000002fe: JUMPI
000002ff: DUP1
00000300: PUSH4 0xf6b34db3
00000305: EQ
00000306: PUSH2 0x0df5
00000309: JUMPI
0000030a: PUSH2 0x044b
0000030d: JUMP
0000030e: JUMPDEST
0000030f: CALLDATASIZE
00000310: PUSH2 0x044b
00000313: JUMPI
00000314: PUSH1 0x40
00000316: DUP1
00000317: MLOAD
00000318: PUSH1 0x80
0000031a: DUP1
0000031b: DUP3
0000031c: ADD
0000031d: DUP4
0000031e: MSTORE
0000031f: PUSH2 0x02ff
00000322: PUSH1 0xe2
00000324: SHL
00000325: DUP3
00000326: DUP5
00000327: ADD
00000328: SWAP1
00000329: DUP2
0000032a: MSTORE
0000032b: PUSH4 0x01808081
00000330: PUSH1 0xe1
00000332: SHL
00000333: PUSH1 0x60
00000335: DUP1
00000336: DUP6
00000337: ADD
00000338: SWAP2
00000339: SWAP1
0000033a: SWAP2
0000033b: MSTORE
0000033c: SWAP1
0000033d: DUP4
0000033e: MSTORE
0000033f: DUP4
00000340: MLOAD
00000341: PUSH1 0xc0
00000343: DUP2
00000344: ADD
00000345: DUP6
00000346: MSTORE
00000347: PUSH1 0x09
00000349: SLOAD
0000034a: DUP2
0000034b: MSTORE
0000034c: PUSH1 0x00
0000034e: PUSH1 0x20
00000350: DUP1
00000351: DUP4
00000352: ADD
00000353: DUP3
00000354: SWAP1
00000355: MSTORE
00000356: CALLER
00000357: DUP4
00000358: DUP9
00000359: ADD
0000035a: DUP2
0000035b: SWAP1
0000035c: MSTORE
0000035d: SWAP4
0000035e: DUP4
0000035f: ADD
00000360: DUP5
00000361: SWAP1
00000362: MSTORE
00000363: CALLVALUE
00000364: SWAP5
00000365: DUP4
00000366: ADD
00000367: SWAP5
00000368: DUP6
00000369: MSTORE
0000036a: DUP7
0000036b: MLOAD
0000036c: DUP1
0000036d: DUP3
0000036e: ADD
0000036f: SWAP1
00000370: SWAP8
00000371: MSTORE
00000372: SWAP1
00000373: DUP7
00000374: MSTORE
00000375: PUSH1 0xa0
00000377: DUP3
00000378: ADD
00000379: SWAP6
0000037a: SWAP1
0000037b: SWAP6
0000037c: MSTORE
0000037d: SWAP4
0000037e: DUP4
0000037f: ADD
00000380: DUP5
00000381: SWAP1
00000382: MSTORE
00000383: SWAP3
00000384: MLOAD
00000385: SWAP1
00000386: MLOAD
00000387: PUSH2 0x0390
0000038a: SWAP2
0000038b: SWAP1
0000038c: PUSH2 0x0e15
0000038f: JUMP
00000390: JUMPDEST
00000391: PUSH2 0x03a2
00000394: DUP2
00000395: PUSH1 0x00
00000397: ADD
00000398: MLOAD
00000399: DUP3
0000039a: PUSH1 0x20
0000039c: ADD
0000039d: MLOAD
0000039e: PUSH2 0x0ec6
000003a1: JUMP
000003a2: JUMPDEST
000003a3: PUSH1 0x20
000003a5: DUP2
000003a6: ADD
000003a7: MLOAD
000003a8: DUP1
000003a9: MLOAD
000003aa: PUSH1 0x80
000003ac: SWAP1
000003ad: SWAP2
000003ae: ADD
000003af: MLOAD
000003b0: PUSH1 0x40
000003b2: MLOAD
000003b3: PUSH1 0x00
000003b5: DUP1
000003b6: MLOAD
000003b7: PUSH1 0x20
000003b9: PUSH2 0x4fb9
000003bc: DUP4
000003bd: CODECOPY
000003be: DUP2
000003bf: MLOAD
000003c0: SWAP2
000003c1: MSTORE
000003c2: SWAP3
000003c3: PUSH2 0x03ce
000003c6: SWAP3
000003c7: PUSH1 0x01
000003c9: SWAP3
000003ca: PUSH2 0x3ed6
000003cd: JUMP
000003ce: JUMPDEST
000003cf: PUSH1 0x40
000003d1: MLOAD
000003d2: DUP1
000003d3: SWAP2
000003d4: SUB
000003d5: SWAP1
000003d6: LOG1
000003d7: PUSH1 0x06
000003d9: SLOAD
000003da: PUSH1 0x40
000003dc: MLOAD
000003dd: PUSH4 0x12b50f73
000003e2: PUSH1 0xe0
000003e4: SHL
000003e5: DUP2
000003e6: MSTORE
000003e7: PUSH1 0x01
000003e9: PUSH1 0x01
000003eb: PUSH1 0xa0
000003ed: SHL
000003ee: SUB
000003ef: SWAP1
000003f0: SWAP2
000003f1: AND
000003f2: SWAP1
000003f3: PUSH4 0x12b50f73
000003f8: SWAP1
000003f9: PUSH2 0x0406
000003fc: SWAP1
000003fd: DUP5
000003fe: SWAP1
000003ff: PUSH1 0x04
00000401: ADD
00000402: PUSH2 0x3f56
00000405: JUMP
00000406: JUMPDEST
00000407: PUSH1 0x20
00000409: PUSH1 0x40
0000040b: MLOAD
0000040c: DUP1
0000040d: DUP4
0000040e: SUB
0000040f: DUP2
00000410: PUSH1 0x00
00000412: DUP8
00000413: GAS
00000414: CALL
00000415: ISZERO
00000416: DUP1
00000417: ISZERO
00000418: PUSH2 0x0425
0000041b: JUMPI
0000041c: RETURNDATASIZE
0000041d: PUSH1 0x00
0000041f: DUP1
00000420: RETURNDATACOPY
00000421: RETURNDATASIZE
00000422: PUSH1 0x00
00000424: REVERT
00000425: JUMPDEST
00000426: POP
00000427: POP
00000428: POP
00000429: POP
0000042a: PUSH1 0x40
0000042c: MLOAD
0000042d: RETURNDATASIZE
0000042e: PUSH1 0x1f
00000430: NOT
00000431: PUSH1 0x1f
00000433: DUP3
00000434: ADD
00000435: AND
00000436: DUP3
00000437: ADD
00000438: DUP1
00000439: PUSH1 0x40
0000043b: MSTORE
0000043c: POP
0000043d: DUP2
0000043e: ADD
0000043f: SWAP1
00000440: PUSH2 0x0449
00000443: SWAP2
00000444: SWAP1
00000445: PUSH2 0x3ff6
00000448: JUMP
00000449: JUMPDEST
0000044a: STOP
0000044b: JUMPDEST
0000044c: PUSH2 0x0449
0000044f: PUSH2 0x10fa
00000452: JUMP
00000453: JUMPDEST
00000454: CALLVALUE
00000455: DUP1
00000456: ISZERO
00000457: PUSH2 0x045f
0000045a: JUMPI
0000045b: PUSH1 0x00
0000045d: DUP1
0000045e: REVERT
0000045f: JUMPDEST
00000460: POP
00000461: PUSH2 0x0449
00000464: PUSH2 0x046e
00000467: CALLDATASIZE
00000468: PUSH1 0x04
0000046a: PUSH2 0x402a
0000046d: JUMP
0000046e: JUMPDEST
0000046f: PUSH2 0x110c
00000472: JUMP
00000473: JUMPDEST
00000474: CALLVALUE
00000475: DUP1
00000476: ISZERO
00000477: PUSH2 0x047f
0000047a: JUMPI
0000047b: PUSH1 0x00
0000047d: DUP1
0000047e: REVERT
0000047f: JUMPDEST
00000480: POP
00000481: PUSH1 0x07
00000483: SLOAD
00000484: PUSH2 0x0493
00000487: SWAP1
00000488: PUSH1 0x01
0000048a: PUSH1 0x01
0000048c: PUSH1 0xa0
0000048e: SHL
0000048f: SUB
00000490: AND
00000491: DUP2
00000492: JUMP
00000493: JUMPDEST
00000494: PUSH1 0x40
00000496: MLOAD
00000497: PUSH1 0x01
00000499: PUSH1 0x01
0000049b: PUSH1 0xa0
0000049d: SHL
0000049e: SUB
0000049f: SWAP1
000004a0: SWAP2
000004a1: AND
000004a2: DUP2
000004a3: MSTORE
000004a4: PUSH1 0x20
000004a6: ADD
000004a7: JUMPDEST
000004a8: PUSH1 0x40
000004aa: MLOAD
000004ab: DUP1
000004ac: SWAP2
000004ad: SUB
000004ae: SWAP1
000004af: RETURN
000004b0: JUMPDEST
000004b1: CALLVALUE
000004b2: DUP1
000004b3: ISZERO
000004b4: PUSH2 0x04bc
000004b7: JUMPI
000004b8: PUSH1 0x00
000004ba: DUP1
000004bb: REVERT
000004bc: JUMPDEST
000004bd: POP
000004be: PUSH2 0x0493
000004c1: PUSH2 0x04cb
000004c4: CALLDATASIZE
000004c5: PUSH1 0x04
000004c7: PUSH2 0x4045
000004ca: JUMP
000004cb: JUMPDEST
000004cc: PUSH2 0x117a
000004cf: JUMP
000004d0: JUMPDEST
000004d1: CALLVALUE
000004d2: DUP1
000004d3: ISZERO
000004d4: PUSH2 0x04dc
000004d7: JUMPI
000004d8: PUSH1 0x00
000004da: DUP1
000004db: REVERT
000004dc: JUMPDEST
000004dd: POP
000004de: PUSH2 0x04f0
000004e1: PUSH2 0x04eb
000004e4: CALLDATASIZE
000004e5: PUSH1 0x04
000004e7: PUSH2 0x402a
000004ea: JUMP
000004eb: JUMPDEST
000004ec: PUSH2 0x11a4
000004ef: JUMP
000004f0: JUMPDEST
000004f1: PUSH1 0x40
000004f3: MLOAD
000004f4: SWAP1
000004f5: ISZERO
000004f6: ISZERO
000004f7: DUP2
000004f8: MSTORE
000004f9: PUSH1 0x20
000004fb: ADD
000004fc: PUSH2 0x04a7
000004ff: JUMP
00000500: JUMPDEST
00000501: CALLVALUE
00000502: DUP1
00000503: ISZERO
00000504: PUSH2 0x050c
00000507: JUMPI
00000508: PUSH1 0x00
0000050a: DUP1
0000050b: REVERT
0000050c: JUMPDEST
0000050d: POP
0000050e: PUSH2 0x052d
00000511: PUSH2 0x051b
00000514: CALLDATASIZE
00000515: PUSH1 0x04
00000517: PUSH2 0x4045
0000051a: JUMP
0000051b: JUMPDEST
0000051c: PUSH1 0x0b
0000051e: PUSH1 0x20
00000520: MSTORE
00000521: PUSH1 0x00
00000523: SWAP1
00000524: DUP2
00000525: MSTORE
00000526: PUSH1 0x40
00000528: SWAP1
00000529: KECCAK256
0000052a: SLOAD
0000052b: DUP2
0000052c: JUMP
0000052d: JUMPDEST
0000052e: PUSH1 0x40
00000530: MLOAD
00000531: SWAP1
00000532: DUP2
00000533: MSTORE
00000534: PUSH1 0x20
00000536: ADD
00000537: PUSH2 0x04a7
0000053a: JUMP
0000053b: JUMPDEST
0000053c: CALLVALUE
0000053d: DUP1
0000053e: ISZERO
0000053f: PUSH2 0x0547
00000542: JUMPI
00000543: PUSH1 0x00
00000545: DUP1
00000546: REVERT
00000547: JUMPDEST
00000548: POP
00000549: PUSH2 0x0493
0000054c: PUSH2 0x0556
0000054f: CALLDATASIZE
00000550: PUSH1 0x04
00000552: PUSH2 0x4045
00000555: JUMP
00000556: JUMPDEST
00000557: PUSH2 0x11ed
0000055a: JUMP
0000055b: JUMPDEST
0000055c: CALLVALUE
0000055d: DUP1
0000055e: ISZERO
0000055f: PUSH2 0x0567
00000562: JUMPI
00000563: PUSH1 0x00
00000565: DUP1
00000566: REVERT
00000567: JUMPDEST
00000568: POP
00000569: PUSH2 0x052d
0000056c: PUSH2 0x0576
0000056f: CALLDATASIZE
00000570: PUSH1 0x04
00000572: PUSH2 0x4076
00000575: JUMP
00000576: JUMPDEST
00000577: PUSH1 0x0c
00000579: PUSH1 0x20
0000057b: SWAP1
0000057c: DUP2
0000057d: MSTORE
0000057e: PUSH1 0x00
00000580: SWAP3
00000581: DUP4
00000582: MSTORE
00000583: PUSH1 0x40
00000585: DUP1
00000586: DUP5
00000587: KECCAK256
00000588: SWAP1
00000589: SWAP2
0000058a: MSTORE
0000058b: SWAP1
0000058c: DUP3
0000058d: MSTORE
0000058e: SWAP1
0000058f: KECCAK256
00000590: SLOAD
00000591: DUP2
00000592: JUMP
00000593: JUMPDEST
00000594: CALLVALUE
00000595: DUP1
00000596: ISZERO
00000597: PUSH2 0x059f
0000059a: JUMPI
0000059b: PUSH1 0x00
0000059d: DUP1
0000059e: REVERT
0000059f: JUMPDEST
000005a0: POP
000005a1: PUSH2 0x0449
000005a4: PUSH2 0x05ae
000005a7: CALLDATASIZE
000005a8: PUSH1 0x04
000005aa: PUSH2 0x41d8
000005ad: JUMP
000005ae: JUMPDEST
000005af: PUSH2 0x11fd
000005b2: JUMP
000005b3: JUMPDEST
000005b4: CALLVALUE
000005b5: DUP1
000005b6: ISZERO
000005b7: PUSH2 0x05bf
000005ba: JUMPI
000005bb: PUSH1 0x00
000005bd: DUP1
000005be: REVERT
000005bf: JUMPDEST
000005c0: POP
000005c1: PUSH1 0x06
000005c3: SLOAD
000005c4: PUSH2 0x0493
000005c7: SWAP1
000005c8: PUSH1 0x01
000005ca: PUSH1 0x01
000005cc: PUSH1 0xa0
000005ce: SHL
000005cf: SUB
000005d0: AND
000005d1: DUP2
000005d2: JUMP
000005d3: JUMPDEST
000005d4: CALLVALUE
000005d5: DUP1
000005d6: ISZERO
000005d7: PUSH2 0x05df
000005da: JUMPI
000005db: PUSH1 0x00
000005dd: DUP1
000005de: REVERT
000005df: JUMPDEST
000005e0: POP
000005e1: PUSH2 0x04f0
000005e4: PUSH2 0x12e9
000005e7: JUMP
000005e8: JUMPDEST
000005e9: CALLVALUE
000005ea: DUP1
000005eb: ISZERO
000005ec: PUSH2 0x05f4
000005ef: JUMPI
000005f0: PUSH1 0x00
000005f2: DUP1
000005f3: REVERT
000005f4: JUMPDEST
000005f5: POP
000005f6: PUSH2 0x04f0
000005f9: PUSH2 0x0603
000005fc: CALLDATASIZE
000005fd: PUSH1 0x04
000005ff: PUSH2 0x402a
00000602: JUMP
00000603: JUMPDEST
00000604: PUSH2 0x1334
00000607: JUMP
00000608: JUMPDEST
00000609: CALLVALUE
0000060a: DUP1
0000060b: ISZERO
0000060c: PUSH2 0x0614
0000060f: JUMPI
00000610: PUSH1 0x00
00000612: DUP1
00000613: REVERT
00000614: JUMPDEST
00000615: POP
00000616: PUSH2 0x061d
00000619: PUSH2 0x1368
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH1 0x40
00000620: MLOAD
00000621: PUSH2 0x04a7
00000624: SWAP2
00000625: SWAP1
00000626: PUSH2 0x4309
00000629: JUMP
0000062a: JUMPDEST
0000062b: PUSH2 0x04f0
0000062e: PUSH2 0x0638
00000631: CALLDATASIZE
00000632: PUSH1 0x04
00000634: PUSH2 0x4472
00000637: JUMP
00000638: JUMPDEST
00000639: PUSH2 0x13ca
0000063c: JUMP
0000063d: JUMPDEST
0000063e: CALLVALUE
0000063f: DUP1
00000640: ISZERO
00000641: PUSH2 0x0649
00000644: JUMPI
00000645: PUSH1 0x00
00000647: DUP1
00000648: REVERT
00000649: JUMPDEST
0000064a: POP
0000064b: PUSH2 0x0449
0000064e: PUSH2 0x0658
00000651: CALLDATASIZE
00000652: PUSH1 0x04
00000654: PUSH2 0x41d8
00000657: JUMP
00000658: JUMPDEST
00000659: PUSH2 0x14c5
0000065c: JUMP
0000065d: JUMPDEST
0000065e: CALLVALUE
0000065f: DUP1
00000660: ISZERO
00000661: PUSH2 0x0669
00000664: JUMPI
00000665: PUSH1 0x00
00000667: DUP1
00000668: REVERT
00000669: JUMPDEST
0000066a: POP
0000066b: PUSH1 0x00
0000066d: SLOAD
0000066e: PUSH2 0x067d
00000671: SWAP1
00000672: PUSH3 0x010000
00000676: SWAP1
00000677: DIV
00000678: PUSH1 0x60
0000067a: SHL
0000067b: DUP2
0000067c: JUMP
0000067d: JUMPDEST
0000067e: PUSH1 0x40
00000680: MLOAD
00000681: PUSH1 0x01
00000683: PUSH1 0x01
00000685: PUSH1 0x60
00000687: SHL
00000688: SUB
00000689: NOT
0000068a: SWAP1
0000068b: SWAP2
0000068c: AND
0000068d: DUP2
0000068e: MSTORE
0000068f: PUSH1 0x20
00000691: ADD
00000692: PUSH2 0x04a7
00000695: JUMP
00000696: JUMPDEST
00000697: CALLVALUE
00000698: DUP1
00000699: ISZERO
0000069a: PUSH2 0x06a2
0000069d: JUMPI
0000069e: PUSH1 0x00
000006a0: DUP1
000006a1: REVERT
000006a2: JUMPDEST
000006a3: POP
000006a4: PUSH2 0x06af
000006a7: PUSH2 0x02ff
000006aa: PUSH1 0xe2
000006ac: SHL
000006ad: DUP2
000006ae: JUMP
000006af: JUMPDEST
000006b0: PUSH1 0x40
000006b2: MLOAD
000006b3: PUSH1 0x01
000006b5: PUSH1 0x01
000006b7: PUSH1 0xe0
000006b9: SHL
000006ba: SUB
000006bb: NOT
000006bc: SWAP1
000006bd: SWAP2
000006be: AND
000006bf: DUP2
000006c0: MSTORE
000006c1: PUSH1 0x20
000006c3: ADD
000006c4: PUSH2 0x04a7
000006c7: JUMP
000006c8: JUMPDEST
000006c9: CALLVALUE
000006ca: DUP1
000006cb: ISZERO
000006cc: PUSH2 0x06d4
000006cf: JUMPI
000006d0: PUSH1 0x00
000006d2: DUP1
000006d3: REVERT
000006d4: JUMPDEST
000006d5: POP
000006d6: PUSH2 0x04f0
000006d9: PUSH2 0x06e3
000006dc: CALLDATASIZE
000006dd: PUSH1 0x04
000006df: PUSH2 0x44f0
000006e2: JUMP
000006e3: JUMPDEST
000006e4: PUSH1 0x0d
000006e6: PUSH1 0x20
000006e8: SWAP1
000006e9: DUP2
000006ea: MSTORE
000006eb: PUSH1 0x00
000006ed: SWAP3
000006ee: DUP4
000006ef: MSTORE
000006f0: PUSH1 0x40
000006f2: DUP1
000006f3: DUP5
000006f4: KECCAK256
000006f5: SWAP1
000006f6: SWAP2
000006f7: MSTORE
000006f8: SWAP1
000006f9: DUP3
000006fa: MSTORE
000006fb: SWAP1
000006fc: KECCAK256
000006fd: SLOAD
000006fe: PUSH1 0xff
00000700: AND
00000701: DUP2
00000702: JUMP
00000703: JUMPDEST
00000704: CALLVALUE
00000705: DUP1
00000706: ISZERO
00000707: PUSH2 0x070f
0000070a: JUMPI
0000070b: PUSH1 0x00
0000070d: DUP1
0000070e: REVERT
0000070f: JUMPDEST
00000710: POP
00000711: PUSH2 0x0449
00000714: PUSH2 0x071e
00000717: CALLDATASIZE
00000718: PUSH1 0x04
0000071a: PUSH2 0x455e
0000071d: JUMP
0000071e: JUMPDEST
0000071f: PUSH2 0x15b1
00000722: JUMP
00000723: JUMPDEST
00000724: CALLVALUE
00000725: DUP1
00000726: ISZERO
00000727: PUSH2 0x072f
0000072a: JUMPI
0000072b: PUSH1 0x00
0000072d: DUP1
0000072e: REVERT
0000072f: JUMPDEST
00000730: POP
00000731: PUSH2 0x052d
00000734: PUSH2 0x073e
00000737: CALLDATASIZE
00000738: PUSH1 0x04
0000073a: PUSH2 0x45f7
0000073d: JUMP
0000073e: JUMPDEST
0000073f: PUSH1 0x10
00000741: PUSH1 0x20
00000743: SWAP1
00000744: DUP2
00000745: MSTORE
00000746: PUSH1 0x00
00000748: SWAP3
00000749: DUP4
0000074a: MSTORE
0000074b: PUSH1 0x40
0000074d: DUP1
0000074e: DUP5
0000074f: KECCAK256
00000750: SWAP1
00000751: SWAP2
00000752: MSTORE
00000753: SWAP1
00000754: DUP3
00000755: MSTORE
00000756: SWAP1
00000757: KECCAK256
00000758: SLOAD
00000759: DUP2
0000075a: JUMP
0000075b: JUMPDEST
0000075c: CALLVALUE
0000075d: DUP1
0000075e: ISZERO
0000075f: PUSH2 0x0767
00000762: JUMPI
00000763: PUSH1 0x00
00000765: DUP1
00000766: REVERT
00000767: JUMPDEST
00000768: POP
00000769: PUSH2 0x0449
0000076c: PUSH2 0x0776
0000076f: CALLDATASIZE
00000770: PUSH1 0x04
00000772: PUSH2 0x461a
00000775: JUMP
00000776: JUMPDEST
00000777: PUSH2 0x169a
0000077a: JUMP
0000077b: JUMPDEST
0000077c: CALLVALUE
0000077d: DUP1
0000077e: ISZERO
0000077f: PUSH2 0x0787
00000782: JUMPI
00000783: PUSH1 0x00
00000785: DUP1
00000786: REVERT
00000787: JUMPDEST
00000788: POP
00000789: PUSH2 0x04f0
0000078c: PUSH2 0x0796
0000078f: CALLDATASIZE
00000790: PUSH1 0x04
00000792: PUSH2 0x467d
00000795: JUMP
00000796: JUMPDEST
00000797: PUSH1 0x0e
00000799: PUSH1 0x20
0000079b: SWAP1
0000079c: DUP2
0000079d: MSTORE
0000079e: PUSH1 0x00
000007a0: SWAP3
000007a1: DUP4
000007a2: MSTORE
000007a3: PUSH1 0x40
000007a5: DUP1
000007a6: DUP5
000007a7: KECCAK256
000007a8: SWAP1
000007a9: SWAP2
000007aa: MSTORE
000007ab: SWAP1
000007ac: DUP3
000007ad: MSTORE
000007ae: SWAP1
000007af: KECCAK256
000007b0: SLOAD
000007b1: PUSH1 0xff
000007b3: AND
000007b4: DUP2
000007b5: JUMP
000007b6: JUMPDEST
000007b7: CALLVALUE
000007b8: DUP1
000007b9: ISZERO
000007ba: PUSH2 0x07c2
000007bd: JUMPI
000007be: PUSH1 0x00
000007c0: DUP1
000007c1: REVERT
000007c2: JUMPDEST
000007c3: POP
000007c4: PUSH2 0x04f0
000007c7: PUSH2 0x1730
000007ca: JUMP
000007cb: JUMPDEST
000007cc: CALLVALUE
000007cd: DUP1
000007ce: ISZERO
000007cf: PUSH2 0x07d7
000007d2: JUMPI
000007d3: PUSH1 0x00
000007d5: DUP1
000007d6: REVERT
000007d7: JUMPDEST
000007d8: POP
000007d9: PUSH2 0x0449
000007dc: PUSH2 0x07e6
000007df: CALLDATASIZE
000007e0: PUSH1 0x04
000007e2: PUSH2 0x4045
000007e5: JUMP
000007e6: JUMPDEST
000007e7: PUSH2 0x1774
000007ea: JUMP
000007eb: JUMPDEST
000007ec: CALLVALUE
000007ed: DUP1
000007ee: ISZERO
000007ef: PUSH2 0x07f7
000007f2: JUMPI
000007f3: PUSH1 0x00
000007f5: DUP1
000007f6: REVERT
000007f7: JUMPDEST
000007f8: POP
000007f9: PUSH2 0x04f0
000007fc: PUSH2 0x0806
000007ff: CALLDATASIZE
00000800: PUSH1 0x04
00000802: PUSH2 0x469f
00000805: JUMP
00000806: JUMPDEST
00000807: PUSH2 0x1781
0000080a: JUMP
0000080b: JUMPDEST
0000080c: CALLVALUE
0000080d: DUP1
0000080e: ISZERO
0000080f: PUSH2 0x0817
00000812: JUMPI
00000813: PUSH1 0x00
00000815: DUP1
00000816: REVERT
00000817: JUMPDEST
00000818: POP
00000819: PUSH2 0x0449
0000081c: PUSH2 0x0826
0000081f: CALLDATASIZE
00000820: PUSH1 0x04
00000822: PUSH2 0x4745
00000825: JUMP
00000826: JUMPDEST
00000827: PUSH2 0x17a8
0000082a: JUMP
0000082b: JUMPDEST
0000082c: CALLVALUE
0000082d: DUP1
0000082e: ISZERO
0000082f: PUSH2 0x0837
00000832: JUMPI
00000833: PUSH1 0x00
00000835: DUP1
00000836: REVERT
00000837: JUMPDEST
00000838: POP
00000839: PUSH2 0x052d
0000083c: PUSH2 0x0846
0000083f: CALLDATASIZE
00000840: PUSH1 0x04
00000842: PUSH2 0x402a
00000845: JUMP
00000846: JUMPDEST
00000847: PUSH1 0x0f
00000849: PUSH1 0x20
0000084b: MSTORE
0000084c: PUSH1 0x00
0000084e: SWAP1
0000084f: DUP2
00000850: MSTORE
00000851: PUSH1 0x40
00000853: SWAP1
00000854: KECCAK256
00000855: SLOAD
00000856: DUP2
00000857: JUMP
00000858: JUMPDEST
00000859: CALLVALUE
0000085a: DUP1
0000085b: ISZERO
0000085c: PUSH2 0x0864
0000085f: JUMPI
00000860: PUSH1 0x00
00000862: DUP1
00000863: REVERT
00000864: JUMPDEST
00000865: POP
00000866: PUSH2 0x0449
00000869: PUSH2 0x0873
0000086c: CALLDATASIZE
0000086d: PUSH1 0x04
0000086f: PUSH2 0x479e
00000872: JUMP
00000873: JUMPDEST
00000874: PUSH2 0x180a
00000877: JUMP
00000878: JUMPDEST
00000879: CALLVALUE
0000087a: DUP1
0000087b: ISZERO
0000087c: PUSH2 0x0884
0000087f: JUMPI
00000880: PUSH1 0x00
00000882: DUP1
00000883: REVERT
00000884: JUMPDEST
00000885: POP
00000886: PUSH2 0x04f0
00000889: PUSH2 0x0893
0000088c: CALLDATASIZE
0000088d: PUSH1 0x04
0000088f: PUSH2 0x402a
00000892: JUMP
00000893: JUMPDEST
00000894: PUSH2 0x18b5
00000897: JUMP
00000898: JUMPDEST
00000899: CALLVALUE
0000089a: DUP1
0000089b: ISZERO
0000089c: PUSH2 0x08a4
0000089f: JUMPI
000008a0: PUSH1 0x00
000008a2: DUP1
000008a3: REVERT
000008a4: JUMPDEST
000008a5: POP
000008a6: PUSH2 0x0449
000008a9: PUSH2 0x08b3
000008ac: CALLDATASIZE
000008ad: PUSH1 0x04
000008af: PUSH2 0x402a
000008b2: JUMP
000008b3: JUMPDEST
000008b4: PUSH2 0x18f2
000008b7: JUMP
000008b8: JUMPDEST
000008b9: CALLVALUE
000008ba: DUP1
000008bb: ISZERO
000008bc: PUSH2 0x08c4
000008bf: JUMPI
000008c0: PUSH1 0x00
000008c2: DUP1
000008c3: REVERT
000008c4: JUMPDEST
000008c5: POP
000008c6: PUSH2 0x0449
000008c9: PUSH2 0x08d3
000008cc: CALLDATASIZE
000008cd: PUSH1 0x04
000008cf: PUSH2 0x4880
000008d2: JUMP
000008d3: JUMPDEST
000008d4: PUSH2 0x1923
000008d7: JUMP
000008d8: JUMPDEST
000008d9: CALLVALUE
000008da: DUP1
000008db: ISZERO
000008dc: PUSH2 0x08e4
000008df: JUMPI
000008e0: PUSH1 0x00
000008e2: DUP1
000008e3: REVERT
000008e4: JUMPDEST
000008e5: POP
000008e6: PUSH1 0x08
000008e8: SLOAD
000008e9: PUSH2 0x0493
000008ec: SWAP1
000008ed: PUSH1 0x01
000008ef: PUSH1 0x01
000008f1: PUSH1 0xa0
000008f3: SHL
000008f4: SUB
000008f5: AND
000008f6: DUP2
000008f7: JUMP
000008f8: JUMPDEST
000008f9: CALLVALUE
000008fa: DUP1
000008fb: ISZERO
000008fc: PUSH2 0x0904
000008ff: JUMPI
00000900: PUSH1 0x00
00000902: DUP1
00000903: REVERT
00000904: JUMPDEST
00000905: POP
00000906: PUSH2 0x0449
00000909: PUSH2 0x0913
0000090c: CALLDATASIZE
0000090d: PUSH1 0x04
0000090f: PUSH2 0x48eb
00000912: JUMP
00000913: JUMPDEST
00000914: PUSH2 0x199a
00000917: JUMP
00000918: JUMPDEST
00000919: CALLVALUE
0000091a: DUP1
0000091b: ISZERO
0000091c: PUSH2 0x0924
0000091f: JUMPI
00000920: PUSH1 0x00
00000922: DUP1
00000923: REVERT
00000924: JUMPDEST
00000925: POP
00000926: PUSH2 0x04f0
00000929: PUSH2 0x0933
0000092c: CALLDATASIZE
0000092d: PUSH1 0x04
0000092f: PUSH2 0x4915
00000932: JUMP
00000933: JUMPDEST
00000934: PUSH2 0x19be
00000937: JUMP
00000938: JUMPDEST
00000939: CALLVALUE
0000093a: DUP1
0000093b: ISZERO
0000093c: PUSH2 0x0944
0000093f: JUMPI
00000940: PUSH1 0x00
00000942: DUP1
00000943: REVERT
00000944: JUMPDEST
00000945: POP
00000946: PUSH2 0x04f0
00000949: PUSH2 0x0953
0000094c: CALLDATASIZE
0000094d: PUSH1 0x04
0000094f: PUSH2 0x4932
00000952: JUMP
00000953: JUMPDEST
00000954: PUSH2 0x1a79
00000957: JUMP
00000958: JUMPDEST
00000959: CALLVALUE
0000095a: DUP1
0000095b: ISZERO
0000095c: PUSH2 0x0964
0000095f: JUMPI
00000960: PUSH1 0x00
00000962: DUP1
00000963: REVERT
00000964: JUMPDEST
00000965: POP
00000966: PUSH2 0x0449
00000969: PUSH2 0x0973
0000096c: CALLDATASIZE
0000096d: PUSH1 0x04
0000096f: PUSH2 0x4966
00000972: JUMP
00000973: JUMPDEST
00000974: PUSH2 0x1a8c
00000977: JUMP
00000978: JUMPDEST
00000979: CALLVALUE
0000097a: DUP1
0000097b: ISZERO
0000097c: PUSH2 0x0984
0000097f: JUMPI
00000980: PUSH1 0x00
00000982: DUP1
00000983: REVERT
00000984: JUMPDEST
00000985: POP
00000986: PUSH2 0x0449
00000989: PUSH2 0x0993
0000098c: CALLDATASIZE
0000098d: PUSH1 0x04
0000098f: PUSH2 0x49a7
00000992: JUMP
00000993: JUMPDEST
00000994: PUSH2 0x1bac
00000997: JUMP
00000998: JUMPDEST
00000999: CALLVALUE
0000099a: DUP1
0000099b: ISZERO
0000099c: PUSH2 0x09a4
0000099f: JUMPI
000009a0: PUSH1 0x00
000009a2: DUP1
000009a3: REVERT
000009a4: JUMPDEST
000009a5: POP
000009a6: PUSH2 0x061d
000009a9: PUSH2 0x1c72
000009ac: JUMP
000009ad: JUMPDEST
000009ae: CALLVALUE
000009af: DUP1
000009b0: ISZERO
000009b1: PUSH2 0x09b9
000009b4: JUMPI
000009b5: PUSH1 0x00
000009b7: DUP1
000009b8: REVERT
000009b9: JUMPDEST
000009ba: POP
000009bb: PUSH2 0x052d
000009be: PUSH1 0x01
000009c0: PUSH1 0x01
000009c2: PUSH1 0xf8
000009c4: SHL
000009c5: SUB
000009c6: NOT
000009c7: DUP2
000009c8: JUMP
000009c9: JUMPDEST
000009ca: CALLVALUE
000009cb: DUP1
000009cc: ISZERO
000009cd: PUSH2 0x09d5
000009d0: JUMPI
000009d1: PUSH1 0x00
000009d3: DUP1
000009d4: REVERT
000009d5: JUMPDEST
000009d6: POP
000009d7: PUSH2 0x0449
000009da: PUSH2 0x09e4
000009dd: CALLDATASIZE
000009de: PUSH1 0x04
000009e0: PUSH2 0x402a
000009e3: JUMP
000009e4: JUMPDEST
000009e5: PUSH2 0x1cd2
000009e8: JUMP
000009e9: JUMPDEST
000009ea: CALLVALUE
000009eb: DUP1
000009ec: ISZERO
000009ed: PUSH2 0x09f5
000009f0: JUMPI
000009f1: PUSH1 0x00
000009f3: DUP1
000009f4: REVERT
000009f5: JUMPDEST
000009f6: POP
000009f7: PUSH2 0x052d
000009fa: PUSH2 0x0a04
000009fd: CALLDATASIZE
000009fe: PUSH1 0x04
00000a00: PUSH2 0x402a
00000a03: JUMP
00000a04: JUMPDEST
00000a05: PUSH1 0x01
00000a07: PUSH1 0x20
00000a09: MSTORE
00000a0a: PUSH1 0x00
00000a0c: SWAP1
00000a0d: DUP2
00000a0e: MSTORE
00000a0f: PUSH1 0x40
00000a11: SWAP1
00000a12: KECCAK256
00000a13: SLOAD
00000a14: DUP2
00000a15: JUMP
00000a16: JUMPDEST
00000a17: CALLVALUE
00000a18: DUP1
00000a19: ISZERO
00000a1a: PUSH2 0x0a22
00000a1d: JUMPI
00000a1e: PUSH1 0x00
00000a20: DUP1
00000a21: REVERT
00000a22: JUMPDEST
00000a23: POP
00000a24: PUSH2 0x0449
00000a27: PUSH2 0x0a31
00000a2a: CALLDATASIZE
00000a2b: PUSH1 0x04
00000a2d: PUSH2 0x402a
00000a30: JUMP
00000a31: JUMPDEST
00000a32: PUSH2 0x1cfc
00000a35: JUMP
00000a36: JUMPDEST
00000a37: CALLVALUE
00000a38: DUP1
00000a39: ISZERO
00000a3a: PUSH2 0x0a42
00000a3d: JUMPI
00000a3e: PUSH1 0x00
00000a40: DUP1
00000a41: REVERT
00000a42: JUMPDEST
00000a43: POP
00000a44: PUSH2 0x0449
00000a47: PUSH2 0x0a51
00000a4a: CALLDATASIZE
00000a4b: PUSH1 0x04
00000a4d: PUSH2 0x461a
00000a50: JUMP
00000a51: JUMPDEST
00000a52: PUSH2 0x1d2a
00000a55: JUMP
00000a56: JUMPDEST
00000a57: CALLVALUE
00000a58: DUP1
00000a59: ISZERO
00000a5a: PUSH2 0x0a62
00000a5d: JUMPI
00000a5e: PUSH1 0x00
00000a60: DUP1
00000a61: REVERT
00000a62: JUMPDEST
00000a63: POP
00000a64: PUSH2 0x0449
00000a67: PUSH2 0x0a71
00000a6a: CALLDATASIZE
00000a6b: PUSH1 0x04
00000a6d: PUSH2 0x49a7
00000a70: JUMP
00000a71: JUMPDEST
00000a72: PUSH2 0x1dc0
00000a75: JUMP
00000a76: JUMPDEST
00000a77: CALLVALUE
00000a78: DUP1
00000a79: ISZERO
00000a7a: PUSH2 0x0a82
00000a7d: JUMPI
00000a7e: PUSH1 0x00
00000a80: DUP1
00000a81: REVERT
00000a82: JUMPDEST
00000a83: POP
00000a84: PUSH2 0x04f0
00000a87: PUSH2 0x211f
00000a8a: JUMP
00000a8b: JUMPDEST
00000a8c: CALLVALUE
00000a8d: DUP1
00000a8e: ISZERO
00000a8f: PUSH2 0x0a97
00000a92: JUMPI
00000a93: PUSH1 0x00
00000a95: DUP1
00000a96: REVERT
00000a97: JUMPDEST
00000a98: POP
00000a99: PUSH2 0x0449
00000a9c: PUSH2 0x0aa6
00000a9f: CALLDATASIZE
00000aa0: PUSH1 0x04
00000aa2: PUSH2 0x4a32
00000aa5: JUMP
00000aa6: JUMPDEST
00000aa7: PUSH2 0x2172
00000aaa: JUMP
00000aab: JUMPDEST
00000aac: CALLVALUE
00000aad: DUP1
00000aae: ISZERO
00000aaf: PUSH2 0x0ab7
00000ab2: JUMPI
00000ab3: PUSH1 0x00
00000ab5: DUP1
00000ab6: REVERT
00000ab7: JUMPDEST
00000ab8: POP
00000ab9: PUSH2 0x061d
00000abc: PUSH2 0x229a
00000abf: JUMP
00000ac0: JUMPDEST
00000ac1: CALLVALUE
00000ac2: DUP1
00000ac3: ISZERO
00000ac4: PUSH2 0x0acc
00000ac7: JUMPI
00000ac8: PUSH1 0x00
00000aca: DUP1
00000acb: REVERT
00000acc: JUMPDEST
00000acd: POP
00000ace: PUSH2 0x0493
00000ad1: PUSH2 0x0adb
00000ad4: CALLDATASIZE
00000ad5: PUSH1 0x04
00000ad7: PUSH2 0x4045
00000ada: JUMP
00000adb: JUMPDEST
00000adc: PUSH2 0x22fa
00000adf: JUMP
00000ae0: JUMPDEST
00000ae1: CALLVALUE
00000ae2: DUP1
00000ae3: ISZERO
00000ae4: PUSH2 0x0aec
00000ae7: JUMPI
00000ae8: PUSH1 0x00
00000aea: DUP1
00000aeb: REVERT
00000aec: JUMPDEST
00000aed: POP
00000aee: PUSH2 0x0449
00000af1: PUSH2 0x0afb
00000af4: CALLDATASIZE
00000af5: PUSH1 0x04
00000af7: PUSH2 0x467d
00000afa: JUMP
00000afb: JUMPDEST
00000afc: PUSH2 0x230a
00000aff: JUMP
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 0x052d
00000b11: PUSH2 0x0b1b
00000b14: CALLDATASIZE
00000b15: PUSH1 0x04
00000b17: PUSH2 0x402a
00000b1a: JUMP
00000b1b: JUMPDEST
00000b1c: PUSH1 0x01
00000b1e: PUSH1 0x01
00000b20: PUSH1 0xa0
00000b22: SHL
00000b23: SUB
00000b24: AND
00000b25: PUSH1 0x00
00000b27: SWAP1
00000b28: DUP2
00000b29: MSTORE
00000b2a: PUSH1 0x01
00000b2c: PUSH1 0x20
00000b2e: MSTORE
00000b2f: PUSH1 0x40
00000b31: SWAP1
00000b32: KECCAK256
00000b33: SLOAD
00000b34: SWAP1
00000b35: JUMP
00000b36: JUMPDEST
00000b37: CALLVALUE
00000b38: DUP1
00000b39: ISZERO
00000b3a: PUSH2 0x0b42
00000b3d: JUMPI
00000b3e: PUSH1 0x00
00000b40: DUP1
00000b41: REVERT
00000b42: JUMPDEST
00000b43: POP
00000b44: PUSH2 0x04f0
00000b47: PUSH2 0x234d
00000b4a: JUMP
00000b4b: JUMPDEST
00000b4c: CALLVALUE
00000b4d: DUP1
00000b4e: ISZERO
00000b4f: PUSH2 0x0b57
00000b52: JUMPI
00000b53: PUSH1 0x00
00000b55: DUP1
00000b56: REVERT
00000b57: JUMPDEST
00000b58: POP
00000b59: PUSH2 0x04f0
00000b5c: PUSH2 0x0b66
00000b5f: CALLDATASIZE
00000b60: PUSH1 0x04
00000b62: PUSH2 0x402a
00000b65: JUMP
00000b66: JUMPDEST
00000b67: PUSH2 0x2374
00000b6a: JUMP
00000b6b: JUMPDEST
00000b6c: CALLVALUE
00000b6d: DUP1
00000b6e: ISZERO
00000b6f: PUSH2 0x0b77
00000b72: JUMPI
00000b73: PUSH1 0x00
00000b75: DUP1
00000b76: REVERT
00000b77: JUMPDEST
00000b78: POP
00000b79: PUSH2 0x0449
00000b7c: PUSH2 0x0b86
00000b7f: CALLDATASIZE
00000b80: PUSH1 0x04
00000b82: PUSH2 0x4a68
00000b85: JUMP
00000b86: JUMPDEST
00000b87: PUSH2 0x23a8
00000b8a: JUMP
00000b8b: JUMPDEST
00000b8c: CALLVALUE
00000b8d: DUP1
00000b8e: ISZERO
00000b8f: PUSH2 0x0b97
00000b92: JUMPI
00000b93: PUSH1 0x00
00000b95: DUP1
00000b96: REVERT
00000b97: JUMPDEST
00000b98: POP
00000b99: PUSH2 0x052d
00000b9c: PUSH1 0x09
00000b9e: SLOAD
00000b9f: DUP2
00000ba0: JUMP
00000ba1: JUMPDEST
00000ba2: CALLVALUE
00000ba3: DUP1
00000ba4: ISZERO
00000ba5: PUSH2 0x0bad
00000ba8: JUMPI
00000ba9: PUSH1 0x00
00000bab: DUP1
00000bac: REVERT
00000bad: JUMPDEST
00000bae: POP
00000baf: PUSH2 0x0449
00000bb2: PUSH2 0x0bbc
00000bb5: CALLDATASIZE
00000bb6: PUSH1 0x04
00000bb8: PUSH2 0x402a
00000bbb: JUMP
00000bbc: JUMPDEST
00000bbd: PUSH2 0x2441
00000bc0: JUMP
00000bc1: JUMPDEST
00000bc2: CALLVALUE
00000bc3: DUP1
00000bc4: ISZERO
00000bc5: PUSH2 0x0bcd
00000bc8: JUMPI
00000bc9: PUSH1 0x00
00000bcb: DUP1
00000bcc: REVERT
00000bcd: JUMPDEST
00000bce: POP
00000bcf: PUSH2 0x04f0
00000bd2: PUSH2 0x246b
00000bd5: JUMP
00000bd6: JUMPDEST
00000bd7: CALLVALUE
00000bd8: DUP1
00000bd9: ISZERO
00000bda: PUSH2 0x0be2
00000bdd: JUMPI
00000bde: PUSH1 0x00
00000be0: DUP1
00000be1: REVERT
00000be2: JUMPDEST
00000be3: POP
00000be4: PUSH2 0x04f0
00000be7: PUSH2 0x0bf1
00000bea: CALLDATASIZE
00000beb: PUSH1 0x04
00000bed: PUSH2 0x402a
00000bf0: JUMP
00000bf1: JUMPDEST
00000bf2: PUSH2 0x2492
00000bf5: JUMP
00000bf6: JUMPDEST
00000bf7: CALLVALUE
00000bf8: DUP1
00000bf9: ISZERO
00000bfa: PUSH2 0x0c02
00000bfd: JUMPI
00000bfe: PUSH1 0x00
00000c00: DUP1
00000c01: REVERT
00000c02: JUMPDEST
00000c03: POP
00000c04: PUSH2 0x0cb0
00000c07: PUSH2 0x0c11
00000c0a: CALLDATASIZE
00000c0b: PUSH1 0x04
00000c0d: PUSH2 0x4045
00000c10: JUMP
00000c11: JUMPDEST
00000c12: PUSH1 0x0a
00000c14: PUSH1 0x20
00000c16: SWAP1
00000c17: DUP2
00000c18: MSTORE
00000c19: PUSH1 0x00
00000c1b: SWAP2
00000c1c: DUP3
00000c1d: MSTORE
00000c1e: PUSH1 0x40
00000c20: SWAP2
00000c21: DUP3
00000c22: SWAP1
00000c23: KECCAK256
00000c24: DUP3
00000c25: MLOAD
00000c26: PUSH1 0x60
00000c28: DUP1
00000c29: DUP3
00000c2a: ADD
00000c2b: DUP6
00000c2c: MSTORE
00000c2d: DUP3
00000c2e: SLOAD
00000c2f: PUSH1 0x01
00000c31: PUSH1 0x01
00000c33: PUSH1 0x80
00000c35: SHL
00000c36: SUB
00000c37: DUP1
00000c38: DUP3
00000c39: AND
00000c3a: DUP5
00000c3b: MSTORE
00000c3c: PUSH1 0x01
00000c3e: PUSH1 0x80
00000c40: SHL
00000c41: SWAP2
00000c42: DUP3
00000c43: SWAP1
00000c44: DIV
00000c45: DUP2
00000c46: AND
00000c47: DUP5
00000c48: DUP8
00000c49: ADD
00000c4a: MSTORE
00000c4b: PUSH1 0x01
00000c4d: DUP6
00000c4e: ADD
00000c4f: SLOAD
00000c50: DUP5
00000c51: DUP9
00000c52: ADD
00000c53: MSTORE
00000c54: DUP7
00000c55: MLOAD
00000c56: SWAP3
00000c57: DUP4
00000c58: ADD
00000c59: DUP8
00000c5a: MSTORE
00000c5b: PUSH1 0x02
00000c5d: DUP6
00000c5e: ADD
00000c5f: SLOAD
00000c60: DUP1
00000c61: DUP3
00000c62: AND
00000c63: DUP5
00000c64: MSTORE
00000c65: SWAP2
00000c66: SWAP1
00000c67: SWAP2
00000c68: DIV
00000c69: AND
00000c6a: SWAP4
00000c6b: DUP2
00000c6c: ADD
00000c6d: SWAP4
00000c6e: SWAP1
00000c6f: SWAP4
00000c70: MSTORE
00000c71: PUSH1 0x03
00000c73: DUP3
00000c74: ADD
00000c75: SLOAD
00000c76: SWAP4
00000c77: DUP4
00000c78: ADD
00000c79: SWAP4
00000c7a: SWAP1
00000c7b: SWAP4
00000c7c: MSTORE
00000c7d: PUSH1 0x04
00000c7f: DUP2
00000c80: ADD
00000c81: SLOAD
00000c82: PUSH1 0x05
00000c84: DUP3
00000c85: ADD
00000c86: SLOAD
00000c87: PUSH1 0x06
00000c89: DUP4
00000c8a: ADD
00000c8b: SLOAD
00000c8c: PUSH1 0x07
00000c8e: SWAP1
00000c8f: SWAP4
00000c90: ADD
00000c91: SLOAD
00000c92: PUSH1 0xff
00000c94: DUP4
00000c95: AND
00000c96: SWAP4
00000c97: PUSH1 0x01
00000c99: PUSH1 0x01
00000c9b: PUSH1 0xa0
00000c9d: SHL
00000c9e: SUB
00000c9f: PUSH2 0x0100
00000ca2: SWAP1
00000ca3: SWAP5
00000ca4: DIV
00000ca5: DUP5
00000ca6: AND
00000ca7: SWAP4
00000ca8: SWAP3
00000ca9: DUP4
00000caa: AND
00000cab: SWAP3
00000cac: AND
00000cad: SWAP1
00000cae: DUP8
00000caf: JUMP
00000cb0: JUMPDEST
00000cb1: PUSH1 0x40
00000cb3: MLOAD
00000cb4: PUSH2 0x04a7
00000cb7: SWAP8
00000cb8: SWAP7
00000cb9: SWAP6
00000cba: SWAP5
00000cbb: SWAP4
00000cbc: SWAP3
00000cbd: SWAP2
00000cbe: SWAP1
00000cbf: PUSH2 0x4acd
00000cc2: JUMP
00000cc3: JUMPDEST
00000cc4: CALLVALUE
00000cc5: DUP1
00000cc6: ISZERO
00000cc7: PUSH2 0x0ccf
00000cca: JUMPI
00000ccb: PUSH1 0x00
00000ccd: DUP1
00000cce: REVERT
00000ccf: JUMPDEST
00000cd0: POP
00000cd1: PUSH2 0x0493
00000cd4: PUSH1 0x00
00000cd6: DUP2
00000cd7: JUMP
00000cd8: JUMPDEST
00000cd9: CALLVALUE
00000cda: DUP1
00000cdb: ISZERO
00000cdc: PUSH2 0x0ce4
00000cdf: JUMPI
00000ce0: PUSH1 0x00
00000ce2: DUP1
00000ce3: REVERT
00000ce4: JUMPDEST
00000ce5: POP
00000ce6: PUSH2 0x0449
00000ce9: PUSH2 0x0cf3
00000cec: CALLDATASIZE
00000ced: PUSH1 0x04
00000cef: PUSH2 0x455e
00000cf2: JUMP
00000cf3: JUMPDEST
00000cf4: PUSH2 0x24cf
00000cf7: JUMP
00000cf8: JUMPDEST
00000cf9: CALLVALUE
00000cfa: DUP1
00000cfb: ISZERO
00000cfc: PUSH2 0x0d04
00000cff: JUMPI
00000d00: PUSH1 0x00
00000d02: DUP1
00000d03: REVERT
00000d04: JUMPDEST
00000d05: POP
00000d06: PUSH2 0x061d
00000d09: PUSH2 0x25b1
00000d0c: JUMP
00000d0d: JUMPDEST
00000d0e: PUSH2 0x0449
00000d11: PUSH2 0x0d1b
00000d14: CALLDATASIZE
00000d15: PUSH1 0x04
00000d17: PUSH2 0x467d
00000d1a: JUMP
00000d1b: JUMPDEST
00000d1c: PUSH2 0x2611
00000d1f: JUMP
00000d20: JUMPDEST
00000d21: CALLVALUE
00000d22: DUP1
00000d23: ISZERO
00000d24: PUSH2 0x0d2c
00000d27: JUMPI
00000d28: PUSH1 0x00
00000d2a: DUP1
00000d2b: REVERT
00000d2c: JUMPDEST
00000d2d: POP
00000d2e: PUSH2 0x0493
00000d31: PUSH2 0x0d3b
00000d34: CALLDATASIZE
00000d35: PUSH1 0x04
00000d37: PUSH2 0x4045
00000d3a: JUMP
00000d3b: JUMPDEST
00000d3c: PUSH2 0x2657
00000d3f: JUMP
00000d40: JUMPDEST
00000d41: CALLVALUE
00000d42: DUP1
00000d43: ISZERO
00000d44: PUSH2 0x0d4c
00000d47: JUMPI
00000d48: PUSH1 0x00
00000d4a: DUP1
00000d4b: REVERT
00000d4c: JUMPDEST
00000d4d: POP
00000d4e: PUSH2 0x0449
00000d51: PUSH2 0x2667
00000d54: JUMP
00000d55: JUMPDEST
00000d56: CALLVALUE
00000d57: DUP1
00000d58: ISZERO
00000d59: PUSH2 0x0d61
00000d5c: JUMPI
00000d5d: PUSH1 0x00
00000d5f: DUP1
00000d60: REVERT
00000d61: JUMPDEST
00000d62: POP
00000d63: PUSH2 0x0449
00000d66: PUSH2 0x0d70
00000d69: CALLDATASIZE
00000d6a: PUSH1 0x04
00000d6c: PUSH2 0x4b28
00000d6f: JUMP
00000d70: JUMPDEST
00000d71: PUSH2 0x285d
00000d74: JUMP
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 0x0449
00000d86: PUSH2 0x0d90
00000d89: CALLDATASIZE
00000d8a: PUSH1 0x04
00000d8c: PUSH2 0x4880
00000d8f: JUMP
00000d90: JUMPDEST
00000d91: PUSH2 0x28da
00000d94: JUMP
00000d95: JUMPDEST
00000d96: CALLVALUE
00000d97: DUP1
00000d98: ISZERO
00000d99: PUSH2 0x0da1
00000d9c: JUMPI
00000d9d: PUSH1 0x00
00000d9f: DUP1
00000da0: REVERT
00000da1: JUMPDEST
00000da2: POP
00000da3: PUSH2 0x04f0
00000da6: PUSH2 0x0db0
00000da9: CALLDATASIZE
00000daa: PUSH1 0x04
00000dac: PUSH2 0x402a
00000daf: JUMP
00000db0: JUMPDEST
00000db1: PUSH2 0x2979
00000db4: JUMP
00000db5: JUMPDEST
00000db6: CALLVALUE
00000db7: DUP1
00000db8: ISZERO
00000db9: PUSH2 0x0dc1
00000dbc: JUMPI
00000dbd: PUSH1 0x00
00000dbf: DUP1
00000dc0: REVERT
00000dc1: JUMPDEST
00000dc2: POP
00000dc3: PUSH2 0x04f0
00000dc6: PUSH2 0x0dd0
00000dc9: CALLDATASIZE
00000dca: PUSH1 0x04
00000dcc: PUSH2 0x402a
00000dcf: JUMP
00000dd0: JUMPDEST
00000dd1: PUSH2 0x29b6
00000dd4: JUMP
00000dd5: JUMPDEST
00000dd6: CALLVALUE
00000dd7: DUP1
00000dd8: ISZERO
00000dd9: PUSH2 0x0de1
00000ddc: JUMPI
00000ddd: PUSH1 0x00
00000ddf: DUP1
00000de0: REVERT
00000de1: JUMPDEST
00000de2: POP
00000de3: PUSH2 0x0449
00000de6: PUSH2 0x0df0
00000de9: CALLDATASIZE
00000dea: PUSH1 0x04
00000dec: PUSH2 0x4a32
00000def: JUMP
00000df0: JUMPDEST
00000df1: PUSH2 0x2a3c
00000df4: JUMP
00000df5: JUMPDEST
00000df6: CALLVALUE
00000df7: DUP1
00000df8: ISZERO
00000df9: PUSH2 0x0e01
00000dfc: JUMPI
00000dfd: PUSH1 0x00
00000dff: DUP1
00000e00: REVERT
00000e01: JUMPDEST
00000e02: POP
00000e03: PUSH2 0x0449
00000e06: PUSH2 0x0e10
00000e09: CALLDATASIZE
00000e0a: PUSH1 0x04
00000e0c: PUSH2 0x467d
00000e0f: JUMP
00000e10: JUMPDEST
00000e11: PUSH2 0x2b65
00000e14: JUMP
00000e15: JUMPDEST
00000e16: PUSH1 0x00
00000e18: DUP3
00000e19: DUP2
00000e1a: MSTORE
00000e1b: PUSH1 0x0a
00000e1d: PUSH1 0x20
00000e1f: SWAP1
00000e20: DUP2
00000e21: MSTORE
00000e22: PUSH1 0x40
00000e24: SWAP2
00000e25: DUP3
00000e26: SWAP1
00000e27: KECCAK256
00000e28: DUP3
00000e29: MLOAD
00000e2a: PUSH1 0x60
00000e2c: DUP2
00000e2d: ADD
00000e2e: DUP5
00000e2f: MSTORE
00000e30: PUSH1 0x02
00000e32: DUP3
00000e33: ADD
00000e34: SLOAD
00000e35: PUSH1 0x01
00000e37: PUSH1 0x01
00000e39: PUSH1 0x80
00000e3b: SHL
00000e3c: SUB
00000e3d: DUP1
00000e3e: DUP3
00000e3f: AND
00000e40: DUP1
00000e41: DUP5
00000e42: MSTORE
00000e43: PUSH1 0x01
00000e45: PUSH1 0x80
00000e47: SHL
00000e48: SWAP1
00000e49: SWAP3
00000e4a: DIV
00000e4b: AND
00000e4c: SWAP4
00000e4d: DUP3
00000e4e: ADD
00000e4f: SWAP4
00000e50: SWAP1
00000e51: SWAP4
00000e52: MSTORE
00000e53: PUSH1 0x03
00000e55: SWAP1
00000e56: SWAP2
00000e57: ADD
00000e58: SLOAD
00000e59: SWAP3
00000e5a: DUP2
00000e5b: ADD
00000e5c: SWAP3
00000e5d: SWAP1
00000e5e: SWAP3
00000e5f: MSTORE
00000e60: DUP3
00000e61: LT
00000e62: DUP1
00000e63: ISZERO
00000e64: SWAP1
00000e65: PUSH2 0x0e7b
00000e68: JUMPI
00000e69: POP
00000e6a: DUP1
00000e6b: PUSH1 0x20
00000e6d: ADD
00000e6e: MLOAD
00000e6f: PUSH1 0x01
00000e71: PUSH1 0x01
00000e73: PUSH1 0x80
00000e75: SHL
00000e76: SUB
00000e77: AND
00000e78: DUP3
00000e79: GT
00000e7a: ISZERO
00000e7b: JUMPDEST
00000e7c: PUSH2 0x0ec1
00000e7f: JUMPI
00000e80: PUSH1 0x40
00000e82: MLOAD
00000e83: PUSH3 0x461bcd
00000e87: PUSH1 0xe5
00000e89: SHL
00000e8a: DUP2
00000e8b: MSTORE
00000e8c: PUSH1 0x20
00000e8e: PUSH1 0x04
00000e90: DUP3
00000e91: ADD
00000e92: MSTORE
00000e93: PUSH1 0x12
00000e95: PUSH1 0x24
00000e97: DUP3
00000e98: ADD
00000e99: MSTORE
00000e9a: PUSH18 0x7661756c7420616d6f756e7420636865636b
00000ead: PUSH1 0x70
00000eaf: SHL
00000eb0: PUSH1 0x44
00000eb2: DUP3
00000eb3: ADD
00000eb4: MSTORE
00000eb5: PUSH1 0x64
00000eb7: ADD
00000eb8: JUMPDEST
00000eb9: PUSH1 0x40
00000ebb: MLOAD
00000ebc: DUP1
00000ebd: SWAP2
00000ebe: SUB
00000ebf: SWAP1
00000ec0: REVERT
00000ec1: JUMPDEST
00000ec2: POP
00000ec3: POP
00000ec4: POP
00000ec5: JUMP
00000ec6: JUMPDEST
00000ec7: DUP1
00000ec8: MLOAD
00000ec9: PUSH2 0x0ed2
00000ecc: SWAP1
00000ecd: DUP4
00000ece: PUSH2 0x2b9d
00000ed1: JUMP
00000ed2: JUMPDEST
00000ed3: DUP1
00000ed4: MLOAD
00000ed5: PUSH2 0x0edd
00000ed8: SWAP1
00000ed9: PUSH2 0x2c07
00000edc: JUMP
00000edd: JUMPDEST
00000ede: DUP1
00000edf: MLOAD
00000ee0: PUSH2 0x0eee
00000ee3: SWAP1
00000ee4: CALLER
00000ee5: DUP4
00000ee6: PUSH1 0x80
00000ee8: ADD
00000ee9: MLOAD
00000eea: PUSH2 0x2c5e
00000eed: JUMP
00000eee: JUMPDEST
00000eef: PUSH1 0x20
00000ef1: DUP3
00000ef2: ADD
00000ef3: MLOAD
00000ef4: PUSH2 0x0f0d
00000ef7: SWAP1
00000ef8: PUSH1 0x01
00000efa: PUSH1 0x01
00000efc: PUSH1 0x80
00000efe: SHL
00000eff: SUB
00000f00: NOT
00000f01: AND
00000f02: PUSH3 0x020101
00000f06: PUSH1 0xe8
00000f08: SHL
00000f09: PUSH2 0x2d10
00000f0c: JUMP
00000f0d: JUMPDEST
00000f0e: ISZERO
00000f0f: PUSH2 0x0f16
00000f12: JUMPI
00000f13: POP
00000f14: POP
00000f15: JUMP
00000f16: JUMPDEST
00000f17: PUSH1 0x20
00000f19: DUP3
00000f1a: ADD
00000f1b: MLOAD
00000f1c: PUSH2 0x0f36
00000f1f: SWAP1
00000f20: PUSH1 0x01
00000f22: PUSH1 0x01
00000f24: PUSH1 0x80
00000f26: SHL
00000f27: SUB
00000f28: NOT
00000f29: AND
00000f2a: PUSH4 0x01808081
00000f2f: PUSH1 0xe1
00000f31: SHL
00000f32: PUSH2 0x2d10
00000f35: JUMP
00000f36: JUMPDEST
00000f37: ISZERO
00000f38: PUSH2 0x0f3f
00000f3b: JUMPI
00000f3c: POP
00000f3d: POP
00000f3e: JUMP
00000f3f: JUMPDEST
00000f40: PUSH1 0x20
00000f42: DUP3
00000f43: ADD
00000f44: MLOAD
00000f45: PUSH2 0x0f5e
00000f48: SWAP1
00000f49: PUSH1 0x01
00000f4b: PUSH1 0x01
00000f4d: PUSH1 0x80
00000f4f: SHL
00000f50: SUB
00000f51: NOT
00000f52: AND
00000f53: PUSH3 0xc04041
00000f57: PUSH1 0xe2
00000f59: SHL
00000f5a: PUSH2 0x2d10
00000f5d: JUMP
00000f5e: JUMPDEST
00000f5f: ISZERO
00000f60: PUSH2 0x0fa5
00000f63: JUMPI
00000f64: DUP1
00000f65: MLOAD
00000f66: PUSH1 0x00
00000f68: SWAP1
00000f69: DUP2
00000f6a: MSTORE
00000f6b: PUSH1 0x0e
00000f6d: PUSH1 0x20
00000f6f: SWAP1
00000f70: DUP2
00000f71: MSTORE
00000f72: PUSH1 0x40
00000f74: DUP1
00000f75: DUP4
00000f76: KECCAK256
00000f77: DUP3
00000f78: DUP6
00000f79: ADD
00000f7a: MLOAD
00000f7b: DUP5
00000f7c: MSTORE
00000f7d: SWAP1
00000f7e: SWAP2
00000f7f: MSTORE
00000f80: SWAP1
00000f81: KECCAK256
00000f82: SLOAD
00000f83: PUSH1 0xff
00000f85: AND
00000f86: PUSH2 0x0fa1
00000f89: JUMPI
00000f8a: PUSH1 0x40
00000f8c: MLOAD
00000f8d: PUSH3 0x461bcd
00000f91: PUSH1 0xe5
00000f93: SHL
00000f94: DUP2
00000f95: MSTORE
00000f96: PUSH1 0x04
00000f98: ADD
00000f99: PUSH2 0x0eb8
00000f9c: SWAP1
00000f9d: PUSH2 0x4b5c
00000fa0: JUMP
00000fa1: JUMPDEST
00000fa2: POP
00000fa3: POP
00000fa4: JUMP
00000fa5: JUMPDEST
00000fa6: PUSH1 0x20
00000fa8: DUP3
00000fa9: ADD
00000faa: MLOAD
00000fab: PUSH2 0x0fc6
00000fae: SWAP1
00000faf: PUSH1 0x01
00000fb1: PUSH1 0x01
00000fb3: PUSH1 0x80
00000fb5: SHL
00000fb6: SUB
00000fb7: NOT
00000fb8: AND
00000fb9: PUSH5 0x0401010205
00000fbf: PUSH1 0xd8
00000fc1: SHL
00000fc2: PUSH2 0x2d10
00000fc5: JUMP
00000fc6: JUMPDEST
00000fc7: ISZERO
00000fc8: PUSH2 0x0fcf
00000fcb: JUMPI
00000fcc: POP
00000fcd: POP
00000fce: JUMP
00000fcf: JUMPDEST
00000fd0: PUSH1 0x20
00000fd2: DUP3
00000fd3: ADD
00000fd4: MLOAD
00000fd5: PUSH2 0x0ff0
00000fd8: SWAP1
00000fd9: PUSH1 0x01
00000fdb: PUSH1 0x01
00000fdd: PUSH1 0x80
00000fdf: SHL
00000fe0: SUB
00000fe1: NOT
00000fe2: AND
00000fe3: PUSH5 0x0401010405
00000fe9: PUSH1 0xd8
00000feb: SHL
00000fec: PUSH2 0x2d10
00000fef: JUMP
00000ff0: JUMPDEST
00000ff1: ISZERO
00000ff2: PUSH2 0x1033
00000ff5: JUMPI
00000ff6: DUP1
00000ff7: MLOAD
00000ff8: PUSH1 0x00
00000ffa: SWAP1
00000ffb: DUP2
00000ffc: MSTORE
00000ffd: PUSH1 0x0e
00000fff: PUSH1 0x20
00001001: SWAP1
00001002: DUP2
00001003: MSTORE
00001004: PUSH1 0x40
00001006: DUP1
00001007: DUP4
00001008: KECCAK256
00001009: DUP3
0000100a: DUP6
0000100b: ADD
0000100c: MLOAD
0000100d: DUP5
0000100e: MSTORE
0000100f: SWAP1
00001010: SWAP2
00001011: MSTORE
00001012: SWAP1
00001013: KECCAK256
00001014: SLOAD
00001015: PUSH1 0xff
00001017: AND
00001018: PUSH2 0x0fa1
0000101b: JUMPI
0000101c: PUSH1 0x40
0000101e: MLOAD
0000101f: PUSH3 0x461bcd
00001023: PUSH1 0xe5
00001025: SHL
00001026: DUP2
00001027: MSTORE
00001028: PUSH1 0x04
0000102a: ADD
0000102b: PUSH2 0x0eb8
0000102e: SWAP1
0000102f: PUSH2 0x4b5c
00001032: JUMP
00001033: JUMPDEST
00001034: PUSH1 0x20
00001036: DUP3
00001037: ADD
00001038: MLOAD
00001039: PUSH2 0x1053
0000103c: SWAP1
0000103d: PUSH1 0x01
0000103f: PUSH1 0x01
00001041: PUSH1 0x80
00001043: SHL
00001044: SUB
00001045: NOT
00001046: AND
00001047: PUSH4 0x80202041
0000104c: PUSH1 0xdb
0000104e: SHL
0000104f: PUSH2 0x2d10
00001052: JUMP
00001053: JUMPDEST
00001054: ISZERO
00001055: PUSH2 0x105c
00001058: JUMPI
00001059: POP
0000105a: POP
0000105b: JUMP
0000105c: JUMPDEST
0000105d: PUSH1 0x20
0000105f: DUP3
00001060: ADD
00001061: MLOAD
00001062: PUSH2 0x107c
00001065: SWAP1
00001066: PUSH1 0x01
00001068: PUSH1 0x01
0000106a: PUSH1 0x80
0000106c: SHL
0000106d: SUB
0000106e: NOT
0000106f: AND
00001070: PUSH4 0x80202081
00001075: PUSH1 0xdb
00001077: SHL
00001078: PUSH2 0x2d10
0000107b: JUMP
0000107c: JUMPDEST
0000107d: ISZERO
0000107e: PUSH2 0x10bf
00001081: JUMPI
00001082: DUP1
00001083: MLOAD
00001084: PUSH1 0x00
00001086: SWAP1
00001087: DUP2
00001088: MSTORE
00001089: PUSH1 0x0e
0000108b: PUSH1 0x20
0000108d: SWAP1
0000108e: DUP2
0000108f: MSTORE
00001090: PUSH1 0x40
00001092: DUP1
00001093: DUP4
00001094: KECCAK256
00001095: DUP3
00001096: DUP6
00001097: ADD
00001098: MLOAD
00001099: DUP5
0000109a: MSTORE
0000109b: SWAP1
0000109c: SWAP2
0000109d: MSTORE
0000109e: SWAP1
0000109f: KECCAK256
000010a0: SLOAD
000010a1: PUSH1 0xff
000010a3: AND
000010a4: PUSH2 0x0fa1
000010a7: JUMPI
000010a8: PUSH1 0x40
000010aa: MLOAD
000010ab: PUSH3 0x461bcd
000010af: PUSH1 0xe5
000010b1: SHL
000010b2: DUP2
000010b3: MSTORE
000010b4: PUSH1 0x04
000010b6: ADD
000010b7: PUSH2 0x0eb8
000010ba: SWAP1
000010bb: PUSH2 0x4b5c
000010be: JUMP
000010bf: JUMPDEST
000010c0: PUSH1 0x40
000010c2: MLOAD
000010c3: PUSH3 0x461bcd
000010c7: PUSH1 0xe5
000010c9: SHL
000010ca: DUP2
000010cb: MSTORE
000010cc: PUSH1 0x20
000010ce: PUSH1 0x04
000010d0: DUP3
000010d1: ADD
000010d2: MSTORE
000010d3: PUSH1 0x10
000010d5: PUSH1 0x24
000010d7: DUP3
000010d8: ADD
000010d9: MSTORE
000010da: PUSH16 0x5661756c745f7265715f6e6174697665
000010eb: PUSH1 0x80
000010ed: SHL
000010ee: PUSH1 0x44
000010f0: DUP3
000010f1: ADD
000010f2: MSTORE
000010f3: PUSH1 0x64
000010f5: ADD
000010f6: PUSH2 0x0eb8
000010f9: JUMP
000010fa: JUMPDEST
000010fb: PUSH2 0x110a
000010fe: PUSH2 0x1105
00001101: PUSH2 0x2d22
00001104: JUMP
00001105: JUMPDEST
00001106: PUSH2 0x2d31
00001109: JUMP
0000110a: JUMPDEST
0000110b: JUMP
0000110c: JUMPDEST
0000110d: PUSH2 0x1114
00001110: PUSH2 0x2d55
00001113: JUMP
00001114: JUMPDEST
00001115: PUSH1 0x07
00001117: SLOAD
00001118: PUSH1 0x01
0000111a: PUSH1 0x01
0000111c: PUSH1 0xa0
0000111e: SHL
0000111f: SUB
00001120: AND
00001121: PUSH2 0x1158
00001124: JUMPI
00001125: PUSH1 0x40
00001127: MLOAD
00001128: PUSH3 0x461bcd
0000112c: PUSH1 0xe5
0000112e: SHL
0000112f: DUP2
00001130: MSTORE
00001131: PUSH1 0x20
00001133: PUSH1 0x04
00001135: DUP3
00001136: ADD
00001137: MSTORE
00001138: PUSH1 0x09
0000113a: PUSH1 0x24
0000113c: DUP3
0000113d: ADD
0000113e: MSTORE
0000113f: PUSH9 0x77626663207a65726f
00001149: PUSH1 0xb8
0000114b: SHL
0000114c: PUSH1 0x44
0000114e: DUP3
0000114f: ADD
00001150: MSTORE
00001151: PUSH1 0x64
00001153: ADD
00001154: PUSH2 0x0eb8
00001157: JUMP
00001158: JUMPDEST
00001159: PUSH1 0x08
0000115b: DUP1
0000115c: SLOAD
0000115d: PUSH1 0x01
0000115f: PUSH1 0x01
00001161: PUSH1 0xa0
00001163: SHL
00001164: SUB
00001165: NOT
00001166: AND
00001167: PUSH1 0x01
00001169: PUSH1 0x01
0000116b: PUSH1 0xa0
0000116d: SHL
0000116e: SUB
0000116f: SWAP3
00001170: SWAP1
00001171: SWAP3
00001172: AND
00001173: SWAP2
00001174: SWAP1
00001175: SWAP2
00001176: OR
00001177: SWAP1
00001178: SSTORE
00001179: JUMP
0000117a: JUMPDEST
0000117b: PUSH1 0x02
0000117d: DUP2
0000117e: DUP2
0000117f: SLOAD
00001180: DUP2
00001181: LT
00001182: PUSH2 0x118a
00001185: JUMPI
00001186: PUSH1 0x00
00001188: DUP1
00001189: REVERT
0000118a: JUMPDEST
0000118b: PUSH1 0x00
0000118d: SWAP2
0000118e: DUP3
0000118f: MSTORE
00001190: PUSH1 0x20
00001192: SWAP1
00001193: SWAP2
00001194: KECCAK256
00001195: ADD
00001196: SLOAD
00001197: PUSH1 0x01
00001199: PUSH1 0x01
0000119b: PUSH1 0xa0
0000119d: SHL
0000119e: SUB
0000119f: AND
000011a0: SWAP1
000011a1: POP
000011a2: DUP2
000011a3: JUMP
000011a4: JUMPDEST
000011a5: PUSH1 0x00
000011a7: PUSH2 0x11b2
000011aa: CALLER
000011ab: JUMPDEST
000011ac: PUSH1 0x03
000011ae: PUSH2 0x2dc3
000011b1: JUMP
000011b2: JUMPDEST
000011b3: PUSH2 0x11ce
000011b6: JUMPI
000011b7: PUSH1 0x40
000011b9: MLOAD
000011ba: PUSH3 0x461bcd
000011be: PUSH1 0xe5
000011c0: SHL
000011c1: DUP2
000011c2: MSTORE
000011c3: PUSH1 0x04
000011c5: ADD
000011c6: PUSH2 0x0eb8
000011c9: SWAP1
000011ca: PUSH2 0x4b87
000011cd: JUMP
000011ce: JUMPDEST
000011cf: PUSH2 0x11d7
000011d2: DUP3
000011d3: PUSH2 0x2ded
000011d6: JUMP
000011d7: JUMPDEST
000011d8: PUSH2 0x11e4
000011db: PUSH1 0x02
000011dd: DUP4
000011de: PUSH1 0x03
000011e0: PUSH2 0x2e31
000011e3: JUMP
000011e4: JUMPDEST
000011e5: POP
000011e6: PUSH1 0x01
000011e8: JUMPDEST
000011e9: SWAP2
000011ea: SWAP1
000011eb: POP
000011ec: JUMP
000011ed: JUMPDEST
000011ee: PUSH1 0x04
000011f0: DUP2
000011f1: DUP2
000011f2: SLOAD
000011f3: DUP2
000011f4: LT
000011f5: PUSH2 0x118a
000011f8: JUMPI
000011f9: PUSH1 0x00
000011fb: DUP1
000011fc: REVERT
000011fd: JUMPDEST
000011fe: PUSH2 0x1205
00001201: PUSH2 0x2d55
00001204: JUMP
00001205: JUMPDEST
00001206: PUSH1 0x00
00001208: JUMPDEST
00001209: DUP3
0000120a: MLOAD
0000120b: DUP2
0000120c: LT
0000120d: ISZERO
0000120e: PUSH2 0x0ec1
00001211: JUMPI
00001212: PUSH1 0x00
00001214: JUMPDEST
00001215: DUP3
00001216: DUP3
00001217: DUP2
00001218: MLOAD
00001219: DUP2
0000121a: LT
0000121b: PUSH2 0x1226
0000121e: JUMPI
0000121f: PUSH2 0x1226
00001222: PUSH2 0x4bab
00001225: JUMP
00001226: JUMPDEST
00001227: PUSH1 0x20
00001229: MUL
0000122a: PUSH1 0x20
0000122c: ADD
0000122d: ADD
0000122e: MLOAD
0000122f: MLOAD
00001230: DUP2
00001231: LT
00001232: ISZERO
00001233: PUSH2 0x12d6
00001236: JUMPI
00001237: PUSH1 0x00
00001239: PUSH1 0x0d
0000123b: PUSH1 0x00
0000123d: DUP7
0000123e: DUP6
0000123f: DUP2
00001240: MLOAD
00001241: DUP2
00001242: LT
00001243: PUSH2 0x124e
00001246: JUMPI
00001247: PUSH2 0x124e
0000124a: PUSH2 0x4bab
0000124d: JUMP
0000124e: JUMPDEST
0000124f: PUSH1 0x20
00001251: MUL
00001252: PUSH1 0x20
00001254: ADD
00001255: ADD
00001256: MLOAD
00001257: DUP2
00001258: MSTORE
00001259: PUSH1 0x20
0000125b: ADD
0000125c: SWAP1
0000125d: DUP2
0000125e: MSTORE
0000125f: PUSH1 0x20
00001261: ADD
00001262: PUSH1 0x00
00001264: KECCAK256
00001265: PUSH1 0x00
00001267: DUP6
00001268: DUP6
00001269: DUP2
0000126a: MLOAD
0000126b: DUP2
0000126c: LT
0000126d: PUSH2 0x1278
00001270: JUMPI
00001271: PUSH2 0x1278
00001274: PUSH2 0x4bab
00001277: JUMP
00001278: JUMPDEST
00001279: PUSH1 0x20
0000127b: MUL
0000127c: PUSH1 0x20
0000127e: ADD
0000127f: ADD
00001280: MLOAD
00001281: DUP5
00001282: DUP2
00001283: MLOAD
00001284: DUP2
00001285: LT
00001286: PUSH2 0x1291
00001289: JUMPI
0000128a: PUSH2 0x1291
0000128d: PUSH2 0x4bab
00001290: JUMP
00001291: JUMPDEST
00001292: PUSH1 0x20
00001294: SWAP1
00001295: DUP2
00001296: MUL
00001297: SWAP2
00001298: SWAP1
00001299: SWAP2
0000129a: ADD
0000129b: DUP2
0000129c: ADD
0000129d: MLOAD
0000129e: PUSH1 0x01
000012a0: PUSH1 0x01
000012a2: PUSH1 0x80
000012a4: SHL
000012a5: SUB
000012a6: NOT
000012a7: AND
000012a8: DUP3
000012a9: MSTORE
000012aa: DUP2
000012ab: ADD
000012ac: SWAP2
000012ad: SWAP1
000012ae: SWAP2
000012af: MSTORE
000012b0: PUSH1 0x40
000012b2: ADD
000012b3: PUSH1 0x00
000012b5: KECCAK256
000012b6: DUP1
000012b7: SLOAD
000012b8: PUSH1 0xff
000012ba: NOT
000012bb: AND
000012bc: SWAP2
000012bd: ISZERO
000012be: ISZERO
000012bf: SWAP2
000012c0: SWAP1
000012c1: SWAP2
000012c2: OR
000012c3: SWAP1
000012c4: SSTORE
000012c5: DUP1
000012c6: PUSH2 0x12ce
000012c9: DUP2
000012ca: PUSH2 0x4bd7
000012cd: JUMP
000012ce: JUMPDEST
000012cf: SWAP2
000012d0: POP
000012d1: POP
000012d2: PUSH2 0x1214
000012d5: JUMP
000012d6: JUMPDEST
000012d7: POP
000012d8: DUP1
000012d9: PUSH2 0x12e1
000012dc: DUP2
000012dd: PUSH2 0x4bd7
000012e0: JUMP
000012e1: JUMPDEST
000012e2: SWAP2
000012e3: POP
000012e4: POP
000012e5: PUSH2 0x1208
000012e8: JUMP
000012e9: JUMPDEST
000012ea: PUSH1 0x00
000012ec: PUSH2 0x12f7
000012ef: CALLER
000012f0: JUMPDEST
000012f1: PUSH1 0x02
000012f3: PUSH2 0x2dc3
000012f6: JUMP
000012f7: JUMPDEST
000012f8: PUSH2 0x1313
000012fb: JUMPI
000012fc: PUSH1 0x40
000012fe: MLOAD
000012ff: PUSH3 0x461bcd
00001303: PUSH1 0xe5
00001305: SHL
00001306: DUP2
00001307: MSTORE
00001308: PUSH1 0x04
0000130a: ADD
0000130b: PUSH2 0x0eb8
0000130e: SWAP1
0000130f: PUSH2 0x4bf0
00001312: JUMP
00001313: JUMPDEST
00001314: PUSH2 0x1320
00001317: PUSH1 0x04
00001319: CALLER
0000131a: PUSH1 0x01
0000131c: PUSH2 0x2e31
0000131f: JUMP
00001320: JUMPDEST
00001321: PUSH2 0x132d
00001324: PUSH1 0x05
00001326: CALLER
00001327: PUSH1 0x02
00001329: PUSH2 0x2e99
0000132c: JUMP
0000132d: JUMPDEST
0000132e: POP
0000132f: PUSH1 0x01
00001331: JUMPDEST
00001332: SWAP1
00001333: JUMP
00001334: JUMPDEST
00001335: PUSH1 0x00
00001337: PUSH2 0x133f
0000133a: CALLER
0000133b: PUSH2 0x11ab
0000133e: JUMP
0000133f: JUMPDEST
00001340: PUSH2 0x135b
00001343: JUMPI
00001344: PUSH1 0x40
00001346: MLOAD
00001347: PUSH3 0x461bcd
0000134b: PUSH1 0xe5
0000134d: SHL
0000134e: DUP2
0000134f: MSTORE
00001350: PUSH1 0x04
00001352: ADD
00001353: PUSH2 0x0eb8
00001356: SWAP1
00001357: PUSH2 0x4b87
0000135a: JUMP
0000135b: JUMPDEST
0000135c: PUSH2 0x11e4
0000135f: PUSH1 0x04
00001361: DUP4
00001362: PUSH1 0x01
00001364: PUSH2 0x2e99
00001367: JUMP
00001368: JUMPDEST
00001369: PUSH1 0x60
0000136b: PUSH1 0x05
0000136d: DUP1
0000136e: SLOAD
0000136f: DUP1
00001370: PUSH1 0x20
00001372: MUL
00001373: PUSH1 0x20
00001375: ADD
00001376: PUSH1 0x40
00001378: MLOAD
00001379: SWAP1
0000137a: DUP2
0000137b: ADD
0000137c: PUSH1 0x40
0000137e: MSTORE
0000137f: DUP1
00001380: SWAP3
00001381: SWAP2
00001382: SWAP1
00001383: DUP2
00001384: DUP2
00001385: MSTORE
00001386: PUSH1 0x20
00001388: ADD
00001389: DUP3
0000138a: DUP1
0000138b: SLOAD
0000138c: DUP1
0000138d: ISZERO
0000138e: PUSH2 0x13c0
00001391: JUMPI
00001392: PUSH1 0x20
00001394: MUL
00001395: DUP3
00001396: ADD
00001397: SWAP2
00001398: SWAP1
00001399: PUSH1 0x00
0000139b: MSTORE
0000139c: PUSH1 0x20
0000139e: PUSH1 0x00
000013a0: KECCAK256
000013a1: SWAP1
000013a2: JUMPDEST
000013a3: DUP2
000013a4: SLOAD
000013a5: PUSH1 0x01
000013a7: PUSH1 0x01
000013a9: PUSH1 0xa0
000013ab: SHL
000013ac: SUB
000013ad: AND
000013ae: DUP2
000013af: MSTORE
000013b0: PUSH1 0x01
000013b2: SWAP1
000013b3: SWAP2
000013b4: ADD
000013b5: SWAP1
000013b6: PUSH1 0x20
000013b8: ADD
000013b9: DUP1
000013ba: DUP4
000013bb: GT
000013bc: PUSH2 0x13a2
000013bf: JUMPI
000013c0: JUMPDEST
000013c1: POP
000013c2: POP
000013c3: POP
000013c4: POP
000013c5: POP
000013c6: SWAP1
000013c7: POP
000013c8: SWAP1
000013c9: JUMP
000013ca: JUMPDEST
000013cb: PUSH1 0x20
000013cd: DUP2
000013ce: ADD
000013cf: MLOAD
000013d0: DUP1
000013d1: MLOAD
000013d2: PUSH1 0x80
000013d4: SWAP1
000013d5: SWAP2
000013d6: ADD
000013d7: MLOAD
000013d8: PUSH1 0x00
000013da: SWAP2
000013db: PUSH2 0x13e3
000013de: SWAP2
000013df: PUSH2 0x0e15
000013e2: JUMP
000013e3: JUMPDEST
000013e4: PUSH2 0x13f5
000013e7: DUP3
000013e8: PUSH1 0x00
000013ea: ADD
000013eb: MLOAD
000013ec: DUP4
000013ed: PUSH1 0x20
000013ef: ADD
000013f0: MLOAD
000013f1: PUSH2 0x0ec6
000013f4: JUMP
000013f5: JUMPDEST
000013f6: PUSH1 0x20
000013f8: DUP3
000013f9: ADD
000013fa: MLOAD
000013fb: DUP1
000013fc: MLOAD
000013fd: PUSH1 0x80
000013ff: SWAP1
00001400: SWAP2
00001401: ADD
00001402: MLOAD
00001403: PUSH1 0x40
00001405: MLOAD
00001406: PUSH1 0x00
00001408: DUP1
00001409: MLOAD
0000140a: PUSH1 0x20
0000140c: PUSH2 0x4fb9
0000140f: DUP4
00001410: CODECOPY
00001411: DUP2
00001412: MLOAD
00001413: SWAP2
00001414: MSTORE
00001415: SWAP3
00001416: PUSH2 0x1421
00001419: SWAP3
0000141a: PUSH1 0x01
0000141c: SWAP3
0000141d: PUSH2 0x3ed6
00001420: JUMP
00001421: JUMPDEST
00001422: PUSH1 0x40
00001424: MLOAD
00001425: DUP1
00001426: SWAP2
00001427: SUB
00001428: SWAP1
00001429: LOG1
0000142a: PUSH1 0x20
0000142c: DUP3
0000142d: ADD
0000142e: MLOAD
0000142f: DUP1
00001430: MLOAD
00001431: PUSH1 0x80
00001433: SWAP1
00001434: SWAP2
00001435: ADD
00001436: MLOAD
00001437: PUSH2 0x1440
0000143a: SWAP2
0000143b: SWAP1
0000143c: PUSH2 0x2f01
0000143f: JUMP
00001440: JUMPDEST
00001441: PUSH1 0x20
00001443: DUP4
00001444: ADD
00001445: MLOAD
00001446: PUSH1 0x80
00001448: ADD
00001449: MSTORE
0000144a: PUSH1 0x06
0000144c: SLOAD
0000144d: PUSH1 0x40
0000144f: MLOAD
00001450: PUSH4 0x12b50f73
00001455: PUSH1 0xe0
00001457: SHL
00001458: DUP2
00001459: MSTORE
0000145a: PUSH1 0x01
0000145c: PUSH1 0x01
0000145e: PUSH1 0xa0
00001460: SHL
00001461: SUB
00001462: SWAP1
00001463: SWAP2
00001464: AND
00001465: SWAP1
00001466: PUSH4 0x12b50f73
0000146b: SWAP1
0000146c: PUSH2 0x1479
0000146f: SWAP1
00001470: DUP6
00001471: SWAP1
00001472: PUSH1 0x04
00001474: ADD
00001475: PUSH2 0x3f56
00001478: JUMP
00001479: JUMPDEST
0000147a: PUSH1 0x20
0000147c: PUSH1 0x40
0000147e: MLOAD
0000147f: DUP1
00001480: DUP4
00001481: SUB
00001482: DUP2
00001483: PUSH1 0x00
00001485: DUP8
00001486: GAS
00001487: CALL
00001488: ISZERO
00001489: DUP1
0000148a: ISZERO
0000148b: PUSH2 0x1498
0000148e: JUMPI
0000148f: RETURNDATASIZE
00001490: PUSH1 0x00
00001492: DUP1
00001493: RETURNDATACOPY
00001494: RETURNDATASIZE
00001495: PUSH1 0x00
00001497: REVERT
00001498: JUMPDEST
00001499: POP
0000149a: POP
0000149b: POP
0000149c: POP
0000149d: PUSH1 0x40
0000149f: MLOAD
000014a0: RETURNDATASIZE
000014a1: PUSH1 0x1f
000014a3: NOT
000014a4: PUSH1 0x1f
000014a6: DUP3
000014a7: ADD
000014a8: AND
000014a9: DUP3
000014aa: ADD
000014ab: DUP1
000014ac: PUSH1 0x40
000014ae: MSTORE
000014af: POP
000014b0: DUP2
000014b1: ADD
000014b2: SWAP1
000014b3: PUSH2 0x14bc
000014b6: SWAP2
000014b7: SWAP1
000014b8: PUSH2 0x3ff6
000014bb: JUMP
000014bc: JUMPDEST
000014bd: POP
000014be: PUSH1 0x01
000014c0: SWAP3
000014c1: SWAP2
000014c2: POP
000014c3: POP
000014c4: JUMP
000014c5: JUMPDEST
000014c6: PUSH2 0x14cd
000014c9: PUSH2 0x2d55
000014cc: JUMP
000014cd: JUMPDEST
000014ce: PUSH1 0x00
000014d0: JUMPDEST
000014d1: DUP3
000014d2: MLOAD
000014d3: DUP2
000014d4: LT
000014d5: ISZERO
000014d6: PUSH2 0x0ec1
000014d9: JUMPI
000014da: PUSH1 0x00
000014dc: JUMPDEST
000014dd: DUP3
000014de: DUP3
000014df: DUP2
000014e0: MLOAD
000014e1: DUP2
000014e2: LT
000014e3: PUSH2 0x14ee
000014e6: JUMPI
000014e7: PUSH2 0x14ee
000014ea: PUSH2 0x4bab
000014ed: JUMP
000014ee: JUMPDEST
000014ef: PUSH1 0x20
000014f1: MUL
000014f2: PUSH1 0x20
000014f4: ADD
000014f5: ADD
000014f6: MLOAD
000014f7: MLOAD
000014f8: DUP2
000014f9: LT
000014fa: ISZERO
000014fb: PUSH2 0x159e
000014fe: JUMPI
000014ff: PUSH1 0x01
00001501: PUSH1 0x0d
00001503: PUSH1 0x00
00001505: DUP7
00001506: DUP6
00001507: DUP2
00001508: MLOAD
00001509: DUP2
0000150a: LT
0000150b: PUSH2 0x1516
0000150e: JUMPI
0000150f: PUSH2 0x1516
00001512: PUSH2 0x4bab
00001515: JUMP
00001516: JUMPDEST
00001517: PUSH1 0x20
00001519: MUL
0000151a: PUSH1 0x20
0000151c: ADD
0000151d: ADD
0000151e: MLOAD
0000151f: DUP2
00001520: MSTORE
00001521: PUSH1 0x20
00001523: ADD
00001524: SWAP1
00001525: DUP2
00001526: MSTORE
00001527: PUSH1 0x20
00001529: ADD
0000152a: PUSH1 0x00
0000152c: KECCAK256
0000152d: PUSH1 0x00
0000152f: DUP6
00001530: DUP6
00001531: DUP2
00001532: MLOAD
00001533: DUP2
00001534: LT
00001535: PUSH2 0x1540
00001538: JUMPI
00001539: PUSH2 0x1540
0000153c: PUSH2 0x4bab
0000153f: JUMP
00001540: JUMPDEST
00001541: PUSH1 0x20
00001543: MUL
00001544: PUSH1 0x20
00001546: ADD
00001547: ADD
00001548: MLOAD
00001549: DUP5
0000154a: DUP2
0000154b: MLOAD
0000154c: DUP2
0000154d: LT
0000154e: PUSH2 0x1559
00001551: JUMPI
00001552: PUSH2 0x1559
00001555: PUSH2 0x4bab
00001558: JUMP
00001559: JUMPDEST
0000155a: PUSH1 0x20
0000155c: SWAP1
0000155d: DUP2
0000155e: MUL
0000155f: SWAP2
00001560: SWAP1
00001561: SWAP2
00001562: ADD
00001563: DUP2
00001564: ADD
00001565: MLOAD
00001566: PUSH1 0x01
00001568: PUSH1 0x01
0000156a: PUSH1 0x80
0000156c: SHL
0000156d: SUB
0000156e: NOT
0000156f: AND
00001570: DUP3
00001571: MSTORE
00001572: DUP2
00001573: ADD
00001574: SWAP2
00001575: SWAP1
00001576: SWAP2
00001577: MSTORE
00001578: PUSH1 0x40
0000157a: ADD
0000157b: PUSH1 0x00
0000157d: KECCAK256
0000157e: DUP1
0000157f: SLOAD
00001580: PUSH1 0xff
00001582: NOT
00001583: AND
00001584: SWAP2
00001585: ISZERO
00001586: ISZERO
00001587: SWAP2
00001588: SWAP1
00001589: SWAP2
0000158a: OR
0000158b: SWAP1
0000158c: SSTORE
0000158d: DUP1
0000158e: PUSH2 0x1596
00001591: DUP2
00001592: PUSH2 0x4bd7
00001595: JUMP
00001596: JUMPDEST
00001597: SWAP2
00001598: POP
00001599: POP
0000159a: PUSH2 0x14dc
0000159d: JUMP
0000159e: JUMPDEST
0000159f: POP
000015a0: DUP1
000015a1: PUSH2 0x15a9
000015a4: DUP2
000015a5: PUSH2 0x4bd7
000015a8: JUMP
000015a9: JUMPDEST
000015aa: SWAP2
000015ab: POP
000015ac: POP
000015ad: PUSH2 0x14d0
000015b0: JUMP
000015b1: JUMPDEST
000015b2: PUSH2 0x15b9
000015b5: PUSH2 0x2d55
000015b8: JUMP
000015b9: JUMPDEST
000015ba: PUSH1 0x00
000015bc: JUMPDEST
000015bd: DUP4
000015be: DUP2
000015bf: LT
000015c0: ISZERO
000015c1: PUSH2 0x1693
000015c4: JUMPI
000015c5: DUP3
000015c6: DUP3
000015c7: DUP3
000015c8: DUP2
000015c9: DUP2
000015ca: LT
000015cb: PUSH2 0x15d6
000015ce: JUMPI
000015cf: PUSH2 0x15d6
000015d2: PUSH2 0x4bab
000015d5: JUMP
000015d6: JUMPDEST
000015d7: SWAP1
000015d8: POP
000015d9: PUSH1 0x60
000015db: MUL
000015dc: ADD
000015dd: PUSH1 0x0a
000015df: PUSH1 0x00
000015e1: DUP8
000015e2: DUP8
000015e3: DUP6
000015e4: DUP2
000015e5: DUP2
000015e6: LT
000015e7: PUSH2 0x15f2
000015ea: JUMPI
000015eb: PUSH2 0x15f2
000015ee: PUSH2 0x4bab
000015f1: JUMP
000015f2: JUMPDEST
000015f3: SWAP1
000015f4: POP
000015f5: PUSH1 0x20
000015f7: MUL
000015f8: ADD
000015f9: CALLDATALOAD
000015fa: DUP2
000015fb: MSTORE
000015fc: PUSH1 0x20
000015fe: ADD
000015ff: SWAP1
00001600: DUP2
00001601: MSTORE
00001602: PUSH1 0x20
00001604: ADD
00001605: PUSH1 0x00
00001607: KECCAK256
00001608: PUSH1 0x02
0000160a: ADD
0000160b: DUP2
0000160c: DUP2
0000160d: PUSH2 0x1616
00001610: SWAP2
00001611: SWAP1
00001612: PUSH2 0x4c31
00001615: JUMP
00001616: JUMPDEST
00001617: SWAP1
00001618: POP
00001619: POP
0000161a: PUSH32 0x51d59f78ee8211b3edc94eb20901616991e8c0282b67fa431a20b21410978ed2
0000163b: DUP6
0000163c: DUP6
0000163d: DUP4
0000163e: DUP2
0000163f: DUP2
00001640: LT
00001641: PUSH2 0x164c
00001644: JUMPI
00001645: PUSH2 0x164c
00001648: PUSH2 0x4bab
0000164b: JUMP
0000164c: JUMPDEST
0000164d: SWAP1
0000164e: POP
0000164f: PUSH1 0x20
00001651: MUL
00001652: ADD
00001653: CALLDATALOAD
00001654: DUP5
00001655: DUP5
00001656: DUP5
00001657: DUP2
00001658: DUP2
00001659: LT
0000165a: PUSH2 0x1665
0000165d: JUMPI
0000165e: PUSH2 0x1665
00001661: PUSH2 0x4bab
00001664: JUMP
00001665: JUMPDEST
00001666: SWAP1
00001667: POP
00001668: PUSH1 0x60
0000166a: MUL
0000166b: ADD
0000166c: PUSH1 0x40
0000166e: MLOAD
0000166f: PUSH2 0x1679
00001672: SWAP3
00001673: SWAP2
00001674: SWAP1
00001675: PUSH2 0x4cb7
00001678: JUMP
00001679: JUMPDEST
0000167a: PUSH1 0x40
0000167c: MLOAD
0000167d: DUP1
0000167e: SWAP2
0000167f: SUB
00001680: SWAP1
00001681: LOG1
00001682: DUP1
00001683: PUSH2 0x168b
00001686: DUP2
00001687: PUSH2 0x4bd7
0000168a: JUMP
0000168b: JUMPDEST
0000168c: SWAP2
0000168d: POP
0000168e: POP
0000168f: PUSH2 0x15bc
00001692: JUMP
00001693: JUMPDEST
00001694: POP
00001695: POP
00001696: POP
00001697: POP
00001698: POP
00001699: JUMP
0000169a: JUMPDEST
0000169b: PUSH2 0x16a2
0000169e: PUSH2 0x2d55
000016a1: JUMP
000016a2: JUMPDEST
000016a3: PUSH1 0x00
000016a5: JUMPDEST
000016a6: DUP3
000016a7: MLOAD
000016a8: DUP2
000016a9: LT
000016aa: ISZERO
000016ab: PUSH2 0x0ec1
000016ae: JUMPI
000016af: PUSH1 0x01
000016b1: PUSH1 0x0e
000016b3: PUSH1 0x00
000016b5: DUP6
000016b6: DUP5
000016b7: DUP2
000016b8: MLOAD
000016b9: DUP2
000016ba: LT
000016bb: PUSH2 0x16c6
000016be: JUMPI
000016bf: PUSH2 0x16c6
000016c2: PUSH2 0x4bab
000016c5: JUMP
000016c6: JUMPDEST
000016c7: PUSH1 0x20
000016c9: MUL
000016ca: PUSH1 0x20
000016cc: ADD
000016cd: ADD
000016ce: MLOAD
000016cf: DUP2
000016d0: MSTORE
000016d1: PUSH1 0x20
000016d3: ADD
000016d4: SWAP1
000016d5: DUP2
000016d6: MSTORE
000016d7: PUSH1 0x20
000016d9: ADD
000016da: PUSH1 0x00
000016dc: KECCAK256
000016dd: PUSH1 0x00
000016df: DUP5
000016e0: DUP5
000016e1: DUP2
000016e2: MLOAD
000016e3: DUP2
000016e4: LT
000016e5: PUSH2 0x16f0
000016e8: JUMPI
000016e9: PUSH2 0x16f0
000016ec: PUSH2 0x4bab
000016ef: JUMP
000016f0: JUMPDEST
000016f1: PUSH1 0x20
000016f3: MUL
000016f4: PUSH1 0x20
000016f6: ADD
000016f7: ADD
000016f8: MLOAD
000016f9: DUP2
000016fa: MSTORE
000016fb: PUSH1 0x20
000016fd: ADD
000016fe: SWAP1
000016ff: DUP2
00001700: MSTORE
00001701: PUSH1 0x20
00001703: ADD
00001704: PUSH1 0x00
00001706: KECCAK256
00001707: PUSH1 0x00
00001709: PUSH2 0x0100
0000170c: EXP
0000170d: DUP2
0000170e: SLOAD
0000170f: DUP2
00001710: PUSH1 0xff
00001712: MUL
00001713: NOT
00001714: AND
00001715: SWAP1
00001716: DUP4
00001717: ISZERO
00001718: ISZERO
00001719: MUL
0000171a: OR
0000171b: SWAP1
0000171c: SSTORE
0000171d: POP
0000171e: DUP1
0000171f: DUP1
00001720: PUSH2 0x1728
00001723: SWAP1
00001724: PUSH2 0x4bd7
00001727: JUMP
00001728: JUMPDEST
00001729: SWAP2
0000172a: POP
0000172b: POP
0000172c: PUSH2 0x16a5
0000172f: JUMP
00001730: JUMPDEST
00001731: PUSH1 0x00
00001733: PUSH2 0x173e
00001736: CALLER
00001737: JUMPDEST
00001738: PUSH1 0x04
0000173a: PUSH2 0x2dc3
0000173d: JUMP
0000173e: JUMPDEST
0000173f: PUSH2 0x175a
00001742: JUMPI
00001743: PUSH1 0x40
00001745: MLOAD
00001746: PUSH3 0x461bcd
0000174a: PUSH1 0xe5
0000174c: SHL
0000174d: DUP2
0000174e: MSTORE
0000174f: PUSH1 0x04
00001751: ADD
00001752: PUSH2 0x0eb8
00001755: SWAP1
00001756: PUSH2 0x4ccb
00001759: JUMP
0000175a: JUMPDEST
0000175b: PUSH2 0x1767
0000175e: PUSH1 0x02
00001760: CALLER
00001761: PUSH1 0x03
00001763: PUSH2 0x2e31
00001766: JUMP
00001767: JUMPDEST
00001768: PUSH2 0x132d
0000176b: PUSH1 0x03
0000176d: CALLER
0000176e: PUSH1 0x04
00001770: PUSH2 0x2e99
00001773: JUMP
00001774: JUMPDEST
00001775: PUSH2 0x177c
00001778: PUSH2 0x2d55
0000177b: JUMP
0000177c: JUMPDEST
0000177d: PUSH1 0x09
0000177f: SSTORE
00001780: JUMP
00001781: JUMPDEST
00001782: PUSH1 0x00
00001784: PUSH2 0x178b
00001787: PUSH2 0x2d55
0000178a: JUMP
0000178b: JUMPDEST
0000178c: DUP2
0000178d: MLOAD
0000178e: PUSH1 0x00
00001790: SWAP1
00001791: DUP2
00001792: MSTORE
00001793: PUSH1 0x0b
00001795: PUSH1 0x20
00001797: MSTORE
00001798: PUSH1 0x40
0000179a: SWAP1
0000179b: KECCAK256
0000179c: SLOAD
0000179d: DUP3
0000179e: MSTORE
0000179f: PUSH2 0x14bc
000017a2: DUP4
000017a3: DUP4
000017a4: PUSH2 0x301d
000017a7: JUMP
000017a8: JUMPDEST
000017a9: PUSH2 0x17b0
000017ac: PUSH2 0x2d55
000017af: JUMP
000017b0: JUMPDEST
000017b1: PUSH1 0x00
000017b3: JUMPDEST
000017b4: DUP3
000017b5: MLOAD
000017b6: DUP2
000017b7: LT
000017b8: ISZERO
000017b9: PUSH2 0x0ec1
000017bc: JUMPI
000017bd: PUSH2 0x17f8
000017c0: DUP4
000017c1: DUP3
000017c2: DUP2
000017c3: MLOAD
000017c4: DUP2
000017c5: LT
000017c6: PUSH2 0x17d1
000017c9: JUMPI
000017ca: PUSH2 0x17d1
000017cd: PUSH2 0x4bab
000017d0: JUMP
000017d1: JUMPDEST
000017d2: PUSH1 0x20
000017d4: MUL
000017d5: PUSH1 0x20
000017d7: ADD
000017d8: ADD
000017d9: MLOAD
000017da: DUP4
000017db: DUP4
000017dc: DUP2
000017dd: MLOAD
000017de: DUP2
000017df: LT
000017e0: PUSH2 0x17eb
000017e3: JUMPI
000017e4: PUSH2 0x17eb
000017e7: PUSH2 0x4bab
000017ea: JUMP
000017eb: JUMPDEST
000017ec: PUSH1 0x20
000017ee: MUL
000017ef: PUSH1 0x20
000017f1: ADD
000017f2: ADD
000017f3: MLOAD
000017f4: PUSH2 0x3192
000017f7: JUMP
000017f8: JUMPDEST
000017f9: DUP1
000017fa: PUSH2 0x1802
000017fd: DUP2
000017fe: PUSH2 0x4bd7
00001801: JUMP
00001802: JUMPDEST
00001803: SWAP2
00001804: POP
00001805: POP
00001806: PUSH2 0x17b3
00001809: JUMP
0000180a: JUMPDEST
0000180b: PUSH2 0x1812
0000180e: PUSH2 0x2d55
00001811: JUMP
00001812: JUMPDEST
00001813: PUSH1 0x00
00001815: JUMPDEST
00001816: DUP4
00001817: MLOAD
00001818: DUP2
00001819: LT
0000181a: ISZERO
0000181b: PUSH2 0x18af
0000181e: JUMPI
0000181f: DUP2
00001820: DUP2
00001821: DUP2
00001822: MLOAD
00001823: DUP2
00001824: LT
00001825: PUSH2 0x1830
00001828: JUMPI
00001829: PUSH2 0x1830
0000182c: PUSH2 0x4bab
0000182f: JUMP
00001830: JUMPDEST
00001831: PUSH1 0x20
00001833: MUL
00001834: PUSH1 0x20
00001836: ADD
00001837: ADD
00001838: MLOAD
00001839: PUSH1 0x0c
0000183b: PUSH1 0x00
0000183d: DUP7
0000183e: DUP5
0000183f: DUP2
00001840: MLOAD
00001841: DUP2
00001842: LT
00001843: PUSH2 0x184e
00001846: JUMPI
00001847: PUSH2 0x184e
0000184a: PUSH2 0x4bab
0000184d: JUMP
0000184e: JUMPDEST
0000184f: PUSH1 0x20
00001851: MUL
00001852: PUSH1 0x20
00001854: ADD
00001855: ADD
00001856: MLOAD
00001857: DUP2
00001858: MSTORE
00001859: PUSH1 0x20
0000185b: ADD
0000185c: SWAP1
0000185d: DUP2
0000185e: MSTORE
0000185f: PUSH1 0x20
00001861: ADD
00001862: PUSH1 0x00
00001864: KECCAK256
00001865: PUSH1 0x00
00001867: DUP6
00001868: DUP5
00001869: DUP2
0000186a: MLOAD
0000186b: DUP2
0000186c: LT
0000186d: PUSH2 0x1878
00001870: JUMPI
00001871: PUSH2 0x1878
00001874: PUSH2 0x4bab
00001877: JUMP
00001878: JUMPDEST
00001879: PUSH1 0x20
0000187b: SWAP1
0000187c: DUP2
0000187d: MUL
0000187e: SWAP2
0000187f: SWAP1
00001880: SWAP2
00001881: ADD
00001882: DUP2
00001883: ADD
00001884: MLOAD
00001885: PUSH1 0x01
00001887: PUSH1 0x01
00001889: PUSH1 0xe0
0000188b: SHL
0000188c: SUB
0000188d: NOT
0000188e: AND
0000188f: DUP3
00001890: MSTORE
00001891: DUP2
00001892: ADD
00001893: SWAP2
00001894: SWAP1
00001895: SWAP2
00001896: MSTORE
00001897: PUSH1 0x40
00001899: ADD
0000189a: PUSH1 0x00
0000189c: KECCAK256
0000189d: SSTORE
0000189e: DUP1
0000189f: PUSH2 0x18a7
000018a2: DUP2
000018a3: PUSH2 0x4bd7
000018a6: JUMP
000018a7: JUMPDEST
000018a8: SWAP2
000018a9: POP
000018aa: POP
000018ab: PUSH2 0x1815
000018ae: JUMP
000018af: JUMPDEST
000018b0: POP
000018b1: POP
000018b2: POP
000018b3: POP
000018b4: JUMP
000018b5: JUMPDEST
000018b6: PUSH1 0x00
000018b8: PUSH2 0x18c0
000018bb: CALLER
000018bc: PUSH2 0x11ab
000018bf: JUMP
000018c0: JUMPDEST
000018c1: PUSH2 0x18dc
000018c4: JUMPI
000018c5: PUSH1 0x40
000018c7: MLOAD
000018c8: PUSH3 0x461bcd
000018cc: PUSH1 0xe5
000018ce: SHL
000018cf: DUP2
000018d0: MSTORE
000018d1: PUSH1 0x04
000018d3: ADD
000018d4: PUSH2 0x0eb8
000018d7: SWAP1
000018d8: PUSH2 0x4b87
000018db: JUMP
000018dc: JUMPDEST
000018dd: PUSH2 0x18e5
000018e0: DUP3
000018e1: PUSH2 0x2ded
000018e4: JUMP
000018e5: JUMPDEST
000018e6: PUSH2 0x11e4
000018e9: PUSH1 0x02
000018eb: DUP4
000018ec: PUSH1 0x03
000018ee: PUSH2 0x2e99
000018f1: JUMP
000018f2: JUMPDEST
000018f3: PUSH2 0x18fb
000018f6: CALLER
000018f7: PUSH2 0x11ab
000018fa: JUMP
000018fb: JUMPDEST
000018fc: PUSH2 0x1917
000018ff: JUMPI
00001900: PUSH1 0x40
00001902: MLOAD
00001903: PUSH3 0x461bcd
00001907: PUSH1 0xe5
00001909: SHL
0000190a: DUP2
0000190b: MSTORE
0000190c: PUSH1 0x04
0000190e: ADD
0000190f: PUSH2 0x0eb8
00001912: SWAP1
00001913: PUSH2 0x4b87
00001916: JUMP
00001917: JUMPDEST
00001918: PUSH2 0x1920
0000191b: DUP2
0000191c: PUSH2 0x3205
0000191f: JUMP
00001920: JUMPDEST
00001921: POP
00001922: JUMP
00001923: JUMPDEST
00001924: PUSH2 0x192b
00001927: PUSH2 0x2d55
0000192a: JUMP
0000192b: JUMPDEST
0000192c: PUSH2 0x1933
0000192f: PUSH2 0x3245
00001932: JUMP
00001933: JUMPDEST
00001934: POP
00001935: PUSH1 0x00
00001937: JUMPDEST
00001938: DUP4
00001939: DUP2
0000193a: LT
0000193b: ISZERO
0000193c: PUSH2 0x1693
0000193f: JUMPI
00001940: DUP3
00001941: DUP3
00001942: DUP3
00001943: DUP2
00001944: DUP2
00001945: LT
00001946: PUSH2 0x1951
00001949: JUMPI
0000194a: PUSH2 0x1951
0000194d: PUSH2 0x4bab
00001950: JUMP
00001951: JUMPDEST
00001952: SWAP1
00001953: POP
00001954: PUSH1 0x20
00001956: MUL
00001957: ADD
00001958: CALLDATALOAD
00001959: PUSH1 0x0b
0000195b: PUSH1 0x00
0000195d: DUP8
0000195e: DUP8
0000195f: DUP6
00001960: DUP2
00001961: DUP2
00001962: LT
00001963: PUSH2 0x196e
00001966: JUMPI
00001967: PUSH2 0x196e
0000196a: PUSH2 0x4bab
0000196d: JUMP
0000196e: JUMPDEST
0000196f: SWAP1
00001970: POP
00001971: PUSH1 0x20
00001973: MUL
00001974: ADD
00001975: CALLDATALOAD
00001976: DUP2
00001977: MSTORE
00001978: PUSH1 0x20
0000197a: ADD
0000197b: SWAP1
0000197c: DUP2
0000197d: MSTORE
0000197e: PUSH1 0x20
00001980: ADD
00001981: PUSH1 0x00
00001983: KECCAK256
00001984: DUP2
00001985: SWAP1
00001986: SSTORE
00001987: POP
00001988: DUP1
00001989: DUP1
0000198a: PUSH2 0x1992
0000198d: SWAP1
0000198e: PUSH2 0x4bd7
00001991: JUMP
00001992: JUMPDEST
00001993: SWAP2
00001994: POP
00001995: POP
00001996: PUSH2 0x1937
00001999: JUMP
0000199a: JUMPDEST
0000199b: PUSH2 0x19a2
0000199e: PUSH2 0x2d55
000019a1: JUMP
000019a2: JUMPDEST
000019a3: PUSH1 0x01
000019a5: PUSH1 0x01
000019a7: PUSH1 0xa0
000019a9: SHL
000019aa: SUB
000019ab: SWAP1
000019ac: SWAP2
000019ad: AND
000019ae: PUSH1 0x00
000019b0: SWAP1
000019b1: DUP2
000019b2: MSTORE
000019b3: PUSH1 0x0f
000019b5: PUSH1 0x20
000019b7: MSTORE
000019b8: PUSH1 0x40
000019ba: SWAP1
000019bb: KECCAK256
000019bc: SSTORE
000019bd: JUMP
000019be: JUMPDEST
000019bf: PUSH1 0x00
000019c1: PUSH2 0x19c9
000019c4: CALLER
000019c5: PUSH2 0x11ab
000019c8: JUMP
000019c9: JUMPDEST
000019ca: PUSH2 0x19e5
000019cd: JUMPI
000019ce: PUSH1 0x40
000019d0: MLOAD
000019d1: PUSH3 0x461bcd
000019d5: PUSH1 0xe5
000019d7: SHL
000019d8: DUP2
000019d9: MSTORE
000019da: PUSH1 0x04
000019dc: ADD
000019dd: PUSH2 0x0eb8
000019e0: SWAP1
000019e1: PUSH2 0x4b87
000019e4: JUMP
000019e5: JUMPDEST
000019e6: DUP2
000019e7: PUSH2 0x1a6b
000019ea: JUMPI
000019eb: PUSH1 0x00
000019ed: PUSH1 0x01
000019ef: PUSH1 0x01
000019f1: PUSH1 0xa0
000019f3: SHL
000019f4: SUB
000019f5: AND
000019f6: PUSH1 0x03
000019f8: PUSH1 0x00
000019fa: DUP2
000019fb: SLOAD
000019fc: DUP2
000019fd: LT
000019fe: PUSH2 0x1a09
00001a01: JUMPI
00001a02: PUSH2 0x1a09
00001a05: PUSH2 0x4bab
00001a08: JUMP
00001a09: JUMPDEST
00001a0a: PUSH1 0x00
00001a0c: SWAP2
00001a0d: DUP3
00001a0e: MSTORE
00001a0f: PUSH1 0x20
00001a11: SWAP1
00001a12: SWAP2
00001a13: KECCAK256
00001a14: ADD
00001a15: SLOAD
00001a16: PUSH1 0x01
00001a18: PUSH1 0x01
00001a1a: PUSH1 0xa0
00001a1c: SHL
00001a1d: SUB
00001a1e: AND
00001a1f: SUB
00001a20: PUSH2 0x1a6b
00001a23: JUMPI
00001a24: PUSH1 0x40
00001a26: MLOAD
00001a27: PUSH3 0x461bcd
00001a2b: PUSH1 0xe5
00001a2d: SHL
00001a2e: DUP2
00001a2f: MSTORE
00001a30: PUSH1 0x20
00001a32: PUSH1 0x04
00001a34: DUP3
00001a35: ADD
00001a36: DUP2
00001a37: SWAP1
00001a38: MSTORE
00001a39: PUSH1 0x24
00001a3b: DUP3
00001a3c: ADD
00001a3d: MSTORE
00001a3e: PUSH32 0x666174616c3a205468657265206973206e6f2070656e64696e67206f776e6572
00001a5f: PUSH1 0x44
00001a61: DUP3
00001a62: ADD
00001a63: MSTORE
00001a64: PUSH1 0x64
00001a66: ADD
00001a67: PUSH2 0x0eb8
00001a6a: JUMP
00001a6b: JUMPDEST
00001a6c: PUSH2 0x11e4
00001a6f: PUSH1 0x02
00001a71: CALLER
00001a72: JUMPDEST
00001a73: PUSH1 0x03
00001a75: PUSH2 0x2e99
00001a78: JUMP
00001a79: JUMPDEST
00001a7a: PUSH1 0x00
00001a7c: PUSH2 0x1a83
00001a7f: PUSH2 0x2d55
00001a82: JUMP
00001a83: JUMPDEST
00001a84: PUSH2 0x11e4
00001a87: DUP3
00001a88: PUSH2 0x32d9
00001a8b: JUMP
00001a8c: JUMPDEST
00001a8d: PUSH2 0x1a94
00001a90: PUSH2 0x2d55
00001a93: JUMP
00001a94: JUMPDEST
00001a95: PUSH1 0x08
00001a97: SLOAD
00001a98: PUSH1 0x01
00001a9a: PUSH1 0x01
00001a9c: PUSH1 0xa0
00001a9e: SHL
00001a9f: SUB
00001aa0: AND
00001aa1: DUP1
00001aa2: PUSH2 0x1ad9
00001aa5: JUMPI
00001aa6: PUSH1 0x40
00001aa8: MLOAD
00001aa9: PUSH3 0x461bcd
00001aad: PUSH1 0xe5
00001aaf: SHL
00001ab0: DUP2
00001ab1: MSTORE
00001ab2: PUSH1 0x20
00001ab4: PUSH1 0x04
00001ab6: DUP3
00001ab7: ADD
00001ab8: MSTORE
00001ab9: PUSH1 0x09
00001abb: PUSH1 0x24
00001abd: DUP3
00001abe: ADD
00001abf: MSTORE
00001ac0: PUSH9 0x0696e6974207377617
00001aca: PUSH1 0xbc
00001acc: SHL
00001acd: PUSH1 0x44
00001acf: DUP3
00001ad0: ADD
00001ad1: MSTORE
00001ad2: PUSH1 0x64
00001ad4: ADD
00001ad5: PUSH2 0x0eb8
00001ad8: JUMP
00001ad9: JUMPDEST
00001ada: PUSH1 0x00
00001adc: PUSH2 0x1ae3
00001adf: PUSH2 0x3245
00001ae2: JUMP
00001ae3: JUMPDEST
00001ae4: SWAP1
00001ae5: POP
00001ae6: PUSH1 0x00
00001ae8: JUMPDEST
00001ae9: DUP4
00001aea: DUP2
00001aeb: LT
00001aec: ISZERO
00001aed: PUSH2 0x1693
00001af0: JUMPI
00001af1: PUSH2 0x1b1b
00001af4: DUP6
00001af5: DUP6
00001af6: DUP4
00001af7: DUP2
00001af8: DUP2
00001af9: LT
00001afa: PUSH2 0x1b05
00001afd: JUMPI
00001afe: PUSH2 0x1b05
00001b01: PUSH2 0x4bab
00001b04: JUMP
00001b05: JUMPDEST
00001b06: SWAP1
00001b07: POP
00001b08: PUSH1 0x20
00001b0a: MUL
00001b0b: ADD
00001b0c: CALLDATALOAD
00001b0d: DUP4
00001b0e: PUSH2 0x32f0
00001b11: SWAP1
00001b12: SWAP2
00001b13: SWAP1
00001b14: PUSH4 0xffffffff
00001b19: AND
00001b1a: JUMP
00001b1b: JUMPDEST
00001b1c: PUSH2 0x1b55
00001b1f: JUMPI
00001b20: PUSH1 0x40
00001b22: MLOAD
00001b23: PUSH3 0x461bcd
00001b27: PUSH1 0xe5
00001b29: SHL
00001b2a: DUP2
00001b2b: MSTORE
00001b2c: PUSH1 0x20
00001b2e: PUSH1 0x04
00001b30: DUP3
00001b31: ADD
00001b32: MSTORE
00001b33: PUSH1 0x0b
00001b35: PUSH1 0x24
00001b37: DUP3
00001b38: ADD
00001b39: MSTORE
00001b3a: PUSH11 0x31b7b4b7103937baba32b9
00001b46: PUSH1 0xa9
00001b48: SHL
00001b49: PUSH1 0x44
00001b4b: DUP3
00001b4c: ADD
00001b4d: MSTORE
00001b4e: PUSH1 0x64
00001b50: ADD
00001b51: PUSH2 0x0eb8
00001b54: JUMP
00001b55: JUMPDEST
00001b56: PUSH2 0x1b9a
00001b59: PUSH1 0x0a
00001b5b: PUSH1 0x00
00001b5d: DUP8
00001b5e: DUP8
00001b5f: DUP6
00001b60: DUP2
00001b61: DUP2
00001b62: LT
00001b63: PUSH2 0x1b6e
00001b66: JUMPI
00001b67: PUSH2 0x1b6e
00001b6a: PUSH2 0x4bab
00001b6d: JUMP
00001b6e: JUMPDEST
00001b6f: PUSH1 0x20
00001b71: SWAP1
00001b72: DUP2
00001b73: MUL
00001b74: SWAP3
00001b75: SWAP1
00001b76: SWAP3
00001b77: ADD
00001b78: CALLDATALOAD
00001b79: DUP4
00001b7a: MSTORE
00001b7b: POP
00001b7c: DUP2
00001b7d: ADD
00001b7e: SWAP2
00001b7f: SWAP1
00001b80: SWAP2
00001b81: MSTORE
00001b82: PUSH1 0x40
00001b84: ADD
00001b85: PUSH1 0x00
00001b87: KECCAK256
00001b88: PUSH1 0x06
00001b8a: ADD
00001b8b: SLOAD
00001b8c: PUSH1 0x01
00001b8e: PUSH1 0x01
00001b90: PUSH1 0xa0
00001b92: SHL
00001b93: SUB
00001b94: AND
00001b95: DUP5
00001b96: PUSH2 0x3192
00001b99: JUMP
00001b9a: JUMPDEST
00001b9b: DUP1
00001b9c: PUSH2 0x1ba4
00001b9f: DUP2
00001ba0: PUSH2 0x4bd7
00001ba3: JUMP
00001ba4: JUMPDEST
00001ba5: SWAP2
00001ba6: POP
00001ba7: POP
00001ba8: PUSH2 0x1ae8
00001bab: JUMP
00001bac: JUMPDEST
00001bad: PUSH2 0x1bb4
00001bb0: PUSH2 0x2d55
00001bb3: JUMP
00001bb4: JUMPDEST
00001bb5: PUSH1 0x00
00001bb7: JUMPDEST
00001bb8: DUP4
00001bb9: DUP2
00001bba: LT
00001bbb: ISZERO
00001bbc: PUSH2 0x1693
00001bbf: JUMPI
00001bc0: PUSH2 0x1c09
00001bc3: DUP6
00001bc4: DUP6
00001bc5: DUP4
00001bc6: DUP2
00001bc7: DUP2
00001bc8: LT
00001bc9: PUSH2 0x1bd4
00001bcc: JUMPI
00001bcd: PUSH2 0x1bd4
00001bd0: PUSH2 0x4bab
00001bd3: JUMP
00001bd4: JUMPDEST
00001bd5: SWAP1
00001bd6: POP
00001bd7: PUSH1 0x20
00001bd9: MUL
00001bda: ADD
00001bdb: CALLDATALOAD
00001bdc: DUP5
00001bdd: DUP5
00001bde: DUP5
00001bdf: DUP2
00001be0: DUP2
00001be1: LT
00001be2: PUSH2 0x1bed
00001be5: JUMPI
00001be6: PUSH2 0x1bed
00001be9: PUSH2 0x4bab
00001bec: JUMP
00001bed: JUMPDEST
00001bee: SWAP1
00001bef: POP
00001bf0: PUSH2 0x0160
00001bf3: MUL
00001bf4: ADD
00001bf5: DUP1
00001bf6: CALLDATASIZE
00001bf7: SUB
00001bf8: DUP2
00001bf9: ADD
00001bfa: SWAP1
00001bfb: PUSH2 0x1c04
00001bfe: SWAP2
00001bff: SWAP1
00001c00: PUSH2 0x4d71
00001c03: JUMP
00001c04: JUMPDEST
00001c05: PUSH2 0x32f5
00001c08: JUMP
00001c09: JUMPDEST
00001c0a: PUSH1 0x00
00001c0c: DUP1
00001c0d: MLOAD
00001c0e: PUSH1 0x20
00001c10: PUSH2 0x5019
00001c13: DUP4
00001c14: CODECOPY
00001c15: DUP2
00001c16: MLOAD
00001c17: SWAP2
00001c18: MSTORE
00001c19: DUP6
00001c1a: DUP6
00001c1b: DUP4
00001c1c: DUP2
00001c1d: DUP2
00001c1e: LT
00001c1f: PUSH2 0x1c2a
00001c22: JUMPI
00001c23: PUSH2 0x1c2a
00001c26: PUSH2 0x4bab
00001c29: JUMP
00001c2a: JUMPDEST
00001c2b: SWAP1
00001c2c: POP
00001c2d: PUSH1 0x20
00001c2f: MUL
00001c30: ADD
00001c31: CALLDATALOAD
00001c32: DUP5
00001c33: DUP5
00001c34: DUP5
00001c35: DUP2
00001c36: DUP2
00001c37: LT
00001c38: PUSH2 0x1c43
00001c3b: JUMPI
00001c3c: PUSH2 0x1c43
00001c3f: PUSH2 0x4bab
00001c42: JUMP
00001c43: JUMPDEST
00001c44: SWAP1
00001c45: POP
00001c46: PUSH2 0x0160
00001c49: MUL
00001c4a: ADD
00001c4b: PUSH1 0x40
00001c4d: MLOAD
00001c4e: PUSH2 0x1c58
00001c51: SWAP3
00001c52: SWAP2
00001c53: SWAP1
00001c54: PUSH2 0x4e20
00001c57: JUMP
00001c58: JUMPDEST
00001c59: PUSH1 0x40
00001c5b: MLOAD
00001c5c: DUP1
00001c5d: SWAP2
00001c5e: SUB
00001c5f: SWAP1
00001c60: LOG1
00001c61: DUP1
00001c62: PUSH2 0x1c6a
00001c65: DUP2
00001c66: PUSH2 0x4bd7
00001c69: JUMP
00001c6a: JUMPDEST
00001c6b: SWAP2
00001c6c: POP
00001c6d: POP
00001c6e: PUSH2 0x1bb7
00001c71: JUMP
00001c72: JUMPDEST
00001c73: PUSH1 0x60
00001c75: PUSH1 0x04
00001c77: DUP1
00001c78: SLOAD
00001c79: DUP1
00001c7a: PUSH1 0x20
00001c7c: MUL
00001c7d: PUSH1 0x20
00001c7f: ADD
00001c80: PUSH1 0x40
00001c82: MLOAD
00001c83: SWAP1
00001c84: DUP2
00001c85: ADD
00001c86: PUSH1 0x40
00001c88: MSTORE
00001c89: DUP1
00001c8a: SWAP3
00001c8b: SWAP2
00001c8c: SWAP1
00001c8d: DUP2
00001c8e: DUP2
00001c8f: MSTORE
00001c90: PUSH1 0x20
00001c92: ADD
00001c93: DUP3
00001c94: DUP1
00001c95: SLOAD
00001c96: DUP1
00001c97: ISZERO
00001c98: PUSH2 0x13c0
00001c9b: JUMPI
00001c9c: PUSH1 0x20
00001c9e: MUL
00001c9f: DUP3
00001ca0: ADD
00001ca1: SWAP2
00001ca2: SWAP1
00001ca3: PUSH1 0x00
00001ca5: MSTORE
00001ca6: PUSH1 0x20
00001ca8: PUSH1 0x00
00001caa: KECCAK256
00001cab: SWAP1
00001cac: DUP2
00001cad: SLOAD
00001cae: PUSH1 0x01
00001cb0: PUSH1 0x01
00001cb2: PUSH1 0xa0
00001cb4: SHL
00001cb5: SUB
00001cb6: AND
00001cb7: DUP2
00001cb8: MSTORE
00001cb9: PUSH1 0x01
00001cbb: SWAP1
00001cbc: SWAP2
00001cbd: ADD
00001cbe: SWAP1
00001cbf: PUSH1 0x20
00001cc1: ADD
00001cc2: DUP1
00001cc3: DUP4
00001cc4: GT
00001cc5: PUSH2 0x13a2
00001cc8: JUMPI
00001cc9: POP
00001cca: POP
00001ccb: POP
00001ccc: POP
00001ccd: POP
00001cce: SWAP1
00001ccf: POP
00001cd0: SWAP1
00001cd1: JUMP
00001cd2: JUMPDEST
00001cd3: PUSH2 0x1cda
00001cd6: PUSH2 0x2d55
00001cd9: JUMP
00001cda: JUMPDEST
00001cdb: PUSH1 0x07
00001cdd: DUP1
00001cde: SLOAD
00001cdf: PUSH1 0x01
00001ce1: PUSH1 0x01
00001ce3: PUSH1 0xa0
00001ce5: SHL
00001ce6: SUB
00001ce7: NOT
00001ce8: AND
00001ce9: PUSH1 0x01
00001ceb: PUSH1 0x01
00001ced: PUSH1 0xa0
00001cef: SHL
00001cf0: SUB
00001cf1: SWAP3
00001cf2: SWAP1
00001cf3: SWAP3
00001cf4: AND
00001cf5: SWAP2
00001cf6: SWAP1
00001cf7: SWAP2
00001cf8: OR
00001cf9: SWAP1
00001cfa: SSTORE
00001cfb: JUMP
00001cfc: JUMPDEST
00001cfd: PUSH2 0x1d05
00001d00: CALLER
00001d01: PUSH2 0x11ab
00001d04: JUMP
00001d05: JUMPDEST
00001d06: PUSH2 0x1d21
00001d09: JUMPI
00001d0a: PUSH1 0x40
00001d0c: MLOAD
00001d0d: PUSH3 0x461bcd
00001d11: PUSH1 0xe5
00001d13: SHL
00001d14: DUP2
00001d15: MSTORE
00001d16: PUSH1 0x04
00001d18: ADD
00001d19: PUSH2 0x0eb8
00001d1c: SWAP1
00001d1d: PUSH2 0x4b87
00001d20: JUMP
00001d21: JUMPDEST
00001d22: PUSH2 0x1920
00001d25: DUP2
00001d26: PUSH2 0x33f8
00001d29: JUMP
00001d2a: JUMPDEST
00001d2b: PUSH2 0x1d32
00001d2e: PUSH2 0x2d55
00001d31: JUMP
00001d32: JUMPDEST
00001d33: PUSH1 0x00
00001d35: JUMPDEST
00001d36: DUP3
00001d37: MLOAD
00001d38: DUP2
00001d39: LT
00001d3a: ISZERO
00001d3b: PUSH2 0x0ec1
00001d3e: JUMPI
00001d3f: PUSH1 0x00
00001d41: PUSH1 0x0e
00001d43: PUSH1 0x00
00001d45: DUP6
00001d46: DUP5
00001d47: DUP2
00001d48: MLOAD
00001d49: DUP2
00001d4a: LT
00001d4b: PUSH2 0x1d56
00001d4e: JUMPI
00001d4f: PUSH2 0x1d56
00001d52: PUSH2 0x4bab
00001d55: JUMP
00001d56: JUMPDEST
00001d57: PUSH1 0x20
00001d59: MUL
00001d5a: PUSH1 0x20
00001d5c: ADD
00001d5d: ADD
00001d5e: MLOAD
00001d5f: DUP2
00001d60: MSTORE
00001d61: PUSH1 0x20
00001d63: ADD
00001d64: SWAP1
00001d65: DUP2
00001d66: MSTORE
00001d67: PUSH1 0x20
00001d69: ADD
00001d6a: PUSH1 0x00
00001d6c: KECCAK256
00001d6d: PUSH1 0x00
00001d6f: DUP5
00001d70: DUP5
00001d71: DUP2
00001d72: MLOAD
00001d73: DUP2
00001d74: LT
00001d75: PUSH2 0x1d80
00001d78: JUMPI
00001d79: PUSH2 0x1d80
00001d7c: PUSH2 0x4bab
00001d7f: JUMP
00001d80: JUMPDEST
00001d81: PUSH1 0x20
00001d83: MUL
00001d84: PUSH1 0x20
00001d86: ADD
00001d87: ADD
00001d88: MLOAD
00001d89: DUP2
00001d8a: MSTORE
00001d8b: PUSH1 0x20
00001d8d: ADD
00001d8e: SWAP1
00001d8f: DUP2
00001d90: MSTORE
00001d91: PUSH1 0x20
00001d93: ADD
00001d94: PUSH1 0x00
00001d96: KECCAK256
00001d97: PUSH1 0x00
00001d99: PUSH2 0x0100
00001d9c: EXP
00001d9d: DUP2
00001d9e: SLOAD
00001d9f: DUP2
00001da0: PUSH1 0xff
00001da2: MUL
00001da3: NOT
00001da4: AND
00001da5: SWAP1
00001da6: DUP4
00001da7: ISZERO
00001da8: ISZERO
00001da9: MUL
00001daa: OR
00001dab: SWAP1
00001dac: SSTORE
00001dad: POP
00001dae: DUP1
00001daf: DUP1
00001db0: PUSH2 0x1db8
00001db3: SWAP1
00001db4: PUSH2 0x4bd7
00001db7: JUMP
00001db8: JUMPDEST
00001db9: SWAP2
00001dba: POP
00001dbb: POP
00001dbc: PUSH2 0x1d35
00001dbf: JUMP
00001dc0: JUMPDEST
00001dc1: PUSH2 0x1dc8
00001dc4: PUSH2 0x2d55
00001dc7: JUMP
00001dc8: JUMPDEST
00001dc9: PUSH1 0x00
00001dcb: PUSH2 0x1dd2
00001dce: PUSH2 0x3245
00001dd1: JUMP
00001dd2: JUMPDEST
00001dd3: SWAP1
00001dd4: POP
00001dd5: PUSH2 0x1ddf
00001dd8: DUP2
00001dd9: PUSH1 0x00
00001ddb: PUSH2 0x344c
00001dde: JUMP
00001ddf: JUMPDEST
00001de0: PUSH2 0x1e1b
00001de3: JUMPI
00001de4: PUSH1 0x40
00001de6: MLOAD
00001de7: PUSH3 0x461bcd
00001deb: PUSH1 0xe5
00001ded: SHL
00001dee: DUP2
00001def: MSTORE
00001df0: PUSH1 0x20
00001df2: PUSH1 0x04
00001df4: DUP3
00001df5: ADD
00001df6: MSTORE
00001df7: PUSH1 0x0d
00001df9: PUSH1 0x24
00001dfb: DUP3
00001dfc: ADD
00001dfd: MSTORE
00001dfe: PUSH13 0x1a5b9a5d0818dbdb9d1c9858dd
00001e0c: PUSH1 0x9a
00001e0e: SHL
00001e0f: PUSH1 0x44
00001e11: DUP3
00001e12: ADD
00001e13: MSTORE
00001e14: PUSH1 0x64
00001e16: ADD
00001e17: PUSH2 0x0eb8
00001e1a: JUMP
00001e1b: JUMPDEST
00001e1c: PUSH1 0x00
00001e1e: PUSH1 0x01
00001e20: PUSH1 0x01
00001e22: PUSH1 0xa0
00001e24: SHL
00001e25: SUB
00001e26: DUP2
00001e27: JUMPDEST
00001e28: DUP7
00001e29: DUP2
00001e2a: LT
00001e2b: ISZERO
00001e2c: PUSH2 0x2115
00001e2f: JUMPI
00001e30: DUP3
00001e31: PUSH1 0x01
00001e33: PUSH1 0x01
00001e35: PUSH1 0xa0
00001e37: SHL
00001e38: SUB
00001e39: AND
00001e3a: DUP7
00001e3b: DUP7
00001e3c: DUP4
00001e3d: DUP2
00001e3e: DUP2
00001e3f: LT
00001e40: PUSH2 0x1e4b
00001e43: JUMPI
00001e44: PUSH2 0x1e4b
00001e47: PUSH2 0x4bab
00001e4a: JUMP
00001e4b: JUMPDEST
00001e4c: SWAP1
00001e4d: POP
00001e4e: PUSH2 0x0160
00001e51: MUL
00001e52: ADD
00001e53: PUSH2 0x0120
00001e56: ADD
00001e57: PUSH1 0x20
00001e59: DUP2
00001e5a: ADD
00001e5b: SWAP1
00001e5c: PUSH2 0x1e65
00001e5f: SWAP2
00001e60: SWAP1
00001e61: PUSH2 0x402a
00001e64: JUMP
00001e65: JUMPDEST
00001e66: PUSH1 0x01
00001e68: PUSH1 0x01
00001e6a: PUSH1 0xa0
00001e6c: SHL
00001e6d: SUB
00001e6e: AND
00001e6f: SUB
00001e70: PUSH2 0x1eaa
00001e73: JUMPI
00001e74: PUSH1 0x40
00001e76: MLOAD
00001e77: PUSH3 0x461bcd
00001e7b: PUSH1 0xe5
00001e7d: SHL
00001e7e: DUP2
00001e7f: MSTORE
00001e80: PUSH1 0x20
00001e82: PUSH1 0x04
00001e84: DUP3
00001e85: ADD
00001e86: MSTORE
00001e87: PUSH1 0x0c
00001e89: PUSH1 0x24
00001e8b: DUP3
00001e8c: ADD
00001e8d: MSTORE
00001e8e: PUSH12 0x1d185c99d95d0819985d5b1d
00001e9b: PUSH1 0xa2
00001e9d: SHL
00001e9e: PUSH1 0x44
00001ea0: DUP3
00001ea1: ADD
00001ea2: MSTORE
00001ea3: PUSH1 0x64
00001ea5: ADD
00001ea6: PUSH2 0x0eb8
00001ea9: JUMP
00001eaa: JUMPDEST
00001eab: PUSH2 0x1ed8
00001eae: DUP9
00001eaf: DUP9
00001eb0: DUP4
00001eb1: DUP2
00001eb2: DUP2
00001eb3: LT
00001eb4: PUSH2 0x1ebf
00001eb7: JUMPI
00001eb8: PUSH2 0x1ebf
00001ebb: PUSH2 0x4bab
00001ebe: JUMP
00001ebf: JUMPDEST
00001ec0: SWAP1
00001ec1: POP
00001ec2: PUSH1 0x20
00001ec4: MUL
00001ec5: ADD
00001ec6: CALLDATALOAD
00001ec7: DUP8
00001ec8: DUP8
00001ec9: DUP5
00001eca: DUP2
00001ecb: DUP2
00001ecc: LT
00001ecd: PUSH2 0x1bed
00001ed0: JUMPI
00001ed1: PUSH2 0x1bed
00001ed4: PUSH2 0x4bab
00001ed7: JUMP
00001ed8: JUMPDEST
00001ed9: DUP8
00001eda: DUP8
00001edb: DUP3
00001edc: DUP2
00001edd: DUP2
00001ede: LT
00001edf: PUSH2 0x1eea
00001ee2: JUMPI
00001ee3: PUSH2 0x1eea
00001ee6: PUSH2 0x4bab
00001ee9: JUMP
00001eea: JUMPDEST
00001eeb: SWAP1
00001eec: POP
00001eed: PUSH1 0x20
00001eef: MUL
00001ef0: ADD
00001ef1: CALLDATALOAD
00001ef2: PUSH1 0x0f
00001ef4: PUSH1 0x00
00001ef6: DUP9
00001ef7: DUP9
00001ef8: DUP6
00001ef9: DUP2
00001efa: DUP2
00001efb: LT
00001efc: PUSH2 0x1f07
00001eff: JUMPI
00001f00: PUSH2 0x1f07
00001f03: PUSH2 0x4bab
00001f06: JUMP
00001f07: JUMPDEST
00001f08: SWAP1
00001f09: POP
00001f0a: PUSH2 0x0160
00001f0d: MUL
00001f0e: ADD
00001f0f: PUSH2 0x0120
00001f12: ADD
00001f13: PUSH1 0x20
00001f15: DUP2
00001f16: ADD
00001f17: SWAP1
00001f18: PUSH2 0x1f21
00001f1b: SWAP2
00001f1c: SWAP1
00001f1d: PUSH2 0x402a
00001f20: JUMP
00001f21: JUMPDEST
00001f22: PUSH1 0x01
00001f24: PUSH1 0x01
00001f26: PUSH1 0xa0
00001f28: SHL
00001f29: SUB
00001f2a: AND
00001f2b: DUP2
00001f2c: MSTORE
00001f2d: PUSH1 0x20
00001f2f: DUP2
00001f30: ADD
00001f31: SWAP2
00001f32: SWAP1
00001f33: SWAP2
00001f34: MSTORE
00001f35: PUSH1 0x40
00001f37: ADD
00001f38: PUSH1 0x00
00001f3a: KECCAK256
00001f3b: SSTORE
00001f3c: PUSH2 0x1f66
00001f3f: DUP9
00001f40: DUP9
00001f41: DUP4
00001f42: DUP2
00001f43: DUP2
00001f44: LT
00001f45: PUSH2 0x1f50
00001f48: JUMPI
00001f49: PUSH2 0x1f50
00001f4c: PUSH2 0x4bab
00001f4f: JUMP
00001f50: JUMPDEST
00001f51: SWAP1
00001f52: POP
00001f53: PUSH1 0x20
00001f55: MUL
00001f56: ADD
00001f57: CALLDATALOAD
00001f58: DUP6
00001f59: PUSH2 0x32f0
00001f5c: SWAP1
00001f5d: SWAP2
00001f5e: SWAP1
00001f5f: PUSH4 0xffffffff
00001f64: AND
00001f65: JUMP
00001f66: JUMPDEST
00001f67: ISZERO
00001f68: PUSH2 0x20ac
00001f6b: JUMPI
00001f6c: DUP3
00001f6d: PUSH1 0x01
00001f6f: PUSH1 0x01
00001f71: PUSH1 0xa0
00001f73: SHL
00001f74: SUB
00001f75: AND
00001f76: DUP7
00001f77: DUP7
00001f78: DUP4
00001f79: DUP2
00001f7a: DUP2
00001f7b: LT
00001f7c: PUSH2 0x1f87
00001f7f: JUMPI
00001f80: PUSH2 0x1f87
00001f83: PUSH2 0x4bab
00001f86: JUMP
00001f87: JUMPDEST
00001f88: SWAP1
00001f89: POP
00001f8a: PUSH2 0x0160
00001f8d: MUL
00001f8e: ADD
00001f8f: PUSH1 0xe0
00001f91: ADD
00001f92: PUSH1 0x20
00001f94: DUP2
00001f95: ADD
00001f96: SWAP1
00001f97: PUSH2 0x1fa0
00001f9a: SWAP2
00001f9b: SWAP1
00001f9c: PUSH2 0x402a
00001f9f: JUMP
00001fa0: JUMPDEST
00001fa1: PUSH1 0x01
00001fa3: PUSH1 0x01
00001fa5: PUSH1 0xa0
00001fa7: SHL
00001fa8: SUB
00001fa9: AND
00001faa: EQ
00001fab: PUSH2 0x200d
00001fae: JUMPI
00001faf: PUSH2 0x200d
00001fb2: DUP7
00001fb3: DUP7
00001fb4: DUP4
00001fb5: DUP2
00001fb6: DUP2
00001fb7: LT
00001fb8: PUSH2 0x1fc3
00001fbb: JUMPI
00001fbc: PUSH2 0x1fc3
00001fbf: PUSH2 0x4bab
00001fc2: JUMP
00001fc3: JUMPDEST
00001fc4: SWAP1
00001fc5: POP
00001fc6: PUSH2 0x0160
00001fc9: MUL
00001fca: ADD
00001fcb: PUSH2 0x0120
00001fce: ADD
00001fcf: PUSH1 0x20
00001fd1: DUP2
00001fd2: ADD
00001fd3: SWAP1
00001fd4: PUSH2 0x1fdd
00001fd7: SWAP2
00001fd8: SWAP1
00001fd9: PUSH2 0x402a
00001fdc: JUMP
00001fdd: JUMPDEST
00001fde: DUP8
00001fdf: DUP8
00001fe0: DUP5
00001fe1: DUP2
00001fe2: DUP2
00001fe3: LT
00001fe4: PUSH2 0x1fef
00001fe7: JUMPI
00001fe8: PUSH2 0x1fef
00001feb: PUSH2 0x4bab
00001fee: JUMP
00001fef: JUMPDEST
00001ff0: SWAP1
00001ff1: POP
00001ff2: PUSH2 0x0160
00001ff5: MUL
00001ff6: ADD
00001ff7: PUSH1 0xe0
00001ff9: ADD
00001ffa: PUSH1 0x20
00001ffc: DUP2
00001ffd: ADD
00001ffe: SWAP1
00001fff: PUSH2 0x2008
00002002: SWAP2
00002003: SWAP1
00002004: PUSH2 0x402a
00002007: JUMP
00002008: JUMPDEST
00002009: PUSH2 0x3192
0000200c: JUMP
0000200d: JUMPDEST
0000200e: DUP3
0000200f: PUSH1 0x01
00002011: PUSH1 0x01
00002013: PUSH1 0xa0
00002015: SHL
00002016: SUB
00002017: AND
00002018: DUP7
00002019: DUP7
0000201a: DUP4
0000201b: DUP2
0000201c: DUP2
0000201d: LT
0000201e: PUSH2 0x2029
00002021: JUMPI
00002022: PUSH2 0x2029
00002025: PUSH2 0x4bab
00002028: JUMP
00002029: JUMPDEST
0000202a: SWAP1
0000202b: POP
0000202c: PUSH2 0x0160
0000202f: MUL
00002030: ADD
00002031: PUSH2 0x0100
00002034: ADD
00002035: PUSH1 0x20
00002037: DUP2
00002038: ADD
00002039: SWAP1
0000203a: PUSH2 0x2043
0000203d: SWAP2
0000203e: SWAP1
0000203f: PUSH2 0x402a
00002042: JUMP
00002043: JUMPDEST
00002044: PUSH1 0x01
00002046: PUSH1 0x01
00002048: PUSH1 0xa0
0000204a: SHL
0000204b: SUB
0000204c: AND
0000204d: EQ
0000204e: PUSH2 0x20ac
00002051: JUMPI
00002052: PUSH2 0x20ac
00002055: DUP7
00002056: DUP7
00002057: DUP4
00002058: DUP2
00002059: DUP2
0000205a: LT
0000205b: PUSH2 0x2066
0000205e: JUMPI
0000205f: PUSH2 0x2066
00002062: PUSH2 0x4bab
00002065: JUMP
00002066: JUMPDEST
00002067: SWAP1
00002068: POP
00002069: PUSH2 0x0160
0000206c: MUL
0000206d: ADD
0000206e: PUSH2 0x0120
00002071: ADD
00002072: PUSH1 0x20
00002074: DUP2
00002075: ADD
00002076: SWAP1
00002077: PUSH2 0x2080
0000207a: SWAP2
0000207b: SWAP1
0000207c: PUSH2 0x402a
0000207f: JUMP
00002080: JUMPDEST
00002081: DUP8
00002082: DUP8
00002083: DUP5
00002084: DUP2
00002085: DUP2
00002086: LT
00002087: PUSH2 0x2092
0000208a: JUMPI
0000208b: PUSH2 0x2092
0000208e: PUSH2 0x4bab
00002091: JUMP
00002092: JUMPDEST
00002093: SWAP1
00002094: POP
00002095: PUSH2 0x0160
00002098: MUL
00002099: ADD
0000209a: PUSH2 0x0100
0000209d: ADD
0000209e: PUSH1 0x20
000020a0: DUP2
000020a1: ADD
000020a2: SWAP1
000020a3: PUSH2 0x2008
000020a6: SWAP2
000020a7: SWAP1
000020a8: PUSH2 0x402a
000020ab: JUMP
000020ac: JUMPDEST
000020ad: PUSH1 0x00
000020af: DUP1
000020b0: MLOAD
000020b1: PUSH1 0x20
000020b3: PUSH2 0x5019
000020b6: DUP4
000020b7: CODECOPY
000020b8: DUP2
000020b9: MLOAD
000020ba: SWAP2
000020bb: MSTORE
000020bc: DUP9
000020bd: DUP9
000020be: DUP4
000020bf: DUP2
000020c0: DUP2
000020c1: LT
000020c2: PUSH2 0x20cd
000020c5: JUMPI
000020c6: PUSH2 0x20cd
000020c9: PUSH2 0x4bab
000020cc: JUMP
000020cd: JUMPDEST
000020ce: SWAP1
000020cf: POP
000020d0: PUSH1 0x20
000020d2: MUL
000020d3: ADD
000020d4: CALLDATALOAD
000020d5: DUP8
000020d6: DUP8
000020d7: DUP5
000020d8: DUP2
000020d9: DUP2
000020da: LT
000020db: PUSH2 0x20e6
000020de: JUMPI
000020df: PUSH2 0x20e6
000020e2: PUSH2 0x4bab
000020e5: JUMP
000020e6: JUMPDEST
000020e7: SWAP1
000020e8: POP
000020e9: PUSH2 0x0160
000020ec: MUL
000020ed: ADD
000020ee: PUSH1 0x40
000020f0: MLOAD
000020f1: PUSH2 0x20fb
000020f4: SWAP3
000020f5: SWAP2
000020f6: SWAP1
000020f7: PUSH2 0x4e20
000020fa: JUMP
000020fb: JUMPDEST
000020fc: PUSH1 0x40
000020fe: MLOAD
000020ff: DUP1
00002100: SWAP2
00002101: SUB
00002102: SWAP1
00002103: LOG1
00002104: DUP1
00002105: PUSH2 0x210d
00002108: DUP2
00002109: PUSH2 0x4bd7
0000210c: JUMP
0000210d: JUMPDEST
0000210e: SWAP2
0000210f: POP
00002110: POP
00002111: PUSH2 0x1e27
00002114: JUMP
00002115: JUMPDEST
00002116: POP
00002117: POP
00002118: POP
00002119: POP
0000211a: POP
0000211b: POP
0000211c: POP
0000211d: POP
0000211e: JUMP
0000211f: JUMPDEST
00002120: PUSH1 0x00
00002122: PUSH2 0x212c
00002125: CALLER
00002126: PUSH1 0x01
00002128: PUSH2 0x2dc3
0000212b: JUMP
0000212c: JUMPDEST
0000212d: PUSH2 0x2165
00002130: JUMPI
00002131: PUSH1 0x40
00002133: MLOAD
00002134: PUSH3 0x461bcd
00002138: PUSH1 0xe5
0000213a: SHL
0000213b: DUP2
0000213c: MSTORE
0000213d: PUSH1 0x20
0000213f: PUSH1 0x04
00002141: DUP3
00002142: ADD
00002143: MSTORE
00002144: PUSH1 0x0a
00002146: PUSH1 0x24
00002148: DUP3
00002149: ADD
0000214a: MSTORE
0000214b: PUSH10 0x27b7363c9020b236b4b7
00002156: PUSH1 0xb1
00002158: SHL
00002159: PUSH1 0x44
0000215b: DUP3
0000215c: ADD
0000215d: MSTORE
0000215e: PUSH1 0x64
00002160: ADD
00002161: PUSH2 0x0eb8
00002164: JUMP
00002165: JUMPDEST
00002166: PUSH2 0x132d
00002169: PUSH1 0x04
0000216b: CALLER
0000216c: PUSH1 0x01
0000216e: PUSH2 0x2e99
00002171: JUMP
00002172: JUMPDEST
00002173: PUSH2 0x217a
00002176: PUSH2 0x2d55
00002179: JUMP
0000217a: JUMPDEST
0000217b: PUSH1 0x00
0000217d: PUSH2 0x2184
00002180: PUSH2 0x3245
00002183: JUMP
00002184: JUMPDEST
00002185: SWAP1
00002186: POP
00002187: PUSH1 0x00
00002189: JUMPDEST
0000218a: DUP4
0000218b: MLOAD
0000218c: DUP2
0000218d: LT
0000218e: ISZERO
0000218f: PUSH2 0x18af
00002192: JUMPI
00002193: DUP3
00002194: DUP2
00002195: DUP2
00002196: MLOAD
00002197: DUP2
00002198: LT
00002199: PUSH2 0x21a4
0000219c: JUMPI
0000219d: PUSH2 0x21a4
000021a0: PUSH2 0x4bab
000021a3: JUMP
000021a4: JUMPDEST
000021a5: PUSH1 0x20
000021a7: MUL
000021a8: PUSH1 0x20
000021aa: ADD
000021ab: ADD
000021ac: MLOAD
000021ad: PUSH1 0x0a
000021af: PUSH1 0x00
000021b1: DUP7
000021b2: DUP5
000021b3: DUP2
000021b4: MLOAD
000021b5: DUP2
000021b6: LT
000021b7: PUSH2 0x21c2
000021ba: JUMPI
000021bb: PUSH2 0x21c2
000021be: PUSH2 0x4bab
000021c1: JUMP
000021c2: JUMPDEST
000021c3: PUSH1 0x20
000021c5: MUL
000021c6: PUSH1 0x20
000021c8: ADD
000021c9: ADD
000021ca: MLOAD
000021cb: DUP2
000021cc: MSTORE
000021cd: PUSH1 0x20
000021cf: ADD
000021d0: SWAP1
000021d1: DUP2
000021d2: MSTORE
000021d3: PUSH1 0x20
000021d5: ADD
000021d6: PUSH1 0x00
000021d8: KECCAK256
000021d9: PUSH1 0x04
000021db: ADD
000021dc: PUSH1 0x01
000021de: PUSH2 0x0100
000021e1: EXP
000021e2: DUP2
000021e3: SLOAD
000021e4: DUP2
000021e5: PUSH1 0x01
000021e7: PUSH1 0x01
000021e9: PUSH1 0xa0
000021eb: SHL
000021ec: SUB
000021ed: MUL
000021ee: NOT
000021ef: AND
000021f0: SWAP1
000021f1: DUP4
000021f2: PUSH1 0x01
000021f4: PUSH1 0x01
000021f6: PUSH1 0xa0
000021f8: SHL
000021f9: SUB
000021fa: AND
000021fb: MUL
000021fc: OR
000021fd: SWAP1
000021fe: SSTORE
000021ff: POP
00002200: PUSH2 0x222b
00002203: DUP5
00002204: DUP3
00002205: DUP2
00002206: MLOAD
00002207: DUP2
00002208: LT
00002209: PUSH2 0x2214
0000220c: JUMPI
0000220d: PUSH2 0x2214
00002210: PUSH2 0x4bab
00002213: JUMP
00002214: JUMPDEST
00002215: PUSH1 0x20
00002217: MUL
00002218: PUSH1 0x20
0000221a: ADD
0000221b: ADD
0000221c: MLOAD
0000221d: DUP4
0000221e: PUSH2 0x32f0
00002221: SWAP1
00002222: SWAP2
00002223: SWAP1
00002224: PUSH4 0xffffffff
00002229: AND
0000222a: JUMP
0000222b: JUMPDEST
0000222c: ISZERO
0000222d: PUSH2 0x2288
00002230: JUMPI
00002231: PUSH2 0x2288
00002234: PUSH1 0x0a
00002236: PUSH1 0x00
00002238: DUP7
00002239: DUP5
0000223a: DUP2
0000223b: MLOAD
0000223c: DUP2
0000223d: LT
0000223e: PUSH2 0x2249
00002241: JUMPI
00002242: PUSH2 0x2249
00002245: PUSH2 0x4bab
00002248: JUMP
00002249: JUMPDEST
0000224a: PUSH1 0x20
0000224c: MUL
0000224d: PUSH1 0x20
0000224f: ADD
00002250: ADD
00002251: MLOAD
00002252: DUP2
00002253: MSTORE
00002254: PUSH1 0x20
00002256: ADD
00002257: SWAP1
00002258: DUP2
00002259: MSTORE
0000225a: PUSH1 0x20
0000225c: ADD
0000225d: PUSH1 0x00
0000225f: KECCAK256
00002260: PUSH1 0x05
00002262: ADD
00002263: PUSH1 0x00
00002265: SWAP1
00002266: SLOAD
00002267: SWAP1
00002268: PUSH2 0x0100
0000226b: EXP
0000226c: SWAP1
0000226d: DIV
0000226e: PUSH1 0x01
00002270: PUSH1 0x01
00002272: PUSH1 0xa0
00002274: SHL
00002275: SUB
00002276: AND
00002277: DUP5
00002278: DUP4
00002279: DUP2
0000227a: MLOAD
0000227b: DUP2
0000227c: LT
0000227d: PUSH2 0x17eb
00002280: JUMPI
00002281: PUSH2 0x17eb
00002284: PUSH2 0x4bab
00002287: JUMP
00002288: JUMPDEST
00002289: DUP1
0000228a: PUSH2 0x2292
0000228d: DUP2
0000228e: PUSH2 0x4bd7
00002291: JUMP
00002292: JUMPDEST
00002293: SWAP2
00002294: POP
00002295: POP
00002296: PUSH2 0x2189
00002299: JUMP
0000229a: JUMPDEST
0000229b: PUSH1 0x60
0000229d: PUSH1 0x02
0000229f: DUP1
000022a0: SLOAD
000022a1: DUP1
000022a2: PUSH1 0x20
000022a4: MUL
000022a5: PUSH1 0x20
000022a7: ADD
000022a8: PUSH1 0x40
000022aa: MLOAD
000022ab: SWAP1
000022ac: DUP2
000022ad: ADD
000022ae: PUSH1 0x40
000022b0: MSTORE
000022b1: DUP1
000022b2: SWAP3
000022b3: SWAP2
000022b4: SWAP1
000022b5: DUP2
000022b6: DUP2
000022b7: MSTORE
000022b8: PUSH1 0x20
000022ba: ADD
000022bb: DUP3
000022bc: DUP1
000022bd: SLOAD
000022be: DUP1
000022bf: ISZERO
000022c0: PUSH2 0x13c0
000022c3: JUMPI
000022c4: PUSH1 0x20
000022c6: MUL
000022c7: DUP3
000022c8: ADD
000022c9: SWAP2
000022ca: SWAP1
000022cb: PUSH1 0x00
000022cd: MSTORE
000022ce: PUSH1 0x20
000022d0: PUSH1 0x00
000022d2: KECCAK256
000022d3: SWAP1
000022d4: DUP2
000022d5: SLOAD
000022d6: PUSH1 0x01
000022d8: PUSH1 0x01
000022da: PUSH1 0xa0
000022dc: SHL
000022dd: SUB
000022de: AND
000022df: DUP2
000022e0: MSTORE
000022e1: PUSH1 0x01
000022e3: SWAP1
000022e4: SWAP2
000022e5: ADD
000022e6: SWAP1
000022e7: PUSH1 0x20
000022e9: ADD
000022ea: DUP1
000022eb: DUP4
000022ec: GT
000022ed: PUSH2 0x13a2
000022f0: JUMPI
000022f1: POP
000022f2: POP
000022f3: POP
000022f4: POP
000022f5: POP
000022f6: SWAP1
000022f7: POP
000022f8: SWAP1
000022f9: JUMP
000022fa: JUMPDEST
000022fb: PUSH1 0x05
000022fd: DUP2
000022fe: DUP2
000022ff: SLOAD
00002300: DUP2
00002301: LT
00002302: PUSH2 0x118a
00002305: JUMPI
00002306: PUSH1 0x00
00002308: DUP1
00002309: REVERT
0000230a: JUMPDEST
0000230b: PUSH2 0x2313
0000230e: DUP3
0000230f: PUSH2 0x345b
00002312: JUMP
00002313: JUMPDEST
00002314: PUSH1 0x00
00002316: DUP3
00002317: DUP2
00002318: MSTORE
00002319: PUSH1 0x10
0000231b: PUSH1 0x20
0000231d: SWAP1
0000231e: DUP2
0000231f: MSTORE
00002320: PUSH1 0x40
00002322: DUP1
00002323: DUP4
00002324: KECCAK256
00002325: CALLER
00002326: DUP5
00002327: MSTORE
00002328: SWAP1
00002329: SWAP2
0000232a: MSTORE
0000232b: DUP2
0000232c: KECCAK256
0000232d: DUP1
0000232e: SLOAD
0000232f: DUP4
00002330: SWAP3
00002331: SWAP1
00002332: PUSH2 0x233c
00002335: SWAP1
00002336: DUP5
00002337: SWAP1
00002338: PUSH2 0x4ec1
0000233b: JUMP
0000233c: JUMPDEST
0000233d: SWAP1
0000233e: SWAP2
0000233f: SSTORE
00002340: POP
00002341: PUSH2 0x0fa1
00002344: SWAP1
00002345: POP
00002346: DUP3
00002347: CALLER
00002348: DUP4
00002349: PUSH2 0x34db
0000234c: JUMP
0000234d: JUMPDEST
0000234e: PUSH1 0x00
00002350: PUSH2 0x2358
00002353: CALLER
00002354: PUSH2 0x1737
00002357: JUMP
00002358: JUMPDEST
00002359: PUSH2 0x1767
0000235c: JUMPI
0000235d: PUSH1 0x40
0000235f: MLOAD
00002360: PUSH3 0x461bcd
00002364: PUSH1 0xe5
00002366: SHL
00002367: DUP2
00002368: MSTORE
00002369: PUSH1 0x04
0000236b: ADD
0000236c: PUSH2 0x0eb8
0000236f: SWAP1
00002370: PUSH2 0x4ccb
00002373: JUMP
00002374: JUMPDEST
00002375: PUSH1 0x00
00002377: PUSH2 0x237f
0000237a: CALLER
0000237b: PUSH2 0x11ab
0000237e: JUMP
0000237f: JUMPDEST
00002380: PUSH2 0x239b
00002383: JUMPI
00002384: PUSH1 0x40
00002386: MLOAD
00002387: PUSH3 0x461bcd
0000238b: PUSH1 0xe5
0000238d: SHL
0000238e: DUP2
0000238f: MSTORE
00002390: PUSH1 0x04
00002392: ADD
00002393: PUSH2 0x0eb8
00002396: SWAP1
00002397: PUSH2 0x4b87
0000239a: JUMP
0000239b: JUMPDEST
0000239c: PUSH2 0x11e4
0000239f: PUSH1 0x04
000023a1: DUP4
000023a2: PUSH1 0x01
000023a4: PUSH2 0x2e31
000023a7: JUMP
000023a8: JUMPDEST
000023a9: PUSH2 0x23b1
000023ac: CALLER
000023ad: PUSH2 0x11ab
000023b0: JUMP
000023b1: JUMPDEST
000023b2: PUSH2 0x23cd
000023b5: JUMPI
000023b6: PUSH1 0x40
000023b8: MLOAD
000023b9: PUSH3 0x461bcd
000023bd: PUSH1 0xe5
000023bf: SHL
000023c0: DUP2
000023c1: MSTORE
000023c2: PUSH1 0x04
000023c4: ADD
000023c5: PUSH2 0x0eb8
000023c8: SWAP1
000023c9: PUSH2 0x4b87
000023cc: JUMP
000023cd: JUMPDEST
000023ce: PUSH1 0x00
000023d0: SLOAD
000023d1: PUSH3 0x010000
000023d5: SWAP1
000023d6: DIV
000023d7: PUSH1 0x60
000023d9: SHL
000023da: PUSH1 0x01
000023dc: PUSH1 0x01
000023de: PUSH1 0x60
000023e0: SHL
000023e1: SUB
000023e2: NOT
000023e3: AND
000023e4: ISZERO
000023e5: PUSH2 0x241c
000023e8: JUMPI
000023e9: PUSH1 0x40
000023eb: MLOAD
000023ec: PUSH3 0x461bcd
000023f0: PUSH1 0xe5
000023f2: SHL
000023f3: DUP2
000023f4: MSTORE
000023f5: PUSH1 0x20
000023f7: PUSH1 0x04
000023f9: DUP3
000023fa: ADD
000023fb: MSTORE
000023fc: PUSH1 0x09
000023fe: PUSH1 0x24
00002400: DUP3
00002401: ADD
00002402: MSTORE
00002403: PUSH9 0x6f6e6c79206f6e6365
0000240d: PUSH1 0xb8
0000240f: SHL
00002410: PUSH1 0x44
00002412: DUP3
00002413: ADD
00002414: MSTORE
00002415: PUSH1 0x64
00002417: ADD
00002418: PUSH2 0x0eb8
0000241b: JUMP
0000241c: JUMPDEST
0000241d: PUSH1 0x00
0000241f: DUP1
00002420: SLOAD
00002421: PUSH1 0x60
00002423: SWAP3
00002424: SWAP1
00002425: SWAP3
00002426: SHR
00002427: PUSH3 0x010000
0000242b: MUL
0000242c: PUSH3 0x010000
00002430: PUSH1 0x01
00002432: PUSH1 0xb0
00002434: SHL
00002435: SUB
00002436: NOT
00002437: SWAP1
00002438: SWAP3
00002439: AND
0000243a: SWAP2
0000243b: SWAP1
0000243c: SWAP2
0000243d: OR
0000243e: SWAP1
0000243f: SSTORE
00002440: JUMP
00002441: JUMPDEST
00002442: PUSH2 0x2449
00002445: PUSH2 0x2d55
00002448: JUMP
00002449: JUMPDEST
0000244a: PUSH1 0x06
0000244c: DUP1
0000244d: SLOAD
0000244e: PUSH1 0x01
00002450: PUSH1 0x01
00002452: PUSH1 0xa0
00002454: SHL
00002455: SUB
00002456: NOT
00002457: AND
00002458: PUSH1 0x01
0000245a: PUSH1 0x01
0000245c: PUSH1 0xa0
0000245e: SHL
0000245f: SUB
00002460: SWAP3
00002461: SWAP1
00002462: SWAP3
00002463: AND
00002464: SWAP2
00002465: SWAP1
00002466: SWAP2
00002467: OR
00002468: SWAP1
00002469: SSTORE
0000246a: JUMP
0000246b: JUMPDEST
0000246c: PUSH1 0x00
0000246e: PUSH2 0x2476
00002471: CALLER
00002472: PUSH2 0x12f0
00002475: JUMP
00002476: JUMPDEST
00002477: PUSH2 0x1320
0000247a: JUMPI
0000247b: PUSH1 0x40
0000247d: MLOAD
0000247e: PUSH3 0x461bcd
00002482: PUSH1 0xe5
00002484: SHL
00002485: DUP2
00002486: MSTORE
00002487: PUSH1 0x04
00002489: ADD
0000248a: PUSH2 0x0eb8
0000248d: SWAP1
0000248e: PUSH2 0x4bf0
00002491: JUMP
00002492: JUMPDEST
00002493: PUSH1 0x00
00002495: PUSH2 0x249d
00002498: CALLER
00002499: PUSH2 0x11ab
0000249c: JUMP
0000249d: JUMPDEST
0000249e: PUSH2 0x24b9
000024a1: JUMPI
000024a2: PUSH1 0x40
000024a4: MLOAD
000024a5: PUSH3 0x461bcd
000024a9: PUSH1 0xe5
000024ab: SHL
000024ac: DUP2
000024ad: MSTORE
000024ae: PUSH1 0x04
000024b0: ADD
000024b1: PUSH2 0x0eb8
000024b4: SWAP1
000024b5: PUSH2 0x4b87
000024b8: JUMP
000024b9: JUMPDEST
000024ba: PUSH2 0x24c2
000024bd: DUP3
000024be: PUSH2 0x2ded
000024c1: JUMP
000024c2: JUMPDEST
000024c3: PUSH2 0x11e4
000024c6: PUSH1 0x03
000024c8: DUP4
000024c9: PUSH1 0x04
000024cb: PUSH2 0x2e31
000024ce: JUMP
000024cf: JUMPDEST
000024d0: PUSH2 0x24d7
000024d3: PUSH2 0x2d55
000024d6: JUMP
000024d7: JUMPDEST
000024d8: PUSH1 0x00
000024da: JUMPDEST
000024db: DUP4
000024dc: DUP2
000024dd: LT
000024de: ISZERO
000024df: PUSH2 0x1693
000024e2: JUMPI
000024e3: DUP3
000024e4: DUP3
000024e5: DUP3
000024e6: DUP2
000024e7: DUP2
000024e8: LT
000024e9: PUSH2 0x24f4
000024ec: JUMPI
000024ed: PUSH2 0x24f4
000024f0: PUSH2 0x4bab
000024f3: JUMP
000024f4: JUMPDEST
000024f5: SWAP1
000024f6: POP
000024f7: PUSH1 0x60
000024f9: MUL
000024fa: ADD
000024fb: PUSH1 0x0a
000024fd: PUSH1 0x00
000024ff: DUP8
00002500: DUP8
00002501: DUP6
00002502: DUP2
00002503: DUP2
00002504: LT
00002505: PUSH2 0x2510
00002508: JUMPI
00002509: PUSH2 0x2510
0000250c: PUSH2 0x4bab
0000250f: JUMP
00002510: JUMPDEST
00002511: SWAP1
00002512: POP
00002513: PUSH1 0x20
00002515: MUL
00002516: ADD
00002517: CALLDATALOAD
00002518: DUP2
00002519: MSTORE
0000251a: PUSH1 0x20
0000251c: ADD
0000251d: SWAP1
0000251e: DUP2
0000251f: MSTORE
00002520: PUSH1 0x20
00002522: ADD
00002523: PUSH1 0x00
00002525: KECCAK256
00002526: PUSH1 0x00
00002528: ADD
00002529: DUP2
0000252a: DUP2
0000252b: PUSH2 0x2534
0000252e: SWAP2
0000252f: SWAP1
00002530: PUSH2 0x4c31
00002533: JUMP
00002534: JUMPDEST
00002535: SWAP1
00002536: POP
00002537: POP
00002538: PUSH32 0xacfad0157cd2da7666b74ee0913cbf7138d00099b488e5fc050f407085ffcbeb
00002559: DUP6
0000255a: DUP6
0000255b: DUP4
0000255c: DUP2
0000255d: DUP2
0000255e: LT
0000255f: PUSH2 0x256a
00002562: JUMPI
00002563: PUSH2 0x256a
00002566: PUSH2 0x4bab
00002569: JUMP
0000256a: JUMPDEST
0000256b: SWAP1
0000256c: POP
0000256d: PUSH1 0x20
0000256f: MUL
00002570: ADD
00002571: CALLDATALOAD
00002572: DUP5
00002573: DUP5
00002574: DUP5
00002575: DUP2
00002576: DUP2
00002577: LT
00002578: PUSH2 0x2583
0000257b: JUMPI
0000257c: PUSH2 0x2583
0000257f: PUSH2 0x4bab
00002582: JUMP
00002583: JUMPDEST
00002584: SWAP1
00002585: POP
00002586: PUSH1 0x60
00002588: MUL
00002589: ADD
0000258a: PUSH1 0x40
0000258c: MLOAD
0000258d: PUSH2 0x2597
00002590: SWAP3
00002591: SWAP2
00002592: SWAP1
00002593: PUSH2 0x4cb7
00002596: JUMP
00002597: JUMPDEST
00002598: PUSH1 0x40
0000259a: MLOAD
0000259b: DUP1
0000259c: SWAP2
0000259d: SUB
0000259e: SWAP1
0000259f: LOG1
000025a0: DUP1
000025a1: PUSH2 0x25a9
000025a4: DUP2
000025a5: PUSH2 0x4bd7
000025a8: JUMP
000025a9: JUMPDEST
000025aa: SWAP2
000025ab: POP
000025ac: POP
000025ad: PUSH2 0x24da
000025b0: JUMP
000025b1: JUMPDEST
000025b2: PUSH1 0x60
000025b4: PUSH1 0x03
000025b6: DUP1
000025b7: SLOAD
000025b8: DUP1
000025b9: PUSH1 0x20
000025bb: MUL
000025bc: PUSH1 0x20
000025be: ADD
000025bf: PUSH1 0x40
000025c1: MLOAD
000025c2: SWAP1
000025c3: DUP2
000025c4: ADD
000025c5: PUSH1 0x40
000025c7: MSTORE
000025c8: DUP1
000025c9: SWAP3
000025ca: SWAP2
000025cb: SWAP1
000025cc: DUP2
000025cd: DUP2
000025ce: MSTORE
000025cf: PUSH1 0x20
000025d1: ADD
000025d2: DUP3
000025d3: DUP1
000025d4: SLOAD
000025d5: DUP1
000025d6: ISZERO
000025d7: PUSH2 0x13c0
000025da: JUMPI
000025db: PUSH1 0x20
000025dd: MUL
000025de: DUP3
000025df: ADD
000025e0: SWAP2
000025e1: SWAP1
000025e2: PUSH1 0x00
000025e4: MSTORE
000025e5: PUSH1 0x20
000025e7: PUSH1 0x00
000025e9: KECCAK256
000025ea: SWAP1
000025eb: DUP2
000025ec: SLOAD
000025ed: PUSH1 0x01
000025ef: PUSH1 0x01
000025f1: PUSH1 0xa0
000025f3: SHL
000025f4: SUB
000025f5: AND
000025f6: DUP2
000025f7: MSTORE
000025f8: PUSH1 0x01
000025fa: SWAP1
000025fb: SWAP2
000025fc: ADD
000025fd: SWAP1
000025fe: PUSH1 0x20
00002600: ADD
00002601: DUP1
00002602: DUP4
00002603: GT
00002604: PUSH2 0x13a2
00002607: JUMPI
00002608: POP
00002609: POP
0000260a: POP
0000260b: POP
0000260c: POP
0000260d: SWAP1
0000260e: POP
0000260f: SWAP1
00002610: JUMP
00002611: JUMPDEST
00002612: PUSH2 0x261a
00002615: DUP3
00002616: PUSH2 0x345b
00002619: JUMP
0000261a: JUMPDEST
0000261b: PUSH2 0x2625
0000261e: DUP3
0000261f: CALLER
00002620: DUP4
00002621: PUSH2 0x2c5e
00002624: JUMP
00002625: JUMPDEST
00002626: PUSH1 0x00
00002628: DUP3
00002629: DUP2
0000262a: MSTORE
0000262b: PUSH1 0x10
0000262d: PUSH1 0x20
0000262f: SWAP1
00002630: DUP2
00002631: MSTORE
00002632: PUSH1 0x40
00002634: DUP1
00002635: DUP4
00002636: KECCAK256
00002637: CALLER
00002638: DUP5
00002639: MSTORE
0000263a: SWAP1
0000263b: SWAP2
0000263c: MSTORE
0000263d: DUP2
0000263e: KECCAK256
0000263f: DUP1
00002640: SLOAD
00002641: DUP4
00002642: SWAP3
00002643: SWAP1
00002644: PUSH2 0x264e
00002647: SWAP1
00002648: DUP5
00002649: SWAP1
0000264a: PUSH2 0x4ed8
0000264d: JUMP
0000264e: JUMPDEST
0000264f: SWAP1
00002650: SWAP2
00002651: SSTORE
00002652: POP
00002653: POP
00002654: POP
00002655: POP
00002656: JUMP
00002657: JUMPDEST
00002658: PUSH1 0x03
0000265a: DUP2
0000265b: DUP2
0000265c: SLOAD
0000265d: DUP2
0000265e: LT
0000265f: PUSH2 0x118a
00002662: JUMPI
00002663: PUSH1 0x00
00002665: DUP1
00002666: REVERT
00002667: JUMPDEST
00002668: PUSH1 0x00
0000266a: SLOAD
0000266b: PUSH2 0x0100
0000266e: SWAP1
0000266f: DIV
00002670: PUSH1 0xff
00002672: AND
00002673: ISZERO
00002674: DUP1
00002675: DUP1
00002676: ISZERO
00002677: PUSH2 0x2687
0000267a: JUMPI
0000267b: POP
0000267c: PUSH1 0x00
0000267e: SLOAD
0000267f: PUSH1 0x01
00002681: PUSH1 0xff
00002683: SWAP1
00002684: SWAP2
00002685: AND
00002686: LT
00002687: JUMPDEST
00002688: DUP1
00002689: PUSH2 0x26a8
0000268c: JUMPI
0000268d: POP
0000268e: PUSH2 0x2696
00002691: ADDRESS
00002692: PUSH2 0x2b8e
00002695: JUMP
00002696: JUMPDEST
00002697: ISZERO
00002698: DUP1
00002699: ISZERO
0000269a: PUSH2 0x26a8
0000269d: JUMPI
0000269e: POP
0000269f: PUSH1 0x00
000026a1: SLOAD
000026a2: PUSH1 0xff
000026a4: AND
000026a5: PUSH1 0x01
000026a7: EQ
000026a8: JUMPDEST
000026a9: PUSH2 0x270b
000026ac: JUMPI
000026ad: PUSH1 0x40
000026af: MLOAD
000026b0: PUSH3 0x461bcd
000026b4: PUSH1 0xe5
000026b6: SHL
000026b7: DUP2
000026b8: MSTORE
000026b9: PUSH1 0x20
000026bb: PUSH1 0x04
000026bd: DUP3
000026be: ADD
000026bf: MSTORE
000026c0: PUSH1 0x2e
000026c2: PUSH1 0x24
000026c4: DUP3
000026c5: ADD
000026c6: MSTORE
000026c7: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
000026e8: PUSH1 0x44
000026ea: DUP3
000026eb: ADD
000026ec: MSTORE
000026ed: PUSH14 0x191e481a5b9a5d1a585b1a5e9959
000026fc: PUSH1 0x92
000026fe: SHL
000026ff: PUSH1 0x64
00002701: DUP3
00002702: ADD
00002703: MSTORE
00002704: PUSH1 0x84
00002706: ADD
00002707: PUSH2 0x0eb8
0000270a: JUMP
0000270b: JUMPDEST
0000270c: PUSH1 0x00
0000270e: DUP1
0000270f: SLOAD
00002710: PUSH1 0xff
00002712: NOT
00002713: AND
00002714: PUSH1 0x01
00002716: OR
00002717: SWAP1
00002718: SSTORE
00002719: DUP1
0000271a: ISZERO
0000271b: PUSH2 0x272e
0000271e: JUMPI
0000271f: PUSH1 0x00
00002721: DUP1
00002722: SLOAD
00002723: PUSH2 0xff00
00002726: NOT
00002727: AND
00002728: PUSH2 0x0100
0000272b: OR
0000272c: SWAP1
0000272d: SSTORE
0000272e: JUMPDEST
0000272f: PUSH2 0x2739
00002732: CALLER
00002733: PUSH1 0x03
00002735: PUSH2 0x35d4
00002738: JUMP
00002739: JUMPDEST
0000273a: PUSH1 0x02
0000273c: DUP1
0000273d: SLOAD
0000273e: PUSH1 0x01
00002740: DUP1
00002741: DUP3
00002742: ADD
00002743: SWAP1
00002744: SWAP3
00002745: SSTORE
00002746: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
00002767: ADD
00002768: DUP1
00002769: SLOAD
0000276a: PUSH1 0x01
0000276c: PUSH1 0x01
0000276e: PUSH1 0xa0
00002770: SHL
00002771: SUB
00002772: NOT
00002773: SWAP1
00002774: DUP2
00002775: AND
00002776: CALLER
00002777: OR
00002778: SWAP1
00002779: SWAP2
0000277a: SSTORE
0000277b: PUSH1 0x03
0000277d: DUP1
0000277e: SLOAD
0000277f: DUP1
00002780: DUP5
00002781: ADD
00002782: SWAP1
00002783: SWAP2
00002784: SSTORE
00002785: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b
000027a6: ADD
000027a7: DUP1
000027a8: SLOAD
000027a9: DUP3
000027aa: AND
000027ab: SWAP1
000027ac: SSTORE
000027ad: PUSH1 0x04
000027af: DUP1
000027b0: SLOAD
000027b1: DUP1
000027b2: DUP5
000027b3: ADD
000027b4: SWAP1
000027b5: SWAP2
000027b6: SSTORE
000027b7: PUSH32 0x8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b
000027d8: ADD
000027d9: DUP1
000027da: SLOAD
000027db: DUP3
000027dc: AND
000027dd: SWAP1
000027de: SSTORE
000027df: PUSH1 0x05
000027e1: DUP1
000027e2: SLOAD
000027e3: SWAP3
000027e4: DUP4
000027e5: ADD
000027e6: DUP2
000027e7: SSTORE
000027e8: PUSH1 0x00
000027ea: MSTORE
000027eb: PUSH32 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0
0000280c: SWAP1
0000280d: SWAP2
0000280e: ADD
0000280f: DUP1
00002810: SLOAD
00002811: SWAP1
00002812: SWAP2
00002813: AND
00002814: SWAP1
00002815: SSTORE
00002816: DUP1
00002817: ISZERO
00002818: PUSH2 0x1920
0000281b: JUMPI
0000281c: PUSH1 0x00
0000281e: DUP1
0000281f: SLOAD
00002820: PUSH2 0xff00
00002823: NOT
00002824: AND
00002825: SWAP1
00002826: SSTORE
00002827: PUSH1 0x40
00002829: MLOAD
0000282a: PUSH1 0x01
0000282c: DUP2
0000282d: MSTORE
0000282e: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
0000284f: SWAP1
00002850: PUSH1 0x20
00002852: ADD
00002853: PUSH1 0x40
00002855: MLOAD
00002856: DUP1
00002857: SWAP2
00002858: SUB
00002859: SWAP1
0000285a: LOG1
0000285b: POP
0000285c: JUMP
0000285d: JUMPDEST
0000285e: PUSH2 0x2865
00002861: PUSH2 0x2d55
00002864: JUMP
00002865: JUMPDEST
00002866: PUSH1 0x00
00002868: JUMPDEST
00002869: DUP2
0000286a: MLOAD
0000286b: DUP2
0000286c: LT
0000286d: ISZERO
0000286e: PUSH2 0x0fa1
00002871: JUMPI
00002872: PUSH1 0x03
00002874: PUSH1 0x0a
00002876: PUSH1 0x00
00002878: DUP5
00002879: DUP5
0000287a: DUP2
0000287b: MLOAD
0000287c: DUP2
0000287d: LT
0000287e: PUSH2 0x2889
00002881: JUMPI
00002882: PUSH2 0x2889
00002885: PUSH2 0x4bab
00002888: JUMP
00002889: JUMPDEST
0000288a: PUSH1 0x20
0000288c: MUL
0000288d: PUSH1 0x20
0000288f: ADD
00002890: ADD
00002891: MLOAD
00002892: DUP2
00002893: MSTORE
00002894: PUSH1 0x20
00002896: ADD
00002897: SWAP1
00002898: DUP2
00002899: MSTORE
0000289a: PUSH1 0x20
0000289c: ADD
0000289d: PUSH1 0x00
0000289f: KECCAK256
000028a0: PUSH1 0x04
000028a2: ADD
000028a3: PUSH1 0x00
000028a5: PUSH2 0x0100
000028a8: EXP
000028a9: DUP2
000028aa: SLOAD
000028ab: DUP2
000028ac: PUSH1 0xff
000028ae: MUL
000028af: NOT
000028b0: AND
000028b1: SWAP1
000028b2: DUP4
000028b3: PUSH1 0x03
000028b5: DUP2
000028b6: GT
000028b7: ISZERO
000028b8: PUSH2 0x28c3
000028bb: JUMPI
000028bc: PUSH2 0x28c3
000028bf: PUSH2 0x3ec0
000028c2: JUMP
000028c3: JUMPDEST
000028c4: MUL
000028c5: OR
000028c6: SWAP1
000028c7: SSTORE
000028c8: POP
000028c9: DUP1
000028ca: PUSH2 0x28d2
000028cd: DUP2
000028ce: PUSH2 0x4bd7
000028d1: JUMP
000028d2: JUMPDEST
000028d3: SWAP2
000028d4: POP
000028d5: POP
000028d6: PUSH2 0x2868
000028d9: JUMP
000028da: JUMPDEST
000028db: PUSH2 0x28e2
000028de: PUSH2 0x2d55
000028e1: JUMP
000028e2: JUMPDEST
000028e3: PUSH1 0x00
000028e5: JUMPDEST
000028e6: DUP4
000028e7: DUP2
000028e8: LT
000028e9: ISZERO
000028ea: PUSH2 0x1693
000028ed: JUMPI
000028ee: DUP3
000028ef: DUP3
000028f0: DUP3
000028f1: DUP2
000028f2: DUP2
000028f3: LT
000028f4: PUSH2 0x28ff
000028f7: JUMPI
000028f8: PUSH2 0x28ff
000028fb: PUSH2 0x4bab
000028fe: JUMP
000028ff: JUMPDEST
00002900: SWAP1
00002901: POP
00002902: PUSH1 0x20
00002904: MUL
00002905: ADD
00002906: PUSH1 0x20
00002908: DUP2
00002909: ADD
0000290a: SWAP1
0000290b: PUSH2 0x2914
0000290e: SWAP2
0000290f: SWAP1
00002910: PUSH2 0x402a
00002913: JUMP
00002914: JUMPDEST
00002915: PUSH1 0x0a
00002917: PUSH1 0x00
00002919: DUP8
0000291a: DUP8
0000291b: DUP6
0000291c: DUP2
0000291d: DUP2
0000291e: LT
0000291f: PUSH2 0x292a
00002922: JUMPI
00002923: PUSH2 0x292a
00002926: PUSH2 0x4bab
00002929: JUMP
0000292a: JUMPDEST
0000292b: SWAP1
0000292c: POP
0000292d: PUSH1 0x20
0000292f: MUL
00002930: ADD
00002931: CALLDATALOAD
00002932: DUP2
00002933: MSTORE
00002934: PUSH1 0x20
00002936: ADD
00002937: SWAP1
00002938: DUP2
00002939: MSTORE
0000293a: PUSH1 0x20
0000293c: ADD
0000293d: PUSH1 0x00
0000293f: KECCAK256
00002940: PUSH1 0x06
00002942: ADD
00002943: PUSH1 0x00
00002945: PUSH2 0x0100
00002948: EXP
00002949: DUP2
0000294a: SLOAD
0000294b: DUP2
0000294c: PUSH1 0x01
0000294e: PUSH1 0x01
00002950: PUSH1 0xa0
00002952: SHL
00002953: SUB
00002954: MUL
00002955: NOT
00002956: AND
00002957: SWAP1
00002958: DUP4
00002959: PUSH1 0x01
0000295b: PUSH1 0x01
0000295d: PUSH1 0xa0
0000295f: SHL
00002960: SUB
00002961: AND
00002962: MUL
00002963: OR
00002964: SWAP1
00002965: SSTORE
00002966: POP
00002967: DUP1
00002968: DUP1
00002969: PUSH2 0x2971
0000296c: SWAP1
0000296d: PUSH2 0x4bd7
00002970: JUMP
00002971: JUMPDEST
00002972: SWAP2
00002973: POP
00002974: POP
00002975: PUSH2 0x28e5
00002978: JUMP
00002979: JUMPDEST
0000297a: PUSH1 0x00
0000297c: PUSH2 0x2984
0000297f: CALLER
00002980: PUSH2 0x11ab
00002983: JUMP
00002984: JUMPDEST
00002985: PUSH2 0x29a0
00002988: JUMPI
00002989: PUSH1 0x40
0000298b: MLOAD
0000298c: PUSH3 0x461bcd
00002990: PUSH1 0xe5
00002992: SHL
00002993: DUP2
00002994: MSTORE
00002995: PUSH1 0x04
00002997: ADD
00002998: PUSH2 0x0eb8
0000299b: SWAP1
0000299c: PUSH2 0x4b87
0000299f: JUMP
000029a0: JUMPDEST
000029a1: PUSH2 0x29a9
000029a4: DUP3
000029a5: PUSH2 0x2ded
000029a8: JUMP
000029a9: JUMPDEST
000029aa: PUSH2 0x11e4
000029ad: PUSH1 0x05
000029af: DUP4
000029b0: PUSH1 0x02
000029b2: PUSH2 0x2e31
000029b5: JUMP
000029b6: JUMPDEST
000029b7: PUSH1 0x00
000029b9: PUSH2 0x29c1
000029bc: CALLER
000029bd: PUSH2 0x11ab
000029c0: JUMP
000029c1: JUMPDEST
000029c2: PUSH2 0x29dd
000029c5: JUMPI
000029c6: PUSH1 0x40
000029c8: MLOAD
000029c9: PUSH3 0x461bcd
000029cd: PUSH1 0xe5
000029cf: SHL
000029d0: DUP2
000029d1: MSTORE
000029d2: PUSH1 0x04
000029d4: ADD
000029d5: PUSH2 0x0eb8
000029d8: SWAP1
000029d9: PUSH2 0x4b87
000029dc: JUMP
000029dd: JUMPDEST
000029de: PUSH2 0x29e6
000029e1: DUP3
000029e2: PUSH2 0x2ded
000029e5: JUMP
000029e6: JUMPDEST
000029e7: PUSH2 0x29f1
000029ea: PUSH1 0x02
000029ec: CALLER
000029ed: PUSH2 0x1a72
000029f0: JUMP
000029f1: JUMPDEST
000029f2: PUSH2 0x29fe
000029f5: PUSH1 0x02
000029f7: DUP4
000029f8: PUSH1 0x03
000029fa: PUSH2 0x2e31
000029fd: JUMP
000029fe: JUMPDEST
000029ff: PUSH1 0x40
00002a01: MLOAD
00002a02: PUSH1 0x01
00002a04: PUSH1 0x01
00002a06: PUSH1 0xa0
00002a08: SHL
00002a09: SUB
00002a0a: DUP4
00002a0b: AND
00002a0c: SWAP1
00002a0d: CALLER
00002a0e: SWAP1
00002a0f: PUSH32 0x5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c
00002a30: SWAP1
00002a31: PUSH1 0x00
00002a33: SWAP1
00002a34: LOG3
00002a35: POP
00002a36: PUSH1 0x01
00002a38: SWAP2
00002a39: SWAP1
00002a3a: POP
00002a3b: JUMP
00002a3c: JUMPDEST
00002a3d: PUSH2 0x2a44
00002a40: PUSH2 0x2d55
00002a43: JUMP
00002a44: JUMPDEST
00002a45: PUSH1 0x00
00002a47: PUSH2 0x2a4e
00002a4a: PUSH2 0x3245
00002a4d: JUMP
00002a4e: JUMPDEST
00002a4f: SWAP1
00002a50: POP
00002a51: PUSH1 0x00
00002a53: DUP1
00002a54: JUMPDEST
00002a55: DUP5
00002a56: MLOAD
00002a57: DUP2
00002a58: LT
00002a59: ISZERO
00002a5a: PUSH2 0x1693
00002a5d: JUMPI
00002a5e: DUP4
00002a5f: DUP2
00002a60: DUP2
00002a61: MLOAD
00002a62: DUP2
00002a63: LT
00002a64: PUSH2 0x2a6f
00002a67: JUMPI
00002a68: PUSH2 0x2a6f
00002a6b: PUSH2 0x4bab
00002a6e: JUMP
00002a6f: JUMPDEST
00002a70: PUSH1 0x20
00002a72: MUL
00002a73: PUSH1 0x20
00002a75: ADD
00002a76: ADD
00002a77: MLOAD
00002a78: PUSH1 0x0a
00002a7a: PUSH1 0x00
00002a7c: DUP8
00002a7d: DUP5
00002a7e: DUP2
00002a7f: MLOAD
00002a80: DUP2
00002a81: LT
00002a82: PUSH2 0x2a8d
00002a85: JUMPI
00002a86: PUSH2 0x2a8d
00002a89: PUSH2 0x4bab
00002a8c: JUMP
00002a8d: JUMPDEST
00002a8e: PUSH1 0x20
00002a90: MUL
00002a91: PUSH1 0x20
00002a93: ADD
00002a94: ADD
00002a95: MLOAD
00002a96: DUP2
00002a97: MSTORE
00002a98: PUSH1 0x20
00002a9a: ADD
00002a9b: SWAP1
00002a9c: DUP2
00002a9d: MSTORE
00002a9e: PUSH1 0x20
00002aa0: ADD
00002aa1: PUSH1 0x00
00002aa3: KECCAK256
00002aa4: PUSH1 0x05
00002aa6: ADD
00002aa7: PUSH1 0x00
00002aa9: PUSH2 0x0100
00002aac: EXP
00002aad: DUP2
00002aae: SLOAD
00002aaf: DUP2
00002ab0: PUSH1 0x01
00002ab2: PUSH1 0x01
00002ab4: PUSH1 0xa0
00002ab6: SHL
00002ab7: SUB
00002ab8: MUL
00002ab9: NOT
00002aba: AND
00002abb: SWAP1
00002abc: DUP4
00002abd: PUSH1 0x01
00002abf: PUSH1 0x01
00002ac1: PUSH1 0xa0
00002ac3: SHL
00002ac4: SUB
00002ac5: AND
00002ac6: MUL
00002ac7: OR
00002ac8: SWAP1
00002ac9: SSTORE
00002aca: POP
00002acb: PUSH2 0x2af6
00002ace: DUP6
00002acf: DUP3
00002ad0: DUP2
00002ad1: MLOAD
00002ad2: DUP2
00002ad3: LT
00002ad4: PUSH2 0x2adf
00002ad7: JUMPI
00002ad8: PUSH2 0x2adf
00002adb: PUSH2 0x4bab
00002ade: JUMP
00002adf: JUMPDEST
00002ae0: PUSH1 0x20
00002ae2: MUL
00002ae3: PUSH1 0x20
00002ae5: ADD
00002ae6: ADD
00002ae7: MLOAD
00002ae8: DUP5
00002ae9: PUSH2 0x32f0
00002aec: SWAP1
00002aed: SWAP2
00002aee: SWAP1
00002aef: PUSH4 0xffffffff
00002af4: AND
00002af5: JUMP
00002af6: JUMPDEST
00002af7: ISZERO
00002af8: PUSH2 0x2b53
00002afb: JUMPI
00002afc: PUSH2 0x2b53
00002aff: PUSH1 0x0a
00002b01: PUSH1 0x00
00002b03: DUP8
00002b04: DUP5
00002b05: DUP2
00002b06: MLOAD
00002b07: DUP2
00002b08: LT
00002b09: PUSH2 0x2b14
00002b0c: JUMPI
00002b0d: PUSH2 0x2b14
00002b10: PUSH2 0x4bab
00002b13: JUMP
00002b14: JUMPDEST
00002b15: PUSH1 0x20
00002b17: MUL
00002b18: PUSH1 0x20
00002b1a: ADD
00002b1b: ADD
00002b1c: MLOAD
00002b1d: DUP2
00002b1e: MSTORE
00002b1f: PUSH1 0x20
00002b21: ADD
00002b22: SWAP1
00002b23: DUP2
00002b24: MSTORE
00002b25: PUSH1 0x20
00002b27: ADD
00002b28: PUSH1 0x00
00002b2a: KECCAK256
00002b2b: PUSH1 0x06
00002b2d: ADD
00002b2e: PUSH1 0x00
00002b30: SWAP1
00002b31: SLOAD
00002b32: SWAP1
00002b33: PUSH2 0x0100
00002b36: EXP
00002b37: SWAP1
00002b38: DIV
00002b39: PUSH1 0x01
00002b3b: PUSH1 0x01
00002b3d: PUSH1 0xa0
00002b3f: SHL
00002b40: SUB
00002b41: AND
00002b42: DUP6
00002b43: DUP4
00002b44: DUP2
00002b45: MLOAD
00002b46: DUP2
00002b47: LT
00002b48: PUSH2 0x17eb
00002b4b: JUMPI
00002b4c: PUSH2 0x17eb
00002b4f: PUSH2 0x4bab
00002b52: JUMP
00002b53: JUMPDEST
00002b54: DUP1
00002b55: PUSH2 0x2b5d
00002b58: DUP2
00002b59: PUSH2 0x4bd7
00002b5c: JUMP
00002b5d: JUMPDEST
00002b5e: SWAP2
00002b5f: POP
00002b60: POP
00002b61: PUSH2 0x2a54
00002b64: JUMP
00002b65: JUMPDEST
00002b66: PUSH2 0x2b6d
00002b69: PUSH2 0x2d55
00002b6c: JUMP
00002b6d: JUMPDEST
00002b6e: PUSH1 0x00
00002b70: DUP3
00002b71: DUP2
00002b72: MSTORE
00002b73: PUSH1 0x0a
00002b75: PUSH1 0x20
00002b77: MSTORE
00002b78: PUSH1 0x40
00002b7a: DUP2
00002b7b: KECCAK256
00002b7c: PUSH1 0x07
00002b7e: ADD
00002b7f: DUP1
00002b80: SLOAD
00002b81: DUP4
00002b82: SWAP3
00002b83: SWAP1
00002b84: PUSH2 0x233c
00002b87: SWAP1
00002b88: DUP5
00002b89: SWAP1
00002b8a: PUSH2 0x4ec1
00002b8d: JUMP
00002b8e: JUMPDEST
00002b8f: PUSH1 0x01
00002b91: PUSH1 0x01
00002b93: PUSH1 0xa0
00002b95: SHL
00002b96: SUB
00002b97: AND
00002b98: EXTCODESIZE
00002b99: ISZERO
00002b9a: ISZERO
00002b9b: SWAP1
00002b9c: JUMP
00002b9d: JUMPDEST
00002b9e: PUSH1 0x00
00002ba0: DUP3
00002ba1: DUP2
00002ba2: MSTORE
00002ba3: PUSH1 0x0d
00002ba5: PUSH1 0x20
00002ba7: SWAP1
00002ba8: DUP2
00002ba9: MSTORE
00002baa: PUSH1 0x40
00002bac: DUP1
00002bad: DUP4
00002bae: KECCAK256
00002baf: DUP5
00002bb0: DUP4
00002bb1: ADD
00002bb2: MLOAD
00002bb3: PUSH1 0x01
00002bb5: PUSH1 0x01
00002bb7: PUSH1 0x80
00002bb9: SHL
00002bba: SUB
00002bbb: NOT
00002bbc: AND
00002bbd: DUP5
00002bbe: MSTORE
00002bbf: SWAP1
00002bc0: SWAP2
00002bc1: MSTORE
00002bc2: SWAP1
00002bc3: KECCAK256
00002bc4: SLOAD
00002bc5: PUSH1 0xff
00002bc7: AND
00002bc8: PUSH2 0x0fa1
00002bcb: JUMPI
00002bcc: PUSH1 0x40
00002bce: MLOAD
00002bcf: PUSH3 0x461bcd
00002bd3: PUSH1 0xe5
00002bd5: SHL
00002bd6: DUP2
00002bd7: MSTORE
00002bd8: PUSH1 0x20
00002bda: PUSH1 0x04
00002bdc: DUP3
00002bdd: ADD
00002bde: MSTORE
00002bdf: PUSH1 0x11
00002be1: PUSH1 0x24
00002be3: DUP3
00002be4: ADD
00002be5: MSTORE
00002be6: PUSH17 0x3b30bab63a1034b739ba393ab1ba34b7b7
00002bf8: PUSH1 0x79
00002bfa: SHL
00002bfb: PUSH1 0x44
00002bfd: DUP3
00002bfe: ADD
00002bff: MSTORE
00002c00: PUSH1 0x64
00002c02: ADD
00002c03: PUSH2 0x0eb8
00002c06: JUMP
00002c07: JUMPDEST
00002c08: PUSH1 0x00
00002c0a: DUP2
00002c0b: DUP2
00002c0c: MSTORE
00002c0d: PUSH1 0x0a
00002c0f: PUSH1 0x20
00002c11: MSTORE
00002c12: PUSH1 0x40
00002c14: SWAP1
00002c15: KECCAK256
00002c16: PUSH1 0x06
00002c18: ADD
00002c19: SLOAD
00002c1a: PUSH1 0x01
00002c1c: PUSH1 0x01
00002c1e: PUSH1 0xa0
00002c20: SHL
00002c21: SUB
00002c22: AND
00002c23: PUSH2 0x1920
00002c26: JUMPI
00002c27: PUSH1 0x40
00002c29: MLOAD
00002c2a: PUSH3 0x461bcd
00002c2e: PUSH1 0xe5
00002c30: SHL
00002c31: DUP2
00002c32: MSTORE
00002c33: PUSH1 0x20
00002c35: PUSH1 0x04
00002c37: DUP3
00002c38: ADD
00002c39: MSTORE
00002c3a: PUSH1 0x0d
00002c3c: PUSH1 0x24
00002c3e: DUP3
00002c3f: ADD
00002c40: MSTORE
00002c41: PUSH13 0x6369726375697420627265616b
00002c4f: PUSH1 0x98
00002c51: SHL
00002c52: PUSH1 0x44
00002c54: DUP3
00002c55: ADD
00002c56: MSTORE
00002c57: PUSH1 0x64
00002c59: ADD
00002c5a: PUSH2 0x0eb8
00002c5d: JUMP
00002c5e: JUMPDEST
00002c5f: CALLVALUE
00002c60: ISZERO
00002c61: PUSH2 0x2ce9
00002c64: JUMPI
00002c65: PUSH1 0x09
00002c67: SLOAD
00002c68: DUP4
00002c69: EQ
00002c6a: PUSH2 0x2ca7
00002c6d: JUMPI
00002c6e: PUSH1 0x40
00002c70: MLOAD
00002c71: PUSH3 0x461bcd
00002c75: PUSH1 0xe5
00002c77: SHL
00002c78: DUP2
00002c79: MSTORE
00002c7a: PUSH1 0x20
00002c7c: PUSH1 0x04
00002c7e: DUP3
00002c7f: ADD
00002c80: MSTORE
00002c81: PUSH1 0x0f
00002c83: PUSH1 0x24
00002c85: DUP3
00002c86: ADD
00002c87: MSTORE
00002c88: PUSH15 0x18dbda5b881a5b99195e0819985a5b
00002c98: PUSH1 0x8a
00002c9a: SHL
00002c9b: PUSH1 0x44
00002c9d: DUP3
00002c9e: ADD
00002c9f: MSTORE
00002ca0: PUSH1 0x64
00002ca2: ADD
00002ca3: PUSH2 0x0eb8
00002ca6: JUMP
00002ca7: JUMPDEST
00002ca8: CALLVALUE
00002ca9: DUP2
00002caa: EQ
00002cab: PUSH2 0x0ec1
00002cae: JUMPI
00002caf: PUSH1 0x40
00002cb1: MLOAD
00002cb2: PUSH3 0x461bcd
00002cb6: PUSH1 0xe5
00002cb8: SHL
00002cb9: DUP2
00002cba: MSTORE
00002cbb: PUSH1 0x20
00002cbd: PUSH1 0x04
00002cbf: DUP3
00002cc0: ADD
00002cc1: MSTORE
00002cc2: PUSH1 0x10
00002cc4: PUSH1 0x24
00002cc6: DUP3
00002cc7: ADD
00002cc8: MSTORE
00002cc9: PUSH16 0x18dbda5b88185b5bdd5b9d0819985a5b
00002cda: PUSH1 0x82
00002cdc: SHL
00002cdd: PUSH1 0x44
00002cdf: DUP3
00002ce0: ADD
00002ce1: MSTORE
00002ce2: PUSH1 0x64
00002ce4: ADD
00002ce5: PUSH2 0x0eb8
00002ce8: JUMP
00002ce9: JUMPDEST
00002cea: PUSH1 0x00
00002cec: DUP4
00002ced: DUP2
00002cee: MSTORE
00002cef: PUSH1 0x0a
00002cf1: PUSH1 0x20
00002cf3: MSTORE
00002cf4: PUSH1 0x40
00002cf6: SWAP1
00002cf7: KECCAK256
00002cf8: PUSH1 0x06
00002cfa: ADD
00002cfb: SLOAD
00002cfc: PUSH1 0x01
00002cfe: PUSH1 0x01
00002d00: PUSH1 0xa0
00002d02: SHL
00002d03: SUB
00002d04: AND
00002d05: PUSH2 0x18af
00002d08: DUP2
00002d09: DUP5
00002d0a: ADDRESS
00002d0b: DUP6
00002d0c: PUSH2 0x3689
00002d0f: JUMP
00002d10: JUMPDEST
00002d11: PUSH1 0x01
00002d13: PUSH1 0x01
00002d15: PUSH1 0x80
00002d17: SHL
00002d18: SUB
00002d19: NOT
00002d1a: SWAP1
00002d1b: DUP2
00002d1c: AND
00002d1d: SWAP2
00002d1e: AND
00002d1f: EQ
00002d20: SWAP1
00002d21: JUMP
00002d22: JUMPDEST
00002d23: PUSH1 0x00
00002d25: PUSH2 0x2d2c
00002d28: PUSH2 0x36f4
00002d2b: JUMP
00002d2c: JUMPDEST
00002d2d: SWAP1
00002d2e: POP
00002d2f: SWAP1
00002d30: JUMP
00002d31: JUMPDEST
00002d32: CALLDATASIZE
00002d33: PUSH1 0x00
00002d35: DUP1
00002d36: CALLDATACOPY
00002d37: PUSH1 0x00
00002d39: DUP1
00002d3a: CALLDATASIZE
00002d3b: PUSH1 0x00
00002d3d: DUP5
00002d3e: GAS
00002d3f: DELEGATECALL
00002d40: RETURNDATASIZE
00002d41: PUSH1 0x00
00002d43: DUP1
00002d44: RETURNDATACOPY
00002d45: DUP1
00002d46: DUP1
00002d47: ISZERO
00002d48: PUSH2 0x2d50
00002d4b: JUMPI
00002d4c: RETURNDATASIZE
00002d4d: PUSH1 0x00
00002d4f: RETURN
00002d50: JUMPDEST
00002d51: RETURNDATASIZE
00002d52: PUSH1 0x00
00002d54: REVERT
00002d55: JUMPDEST
00002d56: CALLER
00002d57: PUSH1 0x00
00002d59: SWAP1
00002d5a: DUP2
00002d5b: MSTORE
00002d5c: PUSH1 0x01
00002d5e: PUSH1 0x20
00002d60: MSTORE
00002d61: PUSH1 0x40
00002d63: SWAP1
00002d64: KECCAK256
00002d65: SLOAD
00002d66: PUSH2 0x2d70
00002d69: DUP2
00002d6a: PUSH1 0x03
00002d6c: PUSH2 0x3715
00002d6f: JUMP
00002d70: JUMPDEST
00002d71: DUP1
00002d72: PUSH2 0x2d81
00002d75: JUMPI
00002d76: POP
00002d77: PUSH2 0x2d81
00002d7a: DUP2
00002d7b: PUSH1 0x01
00002d7d: PUSH2 0x3715
00002d80: JUMP
00002d81: JUMPDEST
00002d82: PUSH2 0x1920
00002d85: JUMPI
00002d86: PUSH1 0x40
00002d88: MLOAD
00002d89: PUSH3 0x461bcd
00002d8d: PUSH1 0xe5
00002d8f: SHL
00002d90: DUP2
00002d91: MSTORE
00002d92: PUSH1 0x20
00002d94: PUSH1 0x04
00002d96: DUP3
00002d97: ADD
00002d98: MSTORE
00002d99: PUSH1 0x13
00002d9b: PUSH1 0x24
00002d9d: DUP3
00002d9e: ADD
00002d9f: MSTORE
00002da0: PUSH19 0x27b7363c9027bbb732b91037b91020b236b4b7
00002db4: PUSH1 0x69
00002db6: SHL
00002db7: PUSH1 0x44
00002db9: DUP3
00002dba: ADD
00002dbb: MSTORE
00002dbc: PUSH1 0x64
00002dbe: ADD
00002dbf: PUSH2 0x0eb8
00002dc2: JUMP
00002dc3: JUMPDEST
00002dc4: PUSH1 0x01
00002dc6: PUSH1 0x01
00002dc8: PUSH1 0xa0
00002dca: SHL
00002dcb: SUB
00002dcc: DUP3
00002dcd: AND
00002dce: PUSH1 0x00
00002dd0: SWAP1
00002dd1: DUP2
00002dd2: MSTORE
00002dd3: PUSH1 0x01
00002dd5: PUSH1 0x20
00002dd7: MSTORE
00002dd8: PUSH1 0x40
00002dda: DUP2
00002ddb: KECCAK256
00002ddc: SLOAD
00002ddd: PUSH2 0x2de6
00002de0: SWAP1
00002de1: DUP4
00002de2: PUSH2 0x3715
00002de5: JUMP
00002de6: JUMPDEST
00002de7: SWAP4
00002de8: SWAP3
00002de9: POP
00002dea: POP
00002deb: POP
00002dec: JUMP
00002ded: JUMPDEST
00002dee: CALLER
00002def: PUSH1 0x01
00002df1: PUSH1 0x01
00002df3: PUSH1 0xa0
00002df5: SHL
00002df6: SUB
00002df7: DUP3
00002df8: AND
00002df9: SUB
00002dfa: PUSH2 0x1920
00002dfd: JUMPI
00002dfe: PUSH1 0x40
00002e00: MLOAD
00002e01: PUSH3 0x461bcd
00002e05: PUSH1 0xe5
00002e07: SHL
00002e08: DUP2
00002e09: MSTORE
00002e0a: PUSH1 0x20
00002e0c: PUSH1 0x04
00002e0e: DUP3
00002e0f: ADD
00002e10: MSTORE
00002e11: PUSH1 0x09
00002e13: PUSH1 0x24
00002e15: DUP3
00002e16: ADD
00002e17: MSTORE
00002e18: PUSH9 0x20baba341029b2b633
00002e22: PUSH1 0xb9
00002e24: SHL
00002e25: PUSH1 0x44
00002e27: DUP3
00002e28: ADD
00002e29: MSTORE
00002e2a: PUSH1 0x64
00002e2c: ADD
00002e2d: PUSH2 0x0eb8
00002e30: JUMP
00002e31: JUMPDEST
00002e32: PUSH2 0x2e3a
00002e35: DUP3
00002e36: PUSH2 0x375d
00002e39: JUMP
00002e3a: JUMPDEST
00002e3b: PUSH2 0x2e44
00002e3e: DUP3
00002e3f: DUP3
00002e40: PUSH2 0x35d4
00002e43: JUMP
00002e44: JUMPDEST
00002e45: PUSH2 0x2e4e
00002e48: DUP4
00002e49: DUP4
00002e4a: PUSH2 0x37a1
00002e4d: JUMP
00002e4e: JUMPDEST
00002e4f: DUP1
00002e50: PUSH1 0x04
00002e52: DUP2
00002e53: GT
00002e54: ISZERO
00002e55: PUSH2 0x2e60
00002e58: JUMPI
00002e59: PUSH2 0x2e60
00002e5c: PUSH2 0x3ec0
00002e5f: JUMP
00002e60: JUMPDEST
00002e61: PUSH1 0x40
00002e63: MLOAD
00002e64: PUSH1 0x01
00002e66: PUSH1 0x01
00002e68: PUSH1 0xa0
00002e6a: SHL
00002e6b: SUB
00002e6c: DUP5
00002e6d: AND
00002e6e: SWAP1
00002e6f: PUSH32 0x16648684a169742a8946057cc0e413441c39b8c40d8a0b329547a5b58d0fad33
00002e90: SWAP1
00002e91: PUSH1 0x00
00002e93: SWAP1
00002e94: LOG3
00002e95: POP
00002e96: POP
00002e97: POP
00002e98: JUMP
00002e99: JUMPDEST
00002e9a: PUSH2 0x2ea2
00002e9d: DUP3
00002e9e: PUSH2 0x375d
00002ea1: JUMP
00002ea2: JUMPDEST
00002ea3: PUSH2 0x2eac
00002ea6: DUP3
00002ea7: DUP3
00002ea8: PUSH2 0x3850
00002eab: JUMP
00002eac: JUMPDEST
00002ead: PUSH2 0x2eb6
00002eb0: DUP4
00002eb1: DUP4
00002eb2: PUSH2 0x3907
00002eb5: JUMP
00002eb6: JUMPDEST
00002eb7: DUP1
00002eb8: PUSH1 0x04
00002eba: DUP2
00002ebb: GT
00002ebc: ISZERO
00002ebd: PUSH2 0x2ec8
00002ec0: JUMPI
00002ec1: PUSH2 0x2ec8
00002ec4: PUSH2 0x3ec0
00002ec7: JUMP
00002ec8: JUMPDEST
00002ec9: PUSH1 0x40
00002ecb: MLOAD
00002ecc: PUSH1 0x01
00002ece: PUSH1 0x01
00002ed0: PUSH1 0xa0
00002ed2: SHL
00002ed3: SUB
00002ed4: DUP5
00002ed5: AND
00002ed6: SWAP1
00002ed7: PUSH32 0x4c122a44c01f7baedf7841724cfb4cecb281d5d9f46ddfe8bcace2d9d121fb5a
00002ef8: SWAP1
00002ef9: PUSH1 0x00
00002efb: SWAP1
00002efc: LOG3
00002efd: POP
00002efe: POP
00002eff: POP
00002f00: JUMP
00002f01: JUMPDEST
00002f02: PUSH1 0x00
00002f04: DUP3
00002f05: DUP2
00002f06: MSTORE
00002f07: PUSH1 0x0a
00002f09: PUSH1 0x20
00002f0b: SWAP1
00002f0c: DUP2
00002f0d: MSTORE
00002f0e: PUSH1 0x40
00002f10: DUP1
00002f11: DUP4
00002f12: KECCAK256
00002f13: DUP2
00002f14: MLOAD
00002f15: PUSH1 0x60
00002f17: DUP2
00002f18: ADD
00002f19: DUP4
00002f1a: MSTORE
00002f1b: DUP2
00002f1c: SLOAD
00002f1d: PUSH1 0x01
00002f1f: PUSH1 0x01
00002f21: PUSH1 0x80
00002f23: SHL
00002f24: SUB
00002f25: DUP1
00002f26: DUP3
00002f27: AND
00002f28: DUP4
00002f29: MSTORE
00002f2a: PUSH1 0x01
00002f2c: PUSH1 0x80
00002f2e: SHL
00002f2f: SWAP1
00002f30: SWAP2
00002f31: DIV
00002f32: AND
00002f33: SWAP4
00002f34: DUP2
00002f35: ADD
00002f36: SWAP4
00002f37: SWAP1
00002f38: SWAP4
00002f39: MSTORE
00002f3a: PUSH1 0x01
00002f3c: ADD
00002f3d: SLOAD
00002f3e: SWAP1
00002f3f: DUP3
00002f40: ADD
00002f41: DUP2
00002f42: SWAP1
00002f43: MSTORE
00002f44: DUP3
00002f45: SWAP1
00002f46: PUSH8 0x0de0b6b3a7640000
00002f4f: SWAP1
00002f50: PUSH2 0x2f59
00002f53: SWAP1
00002f54: DUP7
00002f55: PUSH2 0x4ef0
00002f58: JUMP
00002f59: JUMPDEST
00002f5a: PUSH2 0x2f63
00002f5d: SWAP2
00002f5e: SWAP1
00002f5f: PUSH2 0x4f0f
00002f62: JUMP
00002f63: JUMPDEST
00002f64: DUP3
00002f65: MLOAD
00002f66: SWAP1
00002f67: SWAP2
00002f68: POP
00002f69: PUSH1 0x01
00002f6b: PUSH1 0x01
00002f6d: PUSH1 0x80
00002f6f: SHL
00002f70: SUB
00002f71: AND
00002f72: DUP2
00002f73: LT
00002f74: ISZERO
00002f75: PUSH2 0x2f85
00002f78: JUMPI
00002f79: POP
00002f7a: DUP1
00002f7b: MLOAD
00002f7c: PUSH1 0x01
00002f7e: PUSH1 0x01
00002f80: PUSH1 0x80
00002f82: SHL
00002f83: SUB
00002f84: AND
00002f85: JUMPDEST
00002f86: DUP2
00002f87: PUSH1 0x20
00002f89: ADD
00002f8a: MLOAD
00002f8b: PUSH1 0x01
00002f8d: PUSH1 0x01
00002f8f: PUSH1 0x80
00002f91: SHL
00002f92: SUB
00002f93: AND
00002f94: DUP2
00002f95: GT
00002f96: ISZERO
00002f97: PUSH2 0x2faa
00002f9a: JUMPI
00002f9b: POP
00002f9c: PUSH1 0x20
00002f9e: DUP2
00002f9f: ADD
00002fa0: MLOAD
00002fa1: PUSH1 0x01
00002fa3: PUSH1 0x01
00002fa5: PUSH1 0x80
00002fa7: SHL
00002fa8: SUB
00002fa9: AND
00002faa: JUMPDEST
00002fab: DUP1
00002fac: DUP5
00002fad: GT
00002fae: PUSH2 0x2fe3
00002fb1: JUMPI
00002fb2: PUSH1 0x40
00002fb4: MLOAD
00002fb5: PUSH3 0x461bcd
00002fb9: PUSH1 0xe5
00002fbb: SHL
00002fbc: DUP2
00002fbd: MSTORE
00002fbe: PUSH1 0x20
00002fc0: PUSH1 0x04
00002fc2: DUP3
00002fc3: ADD
00002fc4: MSTORE
00002fc5: PUSH1 0x07
00002fc7: PUSH1 0x24
00002fc9: DUP3
00002fca: ADD
00002fcb: MSTORE
00002fcc: PUSH7 0x73756220666565
00002fd4: PUSH1 0xc8
00002fd6: SHL
00002fd7: PUSH1 0x44
00002fd9: DUP3
00002fda: ADD
00002fdb: MSTORE
00002fdc: PUSH1 0x64
00002fde: ADD
00002fdf: PUSH2 0x0eb8
00002fe2: JUMP
00002fe3: JUMPDEST
00002fe4: PUSH1 0x00
00002fe6: DUP6
00002fe7: DUP2
00002fe8: MSTORE
00002fe9: PUSH1 0x0a
00002feb: PUSH1 0x20
00002fed: MSTORE
00002fee: PUSH1 0x40
00002ff0: DUP2
00002ff1: KECCAK256
00002ff2: PUSH1 0x07
00002ff4: ADD
00002ff5: DUP1
00002ff6: SLOAD
00002ff7: DUP4
00002ff8: SWAP3
00002ff9: SWAP1
00002ffa: PUSH2 0x3004
00002ffd: SWAP1
00002ffe: DUP5
00002fff: SWAP1
00003000: PUSH2 0x4ed8
00003003: JUMP
00003004: JUMPDEST
00003005: SWAP1
00003006: SWAP2
00003007: SSTORE
00003008: POP
00003009: PUSH2 0x3014
0000300c: SWAP1
0000300d: POP
0000300e: DUP2
0000300f: DUP6
00003010: PUSH2 0x4ec1
00003013: JUMP
00003014: JUMPDEST
00003015: SWAP6
00003016: SWAP5
00003017: POP
00003018: POP
00003019: POP
0000301a: POP
0000301b: POP
0000301c: JUMP
0000301d: JUMPDEST
0000301e: PUSH2 0x3034
00003021: DUP2
00003022: PUSH1 0x00
00003024: ADD
00003025: MLOAD
00003026: DUP3
00003027: PUSH1 0x60
00003029: ADD
0000302a: MLOAD
0000302b: DUP4
0000302c: PUSH1 0x80
0000302e: ADD
0000302f: MLOAD
00003030: PUSH2 0x34db
00003033: JUMP
00003034: JUMPDEST
00003035: PUSH1 0x20
00003037: DUP3
00003038: ADD
00003039: MLOAD
0000303a: PUSH2 0x3053
0000303d: SWAP1
0000303e: PUSH1 0x01
00003040: PUSH1 0x01
00003042: PUSH1 0x80
00003044: SHL
00003045: SUB
00003046: NOT
00003047: AND
00003048: PUSH3 0x020201
0000304c: PUSH1 0xe8
0000304e: SHL
0000304f: PUSH2 0x2d10
00003052: JUMP
00003053: JUMPDEST
00003054: ISZERO
00003055: PUSH2 0x305c
00003058: JUMPI
00003059: POP
0000305a: POP
0000305b: JUMP
0000305c: JUMPDEST
0000305d: PUSH1 0x20
0000305f: DUP3
00003060: ADD
00003061: MLOAD
00003062: PUSH2 0x307c
00003065: SWAP1
00003066: PUSH1 0x01
00003068: PUSH1 0x01
0000306a: PUSH1 0x80
0000306c: SHL
0000306d: SUB
0000306e: NOT
0000306f: AND
00003070: PUSH4 0x03020301
00003075: PUSH1 0xe0
00003077: SHL
00003078: PUSH2 0x2d10
0000307b: JUMP
0000307c: JUMPDEST
0000307d: ISZERO
0000307e: PUSH2 0x3085
00003081: JUMPI
00003082: POP
00003083: POP
00003084: JUMP
00003085: JUMPDEST
00003086: PUSH1 0x20
00003088: DUP3
00003089: ADD
0000308a: MLOAD
0000308b: PUSH2 0x30a5
0000308e: SWAP1
0000308f: PUSH1 0x01
00003091: PUSH1 0x01
00003093: PUSH1 0x80
00003095: SHL
00003096: SUB
00003097: NOT
00003098: AND
00003099: PUSH4 0x03020401
0000309e: PUSH1 0xe0
000030a0: SHL
000030a1: PUSH2 0x2d10
000030a4: JUMP
000030a5: JUMPDEST
000030a6: ISZERO
000030a7: PUSH2 0x30ae
000030aa: JUMPI
000030ab: POP
000030ac: POP
000030ad: JUMP
000030ae: JUMPDEST
000030af: PUSH1 0x20
000030b1: DUP3
000030b2: ADD
000030b3: MLOAD
000030b4: PUSH2 0x30cf
000030b7: SWAP1
000030b8: PUSH1 0x01
000030ba: PUSH1 0x01
000030bc: PUSH1 0x80
000030be: SHL
000030bf: SUB
000030c0: NOT
000030c1: AND
000030c2: PUSH5 0x0402070301
000030c8: PUSH1 0xd8
000030ca: SHL
000030cb: PUSH2 0x2d10
000030ce: JUMP
000030cf: JUMPDEST
000030d0: ISZERO
000030d1: PUSH2 0x30d8
000030d4: JUMPI
000030d5: POP
000030d6: POP
000030d7: JUMP
000030d8: JUMPDEST
000030d9: PUSH1 0x20
000030db: DUP3
000030dc: ADD
000030dd: MLOAD
000030de: PUSH2 0x30f9
000030e1: SWAP1
000030e2: PUSH1 0x01
000030e4: PUSH1 0x01
000030e6: PUSH1 0x80
000030e8: SHL
000030e9: SUB
000030ea: NOT
000030eb: AND
000030ec: PUSH5 0x0402070401
000030f2: PUSH1 0xd8
000030f4: SHL
000030f5: PUSH2 0x2d10
000030f8: JUMP
000030f9: JUMPDEST
000030fa: ISZERO
000030fb: PUSH2 0x3102
000030fe: JUMPI
000030ff: POP
00003100: POP
00003101: JUMP
00003102: JUMPDEST
00003103: PUSH1 0x20
00003105: DUP3
00003106: ADD
00003107: MLOAD
00003108: PUSH2 0x3123
0000310b: SWAP1
0000310c: PUSH1 0x01
0000310e: PUSH1 0x01
00003110: PUSH1 0x80
00003112: SHL
00003113: SUB
00003114: NOT
00003115: AND
00003116: PUSH5 0x0402060301
0000311c: PUSH1 0xd8
0000311e: SHL
0000311f: PUSH2 0x2d10
00003122: JUMP
00003123: JUMPDEST
00003124: ISZERO
00003125: PUSH2 0x312c
00003128: JUMPI
00003129: POP
0000312a: POP
0000312b: JUMP
0000312c: JUMPDEST
0000312d: PUSH1 0x20
0000312f: DUP3
00003130: ADD
00003131: MLOAD
00003132: PUSH2 0x314d
00003135: SWAP1
00003136: PUSH1 0x01
00003138: PUSH1 0x01
0000313a: PUSH1 0x80
0000313c: SHL
0000313d: SUB
0000313e: NOT
0000313f: AND
00003140: PUSH5 0x0402060401
00003146: PUSH1 0xd8
00003148: SHL
00003149: PUSH2 0x2d10
0000314c: JUMP
0000314d: JUMPDEST
0000314e: ISZERO
0000314f: PUSH2 0x3156
00003152: JUMPI
00003153: POP
00003154: POP
00003155: JUMP
00003156: JUMPDEST
00003157: PUSH1 0x40
00003159: MLOAD
0000315a: PUSH3 0x461bcd
0000315e: PUSH1 0xe5
00003160: SHL
00003161: DUP2
00003162: MSTORE
00003163: PUSH1 0x20
00003165: PUSH1 0x04
00003167: DUP3
00003168: ADD
00003169: MSTORE
0000316a: PUSH1 0x11
0000316c: PUSH1 0x24
0000316e: DUP3
0000316f: ADD
00003170: MSTORE
00003171: PUSH17 0x5661756c745f657865635f6e6174697665
00003183: PUSH1 0x78
00003185: SHL
00003186: PUSH1 0x44
00003188: DUP3
00003189: ADD
0000318a: MSTORE
0000318b: PUSH1 0x64
0000318d: ADD
0000318e: PUSH2 0x0eb8
00003191: JUMP
00003192: JUMPDEST
00003193: PUSH1 0x40
00003195: MLOAD
00003196: PUSH4 0x095ea7b3
0000319b: PUSH1 0xe0
0000319d: SHL
0000319e: DUP2
0000319f: MSTORE
000031a0: PUSH1 0x01
000031a2: PUSH1 0x01
000031a4: PUSH1 0xa0
000031a6: SHL
000031a7: SUB
000031a8: DUP4
000031a9: AND
000031aa: SWAP1
000031ab: PUSH4 0x095ea7b3
000031b0: SWAP1
000031b1: PUSH2 0x31c2
000031b4: SWAP1
000031b5: DUP5
000031b6: SWAP1
000031b7: PUSH1 0x00
000031b9: NOT
000031ba: SWAP1
000031bb: PUSH1 0x04
000031bd: ADD
000031be: PUSH2 0x4f31
000031c1: JUMP
000031c2: JUMPDEST
000031c3: PUSH1 0x20
000031c5: PUSH1 0x40
000031c7: MLOAD
000031c8: DUP1
000031c9: DUP4
000031ca: SUB
000031cb: DUP2
000031cc: PUSH1 0x00
000031ce: DUP8
000031cf: GAS
000031d0: CALL
000031d1: ISZERO
000031d2: DUP1
000031d3: ISZERO
000031d4: PUSH2 0x31e1
000031d7: JUMPI
000031d8: RETURNDATASIZE
000031d9: PUSH1 0x00
000031db: DUP1
000031dc: RETURNDATACOPY
000031dd: RETURNDATASIZE
000031de: PUSH1 0x00
000031e0: REVERT
000031e1: JUMPDEST
000031e2: POP
000031e3: POP
000031e4: POP
000031e5: POP
000031e6: PUSH1 0x40
000031e8: MLOAD
000031e9: RETURNDATASIZE
000031ea: PUSH1 0x1f
000031ec: NOT
000031ed: PUSH1 0x1f
000031ef: DUP3
000031f0: ADD
000031f1: AND
000031f2: DUP3
000031f3: ADD
000031f4: DUP1
000031f5: PUSH1 0x40
000031f7: MSTORE
000031f8: POP
000031f9: DUP2
000031fa: ADD
000031fb: SWAP1
000031fc: PUSH2 0x0ec1
000031ff: SWAP2
00003200: SWAP1
00003201: PUSH2 0x3ff6
00003204: JUMP
00003205: JUMPDEST
00003206: PUSH2 0x320e
00003209: DUP2
0000320a: PUSH2 0x3951
0000320d: JUMP
0000320e: JUMPDEST
0000320f: PUSH1 0x40
00003211: MLOAD
00003212: PUSH1 0x01
00003214: PUSH1 0x01
00003216: PUSH1 0xa0
00003218: SHL
00003219: SUB
0000321a: DUP3
0000321b: AND
0000321c: SWAP1
0000321d: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
0000323e: SWAP1
0000323f: PUSH1 0x00
00003241: SWAP1
00003242: LOG2
00003243: POP
00003244: JUMP
00003245: JUMPDEST
00003246: PUSH1 0x09
00003248: SLOAD
00003249: PUSH2 0x3253
0000324c: DUP2
0000324d: PUSH1 0x00
0000324f: PUSH2 0x344c
00003252: JUMP
00003253: JUMPDEST
00003254: PUSH2 0x3292
00003257: JUMPI
00003258: PUSH1 0x40
0000325a: MLOAD
0000325b: PUSH3 0x461bcd
0000325f: PUSH1 0xe5
00003261: SHL
00003262: DUP2
00003263: MSTORE
00003264: PUSH1 0x20
00003266: PUSH1 0x04
00003268: DUP3
00003269: ADD
0000326a: MSTORE
0000326b: PUSH1 0x10
0000326d: PUSH1 0x24
0000326f: DUP3
00003270: ADD
00003271: MSTORE
00003272: PUSH16 0x0d2dcd2e87440c6ded2dc40d2dcc8caf
00003283: PUSH1 0x83
00003285: SHL
00003286: PUSH1 0x44
00003288: DUP3
00003289: ADD
0000328a: MSTORE
0000328b: PUSH1 0x64
0000328d: ADD
0000328e: PUSH2 0x0eb8
00003291: JUMP
00003292: JUMPDEST
00003293: PUSH1 0x06
00003295: SLOAD
00003296: PUSH1 0x01
00003298: PUSH1 0x01
0000329a: PUSH1 0xa0
0000329c: SHL
0000329d: SUB
0000329e: AND
0000329f: PUSH2 0x1331
000032a2: JUMPI
000032a3: PUSH1 0x40
000032a5: MLOAD
000032a6: PUSH3 0x461bcd
000032aa: PUSH1 0xe5
000032ac: SHL
000032ad: DUP2
000032ae: MSTORE
000032af: PUSH1 0x20
000032b1: PUSH1 0x04
000032b3: DUP3
000032b4: ADD
000032b5: MSTORE
000032b6: PUSH1 0x0c
000032b8: PUSH1 0x24
000032ba: DUP3
000032bb: ADD
000032bc: MSTORE
000032bd: PUSH12 0x1a5b9a5d0e881cdbd8dad95d
000032ca: PUSH1 0xa2
000032cc: SHL
000032cd: PUSH1 0x44
000032cf: DUP3
000032d0: ADD
000032d1: MSTORE
000032d2: PUSH1 0x64
000032d4: ADD
000032d5: PUSH2 0x0eb8
000032d8: JUMP
000032d9: JUMPDEST
000032da: PUSH2 0x1920
000032dd: DUP2
000032de: PUSH1 0x00
000032e0: ADD
000032e1: MLOAD
000032e2: DUP3
000032e3: PUSH1 0x40
000032e5: ADD
000032e6: MLOAD
000032e7: DUP4
000032e8: PUSH1 0x80
000032ea: ADD
000032eb: MLOAD
000032ec: PUSH2 0x34db
000032ef: JUMP
000032f0: JUMPDEST
000032f1: EQ
000032f2: ISZERO
000032f3: SWAP1
000032f4: JUMP
000032f5: JUMPDEST
000032f6: PUSH1 0x00
000032f8: DUP3
000032f9: DUP2
000032fa: MSTORE
000032fb: PUSH1 0x0a
000032fd: PUSH1 0x20
000032ff: SWAP1
00003300: DUP2
00003301: MSTORE
00003302: PUSH1 0x40
00003304: SWAP2
00003305: DUP3
00003306: SWAP1
00003307: KECCAK256
00003308: DUP4
00003309: MLOAD
0000330a: DUP1
0000330b: MLOAD
0000330c: DUP2
0000330d: DUP5
0000330e: ADD
0000330f: MLOAD
00003310: PUSH1 0x01
00003312: PUSH1 0x01
00003314: PUSH1 0x80
00003316: SHL
00003317: SUB
00003318: SWAP2
00003319: DUP3
0000331a: AND
0000331b: PUSH1 0x01
0000331d: PUSH1 0x80
0000331f: SHL
00003320: SWAP2
00003321: DUP4
00003322: AND
00003323: DUP3
00003324: MUL
00003325: OR
00003326: DUP5
00003327: SSTORE
00003328: SWAP2
00003329: DUP6
0000332a: ADD
0000332b: MLOAD
0000332c: PUSH1 0x01
0000332e: DUP1
0000332f: DUP6
00003330: ADD
00003331: SWAP2
00003332: SWAP1
00003333: SWAP2
00003334: SSTORE
00003335: DUP7
00003336: DUP6
00003337: ADD
00003338: MLOAD
00003339: DUP1
0000333a: MLOAD
0000333b: SWAP6
0000333c: DUP2
0000333d: ADD
0000333e: MLOAD
0000333f: SWAP6
00003340: DUP4
00003341: AND
00003342: SWAP6
00003343: SWAP1
00003344: SWAP3
00003345: AND
00003346: SWAP1
00003347: SWAP3
00003348: MUL
00003349: SWAP4
0000334a: SWAP1
0000334b: SWAP4
0000334c: OR
0000334d: PUSH1 0x02
0000334f: DUP4
00003350: ADD
00003351: SSTORE
00003352: SWAP2
00003353: DUP4
00003354: ADD
00003355: MLOAD
00003356: PUSH1 0x03
00003358: DUP1
00003359: DUP4
0000335a: ADD
0000335b: SWAP2
0000335c: SWAP1
0000335d: SWAP2
0000335e: SSTORE
0000335f: SWAP3
00003360: DUP5
00003361: ADD
00003362: MLOAD
00003363: PUSH1 0x04
00003365: DUP3
00003366: ADD
00003367: DUP1
00003368: SLOAD
00003369: DUP7
0000336a: SWAP6
0000336b: SWAP4
0000336c: SWAP5
0000336d: SWAP3
0000336e: SWAP4
0000336f: SWAP2
00003370: SWAP3
00003371: PUSH1 0xff
00003373: NOT
00003374: SWAP1
00003375: SWAP2
00003376: AND
00003377: SWAP2
00003378: DUP5
00003379: SWAP1
0000337a: DUP2
0000337b: GT
0000337c: ISZERO
0000337d: PUSH2 0x3388
00003380: JUMPI
00003381: PUSH2 0x3388
00003384: PUSH2 0x3ec0
00003387: JUMP
00003388: JUMPDEST
00003389: MUL
0000338a: OR
0000338b: SWAP1
0000338c: SSTORE
0000338d: POP
0000338e: PUSH1 0x60
00003390: DUP3
00003391: ADD
00003392: MLOAD
00003393: PUSH1 0x04
00003395: DUP3
00003396: ADD
00003397: DUP1
00003398: SLOAD
00003399: PUSH1 0x01
0000339b: PUSH1 0x01
0000339d: PUSH1 0xa0
0000339f: SHL
000033a0: SUB
000033a1: SWAP3
000033a2: DUP4
000033a3: AND
000033a4: PUSH2 0x0100
000033a7: MUL
000033a8: PUSH2 0x0100
000033ab: PUSH1 0x01
000033ad: PUSH1 0xa8
000033af: SHL
000033b0: SUB
000033b1: NOT
000033b2: SWAP1
000033b3: SWAP2
000033b4: AND
000033b5: OR
000033b6: SWAP1
000033b7: SSTORE
000033b8: PUSH1 0x80
000033ba: DUP4
000033bb: ADD
000033bc: MLOAD
000033bd: PUSH1 0x05
000033bf: DUP4
000033c0: ADD
000033c1: DUP1
000033c2: SLOAD
000033c3: SWAP2
000033c4: DUP4
000033c5: AND
000033c6: PUSH1 0x01
000033c8: PUSH1 0x01
000033ca: PUSH1 0xa0
000033cc: SHL
000033cd: SUB
000033ce: NOT
000033cf: SWAP3
000033d0: DUP4
000033d1: AND
000033d2: OR
000033d3: SWAP1
000033d4: SSTORE
000033d5: PUSH1 0xa0
000033d7: DUP5
000033d8: ADD
000033d9: MLOAD
000033da: PUSH1 0x06
000033dc: DUP5
000033dd: ADD
000033de: DUP1
000033df: SLOAD
000033e0: SWAP2
000033e1: SWAP1
000033e2: SWAP4
000033e3: AND
000033e4: SWAP2
000033e5: AND
000033e6: OR
000033e7: SWAP1
000033e8: SSTORE
000033e9: PUSH1 0xc0
000033eb: SWAP1
000033ec: SWAP2
000033ed: ADD
000033ee: MLOAD
000033ef: PUSH1 0x07
000033f1: SWAP1
000033f2: SWAP2
000033f3: ADD
000033f4: SSTORE
000033f5: POP
000033f6: POP
000033f7: JUMP
000033f8: JUMPDEST
000033f9: PUSH32 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f
0000341a: PUSH2 0x3421
0000341d: PUSH2 0x39ee
00003420: JUMP
00003421: JUMPDEST
00003422: PUSH1 0x40
00003424: DUP1
00003425: MLOAD
00003426: PUSH1 0x01
00003428: PUSH1 0x01
0000342a: PUSH1 0xa0
0000342c: SHL
0000342d: SUB
0000342e: SWAP3
0000342f: DUP4
00003430: AND
00003431: DUP2
00003432: MSTORE
00003433: SWAP2
00003434: DUP5
00003435: AND
00003436: PUSH1 0x20
00003438: DUP4
00003439: ADD
0000343a: MSTORE
0000343b: ADD
0000343c: PUSH1 0x40
0000343e: MLOAD
0000343f: DUP1
00003440: SWAP2
00003441: SUB
00003442: SWAP1
00003443: LOG1
00003444: PUSH2 0x1920
00003447: DUP2
00003448: PUSH2 0x3a04
0000344b: JUMP
0000344c: JUMPDEST
0000344d: PUSH1 0x01
0000344f: PUSH1 0x01
00003451: PUSH1 0x80
00003453: SHL
00003454: SUB
00003455: NOT
00003456: AND
00003457: EQ
00003458: ISZERO
00003459: SWAP1
0000345a: JUMP
0000345b: JUMPDEST
0000345c: PUSH1 0x00
0000345e: DUP2
0000345f: DUP2
00003460: MSTORE
00003461: PUSH1 0x0a
00003463: PUSH1 0x20
00003465: MSTORE
00003466: PUSH1 0x40
00003468: SWAP1
00003469: KECCAK256
0000346a: PUSH1 0x04
0000346c: ADD
0000346d: SLOAD
0000346e: PUSH1 0xff
00003470: AND
00003471: PUSH1 0x03
00003473: DUP2
00003474: PUSH1 0x03
00003476: DUP2
00003477: GT
00003478: ISZERO
00003479: PUSH2 0x3484
0000347c: JUMPI
0000347d: PUSH2 0x3484
00003480: PUSH2 0x3ec0
00003483: JUMP
00003484: JUMPDEST
00003485: EQ
00003486: ISZERO
00003487: DUP1
00003488: ISZERO
00003489: PUSH2 0x34a4
0000348c: JUMPI
0000348d: POP
0000348e: PUSH1 0x00
00003490: DUP2
00003491: PUSH1 0x03
00003493: DUP2
00003494: GT
00003495: ISZERO
00003496: PUSH2 0x34a1
00003499: JUMPI
0000349a: PUSH2 0x34a1
0000349d: PUSH2 0x3ec0
000034a0: JUMP
000034a1: JUMPDEST
000034a2: EQ
000034a3: ISZERO
000034a4: JUMPDEST
000034a5: PUSH2 0x0fa1
000034a8: JUMPI
000034a9: PUSH1 0x40
000034ab: MLOAD
000034ac: PUSH3 0x461bcd
000034b0: PUSH1 0xe5
000034b2: SHL
000034b3: DUP2
000034b4: MSTORE
000034b5: PUSH1 0x20
000034b7: PUSH1 0x04
000034b9: DUP3
000034ba: ADD
000034bb: MSTORE
000034bc: PUSH1 0x08
000034be: PUSH1 0x24
000034c0: DUP3
000034c1: ADD
000034c2: MSTORE
000034c3: PUSH8 0x6d696e7461626c65
000034cc: PUSH1 0xc0
000034ce: SHL
000034cf: PUSH1 0x44
000034d1: DUP3
000034d2: ADD
000034d3: MSTORE
000034d4: PUSH1 0x64
000034d6: ADD
000034d7: PUSH2 0x0eb8
000034da: JUMP
000034db: JUMPDEST
000034dc: PUSH1 0x09
000034de: SLOAD
000034df: DUP4
000034e0: SUB
000034e1: PUSH2 0x355b
000034e4: JUMPI
000034e5: SELFBALANCE
000034e6: DUP2
000034e7: GT
000034e8: ISZERO
000034e9: PUSH2 0x3525
000034ec: JUMPI
000034ed: PUSH1 0x40
000034ef: MLOAD
000034f0: PUSH3 0x461bcd
000034f4: PUSH1 0xe5
000034f6: SHL
000034f7: DUP2
000034f8: MSTORE
000034f9: PUSH1 0x20
000034fb: PUSH1 0x04
000034fd: DUP3
000034fe: ADD
000034ff: MSTORE
00003500: PUSH1 0x0e
00003502: PUSH1 0x24
00003504: DUP3
00003505: ADD
00003506: MSTORE
00003507: PUSH14 0x6f7574206f662062616c616e6365
00003516: PUSH1 0x90
00003518: SHL
00003519: PUSH1 0x44
0000351b: DUP3
0000351c: ADD
0000351d: MSTORE
0000351e: PUSH1 0x64
00003520: ADD
00003521: PUSH2 0x0eb8
00003524: JUMP
00003525: JUMPDEST
00003526: PUSH1 0x40
00003528: MLOAD
00003529: PUSH1 0x01
0000352b: PUSH1 0x01
0000352d: PUSH1 0xa0
0000352f: SHL
00003530: SUB
00003531: DUP4
00003532: AND
00003533: SWAP1
00003534: DUP3
00003535: ISZERO
00003536: PUSH2 0x08fc
00003539: MUL
0000353a: SWAP1
0000353b: DUP4
0000353c: SWAP1
0000353d: PUSH1 0x00
0000353f: DUP2
00003540: DUP2
00003541: DUP2
00003542: DUP6
00003543: DUP9
00003544: DUP9
00003545: CALL
00003546: SWAP4
00003547: POP
00003548: POP
00003549: POP
0000354a: POP
0000354b: ISZERO
0000354c: DUP1
0000354d: ISZERO
0000354e: PUSH2 0x18af
00003551: JUMPI
00003552: RETURNDATASIZE
00003553: PUSH1 0x00
00003555: DUP1
00003556: RETURNDATACOPY
00003557: RETURNDATASIZE
00003558: PUSH1 0x00
0000355a: REVERT
0000355b: JUMPDEST
0000355c: PUSH1 0x03
0000355e: PUSH1 0x00
00003560: DUP5
00003561: DUP2
00003562: MSTORE
00003563: PUSH1 0x0a
00003565: PUSH1 0x20
00003567: MSTORE
00003568: PUSH1 0x40
0000356a: SWAP1
0000356b: KECCAK256
0000356c: PUSH1 0x04
0000356e: ADD
0000356f: SLOAD
00003570: PUSH1 0xff
00003572: AND
00003573: PUSH1 0x03
00003575: DUP2
00003576: GT
00003577: ISZERO
00003578: PUSH2 0x3583
0000357b: JUMPI
0000357c: PUSH2 0x3583
0000357f: PUSH2 0x3ec0
00003582: JUMP
00003583: JUMPDEST
00003584: SUB
00003585: PUSH2 0x35ae
00003588: JUMPI
00003589: PUSH1 0x00
0000358b: DUP4
0000358c: DUP2
0000358d: MSTORE
0000358e: PUSH1 0x0a
00003590: PUSH1 0x20
00003592: MSTORE
00003593: PUSH1 0x40
00003595: SWAP1
00003596: KECCAK256
00003597: PUSH1 0x06
00003599: ADD
0000359a: SLOAD
0000359b: PUSH2 0x0ec1
0000359e: SWAP1
0000359f: PUSH1 0x01
000035a1: PUSH1 0x01
000035a3: PUSH1 0xa0
000035a5: SHL
000035a6: SUB
000035a7: AND
000035a8: DUP4
000035a9: DUP4
000035aa: PUSH2 0x3a7e
000035ad: JUMP
000035ae: JUMPDEST
000035af: PUSH1 0x00
000035b1: DUP4
000035b2: DUP2
000035b3: MSTORE
000035b4: PUSH1 0x0a
000035b6: PUSH1 0x20
000035b8: MSTORE
000035b9: PUSH1 0x40
000035bb: SWAP1
000035bc: KECCAK256
000035bd: PUSH1 0x06
000035bf: ADD
000035c0: SLOAD
000035c1: PUSH2 0x0ec1
000035c4: SWAP1
000035c5: PUSH1 0x01
000035c7: PUSH1 0x01
000035c9: PUSH1 0xa0
000035cb: SHL
000035cc: SUB
000035cd: AND
000035ce: DUP4
000035cf: DUP4
000035d0: PUSH2 0x3a9d
000035d3: JUMP
000035d4: JUMPDEST
000035d5: PUSH1 0x01
000035d7: PUSH1 0x01
000035d9: PUSH1 0xa0
000035db: SHL
000035dc: SUB
000035dd: DUP3
000035de: AND
000035df: PUSH1 0x00
000035e1: SWAP1
000035e2: DUP2
000035e3: MSTORE
000035e4: PUSH1 0x01
000035e6: PUSH1 0x20
000035e8: MSTORE
000035e9: PUSH1 0x40
000035eb: SWAP1
000035ec: KECCAK256
000035ed: SLOAD
000035ee: PUSH2 0x35f7
000035f1: DUP2
000035f2: DUP4
000035f3: PUSH2 0x3715
000035f6: JUMP
000035f7: JUMPDEST
000035f8: ISZERO
000035f9: PUSH2 0x3639
000035fc: JUMPI
000035fd: PUSH1 0x40
000035ff: MLOAD
00003600: PUSH3 0x461bcd
00003604: PUSH1 0xe5
00003606: SHL
00003607: DUP2
00003608: MSTORE
00003609: PUSH1 0x20
0000360b: PUSH1 0x04
0000360d: DUP3
0000360e: ADD
0000360f: MSTORE
00003610: PUSH1 0x12
00003612: PUSH1 0x24
00003614: DUP3
00003615: ADD
00003616: MSTORE
00003617: PUSH18 0x636f6e666c696374206175746820666c6167
0000362a: PUSH1 0x70
0000362c: SHL
0000362d: PUSH1 0x44
0000362f: DUP3
00003630: ADD
00003631: MSTORE
00003632: PUSH1 0x64
00003634: ADD
00003635: PUSH2 0x0eb8
00003638: JUMP
00003639: JUMPDEST
0000363a: DUP2
0000363b: PUSH1 0x04
0000363d: DUP2
0000363e: GT
0000363f: ISZERO
00003640: PUSH2 0x364b
00003643: JUMPI
00003644: PUSH2 0x364b
00003647: PUSH2 0x3ec0
0000364a: JUMP
0000364b: JUMPDEST
0000364c: PUSH2 0x3656
0000364f: SWAP1
00003650: PUSH1 0x08
00003652: PUSH2 0x4f4a
00003655: JUMP
00003656: JUMPDEST
00003657: PUSH1 0x01
00003659: PUSH1 0x01
0000365b: PUSH1 0xa0
0000365d: SHL
0000365e: SUB
0000365f: SWAP1
00003660: SWAP4
00003661: AND
00003662: PUSH1 0x00
00003664: SWAP1
00003665: DUP2
00003666: MSTORE
00003667: PUSH1 0x01
00003669: PUSH1 0x20
0000366b: MSTORE
0000366c: PUSH1 0x40
0000366e: SWAP1
0000366f: KECCAK256
00003670: PUSH1 0x01
00003672: PUSH1 0x01
00003674: PUSH1 0xf8
00003676: SHL
00003677: SUB
00003678: NOT
00003679: PUSH1 0xff
0000367b: SWAP5
0000367c: SWAP1
0000367d: SWAP5
0000367e: AND
0000367f: SWAP4
00003680: SWAP1
00003681: SWAP4
00003682: SHR
00003683: OR
00003684: SWAP1
00003685: SWAP2
00003686: SSTORE
00003687: POP
00003688: JUMP
00003689: JUMPDEST
0000368a: PUSH1 0x40
0000368c: MLOAD
0000368d: PUSH1 0x01
0000368f: PUSH1 0x01
00003691: PUSH1 0xa0
00003693: SHL
00003694: SUB
00003695: DUP1
00003696: DUP6
00003697: AND
00003698: PUSH1 0x24
0000369a: DUP4
0000369b: ADD
0000369c: MSTORE
0000369d: DUP4
0000369e: AND
0000369f: PUSH1 0x44
000036a1: DUP3
000036a2: ADD
000036a3: MSTORE
000036a4: PUSH1 0x64
000036a6: DUP2
000036a7: ADD
000036a8: DUP3
000036a9: SWAP1
000036aa: MSTORE
000036ab: PUSH2 0x18af
000036ae: SWAP1
000036af: DUP6
000036b0: SWAP1
000036b1: PUSH4 0x23b872dd
000036b6: PUSH1 0xe0
000036b8: SHL
000036b9: SWAP1
000036ba: PUSH1 0x84
000036bc: ADD
000036bd: JUMPDEST
000036be: PUSH1 0x40
000036c0: DUP1
000036c1: MLOAD
000036c2: PUSH1 0x1f
000036c4: NOT
000036c5: DUP2
000036c6: DUP5
000036c7: SUB
000036c8: ADD
000036c9: DUP2
000036ca: MSTORE
000036cb: SWAP2
000036cc: SWAP1
000036cd: MSTORE
000036ce: PUSH1 0x20
000036d0: DUP2
000036d1: ADD
000036d2: DUP1
000036d3: MLOAD
000036d4: PUSH1 0x01
000036d6: PUSH1 0x01
000036d8: PUSH1 0xe0
000036da: SHL
000036db: SUB
000036dc: AND
000036dd: PUSH1 0x01
000036df: PUSH1 0x01
000036e1: PUSH1 0xe0
000036e3: SHL
000036e4: SUB
000036e5: NOT
000036e6: SWAP1
000036e7: SWAP4
000036e8: AND
000036e9: SWAP3
000036ea: SWAP1
000036eb: SWAP3
000036ec: OR
000036ed: SWAP1
000036ee: SWAP2
000036ef: MSTORE
000036f0: PUSH2 0x3abc
000036f3: JUMP
000036f4: JUMPDEST
000036f5: PUSH1 0x00
000036f7: PUSH1 0x00
000036f9: DUP1
000036fa: MLOAD
000036fb: PUSH1 0x20
000036fd: PUSH2 0x4ff9
00003700: DUP4
00003701: CODECOPY
00003702: DUP2
00003703: MLOAD
00003704: SWAP2
00003705: MSTORE
00003706: JUMPDEST
00003707: SLOAD
00003708: PUSH1 0x01
0000370a: PUSH1 0x01
0000370c: PUSH1 0xa0
0000370e: SHL
0000370f: SUB
00003710: AND
00003711: SWAP2
00003712: SWAP1
00003713: POP
00003714: JUMP
00003715: JUMPDEST
00003716: PUSH1 0x00
00003718: PUSH1 0x01
0000371a: PUSH1 0x01
0000371c: PUSH1 0xf8
0000371e: SHL
0000371f: SUB
00003720: NOT
00003721: DUP4
00003722: DUP4
00003723: PUSH1 0x04
00003725: DUP2
00003726: GT
00003727: ISZERO
00003728: PUSH2 0x3733
0000372b: JUMPI
0000372c: PUSH2 0x3733
0000372f: PUSH2 0x3ec0
00003732: JUMP
00003733: JUMPDEST
00003734: PUSH1 0xff
00003736: AND
00003737: PUSH1 0x20
00003739: DUP2
0000373a: LT
0000373b: PUSH2 0x3746
0000373e: JUMPI
0000373f: PUSH2 0x3746
00003742: PUSH2 0x4bab
00003745: JUMP
00003746: JUMPDEST
00003747: BYTE
00003748: PUSH1 0xf8
0000374a: SHL
0000374b: PUSH1 0x01
0000374d: PUSH1 0x01
0000374f: PUSH1 0xf8
00003751: SHL
00003752: SUB
00003753: NOT
00003754: AND
00003755: EQ
00003756: SWAP1
00003757: POP
00003758: SWAP3
00003759: SWAP2
0000375a: POP
0000375b: POP
0000375c: JUMP
0000375d: JUMPDEST
0000375e: PUSH1 0x01
00003760: PUSH1 0x01
00003762: PUSH1 0xa0
00003764: SHL
00003765: SUB
00003766: DUP2
00003767: AND
00003768: PUSH2 0x1920
0000376b: JUMPI
0000376c: PUSH1 0x40
0000376e: MLOAD
0000376f: PUSH3 0x461bcd
00003773: PUSH1 0xe5
00003775: SHL
00003776: DUP2
00003777: MSTORE
00003778: PUSH1 0x20
0000377a: PUSH1 0x04
0000377c: DUP3
0000377d: ADD
0000377e: MSTORE
0000377f: PUSH1 0x0b
00003781: PUSH1 0x24
00003783: DUP3
00003784: ADD
00003785: MSTORE
00003786: PUSH11 0x5a65726f41646472657373
00003792: PUSH1 0xa8
00003794: SHL
00003795: PUSH1 0x44
00003797: DUP3
00003798: ADD
00003799: MSTORE
0000379a: PUSH1 0x64
0000379c: ADD
0000379d: PUSH2 0x0eb8
000037a0: JUMP
000037a1: JUMPDEST
000037a2: PUSH1 0x00
000037a4: PUSH1 0x01
000037a6: PUSH1 0x01
000037a8: PUSH1 0xa0
000037aa: SHL
000037ab: SUB
000037ac: AND
000037ad: DUP3
000037ae: PUSH1 0x00
000037b0: DUP2
000037b1: SLOAD
000037b2: DUP2
000037b3: LT
000037b4: PUSH2 0x37bf
000037b7: JUMPI
000037b8: PUSH2 0x37bf
000037bb: PUSH2 0x4bab
000037be: JUMP
000037bf: JUMPDEST
000037c0: PUSH1 0x00
000037c2: SWAP2
000037c3: DUP3
000037c4: MSTORE
000037c5: PUSH1 0x20
000037c7: SWAP1
000037c8: SWAP2
000037c9: KECCAK256
000037ca: ADD
000037cb: SLOAD
000037cc: PUSH1 0x01
000037ce: PUSH1 0x01
000037d0: PUSH1 0xa0
000037d2: SHL
000037d3: SUB
000037d4: AND
000037d5: SUB
000037d6: PUSH2 0x381f
000037d9: JUMPI
000037da: DUP1
000037db: DUP3
000037dc: PUSH1 0x00
000037de: DUP2
000037df: SLOAD
000037e0: DUP2
000037e1: LT
000037e2: PUSH2 0x37ed
000037e5: JUMPI
000037e6: PUSH2 0x37ed
000037e9: PUSH2 0x4bab
000037ec: JUMP
000037ed: JUMPDEST
000037ee: SWAP1
000037ef: PUSH1 0x00
000037f1: MSTORE
000037f2: PUSH1 0x20
000037f4: PUSH1 0x00
000037f6: KECCAK256
000037f7: ADD
000037f8: PUSH1 0x00
000037fa: PUSH2 0x0100
000037fd: EXP
000037fe: DUP2
000037ff: SLOAD
00003800: DUP2
00003801: PUSH1 0x01
00003803: PUSH1 0x01
00003805: PUSH1 0xa0
00003807: SHL
00003808: SUB
00003809: MUL
0000380a: NOT
0000380b: AND
0000380c: SWAP1
0000380d: DUP4
0000380e: PUSH1 0x01
00003810: PUSH1 0x01
00003812: PUSH1 0xa0
00003814: SHL
00003815: SUB
00003816: AND
00003817: MUL
00003818: OR
00003819: SWAP1
0000381a: SSTORE
0000381b: POP
0000381c: POP
0000381d: POP
0000381e: JUMP
0000381f: JUMPDEST
00003820: DUP2
00003821: SLOAD
00003822: PUSH1 0x01
00003824: DUP2
00003825: ADD
00003826: DUP4
00003827: SSTORE
00003828: PUSH1 0x00
0000382a: DUP4
0000382b: DUP2
0000382c: MSTORE
0000382d: PUSH1 0x20
0000382f: SWAP1
00003830: KECCAK256
00003831: ADD
00003832: DUP1
00003833: SLOAD
00003834: PUSH1 0x01
00003836: PUSH1 0x01
00003838: PUSH1 0xa0
0000383a: SHL
0000383b: SUB
0000383c: DUP4
0000383d: AND
0000383e: PUSH1 0x01
00003840: PUSH1 0x01
00003842: PUSH1 0xa0
00003844: SHL
00003845: SUB
00003846: NOT
00003847: SWAP1
00003848: SWAP2
00003849: AND
0000384a: OR
0000384b: SWAP1
0000384c: SSTORE
0000384d: POP
0000384e: POP
0000384f: JUMP
00003850: JUMPDEST
00003851: PUSH1 0x01
00003853: PUSH1 0x01
00003855: PUSH1 0xa0
00003857: SHL
00003858: SUB
00003859: DUP3
0000385a: AND
0000385b: PUSH1 0x00
0000385d: SWAP1
0000385e: DUP2
0000385f: MSTORE
00003860: PUSH1 0x01
00003862: PUSH1 0x20
00003864: MSTORE
00003865: PUSH1 0x40
00003867: SWAP1
00003868: KECCAK256
00003869: SLOAD
0000386a: PUSH2 0x3873
0000386d: DUP2
0000386e: DUP4
0000386f: PUSH2 0x3715
00003872: JUMP
00003873: JUMPDEST
00003874: PUSH2 0x38b1
00003877: JUMPI
00003878: PUSH1 0x40
0000387a: MLOAD
0000387b: PUSH3 0x461bcd
0000387f: PUSH1 0xe5
00003881: SHL
00003882: DUP2
00003883: MSTORE
00003884: PUSH1 0x20
00003886: PUSH1 0x04
00003888: DUP3
00003889: ADD
0000388a: MSTORE
0000388b: PUSH1 0x0f
0000388d: PUSH1 0x24
0000388f: DUP3
00003890: ADD
00003891: MSTORE
00003892: PUSH15 0x0dcdee840ccd8c2cecac840c2eae8d
000038a2: PUSH1 0x8b
000038a4: SHL
000038a5: PUSH1 0x44
000038a7: DUP3
000038a8: ADD
000038a9: MSTORE
000038aa: PUSH1 0x64
000038ac: ADD
000038ad: PUSH2 0x0eb8
000038b0: JUMP
000038b1: JUMPDEST
000038b2: DUP2
000038b3: PUSH1 0x04
000038b5: DUP2
000038b6: GT
000038b7: ISZERO
000038b8: PUSH2 0x38c3
000038bb: JUMPI
000038bc: PUSH2 0x38c3
000038bf: PUSH2 0x3ec0
000038c2: JUMP
000038c3: JUMPDEST
000038c4: PUSH2 0x38ce
000038c7: SWAP1
000038c8: PUSH1 0x08
000038ca: PUSH2 0x4f4a
000038cd: JUMP
000038ce: JUMPDEST
000038cf: PUSH1 0x01
000038d1: PUSH1 0x01
000038d3: PUSH1 0xa0
000038d5: SHL
000038d6: SUB
000038d7: SWAP4
000038d8: SWAP1
000038d9: SWAP4
000038da: AND
000038db: PUSH1 0x00
000038dd: SWAP1
000038de: DUP2
000038df: MSTORE
000038e0: PUSH1 0x01
000038e2: PUSH1 0x20
000038e4: MSTORE
000038e5: PUSH1 0x40
000038e7: SWAP1
000038e8: KECCAK256
000038e9: DUP1
000038ea: SLOAD
000038eb: PUSH1 0x01
000038ed: PUSH1 0x01
000038ef: PUSH1 0xf8
000038f1: SHL
000038f2: SUB
000038f3: NOT
000038f4: PUSH1 0xff
000038f6: SWAP1
000038f7: SWAP6
000038f8: AND
000038f9: SWAP5
000038fa: SWAP1
000038fb: SWAP5
000038fc: SHR
000038fd: NOT
000038fe: SWAP1
000038ff: SWAP4
00003900: AND
00003901: SWAP1
00003902: SWAP3
00003903: SSTORE
00003904: POP
00003905: POP
00003906: JUMP
00003907: JUMPDEST
00003908: PUSH2 0x3948
0000390b: DUP3
0000390c: DUP3
0000390d: DUP5
0000390e: PUSH1 0x01
00003910: DUP7
00003911: DUP1
00003912: SLOAD
00003913: SWAP1
00003914: POP
00003915: PUSH2 0x391e
00003918: SWAP2
00003919: SWAP1
0000391a: PUSH2 0x4ec1
0000391d: JUMP
0000391e: JUMPDEST
0000391f: DUP2
00003920: SLOAD
00003921: DUP2
00003922: LT
00003923: PUSH2 0x392e
00003926: JUMPI
00003927: PUSH2 0x392e
0000392a: PUSH2 0x4bab
0000392d: JUMP
0000392e: JUMPDEST
0000392f: PUSH1 0x00
00003931: SWAP2
00003932: DUP3
00003933: MSTORE
00003934: PUSH1 0x20
00003936: SWAP1
00003937: SWAP2
00003938: KECCAK256
00003939: ADD
0000393a: SLOAD
0000393b: PUSH1 0x01
0000393d: PUSH1 0x01
0000393f: PUSH1 0xa0
00003941: SHL
00003942: SUB
00003943: AND
00003944: PUSH2 0x3b5e
00003947: JUMP
00003948: JUMPDEST
00003949: PUSH2 0x0fa1
0000394c: DUP3
0000394d: PUSH2 0x3c1c
00003950: JUMP
00003951: JUMPDEST
00003952: PUSH2 0x395a
00003955: DUP2
00003956: PUSH2 0x2b8e
00003959: JUMP
0000395a: JUMPDEST
0000395b: PUSH2 0x39bc
0000395e: JUMPI
0000395f: PUSH1 0x40
00003961: MLOAD
00003962: PUSH3 0x461bcd
00003966: PUSH1 0xe5
00003968: SHL
00003969: DUP2
0000396a: MSTORE
0000396b: PUSH1 0x20
0000396d: PUSH1 0x04
0000396f: DUP3
00003970: ADD
00003971: MSTORE
00003972: PUSH1 0x2d
00003974: PUSH1 0x24
00003976: DUP3
00003977: ADD
00003978: MSTORE
00003979: PUSH32 0x455243313936373a206e657720696d706c656d656e746174696f6e206973206e
0000399a: PUSH1 0x44
0000399c: DUP3
0000399d: ADD
0000399e: MSTORE
0000399f: PUSH13 0x1bdd08184818dbdb9d1c9858dd
000039ad: PUSH1 0x9a
000039af: SHL
000039b0: PUSH1 0x64
000039b2: DUP3
000039b3: ADD
000039b4: MSTORE
000039b5: PUSH1 0x84
000039b7: ADD
000039b8: PUSH2 0x0eb8
000039bb: JUMP
000039bc: JUMPDEST
000039bd: DUP1
000039be: PUSH1 0x00
000039c0: DUP1
000039c1: MLOAD
000039c2: PUSH1 0x20
000039c4: PUSH2 0x4ff9
000039c7: DUP4
000039c8: CODECOPY
000039c9: DUP2
000039ca: MLOAD
000039cb: SWAP2
000039cc: MSTORE
000039cd: JUMPDEST
000039ce: DUP1
000039cf: SLOAD
000039d0: PUSH1 0x01
000039d2: PUSH1 0x01
000039d4: PUSH1 0xa0
000039d6: SHL
000039d7: SUB
000039d8: NOT
000039d9: AND
000039da: PUSH1 0x01
000039dc: PUSH1 0x01
000039de: PUSH1 0xa0
000039e0: SHL
000039e1: SUB
000039e2: SWAP3
000039e3: SWAP1
000039e4: SWAP3
000039e5: AND
000039e6: SWAP2
000039e7: SWAP1
000039e8: SWAP2
000039e9: OR
000039ea: SWAP1
000039eb: SSTORE
000039ec: POP
000039ed: JUMP
000039ee: JUMPDEST
000039ef: PUSH1 0x00
000039f1: PUSH1 0x00
000039f3: DUP1
000039f4: MLOAD
000039f5: PUSH1 0x20
000039f7: PUSH2 0x4fd9
000039fa: DUP4
000039fb: CODECOPY
000039fc: DUP2
000039fd: MLOAD
000039fe: SWAP2
000039ff: MSTORE
00003a00: PUSH2 0x3706
00003a03: JUMP
00003a04: JUMPDEST
00003a05: PUSH1 0x01
00003a07: PUSH1 0x01
00003a09: PUSH1 0xa0
00003a0b: SHL
00003a0c: SUB
00003a0d: DUP2
00003a0e: AND
00003a0f: PUSH2 0x3a69
00003a12: JUMPI
00003a13: PUSH1 0x40
00003a15: MLOAD
00003a16: PUSH3 0x461bcd
00003a1a: PUSH1 0xe5
00003a1c: SHL
00003a1d: DUP2
00003a1e: MSTORE
00003a1f: PUSH1 0x20
00003a21: PUSH1 0x04
00003a23: DUP3
00003a24: ADD
00003a25: MSTORE
00003a26: PUSH1 0x26
00003a28: PUSH1 0x24
00003a2a: DUP3
00003a2b: ADD
00003a2c: MSTORE
00003a2d: PUSH32 0x455243313936373a206e65772061646d696e20697320746865207a65726f2061
00003a4e: PUSH1 0x44
00003a50: DUP3
00003a51: ADD
00003a52: MSTORE
00003a53: PUSH6 0x646472657373
00003a5a: PUSH1 0xd0
00003a5c: SHL
00003a5d: PUSH1 0x64
00003a5f: DUP3
00003a60: ADD
00003a61: MSTORE
00003a62: PUSH1 0x84
00003a64: ADD
00003a65: PUSH2 0x0eb8
00003a68: JUMP
00003a69: JUMPDEST
00003a6a: DUP1
00003a6b: PUSH1 0x00
00003a6d: DUP1
00003a6e: MLOAD
00003a6f: PUSH1 0x20
00003a71: PUSH2 0x4fd9
00003a74: DUP4
00003a75: CODECOPY
00003a76: DUP2
00003a77: MLOAD
00003a78: SWAP2
00003a79: MSTORE
00003a7a: PUSH2 0x39cd
00003a7d: JUMP
00003a7e: JUMPDEST
00003a7f: PUSH2 0x0ec1
00003a82: DUP4
00003a83: PUSH4 0x40c10f19
00003a88: PUSH1 0xe0
00003a8a: SHL
00003a8b: DUP5
00003a8c: DUP5
00003a8d: PUSH1 0x40
00003a8f: MLOAD
00003a90: PUSH1 0x24
00003a92: ADD
00003a93: PUSH2 0x36bd
00003a96: SWAP3
00003a97: SWAP2
00003a98: SWAP1
00003a99: PUSH2 0x4f31
00003a9c: JUMP
00003a9d: JUMPDEST
00003a9e: PUSH2 0x0ec1
00003aa1: DUP4
00003aa2: PUSH4 0xa9059cbb
00003aa7: PUSH1 0xe0
00003aa9: SHL
00003aaa: DUP5
00003aab: DUP5
00003aac: PUSH1 0x40
00003aae: MLOAD
00003aaf: PUSH1 0x24
00003ab1: ADD
00003ab2: PUSH2 0x36bd
00003ab5: SWAP3
00003ab6: SWAP2
00003ab7: SWAP1
00003ab8: PUSH2 0x4f31
00003abb: JUMP
00003abc: JUMPDEST
00003abd: PUSH1 0x00
00003abf: PUSH2 0x3b01
00003ac2: DUP3
00003ac3: PUSH1 0x40
00003ac5: MLOAD
00003ac6: DUP1
00003ac7: PUSH1 0x40
00003ac9: ADD
00003aca: PUSH1 0x40
00003acc: MSTORE
00003acd: DUP1
00003ace: PUSH1 0x0d
00003ad0: DUP2
00003ad1: MSTORE
00003ad2: PUSH1 0x20
00003ad4: ADD
00003ad5: PUSH13 0x1cd859994e881b1bddd0d85b1b
00003ae3: PUSH1 0x9a
00003ae5: SHL
00003ae6: DUP2
00003ae7: MSTORE
00003ae8: POP
00003ae9: DUP6
00003aea: PUSH1 0x01
00003aec: PUSH1 0x01
00003aee: PUSH1 0xa0
00003af0: SHL
00003af1: SUB
00003af2: AND
00003af3: PUSH2 0x3ca0
00003af6: SWAP1
00003af7: SWAP3
00003af8: SWAP2
00003af9: SWAP1
00003afa: PUSH4 0xffffffff
00003aff: AND
00003b00: JUMP
00003b01: JUMPDEST
00003b02: DUP1
00003b03: MLOAD
00003b04: SWAP1
00003b05: SWAP2
00003b06: POP
00003b07: ISZERO
00003b08: PUSH2 0x0ec1
00003b0b: JUMPI
00003b0c: DUP1
00003b0d: DUP1
00003b0e: PUSH1 0x20
00003b10: ADD
00003b11: SWAP1
00003b12: MLOAD
00003b13: DUP2
00003b14: ADD
00003b15: SWAP1
00003b16: PUSH2 0x3b1f
00003b19: SWAP2
00003b1a: SWAP1
00003b1b: PUSH2 0x3ff6
00003b1e: JUMP
00003b1f: JUMPDEST
00003b20: PUSH2 0x0ec1
00003b23: JUMPI
00003b24: PUSH1 0x40
00003b26: MLOAD
00003b27: PUSH3 0x461bcd
00003b2b: PUSH1 0xe5
00003b2d: SHL
00003b2e: DUP2
00003b2f: MSTORE
00003b30: PUSH1 0x20
00003b32: PUSH1 0x04
00003b34: DUP3
00003b35: ADD
00003b36: MSTORE
00003b37: PUSH1 0x10
00003b39: PUSH1 0x24
00003b3b: DUP3
00003b3c: ADD
00003b3d: MSTORE
00003b3e: PUSH16 0x736166653a2072657475726e44617461
00003b4f: PUSH1 0x80
00003b51: SHL
00003b52: PUSH1 0x44
00003b54: DUP3
00003b55: ADD
00003b56: MSTORE
00003b57: PUSH1 0x64
00003b59: ADD
00003b5a: PUSH2 0x0eb8
00003b5d: JUMP
00003b5e: JUMPDEST
00003b5f: DUP1
00003b60: PUSH1 0x01
00003b62: PUSH1 0x01
00003b64: PUSH1 0xa0
00003b66: SHL
00003b67: SUB
00003b68: AND
00003b69: DUP3
00003b6a: PUSH1 0x01
00003b6c: PUSH1 0x01
00003b6e: PUSH1 0xa0
00003b70: SHL
00003b71: SUB
00003b72: AND
00003b73: SUB
00003b74: PUSH2 0x3b81
00003b77: JUMPI
00003b78: PUSH2 0x0ec1
00003b7b: DUP4
00003b7c: DUP4
00003b7d: PUSH2 0x3cb7
00003b80: JUMP
00003b81: JUMPDEST
00003b82: DUP3
00003b83: SLOAD
00003b84: PUSH1 0x00
00003b86: JUMPDEST
00003b87: DUP2
00003b88: DUP2
00003b89: LT
00003b8a: ISZERO
00003b8b: PUSH2 0x1693
00003b8e: JUMPI
00003b8f: DUP4
00003b90: PUSH1 0x01
00003b92: PUSH1 0x01
00003b94: PUSH1 0xa0
00003b96: SHL
00003b97: SUB
00003b98: AND
00003b99: DUP6
00003b9a: DUP3
00003b9b: DUP2
00003b9c: SLOAD
00003b9d: DUP2
00003b9e: LT
00003b9f: PUSH2 0x3baa
00003ba2: JUMPI
00003ba3: PUSH2 0x3baa
00003ba6: PUSH2 0x4bab
00003ba9: JUMP
00003baa: JUMPDEST
00003bab: PUSH1 0x00
00003bad: SWAP2
00003bae: DUP3
00003baf: MSTORE
00003bb0: PUSH1 0x20
00003bb2: SWAP1
00003bb3: SWAP2
00003bb4: KECCAK256
00003bb5: ADD
00003bb6: SLOAD
00003bb7: PUSH1 0x01
00003bb9: PUSH1 0x01
00003bbb: PUSH1 0xa0
00003bbd: SHL
00003bbe: SUB
00003bbf: AND
00003bc0: SUB
00003bc1: PUSH2 0x3c0a
00003bc4: JUMPI
00003bc5: DUP3
00003bc6: DUP6
00003bc7: DUP3
00003bc8: DUP2
00003bc9: SLOAD
00003bca: DUP2
00003bcb: LT
00003bcc: PUSH2 0x3bd7
00003bcf: JUMPI
00003bd0: PUSH2 0x3bd7
00003bd3: PUSH2 0x4bab
00003bd6: JUMP
00003bd7: JUMPDEST
00003bd8: SWAP1
00003bd9: PUSH1 0x00
00003bdb: MSTORE
00003bdc: PUSH1 0x20
00003bde: PUSH1 0x00
00003be0: KECCAK256
00003be1: ADD
00003be2: PUSH1 0x00
00003be4: PUSH2 0x0100
00003be7: EXP
00003be8: DUP2
00003be9: SLOAD
00003bea: DUP2
00003beb: PUSH1 0x01
00003bed: PUSH1 0x01
00003bef: PUSH1 0xa0
00003bf1: SHL
00003bf2: SUB
00003bf3: MUL
00003bf4: NOT
00003bf5: AND
00003bf6: SWAP1
00003bf7: DUP4
00003bf8: PUSH1 0x01
00003bfa: PUSH1 0x01
00003bfc: PUSH1 0xa0
00003bfe: SHL
00003bff: SUB
00003c00: AND
00003c01: MUL
00003c02: OR
00003c03: SWAP1
00003c04: SSTORE
00003c05: POP
00003c06: PUSH2 0x1693
00003c09: JUMP
00003c0a: JUMPDEST
00003c0b: DUP1
00003c0c: PUSH2 0x3c14
00003c0f: DUP2
00003c10: PUSH2 0x4bd7
00003c13: JUMP
00003c14: JUMPDEST
00003c15: SWAP2
00003c16: POP
00003c17: POP
00003c18: PUSH2 0x3b86
00003c1b: JUMP
00003c1c: JUMPDEST
00003c1d: DUP1
00003c1e: SLOAD
00003c1f: PUSH1 0x01
00003c21: SUB
00003c22: PUSH2 0x3c6b
00003c25: JUMPI
00003c26: PUSH1 0x00
00003c28: DUP2
00003c29: PUSH1 0x00
00003c2b: DUP2
00003c2c: SLOAD
00003c2d: DUP2
00003c2e: LT
00003c2f: PUSH2 0x3c3a
00003c32: JUMPI
00003c33: PUSH2 0x3c3a
00003c36: PUSH2 0x4bab
00003c39: JUMP
00003c3a: JUMPDEST
00003c3b: SWAP1
00003c3c: PUSH1 0x00
00003c3e: MSTORE
00003c3f: PUSH1 0x20
00003c41: PUSH1 0x00
00003c43: KECCAK256
00003c44: ADD
00003c45: PUSH1 0x00
00003c47: PUSH2 0x0100
00003c4a: EXP
00003c4b: DUP2
00003c4c: SLOAD
00003c4d: DUP2
00003c4e: PUSH1 0x01
00003c50: PUSH1 0x01
00003c52: PUSH1 0xa0
00003c54: SHL
00003c55: SUB
00003c56: MUL
00003c57: NOT
00003c58: AND
00003c59: SWAP1
00003c5a: DUP4
00003c5b: PUSH1 0x01
00003c5d: PUSH1 0x01
00003c5f: PUSH1 0xa0
00003c61: SHL
00003c62: SUB
00003c63: AND
00003c64: MUL
00003c65: OR
00003c66: SWAP1
00003c67: SSTORE
00003c68: POP
00003c69: POP
00003c6a: JUMP
00003c6b: JUMPDEST
00003c6c: DUP1
00003c6d: DUP1
00003c6e: SLOAD
00003c6f: DUP1
00003c70: PUSH2 0x3c7b
00003c73: JUMPI
00003c74: PUSH2 0x3c7b
00003c77: PUSH2 0x4f73
00003c7a: JUMP
00003c7b: JUMPDEST
00003c7c: PUSH1 0x00
00003c7e: DUP3
00003c7f: DUP2
00003c80: MSTORE
00003c81: PUSH1 0x20
00003c83: SWAP1
00003c84: KECCAK256
00003c85: DUP2
00003c86: ADD
00003c87: PUSH1 0x00
00003c89: NOT
00003c8a: SWAP1
00003c8b: DUP2
00003c8c: ADD
00003c8d: DUP1
00003c8e: SLOAD
00003c8f: PUSH1 0x01
00003c91: PUSH1 0x01
00003c93: PUSH1 0xa0
00003c95: SHL
00003c96: SUB
00003c97: NOT
00003c98: AND
00003c99: SWAP1
00003c9a: SSTORE
00003c9b: ADD
00003c9c: SWAP1
00003c9d: SSTORE
00003c9e: POP
00003c9f: JUMP
00003ca0: JUMPDEST
00003ca1: PUSH1 0x60
00003ca3: PUSH2 0x3caf
00003ca6: DUP5
00003ca7: DUP5
00003ca8: PUSH1 0x00
00003caa: DUP6
00003cab: PUSH2 0x3d49
00003cae: JUMP
00003caf: JUMPDEST
00003cb0: SWAP5
00003cb1: SWAP4
00003cb2: POP
00003cb3: POP
00003cb4: POP
00003cb5: POP
00003cb6: JUMP
00003cb7: JUMPDEST
00003cb8: DUP2
00003cb9: SLOAD
00003cba: PUSH1 0x00
00003cbc: JUMPDEST
00003cbd: DUP2
00003cbe: DUP2
00003cbf: LT
00003cc0: ISZERO
00003cc1: PUSH2 0x3d12
00003cc4: JUMPI
00003cc5: DUP3
00003cc6: PUSH1 0x01
00003cc8: PUSH1 0x01
00003cca: PUSH1 0xa0
00003ccc: SHL
00003ccd: SUB
00003cce: AND
00003ccf: DUP5
00003cd0: DUP3
00003cd1: DUP2
00003cd2: SLOAD
00003cd3: DUP2
00003cd4: LT
00003cd5: PUSH2 0x3ce0
00003cd8: JUMPI
00003cd9: PUSH2 0x3ce0
00003cdc: PUSH2 0x4bab
00003cdf: JUMP
00003ce0: JUMPDEST
00003ce1: PUSH1 0x00
00003ce3: SWAP2
00003ce4: DUP3
00003ce5: MSTORE
00003ce6: PUSH1 0x20
00003ce8: SWAP1
00003ce9: SWAP2
00003cea: KECCAK256
00003ceb: ADD
00003cec: SLOAD
00003ced: PUSH1 0x01
00003cef: PUSH1 0x01
00003cf1: PUSH1 0xa0
00003cf3: SHL
00003cf4: SUB
00003cf5: AND
00003cf6: SUB
00003cf7: PUSH2 0x3d00
00003cfa: JUMPI
00003cfb: POP
00003cfc: POP
00003cfd: POP
00003cfe: POP
00003cff: JUMP
00003d00: JUMPDEST
00003d01: DUP1
00003d02: PUSH2 0x3d0a
00003d05: DUP2
00003d06: PUSH2 0x4bd7
00003d09: JUMP
00003d0a: JUMPDEST
00003d0b: SWAP2
00003d0c: POP
00003d0d: POP
00003d0e: PUSH2 0x3cbc
00003d11: JUMP
00003d12: JUMPDEST
00003d13: POP
00003d14: PUSH1 0x40
00003d16: MLOAD
00003d17: PUSH3 0x461bcd
00003d1b: PUSH1 0xe5
00003d1d: SHL
00003d1e: DUP2
00003d1f: MSTORE
00003d20: PUSH1 0x20
00003d22: PUSH1 0x04
00003d24: DUP3
00003d25: ADD
00003d26: MSTORE
00003d27: PUSH1 0x0b
00003d29: PUSH1 0x24
00003d2b: DUP3
00003d2c: ADD
00003d2d: MSTORE
00003d2e: PUSH11 0x3737ba1031b7b73a30b4b7
00003d3a: PUSH1 0xa9
00003d3c: SHL
00003d3d: PUSH1 0x44
00003d3f: DUP3
00003d40: ADD
00003d41: MSTORE
00003d42: PUSH1 0x64
00003d44: ADD
00003d45: PUSH2 0x0eb8
00003d48: JUMP
00003d49: JUMPDEST
00003d4a: PUSH1 0x60
00003d4c: DUP3
00003d4d: SELFBALANCE
00003d4e: LT
00003d4f: ISZERO
00003d50: PUSH2 0x3daa
00003d53: JUMPI
00003d54: PUSH1 0x40
00003d56: MLOAD
00003d57: PUSH3 0x461bcd
00003d5b: PUSH1 0xe5
00003d5d: SHL
00003d5e: DUP2
00003d5f: MSTORE
00003d60: PUSH1 0x20
00003d62: PUSH1 0x04
00003d64: DUP3
00003d65: ADD
00003d66: MSTORE
00003d67: PUSH1 0x26
00003d69: PUSH1 0x24
00003d6b: DUP3
00003d6c: ADD
00003d6d: MSTORE
00003d6e: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f
00003d8f: PUSH1 0x44
00003d91: DUP3
00003d92: ADD
00003d93: MSTORE
00003d94: PUSH6 0x1c8818d85b1b
00003d9b: PUSH1 0xd2
00003d9d: SHL
00003d9e: PUSH1 0x64
00003da0: DUP3
00003da1: ADD
00003da2: MSTORE
00003da3: PUSH1 0x84
00003da5: ADD
00003da6: PUSH2 0x0eb8
00003da9: JUMP
00003daa: JUMPDEST
00003dab: PUSH1 0x00
00003dad: DUP1
00003dae: DUP7
00003daf: PUSH1 0x01
00003db1: PUSH1 0x01
00003db3: PUSH1 0xa0
00003db5: SHL
00003db6: SUB
00003db7: AND
00003db8: DUP6
00003db9: DUP8
00003dba: PUSH1 0x40
00003dbc: MLOAD
00003dbd: PUSH2 0x3dc6
00003dc0: SWAP2
00003dc1: SWAP1
00003dc2: PUSH2 0x4f89
00003dc5: JUMP
00003dc6: JUMPDEST
00003dc7: PUSH1 0x00
00003dc9: PUSH1 0x40
00003dcb: MLOAD
00003dcc: DUP1
00003dcd: DUP4
00003dce: SUB
00003dcf: DUP2
00003dd0: DUP6
00003dd1: DUP8
00003dd2: GAS
00003dd3: CALL
00003dd4: SWAP3
00003dd5: POP
00003dd6: POP
00003dd7: POP
00003dd8: RETURNDATASIZE
00003dd9: DUP1
00003dda: PUSH1 0x00
00003ddc: DUP2
00003ddd: EQ
00003dde: PUSH2 0x3e03
00003de1: JUMPI
00003de2: PUSH1 0x40
00003de4: MLOAD
00003de5: SWAP2
00003de6: POP
00003de7: PUSH1 0x1f
00003de9: NOT
00003dea: PUSH1 0x3f
00003dec: RETURNDATASIZE
00003ded: ADD
00003dee: AND
00003def: DUP3
00003df0: ADD
00003df1: PUSH1 0x40
00003df3: MSTORE
00003df4: RETURNDATASIZE
00003df5: DUP3
00003df6: MSTORE
00003df7: RETURNDATASIZE
00003df8: PUSH1 0x00
00003dfa: PUSH1 0x20
00003dfc: DUP5
00003dfd: ADD
00003dfe: RETURNDATACOPY
00003dff: PUSH2 0x3e08
00003e02: JUMP
00003e03: JUMPDEST
00003e04: PUSH1 0x60
00003e06: SWAP2
00003e07: POP
00003e08: JUMPDEST
00003e09: POP
00003e0a: SWAP2
00003e0b: POP
00003e0c: SWAP2
00003e0d: POP
00003e0e: PUSH2 0x3e19
00003e11: DUP8
00003e12: DUP4
00003e13: DUP4
00003e14: DUP8
00003e15: PUSH2 0x3e24
00003e18: JUMP
00003e19: JUMPDEST
00003e1a: SWAP8
00003e1b: SWAP7
00003e1c: POP
00003e1d: POP
00003e1e: POP
00003e1f: POP
00003e20: POP
00003e21: POP
00003e22: POP
00003e23: JUMP
00003e24: JUMPDEST
00003e25: PUSH1 0x60
00003e27: DUP4
00003e28: ISZERO
00003e29: PUSH2 0x3e91
00003e2c: JUMPI
00003e2d: DUP3
00003e2e: MLOAD
00003e2f: PUSH1 0x00
00003e31: SUB
00003e32: PUSH2 0x3e8a
00003e35: JUMPI
00003e36: PUSH2 0x3e3e
00003e39: DUP6
00003e3a: PUSH2 0x2b8e
00003e3d: JUMP
00003e3e: JUMPDEST
00003e3f: PUSH2 0x3e8a
00003e42: JUMPI
00003e43: PUSH1 0x40
00003e45: MLOAD
00003e46: PUSH3 0x461bcd
00003e4a: PUSH1 0xe5
00003e4c: SHL
00003e4d: DUP2
00003e4e: MSTORE
00003e4f: PUSH1 0x20
00003e51: PUSH1 0x04
00003e53: DUP3
00003e54: ADD
00003e55: MSTORE
00003e56: PUSH1 0x1d
00003e58: PUSH1 0x24
00003e5a: DUP3
00003e5b: ADD
00003e5c: MSTORE
00003e5d: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00003e7e: PUSH1 0x44
00003e80: DUP3
00003e81: ADD
00003e82: MSTORE
00003e83: PUSH1 0x64
00003e85: ADD
00003e86: PUSH2 0x0eb8
00003e89: JUMP
00003e8a: JUMPDEST
00003e8b: POP
00003e8c: DUP2
00003e8d: PUSH2 0x3caf
00003e90: JUMP
00003e91: JUMPDEST
00003e92: PUSH2 0x3caf
00003e95: DUP4
00003e96: DUP4
00003e97: DUP2
00003e98: MLOAD
00003e99: ISZERO
00003e9a: PUSH2 0x3ea6
00003e9d: JUMPI
00003e9e: DUP2
00003e9f: MLOAD
00003ea0: DUP1
00003ea1: DUP4
00003ea2: PUSH1 0x20
00003ea4: ADD
00003ea5: REVERT
00003ea6: JUMPDEST
00003ea7: DUP1
00003ea8: PUSH1 0x40
00003eaa: MLOAD
00003eab: PUSH3 0x461bcd
00003eaf: PUSH1 0xe5
00003eb1: SHL
00003eb2: DUP2
00003eb3: MSTORE
00003eb4: PUSH1 0x04
00003eb6: ADD
00003eb7: PUSH2 0x0eb8
00003eba: SWAP2
00003ebb: SWAP1
00003ebc: PUSH2 0x4fa5
00003ebf: JUMP
00003ec0: JUMPDEST
00003ec1: PUSH4 0x4e487b71
00003ec6: PUSH1 0xe0
00003ec8: SHL
00003ec9: PUSH1 0x00
00003ecb: MSTORE
00003ecc: PUSH1 0x21
00003ece: PUSH1 0x04
00003ed0: MSTORE
00003ed1: PUSH1 0x24
00003ed3: PUSH1 0x00
00003ed5: REVERT
00003ed6: JUMPDEST
00003ed7: PUSH1 0x60
00003ed9: DUP2
00003eda: ADD
00003edb: PUSH1 0x03
00003edd: DUP6
00003ede: LT
00003edf: PUSH2 0x3eea
00003ee2: JUMPI
00003ee3: PUSH2 0x3eea
00003ee6: PUSH2 0x3ec0
00003ee9: JUMP
00003eea: JUMPDEST
00003eeb: SWAP4
00003eec: DUP2
00003eed: MSTORE
00003eee: PUSH1 0x20
00003ef0: DUP2
00003ef1: ADD
00003ef2: SWAP3
00003ef3: SWAP1
00003ef4: SWAP3
00003ef5: MSTORE
00003ef6: PUSH1 0x40
00003ef8: SWAP1
00003ef9: SWAP2
00003efa: ADD
00003efb: MSTORE
00003efc: SWAP1
00003efd: JUMP
00003efe: JUMPDEST
00003eff: PUSH1 0x00
00003f01: JUMPDEST
00003f02: DUP4
00003f03: DUP2
00003f04: LT
00003f05: ISZERO
00003f06: PUSH2 0x3f19
00003f09: JUMPI
00003f0a: DUP2
00003f0b: DUP2
00003f0c: ADD
00003f0d: MLOAD
00003f0e: DUP4
00003f0f: DUP3
00003f10: ADD
00003f11: MSTORE
00003f12: PUSH1 0x20
00003f14: ADD
00003f15: PUSH2 0x3f01
00003f18: JUMP
00003f19: JUMPDEST
00003f1a: DUP4
00003f1b: DUP2
00003f1c: GT
00003f1d: ISZERO
00003f1e: PUSH2 0x18af
00003f21: JUMPI
00003f22: POP
00003f23: POP
00003f24: PUSH1 0x00
00003f26: SWAP2
00003f27: ADD
00003f28: MSTORE
00003f29: JUMP
00003f2a: JUMPDEST
00003f2b: PUSH1 0x00
00003f2d: DUP2
00003f2e: MLOAD
00003f2f: DUP1
00003f30: DUP5
00003f31: MSTORE
00003f32: PUSH2 0x3f42
00003f35: DUP2
00003f36: PUSH1 0x20
00003f38: DUP7
00003f39: ADD
00003f3a: PUSH1 0x20
00003f3c: DUP7
00003f3d: ADD
00003f3e: PUSH2 0x3efe
00003f41: JUMP
00003f42: JUMPDEST
00003f43: PUSH1 0x1f
00003f45: ADD
00003f46: PUSH1 0x1f
00003f48: NOT
00003f49: AND
00003f4a: SWAP3
00003f4b: SWAP1
00003f4c: SWAP3
00003f4d: ADD
00003f4e: PUSH1 0x20
00003f50: ADD
00003f51: SWAP3
00003f52: SWAP2
00003f53: POP
00003f54: POP
00003f55: JUMP
00003f56: JUMPDEST
00003f57: PUSH1 0x20
00003f59: DUP2
00003f5a: MSTORE
00003f5b: PUSH1 0x00
00003f5d: DUP3
00003f5e: MLOAD
00003f5f: PUSH4 0xffffffff
00003f64: PUSH1 0xe0
00003f66: SHL
00003f67: DUP2
00003f68: MLOAD
00003f69: AND
00003f6a: PUSH1 0x20
00003f6c: DUP5
00003f6d: ADD
00003f6e: MSTORE
00003f6f: PUSH1 0x01
00003f71: DUP1
00003f72: PUSH1 0x80
00003f74: SHL
00003f75: SUB
00003f76: NOT
00003f77: PUSH1 0x20
00003f79: DUP3
00003f7a: ADD
00003f7b: MLOAD
00003f7c: AND
00003f7d: PUSH1 0x40
00003f7f: DUP5
00003f80: ADD
00003f81: MSTORE
00003f82: POP
00003f83: PUSH1 0x20
00003f85: DUP4
00003f86: ADD
00003f87: MLOAD
00003f88: PUSH1 0x60
00003f8a: DUP1
00003f8b: DUP5
00003f8c: ADD
00003f8d: MSTORE
00003f8e: DUP1
00003f8f: MLOAD
00003f90: PUSH1 0x80
00003f92: DUP5
00003f93: ADD
00003f94: MSTORE
00003f95: PUSH1 0x20
00003f97: DUP2
00003f98: ADD
00003f99: MLOAD
00003f9a: PUSH1 0xa0
00003f9c: DUP5
00003f9d: ADD
00003f9e: MSTORE
00003f9f: PUSH1 0x40
00003fa1: DUP2
00003fa2: ADD
00003fa3: MLOAD
00003fa4: PUSH1 0x01
00003fa6: DUP1
00003fa7: PUSH1 0xa0
00003fa9: SHL
00003faa: SUB
00003fab: DUP1
00003fac: DUP3
00003fad: AND
00003fae: PUSH1 0xc0
00003fb0: DUP7
00003fb1: ADD
00003fb2: MSTORE
00003fb3: DUP1
00003fb4: PUSH1 0x60
00003fb6: DUP5
00003fb7: ADD
00003fb8: MLOAD
00003fb9: AND
00003fba: PUSH1 0xe0
00003fbc: DUP7
00003fbd: ADD
00003fbe: MSTORE
00003fbf: POP
00003fc0: POP
00003fc1: PUSH1 0x80
00003fc3: DUP2
00003fc4: ADD
00003fc5: MLOAD
00003fc6: PUSH2 0x0100
00003fc9: DUP5
00003fca: ADD
00003fcb: MSTORE
00003fcc: PUSH1 0xa0
00003fce: DUP2
00003fcf: ADD
00003fd0: MLOAD
00003fd1: SWAP1
00003fd2: POP
00003fd3: PUSH1 0xc0
00003fd5: PUSH2 0x0120
00003fd8: DUP5
00003fd9: ADD
00003fda: MSTORE
00003fdb: PUSH2 0x3caf
00003fde: PUSH2 0x0140
00003fe1: DUP5
00003fe2: ADD
00003fe3: DUP3
00003fe4: PUSH2 0x3f2a
00003fe7: JUMP
00003fe8: JUMPDEST
00003fe9: DUP1
00003fea: ISZERO
00003feb: ISZERO
00003fec: DUP2
00003fed: EQ
00003fee: PUSH2 0x1920
00003ff1: JUMPI
00003ff2: PUSH1 0x00
00003ff4: DUP1
00003ff5: REVERT
00003ff6: JUMPDEST
00003ff7: PUSH1 0x00
00003ff9: PUSH1 0x20
00003ffb: DUP3
00003ffc: DUP5
00003ffd: SUB
00003ffe: SLT
00003fff: ISZERO
00004000: PUSH2 0x4008
00004003: JUMPI
00004004: PUSH1 0x00
00004006: DUP1
00004007: REVERT
00004008: JUMPDEST
00004009: DUP2
0000400a: MLOAD
0000400b: PUSH2 0x2de6
0000400e: DUP2
0000400f: PUSH2 0x3fe8
00004012: JUMP
00004013: JUMPDEST
00004014: DUP1
00004015: CALLDATALOAD
00004016: PUSH1 0x01
00004018: PUSH1 0x01
0000401a: PUSH1 0xa0
0000401c: SHL
0000401d: SUB
0000401e: DUP2
0000401f: AND
00004020: DUP2
00004021: EQ
00004022: PUSH2 0x11e8
00004025: JUMPI
00004026: PUSH1 0x00
00004028: DUP1
00004029: REVERT
0000402a: JUMPDEST
0000402b: PUSH1 0x00
0000402d: PUSH1 0x20
0000402f: DUP3
00004030: DUP5
00004031: SUB
00004032: SLT
00004033: ISZERO
00004034: PUSH2 0x403c
00004037: JUMPI
00004038: PUSH1 0x00
0000403a: DUP1
0000403b: REVERT
0000403c: JUMPDEST
0000403d: PUSH2 0x2de6
00004040: DUP3
00004041: PUSH2 0x4013
00004044: JUMP
00004045: JUMPDEST
00004046: PUSH1 0x00
00004048: PUSH1 0x20
0000404a: DUP3
0000404b: DUP5
0000404c: SUB
0000404d: SLT
0000404e: ISZERO
0000404f: PUSH2 0x4057
00004052: JUMPI
00004053: PUSH1 0x00
00004055: DUP1
00004056: REVERT
00004057: JUMPDEST
00004058: POP
00004059: CALLDATALOAD
0000405a: SWAP2
0000405b: SWAP1
0000405c: POP
0000405d: JUMP
0000405e: JUMPDEST
0000405f: DUP1
00004060: CALLDATALOAD
00004061: PUSH1 0x01
00004063: PUSH1 0x01
00004065: PUSH1 0xe0
00004067: SHL
00004068: SUB
00004069: NOT
0000406a: DUP2
0000406b: AND
0000406c: DUP2
0000406d: EQ
0000406e: PUSH2 0x11e8
00004071: JUMPI
00004072: PUSH1 0x00
00004074: DUP1
00004075: REVERT
00004076: JUMPDEST
00004077: PUSH1 0x00
00004079: DUP1
0000407a: PUSH1 0x40
0000407c: DUP4
0000407d: DUP6
0000407e: SUB
0000407f: SLT
00004080: ISZERO
00004081: PUSH2 0x4089
00004084: JUMPI
00004085: PUSH1 0x00
00004087: DUP1
00004088: REVERT
00004089: JUMPDEST
0000408a: DUP3
0000408b: CALLDATALOAD
0000408c: SWAP2
0000408d: POP
0000408e: PUSH2 0x4099
00004091: PUSH1 0x20
00004093: DUP5
00004094: ADD
00004095: PUSH2 0x405e
00004098: JUMP
00004099: JUMPDEST
0000409a: SWAP1
0000409b: POP
0000409c: SWAP3
0000409d: POP
0000409e: SWAP3
0000409f: SWAP1
000040a0: POP
000040a1: JUMP
000040a2: JUMPDEST
000040a3: PUSH4 0x4e487b71
000040a8: PUSH1 0xe0
000040aa: SHL
000040ab: PUSH1 0x00
000040ad: MSTORE
000040ae: PUSH1 0x41
000040b0: PUSH1 0x04
000040b2: MSTORE
000040b3: PUSH1 0x24
000040b5: PUSH1 0x00
000040b7: REVERT
000040b8: JUMPDEST
000040b9: PUSH1 0x40
000040bb: DUP1
000040bc: MLOAD
000040bd: SWAP1
000040be: DUP2
000040bf: ADD
000040c0: PUSH1 0x01
000040c2: PUSH1 0x01
000040c4: PUSH1 0x40
000040c6: SHL
000040c7: SUB
000040c8: DUP2
000040c9: GT
000040ca: DUP3
000040cb: DUP3
000040cc: LT
000040cd: OR
000040ce: ISZERO
000040cf: PUSH2 0x40da
000040d2: JUMPI
000040d3: PUSH2 0x40da
000040d6: PUSH2 0x40a2
000040d9: JUMP
000040da: JUMPDEST
000040db: PUSH1 0x40
000040dd: MSTORE
000040de: SWAP1
000040df: JUMP
000040e0: JUMPDEST
000040e1: PUSH1 0x40
000040e3: MLOAD
000040e4: PUSH1 0xc0
000040e6: DUP2
000040e7: ADD
000040e8: PUSH1 0x01
000040ea: PUSH1 0x01
000040ec: PUSH1 0x40
000040ee: SHL
000040ef: SUB
000040f0: DUP2
000040f1: GT
000040f2: DUP3
000040f3: DUP3
000040f4: LT
000040f5: OR
000040f6: ISZERO
000040f7: PUSH2 0x40da
000040fa: JUMPI
000040fb: PUSH2 0x40da
000040fe: PUSH2 0x40a2
00004101: JUMP
00004102: JUMPDEST
00004103: PUSH1 0x40
00004105: MLOAD
00004106: PUSH1 0x1f
00004108: DUP3
00004109: ADD
0000410a: PUSH1 0x1f
0000410c: NOT
0000410d: AND
0000410e: DUP2
0000410f: ADD
00004110: PUSH1 0x01
00004112: PUSH1 0x01
00004114: PUSH1 0x40
00004116: SHL
00004117: SUB
00004118: DUP2
00004119: GT
0000411a: DUP3
0000411b: DUP3
0000411c: LT
0000411d: OR
0000411e: ISZERO
0000411f: PUSH2 0x412a
00004122: JUMPI
00004123: PUSH2 0x412a
00004126: PUSH2 0x40a2
00004129: JUMP
0000412a: JUMPDEST
0000412b: PUSH1 0x40
0000412d: MSTORE
0000412e: SWAP2
0000412f: SWAP1
00004130: POP
00004131: JUMP
00004132: JUMPDEST
00004133: PUSH1 0x00
00004135: PUSH1 0x01
00004137: PUSH1 0x01
00004139: PUSH1 0x40
0000413b: SHL
0000413c: SUB
0000413d: DUP3
0000413e: GT
0000413f: ISZERO
00004140: PUSH2 0x414b
00004143: JUMPI
00004144: PUSH2 0x414b
00004147: PUSH2 0x40a2
0000414a: JUMP
0000414b: JUMPDEST
0000414c: POP
0000414d: PUSH1 0x05
0000414f: SHL
00004150: PUSH1 0x20
00004152: ADD
00004153: SWAP1
00004154: JUMP
00004155: JUMPDEST
00004156: PUSH1 0x00
00004158: DUP3
00004159: PUSH1 0x1f
0000415b: DUP4
0000415c: ADD
0000415d: SLT
0000415e: PUSH2 0x4166
00004161: JUMPI
00004162: PUSH1 0x00
00004164: DUP1
00004165: REVERT
00004166: JUMPDEST
00004167: DUP2
00004168: CALLDATALOAD
00004169: PUSH1 0x20
0000416b: PUSH2 0x417b
0000416e: PUSH2 0x4176
00004171: DUP4
00004172: PUSH2 0x4132
00004175: JUMP
00004176: JUMPDEST
00004177: PUSH2 0x4102
0000417a: JUMP
0000417b: JUMPDEST
0000417c: DUP3
0000417d: DUP2
0000417e: MSTORE
0000417f: PUSH1 0x05
00004181: SWAP3
00004182: SWAP1
00004183: SWAP3
00004184: SHL
00004185: DUP5
00004186: ADD
00004187: DUP2
00004188: ADD
00004189: SWAP2
0000418a: DUP2
0000418b: DUP2
0000418c: ADD
0000418d: SWAP1
0000418e: DUP7
0000418f: DUP5
00004190: GT
00004191: ISZERO
00004192: PUSH2 0x419a
00004195: JUMPI
00004196: PUSH1 0x00
00004198: DUP1
00004199: REVERT
0000419a: JUMPDEST
0000419b: DUP3
0000419c: DUP7
0000419d: ADD
0000419e: JUMPDEST
0000419f: DUP5
000041a0: DUP2
000041a1: LT
000041a2: ISZERO
000041a3: PUSH2 0x41b5
000041a6: JUMPI
000041a7: DUP1
000041a8: CALLDATALOAD
000041a9: DUP4
000041aa: MSTORE
000041ab: SWAP2
000041ac: DUP4
000041ad: ADD
000041ae: SWAP2
000041af: DUP4
000041b0: ADD
000041b1: PUSH2 0x419e
000041b4: JUMP
000041b5: JUMPDEST
000041b6: POP
000041b7: SWAP7
000041b8: SWAP6
000041b9: POP
000041ba: POP
000041bb: POP
000041bc: POP
000041bd: POP
000041be: POP
000041bf: JUMP
000041c0: JUMPDEST
000041c1: DUP1
000041c2: CALLDATALOAD
000041c3: PUSH1 0x01
000041c5: PUSH1 0x01
000041c7: PUSH1 0x80
000041c9: SHL
000041ca: SUB
000041cb: NOT
000041cc: DUP2
000041cd: AND
000041ce: DUP2
000041cf: EQ
000041d0: PUSH2 0x11e8
000041d3: JUMPI
000041d4: PUSH1 0x00
000041d6: DUP1
000041d7: REVERT
000041d8: JUMPDEST
000041d9: PUSH1 0x00
000041db: DUP1
000041dc: PUSH1 0x40
000041de: DUP1
000041df: DUP5
000041e0: DUP7
000041e1: SUB
000041e2: SLT
000041e3: ISZERO
000041e4: PUSH2 0x41ec
000041e7: JUMPI
000041e8: PUSH1 0x00
000041ea: DUP1
000041eb: REVERT
000041ec: JUMPDEST
000041ed: DUP4
000041ee: CALLDATALOAD
000041ef: PUSH1 0x01
000041f1: PUSH1 0x01
000041f3: PUSH1 0x40
000041f5: SHL
000041f6: SUB
000041f7: DUP1
000041f8: DUP3
000041f9: GT
000041fa: ISZERO
000041fb: PUSH2 0x4203
000041fe: JUMPI
000041ff: PUSH1 0x00
00004201: DUP1
00004202: REVERT
00004203: JUMPDEST
00004204: PUSH2 0x420f
00004207: DUP8
00004208: DUP4
00004209: DUP9
0000420a: ADD
0000420b: PUSH2 0x4155
0000420e: JUMP
0000420f: JUMPDEST
00004210: SWAP5
00004211: POP
00004212: PUSH1 0x20
00004214: SWAP2
00004215: POP
00004216: DUP2
00004217: DUP7
00004218: ADD
00004219: CALLDATALOAD
0000421a: DUP2
0000421b: DUP2
0000421c: GT
0000421d: ISZERO
0000421e: PUSH2 0x4226
00004221: JUMPI
00004222: PUSH1 0x00
00004224: DUP1
00004225: REVERT
00004226: JUMPDEST
00004227: DUP7
00004228: ADD
00004229: PUSH1 0x1f
0000422b: DUP2
0000422c: ADD
0000422d: DUP9
0000422e: SGT
0000422f: PUSH2 0x4237
00004232: JUMPI
00004233: PUSH1 0x00
00004235: DUP1
00004236: REVERT
00004237: JUMPDEST
00004238: DUP1
00004239: CALLDATALOAD
0000423a: PUSH2 0x4245
0000423d: PUSH2 0x4176
00004240: DUP3
00004241: PUSH2 0x4132
00004244: JUMP
00004245: JUMPDEST
00004246: DUP2
00004247: DUP2
00004248: MSTORE
00004249: PUSH1 0x05
0000424b: SWAP2
0000424c: SWAP1
0000424d: SWAP2
0000424e: SHL
0000424f: DUP3
00004250: ADD
00004251: DUP5
00004252: ADD
00004253: SWAP1
00004254: DUP5
00004255: DUP2
00004256: ADD
00004257: SWAP1
00004258: DUP11
00004259: DUP4
0000425a: GT
0000425b: ISZERO
0000425c: PUSH2 0x4264
0000425f: JUMPI
00004260: PUSH1 0x00
00004262: DUP1
00004263: REVERT
00004264: JUMPDEST
00004265: DUP6
00004266: DUP5
00004267: ADD
00004268: JUMPDEST
00004269: DUP4
0000426a: DUP2
0000426b: LT
0000426c: ISZERO
0000426d: PUSH2 0x42f7
00004270: JUMPI
00004271: DUP1
00004272: CALLDATALOAD
00004273: DUP7
00004274: DUP2
00004275: GT
00004276: ISZERO
00004277: PUSH2 0x4280
0000427a: JUMPI
0000427b: PUSH1 0x00
0000427d: DUP1
0000427e: DUP2
0000427f: REVERT
00004280: JUMPDEST
00004281: DUP6
00004282: ADD
00004283: PUSH1 0x3f
00004285: DUP2
00004286: ADD
00004287: DUP14
00004288: SGT
00004289: PUSH2 0x4292
0000428c: JUMPI
0000428d: PUSH1 0x00
0000428f: DUP1
00004290: DUP2
00004291: REVERT
00004292: JUMPDEST
00004293: DUP8
00004294: DUP2
00004295: ADD
00004296: CALLDATALOAD
00004297: PUSH2 0x42a2
0000429a: PUSH2 0x4176
0000429d: DUP3
0000429e: PUSH2 0x4132
000042a1: JUMP
000042a2: JUMPDEST
000042a3: DUP2
000042a4: DUP2
000042a5: MSTORE
000042a6: PUSH1 0x05
000042a8: SWAP2
000042a9: SWAP1
000042aa: SWAP2
000042ab: SHL
000042ac: DUP3
000042ad: ADD
000042ae: DUP11
000042af: ADD
000042b0: SWAP1
000042b1: DUP10
000042b2: DUP2
000042b3: ADD
000042b4: SWAP1
000042b5: DUP16
000042b6: DUP4
000042b7: GT
000042b8: ISZERO
000042b9: PUSH2 0x42c2
000042bc: JUMPI
000042bd: PUSH1 0x00
000042bf: DUP1
000042c0: DUP2
000042c1: REVERT
000042c2: JUMPDEST
000042c3: SWAP3
000042c4: DUP12
000042c5: ADD
000042c6: SWAP3
000042c7: JUMPDEST
000042c8: DUP3
000042c9: DUP5
000042ca: LT
000042cb: ISZERO
000042cc: PUSH2 0x42e7
000042cf: JUMPI
000042d0: PUSH2 0x42d8
000042d3: DUP5
000042d4: PUSH2 0x41c0
000042d7: JUMP
000042d8: JUMPDEST
000042d9: DUP3
000042da: MSTORE
000042db: SWAP3
000042dc: DUP11
000042dd: ADD
000042de: SWAP3
000042df: SWAP1
000042e0: DUP11
000042e1: ADD
000042e2: SWAP1
000042e3: PUSH2 0x42c7
000042e6: JUMP
000042e7: JUMPDEST
000042e8: DUP7
000042e9: MSTORE
000042ea: POP
000042eb: POP
000042ec: POP
000042ed: SWAP2
000042ee: DUP7
000042ef: ADD
000042f0: SWAP2
000042f1: DUP7
000042f2: ADD
000042f3: PUSH2 0x4268
000042f6: JUMP
000042f7: JUMPDEST
000042f8: POP
000042f9: DUP1
000042fa: SWAP8
000042fb: POP
000042fc: POP
000042fd: POP
000042fe: POP
000042ff: POP
00004300: POP
00004301: POP
00004302: POP
00004303: SWAP3
00004304: POP
00004305: SWAP3
00004306: SWAP1
00004307: POP
00004308: JUMP
00004309: JUMPDEST
0000430a: PUSH1 0x20
0000430c: DUP1
0000430d: DUP3
0000430e: MSTORE
0000430f: DUP3
00004310: MLOAD
00004311: DUP3
00004312: DUP3
00004313: ADD
00004314: DUP2
00004315: SWAP1
00004316: MSTORE
00004317: PUSH1 0x00
00004319: SWAP2
0000431a: SWAP1
0000431b: DUP5
0000431c: DUP3
0000431d: ADD
0000431e: SWAP1
0000431f: PUSH1 0x40
00004321: DUP6
00004322: ADD
00004323: SWAP1
00004324: DUP5
00004325: JUMPDEST
00004326: DUP2
00004327: DUP2
00004328: LT
00004329: ISZERO
0000432a: PUSH2 0x434a
0000432d: JUMPI
0000432e: DUP4
0000432f: MLOAD
00004330: PUSH1 0x01
00004332: PUSH1 0x01
00004334: PUSH1 0xa0
00004336: SHL
00004337: SUB
00004338: AND
00004339: DUP4
0000433a: MSTORE
0000433b: SWAP3
0000433c: DUP5
0000433d: ADD
0000433e: SWAP3
0000433f: SWAP2
00004340: DUP5
00004341: ADD
00004342: SWAP2
00004343: PUSH1 0x01
00004345: ADD
00004346: PUSH2 0x4325
00004349: JUMP
0000434a: JUMPDEST
0000434b: POP
0000434c: SWAP1
0000434d: SWAP7
0000434e: SWAP6
0000434f: POP
00004350: POP
00004351: POP
00004352: POP
00004353: POP
00004354: POP
00004355: JUMP
00004356: JUMPDEST
00004357: PUSH1 0x00
00004359: PUSH1 0x40
0000435b: DUP3
0000435c: DUP5
0000435d: SUB
0000435e: SLT
0000435f: ISZERO
00004360: PUSH2 0x4368
00004363: JUMPI
00004364: PUSH1 0x00
00004366: DUP1
00004367: REVERT
00004368: JUMPDEST
00004369: PUSH2 0x4370
0000436c: PUSH2 0x40b8
0000436f: JUMP
00004370: JUMPDEST
00004371: SWAP1
00004372: POP
00004373: PUSH2 0x437b
00004376: DUP3
00004377: PUSH2 0x405e
0000437a: JUMP
0000437b: JUMPDEST
0000437c: DUP2
0000437d: MSTORE
0000437e: PUSH2 0x4389
00004381: PUSH1 0x20
00004383: DUP4
00004384: ADD
00004385: PUSH2 0x41c0
00004388: JUMP
00004389: JUMPDEST
0000438a: PUSH1 0x20
0000438c: DUP3
0000438d: ADD
0000438e: MSTORE
0000438f: SWAP3
00004390: SWAP2
00004391: POP
00004392: POP
00004393: JUMP
00004394: JUMPDEST
00004395: PUSH1 0x00
00004397: PUSH1 0xc0
00004399: DUP3
0000439a: DUP5
0000439b: SUB
0000439c: SLT
0000439d: ISZERO
0000439e: PUSH2 0x43a6
000043a1: JUMPI
000043a2: PUSH1 0x00
000043a4: DUP1
000043a5: REVERT
000043a6: JUMPDEST
000043a7: PUSH2 0x43ae
000043aa: PUSH2 0x40e0
000043ad: JUMP
000043ae: JUMPDEST
000043af: SWAP1
000043b0: POP
000043b1: DUP2
000043b2: CALLDATALOAD
000043b3: DUP2
000043b4: MSTORE
000043b5: PUSH1 0x20
000043b7: DUP1
000043b8: DUP4
000043b9: ADD
000043ba: CALLDATALOAD
000043bb: DUP2
000043bc: DUP4
000043bd: ADD
000043be: MSTORE
000043bf: PUSH2 0x43ca
000043c2: PUSH1 0x40
000043c4: DUP5
000043c5: ADD
000043c6: PUSH2 0x4013
000043c9: JUMP
000043ca: JUMPDEST
000043cb: PUSH1 0x40
000043cd: DUP4
000043ce: ADD
000043cf: MSTORE
000043d0: PUSH2 0x43db
000043d3: PUSH1 0x60
000043d5: DUP5
000043d6: ADD
000043d7: PUSH2 0x4013
000043da: JUMP
000043db: JUMPDEST
000043dc: PUSH1 0x60
000043de: DUP4
000043df: ADD
000043e0: MSTORE
000043e1: PUSH1 0x80
000043e3: DUP4
000043e4: DUP2
000043e5: ADD
000043e6: CALLDATALOAD
000043e7: SWAP1
000043e8: DUP4
000043e9: ADD
000043ea: MSTORE
000043eb: PUSH1 0xa0
000043ed: DUP4
000043ee: ADD
000043ef: CALLDATALOAD
000043f0: PUSH1 0x01
000043f2: PUSH1 0x01
000043f4: PUSH1 0x40
000043f6: SHL
000043f7: SUB
000043f8: DUP1
000043f9: DUP3
000043fa: GT
000043fb: ISZERO
000043fc: PUSH2 0x4404
000043ff: JUMPI
00004400: PUSH1 0x00
00004402: DUP1
00004403: REVERT
00004404: JUMPDEST
00004405: DUP2
00004406: DUP6
00004407: ADD
00004408: SWAP2
00004409: POP
0000440a: DUP6
0000440b: PUSH1 0x1f
0000440d: DUP4
0000440e: ADD
0000440f: SLT
00004410: PUSH2 0x4418
00004413: JUMPI
00004414: PUSH1 0x00
00004416: DUP1
00004417: REVERT
00004418: JUMPDEST
00004419: DUP2
0000441a: CALLDATALOAD
0000441b: DUP2
0000441c: DUP2
0000441d: GT
0000441e: ISZERO
0000441f: PUSH2 0x442a
00004422: JUMPI
00004423: PUSH2 0x442a
00004426: PUSH2 0x40a2
00004429: JUMP
0000442a: JUMPDEST
0000442b: PUSH2 0x443c
0000442e: PUSH1 0x1f
00004430: DUP3
00004431: ADD
00004432: PUSH1 0x1f
00004434: NOT
00004435: AND
00004436: DUP6
00004437: ADD
00004438: PUSH2 0x4102
0000443b: JUMP
0000443c: JUMPDEST
0000443d: SWAP2
0000443e: POP
0000443f: DUP1
00004440: DUP3
00004441: MSTORE
00004442: DUP7
00004443: DUP5
00004444: DUP3
00004445: DUP6
00004446: ADD
00004447: ADD
00004448: GT
00004449: ISZERO
0000444a: PUSH2 0x4452
0000444d: JUMPI
0000444e: PUSH1 0x00
00004450: DUP1
00004451: REVERT
00004452: JUMPDEST
00004453: DUP1
00004454: DUP5
00004455: DUP5
00004456: ADD
00004457: DUP6
00004458: DUP5
00004459: ADD
0000445a: CALLDATACOPY
0000445b: PUSH1 0x00
0000445d: DUP5
0000445e: DUP3
0000445f: DUP5
00004460: ADD
00004461: ADD
00004462: MSTORE
00004463: POP
00004464: DUP1
00004465: PUSH1 0xa0
00004467: DUP6
00004468: ADD
00004469: MSTORE
0000446a: POP
0000446b: POP
0000446c: POP
0000446d: SWAP3
0000446e: SWAP2
0000446f: POP
00004470: POP
00004471: JUMP
00004472: JUMPDEST
00004473: PUSH1 0x00
00004475: PUSH1 0x20
00004477: DUP3
00004478: DUP5
00004479: SUB
0000447a: SLT
0000447b: ISZERO
0000447c: PUSH2 0x4484
0000447f: JUMPI
00004480: PUSH1 0x00
00004482: DUP1
00004483: REVERT
00004484: JUMPDEST
00004485: DUP2
00004486: CALLDATALOAD
00004487: PUSH1 0x01
00004489: PUSH1 0x01
0000448b: PUSH1 0x40
0000448d: SHL
0000448e: SUB
0000448f: DUP1
00004490: DUP3
00004491: GT
00004492: ISZERO
00004493: PUSH2 0x449b
00004496: JUMPI
00004497: PUSH1 0x00
00004499: DUP1
0000449a: REVERT
0000449b: JUMPDEST
0000449c: SWAP1
0000449d: DUP4
0000449e: ADD
0000449f: SWAP1
000044a0: PUSH1 0x60
000044a2: DUP3
000044a3: DUP7
000044a4: SUB
000044a5: SLT
000044a6: ISZERO
000044a7: PUSH2 0x44af
000044aa: JUMPI
000044ab: PUSH1 0x00
000044ad: DUP1
000044ae: REVERT
000044af: JUMPDEST
000044b0: PUSH2 0x44b7
000044b3: PUSH2 0x40b8
000044b6: JUMP
000044b7: JUMPDEST
000044b8: PUSH2 0x44c1
000044bb: DUP7
000044bc: DUP5
000044bd: PUSH2 0x4356
000044c0: JUMP
000044c1: JUMPDEST
000044c2: DUP2
000044c3: MSTORE
000044c4: PUSH1 0x40
000044c6: DUP4
000044c7: ADD
000044c8: CALLDATALOAD
000044c9: DUP3
000044ca: DUP2
000044cb: GT
000044cc: ISZERO
000044cd: PUSH2 0x44d5
000044d0: JUMPI
000044d1: PUSH1 0x00
000044d3: DUP1
000044d4: REVERT
000044d5: JUMPDEST
000044d6: PUSH2 0x44e1
000044d9: DUP8
000044da: DUP3
000044db: DUP7
000044dc: ADD
000044dd: PUSH2 0x4394
000044e0: JUMP
000044e1: JUMPDEST
000044e2: PUSH1 0x20
000044e4: DUP4
000044e5: ADD
000044e6: MSTORE
000044e7: POP
000044e8: SWAP6
000044e9: SWAP5
000044ea: POP
000044eb: POP
000044ec: POP
000044ed: POP
000044ee: POP
000044ef: JUMP
000044f0: JUMPDEST
000044f1: PUSH1 0x00
000044f3: DUP1
000044f4: PUSH1 0x40
000044f6: DUP4
000044f7: DUP6
000044f8: SUB
000044f9: SLT
000044fa: ISZERO
000044fb: PUSH2 0x4503
000044fe: JUMPI
000044ff: PUSH1 0x00
00004501: DUP1
00004502: REVERT
00004503: JUMPDEST
00004504: DUP3
00004505: CALLDATALOAD
00004506: SWAP2
00004507: POP
00004508: PUSH2 0x4099
0000450b: PUSH1 0x20
0000450d: DUP5
0000450e: ADD
0000450f: PUSH2 0x41c0
00004512: JUMP
00004513: JUMPDEST
00004514: PUSH1 0x00
00004516: DUP1
00004517: DUP4
00004518: PUSH1 0x1f
0000451a: DUP5
0000451b: ADD
0000451c: SLT
0000451d: PUSH2 0x4525
00004520: JUMPI
00004521: PUSH1 0x00
00004523: DUP1
00004524: REVERT
00004525: JUMPDEST
00004526: POP
00004527: DUP2
00004528: CALLDATALOAD
00004529: PUSH1 0x01
0000452b: PUSH1 0x01
0000452d: PUSH1 0x40
0000452f: SHL
00004530: SUB
00004531: DUP2
00004532: GT
00004533: ISZERO
00004534: PUSH2 0x453c
00004537: JUMPI
00004538: PUSH1 0x00
0000453a: DUP1
0000453b: REVERT
0000453c: JUMPDEST
0000453d: PUSH1 0x20
0000453f: DUP4
00004540: ADD
00004541: SWAP2
00004542: POP
00004543: DUP4
00004544: PUSH1 0x20
00004546: DUP3
00004547: PUSH1 0x05
00004549: SHL
0000454a: DUP6
0000454b: ADD
0000454c: ADD
0000454d: GT
0000454e: ISZERO
0000454f: PUSH2 0x4557
00004552: JUMPI
00004553: PUSH1 0x00
00004555: DUP1
00004556: REVERT
00004557: JUMPDEST
00004558: SWAP3
00004559: POP
0000455a: SWAP3
0000455b: SWAP1
0000455c: POP
0000455d: JUMP
0000455e: JUMPDEST
0000455f: PUSH1 0x00
00004561: DUP1
00004562: PUSH1 0x00
00004564: DUP1
00004565: PUSH1 0x40
00004567: DUP6
00004568: DUP8
00004569: SUB
0000456a: SLT
0000456b: ISZERO
0000456c: PUSH2 0x4574
0000456f: JUMPI
00004570: PUSH1 0x00
00004572: DUP1
00004573: REVERT
00004574: JUMPDEST
00004575: DUP5
00004576: CALLDATALOAD
00004577: PUSH1 0x01
00004579: PUSH1 0x01
0000457b: PUSH1 0x40
0000457d: SHL
0000457e: SUB
0000457f: DUP1
00004580: DUP3
00004581: GT
00004582: ISZERO
00004583: PUSH2 0x458b
00004586: JUMPI
00004587: PUSH1 0x00
00004589: DUP1
0000458a: REVERT
0000458b: JUMPDEST
0000458c: PUSH2 0x4597
0000458f: DUP9
00004590: DUP4
00004591: DUP10
00004592: ADD
00004593: PUSH2 0x4513
00004596: JUMP
00004597: JUMPDEST
00004598: SWAP1
00004599: SWAP7
0000459a: POP
0000459b: SWAP5
0000459c: POP
0000459d: PUSH1 0x20
0000459f: DUP8
000045a0: ADD
000045a1: CALLDATALOAD
000045a2: SWAP2
000045a3: POP
000045a4: DUP1
000045a5: DUP3
000045a6: GT
000045a7: ISZERO
000045a8: PUSH2 0x45b0
000045ab: JUMPI
000045ac: PUSH1 0x00
000045ae: DUP1
000045af: REVERT
000045b0: JUMPDEST
000045b1: DUP2
000045b2: DUP8
000045b3: ADD
000045b4: SWAP2
000045b5: POP
000045b6: DUP8
000045b7: PUSH1 0x1f
000045b9: DUP4
000045ba: ADD
000045bb: SLT
000045bc: PUSH2 0x45c4
000045bf: JUMPI
000045c0: PUSH1 0x00
000045c2: DUP1
000045c3: REVERT
000045c4: JUMPDEST
000045c5: DUP2
000045c6: CALLDATALOAD
000045c7: DUP2
000045c8: DUP2
000045c9: GT
000045ca: ISZERO
000045cb: PUSH2 0x45d3
000045ce: JUMPI
000045cf: PUSH1 0x00
000045d1: DUP1
000045d2: REVERT
000045d3: JUMPDEST
000045d4: DUP9
000045d5: PUSH1 0x20
000045d7: PUSH1 0x60
000045d9: DUP4
000045da: MUL
000045db: DUP6
000045dc: ADD
000045dd: ADD
000045de: GT
000045df: ISZERO
000045e0: PUSH2 0x45e8
000045e3: JUMPI
000045e4: PUSH1 0x00
000045e6: DUP1
000045e7: REVERT
000045e8: JUMPDEST
000045e9: SWAP6
000045ea: SWAP9
000045eb: SWAP5
000045ec: SWAP8
000045ed: POP
000045ee: POP
000045ef: PUSH1 0x20
000045f1: ADD
000045f2: SWAP5
000045f3: POP
000045f4: POP
000045f5: POP
000045f6: JUMP
000045f7: JUMPDEST
000045f8: PUSH1 0x00
000045fa: DUP1
000045fb: PUSH1 0x40
000045fd: DUP4
000045fe: DUP6
000045ff: SUB
00004600: SLT
00004601: ISZERO
00004602: PUSH2 0x460a
00004605: JUMPI
00004606: PUSH1 0x00
00004608: DUP1
00004609: REVERT
0000460a: JUMPDEST
0000460b: DUP3
0000460c: CALLDATALOAD
0000460d: SWAP2
0000460e: POP
0000460f: PUSH2 0x4099
00004612: PUSH1 0x20
00004614: DUP5
00004615: ADD
00004616: PUSH2 0x4013
00004619: JUMP
0000461a: JUMPDEST
0000461b: PUSH1 0x00
0000461d: DUP1
0000461e: PUSH1 0x40
00004620: DUP4
00004621: DUP6
00004622: SUB
00004623: SLT
00004624: ISZERO
00004625: PUSH2 0x462d
00004628: JUMPI
00004629: PUSH1 0x00
0000462b: DUP1
0000462c: REVERT
0000462d: JUMPDEST
0000462e: DUP3
0000462f: CALLDATALOAD
00004630: PUSH1 0x01
00004632: PUSH1 0x01
00004634: PUSH1 0x40
00004636: SHL
00004637: SUB
00004638: DUP1
00004639: DUP3
0000463a: GT
0000463b: ISZERO
0000463c: PUSH2 0x4644
0000463f: JUMPI
00004640: PUSH1 0x00
00004642: DUP1
00004643: REVERT
00004644: JUMPDEST
00004645: PUSH2 0x4650
00004648: DUP7
00004649: DUP4
0000464a: DUP8
0000464b: ADD
0000464c: PUSH2 0x4155
0000464f: JUMP
00004650: JUMPDEST
00004651: SWAP4
00004652: POP
00004653: PUSH1 0x20
00004655: DUP6
00004656: ADD
00004657: CALLDATALOAD
00004658: SWAP2
00004659: POP
0000465a: DUP1
0000465b: DUP3
0000465c: GT
0000465d: ISZERO
0000465e: PUSH2 0x4666
00004661: JUMPI
00004662: PUSH1 0x00
00004664: DUP1
00004665: REVERT
00004666: JUMPDEST
00004667: POP
00004668: PUSH2 0x4673
0000466b: DUP6
0000466c: DUP3
0000466d: DUP7
0000466e: ADD
0000466f: PUSH2 0x4155
00004672: JUMP
00004673: JUMPDEST
00004674: SWAP2
00004675: POP
00004676: POP
00004677: SWAP3
00004678: POP
00004679: SWAP3
0000467a: SWAP1
0000467b: POP
0000467c: JUMP
0000467d: JUMPDEST
0000467e: PUSH1 0x00
00004680: DUP1
00004681: PUSH1 0x40
00004683: DUP4
00004684: DUP6
00004685: SUB
00004686: SLT
00004687: ISZERO
00004688: PUSH2 0x4690
0000468b: JUMPI
0000468c: PUSH1 0x00
0000468e: DUP1
0000468f: REVERT
00004690: JUMPDEST
00004691: POP
00004692: POP
00004693: DUP1
00004694: CALLDATALOAD
00004695: SWAP3
00004696: PUSH1 0x20
00004698: SWAP1
00004699: SWAP2
0000469a: ADD
0000469b: CALLDATALOAD
0000469c: SWAP2
0000469d: POP
0000469e: JUMP
0000469f: JUMPDEST
000046a0: PUSH1 0x00
000046a2: DUP1
000046a3: PUSH1 0x60
000046a5: DUP4
000046a6: DUP6
000046a7: SUB
000046a8: SLT
000046a9: ISZERO
000046aa: PUSH2 0x46b2
000046ad: JUMPI
000046ae: PUSH1 0x00
000046b0: DUP1
000046b1: REVERT
000046b2: JUMPDEST
000046b3: PUSH2 0x46bc
000046b6: DUP5
000046b7: DUP5
000046b8: PUSH2 0x4356
000046bb: JUMP
000046bc: JUMPDEST
000046bd: SWAP2
000046be: POP
000046bf: PUSH1 0x40
000046c1: DUP4
000046c2: ADD
000046c3: CALLDATALOAD
000046c4: PUSH1 0x01
000046c6: PUSH1 0x01
000046c8: PUSH1 0x40
000046ca: SHL
000046cb: SUB
000046cc: DUP2
000046cd: GT
000046ce: ISZERO
000046cf: PUSH2 0x46d7
000046d2: JUMPI
000046d3: PUSH1 0x00
000046d5: DUP1
000046d6: REVERT
000046d7: JUMPDEST
000046d8: PUSH2 0x4673
000046db: DUP6
000046dc: DUP3
000046dd: DUP7
000046de: ADD
000046df: PUSH2 0x4394
000046e2: JUMP
000046e3: JUMPDEST
000046e4: PUSH1 0x00
000046e6: DUP3
000046e7: PUSH1 0x1f
000046e9: DUP4
000046ea: ADD
000046eb: SLT
000046ec: PUSH2 0x46f4
000046ef: JUMPI
000046f0: PUSH1 0x00
000046f2: DUP1
000046f3: REVERT
000046f4: JUMPDEST
000046f5: DUP2
000046f6: CALLDATALOAD
000046f7: PUSH1 0x20
000046f9: PUSH2 0x4704
000046fc: PUSH2 0x4176
000046ff: DUP4
00004700: PUSH2 0x4132
00004703: JUMP
00004704: JUMPDEST
00004705: DUP3
00004706: DUP2
00004707: MSTORE
00004708: PUSH1 0x05
0000470a: SWAP3
0000470b: SWAP1
0000470c: SWAP3
0000470d: SHL
0000470e: DUP5
0000470f: ADD
00004710: DUP2
00004711: ADD
00004712: SWAP2
00004713: DUP2
00004714: DUP2
00004715: ADD
00004716: SWAP1
00004717: DUP7
00004718: DUP5
00004719: GT
0000471a: ISZERO
0000471b: PUSH2 0x4723
0000471e: JUMPI
0000471f: PUSH1 0x00
00004721: DUP1
00004722: REVERT
00004723: JUMPDEST
00004724: DUP3
00004725: DUP7
00004726: ADD
00004727: JUMPDEST
00004728: DUP5
00004729: DUP2
0000472a: LT
0000472b: ISZERO
0000472c: PUSH2 0x41b5
0000472f: JUMPI
00004730: PUSH2 0x4738
00004733: DUP2
00004734: PUSH2 0x4013
00004737: JUMP
00004738: JUMPDEST
00004739: DUP4
0000473a: MSTORE
0000473b: SWAP2
0000473c: DUP4
0000473d: ADD
0000473e: SWAP2
0000473f: DUP4
00004740: ADD
00004741: PUSH2 0x4727
00004744: JUMP
00004745: JUMPDEST
00004746: PUSH1 0x00
00004748: DUP1
00004749: PUSH1 0x40
0000474b: DUP4
0000474c: DUP6
0000474d: SUB
0000474e: SLT
0000474f: ISZERO
00004750: PUSH2 0x4758
00004753: JUMPI
00004754: PUSH1 0x00
00004756: DUP1
00004757: REVERT
00004758: JUMPDEST
00004759: DUP3
0000475a: CALLDATALOAD
0000475b: PUSH1 0x01
0000475d: PUSH1 0x01
0000475f: PUSH1 0x40
00004761: SHL
00004762: SUB
00004763: DUP1
00004764: DUP3
00004765: GT
00004766: ISZERO
00004767: PUSH2 0x476f
0000476a: JUMPI
0000476b: PUSH1 0x00
0000476d: DUP1
0000476e: REVERT
0000476f: JUMPDEST
00004770: PUSH2 0x477b
00004773: DUP7
00004774: DUP4
00004775: DUP8
00004776: ADD
00004777: PUSH2 0x46e3
0000477a: JUMP
0000477b: JUMPDEST
0000477c: SWAP4
0000477d: POP
0000477e: PUSH1 0x20
00004780: DUP6
00004781: ADD
00004782: CALLDATALOAD
00004783: SWAP2
00004784: POP
00004785: DUP1
00004786: DUP3
00004787: GT
00004788: ISZERO
00004789: PUSH2 0x4791
0000478c: JUMPI
0000478d: PUSH1 0x00
0000478f: DUP1
00004790: REVERT
00004791: JUMPDEST
00004792: POP
00004793: PUSH2 0x4673
00004796: DUP6
00004797: DUP3
00004798: DUP7
00004799: ADD
0000479a: PUSH2 0x46e3
0000479d: JUMP
0000479e: JUMPDEST
0000479f: PUSH1 0x00
000047a1: DUP1
000047a2: PUSH1 0x00
000047a4: PUSH1 0x60
000047a6: DUP5
000047a7: DUP7
000047a8: SUB
000047a9: SLT
000047aa: ISZERO
000047ab: PUSH2 0x47b3
000047ae: JUMPI
000047af: PUSH1 0x00
000047b1: DUP1
000047b2: REVERT
000047b3: JUMPDEST
000047b4: DUP4
000047b5: CALLDATALOAD
000047b6: PUSH1 0x01
000047b8: PUSH1 0x01
000047ba: PUSH1 0x40
000047bc: SHL
000047bd: SUB
000047be: DUP1
000047bf: DUP3
000047c0: GT
000047c1: ISZERO
000047c2: PUSH2 0x47ca
000047c5: JUMPI
000047c6: PUSH1 0x00
000047c8: DUP1
000047c9: REVERT
000047ca: JUMPDEST
000047cb: PUSH2 0x47d6
000047ce: DUP8
000047cf: DUP4
000047d0: DUP9
000047d1: ADD
000047d2: PUSH2 0x4155
000047d5: JUMP
000047d6: JUMPDEST
000047d7: SWAP5
000047d8: POP
000047d9: PUSH1 0x20
000047db: SWAP2
000047dc: POP
000047dd: DUP2
000047de: DUP7
000047df: ADD
000047e0: CALLDATALOAD
000047e1: DUP2
000047e2: DUP2
000047e3: GT
000047e4: ISZERO
000047e5: PUSH2 0x47ed
000047e8: JUMPI
000047e9: PUSH1 0x00
000047eb: DUP1
000047ec: REVERT
000047ed: JUMPDEST
000047ee: DUP7
000047ef: ADD
000047f0: PUSH1 0x1f
000047f2: DUP2
000047f3: ADD
000047f4: DUP9
000047f5: SGT
000047f6: PUSH2 0x47fe
000047f9: JUMPI
000047fa: PUSH1 0x00
000047fc: DUP1
000047fd: REVERT
000047fe: JUMPDEST
000047ff: DUP1
00004800: CALLDATALOAD
00004801: PUSH2 0x480c
00004804: PUSH2 0x4176
00004807: DUP3
00004808: PUSH2 0x4132
0000480b: JUMP
0000480c: JUMPDEST
0000480d: DUP2
0000480e: DUP2
0000480f: MSTORE
00004810: PUSH1 0x05
00004812: SWAP2
00004813: SWAP1
00004814: SWAP2
00004815: SHL
00004816: DUP3
00004817: ADD
00004818: DUP5
00004819: ADD
0000481a: SWAP1
0000481b: DUP5
0000481c: DUP2
0000481d: ADD
0000481e: SWAP1
0000481f: DUP11
00004820: DUP4
00004821: GT
00004822: ISZERO
00004823: PUSH2 0x482b
00004826: JUMPI
00004827: PUSH1 0x00
00004829: DUP1
0000482a: REVERT
0000482b: JUMPDEST
0000482c: SWAP3
0000482d: DUP6
0000482e: ADD
0000482f: SWAP3
00004830: JUMPDEST
00004831: DUP3
00004832: DUP5
00004833: LT
00004834: ISZERO
00004835: PUSH2 0x4850
00004838: JUMPI
00004839: PUSH2 0x4841
0000483c: DUP5
0000483d: PUSH2 0x405e
00004840: JUMP
00004841: JUMPDEST
00004842: DUP3
00004843: MSTORE
00004844: SWAP3
00004845: DUP6
00004846: ADD
00004847: SWAP3
00004848: SWAP1
00004849: DUP6
0000484a: ADD
0000484b: SWAP1
0000484c: PUSH2 0x4830
0000484f: JUMP
00004850: JUMPDEST
00004851: SWAP7
00004852: POP
00004853: POP
00004854: POP
00004855: POP
00004856: PUSH1 0x40
00004858: DUP7
00004859: ADD
0000485a: CALLDATALOAD
0000485b: SWAP2
0000485c: POP
0000485d: DUP1
0000485e: DUP3
0000485f: GT
00004860: ISZERO
00004861: PUSH2 0x4869
00004864: JUMPI
00004865: PUSH1 0x00
00004867: DUP1
00004868: REVERT
00004869: JUMPDEST
0000486a: POP
0000486b: PUSH2 0x4876
0000486e: DUP7
0000486f: DUP3
00004870: DUP8
00004871: ADD
00004872: PUSH2 0x4155
00004875: JUMP
00004876: JUMPDEST
00004877: SWAP2
00004878: POP
00004879: POP
0000487a: SWAP3
0000487b: POP
0000487c: SWAP3
0000487d: POP
0000487e: SWAP3
0000487f: JUMP
00004880: JUMPDEST
00004881: PUSH1 0x00
00004883: DUP1
00004884: PUSH1 0x00
00004886: DUP1
00004887: PUSH1 0x40
00004889: DUP6
0000488a: DUP8
0000488b: SUB
0000488c: SLT
0000488d: ISZERO
0000488e: PUSH2 0x4896
00004891: JUMPI
00004892: PUSH1 0x00
00004894: DUP1
00004895: REVERT
00004896: JUMPDEST
00004897: DUP5
00004898: CALLDATALOAD
00004899: PUSH1 0x01
0000489b: PUSH1 0x01
0000489d: PUSH1 0x40
0000489f: SHL
000048a0: SUB
000048a1: DUP1
000048a2: DUP3
000048a3: GT
000048a4: ISZERO
000048a5: PUSH2 0x48ad
000048a8: JUMPI
000048a9: PUSH1 0x00
000048ab: DUP1
000048ac: REVERT
000048ad: JUMPDEST
000048ae: PUSH2 0x48b9
000048b1: DUP9
000048b2: DUP4
000048b3: DUP10
000048b4: ADD
000048b5: PUSH2 0x4513
000048b8: JUMP
000048b9: JUMPDEST
000048ba: SWAP1
000048bb: SWAP7
000048bc: POP
000048bd: SWAP5
000048be: POP
000048bf: PUSH1 0x20
000048c1: DUP8
000048c2: ADD
000048c3: CALLDATALOAD
000048c4: SWAP2
000048c5: POP
000048c6: DUP1
000048c7: DUP3
000048c8: GT
000048c9: ISZERO
000048ca: PUSH2 0x48d2
000048cd: JUMPI
000048ce: PUSH1 0x00
000048d0: DUP1
000048d1: REVERT
000048d2: JUMPDEST
000048d3: POP
000048d4: PUSH2 0x48df
000048d7: DUP8
000048d8: DUP3
000048d9: DUP9
000048da: ADD
000048db: PUSH2 0x4513
000048de: JUMP
000048df: JUMPDEST
000048e0: SWAP6
000048e1: SWAP9
000048e2: SWAP5
000048e3: SWAP8
000048e4: POP
000048e5: SWAP6
000048e6: POP
000048e7: POP
000048e8: POP
000048e9: POP
000048ea: JUMP
000048eb: JUMPDEST
000048ec: PUSH1 0x00
000048ee: DUP1
000048ef: PUSH1 0x40
000048f1: DUP4
000048f2: DUP6
000048f3: SUB
000048f4: SLT
000048f5: ISZERO
000048f6: PUSH2 0x48fe
000048f9: JUMPI
000048fa: PUSH1 0x00
000048fc: DUP1
000048fd: REVERT
000048fe: JUMPDEST
000048ff: PUSH2 0x4907
00004902: DUP4
00004903: PUSH2 0x4013
00004906: JUMP
00004907: JUMPDEST
00004908: SWAP5
00004909: PUSH1 0x20
0000490b: SWAP4
0000490c: SWAP1
0000490d: SWAP4
0000490e: ADD
0000490f: CALLDATALOAD
00004910: SWAP4
00004911: POP
00004912: POP
00004913: POP
00004914: JUMP
00004915: JUMPDEST
00004916: PUSH1 0x00
00004918: PUSH1 0x20
0000491a: DUP3
0000491b: DUP5
0000491c: SUB
0000491d: SLT
0000491e: ISZERO
0000491f: PUSH2 0x4927
00004922: JUMPI
00004923: PUSH1 0x00
00004925: DUP1
00004926: REVERT
00004927: JUMPDEST
00004928: DUP2
00004929: CALLDATALOAD
0000492a: PUSH2 0x2de6
0000492d: DUP2
0000492e: PUSH2 0x3fe8
00004931: JUMP
00004932: JUMPDEST
00004933: PUSH1 0x00
00004935: PUSH1 0x20
00004937: DUP3
00004938: DUP5
00004939: SUB
0000493a: SLT
0000493b: ISZERO
0000493c: PUSH2 0x4944
0000493f: JUMPI
00004940: PUSH1 0x00
00004942: DUP1
00004943: REVERT
00004944: JUMPDEST
00004945: DUP2
00004946: CALLDATALOAD
00004947: PUSH1 0x01
00004949: PUSH1 0x01
0000494b: PUSH1 0x40
0000494d: SHL
0000494e: SUB
0000494f: DUP2
00004950: GT
00004951: ISZERO
00004952: PUSH2 0x495a
00004955: JUMPI
00004956: PUSH1 0x00
00004958: DUP1
00004959: REVERT
0000495a: JUMPDEST
0000495b: PUSH2 0x3caf
0000495e: DUP5
0000495f: DUP3
00004960: DUP6
00004961: ADD
00004962: PUSH2 0x4394
00004965: JUMP
00004966: JUMPDEST
00004967: PUSH1 0x00
00004969: DUP1
0000496a: PUSH1 0x20
0000496c: DUP4
0000496d: DUP6
0000496e: SUB
0000496f: SLT
00004970: ISZERO
00004971: PUSH2 0x4979
00004974: JUMPI
00004975: PUSH1 0x00
00004977: DUP1
00004978: REVERT
00004979: JUMPDEST
0000497a: DUP3
0000497b: CALLDATALOAD
0000497c: PUSH1 0x01
0000497e: PUSH1 0x01
00004980: PUSH1 0x40
00004982: SHL
00004983: SUB
00004984: DUP2
00004985: GT
00004986: ISZERO
00004987: PUSH2 0x498f
0000498a: JUMPI
0000498b: PUSH1 0x00
0000498d: DUP1
0000498e: REVERT
0000498f: JUMPDEST
00004990: PUSH2 0x499b
00004993: DUP6
00004994: DUP3
00004995: DUP7
00004996: ADD
00004997: PUSH2 0x4513
0000499a: JUMP
0000499b: JUMPDEST
0000499c: SWAP1
0000499d: SWAP7
0000499e: SWAP1
0000499f: SWAP6
000049a0: POP
000049a1: SWAP4
000049a2: POP
000049a3: POP
000049a4: POP
000049a5: POP
000049a6: JUMP
000049a7: JUMPDEST
000049a8: PUSH1 0x00
000049aa: DUP1
000049ab: PUSH1 0x00
000049ad: DUP1
000049ae: PUSH1 0x40
000049b0: DUP6
000049b1: DUP8
000049b2: SUB
000049b3: SLT
000049b4: ISZERO
000049b5: PUSH2 0x49bd
000049b8: JUMPI
000049b9: PUSH1 0x00
000049bb: DUP1
000049bc: REVERT
000049bd: JUMPDEST
000049be: DUP5
000049bf: CALLDATALOAD
000049c0: PUSH1 0x01
000049c2: PUSH1 0x01
000049c4: PUSH1 0x40
000049c6: SHL
000049c7: SUB
000049c8: DUP1
000049c9: DUP3
000049ca: GT
000049cb: ISZERO
000049cc: PUSH2 0x49d4
000049cf: JUMPI
000049d0: PUSH1 0x00
000049d2: DUP1
000049d3: REVERT
000049d4: JUMPDEST
000049d5: PUSH2 0x49e0
000049d8: DUP9
000049d9: DUP4
000049da: DUP10
000049db: ADD
000049dc: PUSH2 0x4513
000049df: JUMP
000049e0: JUMPDEST
000049e1: SWAP1
000049e2: SWAP7
000049e3: POP
000049e4: SWAP5
000049e5: POP
000049e6: PUSH1 0x20
000049e8: DUP8
000049e9: ADD
000049ea: CALLDATALOAD
000049eb: SWAP2
000049ec: POP
000049ed: DUP1
000049ee: DUP3
000049ef: GT
000049f0: ISZERO
000049f1: PUSH2 0x49f9
000049f4: JUMPI
000049f5: PUSH1 0x00
000049f7: DUP1
000049f8: REVERT
000049f9: JUMPDEST
000049fa: DUP2
000049fb: DUP8
000049fc: ADD
000049fd: SWAP2
000049fe: POP
000049ff: DUP8
00004a00: PUSH1 0x1f
00004a02: DUP4
00004a03: ADD
00004a04: SLT
00004a05: PUSH2 0x4a0d
00004a08: JUMPI
00004a09: PUSH1 0x00
00004a0b: DUP1
00004a0c: REVERT
00004a0d: JUMPDEST
00004a0e: DUP2
00004a0f: CALLDATALOAD
00004a10: DUP2
00004a11: DUP2
00004a12: GT
00004a13: ISZERO
00004a14: PUSH2 0x4a1c
00004a17: JUMPI
00004a18: PUSH1 0x00
00004a1a: DUP1
00004a1b: REVERT
00004a1c: JUMPDEST
00004a1d: DUP9
00004a1e: PUSH1 0x20
00004a20: PUSH2 0x0160
00004a23: DUP4
00004a24: MUL
00004a25: DUP6
00004a26: ADD
00004a27: ADD
00004a28: GT
00004a29: ISZERO
00004a2a: PUSH2 0x45e8
00004a2d: JUMPI
00004a2e: PUSH1 0x00
00004a30: DUP1
00004a31: REVERT
00004a32: JUMPDEST
00004a33: PUSH1 0x00
00004a35: DUP1
00004a36: PUSH1 0x40
00004a38: DUP4
00004a39: DUP6
00004a3a: SUB
00004a3b: SLT
00004a3c: ISZERO
00004a3d: PUSH2 0x4a45
00004a40: JUMPI
00004a41: PUSH1 0x00
00004a43: DUP1
00004a44: REVERT
00004a45: JUMPDEST
00004a46: DUP3
00004a47: CALLDATALOAD
00004a48: PUSH1 0x01
00004a4a: PUSH1 0x01
00004a4c: PUSH1 0x40
00004a4e: SHL
00004a4f: SUB
00004a50: DUP1
00004a51: DUP3
00004a52: GT
00004a53: ISZERO
00004a54: PUSH2 0x4a5c
00004a57: JUMPI
00004a58: PUSH1 0x00
00004a5a: DUP1
00004a5b: REVERT
00004a5c: JUMPDEST
00004a5d: PUSH2 0x477b
00004a60: DUP7
00004a61: DUP4
00004a62: DUP8
00004a63: ADD
00004a64: PUSH2 0x4155
00004a67: JUMP
00004a68: JUMPDEST
00004a69: PUSH1 0x00
00004a6b: PUSH1 0x20
00004a6d: DUP3
00004a6e: DUP5
00004a6f: SUB
00004a70: SLT
00004a71: ISZERO
00004a72: PUSH2 0x4a7a
00004a75: JUMPI
00004a76: PUSH1 0x00
00004a78: DUP1
00004a79: REVERT
00004a7a: JUMPDEST
00004a7b: DUP2
00004a7c: CALLDATALOAD
00004a7d: PUSH1 0x01
00004a7f: PUSH1 0x01
00004a81: PUSH1 0x60
00004a83: SHL
00004a84: SUB
00004a85: NOT
00004a86: DUP2
00004a87: AND
00004a88: DUP2
00004a89: EQ
00004a8a: PUSH2 0x2de6
00004a8d: JUMPI
00004a8e: PUSH1 0x00
00004a90: DUP1
00004a91: REVERT
00004a92: JUMPDEST
00004a93: DUP1
00004a94: MLOAD
00004a95: PUSH1 0x01
00004a97: PUSH1 0x01
00004a99: PUSH1 0x80
00004a9b: SHL
00004a9c: SUB
00004a9d: SWAP1
00004a9e: DUP2
00004a9f: AND
00004aa0: DUP4
00004aa1: MSTORE
00004aa2: PUSH1 0x20
00004aa4: DUP1
00004aa5: DUP4
00004aa6: ADD
00004aa7: MLOAD
00004aa8: SWAP1
00004aa9: SWAP2
00004aaa: AND
00004aab: SWAP1
00004aac: DUP4
00004aad: ADD
00004aae: MSTORE
00004aaf: PUSH1 0x40
00004ab1: SWAP1
00004ab2: DUP2
00004ab3: ADD
00004ab4: MLOAD
00004ab5: SWAP2
00004ab6: ADD
00004ab7: MSTORE
00004ab8: JUMP
00004ab9: JUMPDEST
00004aba: PUSH1 0x04
00004abc: DUP2
00004abd: LT
00004abe: PUSH2 0x4ac9
00004ac1: JUMPI
00004ac2: PUSH2 0x4ac9
00004ac5: PUSH2 0x3ec0
00004ac8: JUMP
00004ac9: JUMPDEST
00004aca: SWAP1
00004acb: MSTORE
00004acc: JUMP
00004acd: JUMPDEST
00004ace: PUSH2 0x0160
00004ad1: DUP2
00004ad2: ADD
00004ad3: PUSH2 0x4adc
00004ad6: DUP3
00004ad7: DUP11
00004ad8: PUSH2 0x4a92
00004adb: JUMP
00004adc: JUMPDEST
00004add: PUSH2 0x4ae9
00004ae0: PUSH1 0x60
00004ae2: DUP4
00004ae3: ADD
00004ae4: DUP10
00004ae5: PUSH2 0x4a92
00004ae8: JUMP
00004ae9: JUMPDEST
00004aea: PUSH2 0x4af6
00004aed: PUSH1 0xc0
00004aef: DUP4
00004af0: ADD
00004af1: DUP9
00004af2: PUSH2 0x4ab9
00004af5: JUMP
00004af6: JUMPDEST
00004af7: PUSH1 0x01
00004af9: PUSH1 0x01
00004afb: PUSH1 0xa0
00004afd: SHL
00004afe: SUB
00004aff: SWAP6
00004b00: DUP7
00004b01: AND
00004b02: PUSH1 0xe0
00004b04: DUP4
00004b05: ADD
00004b06: MSTORE
00004b07: SWAP4
00004b08: DUP6
00004b09: AND
00004b0a: PUSH2 0x0100
00004b0d: DUP3
00004b0e: ADD
00004b0f: MSTORE
00004b10: SWAP2
00004b11: SWAP1
00004b12: SWAP4
00004b13: AND
00004b14: PUSH2 0x0120
00004b17: DUP3
00004b18: ADD
00004b19: MSTORE
00004b1a: PUSH2 0x0140
00004b1d: ADD
00004b1e: SWAP2
00004b1f: SWAP1
00004b20: SWAP2
00004b21: MSTORE
00004b22: SWAP4
00004b23: SWAP3
00004b24: POP
00004b25: POP
00004b26: POP
00004b27: JUMP
00004b28: JUMPDEST
00004b29: PUSH1 0x00
00004b2b: PUSH1 0x20
00004b2d: DUP3
00004b2e: DUP5
00004b2f: SUB
00004b30: SLT
00004b31: ISZERO
00004b32: PUSH2 0x4b3a
00004b35: JUMPI
00004b36: PUSH1 0x00
00004b38: DUP1
00004b39: REVERT
00004b3a: JUMPDEST
00004b3b: DUP2
00004b3c: CALLDATALOAD
00004b3d: PUSH1 0x01
00004b3f: PUSH1 0x01
00004b41: PUSH1 0x40
00004b43: SHL
00004b44: SUB
00004b45: DUP2
00004b46: GT
00004b47: ISZERO
00004b48: PUSH2 0x4b50
00004b4b: JUMPI
00004b4c: PUSH1 0x00
00004b4e: DUP1
00004b4f: REVERT
00004b50: JUMPDEST
00004b51: PUSH2 0x3caf
00004b54: DUP5
00004b55: DUP3
00004b56: DUP6
00004b57: ADD
00004b58: PUSH2 0x4155
00004b5b: JUMP
00004b5c: JUMPDEST
00004b5d: PUSH1 0x20
00004b5f: DUP1
00004b60: DUP3
00004b61: MSTORE
00004b62: PUSH1 0x11
00004b64: SWAP1
00004b65: DUP3
00004b66: ADD
00004b67: MSTORE
00004b68: PUSH17 0x1b9bdd081cdd5c1c1bdc9d08185cdcd95d
00004b7a: PUSH1 0x7a
00004b7c: SHL
00004b7d: PUSH1 0x40
00004b7f: DUP3
00004b80: ADD
00004b81: MSTORE
00004b82: PUSH1 0x60
00004b84: ADD
00004b85: SWAP1
00004b86: JUMP
00004b87: JUMPDEST
00004b88: PUSH1 0x20
00004b8a: DUP1
00004b8b: DUP3
00004b8c: MSTORE
00004b8d: PUSH1 0x0a
00004b8f: SWAP1
00004b90: DUP3
00004b91: ADD
00004b92: MSTORE
00004b93: PUSH10 0x27b7363c9027bbb732b9
00004b9e: PUSH1 0xb1
00004ba0: SHL
00004ba1: PUSH1 0x40
00004ba3: DUP3
00004ba4: ADD
00004ba5: MSTORE
00004ba6: PUSH1 0x60
00004ba8: ADD
00004ba9: SWAP1
00004baa: JUMP
00004bab: JUMPDEST
00004bac: PUSH4 0x4e487b71
00004bb1: PUSH1 0xe0
00004bb3: SHL
00004bb4: PUSH1 0x00
00004bb6: MSTORE
00004bb7: PUSH1 0x32
00004bb9: PUSH1 0x04
00004bbb: MSTORE
00004bbc: PUSH1 0x24
00004bbe: PUSH1 0x00
00004bc0: REVERT
00004bc1: JUMPDEST
00004bc2: PUSH4 0x4e487b71
00004bc7: PUSH1 0xe0
00004bc9: SHL
00004bca: PUSH1 0x00
00004bcc: MSTORE
00004bcd: PUSH1 0x11
00004bcf: PUSH1 0x04
00004bd1: MSTORE
00004bd2: PUSH1 0x24
00004bd4: PUSH1 0x00
00004bd6: REVERT
00004bd7: JUMPDEST
00004bd8: PUSH1 0x00
00004bda: PUSH1 0x01
00004bdc: DUP3
00004bdd: ADD
00004bde: PUSH2 0x4be9
00004be1: JUMPI
00004be2: PUSH2 0x4be9
00004be5: PUSH2 0x4bc1
00004be8: JUMP
00004be9: JUMPDEST
00004bea: POP
00004beb: PUSH1 0x01
00004bed: ADD
00004bee: SWAP1
00004bef: JUMP
00004bf0: JUMPDEST
00004bf1: PUSH1 0x20
00004bf3: DUP1
00004bf4: DUP3
00004bf5: MSTORE
00004bf6: PUSH1 0x12
00004bf8: SWAP1
00004bf9: DUP3
00004bfa: ADD
00004bfb: MSTORE
00004bfc: PUSH18 0x27b7363c902832b73234b7339020b236b4b7
00004c0f: PUSH1 0x71
00004c11: SHL
00004c12: PUSH1 0x40
00004c14: DUP3
00004c15: ADD
00004c16: MSTORE
00004c17: PUSH1 0x60
00004c19: ADD
00004c1a: SWAP1
00004c1b: JUMP
00004c1c: JUMPDEST
00004c1d: PUSH1 0x01
00004c1f: PUSH1 0x01
00004c21: PUSH1 0x80
00004c23: SHL
00004c24: SUB
00004c25: DUP2
00004c26: AND
00004c27: DUP2
00004c28: EQ
00004c29: PUSH2 0x1920
00004c2c: JUMPI
00004c2d: PUSH1 0x00
00004c2f: DUP1
00004c30: REVERT
00004c31: JUMPDEST
00004c32: DUP2
00004c33: CALLDATALOAD
00004c34: PUSH2 0x4c3c
00004c37: DUP2
00004c38: PUSH2 0x4c1c
00004c3b: JUMP
00004c3c: JUMPDEST
00004c3d: DUP2
00004c3e: SLOAD
00004c3f: PUSH1 0x01
00004c41: PUSH1 0x01
00004c43: PUSH1 0x80
00004c45: SHL
00004c46: SUB
00004c47: NOT
00004c48: SWAP1
00004c49: DUP2
00004c4a: AND
00004c4b: PUSH1 0x01
00004c4d: PUSH1 0x01
00004c4f: PUSH1 0x80
00004c51: SHL
00004c52: SUB
00004c53: SWAP3
00004c54: SWAP1
00004c55: SWAP3
00004c56: AND
00004c57: SWAP2
00004c58: DUP3
00004c59: OR
00004c5a: DUP4
00004c5b: SSTORE
00004c5c: PUSH1 0x20
00004c5e: DUP5
00004c5f: ADD
00004c60: CALLDATALOAD
00004c61: PUSH2 0x4c69
00004c64: DUP2
00004c65: PUSH2 0x4c1c
00004c68: JUMP
00004c69: JUMPDEST
00004c6a: PUSH1 0x80
00004c6c: SHL
00004c6d: AND
00004c6e: OR
00004c6f: DUP2
00004c70: SSTORE
00004c71: PUSH1 0x40
00004c73: SWAP2
00004c74: SWAP1
00004c75: SWAP2
00004c76: ADD
00004c77: CALLDATALOAD
00004c78: PUSH1 0x01
00004c7a: SWAP1
00004c7b: SWAP2
00004c7c: ADD
00004c7d: SSTORE
00004c7e: JUMP
00004c7f: JUMPDEST
00004c80: DUP1
00004c81: CALLDATALOAD
00004c82: PUSH2 0x4c8a
00004c85: DUP2
00004c86: PUSH2 0x4c1c
00004c89: JUMP
00004c8a: JUMPDEST
00004c8b: PUSH1 0x01
00004c8d: PUSH1 0x01
00004c8f: PUSH1 0x80
00004c91: SHL
00004c92: SUB
00004c93: SWAP1
00004c94: DUP2
00004c95: AND
00004c96: DUP4
00004c97: MSTORE
00004c98: PUSH1 0x20
00004c9a: DUP3
00004c9b: ADD
00004c9c: CALLDATALOAD
00004c9d: SWAP1
00004c9e: PUSH2 0x4ca6
00004ca1: DUP3
00004ca2: PUSH2 0x4c1c
00004ca5: JUMP
00004ca6: JUMPDEST
00004ca7: AND
00004ca8: PUSH1 0x20
00004caa: DUP4
00004cab: ADD
00004cac: MSTORE
00004cad: PUSH1 0x40
00004caf: SWAP1
00004cb0: DUP2
00004cb1: ADD
00004cb2: CALLDATALOAD
00004cb3: SWAP2
00004cb4: ADD
00004cb5: MSTORE
00004cb6: JUMP
00004cb7: JUMPDEST
00004cb8: DUP3
00004cb9: DUP2
00004cba: MSTORE
00004cbb: PUSH1 0x80
00004cbd: DUP2
00004cbe: ADD
00004cbf: PUSH2 0x2de6
00004cc2: PUSH1 0x20
00004cc4: DUP4
00004cc5: ADD
00004cc6: DUP5
00004cc7: PUSH2 0x4c7f
00004cca: JUMP
00004ccb: JUMPDEST
00004ccc: PUSH1 0x20
00004cce: DUP1
00004ccf: DUP3
00004cd0: MSTORE
00004cd1: PUSH1 0x12
00004cd3: SWAP1
00004cd4: DUP3
00004cd5: ADD
00004cd6: MSTORE
00004cd7: PUSH18 0x27b7363c902832b73234b7339027bbb732b9
00004cea: PUSH1 0x71
00004cec: SHL
00004ced: PUSH1 0x40
00004cef: DUP3
00004cf0: ADD
00004cf1: MSTORE
00004cf2: PUSH1 0x60
00004cf4: ADD
00004cf5: SWAP1
00004cf6: JUMP
00004cf7: JUMPDEST
00004cf8: PUSH1 0x00
00004cfa: PUSH1 0x60
00004cfc: DUP3
00004cfd: DUP5
00004cfe: SUB
00004cff: SLT
00004d00: ISZERO
00004d01: PUSH2 0x4d09
00004d04: JUMPI
00004d05: PUSH1 0x00
00004d07: DUP1
00004d08: REVERT
00004d09: JUMPDEST
00004d0a: PUSH1 0x40
00004d0c: MLOAD
00004d0d: PUSH1 0x60
00004d0f: DUP2
00004d10: ADD
00004d11: PUSH1 0x01
00004d13: PUSH1 0x01
00004d15: PUSH1 0x40
00004d17: SHL
00004d18: SUB
00004d19: DUP2
00004d1a: GT
00004d1b: DUP3
00004d1c: DUP3
00004d1d: LT
00004d1e: OR
00004d1f: ISZERO
00004d20: PUSH2 0x4d2b
00004d23: JUMPI
00004d24: PUSH2 0x4d2b
00004d27: PUSH2 0x40a2
00004d2a: JUMP
00004d2b: JUMPDEST
00004d2c: PUSH1 0x40
00004d2e: MSTORE
00004d2f: SWAP1
00004d30: POP
00004d31: DUP1
00004d32: DUP3
00004d33: CALLDATALOAD
00004d34: PUSH2 0x4d3c
00004d37: DUP2
00004d38: PUSH2 0x4c1c
00004d3b: JUMP
00004d3c: JUMPDEST
00004d3d: DUP2
00004d3e: MSTORE
00004d3f: PUSH1 0x20
00004d41: DUP4
00004d42: ADD
00004d43: CALLDATALOAD
00004d44: PUSH2 0x4d4c
00004d47: DUP2
00004d48: PUSH2 0x4c1c
00004d4b: JUMP
00004d4c: JUMPDEST
00004d4d: PUSH1 0x20
00004d4f: DUP3
00004d50: ADD
00004d51: MSTORE
00004d52: PUSH1 0x40
00004d54: SWAP3
00004d55: DUP4
00004d56: ADD
00004d57: CALLDATALOAD
00004d58: SWAP3
00004d59: ADD
00004d5a: SWAP2
00004d5b: SWAP1
00004d5c: SWAP2
00004d5d: MSTORE
00004d5e: SWAP2
00004d5f: SWAP1
00004d60: POP
00004d61: JUMP
00004d62: JUMPDEST
00004d63: DUP1
00004d64: CALLDATALOAD
00004d65: PUSH1 0x04
00004d67: DUP2
00004d68: LT
00004d69: PUSH2 0x11e8
00004d6c: JUMPI
00004d6d: PUSH1 0x00
00004d6f: DUP1
00004d70: REVERT
00004d71: JUMPDEST
00004d72: PUSH1 0x00
00004d74: PUSH2 0x0160
00004d77: DUP3
00004d78: DUP5
00004d79: SUB
00004d7a: SLT
00004d7b: ISZERO
00004d7c: PUSH2 0x4d84
00004d7f: JUMPI
00004d80: PUSH1 0x00
00004d82: DUP1
00004d83: REVERT
00004d84: JUMPDEST
00004d85: PUSH1 0x40
00004d87: MLOAD
00004d88: PUSH1 0xe0
00004d8a: DUP2
00004d8b: ADD
00004d8c: PUSH1 0x01
00004d8e: PUSH1 0x01
00004d90: PUSH1 0x40
00004d92: SHL
00004d93: SUB
00004d94: DUP2
00004d95: GT
00004d96: DUP3
00004d97: DUP3
00004d98: LT
00004d99: OR
00004d9a: ISZERO
00004d9b: PUSH2 0x4da6
00004d9e: JUMPI
00004d9f: PUSH2 0x4da6
00004da2: PUSH2 0x40a2
00004da5: JUMP
00004da6: JUMPDEST
00004da7: PUSH1 0x40
00004da9: MSTORE
00004daa: PUSH2 0x4db3
00004dad: DUP5
00004dae: DUP5
00004daf: PUSH2 0x4cf7
00004db2: JUMP
00004db3: JUMPDEST
00004db4: DUP2
00004db5: MSTORE
00004db6: PUSH2 0x4dc2
00004db9: DUP5
00004dba: PUSH1 0x60
00004dbc: DUP6
00004dbd: ADD
00004dbe: PUSH2 0x4cf7
00004dc1: JUMP
00004dc2: JUMPDEST
00004dc3: PUSH1 0x20
00004dc5: DUP3
00004dc6: ADD
00004dc7: MSTORE
00004dc8: PUSH2 0x4dd3
00004dcb: PUSH1 0xc0
00004dcd: DUP5
00004dce: ADD
00004dcf: PUSH2 0x4d62
00004dd2: JUMP
00004dd3: JUMPDEST
00004dd4: PUSH1 0x40
00004dd6: DUP3
00004dd7: ADD
00004dd8: MSTORE
00004dd9: PUSH2 0x4de4
00004ddc: PUSH1 0xe0
00004dde: DUP5
00004ddf: ADD
00004de0: PUSH2 0x4013
00004de3: JUMP
00004de4: JUMPDEST
00004de5: PUSH1 0x60
00004de7: DUP3
00004de8: ADD
00004de9: MSTORE
00004dea: PUSH2 0x4df6
00004ded: PUSH2 0x0100
00004df0: DUP5
00004df1: ADD
00004df2: PUSH2 0x4013
00004df5: JUMP
00004df6: JUMPDEST
00004df7: PUSH1 0x80
00004df9: DUP3
00004dfa: ADD
00004dfb: MSTORE
00004dfc: PUSH2 0x4e08
00004dff: PUSH2 0x0120
00004e02: DUP5
00004e03: ADD
00004e04: PUSH2 0x4013
00004e07: JUMP
00004e08: JUMPDEST
00004e09: PUSH1 0xa0
00004e0b: DUP3
00004e0c: ADD
00004e0d: MSTORE
00004e0e: PUSH2 0x0140
00004e11: SWAP3
00004e12: SWAP1
00004e13: SWAP3
00004e14: ADD
00004e15: CALLDATALOAD
00004e16: PUSH1 0xc0
00004e18: DUP4
00004e19: ADD
00004e1a: MSTORE
00004e1b: POP
00004e1c: SWAP2
00004e1d: SWAP1
00004e1e: POP
00004e1f: JUMP
00004e20: JUMPDEST
00004e21: DUP3
00004e22: DUP2
00004e23: MSTORE
00004e24: PUSH2 0x0180
00004e27: DUP2
00004e28: ADD
00004e29: PUSH2 0x4e35
00004e2c: PUSH1 0x20
00004e2e: DUP4
00004e2f: ADD
00004e30: DUP5
00004e31: PUSH2 0x4c7f
00004e34: JUMP
00004e35: JUMPDEST
00004e36: PUSH2 0x4e45
00004e39: PUSH1 0x80
00004e3b: DUP4
00004e3c: ADD
00004e3d: PUSH1 0x60
00004e3f: DUP6
00004e40: ADD
00004e41: PUSH2 0x4c7f
00004e44: JUMP
00004e45: JUMPDEST
00004e46: PUSH2 0x4e51
00004e49: PUSH1 0xc0
00004e4b: DUP5
00004e4c: ADD
00004e4d: PUSH2 0x4d62
00004e50: JUMP
00004e51: JUMPDEST
00004e52: PUSH2 0x4e5e
00004e55: PUSH1 0xe0
00004e57: DUP5
00004e58: ADD
00004e59: DUP3
00004e5a: PUSH2 0x4ab9
00004e5d: JUMP
00004e5e: JUMPDEST
00004e5f: POP
00004e60: PUSH2 0x4e6b
00004e63: PUSH1 0xe0
00004e65: DUP5
00004e66: ADD
00004e67: PUSH2 0x4013
00004e6a: JUMP
00004e6b: JUMPDEST
00004e6c: PUSH2 0x0100
00004e6f: PUSH1 0x01
00004e71: DUP1
00004e72: PUSH1 0xa0
00004e74: SHL
00004e75: SUB
00004e76: DUP1
00004e77: DUP4
00004e78: AND
00004e79: DUP3
00004e7a: DUP7
00004e7b: ADD
00004e7c: MSTORE
00004e7d: PUSH2 0x4e87
00004e80: DUP3
00004e81: DUP8
00004e82: ADD
00004e83: PUSH2 0x4013
00004e86: JUMP
00004e87: JUMPDEST
00004e88: SWAP3
00004e89: POP
00004e8a: PUSH2 0x0120
00004e8d: SWAP2
00004e8e: POP
00004e8f: DUP1
00004e90: DUP4
00004e91: AND
00004e92: DUP3
00004e93: DUP7
00004e94: ADD
00004e95: MSTORE
00004e96: PUSH2 0x4ea0
00004e99: DUP3
00004e9a: DUP8
00004e9b: ADD
00004e9c: PUSH2 0x4013
00004e9f: JUMP
00004ea0: JUMPDEST
00004ea1: AND
00004ea2: PUSH2 0x0140
00004ea5: DUP6
00004ea6: DUP2
00004ea7: ADD
00004ea8: SWAP2
00004ea9: SWAP1
00004eaa: SWAP2
00004eab: MSTORE
00004eac: SWAP5
00004ead: SWAP1
00004eae: SWAP5
00004eaf: ADD
00004eb0: CALLDATALOAD
00004eb1: PUSH2 0x0160
00004eb4: SWAP1
00004eb5: SWAP4
00004eb6: ADD
00004eb7: SWAP3
00004eb8: SWAP1
00004eb9: SWAP3
00004eba: MSTORE
00004ebb: SWAP4
00004ebc: SWAP3
00004ebd: POP
00004ebe: POP
00004ebf: POP
00004ec0: JUMP
00004ec1: JUMPDEST
00004ec2: PUSH1 0x00
00004ec4: DUP3
00004ec5: DUP3
00004ec6: LT
00004ec7: ISZERO
00004ec8: PUSH2 0x4ed3
00004ecb: JUMPI
00004ecc: PUSH2 0x4ed3
00004ecf: PUSH2 0x4bc1
00004ed2: JUMP
00004ed3: JUMPDEST
00004ed4: POP
00004ed5: SUB
00004ed6: SWAP1
00004ed7: JUMP
00004ed8: JUMPDEST
00004ed9: PUSH1 0x00
00004edb: DUP3
00004edc: NOT
00004edd: DUP3
00004ede: GT
00004edf: ISZERO
00004ee0: PUSH2 0x4eeb
00004ee3: JUMPI
00004ee4: PUSH2 0x4eeb
00004ee7: PUSH2 0x4bc1
00004eea: JUMP
00004eeb: JUMPDEST
00004eec: POP
00004eed: ADD
00004eee: SWAP1
00004eef: JUMP
00004ef0: JUMPDEST
00004ef1: PUSH1 0x00
00004ef3: DUP2
00004ef4: PUSH1 0x00
00004ef6: NOT
00004ef7: DIV
00004ef8: DUP4
00004ef9: GT
00004efa: DUP3
00004efb: ISZERO
00004efc: ISZERO
00004efd: AND
00004efe: ISZERO
00004eff: PUSH2 0x4f0a
00004f02: JUMPI
00004f03: PUSH2 0x4f0a
00004f06: PUSH2 0x4bc1
00004f09: JUMP
00004f0a: JUMPDEST
00004f0b: POP
00004f0c: MUL
00004f0d: SWAP1
00004f0e: JUMP
00004f0f: JUMPDEST
00004f10: PUSH1 0x00
00004f12: DUP3
00004f13: PUSH2 0x4f2c
00004f16: JUMPI
00004f17: PUSH4 0x4e487b71
00004f1c: PUSH1 0xe0
00004f1e: SHL
00004f1f: PUSH1 0x00
00004f21: MSTORE
00004f22: PUSH1 0x12
00004f24: PUSH1 0x04
00004f26: MSTORE
00004f27: PUSH1 0x24
00004f29: PUSH1 0x00
00004f2b: REVERT
00004f2c: JUMPDEST
00004f2d: POP
00004f2e: DIV
00004f2f: SWAP1
00004f30: JUMP
00004f31: JUMPDEST
00004f32: PUSH1 0x01
00004f34: PUSH1 0x01
00004f36: PUSH1 0xa0
00004f38: SHL
00004f39: SUB
00004f3a: SWAP3
00004f3b: SWAP1
00004f3c: SWAP3
00004f3d: AND
00004f3e: DUP3
00004f3f: MSTORE
00004f40: PUSH1 0x20
00004f42: DUP3
00004f43: ADD
00004f44: MSTORE
00004f45: PUSH1 0x40
00004f47: ADD
00004f48: SWAP1
00004f49: JUMP
00004f4a: JUMPDEST
00004f4b: PUSH1 0x00
00004f4d: PUSH1 0xff
00004f4f: DUP3
00004f50: AND
00004f51: PUSH1 0xff
00004f53: DUP5
00004f54: AND
00004f55: DUP2
00004f56: PUSH1 0xff
00004f58: DIV
00004f59: DUP2
00004f5a: GT
00004f5b: DUP3
00004f5c: ISZERO
00004f5d: ISZERO
00004f5e: AND
00004f5f: ISZERO
00004f60: PUSH2 0x4f6b
00004f63: JUMPI
00004f64: PUSH2 0x4f6b
00004f67: PUSH2 0x4bc1
00004f6a: JUMP
00004f6b: JUMPDEST
00004f6c: MUL
00004f6d: SWAP4
00004f6e: SWAP3
00004f6f: POP
00004f70: POP
00004f71: POP
00004f72: JUMP
00004f73: JUMPDEST
00004f74: PUSH4 0x4e487b71
00004f79: PUSH1 0xe0
00004f7b: SHL
00004f7c: PUSH1 0x00
00004f7e: MSTORE
00004f7f: PUSH1 0x31
00004f81: PUSH1 0x04
00004f83: MSTORE
00004f84: PUSH1 0x24
00004f86: PUSH1 0x00
00004f88: REVERT
00004f89: JUMPDEST
00004f8a: PUSH1 0x00
00004f8c: DUP3
00004f8d: MLOAD
00004f8e: PUSH2 0x4f9b
00004f91: DUP2
00004f92: DUP5
00004f93: PUSH1 0x20
00004f95: DUP8
00004f96: ADD
00004f97: PUSH2 0x3efe
00004f9a: JUMP
00004f9b: JUMPDEST
00004f9c: SWAP2
00004f9d: SWAP1
00004f9e: SWAP2
00004f9f: ADD
00004fa0: SWAP3
00004fa1: SWAP2
00004fa2: POP
00004fa3: POP
00004fa4: JUMP
00004fa5: JUMPDEST
00004fa6: PUSH1 0x20
00004fa8: DUP2
00004fa9: MSTORE
00004faa: PUSH1 0x00
00004fac: PUSH2 0x2de6
00004faf: PUSH1 0x20
00004fb1: DUP4
00004fb2: ADD
00004fb3: DUP5
00004fb4: PUSH2 0x3f2a
00004fb7: JUMP
00004fb8: INVALID
00004fb9: PUSH24 0xaf05e6a92fec1895af9546423ef6796ffe69d557ab50a909
00004fd2: UNKNOWN(0xED)
00004fd3: INVALID
00004fd4: UNKNOWN(0x4D)
00004fd5: CALLER
00004fd6: MSTORE
00004fd7: UNKNOWN(0xB2)
00004fd8: SDIV
00004fd9: UNKNOWN(0xB5)
00004fda: BALANCE
00004fdb: UNKNOWN(0x27)
00004fdc: PUSH9 0x4a568b3173ae13b9f8
00004fe6: UNKNOWN(0xA6)
00004fe7: ADD
00004fe8: PUSH15 0x243e63b6e8ee1178d6a717850b5d61
00004ff8: SUB
00004ff9: CALLDATASIZE
00004ffa: ADDMOD
00004ffb: SWAP5
00004ffc: LOG1
00004ffd: EXTCODESIZE
00004ffe: LOG1
00004fff: LOG3
00005000: UNKNOWN(0x21)
00005001: MOD
00005002: PUSH8 0xc828492db98dca3e
0000500b: KECCAK256
0000500c: PUSH23 0xcc3735a920a3ca505d382bbc6b3d21df97c6b6a7a77df2
00005024: UNKNOWN(0x29)
00005025: LOG0
00005026: UNKNOWN(0xB0)
00005027: SGT
00005028: MUL
00005029: UNKNOWN(0xC7)
0000502a: SLT
0000502b: UNKNOWN(0x24)
0000502c: UNKNOWN(0x2F)
0000502d: STOP
0000502e: UNKNOWN(0xB1)
0000502f: UNKNOWN(0xAE)
00005030: PUSH31 0xae9c98af47b1aecca264697066735822122015657cafa2a3c2f882f36bcfbd
00005050: PUSH5 0x1a7b88907e
00005056: UNKNOWN(0xF9)
00005057: UNKNOWN(0xC1)
00005058: PUSH29

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x686bcc8c9f66f65d4b6c6b820467d007974ac5248323e3d54c5d08f98953c269
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x686bcc8c9f66f65d4b6c6b820467d007974ac5248323e3d54c5d08f98953c269",
    "confirmed": false,
    "trace_mode": "callTracer",
    "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": "0x0116aa52",
            "selector": "0x0116aa52",
            "calldata_variants": [
                "0x0116aa52",
                "0x0116aa520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x02484ceb",
            "selector": "0x02484ceb",
            "calldata_variants": [
                "0x02484ceb",
                "0x02484ceb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1220c6ed",
            "selector": "0x1220c6ed",
            "calldata_variants": [
                "0x1220c6ed",
                "0x1220c6ed0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14ab0bbc",
            "selector": "0x14ab0bbc",
            "calldata_variants": [
                "0x14ab0bbc",
                "0x14ab0bbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14bfd6d0",
            "selector": "0x14bfd6d0",
            "calldata_variants": [
                "0x14bfd6d0",
                "0x14bfd6d00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ebf0551",
            "selector": "0x1ebf0551",
            "calldata_variants": [
                "0x1ebf0551",
                "0x1ebf05510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1fa4d1ba",
            "selector": "0x1fa4d1ba",
            "calldata_variants": [
                "0x1fa4d1ba",
                "0x1fa4d1ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 11583,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x84d1789377fdedbe83edc90aa94c7605435e022f1278d2afa8e458b35852b0a9
call_targets: 0xd16281bce036d58fc22222e9dac13260fc185907
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x84d1789377fdedbe83edc90aa94c7605435e022f1278d2afa8e458b35852b0a9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd16281bce036d58fc22222e9dac13260fc185907"
    ],
    "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": "0x0116aa52",
            "selector": "0x0116aa52",
            "calldata_variants": [
                "0x0116aa52",
                "0x0116aa520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x02484ceb",
            "selector": "0x02484ceb",
            "calldata_variants": [
                "0x02484ceb",
                "0x02484ceb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1220c6ed",
            "selector": "0x1220c6ed",
            "calldata_variants": [
                "0x1220c6ed",
                "0x1220c6ed0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14ab0bbc",
            "selector": "0x14ab0bbc",
            "calldata_variants": [
                "0x14ab0bbc",
                "0x14ab0bbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14bfd6d0",
            "selector": "0x14bfd6d0",
            "calldata_variants": [
                "0x14bfd6d0",
                "0x14bfd6d00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ebf0551",
            "selector": "0x1ebf0551",
            "calldata_variants": [
                "0x1ebf0551",
                "0x1ebf05510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1fa4d1ba",
            "selector": "0x1fa4d1ba",
            "calldata_variants": [
                "0x1fa4d1ba",
                "0x1fa4d1ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1044,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5255,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12752,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x84d1789377fdedbe83edc90aa94c7605435e022f1278d2afa8e458b35852b0a9
call_targets: 0xd16281bce036d58fc22222e9dac13260fc185907
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x84d1789377fdedbe83edc90aa94c7605435e022f1278d2afa8e458b35852b0a9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd16281bce036d58fc22222e9dac13260fc185907"
    ],
    "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": "0x0116aa52",
            "selector": "0x0116aa52",
            "calldata_variants": [
                "0x0116aa52",
                "0x0116aa520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x02484ceb",
            "selector": "0x02484ceb",
            "calldata_variants": [
                "0x02484ceb",
                "0x02484ceb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1220c6ed",
            "selector": "0x1220c6ed",
            "calldata_variants": [
                "0x1220c6ed",
                "0x1220c6ed0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14ab0bbc",
            "selector": "0x14ab0bbc",
            "calldata_variants": [
                "0x14ab0bbc",
                "0x14ab0bbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x14bfd6d0",
            "selector": "0x14bfd6d0",
            "calldata_variants": [
                "0x14bfd6d0",
                "0x14bfd6d00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ebf0551",
            "selector": "0x1ebf0551",
            "calldata_variants": [
                "0x1ebf0551",
                "0x1ebf05510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1fa4d1ba",
            "selector": "0x1fa4d1ba",
            "calldata_variants": [
                "0x1fa4d1ba",
                "0x1fa4d1ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1044,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5255,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12752,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}