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

Analysis Run

019bb2d5-fd73-7212-bbeb-57b641057c57

failed
Chain ID
1
Address
Block Number
Created
Mon, Jan 12, 2026 3:32 PM
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
Verified
Review Backing
Present
Best current signal
Mint proceeds are trapped in Azaraks because PaymentSplitter never receives funds
crit 0 high 0 direct contract
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
39615 artifact.fetch complete 1 / 3 3 months ago
39616 proxy.resolve complete 1 / 3 3 months ago
39617 tool.cast_disasm complete 1 / 3 3 months ago
39618 analysis.bundle complete 1 / 3 3 months ago
39619 capability.graph complete 1 / 3 3 months ago
39620 detector.run complete 1 / 3 3 months ago
39621 validation.fork complete 1 / 3 3 months ago
39737 report.consolidate complete 1 / 6 3 months ago
39738 tool.slither failed 2 / 2 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: yes
Proxy evidence
{
    "status": "not_proxy"
}

Slither

tool.slither
Status
failed slither failed (exit 1): 'forge clean' running (wd: /tmp/slither-l232__ww) 'forge config --json' running 'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-l232__ww) 'forge' returned non-zero exit code 1 Compiling 1 files with Solc 0.8.11 stdout: Solc 0.8.11 finished in 31.27ms Error: Compiler run failed: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1688:44: stderr: | stderr: 1688 | ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"VIPlist",Strings.toString(amount) ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1688:92: stderr: | stderr: 1688 | ... ing(uint160(msg.sender)),"VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.s ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1688:117: stderr: | stderr: 1688 | ... "VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory. stderr: --> contracts/Contract.sol:1688:9: stderr: | stderr: 1688 | string memory data = string.concat(Strings.toString(uint160(msg.sender)),"VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1704:44: stderr: | stderr: 1704 | ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"allowlist",Strings.toString(amoun ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1704:94: stderr: | stderr: 1704 | ... g(uint160(msg.sender)),"allowlist",Strings.toString(amount),Strings.toString(walletNonce[msg.s ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1704:119: stderr: | stderr: 1704 | ... llowlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory. stderr: --> contracts/Contract.sol:1704:9: stderr: | stderr: 1704 | string memory data = string.concat( ... .toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1750:43: stderr: | stderr: 1750 | ... string memory ids = string.concat(Strings.toString(tokenIds[0]),Strings.toString(tokenIds[1]),Stri ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1750:73: stderr: | stderr: 1750 | ... ncat(Strings.toString(tokenIds[0]),Strings.toString(tokenIds[1]),Strings.toString(tokenIds[2]),Stri ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1750:103: stderr: | stderr: 1750 | ... [0]),Strings.toString(tokenIds[1]),Strings.toString(tokenIds[2]),Strings.toString(tokenIds[3]),Stri ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1750:133: stderr: | stderr: 1750 | ... [1]),Strings.toString(tokenIds[2]),Strings.toString(tokenIds[3]),Strings.toString(tokenIds[4])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1750:163: stderr: | stderr: 1750 | ... [2]),Strings.toString(tokenIds[3]),Strings.toString(tokenIds[4])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory. stderr: --> contracts/Contract.sol:1750:9: stderr: | stderr: 1750 | string memory ids = string.concat(S ... [3]),Strings.toString(tokenIds[4])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1751:44: stderr: | stderr: 1751 | ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"sacrifice",ids,Strings.toString(b ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1751:94: stderr: | stderr: 1751 | ... g(uint160(msg.sender)),"sacrifice",ids,Strings.toString(bounty),Strings.t ... stderr: | ^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1751:98: stderr: | stderr: 1751 | ... nt160(msg.sender)),"sacrifice",ids,Strings.toString(bounty),Strings.toString(walletNonce[msg.s ... stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1751:123: stderr: | stderr: 1751 | ... fice",ids,Strings.toString(bounty),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory. stderr: --> contracts/Contract.sol:1751:9: stderr: | stderr: 1751 | string memory data = string.concat( ... .toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1780:104: stderr: | stderr: 1780 | bytes32 data_hash = keccak256(abi.encodePacked(string.concat("\x19Ethereum Signed Message:\n", Strings.toString(bytes(data).length)),data)); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1785:30: stderr: | stderr: 1785 | return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1785:63: stderr: | stderr: 1785 | return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1785:69: stderr: | stderr: 1785 | return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided. stderr: --> contracts/Contract.sol:1785:94: stderr: | stderr: 1785 | return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6359): Return argument type bytes memory is not implicitly convertible to expected type (type of first return variable) string memory. stderr: --> contracts/Contract.sol:1785:16: stderr: | stderr: 1785 | return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender])); stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Traceback (most recent call last): File "/var/www/tripwire/.venv/bin/slither", line 10, in <module> sys.exit(main()) ~~~~^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 776, in main main_impl(all_detector_classes=detectors, all_printer_classes=printers) ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 882, in main_impl ) = process_all(filename, args, detector_classes, printer_classes) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 96, in process_all compilations = compile_all(target, **vars(args)) File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all compilations.append(CryticCompile(target, **kwargs)) ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__ self._compile(**kwargs) ~~~~~~~~~~~~~^^^^^^^^^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile self._platform.compile(self, **kwargs) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/foundry.py", line 102, in compile hardhat_like_parsing( ~~~~~~~~~~~~~~~~~~~~^ crytic_compile, str(self._target), build_directory, str(self._project_root) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/hardhat.py", line 52, in hardhat_like_parsing raise InvalidCompilation(txt) crytic_compile.platform.exceptions.InvalidCompilation: Compilation failed. Can you run build command? /tmp/slither-l232__ww/out/build-info is not a directory.
Attempts
2 / 2
Findings
0
Solc
View stderr
Traceback (most recent call last):
  File "/var/www/tripwire/worker/worker.py", line 198, in main
    payload = dispatch_job(job_type, job_id, job_meta, run_data, config, laravel_client)
  File "/var/www/tripwire/worker/worker.py", line 114, in dispatch_job
    return slither_run.run(job_id, job_meta, run_data, config, log, laravel_client)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/www/tripwire/worker/jobs/slither_run.py", line 1084, in run
    stdout_text, stderr_text, result_json = _run_slither(
                                            ~~~~~~~~~~~~^
        workspace,
        ^^^^^^^^^^
    ...<4 lines>...
        target_path=target_path,
        ^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/var/www/tripwire/worker/jobs/slither_run.py", line 958, in _run_slither
    raise RuntimeError(f"slither failed (exit {result.returncode}): {stderr_text or stdout_text}")
RuntimeError: slither failed (exit 1): 'forge clean' running (wd: /tmp/slither-l232__ww)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-l232__ww)
'forge' returned non-zero exit code 1
Compiling 1 files with Solc 0.8.11
stdout: Solc 0.8.11 finished in 31.27ms
Error: Compiler run failed:
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1688:44:
stderr:      |
stderr: 1688 |  ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"VIPlist",Strings.toString(amount) ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1688:92:
stderr:      |
stderr: 1688 |  ... ing(uint160(msg.sender)),"VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.s ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1688:117:
stderr:      |
stderr: 1688 |  ... "VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory.
stderr:     --> contracts/Contract.sol:1688:9:
stderr:      |
stderr: 1688 |         string memory data = string.concat(Strings.toString(uint160(msg.sender)),"VIPlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1704:44:
stderr:      |
stderr: 1704 |  ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"allowlist",Strings.toString(amoun ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1704:94:
stderr:      |
stderr: 1704 |  ... g(uint160(msg.sender)),"allowlist",Strings.toString(amount),Strings.toString(walletNonce[msg.s ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1704:119:
stderr:      |
stderr: 1704 |  ... llowlist",Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory.
stderr:     --> contracts/Contract.sol:1704:9:
stderr:      |
stderr: 1704 |         string memory data = string.concat( ... .toString(walletNonce[msg.sender]));
stderr:      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1750:43:
stderr:      |
stderr: 1750 |  ...  string memory ids = string.concat(Strings.toString(tokenIds[0]),Strings.toString(tokenIds[1]),Stri ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1750:73:
stderr:      |
stderr: 1750 |  ... ncat(Strings.toString(tokenIds[0]),Strings.toString(tokenIds[1]),Strings.toString(tokenIds[2]),Stri ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1750:103:
stderr:      |
stderr: 1750 |  ... [0]),Strings.toString(tokenIds[1]),Strings.toString(tokenIds[2]),Strings.toString(tokenIds[3]),Stri ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1750:133:
stderr:      |
stderr: 1750 |  ... [1]),Strings.toString(tokenIds[2]),Strings.toString(tokenIds[3]),Strings.toString(tokenIds[4]));
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1750:163:
stderr:      |
stderr: 1750 |  ... [2]),Strings.toString(tokenIds[3]),Strings.toString(tokenIds[4]));
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory.
stderr:     --> contracts/Contract.sol:1750:9:
stderr:      |
stderr: 1750 |         string memory ids = string.concat(S ... [3]),Strings.toString(tokenIds[4]));
stderr:      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1751:44:
stderr:      |
stderr: 1751 |  ... string memory data = string.concat(Strings.toString(uint160(msg.sender)),"sacrifice",ids,Strings.toString(b ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1751:94:
stderr:      |
stderr: 1751 |  ... g(uint160(msg.sender)),"sacrifice",ids,Strings.toString(bounty),Strings.t ...
stderr:      |                                         ^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1751:98:
stderr:      |
stderr: 1751 |  ... nt160(msg.sender)),"sacrifice",ids,Strings.toString(bounty),Strings.toString(walletNonce[msg.s ...
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1751:123:
stderr:      |
stderr: 1751 |  ... fice",ids,Strings.toString(bounty),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (9574): Type bytes memory is not implicitly convertible to expected type string memory.
stderr:     --> contracts/Contract.sol:1751:9:
stderr:      |
stderr: 1751 |         string memory data = string.concat( ... .toString(walletNonce[msg.sender]));
stderr:      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1780:104:
stderr:      |
stderr: 1780 |         bytes32 data_hash = keccak256(abi.encodePacked(string.concat("\x19Ethereum Signed Message:\n", Strings.toString(bytes(data).length)),data));
stderr:      |                                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1785:30:
stderr:      |
stderr: 1785 |         return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1785:63:
stderr:      |
stderr: 1785 |         return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                                               ^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1785:69:
stderr:      |
stderr: 1785 |         return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (8015): Invalid type for argument in the bytes.concat function call. bytes or fixed bytes type is required, but string provided.
stderr:     --> contracts/Contract.sol:1785:94:
stderr:      |
stderr: 1785 |         return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6359): Return argument type bytes memory is not implicitly convertible to expected type (type of first return variable) string memory.
stderr:     --> contracts/Contract.sol:1785:16:
stderr:      |
stderr: 1785 |         return string.concat(Strings.toString(uint160(sendr)),typez,Strings.toString(amount),Strings.toString(walletNonce[msg.sender]));
stderr:      |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Traceback (most recent call last):
  File "/var/www/tripwire/.venv/bin/slither", line 10, in <module>
    sys.exit(main())
             ~~~~^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 776, in main
    main_impl(all_detector_classes=detectors, all_printer_classes=printers)
    ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 882, in main_impl
    ) = process_all(filename, args, detector_classes, printer_classes)
        ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 96, in process_all
    compilations = compile_all(target, **vars(args))
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all
    compilations.append(CryticCompile(target, **kwargs))
                        ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__
    self._compile(**kwargs)
    ~~~~~~~~~~~~~^^^^^^^^^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile
    self._platform.compile(self, **kwargs)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/foundry.py", line 102, in compile
    hardhat_like_parsing(
    ~~~~~~~~~~~~~~~~~~~~^
        crytic_compile, str(self._target), build_directory, str(self._project_root)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/hardhat.py", line 52, in hardhat_like_parsing
    raise InvalidCompilation(txt)
crytic_compile.platform.exceptions.InvalidCompilation: Compilation failed. Can you run build command?
/tmp/slither-l232__ww/out/build-info is not a directory.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
3
No findings?
no
Summary
Found three issues in the Azaraks contract: mint proceeds are stuck in the NFT contract, signer initialization can allow unauthorized mints, and signatures are replayable across deployments/chains.
View stdout
{"no_findings":false,"summary":"Found three issues in the Azaraks contract: mint proceeds are stuck in the NFT contract, signer initialization can allow unauthorized mints, and signatures are replayable across deployments/chains.","findings":[{"severity":"high","category":"other","title":"Mint proceeds are trapped in Azaraks because PaymentSplitter never receives funds","exploit_scenario":"Users pay ETH to `VIPMint`/`allowListMint`, but the ETH stays in the Azaraks contract. The only withdrawal path calls `_splitter.release`, which releases funds from the PaymentSplitter contract, not from Azaraks. As a result, all mint revenue is permanently stuck and cannot be withdrawn.","recommendation":"Forward mint proceeds to the PaymentSplitter (e.g., send `msg.value` to `_splitter` on each mint) or add a direct withdraw function from Azaraks to distribute/transfer ETH. Consider making Azaraks receive ETH and immediately forward to `_splitter`.","evidence":"`VIPMint`/`allowListMint` are payable and accept ETH but never transfer it out; `withdraw` only calls `_splitter.release`.","locations":["contracts/Contract.sol:1686","contracts/Contract.sol:1702","contracts/Contract.sol:1794"]},{"severity":"medium","category":"auth","title":"Uninitialized signerAddress allows anyone to mint with invalid signatures","exploit_scenario":"`signerAddress` defaults to `address(0)` and can be left unset after deployment (or set to zero). `ecrecover` returns `address(0)` for invalid signatures, so the `verifySignature(...) == signerAddress` check passes. An attacker can mint VIP tokens for free (or allowlist tokens by paying) using `v=0,r=0,s=0` before the signer is set, potentially consuming the entire supply (limited only per-wallet).","recommendation":"Initialize `signerAddress` in the constructor and add `require(signerAddress != address(0))` to signature-gated functions. Also reject `ecrecover` returning `address(0)` and validate `v`/`s` ranges.","evidence":"Signature checks compare to `signerAddress` without ensuring it is non-zero.","locations":["contracts/Contract.sol:1650","contracts/Contract.sol:1686","contracts/Contract.sol:1702","contracts/Contract.sol:1744","contracts/Contract.sol:1774","contracts/Contract.sol:1779"]},{"severity":"low","category":"auth","title":"Signatures lack domain separation, enabling cross-chain or cross-deployment replay","exploit_scenario":"The signed message omits chain id and contract address. A valid allowlist/VIP/sacrifice signature from one deployment can be replayed on another deployment (or chain) that uses the same signer key and message format, bypassing intended per-deployment gating.","recommendation":"Include `block.chainid` and `address(this)` in the signed payload, or migrate to EIP-712 typed structured data signatures.","evidence":"Message construction only includes sender, type string, amount/ids, bounty, and nonce.","locations":["contracts/Contract.sol:1688","contracts/Contract.sol:1704","contracts/Contract.sol:1750","contracts/Contract.sol:1779"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-uo7rjkoy
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019bb2f2-aa6a-76b1-a211-5cf2e4f08093
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.

Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.

Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers

thinking
**Reading AUDIT_BUNDLE file**
exec
/bin/bash -lc ls in /tmp/codex-uo7rjkoy succeeded in 6ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
contracts
exec
/bin/bash -lc 'cat /tmp/codex-uo7rjkoy/AUDIT_BUNDLE.txt' in /tmp/codex-uo7rjkoy succeeded in 28ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.

================================================================================
FILE: contracts/Contract.sol
================================================================================
// SPDX-License-Identifier: MIT
// File: @openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol


// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/draft-IERC20Permit.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in
 * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].
 *
 * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by
 * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't

thinking
**Analyzing first-party contract vulnerabilities**
exec
/bin/bash -lc "nl -ba /tmp/codex-uo7rjkoy/contracts/Citycat.sol | sed -n '1,240p'" in /tmp/codex-uo7rjkoy succeeded in 18ms:
nl: /tmp/codex-uo7rjkoy/contracts/Citycat.sol: No such file or directory

thinking
**Checking contract file location**
exec
/bin/bash -lc 'rg --files /tmp/codex-uo7rjkoy/contracts' in /tmp/codex-uo7rjkoy succeeded in 37ms:
/tmp/codex-uo7rjkoy/contracts/Contract.sol

thinking
**Searching for Azaraks references in contract**
exec
/bin/bash -lc "nl -ba /tmp/codex-uo7rjkoy/contracts/Contract.sol | sed -n '520,860p'" in /tmp/codex-uo7rjkoy succeeded in 23ms:
   520	     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
   521	     * but performing a delegate call.
   522	     *
   523	     * _Available since v3.4._
   524	     */
   525	    function functionDelegateCall(
   526	        address target,
   527	        bytes memory data,
   528	        string memory errorMessage
   529	    ) internal returns (bytes memory) {
   530	        require(isContract(target), "Address: delegate call to non-contract");
   531	
   532	        (bool success, bytes memory returndata) = target.delegatecall(data);
   533	        return verifyCallResult(success, returndata, errorMessage);
   534	    }
   535	
   536	    /**
   537	     * @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the
   538	     * revert reason using the provided one.
   539	     *

thinking
**Searching for Azarak line numbers**
exec
/bin/bash -lc 'rg -n "contract Azaraks|VIPMint|allowListMint|verifySignature|setSignerAddress|Sacrifice" /tmp/codex-uo7rjkoy/contracts/Contract.sol' in /tmp/codex-uo7rjkoy succeeded in 9ms:
1647:contract Azaraks is ERC721Burnable, Ownable {
1686:    function VIPMint(uint256 amount, uint8 v, bytes32 r, bytes32 s) external payable{
1689:        require(verifySignature(data, v, r, s)==signerAddress,"Invalid signature");
1702:    function allowListMint(uint256 amount, uint8 v, bytes32 r, bytes32 s) external payable{
1705:        require(verifySignature(data, v, r, s)==signerAddress,"Invalid signature");
1744:    function Sacrifice(uint256[5] calldata tokenIds, uint256 bounty, uint8 v, bytes32 r, bytes32 s) external{        
1752:        require(verifySignature(data, v, r, s)==signerAddress,"Invalid signature!!!!AFASFASF");
1774:    function setSignerAddress(address newSigner) external onlyOwner{
1779:    function verifySignature(string memory data, uint8 v, bytes32 r, bytes32 s) public pure returns (address signer) {
exec
/bin/bash -lc "nl -ba /tmp/codex-uo7rjkoy/contracts/Contract.sol | sed -n '1620,1815p'" in /tmp/codex-uo7rjkoy succeeded in 6ms:
  1620	 * @dev ERC721 Token that can be burned (destroyed).
  1621	 */
  1622	abstract contract ERC721Burnable is Context, ERC721 {
  1623	    /**
  1624	     * @dev Burns `tokenId`. See {ERC721-_burn}.
  1625	     *
  1626	     * Requirements:
  1627	     *
  1628	     * - The caller must own `tokenId` or be an approved operator.
  1629	     */
  1630	    function burn(uint256 tokenId) public virtual {
  1631	        //solhint-disable-next-line max-line-length
  1632	        require(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: caller is not token owner nor approved");
  1633	        _burn(tokenId);
  1634	    }
  1635	}
  1636	
  1637	// File: contracts/Citycat.sol
  1638	
  1639	

thinking
**Summarizing contract vulnerability findings**

I'm gathering detailed findings on contract vulnerabilities focused on signature issues, fund management, and access control. I notice serious concerns like mint fees stuck due to PaymentSplitter misuse, uninitialized signerAddress enabling unauthorized minting, and signature replay risks across chains due to missing domain separation. I'll structure the findings clearly with severity, categories, exploit scenarios, recommendations, and evidence for each.
codex
{"no_findings":false,"summary":"Found three issues in the Azaraks contract: mint proceeds are stuck in the NFT contract, signer initialization can allow unauthorized mints, and signatures are replayable across deployments/chains.","findings":[{"severity":"high","category":"other","title":"Mint proceeds are trapped in Azaraks because PaymentSplitter never receives funds","exploit_scenario":"Users pay ETH to `VIPMint`/`allowListMint`, but the ETH stays in the Azaraks contract. The only withdrawal path calls `_splitter.release`, which releases funds from the PaymentSplitter contract, not from Azaraks. As a result, all mint revenue is permanently stuck and cannot be withdrawn.","recommendation":"Forward mint proceeds to the PaymentSplitter (e.g., send `msg.value` to `_splitter` on each mint) or add a direct withdraw function from Azaraks to distribute/transfer ETH. Consider making Azaraks receive ETH and immediately forward to `_splitter`.","evidence":"`VIPMint`/`allowListMint` are payable and accept ETH but never transfer it out; `withdraw` only calls `_splitter.release`.","locations":["contracts/Contract.sol:1686","contracts/Contract.sol:1702","contracts/Contract.sol:1794"]},{"severity":"medium","category":"auth","title":"Uninitialized signerAddress allows anyone to mint with invalid signatures","exploit_scenario":"`signerAddress` defaults to `address(0)` and can be left unset after deployment (or set to zero). `ecrecover` returns `address(0)` for invalid signatures, so the `verifySignature(...) == signerAddress` check passes. An attacker can mint VIP tokens for free (or allowlist tokens by paying) using `v=0,r=0,s=0` before the signer is set, potentially consuming the entire supply (limited only per-wallet).","recommendation":"Initialize `signerAddress` in the constructor and add `require(signerAddress != address(0))` to signature-gated functions. Also reject `ecrecover` returning `address(0)` and validate `v`/`s` ranges.","evidence":"Signature checks compare to `signerAddress` without ensuring it is non-zero.","locations":["contracts/Contract.sol:1650","contracts/Contract.sol:1686","contracts/Contract.sol:1702","contracts/Contract.sol:1744","contracts/Contract.sol:1774","contracts/Contract.sol:1779"]},{"severity":"low","category":"auth","title":"Signatures lack domain separation, enabling cross-chain or cross-deployment replay","exploit_scenario":"The signed message omits chain id and contract address. A valid allowlist/VIP/sacrifice signature from one deployment can be replayed on another deployment (or chain) that uses the same signer key and message format, bypassing intended per-deployment gating.","recommendation":"Include `block.chainid` and `address(this)` in the signed payload, or migrate to EIP-712 typed structured data signatures.","evidence":"Message construction only includes sender, type string, amount/ids, bounty, and nonce.","locations":["contracts/Contract.sol:1688","contracts/Contract.sol:1704","contracts/Contract.sol:1750","contracts/Contract.sol:1779"]}]}
tokens used
30,288
Metadata
{
    "codex": {
        "ran_at": "2026-01-12T16:06:41.142319+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Found three issues in the Azaraks contract: mint proceeds are stuck in the NFT contract, signer initialization can allow unauthorized mints, and signatures are replayable across deployments/chains.",
    "raw_final": {
        "summary": "Found three issues in the Azaraks contract: mint proceeds are stuck in the NFT contract, signer initialization can allow unauthorized mints, and signatures are replayable across deployments/chains.",
        "findings": [
            {
                "title": "Mint proceeds are trapped in Azaraks because PaymentSplitter never receives funds",
                "category": "other",
                "evidence": "`VIPMint`/`allowListMint` are payable and accept ETH but never transfer it out; `withdraw` only calls `_splitter.release`.",
                "severity": "high",
                "locations": [
                    "contracts/Contract.sol:1686",
                    "contracts/Contract.sol:1702",
                    "contracts/Contract.sol:1794"
                ],
                "recommendation": "Forward mint proceeds to the PaymentSplitter (e.g., send `msg.value` to `_splitter` on each mint) or add a direct withdraw function from Azaraks to distribute/transfer ETH. Consider making Azaraks receive ETH and immediately forward to `_splitter`.",
                "exploit_scenario": "Users pay ETH to `VIPMint`/`allowListMint`, but the ETH stays in the Azaraks contract. The only withdrawal path calls `_splitter.release`, which releases funds from the PaymentSplitter contract, not from Azaraks. As a result, all mint revenue is permanently stuck and cannot be withdrawn."
            },
            {
                "title": "Uninitialized signerAddress allows anyone to mint with invalid signatures",
                "category": "auth",
                "evidence": "Signature checks compare to `signerAddress` without ensuring it is non-zero.",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol:1650",
                    "contracts/Contract.sol:1686",
                    "contracts/Contract.sol:1702",
                    "contracts/Contract.sol:1744",
                    "contracts/Contract.sol:1774",
                    "contracts/Contract.sol:1779"
                ],
                "recommendation": "Initialize `signerAddress` in the constructor and add `require(signerAddress != address(0))` to signature-gated functions. Also reject `ecrecover` returning `address(0)` and validate `v`/`s` ranges.",
                "exploit_scenario": "`signerAddress` defaults to `address(0)` and can be left unset after deployment (or set to zero). `ecrecover` returns `address(0)` for invalid signatures, so the `verifySignature(...) == signerAddress` check passes. An attacker can mint VIP tokens for free (or allowlist tokens by paying) using `v=0,r=0,s=0` before the signer is set, potentially consuming the entire supply (limited only per-wallet)."
            },
            {
                "title": "Signatures lack domain separation, enabling cross-chain or cross-deployment replay",
                "category": "auth",
                "evidence": "Message construction only includes sender, type string, amount/ids, bounty, and nonce.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:1688",
                    "contracts/Contract.sol:1704",
                    "contracts/Contract.sol:1750",
                    "contracts/Contract.sol:1779"
                ],
                "recommendation": "Include `block.chainid` and `address(this)` in the signed payload, or migrate to EIP-712 typed structured data signatures.",
                "exploit_scenario": "The signed message omits chain id and contract address. A valid allowlist/VIP/sacrifice signature from one deployment can be replayed on another deployment (or chain) that uses the same signer key and message format, bypassing intended per-deployment gating."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
3
EXT*/BALANCE
2
Total opcodes
10356
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x025c
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x705439ea
00000019: GT
0000001a: PUSH2 0x0144
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xa77b3850
00000024: GT
00000025: PUSH2 0x00b6
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xc87b56dd
0000002f: GT
00000030: PUSH2 0x007a
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xc87b56dd
0000003a: EQ
0000003b: PUSH2 0x08f2
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xdef0c275
00000045: EQ
00000046: PUSH2 0x092f
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xe8b5498d
00000050: EQ
00000051: PUSH2 0x095a
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xe985e9c5
0000005b: EQ
0000005c: PUSH2 0x0985
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xf2fde38b
00000066: EQ
00000067: PUSH2 0x09c2
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0xf6a6fde9
00000071: EQ
00000072: PUSH2 0x09eb
00000075: JUMPI
00000076: PUSH2 0x025c
00000079: JUMP
0000007a: JUMPDEST
0000007b: DUP1
0000007c: PUSH4 0xa77b3850
00000081: EQ
00000082: PUSH2 0x082e
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xaf031d51
0000008c: EQ
0000008d: PUSH2 0x084a
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xb88d4fde
00000097: EQ
00000098: PUSH2 0x0875
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xbdbc5e4c
000000a2: EQ
000000a3: PUSH2 0x089e
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0xbfa457bc
000000ad: EQ
000000ae: PUSH2 0x08c9
000000b1: JUMPI
000000b2: PUSH2 0x025c
000000b5: JUMP
000000b6: JUMPDEST
000000b7: DUP1
000000b8: PUSH4 0x8bf5ae90
000000bd: GT
000000be: PUSH2 0x0108
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0x8bf5ae90
000000c8: EQ
000000c9: PUSH2 0x073d
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0x8da5cb5b
000000d3: EQ
000000d4: PUSH2 0x0768
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0x8eddc722
000000de: EQ
000000df: PUSH2 0x0793
000000e2: JUMPI
000000e3: DUP1
000000e4: PUSH4 0x95d89b41
000000e9: EQ
000000ea: PUSH2 0x07be
000000ed: JUMPI
000000ee: DUP1
000000ef: PUSH4 0x9f543b4c
000000f4: EQ
000000f5: PUSH2 0x07e9
000000f8: JUMPI
000000f9: DUP1
000000fa: PUSH4 0xa22cb465
000000ff: EQ
00000100: PUSH2 0x0805
00000103: JUMPI
00000104: PUSH2 0x025c
00000107: JUMP
00000108: JUMPDEST
00000109: DUP1
0000010a: PUSH4 0x705439ea
0000010f: EQ
00000110: PUSH2 0x0646
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x70a08231
0000011a: EQ
0000011b: PUSH2 0x0683
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0x715018a6
00000125: EQ
00000126: PUSH2 0x06c0
00000129: JUMPI
0000012a: DUP1
0000012b: PUSH4 0x870c1301
00000130: EQ
00000131: PUSH2 0x06d7
00000134: JUMPI
00000135: DUP1
00000136: PUSH4 0x8bb130bb
0000013b: EQ
0000013c: PUSH2 0x0700
0000013f: JUMPI
00000140: PUSH2 0x025c
00000143: JUMP
00000144: JUMPDEST
00000145: DUP1
00000146: PUSH4 0x51cff8d9
0000014b: GT
0000014c: PUSH2 0x01dd
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x667b27aa
00000156: GT
00000157: PUSH2 0x01a1
0000015a: JUMPI
0000015b: DUP1
0000015c: PUSH4 0x667b27aa
00000161: EQ
00000162: PUSH2 0x0534
00000165: JUMPI
00000166: DUP1
00000167: PUSH4 0x6790a9de
0000016c: EQ
0000016d: PUSH2 0x055f
00000170: JUMPI
00000171: DUP1
00000172: PUSH4 0x6817c76c
00000177: EQ
00000178: PUSH2 0x0588
0000017b: JUMPI
0000017c: DUP1
0000017d: PUSH4 0x6c0360eb
00000182: EQ
00000183: PUSH2 0x05b3
00000186: JUMPI
00000187: DUP1
00000188: PUSH4 0x6d79657f
0000018d: EQ
0000018e: PUSH2 0x05de
00000191: JUMPI
00000192: DUP1
00000193: PUSH4 0x6dcee513
00000198: EQ
00000199: PUSH2 0x061b
0000019c: JUMPI
0000019d: PUSH2 0x025c
000001a0: JUMP
000001a1: JUMPDEST
000001a2: DUP1
000001a3: PUSH4 0x51cff8d9
000001a8: EQ
000001a9: PUSH2 0x043b
000001ac: JUMPI
000001ad: DUP1
000001ae: PUSH4 0x5503a0e8
000001b3: EQ
000001b4: PUSH2 0x0464
000001b7: JUMPI
000001b8: DUP1
000001b9: PUSH4 0x5b7633d0
000001be: EQ
000001bf: PUSH2 0x048f
000001c2: JUMPI
000001c3: DUP1
000001c4: PUSH4 0x5e57966d
000001c9: EQ
000001ca: PUSH2 0x04ba
000001cd: JUMPI
000001ce: DUP1
000001cf: PUSH4 0x6352211e
000001d4: EQ
000001d5: PUSH2 0x04f7
000001d8: JUMPI
000001d9: PUSH2 0x025c
000001dc: JUMP
000001dd: JUMPDEST
000001de: DUP1
000001df: PUSH4 0x23b872dd
000001e4: GT
000001e5: PUSH2 0x0224
000001e8: JUMPI
000001e9: DUP1
000001ea: PUSH4 0x23b872dd
000001ef: EQ
000001f0: PUSH2 0x0358
000001f3: JUMPI
000001f4: DUP1
000001f5: PUSH4 0x35333ab5
000001fa: EQ
000001fb: PUSH2 0x0381
000001fe: JUMPI
000001ff: DUP1
00000200: PUSH4 0x42842e0e
00000205: EQ
00000206: PUSH2 0x03be
00000209: JUMPI
0000020a: DUP1
0000020b: PUSH4 0x42966c68
00000210: EQ
00000211: PUSH2 0x03e7
00000214: JUMPI
00000215: DUP1
00000216: PUSH4 0x4f02c420
0000021b: EQ
0000021c: PUSH2 0x0410
0000021f: JUMPI
00000220: PUSH2 0x025c
00000223: JUMP
00000224: JUMPDEST
00000225: DUP1
00000226: PUSH4 0x01ffc9a7
0000022b: EQ
0000022c: PUSH2 0x0261
0000022f: JUMPI
00000230: DUP1
00000231: PUSH4 0x046dc166
00000236: EQ
00000237: PUSH2 0x029e
0000023a: JUMPI
0000023b: DUP1
0000023c: PUSH4 0x06fdde03
00000241: EQ
00000242: PUSH2 0x02c7
00000245: JUMPI
00000246: DUP1
00000247: PUSH4 0x081812fc
0000024c: EQ
0000024d: PUSH2 0x02f2
00000250: JUMPI
00000251: DUP1
00000252: PUSH4 0x095ea7b3
00000257: EQ
00000258: PUSH2 0x032f
0000025b: JUMPI
0000025c: JUMPDEST
0000025d: PUSH1 0x00
0000025f: DUP1
00000260: REVERT
00000261: JUMPDEST
00000262: CALLVALUE
00000263: DUP1
00000264: ISZERO
00000265: PUSH2 0x026d
00000268: JUMPI
00000269: PUSH1 0x00
0000026b: DUP1
0000026c: REVERT
0000026d: JUMPDEST
0000026e: POP
0000026f: PUSH2 0x0288
00000272: PUSH1 0x04
00000274: DUP1
00000275: CALLDATASIZE
00000276: SUB
00000277: DUP2
00000278: ADD
00000279: SWAP1
0000027a: PUSH2 0x0283
0000027d: SWAP2
0000027e: SWAP1
0000027f: PUSH2 0x319e
00000282: JUMP
00000283: JUMPDEST
00000284: PUSH2 0x0a28
00000287: JUMP
00000288: JUMPDEST
00000289: PUSH1 0x40
0000028b: MLOAD
0000028c: PUSH2 0x0295
0000028f: SWAP2
00000290: SWAP1
00000291: PUSH2 0x31e6
00000294: JUMP
00000295: JUMPDEST
00000296: PUSH1 0x40
00000298: MLOAD
00000299: DUP1
0000029a: SWAP2
0000029b: SUB
0000029c: SWAP1
0000029d: RETURN
0000029e: JUMPDEST
0000029f: CALLVALUE
000002a0: DUP1
000002a1: ISZERO
000002a2: PUSH2 0x02aa
000002a5: JUMPI
000002a6: PUSH1 0x00
000002a8: DUP1
000002a9: REVERT
000002aa: JUMPDEST
000002ab: POP
000002ac: PUSH2 0x02c5
000002af: PUSH1 0x04
000002b1: DUP1
000002b2: CALLDATASIZE
000002b3: SUB
000002b4: DUP2
000002b5: ADD
000002b6: SWAP1
000002b7: PUSH2 0x02c0
000002ba: SWAP2
000002bb: SWAP1
000002bc: PUSH2 0x325f
000002bf: JUMP
000002c0: JUMPDEST
000002c1: PUSH2 0x0b0a
000002c4: JUMP
000002c5: JUMPDEST
000002c6: STOP
000002c7: JUMPDEST
000002c8: CALLVALUE
000002c9: DUP1
000002ca: ISZERO
000002cb: PUSH2 0x02d3
000002ce: JUMPI
000002cf: PUSH1 0x00
000002d1: DUP1
000002d2: REVERT
000002d3: JUMPDEST
000002d4: POP
000002d5: PUSH2 0x02dc
000002d8: PUSH2 0x0b56
000002db: JUMP
000002dc: JUMPDEST
000002dd: PUSH1 0x40
000002df: MLOAD
000002e0: PUSH2 0x02e9
000002e3: SWAP2
000002e4: SWAP1
000002e5: PUSH2 0x3325
000002e8: JUMP
000002e9: JUMPDEST
000002ea: PUSH1 0x40
000002ec: MLOAD
000002ed: DUP1
000002ee: SWAP2
000002ef: SUB
000002f0: SWAP1
000002f1: RETURN
000002f2: JUMPDEST
000002f3: CALLVALUE
000002f4: DUP1
000002f5: ISZERO
000002f6: PUSH2 0x02fe
000002f9: JUMPI
000002fa: PUSH1 0x00
000002fc: DUP1
000002fd: REVERT
000002fe: JUMPDEST
000002ff: POP
00000300: PUSH2 0x0319
00000303: PUSH1 0x04
00000305: DUP1
00000306: CALLDATASIZE
00000307: SUB
00000308: DUP2
00000309: ADD
0000030a: SWAP1
0000030b: PUSH2 0x0314
0000030e: SWAP2
0000030f: SWAP1
00000310: PUSH2 0x337d
00000313: JUMP
00000314: JUMPDEST
00000315: PUSH2 0x0be8
00000318: JUMP
00000319: JUMPDEST
0000031a: PUSH1 0x40
0000031c: MLOAD
0000031d: PUSH2 0x0326
00000320: SWAP2
00000321: SWAP1
00000322: PUSH2 0x33b9
00000325: JUMP
00000326: JUMPDEST
00000327: PUSH1 0x40
00000329: MLOAD
0000032a: DUP1
0000032b: SWAP2
0000032c: SUB
0000032d: SWAP1
0000032e: RETURN
0000032f: JUMPDEST
00000330: CALLVALUE
00000331: DUP1
00000332: ISZERO
00000333: PUSH2 0x033b
00000336: JUMPI
00000337: PUSH1 0x00
00000339: DUP1
0000033a: REVERT
0000033b: JUMPDEST
0000033c: POP
0000033d: PUSH2 0x0356
00000340: PUSH1 0x04
00000342: DUP1
00000343: CALLDATASIZE
00000344: SUB
00000345: DUP2
00000346: ADD
00000347: SWAP1
00000348: PUSH2 0x0351
0000034b: SWAP2
0000034c: SWAP1
0000034d: PUSH2 0x33d4
00000350: JUMP
00000351: JUMPDEST
00000352: PUSH2 0x0c2e
00000355: JUMP
00000356: JUMPDEST
00000357: STOP
00000358: JUMPDEST
00000359: CALLVALUE
0000035a: DUP1
0000035b: ISZERO
0000035c: PUSH2 0x0364
0000035f: JUMPI
00000360: PUSH1 0x00
00000362: DUP1
00000363: REVERT
00000364: JUMPDEST
00000365: POP
00000366: PUSH2 0x037f
00000369: PUSH1 0x04
0000036b: DUP1
0000036c: CALLDATASIZE
0000036d: SUB
0000036e: DUP2
0000036f: ADD
00000370: SWAP1
00000371: PUSH2 0x037a
00000374: SWAP2
00000375: SWAP1
00000376: PUSH2 0x3414
00000379: JUMP
0000037a: JUMPDEST
0000037b: PUSH2 0x0d45
0000037e: JUMP
0000037f: JUMPDEST
00000380: STOP
00000381: JUMPDEST
00000382: CALLVALUE
00000383: DUP1
00000384: ISZERO
00000385: PUSH2 0x038d
00000388: JUMPI
00000389: PUSH1 0x00
0000038b: DUP1
0000038c: REVERT
0000038d: JUMPDEST
0000038e: POP
0000038f: PUSH2 0x03a8
00000392: PUSH1 0x04
00000394: DUP1
00000395: CALLDATASIZE
00000396: SUB
00000397: DUP2
00000398: ADD
00000399: SWAP1
0000039a: PUSH2 0x03a3
0000039d: SWAP2
0000039e: SWAP1
0000039f: PUSH2 0x325f
000003a2: JUMP
000003a3: JUMPDEST
000003a4: PUSH2 0x0da5
000003a7: JUMP
000003a8: JUMPDEST
000003a9: PUSH1 0x40
000003ab: MLOAD
000003ac: PUSH2 0x03b5
000003af: SWAP2
000003b0: SWAP1
000003b1: PUSH2 0x3476
000003b4: JUMP
000003b5: JUMPDEST
000003b6: PUSH1 0x40
000003b8: MLOAD
000003b9: DUP1
000003ba: SWAP2
000003bb: SUB
000003bc: SWAP1
000003bd: RETURN
000003be: JUMPDEST
000003bf: CALLVALUE
000003c0: DUP1
000003c1: ISZERO
000003c2: PUSH2 0x03ca
000003c5: JUMPI
000003c6: PUSH1 0x00
000003c8: DUP1
000003c9: REVERT
000003ca: JUMPDEST
000003cb: POP
000003cc: PUSH2 0x03e5
000003cf: PUSH1 0x04
000003d1: DUP1
000003d2: CALLDATASIZE
000003d3: SUB
000003d4: DUP2
000003d5: ADD
000003d6: SWAP1
000003d7: PUSH2 0x03e0
000003da: SWAP2
000003db: SWAP1
000003dc: PUSH2 0x3414
000003df: JUMP
000003e0: JUMPDEST
000003e1: PUSH2 0x0dbd
000003e4: JUMP
000003e5: JUMPDEST
000003e6: STOP
000003e7: JUMPDEST
000003e8: CALLVALUE
000003e9: DUP1
000003ea: ISZERO
000003eb: PUSH2 0x03f3
000003ee: JUMPI
000003ef: PUSH1 0x00
000003f1: DUP1
000003f2: REVERT
000003f3: JUMPDEST
000003f4: POP
000003f5: PUSH2 0x040e
000003f8: PUSH1 0x04
000003fa: DUP1
000003fb: CALLDATASIZE
000003fc: SUB
000003fd: DUP2
000003fe: ADD
000003ff: SWAP1
00000400: PUSH2 0x0409
00000403: SWAP2
00000404: SWAP1
00000405: PUSH2 0x337d
00000408: JUMP
00000409: JUMPDEST
0000040a: PUSH2 0x0ddd
0000040d: JUMP
0000040e: JUMPDEST
0000040f: STOP
00000410: JUMPDEST
00000411: CALLVALUE
00000412: DUP1
00000413: ISZERO
00000414: PUSH2 0x041c
00000417: JUMPI
00000418: PUSH1 0x00
0000041a: DUP1
0000041b: REVERT
0000041c: JUMPDEST
0000041d: POP
0000041e: PUSH2 0x0425
00000421: PUSH2 0x0e39
00000424: JUMP
00000425: JUMPDEST
00000426: PUSH1 0x40
00000428: MLOAD
00000429: PUSH2 0x0432
0000042c: SWAP2
0000042d: SWAP1
0000042e: PUSH2 0x3476
00000431: JUMP
00000432: JUMPDEST
00000433: PUSH1 0x40
00000435: MLOAD
00000436: DUP1
00000437: SWAP2
00000438: SUB
00000439: SWAP1
0000043a: RETURN
0000043b: JUMPDEST
0000043c: CALLVALUE
0000043d: DUP1
0000043e: ISZERO
0000043f: PUSH2 0x0447
00000442: JUMPI
00000443: PUSH1 0x00
00000445: DUP1
00000446: REVERT
00000447: JUMPDEST
00000448: POP
00000449: PUSH2 0x0462
0000044c: PUSH1 0x04
0000044e: DUP1
0000044f: CALLDATASIZE
00000450: SUB
00000451: DUP2
00000452: ADD
00000453: SWAP1
00000454: PUSH2 0x045d
00000457: SWAP2
00000458: SWAP1
00000459: PUSH2 0x34cf
0000045c: JUMP
0000045d: JUMPDEST
0000045e: PUSH2 0x0e3f
00000461: JUMP
00000462: JUMPDEST
00000463: STOP
00000464: JUMPDEST
00000465: CALLVALUE
00000466: DUP1
00000467: ISZERO
00000468: PUSH2 0x0470
0000046b: JUMPI
0000046c: PUSH1 0x00
0000046e: DUP1
0000046f: REVERT
00000470: JUMPDEST
00000471: POP
00000472: PUSH2 0x0479
00000475: PUSH2 0x0ed7
00000478: JUMP
00000479: JUMPDEST
0000047a: PUSH1 0x40
0000047c: MLOAD
0000047d: PUSH2 0x0486
00000480: SWAP2
00000481: SWAP1
00000482: PUSH2 0x3325
00000485: JUMP
00000486: JUMPDEST
00000487: PUSH1 0x40
00000489: MLOAD
0000048a: DUP1
0000048b: SWAP2
0000048c: SUB
0000048d: SWAP1
0000048e: RETURN
0000048f: JUMPDEST
00000490: CALLVALUE
00000491: DUP1
00000492: ISZERO
00000493: PUSH2 0x049b
00000496: JUMPI
00000497: PUSH1 0x00
00000499: DUP1
0000049a: REVERT
0000049b: JUMPDEST
0000049c: POP
0000049d: PUSH2 0x04a4
000004a0: PUSH2 0x0f65
000004a3: JUMP
000004a4: JUMPDEST
000004a5: PUSH1 0x40
000004a7: MLOAD
000004a8: PUSH2 0x04b1
000004ab: SWAP2
000004ac: SWAP1
000004ad: PUSH2 0x33b9
000004b0: JUMP
000004b1: JUMPDEST
000004b2: PUSH1 0x40
000004b4: MLOAD
000004b5: DUP1
000004b6: SWAP2
000004b7: SUB
000004b8: SWAP1
000004b9: RETURN
000004ba: JUMPDEST
000004bb: CALLVALUE
000004bc: DUP1
000004bd: ISZERO
000004be: PUSH2 0x04c6
000004c1: JUMPI
000004c2: PUSH1 0x00
000004c4: DUP1
000004c5: REVERT
000004c6: JUMPDEST
000004c7: POP
000004c8: PUSH2 0x04e1
000004cb: PUSH1 0x04
000004cd: DUP1
000004ce: CALLDATASIZE
000004cf: SUB
000004d0: DUP2
000004d1: ADD
000004d2: SWAP1
000004d3: PUSH2 0x04dc
000004d6: SWAP2
000004d7: SWAP1
000004d8: PUSH2 0x325f
000004db: JUMP
000004dc: JUMPDEST
000004dd: PUSH2 0x0f8b
000004e0: JUMP
000004e1: JUMPDEST
000004e2: PUSH1 0x40
000004e4: MLOAD
000004e5: PUSH2 0x04ee
000004e8: SWAP2
000004e9: SWAP1
000004ea: PUSH2 0x3325
000004ed: JUMP
000004ee: JUMPDEST
000004ef: PUSH1 0x40
000004f1: MLOAD
000004f2: DUP1
000004f3: SWAP2
000004f4: SUB
000004f5: SWAP1
000004f6: RETURN
000004f7: JUMPDEST
000004f8: CALLVALUE
000004f9: DUP1
000004fa: ISZERO
000004fb: PUSH2 0x0503
000004fe: JUMPI
000004ff: PUSH1 0x00
00000501: DUP1
00000502: REVERT
00000503: JUMPDEST
00000504: POP
00000505: PUSH2 0x051e
00000508: PUSH1 0x04
0000050a: DUP1
0000050b: CALLDATASIZE
0000050c: SUB
0000050d: DUP2
0000050e: ADD
0000050f: SWAP1
00000510: PUSH2 0x0519
00000513: SWAP2
00000514: SWAP1
00000515: PUSH2 0x337d
00000518: JUMP
00000519: JUMPDEST
0000051a: PUSH2 0x0fb3
0000051d: JUMP
0000051e: JUMPDEST
0000051f: PUSH1 0x40
00000521: MLOAD
00000522: PUSH2 0x052b
00000525: SWAP2
00000526: SWAP1
00000527: PUSH2 0x33b9
0000052a: JUMP
0000052b: JUMPDEST
0000052c: PUSH1 0x40
0000052e: MLOAD
0000052f: DUP1
00000530: SWAP2
00000531: SUB
00000532: SWAP1
00000533: RETURN
00000534: JUMPDEST
00000535: CALLVALUE
00000536: DUP1
00000537: ISZERO
00000538: PUSH2 0x0540
0000053b: JUMPI
0000053c: PUSH1 0x00
0000053e: DUP1
0000053f: REVERT
00000540: JUMPDEST
00000541: POP
00000542: PUSH2 0x0549
00000545: PUSH2 0x1064
00000548: JUMP
00000549: JUMPDEST
0000054a: PUSH1 0x40
0000054c: MLOAD
0000054d: PUSH2 0x0556
00000550: SWAP2
00000551: SWAP1
00000552: PUSH2 0x3476
00000555: JUMP
00000556: JUMPDEST
00000557: PUSH1 0x40
00000559: MLOAD
0000055a: DUP1
0000055b: SWAP2
0000055c: SUB
0000055d: SWAP1
0000055e: RETURN
0000055f: JUMPDEST
00000560: CALLVALUE
00000561: DUP1
00000562: ISZERO
00000563: PUSH2 0x056b
00000566: JUMPI
00000567: PUSH1 0x00
00000569: DUP1
0000056a: REVERT
0000056b: JUMPDEST
0000056c: POP
0000056d: PUSH2 0x0586
00000570: PUSH1 0x04
00000572: DUP1
00000573: CALLDATASIZE
00000574: SUB
00000575: DUP2
00000576: ADD
00000577: SWAP1
00000578: PUSH2 0x0581
0000057b: SWAP2
0000057c: SWAP1
0000057d: PUSH2 0x3631
00000580: JUMP
00000581: JUMPDEST
00000582: PUSH2 0x106a
00000585: JUMP
00000586: JUMPDEST
00000587: STOP
00000588: JUMPDEST
00000589: CALLVALUE
0000058a: DUP1
0000058b: ISZERO
0000058c: PUSH2 0x0594
0000058f: JUMPI
00000590: PUSH1 0x00
00000592: DUP1
00000593: REVERT
00000594: JUMPDEST
00000595: POP
00000596: PUSH2 0x059d
00000599: PUSH2 0x10a4
0000059c: JUMP
0000059d: JUMPDEST
0000059e: PUSH1 0x40
000005a0: MLOAD
000005a1: PUSH2 0x05aa
000005a4: SWAP2
000005a5: SWAP1
000005a6: PUSH2 0x3476
000005a9: JUMP
000005aa: JUMPDEST
000005ab: PUSH1 0x40
000005ad: MLOAD
000005ae: DUP1
000005af: SWAP2
000005b0: SUB
000005b1: SWAP1
000005b2: RETURN
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: PUSH2 0x05c8
000005c4: PUSH2 0x10aa
000005c7: JUMP
000005c8: JUMPDEST
000005c9: PUSH1 0x40
000005cb: MLOAD
000005cc: PUSH2 0x05d5
000005cf: SWAP2
000005d0: SWAP1
000005d1: PUSH2 0x3325
000005d4: JUMP
000005d5: JUMPDEST
000005d6: PUSH1 0x40
000005d8: MLOAD
000005d9: DUP1
000005da: SWAP2
000005db: SUB
000005dc: SWAP1
000005dd: RETURN
000005de: JUMPDEST
000005df: CALLVALUE
000005e0: DUP1
000005e1: ISZERO
000005e2: PUSH2 0x05ea
000005e5: JUMPI
000005e6: PUSH1 0x00
000005e8: DUP1
000005e9: REVERT
000005ea: JUMPDEST
000005eb: POP
000005ec: PUSH2 0x0605
000005ef: PUSH1 0x04
000005f1: DUP1
000005f2: CALLDATASIZE
000005f3: SUB
000005f4: DUP2
000005f5: ADD
000005f6: SWAP1
000005f7: PUSH2 0x0600
000005fa: SWAP2
000005fb: SWAP1
000005fc: PUSH2 0x325f
000005ff: JUMP
00000600: JUMPDEST
00000601: PUSH2 0x1138
00000604: JUMP
00000605: JUMPDEST
00000606: PUSH1 0x40
00000608: MLOAD
00000609: PUSH2 0x0612
0000060c: SWAP2
0000060d: SWAP1
0000060e: PUSH2 0x3476
00000611: JUMP
00000612: JUMPDEST
00000613: PUSH1 0x40
00000615: MLOAD
00000616: DUP1
00000617: SWAP2
00000618: SUB
00000619: SWAP1
0000061a: RETURN
0000061b: JUMPDEST
0000061c: CALLVALUE
0000061d: DUP1
0000061e: ISZERO
0000061f: PUSH2 0x0627
00000622: JUMPI
00000623: PUSH1 0x00
00000625: DUP1
00000626: REVERT
00000627: JUMPDEST
00000628: POP
00000629: PUSH2 0x0630
0000062c: PUSH2 0x1150
0000062f: JUMP
00000630: JUMPDEST
00000631: PUSH1 0x40
00000633: MLOAD
00000634: PUSH2 0x063d
00000637: SWAP2
00000638: SWAP1
00000639: PUSH2 0x3476
0000063c: JUMP
0000063d: JUMPDEST
0000063e: PUSH1 0x40
00000640: MLOAD
00000641: DUP1
00000642: SWAP2
00000643: SUB
00000644: SWAP1
00000645: RETURN
00000646: JUMPDEST
00000647: CALLVALUE
00000648: DUP1
00000649: ISZERO
0000064a: PUSH2 0x0652
0000064d: JUMPI
0000064e: PUSH1 0x00
00000650: DUP1
00000651: REVERT
00000652: JUMPDEST
00000653: POP
00000654: PUSH2 0x066d
00000657: PUSH1 0x04
00000659: DUP1
0000065a: CALLDATASIZE
0000065b: SUB
0000065c: DUP2
0000065d: ADD
0000065e: SWAP1
0000065f: PUSH2 0x0668
00000662: SWAP2
00000663: SWAP1
00000664: PUSH2 0x3718
00000667: JUMP
00000668: JUMPDEST
00000669: PUSH2 0x1156
0000066c: JUMP
0000066d: JUMPDEST
0000066e: PUSH1 0x40
00000670: MLOAD
00000671: PUSH2 0x067a
00000674: SWAP2
00000675: SWAP1
00000676: PUSH2 0x33b9
00000679: JUMP
0000067a: JUMPDEST
0000067b: PUSH1 0x40
0000067d: MLOAD
0000067e: DUP1
0000067f: SWAP2
00000680: SUB
00000681: SWAP1
00000682: RETURN
00000683: JUMPDEST
00000684: CALLVALUE
00000685: DUP1
00000686: ISZERO
00000687: PUSH2 0x068f
0000068a: JUMPI
0000068b: PUSH1 0x00
0000068d: DUP1
0000068e: REVERT
0000068f: JUMPDEST
00000690: POP
00000691: PUSH2 0x06aa
00000694: PUSH1 0x04
00000696: DUP1
00000697: CALLDATASIZE
00000698: SUB
00000699: DUP2
0000069a: ADD
0000069b: SWAP1
0000069c: PUSH2 0x06a5
0000069f: SWAP2
000006a0: SWAP1
000006a1: PUSH2 0x325f
000006a4: JUMP
000006a5: JUMPDEST
000006a6: PUSH2 0x1206
000006a9: JUMP
000006aa: JUMPDEST
000006ab: PUSH1 0x40
000006ad: MLOAD
000006ae: PUSH2 0x06b7
000006b1: SWAP2
000006b2: SWAP1
000006b3: PUSH2 0x3476
000006b6: JUMP
000006b7: JUMPDEST
000006b8: PUSH1 0x40
000006ba: MLOAD
000006bb: DUP1
000006bc: SWAP2
000006bd: SUB
000006be: SWAP1
000006bf: RETURN
000006c0: JUMPDEST
000006c1: CALLVALUE
000006c2: DUP1
000006c3: ISZERO
000006c4: PUSH2 0x06cc
000006c7: JUMPI
000006c8: PUSH1 0x00
000006ca: DUP1
000006cb: REVERT
000006cc: JUMPDEST
000006cd: POP
000006ce: PUSH2 0x06d5
000006d1: PUSH2 0x12bd
000006d4: JUMP
000006d5: JUMPDEST
000006d6: STOP
000006d7: JUMPDEST
000006d8: CALLVALUE
000006d9: DUP1
000006da: ISZERO
000006db: PUSH2 0x06e3
000006de: JUMPI
000006df: PUSH1 0x00
000006e1: DUP1
000006e2: REVERT
000006e3: JUMPDEST
000006e4: POP
000006e5: PUSH2 0x06fe
000006e8: PUSH1 0x04
000006ea: DUP1
000006eb: CALLDATASIZE
000006ec: SUB
000006ed: DUP2
000006ee: ADD
000006ef: SWAP1
000006f0: PUSH2 0x06f9
000006f3: SWAP2
000006f4: SWAP1
000006f5: PUSH2 0x37c2
000006f8: JUMP
000006f9: JUMPDEST
000006fa: PUSH2 0x12d1
000006fd: JUMP
000006fe: JUMPDEST
000006ff: STOP
00000700: JUMPDEST
00000701: CALLVALUE
00000702: DUP1
00000703: ISZERO
00000704: PUSH2 0x070c
00000707: JUMPI
00000708: PUSH1 0x00
0000070a: DUP1
0000070b: REVERT
0000070c: JUMPDEST
0000070d: POP
0000070e: PUSH2 0x0727
00000711: PUSH1 0x04
00000713: DUP1
00000714: CALLDATASIZE
00000715: SUB
00000716: DUP2
00000717: ADD
00000718: SWAP1
00000719: PUSH2 0x0722
0000071c: SWAP2
0000071d: SWAP1
0000071e: PUSH2 0x383f
00000721: JUMP
00000722: JUMPDEST
00000723: PUSH2 0x16ab
00000726: JUMP
00000727: JUMPDEST
00000728: PUSH1 0x40
0000072a: MLOAD
0000072b: PUSH2 0x0734
0000072e: SWAP2
0000072f: SWAP1
00000730: PUSH2 0x3325
00000733: JUMP
00000734: JUMPDEST
00000735: PUSH1 0x40
00000737: MLOAD
00000738: DUP1
00000739: SWAP2
0000073a: SUB
0000073b: SWAP1
0000073c: RETURN
0000073d: JUMPDEST
0000073e: CALLVALUE
0000073f: DUP1
00000740: ISZERO
00000741: PUSH2 0x0749
00000744: JUMPI
00000745: PUSH1 0x00
00000747: DUP1
00000748: REVERT
00000749: JUMPDEST
0000074a: POP
0000074b: PUSH2 0x0752
0000074e: PUSH2 0x1749
00000751: JUMP
00000752: JUMPDEST
00000753: PUSH1 0x40
00000755: MLOAD
00000756: PUSH2 0x075f
00000759: SWAP2
0000075a: SWAP1
0000075b: PUSH2 0x3476
0000075e: JUMP
0000075f: JUMPDEST
00000760: PUSH1 0x40
00000762: MLOAD
00000763: DUP1
00000764: SWAP2
00000765: SUB
00000766: SWAP1
00000767: RETURN
00000768: JUMPDEST
00000769: CALLVALUE
0000076a: DUP1
0000076b: ISZERO
0000076c: PUSH2 0x0774
0000076f: JUMPI
00000770: PUSH1 0x00
00000772: DUP1
00000773: REVERT
00000774: JUMPDEST
00000775: POP
00000776: PUSH2 0x077d
00000779: PUSH2 0x174f
0000077c: JUMP
0000077d: JUMPDEST
0000077e: PUSH1 0x40
00000780: MLOAD
00000781: PUSH2 0x078a
00000784: SWAP2
00000785: SWAP1
00000786: PUSH2 0x33b9
00000789: JUMP
0000078a: JUMPDEST
0000078b: PUSH1 0x40
0000078d: MLOAD
0000078e: DUP1
0000078f: SWAP2
00000790: SUB
00000791: SWAP1
00000792: RETURN
00000793: JUMPDEST
00000794: CALLVALUE
00000795: DUP1
00000796: ISZERO
00000797: PUSH2 0x079f
0000079a: JUMPI
0000079b: PUSH1 0x00
0000079d: DUP1
0000079e: REVERT
0000079f: JUMPDEST
000007a0: POP
000007a1: PUSH2 0x07a8
000007a4: PUSH2 0x1779
000007a7: JUMP
000007a8: JUMPDEST
000007a9: PUSH1 0x40
000007ab: MLOAD
000007ac: PUSH2 0x07b5
000007af: SWAP2
000007b0: SWAP1
000007b1: PUSH2 0x3476
000007b4: JUMP
000007b5: JUMPDEST
000007b6: PUSH1 0x40
000007b8: MLOAD
000007b9: DUP1
000007ba: SWAP2
000007bb: SUB
000007bc: SWAP1
000007bd: RETURN
000007be: JUMPDEST
000007bf: CALLVALUE
000007c0: DUP1
000007c1: ISZERO
000007c2: PUSH2 0x07ca
000007c5: JUMPI
000007c6: PUSH1 0x00
000007c8: DUP1
000007c9: REVERT
000007ca: JUMPDEST
000007cb: POP
000007cc: PUSH2 0x07d3
000007cf: PUSH2 0x177f
000007d2: JUMP
000007d3: JUMPDEST
000007d4: PUSH1 0x40
000007d6: MLOAD
000007d7: PUSH2 0x07e0
000007da: SWAP2
000007db: SWAP1
000007dc: PUSH2 0x3325
000007df: JUMP
000007e0: JUMPDEST
000007e1: PUSH1 0x40
000007e3: MLOAD
000007e4: DUP1
000007e5: SWAP2
000007e6: SUB
000007e7: SWAP1
000007e8: RETURN
000007e9: JUMPDEST
000007ea: PUSH2 0x0803
000007ed: PUSH1 0x04
000007ef: DUP1
000007f0: CALLDATASIZE
000007f1: SUB
000007f2: DUP2
000007f3: ADD
000007f4: SWAP1
000007f5: PUSH2 0x07fe
000007f8: SWAP2
000007f9: SWAP1
000007fa: PUSH2 0x38ae
000007fd: JUMP
000007fe: JUMPDEST
000007ff: PUSH2 0x1811
00000802: JUMP
00000803: JUMPDEST
00000804: STOP
00000805: JUMPDEST
00000806: CALLVALUE
00000807: DUP1
00000808: ISZERO
00000809: PUSH2 0x0811
0000080c: JUMPI
0000080d: PUSH1 0x00
0000080f: DUP1
00000810: REVERT
00000811: JUMPDEST
00000812: POP
00000813: PUSH2 0x082c
00000816: PUSH1 0x04
00000818: DUP1
00000819: CALLDATASIZE
0000081a: SUB
0000081b: DUP2
0000081c: ADD
0000081d: SWAP1
0000081e: PUSH2 0x0827
00000821: SWAP2
00000822: SWAP1
00000823: PUSH2 0x3941
00000826: JUMP
00000827: JUMPDEST
00000828: PUSH2 0x1be1
0000082b: JUMP
0000082c: JUMPDEST
0000082d: STOP
0000082e: JUMPDEST
0000082f: PUSH2 0x0848
00000832: PUSH1 0x04
00000834: DUP1
00000835: CALLDATASIZE
00000836: SUB
00000837: DUP2
00000838: ADD
00000839: SWAP1
0000083a: PUSH2 0x0843
0000083d: SWAP2
0000083e: SWAP1
0000083f: PUSH2 0x38ae
00000842: JUMP
00000843: JUMPDEST
00000844: PUSH2 0x1bf7
00000847: JUMP
00000848: JUMPDEST
00000849: STOP
0000084a: JUMPDEST
0000084b: CALLVALUE
0000084c: DUP1
0000084d: ISZERO
0000084e: PUSH2 0x0856
00000851: JUMPI
00000852: PUSH1 0x00
00000854: DUP1
00000855: REVERT
00000856: JUMPDEST
00000857: POP
00000858: PUSH2 0x085f
0000085b: PUSH2 0x1f77
0000085e: JUMP
0000085f: JUMPDEST
00000860: PUSH1 0x40
00000862: MLOAD
00000863: PUSH2 0x086c
00000866: SWAP2
00000867: SWAP1
00000868: PUSH2 0x3476
0000086b: JUMP
0000086c: JUMPDEST
0000086d: PUSH1 0x40
0000086f: MLOAD
00000870: DUP1
00000871: SWAP2
00000872: SUB
00000873: SWAP1
00000874: RETURN
00000875: JUMPDEST
00000876: CALLVALUE
00000877: DUP1
00000878: ISZERO
00000879: PUSH2 0x0881
0000087c: JUMPI
0000087d: PUSH1 0x00
0000087f: DUP1
00000880: REVERT
00000881: JUMPDEST
00000882: POP
00000883: PUSH2 0x089c
00000886: PUSH1 0x04
00000888: DUP1
00000889: CALLDATASIZE
0000088a: SUB
0000088b: DUP2
0000088c: ADD
0000088d: SWAP1
0000088e: PUSH2 0x0897
00000891: SWAP2
00000892: SWAP1
00000893: PUSH2 0x3a22
00000896: JUMP
00000897: JUMPDEST
00000898: PUSH2 0x1f7d
0000089b: JUMP
0000089c: JUMPDEST
0000089d: STOP
0000089e: JUMPDEST
0000089f: CALLVALUE
000008a0: DUP1
000008a1: ISZERO
000008a2: PUSH2 0x08aa
000008a5: JUMPI
000008a6: PUSH1 0x00
000008a8: DUP1
000008a9: REVERT
000008aa: JUMPDEST
000008ab: POP
000008ac: PUSH2 0x08b3
000008af: PUSH2 0x1fdf
000008b2: JUMP
000008b3: JUMPDEST
000008b4: PUSH1 0x40
000008b6: MLOAD
000008b7: PUSH2 0x08c0
000008ba: SWAP2
000008bb: SWAP1
000008bc: PUSH2 0x3476
000008bf: JUMP
000008c0: JUMPDEST
000008c1: PUSH1 0x40
000008c3: MLOAD
000008c4: DUP1
000008c5: SWAP2
000008c6: SUB
000008c7: SWAP1
000008c8: RETURN
000008c9: JUMPDEST
000008ca: CALLVALUE
000008cb: DUP1
000008cc: ISZERO
000008cd: PUSH2 0x08d5
000008d0: JUMPI
000008d1: PUSH1 0x00
000008d3: DUP1
000008d4: REVERT
000008d5: JUMPDEST
000008d6: POP
000008d7: PUSH2 0x08f0
000008da: PUSH1 0x04
000008dc: DUP1
000008dd: CALLDATASIZE
000008de: SUB
000008df: DUP2
000008e0: ADD
000008e1: SWAP1
000008e2: PUSH2 0x08eb
000008e5: SWAP2
000008e6: SWAP1
000008e7: PUSH2 0x3aa5
000008ea: JUMP
000008eb: JUMPDEST
000008ec: PUSH2 0x1fe5
000008ef: JUMP
000008f0: JUMPDEST
000008f1: STOP
000008f2: JUMPDEST
000008f3: CALLVALUE
000008f4: DUP1
000008f5: ISZERO
000008f6: PUSH2 0x08fe
000008f9: JUMPI
000008fa: PUSH1 0x00
000008fc: DUP1
000008fd: REVERT
000008fe: JUMPDEST
000008ff: POP
00000900: PUSH2 0x0919
00000903: PUSH1 0x04
00000905: DUP1
00000906: CALLDATASIZE
00000907: SUB
00000908: DUP2
00000909: ADD
0000090a: SWAP1
0000090b: PUSH2 0x0914
0000090e: SWAP2
0000090f: SWAP1
00000910: PUSH2 0x337d
00000913: JUMP
00000914: JUMPDEST
00000915: PUSH2 0x20bb
00000918: JUMP
00000919: JUMPDEST
0000091a: PUSH1 0x40
0000091c: MLOAD
0000091d: PUSH2 0x0926
00000920: SWAP2
00000921: SWAP1
00000922: PUSH2 0x3325
00000925: JUMP
00000926: JUMPDEST
00000927: PUSH1 0x40
00000929: MLOAD
0000092a: DUP1
0000092b: SWAP2
0000092c: SUB
0000092d: SWAP1
0000092e: RETURN
0000092f: JUMPDEST
00000930: CALLVALUE
00000931: DUP1
00000932: ISZERO
00000933: PUSH2 0x093b
00000936: JUMPI
00000937: PUSH1 0x00
00000939: DUP1
0000093a: REVERT
0000093b: JUMPDEST
0000093c: POP
0000093d: PUSH2 0x0944
00000940: PUSH2 0x2161
00000943: JUMP
00000944: JUMPDEST
00000945: PUSH1 0x40
00000947: MLOAD
00000948: PUSH2 0x0951
0000094b: SWAP2
0000094c: SWAP1
0000094d: PUSH2 0x3476
00000950: JUMP
00000951: JUMPDEST
00000952: PUSH1 0x40
00000954: MLOAD
00000955: DUP1
00000956: SWAP2
00000957: SUB
00000958: SWAP1
00000959: RETURN
0000095a: JUMPDEST
0000095b: CALLVALUE
0000095c: DUP1
0000095d: ISZERO
0000095e: PUSH2 0x0966
00000961: JUMPI
00000962: PUSH1 0x00
00000964: DUP1
00000965: REVERT
00000966: JUMPDEST
00000967: POP
00000968: PUSH2 0x096f
0000096b: PUSH2 0x2167
0000096e: JUMP
0000096f: JUMPDEST
00000970: PUSH1 0x40
00000972: MLOAD
00000973: PUSH2 0x097c
00000976: SWAP2
00000977: SWAP1
00000978: PUSH2 0x3476
0000097b: JUMP
0000097c: JUMPDEST
0000097d: PUSH1 0x40
0000097f: MLOAD
00000980: DUP1
00000981: SWAP2
00000982: SUB
00000983: SWAP1
00000984: RETURN
00000985: JUMPDEST
00000986: CALLVALUE
00000987: DUP1
00000988: ISZERO
00000989: PUSH2 0x0991
0000098c: JUMPI
0000098d: PUSH1 0x00
0000098f: DUP1
00000990: REVERT
00000991: JUMPDEST
00000992: POP
00000993: PUSH2 0x09ac
00000996: PUSH1 0x04
00000998: DUP1
00000999: CALLDATASIZE
0000099a: SUB
0000099b: DUP2
0000099c: ADD
0000099d: SWAP1
0000099e: PUSH2 0x09a7
000009a1: SWAP2
000009a2: SWAP1
000009a3: PUSH2 0x3ae5
000009a6: JUMP
000009a7: JUMPDEST
000009a8: PUSH2 0x216d
000009ab: JUMP
000009ac: JUMPDEST
000009ad: PUSH1 0x40
000009af: MLOAD
000009b0: PUSH2 0x09b9
000009b3: SWAP2
000009b4: SWAP1
000009b5: PUSH2 0x31e6
000009b8: JUMP
000009b9: JUMPDEST
000009ba: PUSH1 0x40
000009bc: MLOAD
000009bd: DUP1
000009be: SWAP2
000009bf: SUB
000009c0: SWAP1
000009c1: RETURN
000009c2: JUMPDEST
000009c3: CALLVALUE
000009c4: DUP1
000009c5: ISZERO
000009c6: PUSH2 0x09ce
000009c9: JUMPI
000009ca: PUSH1 0x00
000009cc: DUP1
000009cd: REVERT
000009ce: JUMPDEST
000009cf: POP
000009d0: PUSH2 0x09e9
000009d3: PUSH1 0x04
000009d5: DUP1
000009d6: CALLDATASIZE
000009d7: SUB
000009d8: DUP2
000009d9: ADD
000009da: SWAP1
000009db: PUSH2 0x09e4
000009de: SWAP2
000009df: SWAP1
000009e0: PUSH2 0x325f
000009e3: JUMP
000009e4: JUMPDEST
000009e5: PUSH2 0x2201
000009e8: JUMP
000009e9: JUMPDEST
000009ea: STOP
000009eb: JUMPDEST
000009ec: CALLVALUE
000009ed: DUP1
000009ee: ISZERO
000009ef: PUSH2 0x09f7
000009f2: JUMPI
000009f3: PUSH1 0x00
000009f5: DUP1
000009f6: REVERT
000009f7: JUMPDEST
000009f8: POP
000009f9: PUSH2 0x0a12
000009fc: PUSH1 0x04
000009fe: DUP1
000009ff: CALLDATASIZE
00000a00: SUB
00000a01: DUP2
00000a02: ADD
00000a03: SWAP1
00000a04: PUSH2 0x0a0d
00000a07: SWAP2
00000a08: SWAP1
00000a09: PUSH2 0x325f
00000a0c: JUMP
00000a0d: JUMPDEST
00000a0e: PUSH2 0x2284
00000a11: JUMP
00000a12: JUMPDEST
00000a13: PUSH1 0x40
00000a15: MLOAD
00000a16: PUSH2 0x0a1f
00000a19: SWAP2
00000a1a: SWAP1
00000a1b: PUSH2 0x3476
00000a1e: JUMP
00000a1f: JUMPDEST
00000a20: PUSH1 0x40
00000a22: MLOAD
00000a23: DUP1
00000a24: SWAP2
00000a25: SUB
00000a26: SWAP1
00000a27: RETURN
00000a28: JUMPDEST
00000a29: PUSH1 0x00
00000a2b: PUSH32 0x80ac58cd00000000000000000000000000000000000000000000000000000000
00000a4c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000a69: NOT
00000a6a: AND
00000a6b: DUP3
00000a6c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000a89: NOT
00000a8a: AND
00000a8b: EQ
00000a8c: DUP1
00000a8d: PUSH2 0x0af3
00000a90: JUMPI
00000a91: POP
00000a92: PUSH32 0x5b5e139f00000000000000000000000000000000000000000000000000000000
00000ab3: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000ad0: NOT
00000ad1: AND
00000ad2: DUP3
00000ad3: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000af0: NOT
00000af1: AND
00000af2: EQ
00000af3: JUMPDEST
00000af4: DUP1
00000af5: PUSH2 0x0b03
00000af8: JUMPI
00000af9: POP
00000afa: PUSH2 0x0b02
00000afd: DUP3
00000afe: PUSH2 0x229c
00000b01: JUMP
00000b02: JUMPDEST
00000b03: JUMPDEST
00000b04: SWAP1
00000b05: POP
00000b06: SWAP2
00000b07: SWAP1
00000b08: POP
00000b09: JUMP
00000b0a: JUMPDEST
00000b0b: PUSH2 0x0b12
00000b0e: PUSH2 0x2306
00000b11: JUMP
00000b12: JUMPDEST
00000b13: DUP1
00000b14: PUSH1 0x08
00000b16: PUSH1 0x00
00000b18: PUSH2 0x0100
00000b1b: EXP
00000b1c: DUP2
00000b1d: SLOAD
00000b1e: DUP2
00000b1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b34: MUL
00000b35: NOT
00000b36: AND
00000b37: SWAP1
00000b38: DUP4
00000b39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b4e: AND
00000b4f: MUL
00000b50: OR
00000b51: SWAP1
00000b52: SSTORE
00000b53: POP
00000b54: POP
00000b55: JUMP
00000b56: JUMPDEST
00000b57: PUSH1 0x60
00000b59: PUSH1 0x00
00000b5b: DUP1
00000b5c: SLOAD
00000b5d: PUSH2 0x0b65
00000b60: SWAP1
00000b61: PUSH2 0x3b54
00000b64: JUMP
00000b65: JUMPDEST
00000b66: DUP1
00000b67: PUSH1 0x1f
00000b69: ADD
00000b6a: PUSH1 0x20
00000b6c: DUP1
00000b6d: SWAP2
00000b6e: DIV
00000b6f: MUL
00000b70: PUSH1 0x20
00000b72: ADD
00000b73: PUSH1 0x40
00000b75: MLOAD
00000b76: SWAP1
00000b77: DUP2
00000b78: ADD
00000b79: PUSH1 0x40
00000b7b: MSTORE
00000b7c: DUP1
00000b7d: SWAP3
00000b7e: SWAP2
00000b7f: SWAP1
00000b80: DUP2
00000b81: DUP2
00000b82: MSTORE
00000b83: PUSH1 0x20
00000b85: ADD
00000b86: DUP3
00000b87: DUP1
00000b88: SLOAD
00000b89: PUSH2 0x0b91
00000b8c: SWAP1
00000b8d: PUSH2 0x3b54
00000b90: JUMP
00000b91: JUMPDEST
00000b92: DUP1
00000b93: ISZERO
00000b94: PUSH2 0x0bde
00000b97: JUMPI
00000b98: DUP1
00000b99: PUSH1 0x1f
00000b9b: LT
00000b9c: PUSH2 0x0bb3
00000b9f: JUMPI
00000ba0: PUSH2 0x0100
00000ba3: DUP1
00000ba4: DUP4
00000ba5: SLOAD
00000ba6: DIV
00000ba7: MUL
00000ba8: DUP4
00000ba9: MSTORE
00000baa: SWAP2
00000bab: PUSH1 0x20
00000bad: ADD
00000bae: SWAP2
00000baf: PUSH2 0x0bde
00000bb2: JUMP
00000bb3: JUMPDEST
00000bb4: DUP3
00000bb5: ADD
00000bb6: SWAP2
00000bb7: SWAP1
00000bb8: PUSH1 0x00
00000bba: MSTORE
00000bbb: PUSH1 0x20
00000bbd: PUSH1 0x00
00000bbf: KECCAK256
00000bc0: SWAP1
00000bc1: JUMPDEST
00000bc2: DUP2
00000bc3: SLOAD
00000bc4: DUP2
00000bc5: MSTORE
00000bc6: SWAP1
00000bc7: PUSH1 0x01
00000bc9: ADD
00000bca: SWAP1
00000bcb: PUSH1 0x20
00000bcd: ADD
00000bce: DUP1
00000bcf: DUP4
00000bd0: GT
00000bd1: PUSH2 0x0bc1
00000bd4: JUMPI
00000bd5: DUP3
00000bd6: SWAP1
00000bd7: SUB
00000bd8: PUSH1 0x1f
00000bda: AND
00000bdb: DUP3
00000bdc: ADD
00000bdd: SWAP2
00000bde: JUMPDEST
00000bdf: POP
00000be0: POP
00000be1: POP
00000be2: POP
00000be3: POP
00000be4: SWAP1
00000be5: POP
00000be6: SWAP1
00000be7: JUMP
00000be8: JUMPDEST
00000be9: PUSH1 0x00
00000beb: PUSH2 0x0bf3
00000bee: DUP3
00000bef: PUSH2 0x2384
00000bf2: JUMP
00000bf3: JUMPDEST
00000bf4: PUSH1 0x04
00000bf6: PUSH1 0x00
00000bf8: DUP4
00000bf9: DUP2
00000bfa: MSTORE
00000bfb: PUSH1 0x20
00000bfd: ADD
00000bfe: SWAP1
00000bff: DUP2
00000c00: MSTORE
00000c01: PUSH1 0x20
00000c03: ADD
00000c04: PUSH1 0x00
00000c06: KECCAK256
00000c07: PUSH1 0x00
00000c09: SWAP1
00000c0a: SLOAD
00000c0b: SWAP1
00000c0c: PUSH2 0x0100
00000c0f: EXP
00000c10: SWAP1
00000c11: DIV
00000c12: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c27: AND
00000c28: SWAP1
00000c29: POP
00000c2a: SWAP2
00000c2b: SWAP1
00000c2c: POP
00000c2d: JUMP
00000c2e: JUMPDEST
00000c2f: PUSH1 0x00
00000c31: PUSH2 0x0c39
00000c34: DUP3
00000c35: PUSH2 0x0fb3
00000c38: JUMP
00000c39: JUMPDEST
00000c3a: SWAP1
00000c3b: POP
00000c3c: DUP1
00000c3d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c52: AND
00000c53: DUP4
00000c54: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c69: AND
00000c6a: SUB
00000c6b: PUSH2 0x0ca9
00000c6e: JUMPI
00000c6f: PUSH1 0x40
00000c71: MLOAD
00000c72: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c93: DUP2
00000c94: MSTORE
00000c95: PUSH1 0x04
00000c97: ADD
00000c98: PUSH2 0x0ca0
00000c9b: SWAP1
00000c9c: PUSH2 0x3bf7
00000c9f: JUMP
00000ca0: JUMPDEST
00000ca1: PUSH1 0x40
00000ca3: MLOAD
00000ca4: DUP1
00000ca5: SWAP2
00000ca6: SUB
00000ca7: SWAP1
00000ca8: REVERT
00000ca9: JUMPDEST
00000caa: DUP1
00000cab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc0: AND
00000cc1: PUSH2 0x0cc8
00000cc4: PUSH2 0x23cf
00000cc7: JUMP
00000cc8: JUMPDEST
00000cc9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cde: AND
00000cdf: EQ
00000ce0: DUP1
00000ce1: PUSH2 0x0cf7
00000ce4: JUMPI
00000ce5: POP
00000ce6: PUSH2 0x0cf6
00000ce9: DUP2
00000cea: PUSH2 0x0cf1
00000ced: PUSH2 0x23cf
00000cf0: JUMP
00000cf1: JUMPDEST
00000cf2: PUSH2 0x216d
00000cf5: JUMP
00000cf6: JUMPDEST
00000cf7: JUMPDEST
00000cf8: PUSH2 0x0d36
00000cfb: JUMPI
00000cfc: PUSH1 0x40
00000cfe: MLOAD
00000cff: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000d20: DUP2
00000d21: MSTORE
00000d22: PUSH1 0x04
00000d24: ADD
00000d25: PUSH2 0x0d2d
00000d28: SWAP1
00000d29: PUSH2 0x3c89
00000d2c: JUMP
00000d2d: JUMPDEST
00000d2e: PUSH1 0x40
00000d30: MLOAD
00000d31: DUP1
00000d32: SWAP2
00000d33: SUB
00000d34: SWAP1
00000d35: REVERT
00000d36: JUMPDEST
00000d37: PUSH2 0x0d40
00000d3a: DUP4
00000d3b: DUP4
00000d3c: PUSH2 0x23d7
00000d3f: JUMP
00000d40: JUMPDEST
00000d41: POP
00000d42: POP
00000d43: POP
00000d44: JUMP
00000d45: JUMPDEST
00000d46: PUSH2 0x0d56
00000d49: PUSH2 0x0d50
00000d4c: PUSH2 0x23cf
00000d4f: JUMP
00000d50: JUMPDEST
00000d51: DUP3
00000d52: PUSH2 0x2490
00000d55: JUMP
00000d56: JUMPDEST
00000d57: PUSH2 0x0d95
00000d5a: JUMPI
00000d5b: PUSH1 0x40
00000d5d: MLOAD
00000d5e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000d7f: DUP2
00000d80: MSTORE
00000d81: PUSH1 0x04
00000d83: ADD
00000d84: PUSH2 0x0d8c
00000d87: SWAP1
00000d88: PUSH2 0x3d1b
00000d8b: JUMP
00000d8c: JUMPDEST
00000d8d: PUSH1 0x40
00000d8f: MLOAD
00000d90: DUP1
00000d91: SWAP2
00000d92: SUB
00000d93: SWAP1
00000d94: REVERT
00000d95: JUMPDEST
00000d96: PUSH2 0x0da0
00000d99: DUP4
00000d9a: DUP4
00000d9b: DUP4
00000d9c: PUSH2 0x2525
00000d9f: JUMP
00000da0: JUMPDEST
00000da1: POP
00000da2: POP
00000da3: POP
00000da4: JUMP
00000da5: JUMPDEST
00000da6: PUSH1 0x16
00000da8: PUSH1 0x20
00000daa: MSTORE
00000dab: DUP1
00000dac: PUSH1 0x00
00000dae: MSTORE
00000daf: PUSH1 0x40
00000db1: PUSH1 0x00
00000db3: KECCAK256
00000db4: PUSH1 0x00
00000db6: SWAP2
00000db7: POP
00000db8: SWAP1
00000db9: POP
00000dba: SLOAD
00000dbb: DUP2
00000dbc: JUMP
00000dbd: JUMPDEST
00000dbe: PUSH2 0x0dd8
00000dc1: DUP4
00000dc2: DUP4
00000dc3: DUP4
00000dc4: PUSH1 0x40
00000dc6: MLOAD
00000dc7: DUP1
00000dc8: PUSH1 0x20
00000dca: ADD
00000dcb: PUSH1 0x40
00000dcd: MSTORE
00000dce: DUP1
00000dcf: PUSH1 0x00
00000dd1: DUP2
00000dd2: MSTORE
00000dd3: POP
00000dd4: PUSH2 0x1f7d
00000dd7: JUMP
00000dd8: JUMPDEST
00000dd9: POP
00000dda: POP
00000ddb: POP
00000ddc: JUMP
00000ddd: JUMPDEST
00000dde: PUSH2 0x0dee
00000de1: PUSH2 0x0de8
00000de4: PUSH2 0x23cf
00000de7: JUMP
00000de8: JUMPDEST
00000de9: DUP3
00000dea: PUSH2 0x2490
00000ded: JUMP
00000dee: JUMPDEST
00000def: PUSH2 0x0e2d
00000df2: JUMPI
00000df3: PUSH1 0x40
00000df5: MLOAD
00000df6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000e17: DUP2
00000e18: MSTORE
00000e19: PUSH1 0x04
00000e1b: ADD
00000e1c: PUSH2 0x0e24
00000e1f: SWAP1
00000e20: PUSH2 0x3d1b
00000e23: JUMP
00000e24: JUMPDEST
00000e25: PUSH1 0x40
00000e27: MLOAD
00000e28: DUP1
00000e29: SWAP2
00000e2a: SUB
00000e2b: SWAP1
00000e2c: REVERT
00000e2d: JUMPDEST
00000e2e: PUSH2 0x0e36
00000e31: DUP2
00000e32: PUSH2 0x278b
00000e35: JUMP
00000e36: JUMPDEST
00000e37: POP
00000e38: JUMP
00000e39: JUMPDEST
00000e3a: PUSH1 0x0c
00000e3c: SLOAD
00000e3d: DUP2
00000e3e: JUMP
00000e3f: JUMPDEST
00000e40: PUSH2 0x0e47
00000e43: PUSH2 0x2306
00000e46: JUMP
00000e47: JUMPDEST
00000e48: PUSH1 0x07
00000e4a: PUSH1 0x00
00000e4c: SWAP1
00000e4d: SLOAD
00000e4e: SWAP1
00000e4f: PUSH2 0x0100
00000e52: EXP
00000e53: SWAP1
00000e54: DIV
00000e55: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e6a: AND
00000e6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e80: AND
00000e81: PUSH4 0x19165587
00000e86: DUP3
00000e87: PUSH1 0x40
00000e89: MLOAD
00000e8a: DUP3
00000e8b: PUSH4 0xffffffff
00000e90: AND
00000e91: PUSH1 0xe0
00000e93: SHL
00000e94: DUP2
00000e95: MSTORE
00000e96: PUSH1 0x04
00000e98: ADD
00000e99: PUSH2 0x0ea2
00000e9c: SWAP2
00000e9d: SWAP1
00000e9e: PUSH2 0x3d4a
00000ea1: JUMP
00000ea2: JUMPDEST
00000ea3: PUSH1 0x00
00000ea5: PUSH1 0x40
00000ea7: MLOAD
00000ea8: DUP1
00000ea9: DUP4
00000eaa: SUB
00000eab: DUP2
00000eac: PUSH1 0x00
00000eae: DUP8
00000eaf: DUP1
00000eb0: EXTCODESIZE
00000eb1: ISZERO
00000eb2: DUP1
00000eb3: ISZERO
00000eb4: PUSH2 0x0ebc
00000eb7: JUMPI
00000eb8: PUSH1 0x00
00000eba: DUP1
00000ebb: REVERT
00000ebc: JUMPDEST
00000ebd: POP
00000ebe: GAS
00000ebf: CALL
00000ec0: ISZERO
00000ec1: DUP1
00000ec2: ISZERO
00000ec3: PUSH2 0x0ed0
00000ec6: JUMPI
00000ec7: RETURNDATASIZE
00000ec8: PUSH1 0x00
00000eca: DUP1
00000ecb: RETURNDATACOPY
00000ecc: RETURNDATASIZE
00000ecd: PUSH1 0x00
00000ecf: REVERT
00000ed0: JUMPDEST
00000ed1: POP
00000ed2: POP
00000ed3: POP
00000ed4: POP
00000ed5: POP
00000ed6: JUMP
00000ed7: JUMPDEST
00000ed8: PUSH1 0x14
00000eda: DUP1
00000edb: SLOAD
00000edc: PUSH2 0x0ee4
00000edf: SWAP1
00000ee0: PUSH2 0x3b54
00000ee3: JUMP
00000ee4: JUMPDEST
00000ee5: DUP1
00000ee6: PUSH1 0x1f
00000ee8: ADD
00000ee9: PUSH1 0x20
00000eeb: DUP1
00000eec: SWAP2
00000eed: DIV
00000eee: MUL
00000eef: PUSH1 0x20
00000ef1: ADD
00000ef2: PUSH1 0x40
00000ef4: MLOAD
00000ef5: SWAP1
00000ef6: DUP2
00000ef7: ADD
00000ef8: PUSH1 0x40
00000efa: MSTORE
00000efb: DUP1
00000efc: SWAP3
00000efd: SWAP2
00000efe: SWAP1
00000eff: DUP2
00000f00: DUP2
00000f01: MSTORE
00000f02: PUSH1 0x20
00000f04: ADD
00000f05: DUP3
00000f06: DUP1
00000f07: SLOAD
00000f08: PUSH2 0x0f10
00000f0b: SWAP1
00000f0c: PUSH2 0x3b54
00000f0f: JUMP
00000f10: JUMPDEST
00000f11: DUP1
00000f12: ISZERO
00000f13: PUSH2 0x0f5d
00000f16: JUMPI
00000f17: DUP1
00000f18: PUSH1 0x1f
00000f1a: LT
00000f1b: PUSH2 0x0f32
00000f1e: JUMPI
00000f1f: PUSH2 0x0100
00000f22: DUP1
00000f23: DUP4
00000f24: SLOAD
00000f25: DIV
00000f26: MUL
00000f27: DUP4
00000f28: MSTORE
00000f29: SWAP2
00000f2a: PUSH1 0x20
00000f2c: ADD
00000f2d: SWAP2
00000f2e: PUSH2 0x0f5d
00000f31: JUMP
00000f32: JUMPDEST
00000f33: DUP3
00000f34: ADD
00000f35: SWAP2
00000f36: SWAP1
00000f37: PUSH1 0x00
00000f39: MSTORE
00000f3a: PUSH1 0x20
00000f3c: PUSH1 0x00
00000f3e: KECCAK256
00000f3f: SWAP1
00000f40: JUMPDEST
00000f41: DUP2
00000f42: SLOAD
00000f43: DUP2
00000f44: MSTORE
00000f45: SWAP1
00000f46: PUSH1 0x01
00000f48: ADD
00000f49: SWAP1
00000f4a: PUSH1 0x20
00000f4c: ADD
00000f4d: DUP1
00000f4e: DUP4
00000f4f: GT
00000f50: PUSH2 0x0f40
00000f53: JUMPI
00000f54: DUP3
00000f55: SWAP1
00000f56: SUB
00000f57: PUSH1 0x1f
00000f59: AND
00000f5a: DUP3
00000f5b: ADD
00000f5c: SWAP2
00000f5d: JUMPDEST
00000f5e: POP
00000f5f: POP
00000f60: POP
00000f61: POP
00000f62: POP
00000f63: DUP2
00000f64: JUMP
00000f65: JUMPDEST
00000f66: PUSH1 0x08
00000f68: PUSH1 0x00
00000f6a: SWAP1
00000f6b: SLOAD
00000f6c: SWAP1
00000f6d: PUSH2 0x0100
00000f70: EXP
00000f71: SWAP1
00000f72: DIV
00000f73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f88: AND
00000f89: DUP2
00000f8a: JUMP
00000f8b: JUMPDEST
00000f8c: PUSH1 0x60
00000f8e: PUSH2 0x0fac
00000f91: DUP3
00000f92: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fa7: AND
00000fa8: PUSH2 0x28a8
00000fab: JUMP
00000fac: JUMPDEST
00000fad: SWAP1
00000fae: POP
00000faf: SWAP2
00000fb0: SWAP1
00000fb1: POP
00000fb2: JUMP
00000fb3: JUMPDEST
00000fb4: PUSH1 0x00
00000fb6: DUP1
00000fb7: PUSH1 0x02
00000fb9: PUSH1 0x00
00000fbb: DUP5
00000fbc: DUP2
00000fbd: MSTORE
00000fbe: PUSH1 0x20
00000fc0: ADD
00000fc1: SWAP1
00000fc2: DUP2
00000fc3: MSTORE
00000fc4: PUSH1 0x20
00000fc6: ADD
00000fc7: PUSH1 0x00
00000fc9: KECCAK256
00000fca: PUSH1 0x00
00000fcc: SWAP1
00000fcd: SLOAD
00000fce: SWAP1
00000fcf: PUSH2 0x0100
00000fd2: EXP
00000fd3: SWAP1
00000fd4: DIV
00000fd5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fea: AND
00000feb: SWAP1
00000fec: POP
00000fed: PUSH1 0x00
00000fef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001004: AND
00001005: DUP2
00001006: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000101b: AND
0000101c: SUB
0000101d: PUSH2 0x105b
00001020: JUMPI
00001021: PUSH1 0x40
00001023: MLOAD
00001024: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001045: DUP2
00001046: MSTORE
00001047: PUSH1 0x04
00001049: ADD
0000104a: PUSH2 0x1052
0000104d: SWAP1
0000104e: PUSH2 0x3db1
00001051: JUMP
00001052: JUMPDEST
00001053: PUSH1 0x40
00001055: MLOAD
00001056: DUP1
00001057: SWAP2
00001058: SUB
00001059: SWAP1
0000105a: REVERT
0000105b: JUMPDEST
0000105c: DUP1
0000105d: SWAP2
0000105e: POP
0000105f: POP
00001060: SWAP2
00001061: SWAP1
00001062: POP
00001063: JUMP
00001064: JUMPDEST
00001065: PUSH1 0x0e
00001067: SLOAD
00001068: DUP2
00001069: JUMP
0000106a: JUMPDEST
0000106b: PUSH2 0x1072
0000106e: PUSH2 0x2306
00001071: JUMP
00001072: JUMPDEST
00001073: DUP2
00001074: PUSH1 0x13
00001076: SWAP1
00001077: DUP1
00001078: MLOAD
00001079: SWAP1
0000107a: PUSH1 0x20
0000107c: ADD
0000107d: SWAP1
0000107e: PUSH2 0x1088
00001081: SWAP3
00001082: SWAP2
00001083: SWAP1
00001084: PUSH2 0x308f
00001087: JUMP
00001088: JUMPDEST
00001089: POP
0000108a: DUP1
0000108b: PUSH1 0x14
0000108d: SWAP1
0000108e: DUP1
0000108f: MLOAD
00001090: SWAP1
00001091: PUSH1 0x20
00001093: ADD
00001094: SWAP1
00001095: PUSH2 0x109f
00001098: SWAP3
00001099: SWAP2
0000109a: SWAP1
0000109b: PUSH2 0x308f
0000109e: JUMP
0000109f: JUMPDEST
000010a0: POP
000010a1: POP
000010a2: POP
000010a3: JUMP
000010a4: JUMPDEST
000010a5: PUSH1 0x12
000010a7: SLOAD
000010a8: DUP2
000010a9: JUMP
000010aa: JUMPDEST
000010ab: PUSH1 0x13
000010ad: DUP1
000010ae: SLOAD
000010af: PUSH2 0x10b7
000010b2: SWAP1
000010b3: PUSH2 0x3b54
000010b6: JUMP
000010b7: JUMPDEST
000010b8: DUP1
000010b9: PUSH1 0x1f
000010bb: ADD
000010bc: PUSH1 0x20
000010be: DUP1
000010bf: SWAP2
000010c0: DIV
000010c1: MUL
000010c2: PUSH1 0x20
000010c4: ADD
000010c5: PUSH1 0x40
000010c7: MLOAD
000010c8: SWAP1
000010c9: DUP2
000010ca: ADD
000010cb: PUSH1 0x40
000010cd: MSTORE
000010ce: DUP1
000010cf: SWAP3
000010d0: SWAP2
000010d1: SWAP1
000010d2: DUP2
000010d3: DUP2
000010d4: MSTORE
000010d5: PUSH1 0x20
000010d7: ADD
000010d8: DUP3
000010d9: DUP1
000010da: SLOAD
000010db: PUSH2 0x10e3
000010de: SWAP1
000010df: PUSH2 0x3b54
000010e2: JUMP
000010e3: JUMPDEST
000010e4: DUP1
000010e5: ISZERO
000010e6: PUSH2 0x1130
000010e9: JUMPI
000010ea: DUP1
000010eb: PUSH1 0x1f
000010ed: LT
000010ee: PUSH2 0x1105
000010f1: JUMPI
000010f2: PUSH2 0x0100
000010f5: DUP1
000010f6: DUP4
000010f7: SLOAD
000010f8: DIV
000010f9: MUL
000010fa: DUP4
000010fb: MSTORE
000010fc: SWAP2
000010fd: PUSH1 0x20
000010ff: ADD
00001100: SWAP2
00001101: PUSH2 0x1130
00001104: JUMP
00001105: JUMPDEST
00001106: DUP3
00001107: ADD
00001108: SWAP2
00001109: SWAP1
0000110a: PUSH1 0x00
0000110c: MSTORE
0000110d: PUSH1 0x20
0000110f: PUSH1 0x00
00001111: KECCAK256
00001112: SWAP1
00001113: JUMPDEST
00001114: DUP2
00001115: SLOAD
00001116: DUP2
00001117: MSTORE
00001118: SWAP1
00001119: PUSH1 0x01
0000111b: ADD
0000111c: SWAP1
0000111d: PUSH1 0x20
0000111f: ADD
00001120: DUP1
00001121: DUP4
00001122: GT
00001123: PUSH2 0x1113
00001126: JUMPI
00001127: DUP3
00001128: SWAP1
00001129: SUB
0000112a: PUSH1 0x1f
0000112c: AND
0000112d: DUP3
0000112e: ADD
0000112f: SWAP2
00001130: JUMPDEST
00001131: POP
00001132: POP
00001133: POP
00001134: POP
00001135: POP
00001136: DUP2
00001137: JUMP
00001138: JUMPDEST
00001139: PUSH1 0x17
0000113b: PUSH1 0x20
0000113d: MSTORE
0000113e: DUP1
0000113f: PUSH1 0x00
00001141: MSTORE
00001142: PUSH1 0x40
00001144: PUSH1 0x00
00001146: KECCAK256
00001147: PUSH1 0x00
00001149: SWAP2
0000114a: POP
0000114b: SWAP1
0000114c: POP
0000114d: SLOAD
0000114e: DUP2
0000114f: JUMP
00001150: JUMPDEST
00001151: PUSH1 0x0a
00001153: SLOAD
00001154: DUP2
00001155: JUMP
00001156: JUMPDEST
00001157: PUSH1 0x00
00001159: DUP1
0000115a: PUSH2 0x1163
0000115d: DUP7
0000115e: MLOAD
0000115f: PUSH2 0x28a8
00001162: JUMP
00001163: JUMPDEST
00001164: PUSH1 0x40
00001166: MLOAD
00001167: PUSH1 0x20
00001169: ADD
0000116a: PUSH2 0x1173
0000116d: SWAP2
0000116e: SWAP1
0000116f: PUSH2 0x3e33
00001172: JUMP
00001173: JUMPDEST
00001174: PUSH1 0x40
00001176: MLOAD
00001177: PUSH1 0x20
00001179: DUP2
0000117a: DUP4
0000117b: SUB
0000117c: SUB
0000117d: DUP2
0000117e: MSTORE
0000117f: SWAP1
00001180: PUSH1 0x40
00001182: MSTORE
00001183: DUP7
00001184: PUSH1 0x40
00001186: MLOAD
00001187: PUSH1 0x20
00001189: ADD
0000118a: PUSH2 0x1194
0000118d: SWAP3
0000118e: SWAP2
0000118f: SWAP1
00001190: PUSH2 0x3e59
00001193: JUMP
00001194: JUMPDEST
00001195: PUSH1 0x40
00001197: MLOAD
00001198: PUSH1 0x20
0000119a: DUP2
0000119b: DUP4
0000119c: SUB
0000119d: SUB
0000119e: DUP2
0000119f: MSTORE
000011a0: SWAP1
000011a1: PUSH1 0x40
000011a3: MSTORE
000011a4: DUP1
000011a5: MLOAD
000011a6: SWAP1
000011a7: PUSH1 0x20
000011a9: ADD
000011aa: KECCAK256
000011ab: SWAP1
000011ac: POP
000011ad: PUSH1 0x01
000011af: DUP2
000011b0: DUP7
000011b1: DUP7
000011b2: DUP7
000011b3: PUSH1 0x40
000011b5: MLOAD
000011b6: PUSH1 0x00
000011b8: DUP2
000011b9: MSTORE
000011ba: PUSH1 0x20
000011bc: ADD
000011bd: PUSH1 0x40
000011bf: MSTORE
000011c0: PUSH1 0x40
000011c2: MLOAD
000011c3: PUSH2 0x11cf
000011c6: SWAP5
000011c7: SWAP4
000011c8: SWAP3
000011c9: SWAP2
000011ca: SWAP1
000011cb: PUSH2 0x3e9b
000011ce: JUMP
000011cf: JUMPDEST
000011d0: PUSH1 0x20
000011d2: PUSH1 0x40
000011d4: MLOAD
000011d5: PUSH1 0x20
000011d7: DUP2
000011d8: SUB
000011d9: SWAP1
000011da: DUP1
000011db: DUP5
000011dc: SUB
000011dd: SWAP1
000011de: DUP6
000011df: GAS
000011e0: STATICCALL
000011e1: ISZERO
000011e2: DUP1
000011e3: ISZERO
000011e4: PUSH2 0x11f1
000011e7: JUMPI
000011e8: RETURNDATASIZE
000011e9: PUSH1 0x00
000011eb: DUP1
000011ec: RETURNDATACOPY
000011ed: RETURNDATASIZE
000011ee: PUSH1 0x00
000011f0: REVERT
000011f1: JUMPDEST
000011f2: POP
000011f3: POP
000011f4: POP
000011f5: PUSH1 0x20
000011f7: PUSH1 0x40
000011f9: MLOAD
000011fa: SUB
000011fb: MLOAD
000011fc: SWAP2
000011fd: POP
000011fe: POP
000011ff: SWAP5
00001200: SWAP4
00001201: POP
00001202: POP
00001203: POP
00001204: POP
00001205: JUMP
00001206: JUMPDEST
00001207: PUSH1 0x00
00001209: DUP1
0000120a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000121f: AND
00001220: DUP3
00001221: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001236: AND
00001237: SUB
00001238: PUSH2 0x1276
0000123b: JUMPI
0000123c: PUSH1 0x40
0000123e: MLOAD
0000123f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001260: DUP2
00001261: MSTORE
00001262: PUSH1 0x04
00001264: ADD
00001265: PUSH2 0x126d
00001268: SWAP1
00001269: PUSH2 0x3f52
0000126c: JUMP
0000126d: JUMPDEST
0000126e: PUSH1 0x40
00001270: MLOAD
00001271: DUP1
00001272: SWAP2
00001273: SUB
00001274: SWAP1
00001275: REVERT
00001276: JUMPDEST
00001277: PUSH1 0x03
00001279: PUSH1 0x00
0000127b: DUP4
0000127c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001291: AND
00001292: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012a7: AND
000012a8: DUP2
000012a9: MSTORE
000012aa: PUSH1 0x20
000012ac: ADD
000012ad: SWAP1
000012ae: DUP2
000012af: MSTORE
000012b0: PUSH1 0x20
000012b2: ADD
000012b3: PUSH1 0x00
000012b5: KECCAK256
000012b6: SLOAD
000012b7: SWAP1
000012b8: POP
000012b9: SWAP2
000012ba: SWAP1
000012bb: POP
000012bc: JUMP
000012bd: JUMPDEST
000012be: PUSH2 0x12c5
000012c1: PUSH2 0x2306
000012c4: JUMP
000012c5: JUMPDEST
000012c6: PUSH2 0x12cf
000012c9: PUSH1 0x00
000012cb: PUSH2 0x2a08
000012ce: JUMP
000012cf: JUMPDEST
000012d0: JUMP
000012d1: JUMPDEST
000012d2: PUSH1 0x00
000012d4: JUMPDEST
000012d5: PUSH1 0x05
000012d7: DUP2
000012d8: LT
000012d9: ISZERO
000012da: PUSH2 0x137d
000012dd: JUMPI
000012de: CALLER
000012df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012f4: AND
000012f5: PUSH2 0x1314
000012f8: DUP8
000012f9: DUP4
000012fa: PUSH1 0x05
000012fc: DUP2
000012fd: LT
000012fe: PUSH2 0x130a
00001301: JUMPI
00001302: PUSH2 0x1309
00001305: PUSH2 0x3f72
00001308: JUMP
00001309: JUMPDEST
0000130a: JUMPDEST
0000130b: PUSH1 0x20
0000130d: MUL
0000130e: ADD
0000130f: CALLDATALOAD
00001310: PUSH2 0x0fb3
00001313: JUMP
00001314: JUMPDEST
00001315: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000132a: AND
0000132b: EQ
0000132c: PUSH2 0x136a
0000132f: JUMPI
00001330: PUSH1 0x40
00001332: MLOAD
00001333: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001354: DUP2
00001355: MSTORE
00001356: PUSH1 0x04
00001358: ADD
00001359: PUSH2 0x1361
0000135c: SWAP1
0000135d: PUSH2 0x3fed
00001360: JUMP
00001361: JUMPDEST
00001362: PUSH1 0x40
00001364: MLOAD
00001365: DUP1
00001366: SWAP2
00001367: SUB
00001368: SWAP1
00001369: REVERT
0000136a: JUMPDEST
0000136b: DUP1
0000136c: DUP1
0000136d: PUSH2 0x1375
00001370: SWAP1
00001371: PUSH2 0x403c
00001374: JUMP
00001375: JUMPDEST
00001376: SWAP2
00001377: POP
00001378: POP
00001379: PUSH2 0x12d4
0000137c: JUMP
0000137d: JUMPDEST
0000137e: POP
0000137f: PUSH1 0x00
00001381: PUSH2 0x13a1
00001384: DUP7
00001385: PUSH1 0x00
00001387: PUSH1 0x05
00001389: DUP2
0000138a: LT
0000138b: PUSH2 0x1397
0000138e: JUMPI
0000138f: PUSH2 0x1396
00001392: PUSH2 0x3f72
00001395: JUMP
00001396: JUMPDEST
00001397: JUMPDEST
00001398: PUSH1 0x20
0000139a: MUL
0000139b: ADD
0000139c: CALLDATALOAD
0000139d: PUSH2 0x28a8
000013a0: JUMP
000013a1: JUMPDEST
000013a2: PUSH2 0x13c2
000013a5: DUP8
000013a6: PUSH1 0x01
000013a8: PUSH1 0x05
000013aa: DUP2
000013ab: LT
000013ac: PUSH2 0x13b8
000013af: JUMPI
000013b0: PUSH2 0x13b7
000013b3: PUSH2 0x3f72
000013b6: JUMP
000013b7: JUMPDEST
000013b8: JUMPDEST
000013b9: PUSH1 0x20
000013bb: MUL
000013bc: ADD
000013bd: CALLDATALOAD
000013be: PUSH2 0x28a8
000013c1: JUMP
000013c2: JUMPDEST
000013c3: PUSH2 0x13e3
000013c6: DUP9
000013c7: PUSH1 0x02
000013c9: PUSH1 0x05
000013cb: DUP2
000013cc: LT
000013cd: PUSH2 0x13d9
000013d0: JUMPI
000013d1: PUSH2 0x13d8
000013d4: PUSH2 0x3f72
000013d7: JUMP
000013d8: JUMPDEST
000013d9: JUMPDEST
000013da: PUSH1 0x20
000013dc: MUL
000013dd: ADD
000013de: CALLDATALOAD
000013df: PUSH2 0x28a8
000013e2: JUMP
000013e3: JUMPDEST
000013e4: PUSH2 0x1404
000013e7: DUP10
000013e8: PUSH1 0x03
000013ea: PUSH1 0x05
000013ec: DUP2
000013ed: LT
000013ee: PUSH2 0x13fa
000013f1: JUMPI
000013f2: PUSH2 0x13f9
000013f5: PUSH2 0x3f72
000013f8: JUMP
000013f9: JUMPDEST
000013fa: JUMPDEST
000013fb: PUSH1 0x20
000013fd: MUL
000013fe: ADD
000013ff: CALLDATALOAD
00001400: PUSH2 0x28a8
00001403: JUMP
00001404: JUMPDEST
00001405: PUSH2 0x1425
00001408: DUP11
00001409: PUSH1 0x04
0000140b: PUSH1 0x05
0000140d: DUP2
0000140e: LT
0000140f: PUSH2 0x141b
00001412: JUMPI
00001413: PUSH2 0x141a
00001416: PUSH2 0x3f72
00001419: JUMP
0000141a: JUMPDEST
0000141b: JUMPDEST
0000141c: PUSH1 0x20
0000141e: MUL
0000141f: ADD
00001420: CALLDATALOAD
00001421: PUSH2 0x28a8
00001424: JUMP
00001425: JUMPDEST
00001426: PUSH1 0x40
00001428: MLOAD
00001429: PUSH1 0x20
0000142b: ADD
0000142c: PUSH2 0x1439
0000142f: SWAP6
00001430: SWAP5
00001431: SWAP4
00001432: SWAP3
00001433: SWAP2
00001434: SWAP1
00001435: PUSH2 0x4084
00001438: JUMP
00001439: JUMPDEST
0000143a: PUSH1 0x40
0000143c: MLOAD
0000143d: PUSH1 0x20
0000143f: DUP2
00001440: DUP4
00001441: SUB
00001442: SUB
00001443: DUP2
00001444: MSTORE
00001445: SWAP1
00001446: PUSH1 0x40
00001448: MSTORE
00001449: SWAP1
0000144a: POP
0000144b: PUSH1 0x00
0000144d: PUSH2 0x146b
00001450: CALLER
00001451: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001466: AND
00001467: PUSH2 0x28a8
0000146a: JUMP
0000146b: JUMPDEST
0000146c: DUP3
0000146d: PUSH2 0x1475
00001470: DUP9
00001471: PUSH2 0x28a8
00001474: JUMP
00001475: JUMPDEST
00001476: PUSH2 0x14bd
00001479: PUSH1 0x16
0000147b: PUSH1 0x00
0000147d: CALLER
0000147e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001493: AND
00001494: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000014a9: AND
000014aa: DUP2
000014ab: MSTORE
000014ac: PUSH1 0x20
000014ae: ADD
000014af: SWAP1
000014b0: DUP2
000014b1: MSTORE
000014b2: PUSH1 0x20
000014b4: ADD
000014b5: PUSH1 0x00
000014b7: KECCAK256
000014b8: SLOAD
000014b9: PUSH2 0x28a8
000014bc: JUMP
000014bd: JUMPDEST
000014be: PUSH1 0x40
000014c0: MLOAD
000014c1: PUSH1 0x20
000014c3: ADD
000014c4: PUSH2 0x14d0
000014c7: SWAP5
000014c8: SWAP4
000014c9: SWAP3
000014ca: SWAP2
000014cb: SWAP1
000014cc: PUSH2 0x40f5
000014cf: JUMP
000014d0: JUMPDEST
000014d1: PUSH1 0x40
000014d3: MLOAD
000014d4: PUSH1 0x20
000014d6: DUP2
000014d7: DUP4
000014d8: SUB
000014d9: SUB
000014da: DUP2
000014db: MSTORE
000014dc: SWAP1
000014dd: PUSH1 0x40
000014df: MSTORE
000014e0: SWAP1
000014e1: POP
000014e2: PUSH1 0x08
000014e4: PUSH1 0x00
000014e6: SWAP1
000014e7: SLOAD
000014e8: SWAP1
000014e9: PUSH2 0x0100
000014ec: EXP
000014ed: SWAP1
000014ee: DIV
000014ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001504: AND
00001505: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000151a: AND
0000151b: PUSH2 0x1526
0000151e: DUP3
0000151f: DUP8
00001520: DUP8
00001521: DUP8
00001522: PUSH2 0x1156
00001525: JUMP
00001526: JUMPDEST
00001527: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000153c: AND
0000153d: EQ
0000153e: PUSH2 0x157c
00001541: JUMPI
00001542: PUSH1 0x40
00001544: MLOAD
00001545: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001566: DUP2
00001567: MSTORE
00001568: PUSH1 0x04
0000156a: ADD
0000156b: PUSH2 0x1573
0000156e: SWAP1
0000156f: PUSH2 0x418e
00001572: JUMP
00001573: JUMPDEST
00001574: PUSH1 0x40
00001576: MLOAD
00001577: DUP1
00001578: SWAP2
00001579: SUB
0000157a: SWAP1
0000157b: REVERT
0000157c: JUMPDEST
0000157d: PUSH1 0x01
0000157f: PUSH1 0x16
00001581: PUSH1 0x00
00001583: CALLER
00001584: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001599: AND
0000159a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015af: AND
000015b0: DUP2
000015b1: MSTORE
000015b2: PUSH1 0x20
000015b4: ADD
000015b5: SWAP1
000015b6: DUP2
000015b7: MSTORE
000015b8: PUSH1 0x20
000015ba: ADD
000015bb: PUSH1 0x00
000015bd: KECCAK256
000015be: PUSH1 0x00
000015c0: DUP3
000015c1: DUP3
000015c2: SLOAD
000015c3: PUSH2 0x15cc
000015c6: SWAP2
000015c7: SWAP1
000015c8: PUSH2 0x41ae
000015cb: JUMP
000015cc: JUMPDEST
000015cd: SWAP3
000015ce: POP
000015cf: POP
000015d0: DUP2
000015d1: SWAP1
000015d2: SSTORE
000015d3: POP
000015d4: PUSH1 0x00
000015d6: JUMPDEST
000015d7: PUSH1 0x05
000015d9: DUP2
000015da: LT
000015db: ISZERO
000015dc: PUSH2 0x1612
000015df: JUMPI
000015e0: PUSH2 0x15ff
000015e3: DUP9
000015e4: DUP3
000015e5: PUSH1 0x05
000015e7: DUP2
000015e8: LT
000015e9: PUSH2 0x15f5
000015ec: JUMPI
000015ed: PUSH2 0x15f4
000015f0: PUSH2 0x3f72
000015f3: JUMP
000015f4: JUMPDEST
000015f5: JUMPDEST
000015f6: PUSH1 0x20
000015f8: MUL
000015f9: ADD
000015fa: CALLDATALOAD
000015fb: PUSH2 0x278b
000015fe: JUMP
000015ff: JUMPDEST
00001600: DUP1
00001601: DUP1
00001602: PUSH2 0x160a
00001605: SWAP1
00001606: PUSH2 0x403c
00001609: JUMP
0000160a: JUMPDEST
0000160b: SWAP2
0000160c: POP
0000160d: POP
0000160e: PUSH2 0x15d6
00001611: JUMP
00001612: JUMPDEST
00001613: POP
00001614: DUP6
00001615: PUSH1 0x17
00001617: PUSH1 0x00
00001619: CALLER
0000161a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000162f: AND
00001630: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001645: AND
00001646: DUP2
00001647: MSTORE
00001648: PUSH1 0x20
0000164a: ADD
0000164b: SWAP1
0000164c: DUP2
0000164d: MSTORE
0000164e: PUSH1 0x20
00001650: ADD
00001651: PUSH1 0x00
00001653: KECCAK256
00001654: PUSH1 0x00
00001656: DUP3
00001657: DUP3
00001658: SLOAD
00001659: PUSH2 0x1662
0000165c: SWAP2
0000165d: SWAP1
0000165e: PUSH2 0x41ae
00001661: JUMP
00001662: JUMPDEST
00001663: SWAP3
00001664: POP
00001665: POP
00001666: DUP2
00001667: SWAP1
00001668: SSTORE
00001669: POP
0000166a: PUSH32 0x22a38ee28ba86d0e727f9f5042523bff464ffe8ee9ee76d6aaae6213e20465c2
0000168b: DUP7
0000168c: CALLER
0000168d: PUSH1 0x40
0000168f: MLOAD
00001690: PUSH2 0x169a
00001693: SWAP3
00001694: SWAP2
00001695: SWAP1
00001696: PUSH2 0x4204
00001699: JUMP
0000169a: JUMPDEST
0000169b: PUSH1 0x40
0000169d: MLOAD
0000169e: DUP1
0000169f: SWAP2
000016a0: SUB
000016a1: SWAP1
000016a2: LOG1
000016a3: POP
000016a4: POP
000016a5: POP
000016a6: POP
000016a7: POP
000016a8: POP
000016a9: POP
000016aa: JUMP
000016ab: JUMPDEST
000016ac: PUSH1 0x60
000016ae: PUSH2 0x16cc
000016b1: DUP5
000016b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016c7: AND
000016c8: PUSH2 0x28a8
000016cb: JUMP
000016cc: JUMPDEST
000016cd: DUP4
000016ce: PUSH2 0x16d6
000016d1: DUP5
000016d2: PUSH2 0x28a8
000016d5: JUMP
000016d6: JUMPDEST
000016d7: PUSH2 0x171e
000016da: PUSH1 0x16
000016dc: PUSH1 0x00
000016de: CALLER
000016df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016f4: AND
000016f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000170a: AND
0000170b: DUP2
0000170c: MSTORE
0000170d: PUSH1 0x20
0000170f: ADD
00001710: SWAP1
00001711: DUP2
00001712: MSTORE
00001713: PUSH1 0x20
00001715: ADD
00001716: PUSH1 0x00
00001718: KECCAK256
00001719: SLOAD
0000171a: PUSH2 0x28a8
0000171d: JUMP
0000171e: JUMPDEST
0000171f: PUSH1 0x40
00001721: MLOAD
00001722: PUSH1 0x20
00001724: ADD
00001725: PUSH2 0x1731
00001728: SWAP5
00001729: SWAP4
0000172a: SWAP3
0000172b: SWAP2
0000172c: SWAP1
0000172d: PUSH2 0x422d
00001730: JUMP
00001731: JUMPDEST
00001732: PUSH1 0x40
00001734: MLOAD
00001735: PUSH1 0x20
00001737: DUP2
00001738: DUP4
00001739: SUB
0000173a: SUB
0000173b: DUP2
0000173c: MSTORE
0000173d: SWAP1
0000173e: PUSH1 0x40
00001740: MSTORE
00001741: SWAP1
00001742: POP
00001743: SWAP4
00001744: SWAP3
00001745: POP
00001746: POP
00001747: POP
00001748: JUMP
00001749: JUMPDEST
0000174a: PUSH1 0x0d
0000174c: SLOAD
0000174d: DUP2
0000174e: JUMP
0000174f: JUMPDEST
00001750: PUSH1 0x00
00001752: PUSH1 0x06
00001754: PUSH1 0x00
00001756: SWAP1
00001757: SLOAD
00001758: SWAP1
00001759: PUSH2 0x0100
0000175c: EXP
0000175d: SWAP1
0000175e: DIV
0000175f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001774: AND
00001775: SWAP1
00001776: POP
00001777: SWAP1
00001778: JUMP
00001779: JUMPDEST
0000177a: PUSH1 0x09
0000177c: SLOAD
0000177d: DUP2
0000177e: JUMP
0000177f: JUMPDEST
00001780: PUSH1 0x60
00001782: PUSH1 0x01
00001784: DUP1
00001785: SLOAD
00001786: PUSH2 0x178e
00001789: SWAP1
0000178a: PUSH2 0x3b54
0000178d: JUMP
0000178e: JUMPDEST
0000178f: DUP1
00001790: PUSH1 0x1f
00001792: ADD
00001793: PUSH1 0x20
00001795: DUP1
00001796: SWAP2
00001797: DIV
00001798: MUL
00001799: PUSH1 0x20
0000179b: ADD
0000179c: PUSH1 0x40
0000179e: MLOAD
0000179f: SWAP1
000017a0: DUP2
000017a1: ADD
000017a2: PUSH1 0x40
000017a4: MSTORE
000017a5: DUP1
000017a6: SWAP3
000017a7: SWAP2
000017a8: SWAP1
000017a9: DUP2
000017aa: DUP2
000017ab: MSTORE
000017ac: PUSH1 0x20
000017ae: ADD
000017af: DUP3
000017b0: DUP1
000017b1: SLOAD
000017b2: PUSH2 0x17ba
000017b5: SWAP1
000017b6: PUSH2 0x3b54
000017b9: JUMP
000017ba: JUMPDEST
000017bb: DUP1
000017bc: ISZERO
000017bd: PUSH2 0x1807
000017c0: JUMPI
000017c1: DUP1
000017c2: PUSH1 0x1f
000017c4: LT
000017c5: PUSH2 0x17dc
000017c8: JUMPI
000017c9: PUSH2 0x0100
000017cc: DUP1
000017cd: DUP4
000017ce: SLOAD
000017cf: DIV
000017d0: MUL
000017d1: DUP4
000017d2: MSTORE
000017d3: SWAP2
000017d4: PUSH1 0x20
000017d6: ADD
000017d7: SWAP2
000017d8: PUSH2 0x1807
000017db: JUMP
000017dc: JUMPDEST
000017dd: DUP3
000017de: ADD
000017df: SWAP2
000017e0: SWAP1
000017e1: PUSH1 0x00
000017e3: MSTORE
000017e4: PUSH1 0x20
000017e6: PUSH1 0x00
000017e8: KECCAK256
000017e9: SWAP1
000017ea: JUMPDEST
000017eb: DUP2
000017ec: SLOAD
000017ed: DUP2
000017ee: MSTORE
000017ef: SWAP1
000017f0: PUSH1 0x01
000017f2: ADD
000017f3: SWAP1
000017f4: PUSH1 0x20
000017f6: ADD
000017f7: DUP1
000017f8: DUP4
000017f9: GT
000017fa: PUSH2 0x17ea
000017fd: JUMPI
000017fe: DUP3
000017ff: SWAP1
00001800: SUB
00001801: PUSH1 0x1f
00001803: AND
00001804: DUP3
00001805: ADD
00001806: SWAP2
00001807: JUMPDEST
00001808: POP
00001809: POP
0000180a: POP
0000180b: POP
0000180c: POP
0000180d: SWAP1
0000180e: POP
0000180f: SWAP1
00001810: JUMP
00001811: JUMPDEST
00001812: PUSH1 0x0e
00001814: SLOAD
00001815: DUP5
00001816: PUSH1 0x0a
00001818: SLOAD
00001819: PUSH2 0x1822
0000181c: SWAP2
0000181d: SWAP1
0000181e: PUSH2 0x41ae
00001821: JUMP
00001822: JUMPDEST
00001823: GT
00001824: ISZERO
00001825: PUSH2 0x1863
00001828: JUMPI
00001829: PUSH1 0x40
0000182b: MLOAD
0000182c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000184d: DUP2
0000184e: MSTORE
0000184f: PUSH1 0x04
00001851: ADD
00001852: PUSH2 0x185a
00001855: SWAP1
00001856: PUSH2 0x42b7
00001859: JUMP
0000185a: JUMPDEST
0000185b: PUSH1 0x40
0000185d: MLOAD
0000185e: DUP1
0000185f: SWAP2
00001860: SUB
00001861: SWAP1
00001862: REVERT
00001863: JUMPDEST
00001864: PUSH1 0x00
00001866: PUSH2 0x1884
00001869: CALLER
0000186a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000187f: AND
00001880: PUSH2 0x28a8
00001883: JUMP
00001884: JUMPDEST
00001885: PUSH2 0x188d
00001888: DUP7
00001889: PUSH2 0x28a8
0000188c: JUMP
0000188d: JUMPDEST
0000188e: PUSH2 0x18d5
00001891: PUSH1 0x16
00001893: PUSH1 0x00
00001895: CALLER
00001896: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018ab: AND
000018ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018c1: AND
000018c2: DUP2
000018c3: MSTORE
000018c4: PUSH1 0x20
000018c6: ADD
000018c7: SWAP1
000018c8: DUP2
000018c9: MSTORE
000018ca: PUSH1 0x20
000018cc: ADD
000018cd: PUSH1 0x00
000018cf: KECCAK256
000018d0: SLOAD
000018d1: PUSH2 0x28a8
000018d4: JUMP
000018d5: JUMPDEST
000018d6: PUSH1 0x40
000018d8: MLOAD
000018d9: PUSH1 0x20
000018db: ADD
000018dc: PUSH2 0x18e7
000018df: SWAP4
000018e0: SWAP3
000018e1: SWAP2
000018e2: SWAP1
000018e3: PUSH2 0x42fd
000018e6: JUMP
000018e7: JUMPDEST
000018e8: PUSH1 0x40
000018ea: MLOAD
000018eb: PUSH1 0x20
000018ed: DUP2
000018ee: DUP4
000018ef: SUB
000018f0: SUB
000018f1: DUP2
000018f2: MSTORE
000018f3: SWAP1
000018f4: PUSH1 0x40
000018f6: MSTORE
000018f7: SWAP1
000018f8: POP
000018f9: PUSH1 0x08
000018fb: PUSH1 0x00
000018fd: SWAP1
000018fe: SLOAD
000018ff: SWAP1
00001900: PUSH2 0x0100
00001903: EXP
00001904: SWAP1
00001905: DIV
00001906: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000191b: AND
0000191c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001931: AND
00001932: PUSH2 0x193d
00001935: DUP3
00001936: DUP7
00001937: DUP7
00001938: DUP7
00001939: PUSH2 0x1156
0000193c: JUMP
0000193d: JUMPDEST
0000193e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001953: AND
00001954: EQ
00001955: PUSH2 0x1993
00001958: JUMPI
00001959: PUSH1 0x40
0000195b: MLOAD
0000195c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000197d: DUP2
0000197e: MSTORE
0000197f: PUSH1 0x04
00001981: ADD
00001982: PUSH2 0x198a
00001985: SWAP1
00001986: PUSH2 0x4389
00001989: JUMP
0000198a: JUMPDEST
0000198b: PUSH1 0x40
0000198d: MLOAD
0000198e: DUP1
0000198f: SWAP2
00001990: SUB
00001991: SWAP1
00001992: REVERT
00001993: JUMPDEST
00001994: PUSH1 0x00
00001996: DUP6
00001997: GT
00001998: PUSH2 0x19d6
0000199b: JUMPI
0000199c: PUSH1 0x40
0000199e: MLOAD
0000199f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000019c0: DUP2
000019c1: MSTORE
000019c2: PUSH1 0x04
000019c4: ADD
000019c5: PUSH2 0x19cd
000019c8: SWAP1
000019c9: PUSH2 0x43f5
000019cc: JUMP
000019cd: JUMPDEST
000019ce: PUSH1 0x40
000019d0: MLOAD
000019d1: DUP1
000019d2: SWAP2
000019d3: SUB
000019d4: SWAP1
000019d5: REVERT
000019d6: JUMPDEST
000019d7: PUSH1 0x11
000019d9: SLOAD
000019da: DUP6
000019db: PUSH1 0x15
000019dd: PUSH1 0x00
000019df: CALLER
000019e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019f5: AND
000019f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a0b: AND
00001a0c: DUP2
00001a0d: MSTORE
00001a0e: PUSH1 0x20
00001a10: ADD
00001a11: SWAP1
00001a12: DUP2
00001a13: MSTORE
00001a14: PUSH1 0x20
00001a16: ADD
00001a17: PUSH1 0x00
00001a19: KECCAK256
00001a1a: SLOAD
00001a1b: PUSH2 0x1a24
00001a1e: SWAP2
00001a1f: SWAP1
00001a20: PUSH2 0x41ae
00001a23: JUMP
00001a24: JUMPDEST
00001a25: GT
00001a26: ISZERO
00001a27: PUSH2 0x1a65
00001a2a: JUMPI
00001a2b: PUSH1 0x40
00001a2d: MLOAD
00001a2e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001a4f: DUP2
00001a50: MSTORE
00001a51: PUSH1 0x04
00001a53: ADD
00001a54: PUSH2 0x1a5c
00001a57: SWAP1
00001a58: PUSH2 0x4461
00001a5b: JUMP
00001a5c: JUMPDEST
00001a5d: PUSH1 0x40
00001a5f: MLOAD
00001a60: DUP1
00001a61: SWAP2
00001a62: SUB
00001a63: SWAP1
00001a64: REVERT
00001a65: JUMPDEST
00001a66: CALLVALUE
00001a67: DUP6
00001a68: PUSH1 0x12
00001a6a: SLOAD
00001a6b: PUSH2 0x1a74
00001a6e: SWAP2
00001a6f: SWAP1
00001a70: PUSH2 0x4481
00001a73: JUMP
00001a74: JUMPDEST
00001a75: GT
00001a76: ISZERO
00001a77: PUSH2 0x1ab5
00001a7a: JUMPI
00001a7b: PUSH1 0x40
00001a7d: MLOAD
00001a7e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001a9f: DUP2
00001aa0: MSTORE
00001aa1: PUSH1 0x04
00001aa3: ADD
00001aa4: PUSH2 0x1aac
00001aa7: SWAP1
00001aa8: PUSH2 0x4527
00001aab: JUMP
00001aac: JUMPDEST
00001aad: PUSH1 0x40
00001aaf: MLOAD
00001ab0: DUP1
00001ab1: SWAP2
00001ab2: SUB
00001ab3: SWAP1
00001ab4: REVERT
00001ab5: JUMPDEST
00001ab6: PUSH1 0x01
00001ab8: PUSH1 0x16
00001aba: PUSH1 0x00
00001abc: CALLER
00001abd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ad2: AND
00001ad3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ae8: AND
00001ae9: DUP2
00001aea: MSTORE
00001aeb: PUSH1 0x20
00001aed: ADD
00001aee: SWAP1
00001aef: DUP2
00001af0: MSTORE
00001af1: PUSH1 0x20
00001af3: ADD
00001af4: PUSH1 0x00
00001af6: KECCAK256
00001af7: PUSH1 0x00
00001af9: DUP3
00001afa: DUP3
00001afb: SLOAD
00001afc: PUSH2 0x1b05
00001aff: SWAP2
00001b00: SWAP1
00001b01: PUSH2 0x41ae
00001b04: JUMP
00001b05: JUMPDEST
00001b06: SWAP3
00001b07: POP
00001b08: POP
00001b09: DUP2
00001b0a: SWAP1
00001b0b: SSTORE
00001b0c: POP
00001b0d: DUP5
00001b0e: PUSH1 0x15
00001b10: PUSH1 0x00
00001b12: CALLER
00001b13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b28: AND
00001b29: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b3e: AND
00001b3f: DUP2
00001b40: MSTORE
00001b41: PUSH1 0x20
00001b43: ADD
00001b44: SWAP1
00001b45: DUP2
00001b46: MSTORE
00001b47: PUSH1 0x20
00001b49: ADD
00001b4a: PUSH1 0x00
00001b4c: KECCAK256
00001b4d: PUSH1 0x00
00001b4f: DUP3
00001b50: DUP3
00001b51: SLOAD
00001b52: PUSH2 0x1b5b
00001b55: SWAP2
00001b56: SWAP1
00001b57: PUSH2 0x41ae
00001b5a: JUMP
00001b5b: JUMPDEST
00001b5c: SWAP3
00001b5d: POP
00001b5e: POP
00001b5f: DUP2
00001b60: SWAP1
00001b61: SSTORE
00001b62: POP
00001b63: PUSH1 0x00
00001b65: PUSH1 0x01
00001b67: SWAP1
00001b68: POP
00001b69: JUMPDEST
00001b6a: PUSH1 0x01
00001b6c: DUP7
00001b6d: PUSH2 0x1b76
00001b70: SWAP2
00001b71: SWAP1
00001b72: PUSH2 0x41ae
00001b75: JUMP
00001b76: JUMPDEST
00001b77: DUP2
00001b78: LT
00001b79: ISZERO
00001b7a: PUSH2 0x1ba7
00001b7d: JUMPI
00001b7e: PUSH2 0x1b94
00001b81: CALLER
00001b82: DUP3
00001b83: PUSH1 0x0c
00001b85: SLOAD
00001b86: PUSH2 0x1b8f
00001b89: SWAP2
00001b8a: SWAP1
00001b8b: PUSH2 0x41ae
00001b8e: JUMP
00001b8f: JUMPDEST
00001b90: PUSH2 0x2ace
00001b93: JUMP
00001b94: JUMPDEST
00001b95: DUP1
00001b96: DUP1
00001b97: PUSH2 0x1b9f
00001b9a: SWAP1
00001b9b: PUSH2 0x403c
00001b9e: JUMP
00001b9f: JUMPDEST
00001ba0: SWAP2
00001ba1: POP
00001ba2: POP
00001ba3: PUSH2 0x1b69
00001ba6: JUMP
00001ba7: JUMPDEST
00001ba8: POP
00001ba9: DUP5
00001baa: PUSH1 0x0c
00001bac: PUSH1 0x00
00001bae: DUP3
00001baf: DUP3
00001bb0: SLOAD
00001bb1: PUSH2 0x1bba
00001bb4: SWAP2
00001bb5: SWAP1
00001bb6: PUSH2 0x41ae
00001bb9: JUMP
00001bba: JUMPDEST
00001bbb: SWAP3
00001bbc: POP
00001bbd: POP
00001bbe: DUP2
00001bbf: SWAP1
00001bc0: SSTORE
00001bc1: POP
00001bc2: DUP5
00001bc3: PUSH1 0x0a
00001bc5: PUSH1 0x00
00001bc7: DUP3
00001bc8: DUP3
00001bc9: SLOAD
00001bca: PUSH2 0x1bd3
00001bcd: SWAP2
00001bce: SWAP1
00001bcf: PUSH2 0x41ae
00001bd2: JUMP
00001bd3: JUMPDEST
00001bd4: SWAP3
00001bd5: POP
00001bd6: POP
00001bd7: DUP2
00001bd8: SWAP1
00001bd9: SSTORE
00001bda: POP
00001bdb: POP
00001bdc: POP
00001bdd: POP
00001bde: POP
00001bdf: POP
00001be0: JUMP
00001be1: JUMPDEST
00001be2: PUSH2 0x1bf3
00001be5: PUSH2 0x1bec
00001be8: PUSH2 0x23cf
00001beb: JUMP
00001bec: JUMPDEST
00001bed: DUP4
00001bee: DUP4
00001bef: PUSH2 0x2ca7
00001bf2: JUMP
00001bf3: JUMPDEST
00001bf4: POP
00001bf5: POP
00001bf6: JUMP
00001bf7: JUMPDEST
00001bf8: PUSH1 0x0d
00001bfa: SLOAD
00001bfb: DUP5
00001bfc: PUSH1 0x09
00001bfe: SLOAD
00001bff: PUSH2 0x1c08
00001c02: SWAP2
00001c03: SWAP1
00001c04: PUSH2 0x41ae
00001c07: JUMP
00001c08: JUMPDEST
00001c09: GT
00001c0a: ISZERO
00001c0b: PUSH2 0x1c49
00001c0e: JUMPI
00001c0f: PUSH1 0x40
00001c11: MLOAD
00001c12: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001c33: DUP2
00001c34: MSTORE
00001c35: PUSH1 0x04
00001c37: ADD
00001c38: PUSH2 0x1c40
00001c3b: SWAP1
00001c3c: PUSH2 0x4593
00001c3f: JUMP
00001c40: JUMPDEST
00001c41: PUSH1 0x40
00001c43: MLOAD
00001c44: DUP1
00001c45: SWAP2
00001c46: SUB
00001c47: SWAP1
00001c48: REVERT
00001c49: JUMPDEST
00001c4a: PUSH1 0x00
00001c4c: PUSH2 0x1c6a
00001c4f: CALLER
00001c50: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c65: AND
00001c66: PUSH2 0x28a8
00001c69: JUMP
00001c6a: JUMPDEST
00001c6b: PUSH2 0x1c73
00001c6e: DUP7
00001c6f: PUSH2 0x28a8
00001c72: JUMP
00001c73: JUMPDEST
00001c74: PUSH2 0x1cbb
00001c77: PUSH1 0x16
00001c79: PUSH1 0x00
00001c7b: CALLER
00001c7c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c91: AND
00001c92: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ca7: AND
00001ca8: DUP2
00001ca9: MSTORE
00001caa: PUSH1 0x20
00001cac: ADD
00001cad: SWAP1
00001cae: DUP2
00001caf: MSTORE
00001cb0: PUSH1 0x20
00001cb2: ADD
00001cb3: PUSH1 0x00
00001cb5: KECCAK256
00001cb6: SLOAD
00001cb7: PUSH2 0x28a8
00001cba: JUMP
00001cbb: JUMPDEST
00001cbc: PUSH1 0x40
00001cbe: MLOAD
00001cbf: PUSH1 0x20
00001cc1: ADD
00001cc2: PUSH2 0x1ccd
00001cc5: SWAP4
00001cc6: SWAP3
00001cc7: SWAP2
00001cc8: SWAP1
00001cc9: PUSH2 0x45d9
00001ccc: JUMP
00001ccd: JUMPDEST
00001cce: PUSH1 0x40
00001cd0: MLOAD
00001cd1: PUSH1 0x20
00001cd3: DUP2
00001cd4: DUP4
00001cd5: SUB
00001cd6: SUB
00001cd7: DUP2
00001cd8: MSTORE
00001cd9: SWAP1
00001cda: PUSH1 0x40
00001cdc: MSTORE
00001cdd: SWAP1
00001cde: POP
00001cdf: PUSH1 0x08
00001ce1: PUSH1 0x00
00001ce3: SWAP1
00001ce4: SLOAD
00001ce5: SWAP1
00001ce6: PUSH2 0x0100
00001ce9: EXP
00001cea: SWAP1
00001ceb: DIV
00001cec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d01: AND
00001d02: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d17: AND
00001d18: PUSH2 0x1d23
00001d1b: DUP3
00001d1c: DUP7
00001d1d: DUP7
00001d1e: DUP7
00001d1f: PUSH2 0x1156
00001d22: JUMP
00001d23: JUMPDEST
00001d24: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d39: AND
00001d3a: EQ
00001d3b: PUSH2 0x1d79
00001d3e: JUMPI
00001d3f: PUSH1 0x40
00001d41: MLOAD
00001d42: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001d63: DUP2
00001d64: MSTORE
00001d65: PUSH1 0x04
00001d67: ADD
00001d68: PUSH2 0x1d70
00001d6b: SWAP1
00001d6c: PUSH2 0x4389
00001d6f: JUMP
00001d70: JUMPDEST
00001d71: PUSH1 0x40
00001d73: MLOAD
00001d74: DUP1
00001d75: SWAP2
00001d76: SUB
00001d77: SWAP1
00001d78: REVERT
00001d79: JUMPDEST
00001d7a: PUSH1 0x00
00001d7c: DUP6
00001d7d: GT
00001d7e: PUSH2 0x1dbc
00001d81: JUMPI
00001d82: PUSH1 0x40
00001d84: MLOAD
00001d85: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001da6: DUP2
00001da7: MSTORE
00001da8: PUSH1 0x04
00001daa: ADD
00001dab: PUSH2 0x1db3
00001dae: SWAP1
00001daf: PUSH2 0x43f5
00001db2: JUMP
00001db3: JUMPDEST
00001db4: PUSH1 0x40
00001db6: MLOAD
00001db7: DUP1
00001db8: SWAP2
00001db9: SUB
00001dba: SWAP1
00001dbb: REVERT
00001dbc: JUMPDEST
00001dbd: PUSH1 0x10
00001dbf: SLOAD
00001dc0: DUP6
00001dc1: PUSH1 0x15
00001dc3: PUSH1 0x00
00001dc5: CALLER
00001dc6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ddb: AND
00001ddc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001df1: AND
00001df2: DUP2
00001df3: MSTORE
00001df4: PUSH1 0x20
00001df6: ADD
00001df7: SWAP1
00001df8: DUP2
00001df9: MSTORE
00001dfa: PUSH1 0x20
00001dfc: ADD
00001dfd: PUSH1 0x00
00001dff: KECCAK256
00001e00: SLOAD
00001e01: PUSH2 0x1e0a
00001e04: SWAP2
00001e05: SWAP1
00001e06: PUSH2 0x41ae
00001e09: JUMP
00001e0a: JUMPDEST
00001e0b: GT
00001e0c: ISZERO
00001e0d: PUSH2 0x1e4b
00001e10: JUMPI
00001e11: PUSH1 0x40
00001e13: MLOAD
00001e14: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001e35: DUP2
00001e36: MSTORE
00001e37: PUSH1 0x04
00001e39: ADD
00001e3a: PUSH2 0x1e42
00001e3d: SWAP1
00001e3e: PUSH2 0x4461
00001e41: JUMP
00001e42: JUMPDEST
00001e43: PUSH1 0x40
00001e45: MLOAD
00001e46: DUP1
00001e47: SWAP2
00001e48: SUB
00001e49: SWAP1
00001e4a: REVERT
00001e4b: JUMPDEST
00001e4c: PUSH1 0x01
00001e4e: PUSH1 0x16
00001e50: PUSH1 0x00
00001e52: CALLER
00001e53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e68: AND
00001e69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e7e: AND
00001e7f: DUP2
00001e80: MSTORE
00001e81: PUSH1 0x20
00001e83: ADD
00001e84: SWAP1
00001e85: DUP2
00001e86: MSTORE
00001e87: PUSH1 0x20
00001e89: ADD
00001e8a: PUSH1 0x00
00001e8c: KECCAK256
00001e8d: PUSH1 0x00
00001e8f: DUP3
00001e90: DUP3
00001e91: SLOAD
00001e92: PUSH2 0x1e9b
00001e95: SWAP2
00001e96: SWAP1
00001e97: PUSH2 0x41ae
00001e9a: JUMP
00001e9b: JUMPDEST
00001e9c: SWAP3
00001e9d: POP
00001e9e: POP
00001e9f: DUP2
00001ea0: SWAP1
00001ea1: SSTORE
00001ea2: POP
00001ea3: DUP5
00001ea4: PUSH1 0x15
00001ea6: PUSH1 0x00
00001ea8: CALLER
00001ea9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ebe: AND
00001ebf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ed4: AND
00001ed5: DUP2
00001ed6: MSTORE
00001ed7: PUSH1 0x20
00001ed9: ADD
00001eda: SWAP1
00001edb: DUP2
00001edc: MSTORE
00001edd: PUSH1 0x20
00001edf: ADD
00001ee0: PUSH1 0x00
00001ee2: KECCAK256
00001ee3: PUSH1 0x00
00001ee5: DUP3
00001ee6: DUP3
00001ee7: SLOAD
00001ee8: PUSH2 0x1ef1
00001eeb: SWAP2
00001eec: SWAP1
00001eed: PUSH2 0x41ae
00001ef0: JUMP
00001ef1: JUMPDEST
00001ef2: SWAP3
00001ef3: POP
00001ef4: POP
00001ef5: DUP2
00001ef6: SWAP1
00001ef7: SSTORE
00001ef8: POP
00001ef9: PUSH1 0x00
00001efb: PUSH1 0x01
00001efd: SWAP1
00001efe: POP
00001eff: JUMPDEST
00001f00: PUSH1 0x01
00001f02: DUP7
00001f03: PUSH2 0x1f0c
00001f06: SWAP2
00001f07: SWAP1
00001f08: PUSH2 0x41ae
00001f0b: JUMP
00001f0c: JUMPDEST
00001f0d: DUP2
00001f0e: LT
00001f0f: ISZERO
00001f10: PUSH2 0x1f3d
00001f13: JUMPI
00001f14: PUSH2 0x1f2a
00001f17: CALLER
00001f18: DUP3
00001f19: PUSH1 0x0c
00001f1b: SLOAD
00001f1c: PUSH2 0x1f25
00001f1f: SWAP2
00001f20: SWAP1
00001f21: PUSH2 0x41ae
00001f24: JUMP
00001f25: JUMPDEST
00001f26: PUSH2 0x2ace
00001f29: JUMP
00001f2a: JUMPDEST
00001f2b: DUP1
00001f2c: DUP1
00001f2d: PUSH2 0x1f35
00001f30: SWAP1
00001f31: PUSH2 0x403c
00001f34: JUMP
00001f35: JUMPDEST
00001f36: SWAP2
00001f37: POP
00001f38: POP
00001f39: PUSH2 0x1eff
00001f3c: JUMP
00001f3d: JUMPDEST
00001f3e: POP
00001f3f: DUP5
00001f40: PUSH1 0x0c
00001f42: PUSH1 0x00
00001f44: DUP3
00001f45: DUP3
00001f46: SLOAD
00001f47: PUSH2 0x1f50
00001f4a: SWAP2
00001f4b: SWAP1
00001f4c: PUSH2 0x41ae
00001f4f: JUMP
00001f50: JUMPDEST
00001f51: SWAP3
00001f52: POP
00001f53: POP
00001f54: DUP2
00001f55: SWAP1
00001f56: SSTORE
00001f57: POP
00001f58: DUP5
00001f59: PUSH1 0x09
00001f5b: PUSH1 0x00
00001f5d: DUP3
00001f5e: DUP3
00001f5f: SLOAD
00001f60: PUSH2 0x1f69
00001f63: SWAP2
00001f64: SWAP1
00001f65: PUSH2 0x41ae
00001f68: JUMP
00001f69: JUMPDEST
00001f6a: SWAP3
00001f6b: POP
00001f6c: POP
00001f6d: DUP2
00001f6e: SWAP1
00001f6f: SSTORE
00001f70: POP
00001f71: POP
00001f72: POP
00001f73: POP
00001f74: POP
00001f75: POP
00001f76: JUMP
00001f77: JUMPDEST
00001f78: PUSH1 0x11
00001f7a: SLOAD
00001f7b: DUP2
00001f7c: JUMP
00001f7d: JUMPDEST
00001f7e: PUSH2 0x1f8e
00001f81: PUSH2 0x1f88
00001f84: PUSH2 0x23cf
00001f87: JUMP
00001f88: JUMPDEST
00001f89: DUP4
00001f8a: PUSH2 0x2490
00001f8d: JUMP
00001f8e: JUMPDEST
00001f8f: PUSH2 0x1fcd
00001f92: JUMPI
00001f93: PUSH1 0x40
00001f95: MLOAD
00001f96: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001fb7: DUP2
00001fb8: MSTORE
00001fb9: PUSH1 0x04
00001fbb: ADD
00001fbc: PUSH2 0x1fc4
00001fbf: SWAP1
00001fc0: PUSH2 0x3d1b
00001fc3: JUMP
00001fc4: JUMPDEST
00001fc5: PUSH1 0x40
00001fc7: MLOAD
00001fc8: DUP1
00001fc9: SWAP2
00001fca: SUB
00001fcb: SWAP1
00001fcc: REVERT
00001fcd: JUMPDEST
00001fce: PUSH2 0x1fd9
00001fd1: DUP5
00001fd2: DUP5
00001fd3: DUP5
00001fd4: DUP5
00001fd5: PUSH2 0x2e13
00001fd8: JUMP
00001fd9: JUMPDEST
00001fda: POP
00001fdb: POP
00001fdc: POP
00001fdd: POP
00001fde: JUMP
00001fdf: JUMPDEST
00001fe0: PUSH1 0x10
00001fe2: SLOAD
00001fe3: DUP2
00001fe4: JUMP
00001fe5: JUMPDEST
00001fe6: PUSH2 0x1fed
00001fe9: PUSH2 0x2306
00001fec: JUMP
00001fed: JUMPDEST
00001fee: PUSH1 0x0f
00001ff0: SLOAD
00001ff1: DUP3
00001ff2: PUSH1 0x0b
00001ff4: SLOAD
00001ff5: PUSH2 0x1ffe
00001ff8: SWAP2
00001ff9: SWAP1
00001ffa: PUSH2 0x41ae
00001ffd: JUMP
00001ffe: JUMPDEST
00001fff: GT
00002000: ISZERO
00002001: PUSH2 0x203f
00002004: JUMPI
00002005: PUSH1 0x40
00002007: MLOAD
00002008: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002029: DUP2
0000202a: MSTORE
0000202b: PUSH1 0x04
0000202d: ADD
0000202e: PUSH2 0x2036
00002031: SWAP1
00002032: PUSH2 0x4665
00002035: JUMP
00002036: JUMPDEST
00002037: PUSH1 0x40
00002039: MLOAD
0000203a: DUP1
0000203b: SWAP2
0000203c: SUB
0000203d: SWAP1
0000203e: REVERT
0000203f: JUMPDEST
00002040: PUSH1 0x00
00002042: PUSH1 0x01
00002044: SWAP1
00002045: POP
00002046: JUMPDEST
00002047: PUSH1 0x01
00002049: DUP4
0000204a: PUSH2 0x2053
0000204d: SWAP2
0000204e: SWAP1
0000204f: PUSH2 0x41ae
00002052: JUMP
00002053: JUMPDEST
00002054: DUP2
00002055: LT
00002056: ISZERO
00002057: PUSH2 0x2084
0000205a: JUMPI
0000205b: PUSH2 0x2071
0000205e: DUP3
0000205f: DUP3
00002060: PUSH1 0x0c
00002062: SLOAD
00002063: PUSH2 0x206c
00002066: SWAP2
00002067: SWAP1
00002068: PUSH2 0x41ae
0000206b: JUMP
0000206c: JUMPDEST
0000206d: PUSH2 0x2ace
00002070: JUMP
00002071: JUMPDEST
00002072: DUP1
00002073: DUP1
00002074: PUSH2 0x207c
00002077: SWAP1
00002078: PUSH2 0x403c
0000207b: JUMP
0000207c: JUMPDEST
0000207d: SWAP2
0000207e: POP
0000207f: POP
00002080: PUSH2 0x2046
00002083: JUMP
00002084: JUMPDEST
00002085: POP
00002086: DUP2
00002087: PUSH1 0x0c
00002089: PUSH1 0x00
0000208b: DUP3
0000208c: DUP3
0000208d: SLOAD
0000208e: PUSH2 0x2097
00002091: SWAP2
00002092: SWAP1
00002093: PUSH2 0x41ae
00002096: JUMP
00002097: JUMPDEST
00002098: SWAP3
00002099: POP
0000209a: POP
0000209b: DUP2
0000209c: SWAP1
0000209d: SSTORE
0000209e: POP
0000209f: DUP2
000020a0: PUSH1 0x0b
000020a2: PUSH1 0x00
000020a4: DUP3
000020a5: DUP3
000020a6: SLOAD
000020a7: PUSH2 0x20b0
000020aa: SWAP2
000020ab: SWAP1
000020ac: PUSH2 0x41ae
000020af: JUMP
000020b0: JUMPDEST
000020b1: SWAP3
000020b2: POP
000020b3: POP
000020b4: DUP2
000020b5: SWAP1
000020b6: SSTORE
000020b7: POP
000020b8: POP
000020b9: POP
000020ba: JUMP
000020bb: JUMPDEST
000020bc: PUSH1 0x60
000020be: PUSH2 0x20c6
000020c1: DUP3
000020c2: PUSH2 0x2e6f
000020c5: JUMP
000020c6: JUMPDEST
000020c7: PUSH2 0x2105
000020ca: JUMPI
000020cb: PUSH1 0x40
000020cd: MLOAD
000020ce: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000020ef: DUP2
000020f0: MSTORE
000020f1: PUSH1 0x04
000020f3: ADD
000020f4: PUSH2 0x20fc
000020f7: SWAP1
000020f8: PUSH2 0x46d1
000020fb: JUMP
000020fc: JUMPDEST
000020fd: PUSH1 0x40
000020ff: MLOAD
00002100: DUP1
00002101: SWAP2
00002102: SUB
00002103: SWAP1
00002104: REVERT
00002105: JUMPDEST
00002106: PUSH1 0x00
00002108: PUSH1 0x13
0000210a: DUP1
0000210b: SLOAD
0000210c: PUSH2 0x2114
0000210f: SWAP1
00002110: PUSH2 0x3b54
00002113: JUMP
00002114: JUMPDEST
00002115: SWAP1
00002116: POP
00002117: SUB
00002118: PUSH2 0x212b
0000211b: JUMPI
0000211c: PUSH2 0x2124
0000211f: DUP3
00002120: PUSH2 0x28a8
00002123: JUMP
00002124: JUMPDEST
00002125: SWAP1
00002126: POP
00002127: PUSH2 0x215c
0000212a: JUMP
0000212b: JUMPDEST
0000212c: PUSH1 0x13
0000212e: PUSH2 0x2136
00002131: DUP4
00002132: PUSH2 0x28a8
00002135: JUMP
00002136: JUMPDEST
00002137: PUSH1 0x14
00002139: PUSH1 0x40
0000213b: MLOAD
0000213c: PUSH1 0x20
0000213e: ADD
0000213f: PUSH2 0x214a
00002142: SWAP4
00002143: SWAP3
00002144: SWAP2
00002145: SWAP1
00002146: PUSH2 0x4785
00002149: JUMP
0000214a: JUMPDEST
0000214b: PUSH1 0x40
0000214d: MLOAD
0000214e: PUSH1 0x20
00002150: DUP2
00002151: DUP4
00002152: SUB
00002153: SUB
00002154: DUP2
00002155: MSTORE
00002156: SWAP1
00002157: PUSH1 0x40
00002159: MSTORE
0000215a: SWAP1
0000215b: POP
0000215c: JUMPDEST
0000215d: SWAP2
0000215e: SWAP1
0000215f: POP
00002160: JUMP
00002161: JUMPDEST
00002162: PUSH1 0x0f
00002164: SLOAD
00002165: DUP2
00002166: JUMP
00002167: JUMPDEST
00002168: PUSH1 0x0b
0000216a: SLOAD
0000216b: DUP2
0000216c: JUMP
0000216d: JUMPDEST
0000216e: PUSH1 0x00
00002170: PUSH1 0x05
00002172: PUSH1 0x00
00002174: DUP5
00002175: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000218a: AND
0000218b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021a0: AND
000021a1: DUP2
000021a2: MSTORE
000021a3: PUSH1 0x20
000021a5: ADD
000021a6: SWAP1
000021a7: DUP2
000021a8: MSTORE
000021a9: PUSH1 0x20
000021ab: ADD
000021ac: PUSH1 0x00
000021ae: KECCAK256
000021af: PUSH1 0x00
000021b1: DUP4
000021b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021c7: AND
000021c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021dd: AND
000021de: DUP2
000021df: MSTORE
000021e0: PUSH1 0x20
000021e2: ADD
000021e3: SWAP1
000021e4: DUP2
000021e5: MSTORE
000021e6: PUSH1 0x20
000021e8: ADD
000021e9: PUSH1 0x00
000021eb: KECCAK256
000021ec: PUSH1 0x00
000021ee: SWAP1
000021ef: SLOAD
000021f0: SWAP1
000021f1: PUSH2 0x0100
000021f4: EXP
000021f5: SWAP1
000021f6: DIV
000021f7: PUSH1 0xff
000021f9: AND
000021fa: SWAP1
000021fb: POP
000021fc: SWAP3
000021fd: SWAP2
000021fe: POP
000021ff: POP
00002200: JUMP
00002201: JUMPDEST
00002202: PUSH2 0x2209
00002205: PUSH2 0x2306
00002208: JUMP
00002209: JUMPDEST
0000220a: PUSH1 0x00
0000220c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002221: AND
00002222: DUP2
00002223: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002238: AND
00002239: SUB
0000223a: PUSH2 0x2278
0000223d: JUMPI
0000223e: PUSH1 0x40
00002240: MLOAD
00002241: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002262: DUP2
00002263: MSTORE
00002264: PUSH1 0x04
00002266: ADD
00002267: PUSH2 0x226f
0000226a: SWAP1
0000226b: PUSH2 0x4828
0000226e: JUMP
0000226f: JUMPDEST
00002270: PUSH1 0x40
00002272: MLOAD
00002273: DUP1
00002274: SWAP2
00002275: SUB
00002276: SWAP1
00002277: REVERT
00002278: JUMPDEST
00002279: PUSH2 0x2281
0000227c: DUP2
0000227d: PUSH2 0x2a08
00002280: JUMP
00002281: JUMPDEST
00002282: POP
00002283: JUMP
00002284: JUMPDEST
00002285: PUSH1 0x15
00002287: PUSH1 0x20
00002289: MSTORE
0000228a: DUP1
0000228b: PUSH1 0x00
0000228d: MSTORE
0000228e: PUSH1 0x40
00002290: PUSH1 0x00
00002292: KECCAK256
00002293: PUSH1 0x00
00002295: SWAP2
00002296: POP
00002297: SWAP1
00002298: POP
00002299: SLOAD
0000229a: DUP2
0000229b: JUMP
0000229c: JUMPDEST
0000229d: PUSH1 0x00
0000229f: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000
000022c0: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000022dd: NOT
000022de: AND
000022df: DUP3
000022e0: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000022fd: NOT
000022fe: AND
000022ff: EQ
00002300: SWAP1
00002301: POP
00002302: SWAP2
00002303: SWAP1
00002304: POP
00002305: JUMP
00002306: JUMPDEST
00002307: PUSH2 0x230e
0000230a: PUSH2 0x23cf
0000230d: JUMP
0000230e: JUMPDEST
0000230f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002324: AND
00002325: PUSH2 0x232c
00002328: PUSH2 0x174f
0000232b: JUMP
0000232c: JUMPDEST
0000232d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002342: AND
00002343: EQ
00002344: PUSH2 0x2382
00002347: JUMPI
00002348: PUSH1 0x40
0000234a: MLOAD
0000234b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000236c: DUP2
0000236d: MSTORE
0000236e: PUSH1 0x04
00002370: ADD
00002371: PUSH2 0x2379
00002374: SWAP1
00002375: PUSH2 0x4894
00002378: JUMP
00002379: JUMPDEST
0000237a: PUSH1 0x40
0000237c: MLOAD
0000237d: DUP1
0000237e: SWAP2
0000237f: SUB
00002380: SWAP1
00002381: REVERT
00002382: JUMPDEST
00002383: JUMP
00002384: JUMPDEST
00002385: PUSH2 0x238d
00002388: DUP2
00002389: PUSH2 0x2e6f
0000238c: JUMP
0000238d: JUMPDEST
0000238e: PUSH2 0x23cc
00002391: JUMPI
00002392: PUSH1 0x40
00002394: MLOAD
00002395: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000023b6: DUP2
000023b7: MSTORE
000023b8: PUSH1 0x04
000023ba: ADD
000023bb: PUSH2 0x23c3
000023be: SWAP1
000023bf: PUSH2 0x3db1
000023c2: JUMP
000023c3: JUMPDEST
000023c4: PUSH1 0x40
000023c6: MLOAD
000023c7: DUP1
000023c8: SWAP2
000023c9: SUB
000023ca: SWAP1
000023cb: REVERT
000023cc: JUMPDEST
000023cd: POP
000023ce: JUMP
000023cf: JUMPDEST
000023d0: PUSH1 0x00
000023d2: CALLER
000023d3: SWAP1
000023d4: POP
000023d5: SWAP1
000023d6: JUMP
000023d7: JUMPDEST
000023d8: DUP2
000023d9: PUSH1 0x04
000023db: PUSH1 0x00
000023dd: DUP4
000023de: DUP2
000023df: MSTORE
000023e0: PUSH1 0x20
000023e2: ADD
000023e3: SWAP1
000023e4: DUP2
000023e5: MSTORE
000023e6: PUSH1 0x20
000023e8: ADD
000023e9: PUSH1 0x00
000023eb: KECCAK256
000023ec: PUSH1 0x00
000023ee: PUSH2 0x0100
000023f1: EXP
000023f2: DUP2
000023f3: SLOAD
000023f4: DUP2
000023f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000240a: MUL
0000240b: NOT
0000240c: AND
0000240d: SWAP1
0000240e: DUP4
0000240f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002424: AND
00002425: MUL
00002426: OR
00002427: SWAP1
00002428: SSTORE
00002429: POP
0000242a: DUP1
0000242b: DUP3
0000242c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002441: AND
00002442: PUSH2 0x244a
00002445: DUP4
00002446: PUSH2 0x0fb3
00002449: JUMP
0000244a: JUMPDEST
0000244b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002460: AND
00002461: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00002482: PUSH1 0x40
00002484: MLOAD
00002485: PUSH1 0x40
00002487: MLOAD
00002488: DUP1
00002489: SWAP2
0000248a: SUB
0000248b: SWAP1
0000248c: LOG4
0000248d: POP
0000248e: POP
0000248f: JUMP
00002490: JUMPDEST
00002491: PUSH1 0x00
00002493: DUP1
00002494: PUSH2 0x249c
00002497: DUP4
00002498: PUSH2 0x0fb3
0000249b: JUMP
0000249c: JUMPDEST
0000249d: SWAP1
0000249e: POP
0000249f: DUP1
000024a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024b5: AND
000024b6: DUP5
000024b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024cc: AND
000024cd: EQ
000024ce: DUP1
000024cf: PUSH2 0x24de
000024d2: JUMPI
000024d3: POP
000024d4: PUSH2 0x24dd
000024d7: DUP2
000024d8: DUP6
000024d9: PUSH2 0x216d
000024dc: JUMP
000024dd: JUMPDEST
000024de: JUMPDEST
000024df: DUP1
000024e0: PUSH2 0x251c
000024e3: JUMPI
000024e4: POP
000024e5: DUP4
000024e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024fb: AND
000024fc: PUSH2 0x2504
000024ff: DUP5
00002500: PUSH2 0x0be8
00002503: JUMP
00002504: JUMPDEST
00002505: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000251a: AND
0000251b: EQ
0000251c: JUMPDEST
0000251d: SWAP2
0000251e: POP
0000251f: POP
00002520: SWAP3
00002521: SWAP2
00002522: POP
00002523: POP
00002524: JUMP
00002525: JUMPDEST
00002526: DUP3
00002527: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000253c: AND
0000253d: PUSH2 0x2545
00002540: DUP3
00002541: PUSH2 0x0fb3
00002544: JUMP
00002545: JUMPDEST
00002546: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000255b: AND
0000255c: EQ
0000255d: PUSH2 0x259b
00002560: JUMPI
00002561: PUSH1 0x40
00002563: MLOAD
00002564: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002585: DUP2
00002586: MSTORE
00002587: PUSH1 0x04
00002589: ADD
0000258a: PUSH2 0x2592
0000258d: SWAP1
0000258e: PUSH2 0x4926
00002591: JUMP
00002592: JUMPDEST
00002593: PUSH1 0x40
00002595: MLOAD
00002596: DUP1
00002597: SWAP2
00002598: SUB
00002599: SWAP1
0000259a: REVERT
0000259b: JUMPDEST
0000259c: PUSH1 0x00
0000259e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025b3: AND
000025b4: DUP3
000025b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025ca: AND
000025cb: SUB
000025cc: PUSH2 0x260a
000025cf: JUMPI
000025d0: PUSH1 0x40
000025d2: MLOAD
000025d3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000025f4: DUP2
000025f5: MSTORE
000025f6: PUSH1 0x04
000025f8: ADD
000025f9: PUSH2 0x2601
000025fc: SWAP1
000025fd: PUSH2 0x49b8
00002600: JUMP
00002601: JUMPDEST
00002602: PUSH1 0x40
00002604: MLOAD
00002605: DUP1
00002606: SWAP2
00002607: SUB
00002608: SWAP1
00002609: REVERT
0000260a: JUMPDEST
0000260b: PUSH2 0x2615
0000260e: DUP4
0000260f: DUP4
00002610: DUP4
00002611: PUSH2 0x2edb
00002614: JUMP
00002615: JUMPDEST
00002616: PUSH2 0x2620
00002619: PUSH1 0x00
0000261b: DUP3
0000261c: PUSH2 0x23d7
0000261f: JUMP
00002620: JUMPDEST
00002621: PUSH1 0x01
00002623: PUSH1 0x03
00002625: PUSH1 0x00
00002627: DUP6
00002628: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000263d: AND
0000263e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002653: AND
00002654: DUP2
00002655: MSTORE
00002656: PUSH1 0x20
00002658: ADD
00002659: SWAP1
0000265a: DUP2
0000265b: MSTORE
0000265c: PUSH1 0x20
0000265e: ADD
0000265f: PUSH1 0x00
00002661: KECCAK256
00002662: PUSH1 0x00
00002664: DUP3
00002665: DUP3
00002666: SLOAD
00002667: PUSH2 0x2670
0000266a: SWAP2
0000266b: SWAP1
0000266c: PUSH2 0x49d8
0000266f: JUMP
00002670: JUMPDEST
00002671: SWAP3
00002672: POP
00002673: POP
00002674: DUP2
00002675: SWAP1
00002676: SSTORE
00002677: POP
00002678: PUSH1 0x01
0000267a: PUSH1 0x03
0000267c: PUSH1 0x00
0000267e: DUP5
0000267f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002694: AND
00002695: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026aa: AND
000026ab: DUP2
000026ac: MSTORE
000026ad: PUSH1 0x20
000026af: ADD
000026b0: SWAP1
000026b1: DUP2
000026b2: MSTORE
000026b3: PUSH1 0x20
000026b5: ADD
000026b6: PUSH1 0x00
000026b8: KECCAK256
000026b9: PUSH1 0x00
000026bb: DUP3
000026bc: DUP3
000026bd: SLOAD
000026be: PUSH2 0x26c7
000026c1: SWAP2
000026c2: SWAP1
000026c3: PUSH2 0x41ae
000026c6: JUMP
000026c7: JUMPDEST
000026c8: SWAP3
000026c9: POP
000026ca: POP
000026cb: DUP2
000026cc: SWAP1
000026cd: SSTORE
000026ce: POP
000026cf: DUP2
000026d0: PUSH1 0x02
000026d2: PUSH1 0x00
000026d4: DUP4
000026d5: DUP2
000026d6: MSTORE
000026d7: PUSH1 0x20
000026d9: ADD
000026da: SWAP1
000026db: DUP2
000026dc: MSTORE
000026dd: PUSH1 0x20
000026df: ADD
000026e0: PUSH1 0x00
000026e2: KECCAK256
000026e3: PUSH1 0x00
000026e5: PUSH2 0x0100
000026e8: EXP
000026e9: DUP2
000026ea: SLOAD
000026eb: DUP2
000026ec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002701: MUL
00002702: NOT
00002703: AND
00002704: SWAP1
00002705: DUP4
00002706: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000271b: AND
0000271c: MUL
0000271d: OR
0000271e: SWAP1
0000271f: SSTORE
00002720: POP
00002721: DUP1
00002722: DUP3
00002723: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002738: AND
00002739: DUP5
0000273a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000274f: AND
00002750: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00002771: PUSH1 0x40
00002773: MLOAD
00002774: PUSH1 0x40
00002776: MLOAD
00002777: DUP1
00002778: SWAP2
00002779: SUB
0000277a: SWAP1
0000277b: LOG4
0000277c: PUSH2 0x2786
0000277f: DUP4
00002780: DUP4
00002781: DUP4
00002782: PUSH2 0x2ee0
00002785: JUMP
00002786: JUMPDEST
00002787: POP
00002788: POP
00002789: POP
0000278a: JUMP
0000278b: JUMPDEST
0000278c: PUSH1 0x00
0000278e: PUSH2 0x2796
00002791: DUP3
00002792: PUSH2 0x0fb3
00002795: JUMP
00002796: JUMPDEST
00002797: SWAP1
00002798: POP
00002799: PUSH2 0x27a4
0000279c: DUP2
0000279d: PUSH1 0x00
0000279f: DUP5
000027a0: PUSH2 0x2edb
000027a3: JUMP
000027a4: JUMPDEST
000027a5: PUSH2 0x27af
000027a8: PUSH1 0x00
000027aa: DUP4
000027ab: PUSH2 0x23d7
000027ae: JUMP
000027af: JUMPDEST
000027b0: PUSH1 0x01
000027b2: PUSH1 0x03
000027b4: PUSH1 0x00
000027b6: DUP4
000027b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027cc: AND
000027cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027e2: AND
000027e3: DUP2
000027e4: MSTORE
000027e5: PUSH1 0x20
000027e7: ADD
000027e8: SWAP1
000027e9: DUP2
000027ea: MSTORE
000027eb: PUSH1 0x20
000027ed: ADD
000027ee: PUSH1 0x00
000027f0: KECCAK256
000027f1: PUSH1 0x00
000027f3: DUP3
000027f4: DUP3
000027f5: SLOAD
000027f6: PUSH2 0x27ff
000027f9: SWAP2
000027fa: SWAP1
000027fb: PUSH2 0x49d8
000027fe: JUMP
000027ff: JUMPDEST
00002800: SWAP3
00002801: POP
00002802: POP
00002803: DUP2
00002804: SWAP1
00002805: SSTORE
00002806: POP
00002807: PUSH1 0x02
00002809: PUSH1 0x00
0000280b: DUP4
0000280c: DUP2
0000280d: MSTORE
0000280e: PUSH1 0x20
00002810: ADD
00002811: SWAP1
00002812: DUP2
00002813: MSTORE
00002814: PUSH1 0x20
00002816: ADD
00002817: PUSH1 0x00
00002819: KECCAK256
0000281a: PUSH1 0x00
0000281c: PUSH2 0x0100
0000281f: EXP
00002820: DUP2
00002821: SLOAD
00002822: SWAP1
00002823: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002838: MUL
00002839: NOT
0000283a: AND
0000283b: SWAP1
0000283c: SSTORE
0000283d: DUP2
0000283e: PUSH1 0x00
00002840: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002855: AND
00002856: DUP3
00002857: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000286c: AND
0000286d: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
0000288e: PUSH1 0x40
00002890: MLOAD
00002891: PUSH1 0x40
00002893: MLOAD
00002894: DUP1
00002895: SWAP2
00002896: SUB
00002897: SWAP1
00002898: LOG4
00002899: PUSH2 0x28a4
0000289c: DUP2
0000289d: PUSH1 0x00
0000289f: DUP5
000028a0: PUSH2 0x2ee0
000028a3: JUMP
000028a4: JUMPDEST
000028a5: POP
000028a6: POP
000028a7: JUMP
000028a8: JUMPDEST
000028a9: PUSH1 0x60
000028ab: PUSH1 0x00
000028ad: DUP3
000028ae: SUB
000028af: PUSH2 0x28ef
000028b2: JUMPI
000028b3: PUSH1 0x40
000028b5: MLOAD
000028b6: DUP1
000028b7: PUSH1 0x40
000028b9: ADD
000028ba: PUSH1 0x40
000028bc: MSTORE
000028bd: DUP1
000028be: PUSH1 0x01
000028c0: DUP2
000028c1: MSTORE
000028c2: PUSH1 0x20
000028c4: ADD
000028c5: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000
000028e6: DUP2
000028e7: MSTORE
000028e8: POP
000028e9: SWAP1
000028ea: POP
000028eb: PUSH2 0x2a03
000028ee: JUMP
000028ef: JUMPDEST
000028f0: PUSH1 0x00
000028f2: DUP3
000028f3: SWAP1
000028f4: POP
000028f5: PUSH1 0x00
000028f7: JUMPDEST
000028f8: PUSH1 0x00
000028fa: DUP3
000028fb: EQ
000028fc: PUSH2 0x2921
000028ff: JUMPI
00002900: DUP1
00002901: DUP1
00002902: PUSH2 0x290a
00002905: SWAP1
00002906: PUSH2 0x403c
00002909: JUMP
0000290a: JUMPDEST
0000290b: SWAP2
0000290c: POP
0000290d: POP
0000290e: PUSH1 0x0a
00002910: DUP3
00002911: PUSH2 0x291a
00002914: SWAP2
00002915: SWAP1
00002916: PUSH2 0x4a3b
00002919: JUMP
0000291a: JUMPDEST
0000291b: SWAP2
0000291c: POP
0000291d: PUSH2 0x28f7
00002920: JUMP
00002921: JUMPDEST
00002922: PUSH1 0x00
00002924: DUP2
00002925: PUSH8 0xffffffffffffffff
0000292e: DUP2
0000292f: GT
00002930: ISZERO
00002931: PUSH2 0x293d
00002934: JUMPI
00002935: PUSH2 0x293c
00002938: PUSH2 0x3506
0000293b: JUMP
0000293c: JUMPDEST
0000293d: JUMPDEST
0000293e: PUSH1 0x40
00002940: MLOAD
00002941: SWAP1
00002942: DUP1
00002943: DUP3
00002944: MSTORE
00002945: DUP1
00002946: PUSH1 0x1f
00002948: ADD
00002949: PUSH1 0x1f
0000294b: NOT
0000294c: AND
0000294d: PUSH1 0x20
0000294f: ADD
00002950: DUP3
00002951: ADD
00002952: PUSH1 0x40
00002954: MSTORE
00002955: DUP1
00002956: ISZERO
00002957: PUSH2 0x296f
0000295a: JUMPI
0000295b: DUP2
0000295c: PUSH1 0x20
0000295e: ADD
0000295f: PUSH1 0x01
00002961: DUP3
00002962: MUL
00002963: DUP1
00002964: CALLDATASIZE
00002965: DUP4
00002966: CALLDATACOPY
00002967: DUP1
00002968: DUP3
00002969: ADD
0000296a: SWAP2
0000296b: POP
0000296c: POP
0000296d: SWAP1
0000296e: POP
0000296f: JUMPDEST
00002970: POP
00002971: SWAP1
00002972: POP
00002973: JUMPDEST
00002974: PUSH1 0x00
00002976: DUP6
00002977: EQ
00002978: PUSH2 0x29fc
0000297b: JUMPI
0000297c: PUSH1 0x01
0000297e: DUP3
0000297f: PUSH2 0x2988
00002982: SWAP2
00002983: SWAP1
00002984: PUSH2 0x49d8
00002987: JUMP
00002988: JUMPDEST
00002989: SWAP2
0000298a: POP
0000298b: PUSH1 0x0a
0000298d: DUP6
0000298e: PUSH2 0x2997
00002991: SWAP2
00002992: SWAP1
00002993: PUSH2 0x4a6c
00002996: JUMP
00002997: JUMPDEST
00002998: PUSH1 0x30
0000299a: PUSH2 0x29a3
0000299d: SWAP2
0000299e: SWAP1
0000299f: PUSH2 0x41ae
000029a2: JUMP
000029a3: JUMPDEST
000029a4: PUSH1 0xf8
000029a6: SHL
000029a7: DUP2
000029a8: DUP4
000029a9: DUP2
000029aa: MLOAD
000029ab: DUP2
000029ac: LT
000029ad: PUSH2 0x29b9
000029b0: JUMPI
000029b1: PUSH2 0x29b8
000029b4: PUSH2 0x3f72
000029b7: JUMP
000029b8: JUMPDEST
000029b9: JUMPDEST
000029ba: PUSH1 0x20
000029bc: ADD
000029bd: ADD
000029be: SWAP1
000029bf: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000029df: NOT
000029e0: AND
000029e1: SWAP1
000029e2: DUP2
000029e3: PUSH1 0x00
000029e5: BYTE
000029e6: SWAP1
000029e7: MSTORE8
000029e8: POP
000029e9: PUSH1 0x0a
000029eb: DUP6
000029ec: PUSH2 0x29f5
000029ef: SWAP2
000029f0: SWAP1
000029f1: PUSH2 0x4a3b
000029f4: JUMP
000029f5: JUMPDEST
000029f6: SWAP5
000029f7: POP
000029f8: PUSH2 0x2973
000029fb: JUMP
000029fc: JUMPDEST
000029fd: DUP1
000029fe: SWAP4
000029ff: POP
00002a00: POP
00002a01: POP
00002a02: POP
00002a03: JUMPDEST
00002a04: SWAP2
00002a05: SWAP1
00002a06: POP
00002a07: JUMP
00002a08: JUMPDEST
00002a09: PUSH1 0x00
00002a0b: PUSH1 0x06
00002a0d: PUSH1 0x00
00002a0f: SWAP1
00002a10: SLOAD
00002a11: SWAP1
00002a12: PUSH2 0x0100
00002a15: EXP
00002a16: SWAP1
00002a17: DIV
00002a18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a2d: AND
00002a2e: SWAP1
00002a2f: POP
00002a30: DUP2
00002a31: PUSH1 0x06
00002a33: PUSH1 0x00
00002a35: PUSH2 0x0100
00002a38: EXP
00002a39: DUP2
00002a3a: SLOAD
00002a3b: DUP2
00002a3c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a51: MUL
00002a52: NOT
00002a53: AND
00002a54: SWAP1
00002a55: DUP4
00002a56: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a6b: AND
00002a6c: MUL
00002a6d: OR
00002a6e: SWAP1
00002a6f: SSTORE
00002a70: POP
00002a71: DUP2
00002a72: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a87: AND
00002a88: DUP2
00002a89: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a9e: AND
00002a9f: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002ac0: PUSH1 0x40
00002ac2: MLOAD
00002ac3: PUSH1 0x40
00002ac5: MLOAD
00002ac6: DUP1
00002ac7: SWAP2
00002ac8: SUB
00002ac9: SWAP1
00002aca: LOG3
00002acb: POP
00002acc: POP
00002acd: JUMP
00002ace: JUMPDEST
00002acf: PUSH1 0x00
00002ad1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ae6: AND
00002ae7: DUP3
00002ae8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002afd: AND
00002afe: SUB
00002aff: PUSH2 0x2b3d
00002b02: JUMPI
00002b03: PUSH1 0x40
00002b05: MLOAD
00002b06: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002b27: DUP2
00002b28: MSTORE
00002b29: PUSH1 0x04
00002b2b: ADD
00002b2c: PUSH2 0x2b34
00002b2f: SWAP1
00002b30: PUSH2 0x4ae9
00002b33: JUMP
00002b34: JUMPDEST
00002b35: PUSH1 0x40
00002b37: MLOAD
00002b38: DUP1
00002b39: SWAP2
00002b3a: SUB
00002b3b: SWAP1
00002b3c: REVERT
00002b3d: JUMPDEST
00002b3e: PUSH2 0x2b46
00002b41: DUP2
00002b42: PUSH2 0x2e6f
00002b45: JUMP
00002b46: JUMPDEST
00002b47: ISZERO
00002b48: PUSH2 0x2b86
00002b4b: JUMPI
00002b4c: PUSH1 0x40
00002b4e: MLOAD
00002b4f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002b70: DUP2
00002b71: MSTORE
00002b72: PUSH1 0x04
00002b74: ADD
00002b75: PUSH2 0x2b7d
00002b78: SWAP1
00002b79: PUSH2 0x4b55
00002b7c: JUMP
00002b7d: JUMPDEST
00002b7e: PUSH1 0x40
00002b80: MLOAD
00002b81: DUP1
00002b82: SWAP2
00002b83: SUB
00002b84: SWAP1
00002b85: REVERT
00002b86: JUMPDEST
00002b87: PUSH2 0x2b92
00002b8a: PUSH1 0x00
00002b8c: DUP4
00002b8d: DUP4
00002b8e: PUSH2 0x2edb
00002b91: JUMP
00002b92: JUMPDEST
00002b93: PUSH1 0x01
00002b95: PUSH1 0x03
00002b97: PUSH1 0x00
00002b99: DUP5
00002b9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002baf: AND
00002bb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002bc5: AND
00002bc6: DUP2
00002bc7: MSTORE
00002bc8: PUSH1 0x20
00002bca: ADD
00002bcb: SWAP1
00002bcc: DUP2
00002bcd: MSTORE
00002bce: PUSH1 0x20
00002bd0: ADD
00002bd1: PUSH1 0x00
00002bd3: KECCAK256
00002bd4: PUSH1 0x00
00002bd6: DUP3
00002bd7: DUP3
00002bd8: SLOAD
00002bd9: PUSH2 0x2be2
00002bdc: SWAP2
00002bdd: SWAP1
00002bde: PUSH2 0x41ae
00002be1: JUMP
00002be2: JUMPDEST
00002be3: SWAP3
00002be4: POP
00002be5: POP
00002be6: DUP2
00002be7: SWAP1
00002be8: SSTORE
00002be9: POP
00002bea: DUP2
00002beb: PUSH1 0x02
00002bed: PUSH1 0x00
00002bef: DUP4
00002bf0: DUP2
00002bf1: MSTORE
00002bf2: PUSH1 0x20
00002bf4: ADD
00002bf5: SWAP1
00002bf6: DUP2
00002bf7: MSTORE
00002bf8: PUSH1 0x20
00002bfa: ADD
00002bfb: PUSH1 0x00
00002bfd: KECCAK256
00002bfe: PUSH1 0x00
00002c00: PUSH2 0x0100
00002c03: EXP
00002c04: DUP2
00002c05: SLOAD
00002c06: DUP2
00002c07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c1c: MUL
00002c1d: NOT
00002c1e: AND
00002c1f: SWAP1
00002c20: DUP4
00002c21: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c36: AND
00002c37: MUL
00002c38: OR
00002c39: SWAP1
00002c3a: SSTORE
00002c3b: POP
00002c3c: DUP1
00002c3d: DUP3
00002c3e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c53: AND
00002c54: PUSH1 0x00
00002c56: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002c6b: AND
00002c6c: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00002c8d: PUSH1 0x40
00002c8f: MLOAD
00002c90: PUSH1 0x40
00002c92: MLOAD
00002c93: DUP1
00002c94: SWAP2
00002c95: SUB
00002c96: SWAP1
00002c97: LOG4
00002c98: PUSH2 0x2ca3
00002c9b: PUSH1 0x00
00002c9d: DUP4
00002c9e: DUP4
00002c9f: PUSH2 0x2ee0
00002ca2: JUMP
00002ca3: JUMPDEST
00002ca4: POP
00002ca5: POP
00002ca6: JUMP
00002ca7: JUMPDEST
00002ca8: DUP2
00002ca9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002cbe: AND
00002cbf: DUP4
00002cc0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002cd5: AND
00002cd6: SUB
00002cd7: PUSH2 0x2d15
00002cda: JUMPI
00002cdb: PUSH1 0x40
00002cdd: MLOAD
00002cde: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002cff: DUP2
00002d00: MSTORE
00002d01: PUSH1 0x04
00002d03: ADD
00002d04: PUSH2 0x2d0c
00002d07: SWAP1
00002d08: PUSH2 0x4bc1
00002d0b: JUMP
00002d0c: JUMPDEST
00002d0d: PUSH1 0x40
00002d0f: MLOAD
00002d10: DUP1
00002d11: SWAP2
00002d12: SUB
00002d13: SWAP1
00002d14: REVERT
00002d15: JUMPDEST
00002d16: DUP1
00002d17: PUSH1 0x05
00002d19: PUSH1 0x00
00002d1b: DUP6
00002d1c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d31: AND
00002d32: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d47: AND
00002d48: DUP2
00002d49: MSTORE
00002d4a: PUSH1 0x20
00002d4c: ADD
00002d4d: SWAP1
00002d4e: DUP2
00002d4f: MSTORE
00002d50: PUSH1 0x20
00002d52: ADD
00002d53: PUSH1 0x00
00002d55: KECCAK256
00002d56: PUSH1 0x00
00002d58: DUP5
00002d59: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d6e: AND
00002d6f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d84: AND
00002d85: DUP2
00002d86: MSTORE
00002d87: PUSH1 0x20
00002d89: ADD
00002d8a: SWAP1
00002d8b: DUP2
00002d8c: MSTORE
00002d8d: PUSH1 0x20
00002d8f: ADD
00002d90: PUSH1 0x00
00002d92: KECCAK256
00002d93: PUSH1 0x00
00002d95: PUSH2 0x0100
00002d98: EXP
00002d99: DUP2
00002d9a: SLOAD
00002d9b: DUP2
00002d9c: PUSH1 0xff
00002d9e: MUL
00002d9f: NOT
00002da0: AND
00002da1: SWAP1
00002da2: DUP4
00002da3: ISZERO
00002da4: ISZERO
00002da5: MUL
00002da6: OR
00002da7: SWAP1
00002da8: SSTORE
00002da9: POP
00002daa: DUP2
00002dab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002dc0: AND
00002dc1: DUP4
00002dc2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002dd7: AND
00002dd8: PUSH32 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31
00002df9: DUP4
00002dfa: PUSH1 0x40
00002dfc: MLOAD
00002dfd: PUSH2 0x2e06
00002e00: SWAP2
00002e01: SWAP1
00002e02: PUSH2 0x31e6
00002e05: JUMP
00002e06: JUMPDEST
00002e07: PUSH1 0x40
00002e09: MLOAD
00002e0a: DUP1
00002e0b: SWAP2
00002e0c: SUB
00002e0d: SWAP1
00002e0e: LOG3
00002e0f: POP
00002e10: POP
00002e11: POP
00002e12: JUMP
00002e13: JUMPDEST
00002e14: PUSH2 0x2e1e
00002e17: DUP5
00002e18: DUP5
00002e19: DUP5
00002e1a: PUSH2 0x2525
00002e1d: JUMP
00002e1e: JUMPDEST
00002e1f: PUSH2 0x2e2a
00002e22: DUP5
00002e23: DUP5
00002e24: DUP5
00002e25: DUP5
00002e26: PUSH2 0x2ee5
00002e29: JUMP
00002e2a: JUMPDEST
00002e2b: PUSH2 0x2e69
00002e2e: JUMPI
00002e2f: PUSH1 0x40
00002e31: MLOAD
00002e32: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002e53: DUP2
00002e54: MSTORE
00002e55: PUSH1 0x04
00002e57: ADD
00002e58: PUSH2 0x2e60
00002e5b: SWAP1
00002e5c: PUSH2 0x4c53
00002e5f: JUMP
00002e60: JUMPDEST
00002e61: PUSH1 0x40
00002e63: MLOAD
00002e64: DUP1
00002e65: SWAP2
00002e66: SUB
00002e67: SWAP1
00002e68: REVERT
00002e69: JUMPDEST
00002e6a: POP
00002e6b: POP
00002e6c: POP
00002e6d: POP
00002e6e: JUMP
00002e6f: JUMPDEST
00002e70: PUSH1 0x00
00002e72: DUP1
00002e73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002e88: AND
00002e89: PUSH1 0x02
00002e8b: PUSH1 0x00
00002e8d: DUP5
00002e8e: DUP2
00002e8f: MSTORE
00002e90: PUSH1 0x20
00002e92: ADD
00002e93: SWAP1
00002e94: DUP2
00002e95: MSTORE
00002e96: PUSH1 0x20
00002e98: ADD
00002e99: PUSH1 0x00
00002e9b: KECCAK256
00002e9c: PUSH1 0x00
00002e9e: SWAP1
00002e9f: SLOAD
00002ea0: SWAP1
00002ea1: PUSH2 0x0100
00002ea4: EXP
00002ea5: SWAP1
00002ea6: DIV
00002ea7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ebc: AND
00002ebd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ed2: AND
00002ed3: EQ
00002ed4: ISZERO
00002ed5: SWAP1
00002ed6: POP
00002ed7: SWAP2
00002ed8: SWAP1
00002ed9: POP
00002eda: JUMP
00002edb: JUMPDEST
00002edc: POP
00002edd: POP
00002ede: POP
00002edf: JUMP
00002ee0: JUMPDEST
00002ee1: POP
00002ee2: POP
00002ee3: POP
00002ee4: JUMP
00002ee5: JUMPDEST
00002ee6: PUSH1 0x00
00002ee8: PUSH2 0x2f06
00002eeb: DUP5
00002eec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f01: AND
00002f02: PUSH2 0x306c
00002f05: JUMP
00002f06: JUMPDEST
00002f07: ISZERO
00002f08: PUSH2 0x305f
00002f0b: JUMPI
00002f0c: DUP4
00002f0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f22: AND
00002f23: PUSH4 0x150b7a02
00002f28: PUSH2 0x2f2f
00002f2b: PUSH2 0x23cf
00002f2e: JUMP
00002f2f: JUMPDEST
00002f30: DUP8
00002f31: DUP7
00002f32: DUP7
00002f33: PUSH1 0x40
00002f35: MLOAD
00002f36: DUP6
00002f37: PUSH4 0xffffffff
00002f3c: AND
00002f3d: PUSH1 0xe0
00002f3f: SHL
00002f40: DUP2
00002f41: MSTORE
00002f42: PUSH1 0x04
00002f44: ADD
00002f45: PUSH2 0x2f51
00002f48: SWAP5
00002f49: SWAP4
00002f4a: SWAP3
00002f4b: SWAP2
00002f4c: SWAP1
00002f4d: PUSH2 0x4cc8
00002f50: JUMP
00002f51: JUMPDEST
00002f52: PUSH1 0x20
00002f54: PUSH1 0x40
00002f56: MLOAD
00002f57: DUP1
00002f58: DUP4
00002f59: SUB
00002f5a: DUP2
00002f5b: PUSH1 0x00
00002f5d: DUP8
00002f5e: GAS
00002f5f: CALL
00002f60: SWAP3
00002f61: POP
00002f62: POP
00002f63: POP
00002f64: DUP1
00002f65: ISZERO
00002f66: PUSH2 0x2f8d
00002f69: JUMPI
00002f6a: POP
00002f6b: PUSH1 0x40
00002f6d: MLOAD
00002f6e: RETURNDATASIZE
00002f6f: PUSH1 0x1f
00002f71: NOT
00002f72: PUSH1 0x1f
00002f74: DUP3
00002f75: ADD
00002f76: AND
00002f77: DUP3
00002f78: ADD
00002f79: DUP1
00002f7a: PUSH1 0x40
00002f7c: MSTORE
00002f7d: POP
00002f7e: DUP2
00002f7f: ADD
00002f80: SWAP1
00002f81: PUSH2 0x2f8a
00002f84: SWAP2
00002f85: SWAP1
00002f86: PUSH2 0x4d29
00002f89: JUMP
00002f8a: JUMPDEST
00002f8b: PUSH1 0x01
00002f8d: JUMPDEST
00002f8e: PUSH2 0x300f
00002f91: JUMPI
00002f92: RETURNDATASIZE
00002f93: DUP1
00002f94: PUSH1 0x00
00002f96: DUP2
00002f97: EQ
00002f98: PUSH2 0x2fbd
00002f9b: JUMPI
00002f9c: PUSH1 0x40
00002f9e: MLOAD
00002f9f: SWAP2
00002fa0: POP
00002fa1: PUSH1 0x1f
00002fa3: NOT
00002fa4: PUSH1 0x3f
00002fa6: RETURNDATASIZE
00002fa7: ADD
00002fa8: AND
00002fa9: DUP3
00002faa: ADD
00002fab: PUSH1 0x40
00002fad: MSTORE
00002fae: RETURNDATASIZE
00002faf: DUP3
00002fb0: MSTORE
00002fb1: RETURNDATASIZE
00002fb2: PUSH1 0x00
00002fb4: PUSH1 0x20
00002fb6: DUP5
00002fb7: ADD
00002fb8: RETURNDATACOPY
00002fb9: PUSH2 0x2fc2
00002fbc: JUMP
00002fbd: JUMPDEST
00002fbe: PUSH1 0x60
00002fc0: SWAP2
00002fc1: POP
00002fc2: JUMPDEST
00002fc3: POP
00002fc4: PUSH1 0x00
00002fc6: DUP2
00002fc7: MLOAD
00002fc8: SUB
00002fc9: PUSH2 0x3007
00002fcc: JUMPI
00002fcd: PUSH1 0x40
00002fcf: MLOAD
00002fd0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002ff1: DUP2
00002ff2: MSTORE
00002ff3: PUSH1 0x04
00002ff5: ADD
00002ff6: PUSH2 0x2ffe
00002ff9: SWAP1
00002ffa: PUSH2 0x4c53
00002ffd: JUMP
00002ffe: JUMPDEST
00002fff: PUSH1 0x40
00003001: MLOAD
00003002: DUP1
00003003: SWAP2
00003004: SUB
00003005: SWAP1
00003006: REVERT
00003007: JUMPDEST
00003008: DUP1
00003009: MLOAD
0000300a: DUP2
0000300b: PUSH1 0x20
0000300d: ADD
0000300e: REVERT
0000300f: JUMPDEST
00003010: PUSH4 0x150b7a02
00003015: PUSH1 0xe0
00003017: SHL
00003018: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003035: NOT
00003036: AND
00003037: DUP2
00003038: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003055: NOT
00003056: AND
00003057: EQ
00003058: SWAP2
00003059: POP
0000305a: POP
0000305b: PUSH2 0x3064
0000305e: JUMP
0000305f: JUMPDEST
00003060: PUSH1 0x01
00003062: SWAP1
00003063: POP
00003064: JUMPDEST
00003065: SWAP5
00003066: SWAP4
00003067: POP
00003068: POP
00003069: POP
0000306a: POP
0000306b: JUMP
0000306c: JUMPDEST
0000306d: PUSH1 0x00
0000306f: DUP1
00003070: DUP3
00003071: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003086: AND
00003087: EXTCODESIZE
00003088: GT
00003089: SWAP1
0000308a: POP
0000308b: SWAP2
0000308c: SWAP1
0000308d: POP
0000308e: JUMP
0000308f: JUMPDEST
00003090: DUP3
00003091: DUP1
00003092: SLOAD
00003093: PUSH2 0x309b
00003096: SWAP1
00003097: PUSH2 0x3b54
0000309a: JUMP
0000309b: JUMPDEST
0000309c: SWAP1
0000309d: PUSH1 0x00
0000309f: MSTORE
000030a0: PUSH1 0x20
000030a2: PUSH1 0x00
000030a4: KECCAK256
000030a5: SWAP1
000030a6: PUSH1 0x1f
000030a8: ADD
000030a9: PUSH1 0x20
000030ab: SWAP1
000030ac: DIV
000030ad: DUP2
000030ae: ADD
000030af: SWAP3
000030b0: DUP3
000030b1: PUSH2 0x30bd
000030b4: JUMPI
000030b5: PUSH1 0x00
000030b7: DUP6
000030b8: SSTORE
000030b9: PUSH2 0x3104
000030bc: JUMP
000030bd: JUMPDEST
000030be: DUP3
000030bf: PUSH1 0x1f
000030c1: LT
000030c2: PUSH2 0x30d6
000030c5: JUMPI
000030c6: DUP1
000030c7: MLOAD
000030c8: PUSH1 0xff
000030ca: NOT
000030cb: AND
000030cc: DUP4
000030cd: DUP1
000030ce: ADD
000030cf: OR
000030d0: DUP6
000030d1: SSTORE
000030d2: PUSH2 0x3104
000030d5: JUMP
000030d6: JUMPDEST
000030d7: DUP3
000030d8: DUP1
000030d9: ADD
000030da: PUSH1 0x01
000030dc: ADD
000030dd: DUP6
000030de: SSTORE
000030df: DUP3
000030e0: ISZERO
000030e1: PUSH2 0x3104
000030e4: JUMPI
000030e5: SWAP2
000030e6: DUP3
000030e7: ADD
000030e8: JUMPDEST
000030e9: DUP3
000030ea: DUP2
000030eb: GT
000030ec: ISZERO
000030ed: PUSH2 0x3103
000030f0: JUMPI
000030f1: DUP3
000030f2: MLOAD
000030f3: DUP3
000030f4: SSTORE
000030f5: SWAP2
000030f6: PUSH1 0x20
000030f8: ADD
000030f9: SWAP2
000030fa: SWAP1
000030fb: PUSH1 0x01
000030fd: ADD
000030fe: SWAP1
000030ff: PUSH2 0x30e8
00003102: JUMP
00003103: JUMPDEST
00003104: JUMPDEST
00003105: POP
00003106: SWAP1
00003107: POP
00003108: PUSH2 0x3111
0000310b: SWAP2
0000310c: SWAP1
0000310d: PUSH2 0x3115
00003110: JUMP
00003111: JUMPDEST
00003112: POP
00003113: SWAP1
00003114: JUMP
00003115: JUMPDEST
00003116: JUMPDEST
00003117: DUP1
00003118: DUP3
00003119: GT
0000311a: ISZERO
0000311b: PUSH2 0x312e
0000311e: JUMPI
0000311f: PUSH1 0x00
00003121: DUP2
00003122: PUSH1 0x00
00003124: SWAP1
00003125: SSTORE
00003126: POP
00003127: PUSH1 0x01
00003129: ADD
0000312a: PUSH2 0x3116
0000312d: JUMP
0000312e: JUMPDEST
0000312f: POP
00003130: SWAP1
00003131: JUMP
00003132: JUMPDEST
00003133: PUSH1 0x00
00003135: PUSH1 0x40
00003137: MLOAD
00003138: SWAP1
00003139: POP
0000313a: SWAP1
0000313b: JUMP
0000313c: JUMPDEST
0000313d: PUSH1 0x00
0000313f: DUP1
00003140: REVERT
00003141: JUMPDEST
00003142: PUSH1 0x00
00003144: DUP1
00003145: REVERT
00003146: JUMPDEST
00003147: PUSH1 0x00
00003149: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000316a: DUP3
0000316b: AND
0000316c: SWAP1
0000316d: POP
0000316e: SWAP2
0000316f: SWAP1
00003170: POP
00003171: JUMP
00003172: JUMPDEST
00003173: PUSH2 0x317b
00003176: DUP2
00003177: PUSH2 0x3146
0000317a: JUMP
0000317b: JUMPDEST
0000317c: DUP2
0000317d: EQ
0000317e: PUSH2 0x3186
00003181: JUMPI
00003182: PUSH1 0x00
00003184: DUP1
00003185: REVERT
00003186: JUMPDEST
00003187: POP
00003188: JUMP
00003189: JUMPDEST
0000318a: PUSH1 0x00
0000318c: DUP2
0000318d: CALLDATALOAD
0000318e: SWAP1
0000318f: POP
00003190: PUSH2 0x3198
00003193: DUP2
00003194: PUSH2 0x3172
00003197: JUMP
00003198: JUMPDEST
00003199: SWAP3
0000319a: SWAP2
0000319b: POP
0000319c: POP
0000319d: JUMP
0000319e: JUMPDEST
0000319f: PUSH1 0x00
000031a1: PUSH1 0x20
000031a3: DUP3
000031a4: DUP5
000031a5: SUB
000031a6: SLT
000031a7: ISZERO
000031a8: PUSH2 0x31b4
000031ab: JUMPI
000031ac: PUSH2 0x31b3
000031af: PUSH2 0x313c
000031b2: JUMP
000031b3: JUMPDEST
000031b4: JUMPDEST
000031b5: PUSH1 0x00
000031b7: PUSH2 0x31c2
000031ba: DUP5
000031bb: DUP3
000031bc: DUP6
000031bd: ADD
000031be: PUSH2 0x3189
000031c1: JUMP
000031c2: JUMPDEST
000031c3: SWAP2
000031c4: POP
000031c5: POP
000031c6: SWAP3
000031c7: SWAP2
000031c8: POP
000031c9: POP
000031ca: JUMP
000031cb: JUMPDEST
000031cc: PUSH1 0x00
000031ce: DUP2
000031cf: ISZERO
000031d0: ISZERO
000031d1: SWAP1
000031d2: POP
000031d3: SWAP2
000031d4: SWAP1
000031d5: POP
000031d6: JUMP
000031d7: JUMPDEST
000031d8: PUSH2 0x31e0
000031db: DUP2
000031dc: PUSH2 0x31cb
000031df: JUMP
000031e0: JUMPDEST
000031e1: DUP3
000031e2: MSTORE
000031e3: POP
000031e4: POP
000031e5: JUMP
000031e6: JUMPDEST
000031e7: PUSH1 0x00
000031e9: PUSH1 0x20
000031eb: DUP3
000031ec: ADD
000031ed: SWAP1
000031ee: POP
000031ef: PUSH2 0x31fb
000031f2: PUSH1 0x00
000031f4: DUP4
000031f5: ADD
000031f6: DUP5
000031f7: PUSH2 0x31d7
000031fa: JUMP
000031fb: JUMPDEST
000031fc: SWAP3
000031fd: SWAP2
000031fe: POP
000031ff: POP
00003200: JUMP
00003201: JUMPDEST
00003202: PUSH1 0x00
00003204: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003219: DUP3
0000321a: AND
0000321b: SWAP1
0000321c: POP
0000321d: SWAP2
0000321e: SWAP1
0000321f: POP
00003220: JUMP
00003221: JUMPDEST
00003222: PUSH1 0x00
00003224: PUSH2 0x322c
00003227: DUP3
00003228: PUSH2 0x3201
0000322b: JUMP
0000322c: JUMPDEST
0000322d: SWAP1
0000322e: POP
0000322f: SWAP2
00003230: SWAP1
00003231: POP
00003232: JUMP
00003233: JUMPDEST
00003234: PUSH2 0x323c
00003237: DUP2
00003238: PUSH2 0x3221
0000323b: JUMP
0000323c: JUMPDEST
0000323d: DUP2
0000323e: EQ
0000323f: PUSH2 0x3247
00003242: JUMPI
00003243: PUSH1 0x00
00003245: DUP1
00003246: REVERT
00003247: JUMPDEST
00003248: POP
00003249: JUMP
0000324a: JUMPDEST
0000324b: PUSH1 0x00
0000324d: DUP2
0000324e: CALLDATALOAD
0000324f: SWAP1
00003250: POP
00003251: PUSH2 0x3259
00003254: DUP2
00003255: PUSH2 0x3233
00003258: JUMP
00003259: JUMPDEST
0000325a: SWAP3
0000325b: SWAP2
0000325c: POP
0000325d: POP
0000325e: JUMP
0000325f: JUMPDEST
00003260: PUSH1 0x00
00003262: PUSH1 0x20
00003264: DUP3
00003265: DUP5
00003266: SUB
00003267: SLT
00003268: ISZERO
00003269: PUSH2 0x3275
0000326c: JUMPI
0000326d: PUSH2 0x3274
00003270: PUSH2 0x313c
00003273: JUMP
00003274: JUMPDEST
00003275: JUMPDEST
00003276: PUSH1 0x00
00003278: PUSH2 0x3283
0000327b: DUP5
0000327c: DUP3
0000327d: DUP6
0000327e: ADD
0000327f: PUSH2 0x324a
00003282: JUMP
00003283: JUMPDEST
00003284: SWAP2
00003285: POP
00003286: POP
00003287: SWAP3
00003288: SWAP2
00003289: POP
0000328a: POP
0000328b: JUMP
0000328c: JUMPDEST
0000328d: PUSH1 0x00
0000328f: DUP2
00003290: MLOAD
00003291: SWAP1
00003292: POP
00003293: SWAP2
00003294: SWAP1
00003295: POP
00003296: JUMP
00003297: JUMPDEST
00003298: PUSH1 0x00
0000329a: DUP3
0000329b: DUP3
0000329c: MSTORE
0000329d: PUSH1 0x20
0000329f: DUP3
000032a0: ADD
000032a1: SWAP1
000032a2: POP
000032a3: SWAP3
000032a4: SWAP2
000032a5: POP
000032a6: POP
000032a7: JUMP
000032a8: JUMPDEST
000032a9: PUSH1 0x00
000032ab: JUMPDEST
000032ac: DUP4
000032ad: DUP2
000032ae: LT
000032af: ISZERO
000032b0: PUSH2 0x32c6
000032b3: JUMPI
000032b4: DUP1
000032b5: DUP3
000032b6: ADD
000032b7: MLOAD
000032b8: DUP2
000032b9: DUP5
000032ba: ADD
000032bb: MSTORE
000032bc: PUSH1 0x20
000032be: DUP2
000032bf: ADD
000032c0: SWAP1
000032c1: POP
000032c2: PUSH2 0x32ab
000032c5: JUMP
000032c6: JUMPDEST
000032c7: DUP4
000032c8: DUP2
000032c9: GT
000032ca: ISZERO
000032cb: PUSH2 0x32d5
000032ce: JUMPI
000032cf: PUSH1 0x00
000032d1: DUP5
000032d2: DUP5
000032d3: ADD
000032d4: MSTORE
000032d5: JUMPDEST
000032d6: POP
000032d7: POP
000032d8: POP
000032d9: POP
000032da: JUMP
000032db: JUMPDEST
000032dc: PUSH1 0x00
000032de: PUSH1 0x1f
000032e0: NOT
000032e1: PUSH1 0x1f
000032e3: DUP4
000032e4: ADD
000032e5: AND
000032e6: SWAP1
000032e7: POP
000032e8: SWAP2
000032e9: SWAP1
000032ea: POP
000032eb: JUMP
000032ec: JUMPDEST
000032ed: PUSH1 0x00
000032ef: PUSH2 0x32f7
000032f2: DUP3
000032f3: PUSH2 0x328c
000032f6: JUMP
000032f7: JUMPDEST
000032f8: PUSH2 0x3301
000032fb: DUP2
000032fc: DUP6
000032fd: PUSH2 0x3297
00003300: JUMP
00003301: JUMPDEST
00003302: SWAP4
00003303: POP
00003304: PUSH2 0x3311
00003307: DUP2
00003308: DUP6
00003309: PUSH1 0x20
0000330b: DUP7
0000330c: ADD
0000330d: PUSH2 0x32a8
00003310: JUMP
00003311: JUMPDEST
00003312: PUSH2 0x331a
00003315: DUP2
00003316: PUSH2 0x32db
00003319: JUMP
0000331a: JUMPDEST
0000331b: DUP5
0000331c: ADD
0000331d: SWAP2
0000331e: POP
0000331f: POP
00003320: SWAP3
00003321: SWAP2
00003322: POP
00003323: POP
00003324: JUMP
00003325: JUMPDEST
00003326: PUSH1 0x00
00003328: PUSH1 0x20
0000332a: DUP3
0000332b: ADD
0000332c: SWAP1
0000332d: POP
0000332e: DUP2
0000332f: DUP2
00003330: SUB
00003331: PUSH1 0x00
00003333: DUP4
00003334: ADD
00003335: MSTORE
00003336: PUSH2 0x333f
00003339: DUP2
0000333a: DUP5
0000333b: PUSH2 0x32ec
0000333e: JUMP
0000333f: JUMPDEST
00003340: SWAP1
00003341: POP
00003342: SWAP3
00003343: SWAP2
00003344: POP
00003345: POP
00003346: JUMP
00003347: JUMPDEST
00003348: PUSH1 0x00
0000334a: DUP2
0000334b: SWAP1
0000334c: POP
0000334d: SWAP2
0000334e: SWAP1
0000334f: POP
00003350: JUMP
00003351: JUMPDEST
00003352: PUSH2 0x335a
00003355: DUP2
00003356: PUSH2 0x3347
00003359: JUMP
0000335a: JUMPDEST
0000335b: DUP2
0000335c: EQ
0000335d: PUSH2 0x3365
00003360: JUMPI
00003361: PUSH1 0x00
00003363: DUP1
00003364: REVERT
00003365: JUMPDEST
00003366: POP
00003367: JUMP
00003368: JUMPDEST
00003369: PUSH1 0x00
0000336b: DUP2
0000336c: CALLDATALOAD
0000336d: SWAP1
0000336e: POP
0000336f: PUSH2 0x3377
00003372: DUP2
00003373: PUSH2 0x3351
00003376: JUMP
00003377: JUMPDEST
00003378: SWAP3
00003379: SWAP2
0000337a: POP
0000337b: POP
0000337c: JUMP
0000337d: JUMPDEST
0000337e: PUSH1 0x00
00003380: PUSH1 0x20
00003382: DUP3
00003383: DUP5
00003384: SUB
00003385: SLT
00003386: ISZERO
00003387: PUSH2 0x3393
0000338a: JUMPI
0000338b: PUSH2 0x3392
0000338e: PUSH2 0x313c
00003391: JUMP
00003392: JUMPDEST
00003393: JUMPDEST
00003394: PUSH1 0x00
00003396: PUSH2 0x33a1
00003399: DUP5
0000339a: DUP3
0000339b: DUP6
0000339c: ADD
0000339d: PUSH2 0x3368
000033a0: JUMP
000033a1: JUMPDEST
000033a2: SWAP2
000033a3: POP
000033a4: POP
000033a5: SWAP3
000033a6: SWAP2
000033a7: POP
000033a8: POP
000033a9: JUMP
000033aa: JUMPDEST
000033ab: PUSH2 0x33b3
000033ae: DUP2
000033af: PUSH2 0x3221
000033b2: JUMP
000033b3: JUMPDEST
000033b4: DUP3
000033b5: MSTORE
000033b6: POP
000033b7: POP
000033b8: JUMP
000033b9: JUMPDEST
000033ba: PUSH1 0x00
000033bc: PUSH1 0x20
000033be: DUP3
000033bf: ADD
000033c0: SWAP1
000033c1: POP
000033c2: PUSH2 0x33ce
000033c5: PUSH1 0x00
000033c7: DUP4
000033c8: ADD
000033c9: DUP5
000033ca: PUSH2 0x33aa
000033cd: JUMP
000033ce: JUMPDEST
000033cf: SWAP3
000033d0: SWAP2
000033d1: POP
000033d2: POP
000033d3: JUMP
000033d4: JUMPDEST
000033d5: PUSH1 0x00
000033d7: DUP1
000033d8: PUSH1 0x40
000033da: DUP4
000033db: DUP6
000033dc: SUB
000033dd: SLT
000033de: ISZERO
000033df: PUSH2 0x33eb
000033e2: JUMPI
000033e3: PUSH2 0x33ea
000033e6: PUSH2 0x313c
000033e9: JUMP
000033ea: JUMPDEST
000033eb: JUMPDEST
000033ec: PUSH1 0x00
000033ee: PUSH2 0x33f9
000033f1: DUP6
000033f2: DUP3
000033f3: DUP7
000033f4: ADD
000033f5: PUSH2 0x324a
000033f8: JUMP
000033f9: JUMPDEST
000033fa: SWAP3
000033fb: POP
000033fc: POP
000033fd: PUSH1 0x20
000033ff: PUSH2 0x340a
00003402: DUP6
00003403: DUP3
00003404: DUP7
00003405: ADD
00003406: PUSH2 0x3368
00003409: JUMP
0000340a: JUMPDEST
0000340b: SWAP2
0000340c: POP
0000340d: POP
0000340e: SWAP3
0000340f: POP
00003410: SWAP3
00003411: SWAP1
00003412: POP
00003413: JUMP
00003414: JUMPDEST
00003415: PUSH1 0x00
00003417: DUP1
00003418: PUSH1 0x00
0000341a: PUSH1 0x60
0000341c: DUP5
0000341d: DUP7
0000341e: SUB
0000341f: SLT
00003420: ISZERO
00003421: PUSH2 0x342d
00003424: JUMPI
00003425: PUSH2 0x342c
00003428: PUSH2 0x313c
0000342b: JUMP
0000342c: JUMPDEST
0000342d: JUMPDEST
0000342e: PUSH1 0x00
00003430: PUSH2 0x343b
00003433: DUP7
00003434: DUP3
00003435: DUP8
00003436: ADD
00003437: PUSH2 0x324a
0000343a: JUMP
0000343b: JUMPDEST
0000343c: SWAP4
0000343d: POP
0000343e: POP
0000343f: PUSH1 0x20
00003441: PUSH2 0x344c
00003444: DUP7
00003445: DUP3
00003446: DUP8
00003447: ADD
00003448: PUSH2 0x324a
0000344b: JUMP
0000344c: JUMPDEST
0000344d: SWAP3
0000344e: POP
0000344f: POP
00003450: PUSH1 0x40
00003452: PUSH2 0x345d
00003455: DUP7
00003456: DUP3
00003457: DUP8
00003458: ADD
00003459: PUSH2 0x3368
0000345c: JUMP
0000345d: JUMPDEST
0000345e: SWAP2
0000345f: POP
00003460: POP
00003461: SWAP3
00003462: POP
00003463: SWAP3
00003464: POP
00003465: SWAP3
00003466: JUMP
00003467: JUMPDEST
00003468: PUSH2 0x3470
0000346b: DUP2
0000346c: PUSH2 0x3347
0000346f: JUMP
00003470: JUMPDEST
00003471: DUP3
00003472: MSTORE
00003473: POP
00003474: POP
00003475: JUMP
00003476: JUMPDEST
00003477: PUSH1 0x00
00003479: PUSH1 0x20
0000347b: DUP3
0000347c: ADD
0000347d: SWAP1
0000347e: POP
0000347f: PUSH2 0x348b
00003482: PUSH1 0x00
00003484: DUP4
00003485: ADD
00003486: DUP5
00003487: PUSH2 0x3467
0000348a: JUMP
0000348b: JUMPDEST
0000348c: SWAP3
0000348d: SWAP2
0000348e: POP
0000348f: POP
00003490: JUMP
00003491: JUMPDEST
00003492: PUSH1 0x00
00003494: PUSH2 0x349c
00003497: DUP3
00003498: PUSH2 0x3201
0000349b: JUMP
0000349c: JUMPDEST
0000349d: SWAP1
0000349e: POP
0000349f: SWAP2
000034a0: SWAP1
000034a1: POP
000034a2: JUMP
000034a3: JUMPDEST
000034a4: PUSH2 0x34ac
000034a7: DUP2
000034a8: PUSH2 0x3491
000034ab: JUMP
000034ac: JUMPDEST
000034ad: DUP2
000034ae: EQ
000034af: PUSH2 0x34b7
000034b2: JUMPI
000034b3: PUSH1 0x00
000034b5: DUP1
000034b6: REVERT
000034b7: JUMPDEST
000034b8: POP
000034b9: JUMP
000034ba: JUMPDEST
000034bb: PUSH1 0x00
000034bd: DUP2
000034be: CALLDATALOAD
000034bf: SWAP1
000034c0: POP
000034c1: PUSH2 0x34c9
000034c4: DUP2
000034c5: PUSH2 0x34a3
000034c8: JUMP
000034c9: JUMPDEST
000034ca: SWAP3
000034cb: SWAP2
000034cc: POP
000034cd: POP
000034ce: JUMP
000034cf: JUMPDEST
000034d0: PUSH1 0x00
000034d2: PUSH1 0x20
000034d4: DUP3
000034d5: DUP5
000034d6: SUB
000034d7: SLT
000034d8: ISZERO
000034d9: PUSH2 0x34e5
000034dc: JUMPI
000034dd: PUSH2 0x34e4
000034e0: PUSH2 0x313c
000034e3: JUMP
000034e4: JUMPDEST
000034e5: JUMPDEST
000034e6: PUSH1 0x00
000034e8: PUSH2 0x34f3
000034eb: DUP5
000034ec: DUP3
000034ed: DUP6
000034ee: ADD
000034ef: PUSH2 0x34ba
000034f2: JUMP
000034f3: JUMPDEST
000034f4: SWAP2
000034f5: POP
000034f6: POP
000034f7: SWAP3
000034f8: SWAP2
000034f9: POP
000034fa: POP
000034fb: JUMP
000034fc: JUMPDEST
000034fd: PUSH1 0x00
000034ff: DUP1
00003500: REVERT
00003501: JUMPDEST
00003502: PUSH1 0x00
00003504: DUP1
00003505: REVERT
00003506: JUMPDEST
00003507: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003528: PUSH1 0x00
0000352a: MSTORE
0000352b: PUSH1 0x41
0000352d: PUSH1 0x04
0000352f: MSTORE
00003530: PUSH1 0x24
00003532: PUSH1 0x00
00003534: REVERT
00003535: JUMPDEST
00003536: PUSH2 0x353e
00003539: DUP3
0000353a: PUSH2 0x32db
0000353d: JUMP
0000353e: JUMPDEST
0000353f: DUP2
00003540: ADD
00003541: DUP2
00003542: DUP2
00003543: LT
00003544: PUSH8 0xffffffffffffffff
0000354d: DUP3
0000354e: GT
0000354f: OR
00003550: ISZERO
00003551: PUSH2 0x355d
00003554: JUMPI
00003555: PUSH2 0x355c
00003558: PUSH2 0x3506
0000355b: JUMP
0000355c: JUMPDEST
0000355d: JUMPDEST
0000355e: DUP1
0000355f: PUSH1 0x40
00003561: MSTORE
00003562: POP
00003563: POP
00003564: POP
00003565: JUMP
00003566: JUMPDEST
00003567: PUSH1 0x00
00003569: PUSH2 0x3570
0000356c: PUSH2 0x3132
0000356f: JUMP
00003570: JUMPDEST
00003571: SWAP1
00003572: POP
00003573: PUSH2 0x357c
00003576: DUP3
00003577: DUP3
00003578: PUSH2 0x3535
0000357b: JUMP
0000357c: JUMPDEST
0000357d: SWAP2
0000357e: SWAP1
0000357f: POP
00003580: JUMP
00003581: JUMPDEST
00003582: PUSH1 0x00
00003584: PUSH8 0xffffffffffffffff
0000358d: DUP3
0000358e: GT
0000358f: ISZERO
00003590: PUSH2 0x359c
00003593: JUMPI
00003594: PUSH2 0x359b
00003597: PUSH2 0x3506
0000359a: JUMP
0000359b: JUMPDEST
0000359c: JUMPDEST
0000359d: PUSH2 0x35a5
000035a0: DUP3
000035a1: PUSH2 0x32db
000035a4: JUMP
000035a5: JUMPDEST
000035a6: SWAP1
000035a7: POP
000035a8: PUSH1 0x20
000035aa: DUP2
000035ab: ADD
000035ac: SWAP1
000035ad: POP
000035ae: SWAP2
000035af: SWAP1
000035b0: POP
000035b1: JUMP
000035b2: JUMPDEST
000035b3: DUP3
000035b4: DUP2
000035b5: DUP4
000035b6: CALLDATACOPY
000035b7: PUSH1 0x00
000035b9: DUP4
000035ba: DUP4
000035bb: ADD
000035bc: MSTORE
000035bd: POP
000035be: POP
000035bf: POP
000035c0: JUMP
000035c1: JUMPDEST
000035c2: PUSH1 0x00
000035c4: PUSH2 0x35d4
000035c7: PUSH2 0x35cf
000035ca: DUP5
000035cb: PUSH2 0x3581
000035ce: JUMP
000035cf: JUMPDEST
000035d0: PUSH2 0x3566
000035d3: JUMP
000035d4: JUMPDEST
000035d5: SWAP1
000035d6: POP
000035d7: DUP3
000035d8: DUP2
000035d9: MSTORE
000035da: PUSH1 0x20
000035dc: DUP2
000035dd: ADD
000035de: DUP5
000035df: DUP5
000035e0: DUP5
000035e1: ADD
000035e2: GT
000035e3: ISZERO
000035e4: PUSH2 0x35f0
000035e7: JUMPI
000035e8: PUSH2 0x35ef
000035eb: PUSH2 0x3501
000035ee: JUMP
000035ef: JUMPDEST
000035f0: JUMPDEST
000035f1: PUSH2 0x35fb
000035f4: DUP5
000035f5: DUP3
000035f6: DUP6
000035f7: PUSH2 0x35b2
000035fa: JUMP
000035fb: JUMPDEST
000035fc: POP
000035fd: SWAP4
000035fe: SWAP3
000035ff: POP
00003600: POP
00003601: POP
00003602: JUMP
00003603: JUMPDEST
00003604: PUSH1 0x00
00003606: DUP3
00003607: PUSH1 0x1f
00003609: DUP4
0000360a: ADD
0000360b: SLT
0000360c: PUSH2 0x3618
0000360f: JUMPI
00003610: PUSH2 0x3617
00003613: PUSH2 0x34fc
00003616: JUMP
00003617: JUMPDEST
00003618: JUMPDEST
00003619: DUP2
0000361a: CALLDATALOAD
0000361b: PUSH2 0x3628
0000361e: DUP5
0000361f: DUP3
00003620: PUSH1 0x20
00003622: DUP7
00003623: ADD
00003624: PUSH2 0x35c1
00003627: JUMP
00003628: JUMPDEST
00003629: SWAP2
0000362a: POP
0000362b: POP
0000362c: SWAP3
0000362d: SWAP2
0000362e: POP
0000362f: POP
00003630: JUMP
00003631: JUMPDEST
00003632: PUSH1 0x00
00003634: DUP1
00003635: PUSH1 0x40
00003637: DUP4
00003638: DUP6
00003639: SUB
0000363a: SLT
0000363b: ISZERO
0000363c: PUSH2 0x3648
0000363f: JUMPI
00003640: PUSH2 0x3647
00003643: PUSH2 0x313c
00003646: JUMP
00003647: JUMPDEST
00003648: JUMPDEST
00003649: PUSH1 0x00
0000364b: DUP4
0000364c: ADD
0000364d: CALLDATALOAD
0000364e: PUSH8 0xffffffffffffffff
00003657: DUP2
00003658: GT
00003659: ISZERO
0000365a: PUSH2 0x3666
0000365d: JUMPI
0000365e: PUSH2 0x3665
00003661: PUSH2 0x3141
00003664: JUMP
00003665: JUMPDEST
00003666: JUMPDEST
00003667: PUSH2 0x3672
0000366a: DUP6
0000366b: DUP3
0000366c: DUP7
0000366d: ADD
0000366e: PUSH2 0x3603
00003671: JUMP
00003672: JUMPDEST
00003673: SWAP3
00003674: POP
00003675: POP
00003676: PUSH1 0x20
00003678: DUP4
00003679: ADD
0000367a: CALLDATALOAD
0000367b: PUSH8 0xffffffffffffffff
00003684: DUP2
00003685: GT
00003686: ISZERO
00003687: PUSH2 0x3693
0000368a: JUMPI
0000368b: PUSH2 0x3692
0000368e: PUSH2 0x3141
00003691: JUMP
00003692: JUMPDEST
00003693: JUMPDEST
00003694: PUSH2 0x369f
00003697: DUP6
00003698: DUP3
00003699: DUP7
0000369a: ADD
0000369b: PUSH2 0x3603
0000369e: JUMP
0000369f: JUMPDEST
000036a0: SWAP2
000036a1: POP
000036a2: POP
000036a3: SWAP3
000036a4: POP
000036a5: SWAP3
000036a6: SWAP1
000036a7: POP
000036a8: JUMP
000036a9: JUMPDEST
000036aa: PUSH1 0x00
000036ac: PUSH1 0xff
000036ae: DUP3
000036af: AND
000036b0: SWAP1
000036b1: POP
000036b2: SWAP2
000036b3: SWAP1
000036b4: POP
000036b5: JUMP
000036b6: JUMPDEST
000036b7: PUSH2 0x36bf
000036ba: DUP2
000036bb: PUSH2 0x36a9
000036be: JUMP
000036bf: JUMPDEST
000036c0: DUP2
000036c1: EQ
000036c2: PUSH2 0x36ca
000036c5: JUMPI
000036c6: PUSH1 0x00
000036c8: DUP1
000036c9: REVERT
000036ca: JUMPDEST
000036cb: POP
000036cc: JUMP
000036cd: JUMPDEST
000036ce: PUSH1 0x00
000036d0: DUP2
000036d1: CALLDATALOAD
000036d2: SWAP1
000036d3: POP
000036d4: PUSH2 0x36dc
000036d7: DUP2
000036d8: PUSH2 0x36b6
000036db: JUMP
000036dc: JUMPDEST
000036dd: SWAP3
000036de: SWAP2
000036df: POP
000036e0: POP
000036e1: JUMP
000036e2: JUMPDEST
000036e3: PUSH1 0x00
000036e5: DUP2
000036e6: SWAP1
000036e7: POP
000036e8: SWAP2
000036e9: SWAP1
000036ea: POP
000036eb: JUMP
000036ec: JUMPDEST
000036ed: PUSH2 0x36f5
000036f0: DUP2
000036f1: PUSH2 0x36e2
000036f4: JUMP
000036f5: JUMPDEST
000036f6: DUP2
000036f7: EQ
000036f8: PUSH2 0x3700
000036fb: JUMPI
000036fc: PUSH1 0x00
000036fe: DUP1
000036ff: REVERT
00003700: JUMPDEST
00003701: POP
00003702: JUMP
00003703: JUMPDEST
00003704: PUSH1 0x00
00003706: DUP2
00003707: CALLDATALOAD
00003708: SWAP1
00003709: POP
0000370a: PUSH2 0x3712
0000370d: DUP2
0000370e: PUSH2 0x36ec
00003711: JUMP
00003712: JUMPDEST
00003713: SWAP3
00003714: SWAP2
00003715: POP
00003716: POP
00003717: JUMP
00003718: JUMPDEST
00003719: PUSH1 0x00
0000371b: DUP1
0000371c: PUSH1 0x00
0000371e: DUP1
0000371f: PUSH1 0x80
00003721: DUP6
00003722: DUP8
00003723: SUB
00003724: SLT
00003725: ISZERO
00003726: PUSH2 0x3732
00003729: JUMPI
0000372a: PUSH2 0x3731
0000372d: PUSH2 0x313c
00003730: JUMP
00003731: JUMPDEST
00003732: JUMPDEST
00003733: PUSH1 0x00
00003735: DUP6
00003736: ADD
00003737: CALLDATALOAD
00003738: PUSH8 0xffffffffffffffff
00003741: DUP2
00003742: GT
00003743: ISZERO
00003744: PUSH2 0x3750
00003747: JUMPI
00003748: PUSH2 0x374f
0000374b: PUSH2 0x3141
0000374e: JUMP
0000374f: JUMPDEST
00003750: JUMPDEST
00003751: PUSH2 0x375c
00003754: DUP8
00003755: DUP3
00003756: DUP9
00003757: ADD
00003758: PUSH2 0x3603
0000375b: JUMP
0000375c: JUMPDEST
0000375d: SWAP5
0000375e: POP
0000375f: POP
00003760: PUSH1 0x20
00003762: PUSH2 0x376d
00003765: DUP8
00003766: DUP3
00003767: DUP9
00003768: ADD
00003769: PUSH2 0x36cd
0000376c: JUMP
0000376d: JUMPDEST
0000376e: SWAP4
0000376f: POP
00003770: POP
00003771: PUSH1 0x40
00003773: PUSH2 0x377e
00003776: DUP8
00003777: DUP3
00003778: DUP9
00003779: ADD
0000377a: PUSH2 0x3703
0000377d: JUMP
0000377e: JUMPDEST
0000377f: SWAP3
00003780: POP
00003781: POP
00003782: PUSH1 0x60
00003784: PUSH2 0x378f
00003787: DUP8
00003788: DUP3
00003789: DUP9
0000378a: ADD
0000378b: PUSH2 0x3703
0000378e: JUMP
0000378f: JUMPDEST
00003790: SWAP2
00003791: POP
00003792: POP
00003793: SWAP3
00003794: SWAP6
00003795: SWAP2
00003796: SWAP5
00003797: POP
00003798: SWAP3
00003799: POP
0000379a: JUMP
0000379b: JUMPDEST
0000379c: PUSH1 0x00
0000379e: DUP1
0000379f: REVERT
000037a0: JUMPDEST
000037a1: PUSH1 0x00
000037a3: DUP2
000037a4: SWAP1
000037a5: POP
000037a6: DUP3
000037a7: PUSH1 0x20
000037a9: PUSH1 0x05
000037ab: MUL
000037ac: DUP3
000037ad: ADD
000037ae: GT
000037af: ISZERO
000037b0: PUSH2 0x37bc
000037b3: JUMPI
000037b4: PUSH2 0x37bb
000037b7: PUSH2 0x379b
000037ba: JUMP
000037bb: JUMPDEST
000037bc: JUMPDEST
000037bd: SWAP3
000037be: SWAP2
000037bf: POP
000037c0: POP
000037c1: JUMP
000037c2: JUMPDEST
000037c3: PUSH1 0x00
000037c5: DUP1
000037c6: PUSH1 0x00
000037c8: DUP1
000037c9: PUSH1 0x00
000037cb: PUSH2 0x0120
000037ce: DUP7
000037cf: DUP9
000037d0: SUB
000037d1: SLT
000037d2: ISZERO
000037d3: PUSH2 0x37df
000037d6: JUMPI
000037d7: PUSH2 0x37de
000037da: PUSH2 0x313c
000037dd: JUMP
000037de: JUMPDEST
000037df: JUMPDEST
000037e0: PUSH1 0x00
000037e2: PUSH2 0x37ed
000037e5: DUP9
000037e6: DUP3
000037e7: DUP10
000037e8: ADD
000037e9: PUSH2 0x37a0
000037ec: JUMP
000037ed: JUMPDEST
000037ee: SWAP6
000037ef: POP
000037f0: POP
000037f1: PUSH1 0xa0
000037f3: PUSH2 0x37fe
000037f6: DUP9
000037f7: DUP3
000037f8: DUP10
000037f9: ADD
000037fa: PUSH2 0x3368
000037fd: JUMP
000037fe: JUMPDEST
000037ff: SWAP5
00003800: POP
00003801: POP
00003802: PUSH1 0xc0
00003804: PUSH2 0x380f
00003807: DUP9
00003808: DUP3
00003809: DUP10
0000380a: ADD
0000380b: PUSH2 0x36cd
0000380e: JUMP
0000380f: JUMPDEST
00003810: SWAP4
00003811: POP
00003812: POP
00003813: PUSH1 0xe0
00003815: PUSH2 0x3820
00003818: DUP9
00003819: DUP3
0000381a: DUP10
0000381b: ADD
0000381c: PUSH2 0x3703
0000381f: JUMP
00003820: JUMPDEST
00003821: SWAP3
00003822: POP
00003823: POP
00003824: PUSH2 0x0100
00003827: PUSH2 0x3832
0000382a: DUP9
0000382b: DUP3
0000382c: DUP10
0000382d: ADD
0000382e: PUSH2 0x3703
00003831: JUMP
00003832: JUMPDEST
00003833: SWAP2
00003834: POP
00003835: POP
00003836: SWAP3
00003837: SWAP6
00003838: POP
00003839: SWAP3
0000383a: SWAP6
0000383b: SWAP1
0000383c: SWAP4
0000383d: POP
0000383e: JUMP
0000383f: JUMPDEST
00003840: PUSH1 0x00
00003842: DUP1
00003843: PUSH1 0x00
00003845: PUSH1 0x60
00003847: DUP5
00003848: DUP7
00003849: SUB
0000384a: SLT
0000384b: ISZERO
0000384c: PUSH2 0x3858
0000384f: JUMPI
00003850: PUSH2 0x3857
00003853: PUSH2 0x313c
00003856: JUMP
00003857: JUMPDEST
00003858: JUMPDEST
00003859: PUSH1 0x00
0000385b: PUSH2 0x3866
0000385e: DUP7
0000385f: DUP3
00003860: DUP8
00003861: ADD
00003862: PUSH2 0x324a
00003865: JUMP
00003866: JUMPDEST
00003867: SWAP4
00003868: POP
00003869: POP
0000386a: PUSH1 0x20
0000386c: DUP5
0000386d: ADD
0000386e: CALLDATALOAD
0000386f: PUSH8 0xffffffffffffffff
00003878: DUP2
00003879: GT
0000387a: ISZERO
0000387b: PUSH2 0x3887
0000387e: JUMPI
0000387f: PUSH2 0x3886
00003882: PUSH2 0x3141
00003885: JUMP
00003886: JUMPDEST
00003887: JUMPDEST
00003888: PUSH2 0x3893
0000388b: DUP7
0000388c: DUP3
0000388d: DUP8
0000388e: ADD
0000388f: PUSH2 0x3603
00003892: JUMP
00003893: JUMPDEST
00003894: SWAP3
00003895: POP
00003896: POP
00003897: PUSH1 0x40
00003899: PUSH2 0x38a4
0000389c: DUP7
0000389d: DUP3
0000389e: DUP8
0000389f: ADD
000038a0: PUSH2 0x3368
000038a3: JUMP
000038a4: JUMPDEST
000038a5: SWAP2
000038a6: POP
000038a7: POP
000038a8: SWAP3
000038a9: POP
000038aa: SWAP3
000038ab: POP
000038ac: SWAP3
000038ad: JUMP
000038ae: JUMPDEST
000038af: PUSH1 0x00
000038b1: DUP1
000038b2: PUSH1 0x00
000038b4: DUP1
000038b5: PUSH1 0x80
000038b7: DUP6
000038b8: DUP8
000038b9: SUB
000038ba: SLT
000038bb: ISZERO
000038bc: PUSH2 0x38c8
000038bf: JUMPI
000038c0: PUSH2 0x38c7
000038c3: PUSH2 0x313c
000038c6: JUMP
000038c7: JUMPDEST
000038c8: JUMPDEST
000038c9: PUSH1 0x00
000038cb: PUSH2 0x38d6
000038ce: DUP8
000038cf: DUP3
000038d0: DUP9
000038d1: ADD
000038d2: PUSH2 0x3368
000038d5: JUMP
000038d6: JUMPDEST
000038d7: SWAP5
000038d8: POP
000038d9: POP
000038da: PUSH1 0x20
000038dc: PUSH2 0x38e7
000038df: DUP8
000038e0: DUP3
000038e1: DUP9
000038e2: ADD
000038e3: PUSH2 0x36cd
000038e6: JUMP
000038e7: JUMPDEST
000038e8: SWAP4
000038e9: POP
000038ea: POP
000038eb: PUSH1 0x40
000038ed: PUSH2 0x38f8
000038f0: DUP8
000038f1: DUP3
000038f2: DUP9
000038f3: ADD
000038f4: PUSH2 0x3703
000038f7: JUMP
000038f8: JUMPDEST
000038f9: SWAP3
000038fa: POP
000038fb: POP
000038fc: PUSH1 0x60
000038fe: PUSH2 0x3909
00003901: DUP8
00003902: DUP3
00003903: DUP9
00003904: ADD
00003905: PUSH2 0x3703
00003908: JUMP
00003909: JUMPDEST
0000390a: SWAP2
0000390b: POP
0000390c: POP
0000390d: SWAP3
0000390e: SWAP6
0000390f: SWAP2
00003910: SWAP5
00003911: POP
00003912: SWAP3
00003913: POP
00003914: JUMP
00003915: JUMPDEST
00003916: PUSH2 0x391e
00003919: DUP2
0000391a: PUSH2 0x31cb
0000391d: JUMP
0000391e: JUMPDEST
0000391f: DUP2
00003920: EQ
00003921: PUSH2 0x3929
00003924: JUMPI
00003925: PUSH1 0x00
00003927: DUP1
00003928: REVERT
00003929: JUMPDEST
0000392a: POP
0000392b: JUMP
0000392c: JUMPDEST
0000392d: PUSH1 0x00
0000392f: DUP2
00003930: CALLDATALOAD
00003931: SWAP1
00003932: POP
00003933: PUSH2 0x393b
00003936: DUP2
00003937: PUSH2 0x3915
0000393a: JUMP
0000393b: JUMPDEST
0000393c: SWAP3
0000393d: SWAP2
0000393e: POP
0000393f: POP
00003940: JUMP
00003941: JUMPDEST
00003942: PUSH1 0x00
00003944: DUP1
00003945: PUSH1 0x40
00003947: DUP4
00003948: DUP6
00003949: SUB
0000394a: SLT
0000394b: ISZERO
0000394c: PUSH2 0x3958
0000394f: JUMPI
00003950: PUSH2 0x3957
00003953: PUSH2 0x313c
00003956: JUMP
00003957: JUMPDEST
00003958: JUMPDEST
00003959: PUSH1 0x00
0000395b: PUSH2 0x3966
0000395e: DUP6
0000395f: DUP3
00003960: DUP7
00003961: ADD
00003962: PUSH2 0x324a
00003965: JUMP
00003966: JUMPDEST
00003967: SWAP3
00003968: POP
00003969: POP
0000396a: PUSH1 0x20
0000396c: PUSH2 0x3977
0000396f: DUP6
00003970: DUP3
00003971: DUP7
00003972: ADD
00003973: PUSH2 0x392c
00003976: JUMP
00003977: JUMPDEST
00003978: SWAP2
00003979: POP
0000397a: POP
0000397b: SWAP3
0000397c: POP
0000397d: SWAP3
0000397e: SWAP1
0000397f: POP
00003980: JUMP
00003981: JUMPDEST
00003982: PUSH1 0x00
00003984: PUSH8 0xffffffffffffffff
0000398d: DUP3
0000398e: GT
0000398f: ISZERO
00003990: PUSH2 0x399c
00003993: JUMPI
00003994: PUSH2 0x399b
00003997: PUSH2 0x3506
0000399a: JUMP
0000399b: JUMPDEST
0000399c: JUMPDEST
0000399d: PUSH2 0x39a5
000039a0: DUP3
000039a1: PUSH2 0x32db
000039a4: JUMP
000039a5: JUMPDEST
000039a6: SWAP1
000039a7: POP
000039a8: PUSH1 0x20
000039aa: DUP2
000039ab: ADD
000039ac: SWAP1
000039ad: POP
000039ae: SWAP2
000039af: SWAP1
000039b0: POP
000039b1: JUMP
000039b2: JUMPDEST
000039b3: PUSH1 0x00
000039b5: PUSH2 0x39c5
000039b8: PUSH2 0x39c0
000039bb: DUP5
000039bc: PUSH2 0x3981
000039bf: JUMP
000039c0: JUMPDEST
000039c1: PUSH2 0x3566
000039c4: JUMP
000039c5: JUMPDEST
000039c6: SWAP1
000039c7: POP
000039c8: DUP3
000039c9: DUP2
000039ca: MSTORE
000039cb: PUSH1 0x20
000039cd: DUP2
000039ce: ADD
000039cf: DUP5
000039d0: DUP5
000039d1: DUP5
000039d2: ADD
000039d3: GT
000039d4: ISZERO
000039d5: PUSH2 0x39e1
000039d8: JUMPI
000039d9: PUSH2 0x39e0
000039dc: PUSH2 0x3501
000039df: JUMP
000039e0: JUMPDEST
000039e1: JUMPDEST
000039e2: PUSH2 0x39ec
000039e5: DUP5
000039e6: DUP3
000039e7: DUP6
000039e8: PUSH2 0x35b2
000039eb: JUMP
000039ec: JUMPDEST
000039ed: POP
000039ee: SWAP4
000039ef: SWAP3
000039f0: POP
000039f1: POP
000039f2: POP
000039f3: JUMP
000039f4: JUMPDEST
000039f5: PUSH1 0x00
000039f7: DUP3
000039f8: PUSH1 0x1f
000039fa: DUP4
000039fb: ADD
000039fc: SLT
000039fd: PUSH2 0x3a09
00003a00: JUMPI
00003a01: PUSH2 0x3a08
00003a04: PUSH2 0x34fc
00003a07: JUMP
00003a08: JUMPDEST
00003a09: JUMPDEST
00003a0a: DUP2
00003a0b: CALLDATALOAD
00003a0c: PUSH2 0x3a19
00003a0f: DUP5
00003a10: DUP3
00003a11: PUSH1 0x20
00003a13: DUP7
00003a14: ADD
00003a15: PUSH2 0x39b2
00003a18: JUMP
00003a19: JUMPDEST
00003a1a: SWAP2
00003a1b: POP
00003a1c: POP
00003a1d: SWAP3
00003a1e: SWAP2
00003a1f: POP
00003a20: POP
00003a21: JUMP
00003a22: JUMPDEST
00003a23: PUSH1 0x00
00003a25: DUP1
00003a26: PUSH1 0x00
00003a28: DUP1
00003a29: PUSH1 0x80
00003a2b: DUP6
00003a2c: DUP8
00003a2d: SUB
00003a2e: SLT
00003a2f: ISZERO
00003a30: PUSH2 0x3a3c
00003a33: JUMPI
00003a34: PUSH2 0x3a3b
00003a37: PUSH2 0x313c
00003a3a: JUMP
00003a3b: JUMPDEST
00003a3c: JUMPDEST
00003a3d: PUSH1 0x00
00003a3f: PUSH2 0x3a4a
00003a42: DUP8
00003a43: DUP3
00003a44: DUP9
00003a45: ADD
00003a46: PUSH2 0x324a
00003a49: JUMP
00003a4a: JUMPDEST
00003a4b: SWAP5
00003a4c: POP
00003a4d: POP
00003a4e: PUSH1 0x20
00003a50: PUSH2 0x3a5b
00003a53: DUP8
00003a54: DUP3
00003a55: DUP9
00003a56: ADD
00003a57: PUSH2 0x324a
00003a5a: JUMP
00003a5b: JUMPDEST
00003a5c: SWAP4
00003a5d: POP
00003a5e: POP
00003a5f: PUSH1 0x40
00003a61: PUSH2 0x3a6c
00003a64: DUP8
00003a65: DUP3
00003a66: DUP9
00003a67: ADD
00003a68: PUSH2 0x3368
00003a6b: JUMP
00003a6c: JUMPDEST
00003a6d: SWAP3
00003a6e: POP
00003a6f: POP
00003a70: PUSH1 0x60
00003a72: DUP6
00003a73: ADD
00003a74: CALLDATALOAD
00003a75: PUSH8 0xffffffffffffffff
00003a7e: DUP2
00003a7f: GT
00003a80: ISZERO
00003a81: PUSH2 0x3a8d
00003a84: JUMPI
00003a85: PUSH2 0x3a8c
00003a88: PUSH2 0x3141
00003a8b: JUMP
00003a8c: JUMPDEST
00003a8d: JUMPDEST
00003a8e: PUSH2 0x3a99
00003a91: DUP8
00003a92: DUP3
00003a93: DUP9
00003a94: ADD
00003a95: PUSH2 0x39f4
00003a98: JUMP
00003a99: JUMPDEST
00003a9a: SWAP2
00003a9b: POP
00003a9c: POP
00003a9d: SWAP3
00003a9e: SWAP6
00003a9f: SWAP2
00003aa0: SWAP5
00003aa1: POP
00003aa2: SWAP3
00003aa3: POP
00003aa4: JUMP
00003aa5: JUMPDEST
00003aa6: PUSH1 0x00
00003aa8: DUP1
00003aa9: PUSH1 0x40
00003aab: DUP4
00003aac: DUP6
00003aad: SUB
00003aae: SLT
00003aaf: ISZERO
00003ab0: PUSH2 0x3abc
00003ab3: JUMPI
00003ab4: PUSH2 0x3abb
00003ab7: PUSH2 0x313c
00003aba: JUMP
00003abb: JUMPDEST
00003abc: JUMPDEST
00003abd: PUSH1 0x00
00003abf: PUSH2 0x3aca
00003ac2: DUP6
00003ac3: DUP3
00003ac4: DUP7
00003ac5: ADD
00003ac6: PUSH2 0x3368
00003ac9: JUMP
00003aca: JUMPDEST
00003acb: SWAP3
00003acc: POP
00003acd: POP
00003ace: PUSH1 0x20
00003ad0: PUSH2 0x3adb
00003ad3: DUP6
00003ad4: DUP3
00003ad5: DUP7
00003ad6: ADD
00003ad7: PUSH2 0x324a
00003ada: JUMP
00003adb: JUMPDEST
00003adc: SWAP2
00003add: POP
00003ade: POP
00003adf: SWAP3
00003ae0: POP
00003ae1: SWAP3
00003ae2: SWAP1
00003ae3: POP
00003ae4: JUMP
00003ae5: JUMPDEST
00003ae6: PUSH1 0x00
00003ae8: DUP1
00003ae9: PUSH1 0x40
00003aeb: DUP4
00003aec: DUP6
00003aed: SUB
00003aee: SLT
00003aef: ISZERO
00003af0: PUSH2 0x3afc
00003af3: JUMPI
00003af4: PUSH2 0x3afb
00003af7: PUSH2 0x313c
00003afa: JUMP
00003afb: JUMPDEST
00003afc: JUMPDEST
00003afd: PUSH1 0x00
00003aff: PUSH2 0x3b0a
00003b02: DUP6
00003b03: DUP3
00003b04: DUP7
00003b05: ADD
00003b06: PUSH2 0x324a
00003b09: JUMP
00003b0a: JUMPDEST
00003b0b: SWAP3
00003b0c: POP
00003b0d: POP
00003b0e: PUSH1 0x20
00003b10: PUSH2 0x3b1b
00003b13: DUP6
00003b14: DUP3
00003b15: DUP7
00003b16: ADD
00003b17: PUSH2 0x324a
00003b1a: JUMP
00003b1b: JUMPDEST
00003b1c: SWAP2
00003b1d: POP
00003b1e: POP
00003b1f: SWAP3
00003b20: POP
00003b21: SWAP3
00003b22: SWAP1
00003b23: POP
00003b24: JUMP
00003b25: JUMPDEST
00003b26: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003b47: PUSH1 0x00
00003b49: MSTORE
00003b4a: PUSH1 0x22
00003b4c: PUSH1 0x04
00003b4e: MSTORE
00003b4f: PUSH1 0x24
00003b51: PUSH1 0x00
00003b53: REVERT
00003b54: JUMPDEST
00003b55: PUSH1 0x00
00003b57: PUSH1 0x02
00003b59: DUP3
00003b5a: DIV
00003b5b: SWAP1
00003b5c: POP
00003b5d: PUSH1 0x01
00003b5f: DUP3
00003b60: AND
00003b61: DUP1
00003b62: PUSH2 0x3b6c
00003b65: JUMPI
00003b66: PUSH1 0x7f
00003b68: DUP3
00003b69: AND
00003b6a: SWAP2
00003b6b: POP
00003b6c: JUMPDEST
00003b6d: PUSH1 0x20
00003b6f: DUP3
00003b70: LT
00003b71: DUP2
00003b72: SUB
00003b73: PUSH2 0x3b7f
00003b76: JUMPI
00003b77: PUSH2 0x3b7e
00003b7a: PUSH2 0x3b25
00003b7d: JUMP
00003b7e: JUMPDEST
00003b7f: JUMPDEST
00003b80: POP
00003b81: SWAP2
00003b82: SWAP1
00003b83: POP
00003b84: JUMP
00003b85: JUMPDEST
00003b86: PUSH32 0x4552433732313a20617070726f76616c20746f2063757272656e74206f776e65
00003ba7: PUSH1 0x00
00003ba9: DUP3
00003baa: ADD
00003bab: MSTORE
00003bac: PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000
00003bcd: PUSH1 0x20
00003bcf: DUP3
00003bd0: ADD
00003bd1: MSTORE
00003bd2: POP
00003bd3: JUMP
00003bd4: JUMPDEST
00003bd5: PUSH1 0x00
00003bd7: PUSH2 0x3be1
00003bda: PUSH1 0x21
00003bdc: DUP4
00003bdd: PUSH2 0x3297
00003be0: JUMP
00003be1: JUMPDEST
00003be2: SWAP2
00003be3: POP
00003be4: PUSH2 0x3bec
00003be7: DUP3
00003be8: PUSH2 0x3b85
00003beb: JUMP
00003bec: JUMPDEST
00003bed: PUSH1 0x40
00003bef: DUP3
00003bf0: ADD
00003bf1: SWAP1
00003bf2: POP
00003bf3: SWAP2
00003bf4: SWAP1
00003bf5: POP
00003bf6: JUMP
00003bf7: JUMPDEST
00003bf8: PUSH1 0x00
00003bfa: PUSH1 0x20
00003bfc: DUP3
00003bfd: ADD
00003bfe: SWAP1
00003bff: POP
00003c00: DUP2
00003c01: DUP2
00003c02: SUB
00003c03: PUSH1 0x00
00003c05: DUP4
00003c06: ADD
00003c07: MSTORE
00003c08: PUSH2 0x3c10
00003c0b: DUP2
00003c0c: PUSH2 0x3bd4
00003c0f: JUMP
00003c10: JUMPDEST
00003c11: SWAP1
00003c12: POP
00003c13: SWAP2
00003c14: SWAP1
00003c15: POP
00003c16: JUMP
00003c17: JUMPDEST
00003c18: PUSH32 0x4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f
00003c39: PUSH1 0x00
00003c3b: DUP3
00003c3c: ADD
00003c3d: MSTORE
00003c3e: PUSH32 0x6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000
00003c5f: PUSH1 0x20
00003c61: DUP3
00003c62: ADD
00003c63: MSTORE
00003c64: POP
00003c65: JUMP
00003c66: JUMPDEST
00003c67: PUSH1 0x00
00003c69: PUSH2 0x3c73
00003c6c: PUSH1 0x3e
00003c6e: DUP4
00003c6f: PUSH2 0x3297
00003c72: JUMP
00003c73: JUMPDEST
00003c74: SWAP2
00003c75: POP
00003c76: PUSH2 0x3c7e
00003c79: DUP3
00003c7a: PUSH2 0x3c17
00003c7d: JUMP
00003c7e: JUMPDEST
00003c7f: PUSH1 0x40
00003c81: DUP3
00003c82: ADD
00003c83: SWAP1
00003c84: POP
00003c85: SWAP2
00003c86: SWAP1
00003c87: POP
00003c88: JUMP
00003c89: JUMPDEST
00003c8a: PUSH1 0x00
00003c8c: PUSH1 0x20
00003c8e: DUP3
00003c8f: ADD
00003c90: SWAP1
00003c91: POP
00003c92: DUP2
00003c93: DUP2
00003c94: SUB
00003c95: PUSH1 0x00
00003c97: DUP4
00003c98: ADD
00003c99: MSTORE
00003c9a: PUSH2 0x3ca2
00003c9d: DUP2
00003c9e: PUSH2 0x3c66
00003ca1: JUMP
00003ca2: JUMPDEST
00003ca3: SWAP1
00003ca4: POP
00003ca5: SWAP2
00003ca6: SWAP1
00003ca7: POP
00003ca8: JUMP
00003ca9: JUMPDEST
00003caa: PUSH32 0x4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e65
00003ccb: PUSH1 0x00
00003ccd: DUP3
00003cce: ADD
00003ccf: MSTORE
00003cd0: PUSH32 0x72206e6f7220617070726f766564000000000000000000000000000000000000
00003cf1: PUSH1 0x20
00003cf3: DUP3
00003cf4: ADD
00003cf5: MSTORE
00003cf6: POP
00003cf7: JUMP
00003cf8: JUMPDEST
00003cf9: PUSH1 0x00
00003cfb: PUSH2 0x3d05
00003cfe: PUSH1 0x2e
00003d00: DUP4
00003d01: PUSH2 0x3297
00003d04: JUMP
00003d05: JUMPDEST
00003d06: SWAP2
00003d07: POP
00003d08: PUSH2 0x3d10
00003d0b: DUP3
00003d0c: PUSH2 0x3ca9
00003d0f: JUMP
00003d10: JUMPDEST
00003d11: PUSH1 0x40
00003d13: DUP3
00003d14: ADD
00003d15: SWAP1
00003d16: POP
00003d17: SWAP2
00003d18: SWAP1
00003d19: POP
00003d1a: JUMP
00003d1b: JUMPDEST
00003d1c: PUSH1 0x00
00003d1e: PUSH1 0x20
00003d20: DUP3
00003d21: ADD
00003d22: SWAP1
00003d23: POP
00003d24: DUP2
00003d25: DUP2
00003d26: SUB
00003d27: PUSH1 0x00
00003d29: DUP4
00003d2a: ADD
00003d2b: MSTORE
00003d2c: PUSH2 0x3d34
00003d2f: DUP2
00003d30: PUSH2 0x3cf8
00003d33: JUMP
00003d34: JUMPDEST
00003d35: SWAP1
00003d36: POP
00003d37: SWAP2
00003d38: SWAP1
00003d39: POP
00003d3a: JUMP
00003d3b: JUMPDEST
00003d3c: PUSH2 0x3d44
00003d3f: DUP2
00003d40: PUSH2 0x3491
00003d43: JUMP
00003d44: JUMPDEST
00003d45: DUP3
00003d46: MSTORE
00003d47: POP
00003d48: POP
00003d49: JUMP
00003d4a: JUMPDEST
00003d4b: PUSH1 0x00
00003d4d: PUSH1 0x20
00003d4f: DUP3
00003d50: ADD
00003d51: SWAP1
00003d52: POP
00003d53: PUSH2 0x3d5f
00003d56: PUSH1 0x00
00003d58: DUP4
00003d59: ADD
00003d5a: DUP5
00003d5b: PUSH2 0x3d3b
00003d5e: JUMP
00003d5f: JUMPDEST
00003d60: SWAP3
00003d61: SWAP2
00003d62: POP
00003d63: POP
00003d64: JUMP
00003d65: JUMPDEST
00003d66: PUSH32 0x4552433732313a20696e76616c696420746f6b656e2049440000000000000000
00003d87: PUSH1 0x00
00003d89: DUP3
00003d8a: ADD
00003d8b: MSTORE
00003d8c: POP
00003d8d: JUMP
00003d8e: JUMPDEST
00003d8f: PUSH1 0x00
00003d91: PUSH2 0x3d9b
00003d94: PUSH1 0x18
00003d96: DUP4
00003d97: PUSH2 0x3297
00003d9a: JUMP
00003d9b: JUMPDEST
00003d9c: SWAP2
00003d9d: POP
00003d9e: PUSH2 0x3da6
00003da1: DUP3
00003da2: PUSH2 0x3d65
00003da5: JUMP
00003da6: JUMPDEST
00003da7: PUSH1 0x20
00003da9: DUP3
00003daa: ADD
00003dab: SWAP1
00003dac: POP
00003dad: SWAP2
00003dae: SWAP1
00003daf: POP
00003db0: JUMP
00003db1: JUMPDEST
00003db2: PUSH1 0x00
00003db4: PUSH1 0x20
00003db6: DUP3
00003db7: ADD
00003db8: SWAP1
00003db9: POP
00003dba: DUP2
00003dbb: DUP2
00003dbc: SUB
00003dbd: PUSH1 0x00
00003dbf: DUP4
00003dc0: ADD
00003dc1: MSTORE
00003dc2: PUSH2 0x3dca
00003dc5: DUP2
00003dc6: PUSH2 0x3d8e
00003dc9: JUMP
00003dca: JUMPDEST
00003dcb: SWAP1
00003dcc: POP
00003dcd: SWAP2
00003dce: SWAP1
00003dcf: POP
00003dd0: JUMP
00003dd1: JUMPDEST
00003dd2: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a000000000000
00003df3: DUP2
00003df4: MSTORE
00003df5: POP
00003df6: JUMP
00003df7: JUMPDEST
00003df8: PUSH1 0x00
00003dfa: DUP2
00003dfb: SWAP1
00003dfc: POP
00003dfd: SWAP3
00003dfe: SWAP2
00003dff: POP
00003e00: POP
00003e01: JUMP
00003e02: JUMPDEST
00003e03: PUSH1 0x00
00003e05: PUSH2 0x3e0d
00003e08: DUP3
00003e09: PUSH2 0x328c
00003e0c: JUMP
00003e0d: JUMPDEST
00003e0e: PUSH2 0x3e17
00003e11: DUP2
00003e12: DUP6
00003e13: PUSH2 0x3df7
00003e16: JUMP
00003e17: JUMPDEST
00003e18: SWAP4
00003e19: POP
00003e1a: PUSH2 0x3e27
00003e1d: DUP2
00003e1e: DUP6
00003e1f: PUSH1 0x20
00003e21: DUP7
00003e22: ADD
00003e23: PUSH2 0x32a8
00003e26: JUMP
00003e27: JUMPDEST
00003e28: DUP1
00003e29: DUP5
00003e2a: ADD
00003e2b: SWAP2
00003e2c: POP
00003e2d: POP
00003e2e: SWAP3
00003e2f: SWAP2
00003e30: POP
00003e31: POP
00003e32: JUMP
00003e33: JUMPDEST
00003e34: PUSH1 0x00
00003e36: PUSH2 0x3e3e
00003e39: DUP3
00003e3a: PUSH2 0x3dd1
00003e3d: JUMP
00003e3e: JUMPDEST
00003e3f: PUSH1 0x1a
00003e41: DUP3
00003e42: ADD
00003e43: SWAP2
00003e44: POP
00003e45: PUSH2 0x3e4e
00003e48: DUP3
00003e49: DUP5
00003e4a: PUSH2 0x3e02
00003e4d: JUMP
00003e4e: JUMPDEST
00003e4f: SWAP2
00003e50: POP
00003e51: DUP2
00003e52: SWAP1
00003e53: POP
00003e54: SWAP3
00003e55: SWAP2
00003e56: POP
00003e57: POP
00003e58: JUMP
00003e59: JUMPDEST
00003e5a: PUSH1 0x00
00003e5c: PUSH2 0x3e65
00003e5f: DUP3
00003e60: DUP6
00003e61: PUSH2 0x3e02
00003e64: JUMP
00003e65: JUMPDEST
00003e66: SWAP2
00003e67: POP
00003e68: PUSH2 0x3e71
00003e6b: DUP3
00003e6c: DUP5
00003e6d: PUSH2 0x3e02
00003e70: JUMP
00003e71: JUMPDEST
00003e72: SWAP2
00003e73: POP
00003e74: DUP2
00003e75: SWAP1
00003e76: POP
00003e77: SWAP4
00003e78: SWAP3
00003e79: POP
00003e7a: POP
00003e7b: POP
00003e7c: JUMP
00003e7d: JUMPDEST
00003e7e: PUSH2 0x3e86
00003e81: DUP2
00003e82: PUSH2 0x36e2
00003e85: JUMP
00003e86: JUMPDEST
00003e87: DUP3
00003e88: MSTORE
00003e89: POP
00003e8a: POP
00003e8b: JUMP
00003e8c: JUMPDEST
00003e8d: PUSH2 0x3e95
00003e90: DUP2
00003e91: PUSH2 0x36a9
00003e94: JUMP
00003e95: JUMPDEST
00003e96: DUP3
00003e97: MSTORE
00003e98: POP
00003e99: POP
00003e9a: JUMP
00003e9b: JUMPDEST
00003e9c: PUSH1 0x00
00003e9e: PUSH1 0x80
00003ea0: DUP3
00003ea1: ADD
00003ea2: SWAP1
00003ea3: POP
00003ea4: PUSH2 0x3eb0
00003ea7: PUSH1 0x00
00003ea9: DUP4
00003eaa: ADD
00003eab: DUP8
00003eac: PUSH2 0x3e7d
00003eaf: JUMP
00003eb0: JUMPDEST
00003eb1: PUSH2 0x3ebd
00003eb4: PUSH1 0x20
00003eb6: DUP4
00003eb7: ADD
00003eb8: DUP7
00003eb9: PUSH2 0x3e8c
00003ebc: JUMP
00003ebd: JUMPDEST
00003ebe: PUSH2 0x3eca
00003ec1: PUSH1 0x40
00003ec3: DUP4
00003ec4: ADD
00003ec5: DUP6
00003ec6: PUSH2 0x3e7d
00003ec9: JUMP
00003eca: JUMPDEST
00003ecb: PUSH2 0x3ed7
00003ece: PUSH1 0x60
00003ed0: DUP4
00003ed1: ADD
00003ed2: DUP5
00003ed3: PUSH2 0x3e7d
00003ed6: JUMP
00003ed7: JUMPDEST
00003ed8: SWAP6
00003ed9: SWAP5
00003eda: POP
00003edb: POP
00003edc: POP
00003edd: POP
00003ede: POP
00003edf: JUMP
00003ee0: JUMPDEST
00003ee1: PUSH32 0x4552433732313a2061646472657373207a65726f206973206e6f742061207661
00003f02: PUSH1 0x00
00003f04: DUP3
00003f05: ADD
00003f06: MSTORE
00003f07: PUSH32 0x6c6964206f776e65720000000000000000000000000000000000000000000000
00003f28: PUSH1 0x20
00003f2a: DUP3
00003f2b: ADD
00003f2c: MSTORE
00003f2d: POP
00003f2e: JUMP
00003f2f: JUMPDEST
00003f30: PUSH1 0x00
00003f32: PUSH2 0x3f3c
00003f35: PUSH1 0x29
00003f37: DUP4
00003f38: PUSH2 0x3297
00003f3b: JUMP
00003f3c: JUMPDEST
00003f3d: SWAP2
00003f3e: POP
00003f3f: PUSH2 0x3f47
00003f42: DUP3
00003f43: PUSH2 0x3ee0
00003f46: JUMP
00003f47: JUMPDEST
00003f48: PUSH1 0x40
00003f4a: DUP3
00003f4b: ADD
00003f4c: SWAP1
00003f4d: POP
00003f4e: SWAP2
00003f4f: SWAP1
00003f50: POP
00003f51: JUMP
00003f52: JUMPDEST
00003f53: PUSH1 0x00
00003f55: PUSH1 0x20
00003f57: DUP3
00003f58: ADD
00003f59: SWAP1
00003f5a: POP
00003f5b: DUP2
00003f5c: DUP2
00003f5d: SUB
00003f5e: PUSH1 0x00
00003f60: DUP4
00003f61: ADD
00003f62: MSTORE
00003f63: PUSH2 0x3f6b
00003f66: DUP2
00003f67: PUSH2 0x3f2f
00003f6a: JUMP
00003f6b: JUMPDEST
00003f6c: SWAP1
00003f6d: POP
00003f6e: SWAP2
00003f6f: SWAP1
00003f70: POP
00003f71: JUMP
00003f72: JUMPDEST
00003f73: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003f94: PUSH1 0x00
00003f96: MSTORE
00003f97: PUSH1 0x32
00003f99: PUSH1 0x04
00003f9b: MSTORE
00003f9c: PUSH1 0x24
00003f9e: PUSH1 0x00
00003fa0: REVERT
00003fa1: JUMPDEST
00003fa2: PUSH32 0x596f7520646f6e2774206f776e2074686973204e465400000000000000000000
00003fc3: PUSH1 0x00
00003fc5: DUP3
00003fc6: ADD
00003fc7: MSTORE
00003fc8: POP
00003fc9: JUMP
00003fca: JUMPDEST
00003fcb: PUSH1 0x00
00003fcd: PUSH2 0x3fd7
00003fd0: PUSH1 0x16
00003fd2: DUP4
00003fd3: PUSH2 0x3297
00003fd6: JUMP
00003fd7: JUMPDEST
00003fd8: SWAP2
00003fd9: POP
00003fda: PUSH2 0x3fe2
00003fdd: DUP3
00003fde: PUSH2 0x3fa1
00003fe1: JUMP
00003fe2: JUMPDEST
00003fe3: PUSH1 0x20
00003fe5: DUP3
00003fe6: ADD
00003fe7: SWAP1
00003fe8: POP
00003fe9: SWAP2
00003fea: SWAP1
00003feb: POP
00003fec: JUMP
00003fed: JUMPDEST
00003fee: PUSH1 0x00
00003ff0: PUSH1 0x20
00003ff2: DUP3
00003ff3: ADD
00003ff4: SWAP1
00003ff5: POP
00003ff6: DUP2
00003ff7: DUP2
00003ff8: SUB
00003ff9: PUSH1 0x00
00003ffb: DUP4
00003ffc: ADD
00003ffd: MSTORE
00003ffe: PUSH2 0x4006
00004001: DUP2
00004002: PUSH2 0x3fca
00004005: JUMP
00004006: JUMPDEST
00004007: SWAP1
00004008: POP
00004009: SWAP2
0000400a: SWAP1
0000400b: POP
0000400c: JUMP
0000400d: JUMPDEST
0000400e: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
0000402f: PUSH1 0x00
00004031: MSTORE
00004032: PUSH1 0x11
00004034: PUSH1 0x04
00004036: MSTORE
00004037: PUSH1 0x24
00004039: PUSH1 0x00
0000403b: REVERT
0000403c: JUMPDEST
0000403d: PUSH1 0x00
0000403f: PUSH2 0x4047
00004042: DUP3
00004043: PUSH2 0x3347
00004046: JUMP
00004047: JUMPDEST
00004048: SWAP2
00004049: POP
0000404a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000406b: DUP3
0000406c: SUB
0000406d: PUSH2 0x4079
00004070: JUMPI
00004071: PUSH2 0x4078
00004074: PUSH2 0x400d
00004077: JUMP
00004078: JUMPDEST
00004079: JUMPDEST
0000407a: PUSH1 0x01
0000407c: DUP3
0000407d: ADD
0000407e: SWAP1
0000407f: POP
00004080: SWAP2
00004081: SWAP1
00004082: POP
00004083: JUMP
00004084: JUMPDEST
00004085: PUSH1 0x00
00004087: PUSH2 0x4090
0000408a: DUP3
0000408b: DUP9
0000408c: PUSH2 0x3e02
0000408f: JUMP
00004090: JUMPDEST
00004091: SWAP2
00004092: POP
00004093: PUSH2 0x409c
00004096: DUP3
00004097: DUP8
00004098: PUSH2 0x3e02
0000409b: JUMP
0000409c: JUMPDEST
0000409d: SWAP2
0000409e: POP
0000409f: PUSH2 0x40a8
000040a2: DUP3
000040a3: DUP7
000040a4: PUSH2 0x3e02
000040a7: JUMP
000040a8: JUMPDEST
000040a9: SWAP2
000040aa: POP
000040ab: PUSH2 0x40b4
000040ae: DUP3
000040af: DUP6
000040b0: PUSH2 0x3e02
000040b3: JUMP
000040b4: JUMPDEST
000040b5: SWAP2
000040b6: POP
000040b7: PUSH2 0x40c0
000040ba: DUP3
000040bb: DUP5
000040bc: PUSH2 0x3e02
000040bf: JUMP
000040c0: JUMPDEST
000040c1: SWAP2
000040c2: POP
000040c3: DUP2
000040c4: SWAP1
000040c5: POP
000040c6: SWAP7
000040c7: SWAP6
000040c8: POP
000040c9: POP
000040ca: POP
000040cb: POP
000040cc: POP
000040cd: POP
000040ce: JUMP
000040cf: JUMPDEST
000040d0: PUSH32 0x7361637269666963650000000000000000000000000000000000000000000000
000040f1: DUP2
000040f2: MSTORE
000040f3: POP
000040f4: JUMP
000040f5: JUMPDEST
000040f6: PUSH1 0x00
000040f8: PUSH2 0x4101
000040fb: DUP3
000040fc: DUP8
000040fd: PUSH2 0x3e02
00004100: JUMP
00004101: JUMPDEST
00004102: SWAP2
00004103: POP
00004104: PUSH2 0x410c
00004107: DUP3
00004108: PUSH2 0x40cf
0000410b: JUMP
0000410c: JUMPDEST
0000410d: PUSH1 0x09
0000410f: DUP3
00004110: ADD
00004111: SWAP2
00004112: POP
00004113: PUSH2 0x411c
00004116: DUP3
00004117: DUP7
00004118: PUSH2 0x3e02
0000411b: JUMP
0000411c: JUMPDEST
0000411d: SWAP2
0000411e: POP
0000411f: PUSH2 0x4128
00004122: DUP3
00004123: DUP6
00004124: PUSH2 0x3e02
00004127: JUMP
00004128: JUMPDEST
00004129: SWAP2
0000412a: POP
0000412b: PUSH2 0x4134
0000412e: DUP3
0000412f: DUP5
00004130: PUSH2 0x3e02
00004133: JUMP
00004134: JUMPDEST
00004135: SWAP2
00004136: POP
00004137: DUP2
00004138: SWAP1
00004139: POP
0000413a: SWAP6
0000413b: SWAP5
0000413c: POP
0000413d: POP
0000413e: POP
0000413f: POP
00004140: POP
00004141: JUMP
00004142: JUMPDEST
00004143: PUSH32 0x496e76616c6964207369676e6174757265212121214146415346415346000000
00004164: PUSH1 0x00
00004166: DUP3
00004167: ADD
00004168: MSTORE
00004169: POP
0000416a: JUMP
0000416b: JUMPDEST
0000416c: PUSH1 0x00
0000416e: PUSH2 0x4178
00004171: PUSH1 0x1d
00004173: DUP4
00004174: PUSH2 0x3297
00004177: JUMP
00004178: JUMPDEST
00004179: SWAP2
0000417a: POP
0000417b: PUSH2 0x4183
0000417e: DUP3
0000417f: PUSH2 0x4142
00004182: JUMP
00004183: JUMPDEST
00004184: PUSH1 0x20
00004186: DUP3
00004187: ADD
00004188: SWAP1
00004189: POP
0000418a: SWAP2
0000418b: SWAP1
0000418c: POP
0000418d: JUMP
0000418e: JUMPDEST
0000418f: PUSH1 0x00
00004191: PUSH1 0x20
00004193: DUP3
00004194: ADD
00004195: SWAP1
00004196: POP
00004197: DUP2
00004198: DUP2
00004199: SUB
0000419a: PUSH1 0x00
0000419c: DUP4
0000419d: ADD
0000419e: MSTORE
0000419f: PUSH2 0x41a7
000041a2: DUP2
000041a3: PUSH2 0x416b
000041a6: JUMP
000041a7: JUMPDEST
000041a8: SWAP1
000041a9: POP
000041aa: SWAP2
000041ab: SWAP1
000041ac: POP
000041ad: JUMP
000041ae: JUMPDEST
000041af: PUSH1 0x00
000041b1: PUSH2 0x41b9
000041b4: DUP3
000041b5: PUSH2 0x3347
000041b8: JUMP
000041b9: JUMPDEST
000041ba: SWAP2
000041bb: POP
000041bc: PUSH2 0x41c4
000041bf: DUP4
000041c0: PUSH2 0x3347
000041c3: JUMP
000041c4: JUMPDEST
000041c5: SWAP3
000041c6: POP
000041c7: DUP3
000041c8: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000041e9: SUB
000041ea: DUP3
000041eb: GT
000041ec: ISZERO
000041ed: PUSH2 0x41f9
000041f0: JUMPI
000041f1: PUSH2 0x41f8
000041f4: PUSH2 0x400d
000041f7: JUMP
000041f8: JUMPDEST
000041f9: JUMPDEST
000041fa: DUP3
000041fb: DUP3
000041fc: ADD
000041fd: SWAP1
000041fe: POP
000041ff: SWAP3
00004200: SWAP2
00004201: POP
00004202: POP
00004203: JUMP
00004204: JUMPDEST
00004205: PUSH1 0x00
00004207: PUSH1 0x40
00004209: DUP3
0000420a: ADD
0000420b: SWAP1
0000420c: POP
0000420d: PUSH2 0x4219
00004210: PUSH1 0x00
00004212: DUP4
00004213: ADD
00004214: DUP6
00004215: PUSH2 0x3467
00004218: JUMP
00004219: JUMPDEST
0000421a: PUSH2 0x4226
0000421d: PUSH1 0x20
0000421f: DUP4
00004220: ADD
00004221: DUP5
00004222: PUSH2 0x33aa
00004225: JUMP
00004226: JUMPDEST
00004227: SWAP4
00004228: SWAP3
00004229: POP
0000422a: POP
0000422b: POP
0000422c: JUMP
0000422d: JUMPDEST
0000422e: PUSH1 0x00
00004230: PUSH2 0x4239
00004233: DUP3
00004234: DUP8
00004235: PUSH2 0x3e02
00004238: JUMP
00004239: JUMPDEST
0000423a: SWAP2
0000423b: POP
0000423c: PUSH2 0x4245
0000423f: DUP3
00004240: DUP7
00004241: PUSH2 0x3e02
00004244: JUMP
00004245: JUMPDEST
00004246: SWAP2
00004247: POP
00004248: PUSH2 0x4251
0000424b: DUP3
0000424c: DUP6
0000424d: PUSH2 0x3e02
00004250: JUMP
00004251: JUMPDEST
00004252: SWAP2
00004253: POP
00004254: PUSH2 0x425d
00004257: DUP3
00004258: DUP5
00004259: PUSH2 0x3e02
0000425c: JUMP
0000425d: JUMPDEST
0000425e: SWAP2
0000425f: POP
00004260: DUP2
00004261: SWAP1
00004262: POP
00004263: SWAP6
00004264: SWAP5
00004265: POP
00004266: POP
00004267: POP
00004268: POP
00004269: POP
0000426a: JUMP
0000426b: JUMPDEST
0000426c: PUSH32 0x457863656564204d41585f414c4c4f575f535550504c59210000000000000000
0000428d: PUSH1 0x00
0000428f: DUP3
00004290: ADD
00004291: MSTORE
00004292: POP
00004293: JUMP
00004294: JUMPDEST
00004295: PUSH1 0x00
00004297: PUSH2 0x42a1
0000429a: PUSH1 0x18
0000429c: DUP4
0000429d: PUSH2 0x3297
000042a0: JUMP
000042a1: JUMPDEST
000042a2: SWAP2
000042a3: POP
000042a4: PUSH2 0x42ac
000042a7: DUP3
000042a8: PUSH2 0x426b
000042ab: JUMP
000042ac: JUMPDEST
000042ad: PUSH1 0x20
000042af: DUP3
000042b0: ADD
000042b1: SWAP1
000042b2: POP
000042b3: SWAP2
000042b4: SWAP1
000042b5: POP
000042b6: JUMP
000042b7: JUMPDEST
000042b8: PUSH1 0x00
000042ba: PUSH1 0x20
000042bc: DUP3
000042bd: ADD
000042be: SWAP1
000042bf: POP
000042c0: DUP2
000042c1: DUP2
000042c2: SUB
000042c3: PUSH1 0x00
000042c5: DUP4
000042c6: ADD
000042c7: MSTORE
000042c8: PUSH2 0x42d0
000042cb: DUP2
000042cc: PUSH2 0x4294
000042cf: JUMP
000042d0: JUMPDEST
000042d1: SWAP1
000042d2: POP
000042d3: SWAP2
000042d4: SWAP1
000042d5: POP
000042d6: JUMP
000042d7: JUMPDEST
000042d8: PUSH32 0x616c6c6f776c6973740000000000000000000000000000000000000000000000
000042f9: DUP2
000042fa: MSTORE
000042fb: POP
000042fc: JUMP
000042fd: JUMPDEST
000042fe: PUSH1 0x00
00004300: PUSH2 0x4309
00004303: DUP3
00004304: DUP7
00004305: PUSH2 0x3e02
00004308: JUMP
00004309: JUMPDEST
0000430a: SWAP2
0000430b: POP
0000430c: PUSH2 0x4314
0000430f: DUP3
00004310: PUSH2 0x42d7
00004313: JUMP
00004314: JUMPDEST
00004315: PUSH1 0x09
00004317: DUP3
00004318: ADD
00004319: SWAP2
0000431a: POP
0000431b: PUSH2 0x4324
0000431e: DUP3
0000431f: DUP6
00004320: PUSH2 0x3e02
00004323: JUMP
00004324: JUMPDEST
00004325: SWAP2
00004326: POP
00004327: PUSH2 0x4330
0000432a: DUP3
0000432b: DUP5
0000432c: PUSH2 0x3e02
0000432f: JUMP
00004330: JUMPDEST
00004331: SWAP2
00004332: POP
00004333: DUP2
00004334: SWAP1
00004335: POP
00004336: SWAP5
00004337: SWAP4
00004338: POP
00004339: POP
0000433a: POP
0000433b: POP
0000433c: JUMP
0000433d: JUMPDEST
0000433e: PUSH32 0x496e76616c6964207369676e6174757265000000000000000000000000000000
0000435f: PUSH1 0x00
00004361: DUP3
00004362: ADD
00004363: MSTORE
00004364: POP
00004365: JUMP
00004366: JUMPDEST
00004367: PUSH1 0x00
00004369: PUSH2 0x4373
0000436c: PUSH1 0x11
0000436e: DUP4
0000436f: PUSH2 0x3297
00004372: JUMP
00004373: JUMPDEST
00004374: SWAP2
00004375: POP
00004376: PUSH2 0x437e
00004379: DUP3
0000437a: PUSH2 0x433d
0000437d: JUMP
0000437e: JUMPDEST
0000437f: PUSH1 0x20
00004381: DUP3
00004382: ADD
00004383: SWAP1
00004384: POP
00004385: SWAP2
00004386: SWAP1
00004387: POP
00004388: JUMP
00004389: JUMPDEST
0000438a: PUSH1 0x00
0000438c: PUSH1 0x20
0000438e: DUP3
0000438f: ADD
00004390: SWAP1
00004391: POP
00004392: DUP2
00004393: DUP2
00004394: SUB
00004395: PUSH1 0x00
00004397: DUP4
00004398: ADD
00004399: MSTORE
0000439a: PUSH2 0x43a2
0000439d: DUP2
0000439e: PUSH2 0x4366
000043a1: JUMP
000043a2: JUMPDEST
000043a3: SWAP1
000043a4: POP
000043a5: SWAP2
000043a6: SWAP1
000043a7: POP
000043a8: JUMP
000043a9: JUMPDEST
000043aa: PUSH32 0x4d696e7420616d6f756e742063616e2774206265203021000000000000000000
000043cb: PUSH1 0x00
000043cd: DUP3
000043ce: ADD
000043cf: MSTORE
000043d0: POP
000043d1: JUMP
000043d2: JUMPDEST
000043d3: PUSH1 0x00
000043d5: PUSH2 0x43df
000043d8: PUSH1 0x17
000043da: DUP4
000043db: PUSH2 0x3297
000043de: JUMP
000043df: JUMPDEST
000043e0: SWAP2
000043e1: POP
000043e2: PUSH2 0x43ea
000043e5: DUP3
000043e6: PUSH2 0x43a9
000043e9: JUMP
000043ea: JUMPDEST
000043eb: PUSH1 0x20
000043ed: DUP3
000043ee: ADD
000043ef: SWAP1
000043f0: POP
000043f1: SWAP2
000043f2: SWAP1
000043f3: POP
000043f4: JUMP
000043f5: JUMPDEST
000043f6: PUSH1 0x00
000043f8: PUSH1 0x20
000043fa: DUP3
000043fb: ADD
000043fc: SWAP1
000043fd: POP
000043fe: DUP2
000043ff: DUP2
00004400: SUB
00004401: PUSH1 0x00
00004403: DUP4
00004404: ADD
00004405: MSTORE
00004406: PUSH2 0x440e
00004409: DUP2
0000440a: PUSH2 0x43d2
0000440d: JUMP
0000440e: JUMPDEST
0000440f: SWAP1
00004410: POP
00004411: SWAP2
00004412: SWAP1
00004413: POP
00004414: JUMP
00004415: JUMPDEST
00004416: PUSH32 0x4578636565646564206d696e74206c696d697400000000000000000000000000
00004437: PUSH1 0x00
00004439: DUP3
0000443a: ADD
0000443b: MSTORE
0000443c: POP
0000443d: JUMP
0000443e: JUMPDEST
0000443f: PUSH1 0x00
00004441: PUSH2 0x444b
00004444: PUSH1 0x13
00004446: DUP4
00004447: PUSH2 0x3297
0000444a: JUMP
0000444b: JUMPDEST
0000444c: SWAP2
0000444d: POP
0000444e: PUSH2 0x4456
00004451: DUP3
00004452: PUSH2 0x4415
00004455: JUMP
00004456: JUMPDEST
00004457: PUSH1 0x20
00004459: DUP3
0000445a: ADD
0000445b: SWAP1
0000445c: POP
0000445d: SWAP2
0000445e: SWAP1
0000445f: POP
00004460: JUMP
00004461: JUMPDEST
00004462: PUSH1 0x00
00004464: PUSH1 0x20
00004466: DUP3
00004467: ADD
00004468: SWAP1
00004469: POP
0000446a: DUP2
0000446b: DUP2
0000446c: SUB
0000446d: PUSH1 0x00
0000446f: DUP4
00004470: ADD
00004471: MSTORE
00004472: PUSH2 0x447a
00004475: DUP2
00004476: PUSH2 0x443e
00004479: JUMP
0000447a: JUMPDEST
0000447b: SWAP1
0000447c: POP
0000447d: SWAP2
0000447e: SWAP1
0000447f: POP
00004480: JUMP
00004481: JUMPDEST
00004482: PUSH1 0x00
00004484: PUSH2 0x448c
00004487: DUP3
00004488: PUSH2 0x3347
0000448b: JUMP
0000448c: JUMPDEST
0000448d: SWAP2
0000448e: POP
0000448f: PUSH2 0x4497
00004492: DUP4
00004493: PUSH2 0x3347
00004496: JUMP
00004497: JUMPDEST
00004498: SWAP3
00004499: POP
0000449a: DUP2
0000449b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000044bc: DIV
000044bd: DUP4
000044be: GT
000044bf: DUP3
000044c0: ISZERO
000044c1: ISZERO
000044c2: AND
000044c3: ISZERO
000044c4: PUSH2 0x44d0
000044c7: JUMPI
000044c8: PUSH2 0x44cf
000044cb: PUSH2 0x400d
000044ce: JUMP
000044cf: JUMPDEST
000044d0: JUMPDEST
000044d1: DUP3
000044d2: DUP3
000044d3: MUL
000044d4: SWAP1
000044d5: POP
000044d6: SWAP3
000044d7: SWAP2
000044d8: POP
000044d9: POP
000044da: JUMP
000044db: JUMPDEST
000044dc: PUSH32 0x4e6f7420656e6f75676820455448000000000000000000000000000000000000
000044fd: PUSH1 0x00
000044ff: DUP3
00004500: ADD
00004501: MSTORE
00004502: POP
00004503: JUMP
00004504: JUMPDEST
00004505: PUSH1 0x00
00004507: PUSH2 0x4511
0000450a: PUSH1 0x0e
0000450c: DUP4
0000450d: PUSH2 0x3297
00004510: JUMP
00004511: JUMPDEST
00004512: SWAP2
00004513: POP
00004514: PUSH2 0x451c
00004517: DUP3
00004518: PUSH2 0x44db
0000451b: JUMP
0000451c: JUMPDEST
0000451d: PUSH1 0x20
0000451f: DUP3
00004520: ADD
00004521: SWAP1
00004522: POP
00004523: SWAP2
00004524: SWAP1
00004525: POP
00004526: JUMP
00004527: JUMPDEST
00004528: PUSH1 0x00
0000452a: PUSH1 0x20
0000452c: DUP3
0000452d: ADD
0000452e: SWAP1
0000452f: POP
00004530: DUP2
00004531: DUP2
00004532: SUB
00004533: PUSH1 0x00
00004535: DUP4
00004536: ADD
00004537: MSTORE
00004538: PUSH2 0x4540
0000453b: DUP2
0000453c: PUSH2 0x4504
0000453f: JUMP
00004540: JUMPDEST
00004541: SWAP1
00004542: POP
00004543: SWAP2
00004544: SWAP1
00004545: POP
00004546: JUMP
00004547: JUMPDEST
00004548: PUSH32 0x457863656564204d41585f5649505f535550504c590000000000000000000000
00004569: PUSH1 0x00
0000456b: DUP3
0000456c: ADD
0000456d: MSTORE
0000456e: POP
0000456f: JUMP
00004570: JUMPDEST
00004571: PUSH1 0x00
00004573: PUSH2 0x457d
00004576: PUSH1 0x15
00004578: DUP4
00004579: PUSH2 0x3297
0000457c: JUMP
0000457d: JUMPDEST
0000457e: SWAP2
0000457f: POP
00004580: PUSH2 0x4588
00004583: DUP3
00004584: PUSH2 0x4547
00004587: JUMP
00004588: JUMPDEST
00004589: PUSH1 0x20
0000458b: DUP3
0000458c: ADD
0000458d: SWAP1
0000458e: POP
0000458f: SWAP2
00004590: SWAP1
00004591: POP
00004592: JUMP
00004593: JUMPDEST
00004594: PUSH1 0x00
00004596: PUSH1 0x20
00004598: DUP3
00004599: ADD
0000459a: SWAP1
0000459b: POP
0000459c: DUP2
0000459d: DUP2
0000459e: SUB
0000459f: PUSH1 0x00
000045a1: DUP4
000045a2: ADD
000045a3: MSTORE
000045a4: PUSH2 0x45ac
000045a7: DUP2
000045a8: PUSH2 0x4570
000045ab: JUMP
000045ac: JUMPDEST
000045ad: SWAP1
000045ae: POP
000045af: SWAP2
000045b0: SWAP1
000045b1: POP
000045b2: JUMP
000045b3: JUMPDEST
000045b4: PUSH32 0x5649506c69737400000000000000000000000000000000000000000000000000
000045d5: DUP2
000045d6: MSTORE
000045d7: POP
000045d8: JUMP
000045d9: JUMPDEST
000045da: PUSH1 0x00
000045dc: PUSH2 0x45e5
000045df: DUP3
000045e0: DUP7
000045e1: PUSH2 0x3e02
000045e4: JUMP
000045e5: JUMPDEST
000045e6: SWAP2
000045e7: POP
000045e8: PUSH2 0x45f0
000045eb: DUP3
000045ec: PUSH2 0x45b3
000045ef: JUMP
000045f0: JUMPDEST
000045f1: PUSH1 0x07
000045f3: DUP3
000045f4: ADD
000045f5: SWAP2
000045f6: POP
000045f7: PUSH2 0x4600
000045fa: DUP3
000045fb: DUP6
000045fc: PUSH2 0x3e02
000045ff: JUMP
00004600: JUMPDEST
00004601: SWAP2
00004602: POP
00004603: PUSH2 0x460c
00004606: DUP3
00004607: DUP5
00004608: PUSH2 0x3e02
0000460b: JUMP
0000460c: JUMPDEST
0000460d: SWAP2
0000460e: POP
0000460f: DUP2
00004610: SWAP1
00004611: POP
00004612: SWAP5
00004613: SWAP4
00004614: POP
00004615: POP
00004616: POP
00004617: POP
00004618: JUMP
00004619: JUMPDEST
0000461a: PUSH32 0x457863656564204d41585f5445414d5f535550504c5900000000000000000000
0000463b: PUSH1 0x00
0000463d: DUP3
0000463e: ADD
0000463f: MSTORE
00004640: POP
00004641: JUMP
00004642: JUMPDEST
00004643: PUSH1 0x00
00004645: PUSH2 0x464f
00004648: PUSH1 0x16
0000464a: DUP4
0000464b: PUSH2 0x3297
0000464e: JUMP
0000464f: JUMPDEST
00004650: SWAP2
00004651: POP
00004652: PUSH2 0x465a
00004655: DUP3
00004656: PUSH2 0x4619
00004659: JUMP
0000465a: JUMPDEST
0000465b: PUSH1 0x20
0000465d: DUP3
0000465e: ADD
0000465f: SWAP1
00004660: POP
00004661: SWAP2
00004662: SWAP1
00004663: POP
00004664: JUMP
00004665: JUMPDEST
00004666: PUSH1 0x00
00004668: PUSH1 0x20
0000466a: DUP3
0000466b: ADD
0000466c: SWAP1
0000466d: POP
0000466e: DUP2
0000466f: DUP2
00004670: SUB
00004671: PUSH1 0x00
00004673: DUP4
00004674: ADD
00004675: MSTORE
00004676: PUSH2 0x467e
00004679: DUP2
0000467a: PUSH2 0x4642
0000467d: JUMP
0000467e: JUMPDEST
0000467f: SWAP1
00004680: POP
00004681: SWAP2
00004682: SWAP1
00004683: POP
00004684: JUMP
00004685: JUMPDEST
00004686: PUSH32 0x4e465420646f6573206e6f742065786973740000000000000000000000000000
000046a7: PUSH1 0x00
000046a9: DUP3
000046aa: ADD
000046ab: MSTORE
000046ac: POP
000046ad: JUMP
000046ae: JUMPDEST
000046af: PUSH1 0x00
000046b1: PUSH2 0x46bb
000046b4: PUSH1 0x12
000046b6: DUP4
000046b7: PUSH2 0x3297
000046ba: JUMP
000046bb: JUMPDEST
000046bc: SWAP2
000046bd: POP
000046be: PUSH2 0x46c6
000046c1: DUP3
000046c2: PUSH2 0x4685
000046c5: JUMP
000046c6: JUMPDEST
000046c7: PUSH1 0x20
000046c9: DUP3
000046ca: ADD
000046cb: SWAP1
000046cc: POP
000046cd: SWAP2
000046ce: SWAP1
000046cf: POP
000046d0: JUMP
000046d1: JUMPDEST
000046d2: PUSH1 0x00
000046d4: PUSH1 0x20
000046d6: DUP3
000046d7: ADD
000046d8: SWAP1
000046d9: POP
000046da: DUP2
000046db: DUP2
000046dc: SUB
000046dd: PUSH1 0x00
000046df: DUP4
000046e0: ADD
000046e1: MSTORE
000046e2: PUSH2 0x46ea
000046e5: DUP2
000046e6: PUSH2 0x46ae
000046e9: JUMP
000046ea: JUMPDEST
000046eb: SWAP1
000046ec: POP
000046ed: SWAP2
000046ee: SWAP1
000046ef: POP
000046f0: JUMP
000046f1: JUMPDEST
000046f2: PUSH1 0x00
000046f4: DUP2
000046f5: SWAP1
000046f6: POP
000046f7: DUP2
000046f8: PUSH1 0x00
000046fa: MSTORE
000046fb: PUSH1 0x20
000046fd: PUSH1 0x00
000046ff: KECCAK256
00004700: SWAP1
00004701: POP
00004702: SWAP2
00004703: SWAP1
00004704: POP
00004705: JUMP
00004706: JUMPDEST
00004707: PUSH1 0x00
00004709: DUP2
0000470a: SLOAD
0000470b: PUSH2 0x4713
0000470e: DUP2
0000470f: PUSH2 0x3b54
00004712: JUMP
00004713: JUMPDEST
00004714: PUSH2 0x471d
00004717: DUP2
00004718: DUP7
00004719: PUSH2 0x3df7
0000471c: JUMP
0000471d: JUMPDEST
0000471e: SWAP5
0000471f: POP
00004720: PUSH1 0x01
00004722: DUP3
00004723: AND
00004724: PUSH1 0x00
00004726: DUP2
00004727: EQ
00004728: PUSH2 0x4738
0000472b: JUMPI
0000472c: PUSH1 0x01
0000472e: DUP2
0000472f: EQ
00004730: PUSH2 0x4749
00004733: JUMPI
00004734: PUSH2 0x477c
00004737: JUMP
00004738: JUMPDEST
00004739: PUSH1 0xff
0000473b: NOT
0000473c: DUP4
0000473d: AND
0000473e: DUP7
0000473f: MSTORE
00004740: DUP2
00004741: DUP7
00004742: ADD
00004743: SWAP4
00004744: POP
00004745: PUSH2 0x477c
00004748: JUMP
00004749: JUMPDEST
0000474a: PUSH2 0x4752
0000474d: DUP6
0000474e: PUSH2 0x46f1
00004751: JUMP
00004752: JUMPDEST
00004753: PUSH1 0x00
00004755: JUMPDEST
00004756: DUP4
00004757: DUP2
00004758: LT
00004759: ISZERO
0000475a: PUSH2 0x4774
0000475d: JUMPI
0000475e: DUP2
0000475f: SLOAD
00004760: DUP2
00004761: DUP10
00004762: ADD
00004763: MSTORE
00004764: PUSH1 0x01
00004766: DUP3
00004767: ADD
00004768: SWAP2
00004769: POP
0000476a: PUSH1 0x20
0000476c: DUP2
0000476d: ADD
0000476e: SWAP1
0000476f: POP
00004770: PUSH2 0x4755
00004773: JUMP
00004774: JUMPDEST
00004775: DUP4
00004776: DUP9
00004777: ADD
00004778: SWAP6
00004779: POP
0000477a: POP
0000477b: POP
0000477c: JUMPDEST
0000477d: POP
0000477e: POP
0000477f: POP
00004780: SWAP3
00004781: SWAP2
00004782: POP
00004783: POP
00004784: JUMP
00004785: JUMPDEST
00004786: PUSH1 0x00
00004788: PUSH2 0x4791
0000478b: DUP3
0000478c: DUP7
0000478d: PUSH2 0x4706
00004790: JUMP
00004791: JUMPDEST
00004792: SWAP2
00004793: POP
00004794: PUSH2 0x479d
00004797: DUP3
00004798: DUP6
00004799: PUSH2 0x3e02
0000479c: JUMP
0000479d: JUMPDEST
0000479e: SWAP2
0000479f: POP
000047a0: PUSH2 0x47a9
000047a3: DUP3
000047a4: DUP5
000047a5: PUSH2 0x4706
000047a8: JUMP
000047a9: JUMPDEST
000047aa: SWAP2
000047ab: POP
000047ac: DUP2
000047ad: SWAP1
000047ae: POP
000047af: SWAP5
000047b0: SWAP4
000047b1: POP
000047b2: POP
000047b3: POP
000047b4: POP
000047b5: JUMP
000047b6: JUMPDEST
000047b7: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061
000047d8: PUSH1 0x00
000047da: DUP3
000047db: ADD
000047dc: MSTORE
000047dd: PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000
000047fe: PUSH1 0x20
00004800: DUP3
00004801: ADD
00004802: MSTORE
00004803: POP
00004804: JUMP
00004805: JUMPDEST
00004806: PUSH1 0x00
00004808: PUSH2 0x4812
0000480b: PUSH1 0x26
0000480d: DUP4
0000480e: PUSH2 0x3297
00004811: JUMP
00004812: JUMPDEST
00004813: SWAP2
00004814: POP
00004815: PUSH2 0x481d
00004818: DUP3
00004819: PUSH2 0x47b6
0000481c: JUMP
0000481d: JUMPDEST
0000481e: PUSH1 0x40
00004820: DUP3
00004821: ADD
00004822: SWAP1
00004823: POP
00004824: SWAP2
00004825: SWAP1
00004826: POP
00004827: JUMP
00004828: JUMPDEST
00004829: PUSH1 0x00
0000482b: PUSH1 0x20
0000482d: DUP3
0000482e: ADD
0000482f: SWAP1
00004830: POP
00004831: DUP2
00004832: DUP2
00004833: SUB
00004834: PUSH1 0x00
00004836: DUP4
00004837: ADD
00004838: MSTORE
00004839: PUSH2 0x4841
0000483c: DUP2
0000483d: PUSH2 0x4805
00004840: JUMP
00004841: JUMPDEST
00004842: SWAP1
00004843: POP
00004844: SWAP2
00004845: SWAP1
00004846: POP
00004847: JUMP
00004848: JUMPDEST
00004849: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
0000486a: PUSH1 0x00
0000486c: DUP3
0000486d: ADD
0000486e: MSTORE
0000486f: POP
00004870: JUMP
00004871: JUMPDEST
00004872: PUSH1 0x00
00004874: PUSH2 0x487e
00004877: PUSH1 0x20
00004879: DUP4
0000487a: PUSH2 0x3297
0000487d: JUMP
0000487e: JUMPDEST
0000487f: SWAP2
00004880: POP
00004881: PUSH2 0x4889
00004884: DUP3
00004885: PUSH2 0x4848
00004888: JUMP
00004889: JUMPDEST
0000488a: PUSH1 0x20
0000488c: DUP3
0000488d: ADD
0000488e: SWAP1
0000488f: POP
00004890: SWAP2
00004891: SWAP1
00004892: POP
00004893: JUMP
00004894: JUMPDEST
00004895: PUSH1 0x00
00004897: PUSH1 0x20
00004899: DUP3
0000489a: ADD
0000489b: SWAP1
0000489c: POP
0000489d: DUP2
0000489e: DUP2
0000489f: SUB
000048a0: PUSH1 0x00
000048a2: DUP4
000048a3: ADD
000048a4: MSTORE
000048a5: PUSH2 0x48ad
000048a8: DUP2
000048a9: PUSH2 0x4871
000048ac: JUMP
000048ad: JUMPDEST
000048ae: SWAP1
000048af: POP
000048b0: SWAP2
000048b1: SWAP1
000048b2: POP
000048b3: JUMP
000048b4: JUMPDEST
000048b5: PUSH32 0x4552433732313a207472616e736665722066726f6d20696e636f727265637420
000048d6: PUSH1 0x00
000048d8: DUP3
000048d9: ADD
000048da: MSTORE
000048db: PUSH32 0x6f776e6572000000000000000000000000000000000000000000000000000000
000048fc: PUSH1 0x20
000048fe: DUP3
000048ff: ADD
00004900: MSTORE
00004901: POP
00004902: JUMP
00004903: JUMPDEST
00004904: PUSH1 0x00
00004906: PUSH2 0x4910
00004909: PUSH1 0x25
0000490b: DUP4
0000490c: PUSH2 0x3297
0000490f: JUMP
00004910: JUMPDEST
00004911: SWAP2
00004912: POP
00004913: PUSH2 0x491b
00004916: DUP3
00004917: PUSH2 0x48b4
0000491a: JUMP
0000491b: JUMPDEST
0000491c: PUSH1 0x40
0000491e: DUP3
0000491f: ADD
00004920: SWAP1
00004921: POP
00004922: SWAP2
00004923: SWAP1
00004924: POP
00004925: JUMP
00004926: JUMPDEST
00004927: PUSH1 0x00
00004929: PUSH1 0x20
0000492b: DUP3
0000492c: ADD
0000492d: SWAP1
0000492e: POP
0000492f: DUP2
00004930: DUP2
00004931: SUB
00004932: PUSH1 0x00
00004934: DUP4
00004935: ADD
00004936: MSTORE
00004937: PUSH2 0x493f
0000493a: DUP2
0000493b: PUSH2 0x4903
0000493e: JUMP
0000493f: JUMPDEST
00004940: SWAP1
00004941: POP
00004942: SWAP2
00004943: SWAP1
00004944: POP
00004945: JUMP
00004946: JUMPDEST
00004947: PUSH32 0x4552433732313a207472616e7366657220746f20746865207a65726f20616464
00004968: PUSH1 0x00
0000496a: DUP3
0000496b: ADD
0000496c: MSTORE
0000496d: PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000
0000498e: PUSH1 0x20
00004990: DUP3
00004991: ADD
00004992: MSTORE
00004993: POP
00004994: JUMP
00004995: JUMPDEST
00004996: PUSH1 0x00
00004998: PUSH2 0x49a2
0000499b: PUSH1 0x24
0000499d: DUP4
0000499e: PUSH2 0x3297
000049a1: JUMP
000049a2: JUMPDEST
000049a3: SWAP2
000049a4: POP
000049a5: PUSH2 0x49ad
000049a8: DUP3
000049a9: PUSH2 0x4946
000049ac: JUMP
000049ad: JUMPDEST
000049ae: PUSH1 0x40
000049b0: DUP3
000049b1: ADD
000049b2: SWAP1
000049b3: POP
000049b4: SWAP2
000049b5: SWAP1
000049b6: POP
000049b7: JUMP
000049b8: JUMPDEST
000049b9: PUSH1 0x00
000049bb: PUSH1 0x20
000049bd: DUP3
000049be: ADD
000049bf: SWAP1
000049c0: POP
000049c1: DUP2
000049c2: DUP2
000049c3: SUB
000049c4: PUSH1 0x00
000049c6: DUP4
000049c7: ADD
000049c8: MSTORE
000049c9: PUSH2 0x49d1
000049cc: DUP2
000049cd: PUSH2 0x4995
000049d0: JUMP
000049d1: JUMPDEST
000049d2: SWAP1
000049d3: POP
000049d4: SWAP2
000049d5: SWAP1
000049d6: POP
000049d7: JUMP
000049d8: JUMPDEST
000049d9: PUSH1 0x00
000049db: PUSH2 0x49e3
000049de: DUP3
000049df: PUSH2 0x3347
000049e2: JUMP
000049e3: JUMPDEST
000049e4: SWAP2
000049e5: POP
000049e6: PUSH2 0x49ee
000049e9: DUP4
000049ea: PUSH2 0x3347
000049ed: JUMP
000049ee: JUMPDEST
000049ef: SWAP3
000049f0: POP
000049f1: DUP3
000049f2: DUP3
000049f3: LT
000049f4: ISZERO
000049f5: PUSH2 0x4a01
000049f8: JUMPI
000049f9: PUSH2 0x4a00
000049fc: PUSH2 0x400d
000049ff: JUMP
00004a00: JUMPDEST
00004a01: JUMPDEST
00004a02: DUP3
00004a03: DUP3
00004a04: SUB
00004a05: SWAP1
00004a06: POP
00004a07: SWAP3
00004a08: SWAP2
00004a09: POP
00004a0a: POP
00004a0b: JUMP
00004a0c: JUMPDEST
00004a0d: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004a2e: PUSH1 0x00
00004a30: MSTORE
00004a31: PUSH1 0x12
00004a33: PUSH1 0x04
00004a35: MSTORE
00004a36: PUSH1 0x24
00004a38: PUSH1 0x00
00004a3a: REVERT
00004a3b: JUMPDEST
00004a3c: PUSH1 0x00
00004a3e: PUSH2 0x4a46
00004a41: DUP3
00004a42: PUSH2 0x3347
00004a45: JUMP
00004a46: JUMPDEST
00004a47: SWAP2
00004a48: POP
00004a49: PUSH2 0x4a51
00004a4c: DUP4
00004a4d: PUSH2 0x3347
00004a50: JUMP
00004a51: JUMPDEST
00004a52: SWAP3
00004a53: POP
00004a54: DUP3
00004a55: PUSH2 0x4a61
00004a58: JUMPI
00004a59: PUSH2 0x4a60
00004a5c: PUSH2 0x4a0c
00004a5f: JUMP
00004a60: JUMPDEST
00004a61: JUMPDEST
00004a62: DUP3
00004a63: DUP3
00004a64: DIV
00004a65: SWAP1
00004a66: POP
00004a67: SWAP3
00004a68: SWAP2
00004a69: POP
00004a6a: POP
00004a6b: JUMP
00004a6c: JUMPDEST
00004a6d: PUSH1 0x00
00004a6f: PUSH2 0x4a77
00004a72: DUP3
00004a73: PUSH2 0x3347
00004a76: JUMP
00004a77: JUMPDEST
00004a78: SWAP2
00004a79: POP
00004a7a: PUSH2 0x4a82
00004a7d: DUP4
00004a7e: PUSH2 0x3347
00004a81: JUMP
00004a82: JUMPDEST
00004a83: SWAP3
00004a84: POP
00004a85: DUP3
00004a86: PUSH2 0x4a92
00004a89: JUMPI
00004a8a: PUSH2 0x4a91
00004a8d: PUSH2 0x4a0c
00004a90: JUMP
00004a91: JUMPDEST
00004a92: JUMPDEST
00004a93: DUP3
00004a94: DUP3
00004a95: MOD
00004a96: SWAP1
00004a97: POP
00004a98: SWAP3
00004a99: SWAP2
00004a9a: POP
00004a9b: POP
00004a9c: JUMP
00004a9d: JUMPDEST
00004a9e: PUSH32 0x4552433732313a206d696e7420746f20746865207a65726f2061646472657373
00004abf: PUSH1 0x00
00004ac1: DUP3
00004ac2: ADD
00004ac3: MSTORE
00004ac4: POP
00004ac5: JUMP
00004ac6: JUMPDEST
00004ac7: PUSH1 0x00
00004ac9: PUSH2 0x4ad3
00004acc: PUSH1 0x20
00004ace: DUP4
00004acf: PUSH2 0x3297
00004ad2: JUMP
00004ad3: JUMPDEST
00004ad4: SWAP2
00004ad5: POP
00004ad6: PUSH2 0x4ade
00004ad9: DUP3
00004ada: PUSH2 0x4a9d
00004add: JUMP
00004ade: JUMPDEST
00004adf: PUSH1 0x20
00004ae1: DUP3
00004ae2: ADD
00004ae3: SWAP1
00004ae4: POP
00004ae5: SWAP2
00004ae6: SWAP1
00004ae7: POP
00004ae8: JUMP
00004ae9: JUMPDEST
00004aea: PUSH1 0x00
00004aec: PUSH1 0x20
00004aee: DUP3
00004aef: ADD
00004af0: SWAP1
00004af1: POP
00004af2: DUP2
00004af3: DUP2
00004af4: SUB
00004af5: PUSH1 0x00
00004af7: DUP4
00004af8: ADD
00004af9: MSTORE
00004afa: PUSH2 0x4b02
00004afd: DUP2
00004afe: PUSH2 0x4ac6
00004b01: JUMP
00004b02: JUMPDEST
00004b03: SWAP1
00004b04: POP
00004b05: SWAP2
00004b06: SWAP1
00004b07: POP
00004b08: JUMP
00004b09: JUMPDEST
00004b0a: PUSH32 0x4552433732313a20746f6b656e20616c7265616479206d696e74656400000000
00004b2b: PUSH1 0x00
00004b2d: DUP3
00004b2e: ADD
00004b2f: MSTORE
00004b30: POP
00004b31: JUMP
00004b32: JUMPDEST
00004b33: PUSH1 0x00
00004b35: PUSH2 0x4b3f
00004b38: PUSH1 0x1c
00004b3a: DUP4
00004b3b: PUSH2 0x3297
00004b3e: JUMP
00004b3f: JUMPDEST
00004b40: SWAP2
00004b41: POP
00004b42: PUSH2 0x4b4a
00004b45: DUP3
00004b46: PUSH2 0x4b09
00004b49: JUMP
00004b4a: JUMPDEST
00004b4b: PUSH1 0x20
00004b4d: DUP3
00004b4e: ADD
00004b4f: SWAP1
00004b50: POP
00004b51: SWAP2
00004b52: SWAP1
00004b53: POP
00004b54: JUMP
00004b55: JUMPDEST
00004b56: PUSH1 0x00
00004b58: PUSH1 0x20
00004b5a: DUP3
00004b5b: ADD
00004b5c: SWAP1
00004b5d: POP
00004b5e: DUP2
00004b5f: DUP2
00004b60: SUB
00004b61: PUSH1 0x00
00004b63: DUP4
00004b64: ADD
00004b65: MSTORE
00004b66: PUSH2 0x4b6e
00004b69: DUP2
00004b6a: PUSH2 0x4b32
00004b6d: JUMP
00004b6e: JUMPDEST
00004b6f: SWAP1
00004b70: POP
00004b71: SWAP2
00004b72: SWAP1
00004b73: POP
00004b74: JUMP
00004b75: JUMPDEST
00004b76: PUSH32 0x4552433732313a20617070726f766520746f2063616c6c657200000000000000
00004b97: PUSH1 0x00
00004b99: DUP3
00004b9a: ADD
00004b9b: MSTORE
00004b9c: POP
00004b9d: JUMP
00004b9e: JUMPDEST
00004b9f: PUSH1 0x00
00004ba1: PUSH2 0x4bab
00004ba4: PUSH1 0x19
00004ba6: DUP4
00004ba7: PUSH2 0x3297
00004baa: JUMP
00004bab: JUMPDEST
00004bac: SWAP2
00004bad: POP
00004bae: PUSH2 0x4bb6
00004bb1: DUP3
00004bb2: PUSH2 0x4b75
00004bb5: JUMP
00004bb6: JUMPDEST
00004bb7: PUSH1 0x20
00004bb9: DUP3
00004bba: ADD
00004bbb: SWAP1
00004bbc: POP
00004bbd: SWAP2
00004bbe: SWAP1
00004bbf: POP
00004bc0: JUMP
00004bc1: JUMPDEST
00004bc2: PUSH1 0x00
00004bc4: PUSH1 0x20
00004bc6: DUP3
00004bc7: ADD
00004bc8: SWAP1
00004bc9: POP
00004bca: DUP2
00004bcb: DUP2
00004bcc: SUB
00004bcd: PUSH1 0x00
00004bcf: DUP4
00004bd0: ADD
00004bd1: MSTORE
00004bd2: PUSH2 0x4bda
00004bd5: DUP2
00004bd6: PUSH2 0x4b9e
00004bd9: JUMP
00004bda: JUMPDEST
00004bdb: SWAP1
00004bdc: POP
00004bdd: SWAP2
00004bde: SWAP1
00004bdf: POP
00004be0: JUMP
00004be1: JUMPDEST
00004be2: PUSH32 0x4552433732313a207472616e7366657220746f206e6f6e204552433732315265
00004c03: PUSH1 0x00
00004c05: DUP3
00004c06: ADD
00004c07: MSTORE
00004c08: PUSH32 0x63656976657220696d706c656d656e7465720000000000000000000000000000
00004c29: PUSH1 0x20
00004c2b: DUP3
00004c2c: ADD
00004c2d: MSTORE
00004c2e: POP
00004c2f: JUMP
00004c30: JUMPDEST
00004c31: PUSH1 0x00
00004c33: PUSH2 0x4c3d
00004c36: PUSH1 0x32
00004c38: DUP4
00004c39: PUSH2 0x3297
00004c3c: JUMP
00004c3d: JUMPDEST
00004c3e: SWAP2
00004c3f: POP
00004c40: PUSH2 0x4c48
00004c43: DUP3
00004c44: PUSH2 0x4be1
00004c47: JUMP
00004c48: JUMPDEST
00004c49: PUSH1 0x40
00004c4b: DUP3
00004c4c: ADD
00004c4d: SWAP1
00004c4e: POP
00004c4f: SWAP2
00004c50: SWAP1
00004c51: POP
00004c52: JUMP
00004c53: JUMPDEST
00004c54: PUSH1 0x00
00004c56: PUSH1 0x20
00004c58: DUP3
00004c59: ADD
00004c5a: SWAP1
00004c5b: POP
00004c5c: DUP2
00004c5d: DUP2
00004c5e: SUB
00004c5f: PUSH1 0x00
00004c61: DUP4
00004c62: ADD
00004c63: MSTORE
00004c64: PUSH2 0x4c6c
00004c67: DUP2
00004c68: PUSH2 0x4c30
00004c6b: JUMP
00004c6c: JUMPDEST
00004c6d: SWAP1
00004c6e: POP
00004c6f: SWAP2
00004c70: SWAP1
00004c71: POP
00004c72: JUMP
00004c73: JUMPDEST
00004c74: PUSH1 0x00
00004c76: DUP2
00004c77: MLOAD
00004c78: SWAP1
00004c79: POP
00004c7a: SWAP2
00004c7b: SWAP1
00004c7c: POP
00004c7d: JUMP
00004c7e: JUMPDEST
00004c7f: PUSH1 0x00
00004c81: DUP3
00004c82: DUP3
00004c83: MSTORE
00004c84: PUSH1 0x20
00004c86: DUP3
00004c87: ADD
00004c88: SWAP1
00004c89: POP
00004c8a: SWAP3
00004c8b: SWAP2
00004c8c: POP
00004c8d: POP
00004c8e: JUMP
00004c8f: JUMPDEST
00004c90: PUSH1 0x00
00004c92: PUSH2 0x4c9a
00004c95: DUP3
00004c96: PUSH2 0x4c73
00004c99: JUMP
00004c9a: JUMPDEST
00004c9b: PUSH2 0x4ca4
00004c9e: DUP2
00004c9f: DUP6
00004ca0: PUSH2 0x4c7e
00004ca3: JUMP
00004ca4: JUMPDEST
00004ca5: SWAP4
00004ca6: POP
00004ca7: PUSH2 0x4cb4
00004caa: DUP2
00004cab: DUP6
00004cac: PUSH1 0x20
00004cae: DUP7
00004caf: ADD
00004cb0: PUSH2 0x32a8
00004cb3: JUMP
00004cb4: JUMPDEST
00004cb5: PUSH2 0x4cbd
00004cb8: DUP2
00004cb9: PUSH2 0x32db
00004cbc: JUMP
00004cbd: JUMPDEST
00004cbe: DUP5
00004cbf: ADD
00004cc0: SWAP2
00004cc1: POP
00004cc2: POP
00004cc3: SWAP3
00004cc4: SWAP2
00004cc5: POP
00004cc6: POP
00004cc7: JUMP
00004cc8: JUMPDEST
00004cc9: PUSH1 0x00
00004ccb: PUSH1 0x80
00004ccd: DUP3
00004cce: ADD
00004ccf: SWAP1
00004cd0: POP
00004cd1: PUSH2 0x4cdd
00004cd4: PUSH1 0x00
00004cd6: DUP4
00004cd7: ADD
00004cd8: DUP8
00004cd9: PUSH2 0x33aa
00004cdc: JUMP
00004cdd: JUMPDEST
00004cde: PUSH2 0x4cea
00004ce1: PUSH1 0x20
00004ce3: DUP4
00004ce4: ADD
00004ce5: DUP7
00004ce6: PUSH2 0x33aa
00004ce9: JUMP
00004cea: JUMPDEST
00004ceb: PUSH2 0x4cf7
00004cee: PUSH1 0x40
00004cf0: DUP4
00004cf1: ADD
00004cf2: DUP6
00004cf3: PUSH2 0x3467
00004cf6: JUMP
00004cf7: JUMPDEST
00004cf8: DUP2
00004cf9: DUP2
00004cfa: SUB
00004cfb: PUSH1 0x60
00004cfd: DUP4
00004cfe: ADD
00004cff: MSTORE
00004d00: PUSH2 0x4d09
00004d03: DUP2
00004d04: DUP5
00004d05: PUSH2 0x4c8f
00004d08: JUMP
00004d09: JUMPDEST
00004d0a: SWAP1
00004d0b: POP
00004d0c: SWAP6
00004d0d: SWAP5
00004d0e: POP
00004d0f: POP
00004d10: POP
00004d11: POP
00004d12: POP
00004d13: JUMP
00004d14: JUMPDEST
00004d15: PUSH1 0x00
00004d17: DUP2
00004d18: MLOAD
00004d19: SWAP1
00004d1a: POP
00004d1b: PUSH2 0x4d23
00004d1e: DUP2
00004d1f: PUSH2 0x3172
00004d22: JUMP
00004d23: JUMPDEST
00004d24: SWAP3
00004d25: SWAP2
00004d26: POP
00004d27: POP
00004d28: JUMP
00004d29: JUMPDEST
00004d2a: PUSH1 0x00
00004d2c: PUSH1 0x20
00004d2e: DUP3
00004d2f: DUP5
00004d30: SUB
00004d31: SLT
00004d32: ISZERO
00004d33: PUSH2 0x4d3f
00004d36: JUMPI
00004d37: PUSH2 0x4d3e
00004d3a: PUSH2 0x313c
00004d3d: JUMP
00004d3e: JUMPDEST
00004d3f: JUMPDEST
00004d40: PUSH1 0x00
00004d42: PUSH2 0x4d4d
00004d45: DUP5
00004d46: DUP3
00004d47: DUP6
00004d48: ADD
00004d49: PUSH2 0x4d14
00004d4c: JUMP
00004d4d: JUMPDEST
00004d4e: SWAP2
00004d4f: POP
00004d50: POP
00004d51: SWAP3
00004d52: SWAP2
00004d53: POP
00004d54: POP
00004d55: JUMP
00004d56: INVALID
00004d57: LOG2
00004d58: PUSH5 0x6970667358
00004d5e: UNKNOWN(0x22)
00004d5f: SLT
00004d60: KECCAK256
00004d61: UNKNOWN(0xB8)
00004d62: DUP14
00004d63: SMOD
00004d64: PUSH32 0x2a12b45fa94ac307f832f8532d281ea473c6290b6bb22d3204b1459164736f6c
00004d85: PUSH4 0x4300080d
00004d8a: STOP
00004d8b: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other codex Mint proceeds are trapped in Azaraks because PaymentSplitter never receives funds 85 no
view
evidence_json
{
    "evidence": "`VIPMint`/`allowListMint` are payable and accept ETH but never transfer it out; `withdraw` only calls `_splitter.release`.",
    "locations": [
        "contracts/Contract.sol:1686",
        "contracts/Contract.sol:1702",
        "contracts/Contract.sol:1794"
    ],
    "recommendation": "Forward mint proceeds to the PaymentSplitter (e.g., send `msg.value` to `_splitter` on each mint) or add a direct withdraw function from Azaraks to distribute/transfer ETH. Consider making Azaraks receive ETH and immediately forward to `_splitter`.",
    "exploit_scenario": "Users pay ETH to `VIPMint`/`allowListMint`, but the ETH stays in the Azaraks contract. The only withdrawal path calls `_splitter.release`, which releases funds from the PaymentSplitter contract, not from Azaraks. As a result, all mint revenue is permanently stuck and cannot be withdrawn."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x72ef7df63315507c82aa4895a0d7a07d0de5bca901913ccddc541d25efa22e4a
call_targets: 0x0d8f1817c644101a915852841a3b5933b0b8dcc7
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x72ef7df63315507c82aa4895a0d7a07d0de5bca901913ccddc541d25efa22e4a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0d8f1817c644101a915852841a3b5933b0b8dcc7"
    ],
    "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": "0xc87b56dd",
            "selector": "0xc87b56dd",
            "calldata_variants": [
                "0xc87b56dd",
                "0xc87b56dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdef0c275",
            "selector": "0xdef0c275",
            "calldata_variants": [
                "0xdef0c275",
                "0xdef0c2750000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe8b5498d",
            "selector": "0xe8b5498d",
            "calldata_variants": [
                "0xe8b5498d",
                "0xe8b5498d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe985e9c5",
            "selector": "0xe985e9c5",
            "calldata_variants": [
                "0xe985e9c5",
                "0xe985e9c50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a6fde9",
            "selector": "0xf6a6fde9",
            "calldata_variants": [
                "0xf6a6fde9",
                "0xf6a6fde90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa77b3850",
            "selector": "0xa77b3850",
            "calldata_variants": [
                "0xa77b3850",
                "0xa77b38500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xaf031d51",
            "selector": "0xaf031d51",
            "calldata_variants": [
                "0xaf031d51",
                "0xaf031d510000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3775,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12127,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x72ef7df63315507c82aa4895a0d7a07d0de5bca901913ccddc541d25efa22e4a
call_targets: 0x0d8f1817c644101a915852841a3b5933b0b8dcc7
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x72ef7df63315507c82aa4895a0d7a07d0de5bca901913ccddc541d25efa22e4a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0d8f1817c644101a915852841a3b5933b0b8dcc7"
    ],
    "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": "0xc87b56dd",
            "selector": "0xc87b56dd",
            "calldata_variants": [
                "0xc87b56dd",
                "0xc87b56dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdef0c275",
            "selector": "0xdef0c275",
            "calldata_variants": [
                "0xdef0c275",
                "0xdef0c2750000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe8b5498d",
            "selector": "0xe8b5498d",
            "calldata_variants": [
                "0xe8b5498d",
                "0xe8b5498d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe985e9c5",
            "selector": "0xe985e9c5",
            "calldata_variants": [
                "0xe985e9c5",
                "0xe985e9c50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a6fde9",
            "selector": "0xf6a6fde9",
            "calldata_variants": [
                "0xf6a6fde9",
                "0xf6a6fde90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa77b3850",
            "selector": "0xa77b3850",
            "calldata_variants": [
                "0xa77b3850",
                "0xa77b38500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xaf031d51",
            "selector": "0xaf031d51",
            "calldata_variants": [
                "0xaf031d51",
                "0xaf031d510000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3775,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12127,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
medium auth codex Uninitialized signerAddress allows anyone to mint with invalid signatures 75 no
view
evidence_json
{
    "evidence": "Signature checks compare to `signerAddress` without ensuring it is non-zero.",
    "locations": [
        "contracts/Contract.sol:1650",
        "contracts/Contract.sol:1686",
        "contracts/Contract.sol:1702",
        "contracts/Contract.sol:1744",
        "contracts/Contract.sol:1774",
        "contracts/Contract.sol:1779"
    ],
    "recommendation": "Initialize `signerAddress` in the constructor and add `require(signerAddress != address(0))` to signature-gated functions. Also reject `ecrecover` returning `address(0)` and validate `v`/`s` ranges.",
    "exploit_scenario": "`signerAddress` defaults to `address(0)` and can be left unset after deployment (or set to zero). `ecrecover` returns `address(0)` for invalid signatures, so the `verifySignature(...) == signerAddress` check passes. An attacker can mint VIP tokens for free (or allowlist tokens by paying) using `v=0,r=0,s=0` before the signer is set, potentially consuming the entire supply (limited only per-wallet)."
}
low auth codex Signatures lack domain separation, enabling cross-chain or cross-deployment replay 65 no
view
evidence_json
{
    "evidence": "Message construction only includes sender, type string, amount/ids, bounty, and nonce.",
    "locations": [
        "contracts/Contract.sol:1688",
        "contracts/Contract.sol:1704",
        "contracts/Contract.sol:1750",
        "contracts/Contract.sol:1779"
    ],
    "recommendation": "Include `block.chainid` and `address(this)` in the signed payload, or migrate to EIP-712 typed structured data signatures.",
    "exploit_scenario": "The signed message omits chain id and contract address. A valid allowlist/VIP/sacrifice signature from one deployment can be replayed on another deployment (or chain) that uses the same signer key and message format, bypassing intended per-deployment gating."
}