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

Analysis Run

6059d73e-99f5-4047-823b-ce6f9258ab84

failed
Chain ID
1
Address
Block Number
Created
Mon, Jan 5, 2026 6:15 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
1
Validated
1
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 1 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31729 report.consolidate complete 1 / 1 3 months ago
95797 artifact.fetch failed 1 / 3 1 week ago
95798 tool.cast_disasm complete 1 / 3 1 week ago
95799 analysis.bundle complete 1 / 3 1 week ago
95800 capability.graph complete 1 / 3 1 week ago
95801 detector.run complete 1 / 3 1 week ago
95802 validation.fork complete 1 / 3 1 week ago
113791 tool.slither failed 2 / 2 1 week ago

Artifact

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

Slither

tool.slither
Status
failed slither failed (exit 1): 'forge clean' running (wd: /tmp/slither-abnacv7k) 'forge config --json' running 'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-abnacv7k) 'forge' returned non-zero exit code 1 2026-04-05T07:56:27.454375Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/FixedPointMathLib.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.454695Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.454918Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.454932Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.454969Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.454979Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455317Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455329Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455404Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455415Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455829Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC1155.sol": No such file or directory (os error 2) stdout: 2026-04-05T07:56:27.455845Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2) stdout: Unable to resolve imports: stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/DineroERC20.sol" stdout: "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEthValidators.sol" stdout: "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthWithdrawLogic.sol" stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEthValidators.sol" stdout: "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthConfigurationLogic.sol" stdout: "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEth.sol" stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthWithdrawLogic.sol" stdout: "solmate/tokens/ERC1155.sol" in "/tmp/slither-abnacv7k/src/tokens/UpxEth.sol" stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEth.sol" stdout: "solmate/utils/FixedPointMathLib.sol" in "/tmp/slither-abnacv7k/src/AutoPxEth.sol" stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/tokens/WrappedToken.sol" stdout: "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthConfigurationLogic.sol" stdout: with remappings: stdout: ds-test/=/tmp/slither-abnacv7k/lib/forge-std/lib/ds-test/src/ stdout: forge-std/=/tmp/slither-abnacv7k/lib/forge-std/src/ stdout: openzeppelin-contracts/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts/ stdout: solmate/=/tmp/slither-abnacv7k/lib/solmate/ stdout: aave-v3-core/=/tmp/slither-abnacv7k/lib/aave-v3-core/contracts/ stdout: eigenlayer/=/tmp/slither-abnacv7k/lib/eigenlayer-contracts/src/contracts/ stdout: openzeppelin-contracts-upgradeable/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/ stdout: @openzeppelin/contracts-upgradeable/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/contracts/ stdout: @openzeppelin/contracts/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts/contracts/ stdout: erc4626-tests/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ stdout: openzeppelin-foundry-upgrades/=/tmp/slither-abnacv7k/lib/openzeppelin-foundry-upgrades/src/ stdout: solidity-stringutils/=/tmp/slither-abnacv7k/lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/ stdout: Compiling 58 files with Solc 0.8.25 stdout: Solc 0.8.25 finished in 30.39ms Error: Compiler run failed: stderr: Error (6275): Source "lib/solmate/utils/FixedPointMathLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/utils/FixedPointMathLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/AutoPxEth.sol:9:1: stderr: | stderr: 9 | import {FixedPointMathLib} from "solmate/utils/FixedPointMathLib.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/DineroERC20.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/InstitutionalPirexEth.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/InstitutionalPirexEth.sol:5:1: stderr: | stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/InstitutionalPirexEthValidators.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/InstitutionalPirexEthValidators.sol:5:1: stderr: | stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/libraries/InstitutionalPirexEthConfigurationLogic.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/libraries/InstitutionalPirexEthConfigurationLogic.sol:5:1: stderr: | stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/libraries/InstitutionalPirexEthWithdrawLogic.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/libraries/InstitutionalPirexEthWithdrawLogic.sol:5:1: stderr: | stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC1155.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC1155.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/tokens/UpxEth.sol:6:1: stderr: | stderr: 6 | import {ERC1155} from "solmate/tokens/ERC1155.sol"; stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr: stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k". stderr: --> src/tokens/WrappedToken.sol:4:1: stderr: | stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol"; 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-abnacv7k/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-abnacv7k)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-abnacv7k)
'forge' returned non-zero exit code 1
2026-04-05T07:56:27.454375Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/FixedPointMathLib.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.454695Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.454918Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.454932Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.454969Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.454979Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455317Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455329Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455404Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455415Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/utils/SafeTransferLib.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455829Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC1155.sol": No such file or directory (os error 2)
stdout: 2026-04-05T07:56:27.455845Z ERROR foundry_compilers_artifacts_solc::sources: error="/tmp/slither-abnacv7k/lib/solmate/tokens/ERC20.sol": No such file or directory (os error 2)
stdout: Unable to resolve imports:
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/DineroERC20.sol"
stdout:       "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEthValidators.sol"
stdout:       "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthWithdrawLogic.sol"
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEthValidators.sol"
stdout:       "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthConfigurationLogic.sol"
stdout:       "solmate/utils/SafeTransferLib.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEth.sol"
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthWithdrawLogic.sol"
stdout:       "solmate/tokens/ERC1155.sol" in "/tmp/slither-abnacv7k/src/tokens/UpxEth.sol"
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/InstitutionalPirexEth.sol"
stdout:       "solmate/utils/FixedPointMathLib.sol" in "/tmp/slither-abnacv7k/src/AutoPxEth.sol"
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/tokens/WrappedToken.sol"
stdout:       "solmate/tokens/ERC20.sol" in "/tmp/slither-abnacv7k/src/libraries/InstitutionalPirexEthConfigurationLogic.sol"
stdout: with remappings:
stdout:       ds-test/=/tmp/slither-abnacv7k/lib/forge-std/lib/ds-test/src/
stdout:       forge-std/=/tmp/slither-abnacv7k/lib/forge-std/src/
stdout:       openzeppelin-contracts/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts/
stdout:       solmate/=/tmp/slither-abnacv7k/lib/solmate/
stdout:       aave-v3-core/=/tmp/slither-abnacv7k/lib/aave-v3-core/contracts/
stdout:       eigenlayer/=/tmp/slither-abnacv7k/lib/eigenlayer-contracts/src/contracts/
stdout:       openzeppelin-contracts-upgradeable/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/
stdout:       @openzeppelin/contracts-upgradeable/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/contracts/
stdout:       @openzeppelin/contracts/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts/contracts/
stdout:       erc4626-tests/=/tmp/slither-abnacv7k/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/
stdout:       openzeppelin-foundry-upgrades/=/tmp/slither-abnacv7k/lib/openzeppelin-foundry-upgrades/src/
stdout:       solidity-stringutils/=/tmp/slither-abnacv7k/lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/
stdout: Compiling 58 files with Solc 0.8.25
stdout: Solc 0.8.25 finished in 30.39ms
Error: Compiler run failed:
stderr: Error (6275): Source "lib/solmate/utils/FixedPointMathLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/utils/FixedPointMathLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/AutoPxEth.sol:9:1:
stderr:   |
stderr: 9 | import {FixedPointMathLib} from "solmate/utils/FixedPointMathLib.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/DineroERC20.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/InstitutionalPirexEth.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/InstitutionalPirexEth.sol:5:1:
stderr:   |
stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/InstitutionalPirexEthValidators.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/InstitutionalPirexEthValidators.sol:5:1:
stderr:   |
stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/libraries/InstitutionalPirexEthConfigurationLogic.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/libraries/InstitutionalPirexEthConfigurationLogic.sol:5:1:
stderr:   |
stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/libraries/InstitutionalPirexEthWithdrawLogic.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/utils/SafeTransferLib.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/libraries/InstitutionalPirexEthWithdrawLogic.sol:5:1:
stderr:   |
stderr: 5 | import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC1155.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC1155.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/tokens/UpxEth.sol:6:1:
stderr:   |
stderr: 6 | import {ERC1155} from "solmate/tokens/ERC1155.sol";
stderr:   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr: 
stderr: Error (6275): Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr: ParserError: Source "lib/solmate/tokens/ERC20.sol" not found: File not found. Searched the following locations: "/tmp/slither-abnacv7k".
stderr:  --> src/tokens/WrappedToken.sol:4:1:
stderr:   |
stderr: 4 | import {ERC20} from "solmate/tokens/ERC20.sol";
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-abnacv7k/out/build-info is not a directory.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under the stated assumptions.
View stderr
[codex:1153465] OpenAI Codex v0.77.0 (research preview)
[codex:1153465] --------
[codex:1153465] workdir: /tmp/codex-multi-kn06r2an
[codex:1153465] model: gpt-5.2-codex
[codex:1153465] provider: openai
[codex:1153465] approval: never
[codex:1153465] sandbox: read-only
[codex:1153465] reasoning effort: xhigh
[codex:1153465] reasoning summaries: auto
[codex:1153465] session id: 019b8f59-1b6d-7233-975b-e57f5f546dda
[codex:1153465] --------
[codex:1153465] user
[codex:1153465] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1153465] 
[codex:1153465] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1153465] 
[codex:1153465] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1153465] - Gas inefficiency, code quality, naming, or best practices
[codex:1153465] - Theoretical vulnerabilities without a clear extraction path
[codex:1153465] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1153465] - Front-running unless it enables theft beyond MEV
[codex:1153465] - DoS, griefing, or issues that don't result in attacker profit
[codex:1153465] - Missing events, view function issues, or informational findings
[codex:1153465] 
[codex:1153465] HIGH-VALUE PATTERNS TO HUNT:
[codex:1153465] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1153465] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1153465] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1153465] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1153465] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1153465] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1153465] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1153465] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1153465] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1153465] 
[codex:1153465] For each finding, you MUST provide:
[codex:1153465] 1. Exact file and line numbers of vulnerable code
[codex:1153465] 2. Step-by-step exploit transaction sequence
[codex:1153465] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1153465] 
[codex:1153465] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1153465] 
[codex:1153465] Output MUST be valid JSON matching the provided schema.
[codex:1153465] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1153465] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1153465] mcp startup: no servers
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Checking for audit-related instructions**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc ls in /tmp/codex-multi-kn06r2an succeeded in 5ms:
[codex:1153465] AUDIT_BUNDLE.txt
[codex:1153465] codex-output-schema.json
[codex:1153465] contracts
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Reading AUDIT_BUNDLE.txt**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1153465] 
[codex:1153465] ================================================================================
[codex:1153465] FILE: contracts/src/AutoPxEth.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {Ownable2StepUpgradeable} from "openzeppelin-contracts-upgradeable/contracts/access/Ownable2StepUpgradeable.sol";
[codex:1153465] import {ERC20Upgradeable} from "openzeppelin-contracts-upgradeable/contracts/token/ERC20/ERC20Upgradeable.sol";
[codex:1153465] import {ERC4626Upgradeable} from "openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC4626Upgradeable.sol";
[codex:1153465] import {IERC20} from "openzeppelin-contracts/contracts/token/ERC20/IERC20.sol";
[codex:1153465] import {ERC20} from "openzeppelin-contracts/contracts/token/ERC20/ERC20.sol";
[codex:1153465] import {FixedPointMathLib} from "solmate/utils/FixedPointMathLib.sol";
[codex:1153465] import {SafeERC20} from "openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1153465] import {Errors} from "./libraries/Errors.sol";
[codex:1153465] import {AutoPxEthStorage} from "./AutoPxEthStorage.sol";
[codex:1153465] import {IPirexEth} from "./interfaces/IPirexEth.sol";
[codex:1153465] import {Initializable} from "openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol";
[codex:1153465] 
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Planning thorough audit bundle review**
[codex:1153465] 
[codex:1153465] I’m figuring out how to efficiently scan the large AUDIT_BUNDLE.txt (nearly 5,000 lines) to find exploitable issues like reentrancy or suspicious calls. Since the user wants the whole file read, I’m considering listing file boundaries using ripgrep (rg) and then inspecting relevant sections individually with tools like sed or awk to manage the length and focus my review.
[codex:1153465] exec
[codex:1153465] /bin/bash -lc 'rg "''^FILE:" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-kn06r2an succeeded in 15ms:
[codex:1153465] 4:FILE: contracts/src/AutoPxEth.sol
[codex:1153465] 487:FILE: contracts/src/AutoPxEthStorage.sol
[codex:1153465] 569:FILE: contracts/src/DineroERC20.sol
[codex:1153465] 650:FILE: contracts/src/InstitutionPirexEthStorage.sol
[codex:1153465] 735:FILE: contracts/src/InstitutionalPirexEth.sol
[codex:1153465] 1065:FILE: contracts/src/InstitutionalPirexEthValidators.sol
[codex:1153465] 1653:FILE: contracts/src/PxEth.sol
[codex:1153465] 1708:FILE: contracts/src/interfaces/IDepositContract.sol
[codex:1153465] 1736:FILE: contracts/src/interfaces/IOracleAdapter.sol
[codex:1153465] 1758:FILE: contracts/src/interfaces/IPirexEth.sol
[codex:1153465] 1833:FILE: contracts/src/interfaces/IPirexFees.sol
[codex:1153465] 1860:FILE: contracts/src/libraries/Constants.sol
[codex:1153465] 1922:FILE: contracts/src/libraries/DataTypes.sol
[codex:1153465] 2184:FILE: contracts/src/libraries/Errors.sol
[codex:1153465] 2402:FILE: contracts/src/libraries/InstitutionalPirexEthConfigurationLogic.sol
[codex:1153465] 2876:FILE: contracts/src/libraries/InstitutionalPirexEthDepositLogic.sol
[codex:1153465] 3354:FILE: contracts/src/libraries/InstitutionalPirexEthGenericLogic.sol
[codex:1153465] 3389:FILE: contracts/src/libraries/InstitutionalPirexEthValidationLogic.sol
[codex:1153465] 3617:FILE: contracts/src/libraries/InstitutionalPirexEthValidatorManagementLogic.sol
[codex:1153465] 3696:FILE: contracts/src/libraries/InstitutionalPirexEthWithdrawLogic.sol
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Analyzing potential reentrancy in contracts**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '650,734p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 10ms:
[codex:1153465] FILE: contracts/src/InstitutionPirexEthStorage.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {DataTypes} from "./libraries/DataTypes.sol";
[codex:1153465] import {IPirexEth} from "./interfaces/IPirexEth.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title  InstitutionPirexEthStorage
[codex:1153465]  * @notice InstitutionPirexEth storage
[codex:1153465]  * @dev    This contract packages storage variable of InstitutionPirexEth
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] 
[codex:1153465] abstract contract InstitutionPirexEthStorage is IPirexEth {
[codex:1153465]     /**
[codex:1153465]      * @notice Reserved storage space for future layout changes.
[codex:1153465]      * @dev This reserved storage space ensures compatibility with future upgrades or changes to the contract's storage layout.
[codex:1153465]      *      It is left unused but reserved to accommodate potential modifications without affecting existing storage variables.
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Preparing next InstitutionalPirexEth step**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '735,1064p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/InstitutionalPirexEth.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1153465] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1153465] import {Errors} from "./libraries/Errors.sol";
[codex:1153465] import {DataTypes} from "./libraries/DataTypes.sol";
[codex:1153465] import {Constants} from "./libraries/Constants.sol";
[codex:1153465] import {IPirexFees} from "./interfaces/IPirexFees.sol";
[codex:1153465] import {InstitutionalPirexEthValidators} from "./InstitutionalPirexEthValidators.sol";
[codex:1153465] import {InstitutionalPirexEthDepositLogic} from "./libraries/InstitutionalPirexEthDepositLogic.sol";
[codex:1153465] import {InstitutionalPirexEthConfigurationLogic} from "./libraries/InstitutionalPirexEthConfigurationLogic.sol";
[codex:1153465] import {InstitutionalPirexEthWithdrawLogic} from "./libraries/InstitutionalPirexEthWithdrawLogic.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title  Main contract for handling interactions with pxETH
[codex:1153465]  * @notice This contract manages various interactions with pxETH, such as deposits, redemptions, and fee adjustments.
[codex:1153465]  * @dev    This contract inherits from InstitutionalPirexEthValidators and utilizes SafeTransferLib for ERC20 token transfers.
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Moving to next file**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '1065,1652p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/InstitutionalPirexEthValidators.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1153465] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1153465] import {ReentrancyGuardUpgradeable} from "openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardUpgradeable.sol";
[codex:1153465] import {AccessControlDefaultAdminRulesUpgradeable} from "openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlDefaultAdminRulesUpgradeable.sol";
[codex:1153465] import {UpxEth} from "./tokens/UpxEth.sol";
[codex:1153465] import {Errors} from "./libraries/Errors.sol";
[codex:1153465] import {DataTypes} from "./libraries/DataTypes.sol";
[codex:1153465] import {InstitutionalPirexEthWithdrawLogic} from "./libraries/InstitutionalPirexEthWithdrawLogic.sol";
[codex:1153465] import {InstitutionalPirexEthConfigurationLogic} from "./libraries/InstitutionalPirexEthConfigurationLogic.sol";
[codex:1153465] import {InstitutionalPirexEthDepositLogic} from "./libraries/InstitutionalPirexEthDepositLogic.sol";
[codex:1153465] import {InstitutionalPirexEthValidatorManagementLogic} from "./libraries/InstitutionalPirexEthValidatorManagementLogic.sol";
[codex:1153465] import {Constants} from "./libraries/Constants.sol";
[codex:1153465] import {ValidatorQueue} from "./libraries/ValidatorQueue.sol";
[codex:1153465] import {PxEth} from "./PxEth.sol";
[codex:1153465] import {InstitutionPirexEthStorage} from "./InstitutionPirexEthStorage.sol";
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Opening next contract file**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '1653,1707p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 5ms:
[codex:1153465] FILE: contracts/src/PxEth.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {DineroERC20} from "./DineroERC20.sol";
[codex:1153465] import {Errors} from "./libraries/Errors.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title  PxEth
[codex:1153465]  * @notice The PxEth token, the main token for the PirexEth system used in the Dinero ecosystem.
[codex:1153465]  * @dev    Extends the DineroERC20 contract and includes additional functionality.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] contract PxEth is DineroERC20 {
[codex:1153465]     // Roles
[codex:1153465]     /**
[codex:1153465]      * @notice The OPERATOR_ROLE role assigned for operator functions in the PxEth token contract.
[codex:1153465]      * @dev    Used to control access to critical functions.
[codex:1153465]      */
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Inspecting full DineroERC20 contract**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '569,649p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 7ms:
[codex:1153465] FILE: contracts/src/DineroERC20.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1153465] import {AccessControlDefaultAdminRules} from "openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol";
[codex:1153465] import {Errors} from "./libraries/Errors.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title DineroERC20
[codex:1153465]  * @dev A Standard ERC20 token with minting and burning with access control.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] contract DineroERC20 is ERC20, AccessControlDefaultAdminRules {
[codex:1153465]     // Roles
[codex:1153465]     /**
[codex:1153465]      * @dev Bytes32 constant representing the role to mint new tokens.
[codex:1153465]      */
[codex:1153465]     bytes32 private constant MINTER_ROLE = keccak256("MINTER_ROLE");
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Preparing to inspect logic libraries**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '1860,1921p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 7ms:
[codex:1153465] FILE: contracts/src/libraries/Constants.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] library Constants {
[codex:1153465]     /**
[codex:1153465]      * @notice Denominator used for mathematical calculations.
[codex:1153465]      * @dev    This constant is used as a divisor in various mathematical calculations
[codex:1153465]      *         throughout the contract to achieve precise percentages and ratios.
[codex:1153465]      */
[codex:1153465]     uint256 public constant DENOMINATOR = 1_000_000;
[codex:1153465] 
[codex:1153465]     // Roles
[codex:1153465]     /**
[codex:1153465]      * @notice The role assigned to external keepers responsible for specific protocol functions.
[codex:1153465]      * @dev    This role is assigned to external entities that are responsible for performing specific
[codex:1153465]      *         functions within the protocol, such as validator upkeep and maintenance.
[codex:1153465]      */
[codex:1153465]     bytes32 public constant KEEPER_ROLE = keccak256("KEEPER_ROLE");
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Identifying data types**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '1922,2183p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/DataTypes.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] 
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {WrappedToken} from "../tokens/WrappedToken.sol";
[codex:1153465] import {AutoPxEth} from "../AutoPxEth.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] import {IPirexFees} from "../interfaces/IPirexFees.sol";
[codex:1153465] import {UpxEth} from "../tokens/UpxEth.sol";
[codex:1153465] import {IOracleAdapter} from "../interfaces/IOracleAdapter.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title DataTypes
[codex:1153465]  * @notice Library containing various data structures and enums for the PirexEth.
[codex:1153465]  * @dev This library provides data structures and enums crucial for the functionality of the Pirex protocol.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] library DataTypes {
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Checking configuration logic**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '2402,2875p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthConfigurationLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1153465] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] import {Constants} from "./Constants.sol";
[codex:1153465] import {WrappedToken} from "../tokens/WrappedToken.sol";
[codex:1153465] import {AutoPxEth} from "../AutoPxEth.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] import {UpxEth} from "../tokens/UpxEth.sol";
[codex:1153465] import {InstitutionalPirexEthValidationLogic} from "./InstitutionalPirexEthValidationLogic.sol";
[codex:1153465] import {IOracleAdapter} from "../interfaces/IOracleAdapter.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title InstitutionalPirexEthConfigurationLogic
[codex:1153465]  * @notice Library containing the logic for Institutional PirexEth configurations.
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Examining deposit logic for issues**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '2876,3353p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthDepositLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] import {Constants} from "./Constants.sol";
[codex:1153465] import {AutoPxEth} from "../AutoPxEth.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] import {InstitutionalPirexEthValidationLogic} from "./InstitutionalPirexEthValidationLogic.sol";
[codex:1153465] import {InstitutionalPirexEthConfigurationLogic} from "./InstitutionalPirexEthConfigurationLogic.sol";
[codex:1153465] import {IDepositContract} from "../interfaces/IDepositContract.sol";
[codex:1153465] import {ValidatorQueue} from "./ValidatorQueue.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title  InstitutionalPirexEthDepositLogic
[codex:1153465]  * @notice Library containing the logic for Institutional PirexEth deposit operations.
[codex:1153465]  * @dev    This library provides the implementation for various deposit operations related to Institutional PirexEth.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Inspecting withdrawal logic**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '3696,4334p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthWithdrawLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1153465] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {Constants} from "./Constants.sol";
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] import {WrappedToken} from "../tokens/WrappedToken.sol";
[codex:1153465] import {AutoPxEth} from "../AutoPxEth.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] import {IPirexFees} from "../interfaces/IPirexFees.sol";
[codex:1153465] import {UpxEth} from "../tokens/UpxEth.sol";
[codex:1153465] import {InstitutionalPirexEthValidationLogic} from "./InstitutionalPirexEthValidationLogic.sol";
[codex:1153465] import {InstitutionalPirexEthConfigurationLogic} from "./InstitutionalPirexEthConfigurationLogic.sol";
[codex:1153465] import {InstitutionalPirexEthGenericLogic} from "./InstitutionalPirexEthGenericLogic.sol";
[codex:1153465] import {ValidatorQueue} from "./ValidatorQueue.sol";
[codex:1153465] 
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Investigating fee calculation and rounding issues**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '3354,3388p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 7ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthGenericLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {Constants} from "./Constants.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title InstitutionalPirexEthGenericLogic
[codex:1153465]  * @notice Library containing the logic for Institutional PirexEth utilities.
[codex:1153465]  * @dev This library provides the implementation for various utilities related to Institutional PirexEth.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] library InstitutionalPirexEthGenericLogic {
[codex:1153465]     /**
[codex:1153465]      * @notice Calculates the post-fee asset amount and fee amount based on the specified fee type and total assets.
[codex:1153465]      * @dev This function calculates the post-fee asset amount and fee amount based on the specified fee type and total assets.
[codex:1153465]      * @param   f              DataTypes.Fees  representing the fee type.
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Identifying validation logic**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '3389,3616p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 7ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthValidationLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] import {Constants} from "./Constants.sol";
[codex:1153465] import {PxEth} from "../PxEth.sol";
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title InstitutionalPirexEthValidationLogic
[codex:1153465]  * @notice Library containing the logic for Institutional PirexEth validation operations.
[codex:1153465]  * @dev This library provides the implementation for various validation operations related to Institutional PirexEth.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] library InstitutionalPirexEthValidationLogic {
[codex:1153465]     /**
[codex:1153465]      * @notice Validates the setting of a contract address.
[codex:1153465]      * @dev This function checks the validity of setting a contract address.
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Reviewing validator management logic**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '3617,3695p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/InstitutionalPirexEthValidatorManagementLogic.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {ValidatorQueue} from "./ValidatorQueue.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title InstitutionalPirexEthValidatorManagementLogic
[codex:1153465]  * @notice Library containing the logic for Institutional PirexEth validator management operations.
[codex:1153465]  * @dev This library provides the implementation for various validator management operation related to Institutional PirexEth.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] library InstitutionalPirexEthValidatorManagementLogic {
[codex:1153465]     /**
[codex:1153465]      * @dev This library extends the functionality of the DataTypes.ValidatorDeque data structure to facilitate validator management.
[codex:1153465]      */
[codex:1153465]     using ValidatorQueue for DataTypes.ValidatorDeque;
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Reviewing ValidatorQueue file**
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '4335,4685p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 6ms:
[codex:1153465] FILE: contracts/src/libraries/ValidatorQueue.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {SafeCast} from "openzeppelin-contracts/contracts/utils/math/SafeCast.sol";
[codex:1153465] import {DataTypes} from "./DataTypes.sol";
[codex:1153465] import {Errors} from "./Errors.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title ValidatorQueue
[codex:1153465]  * @notice Library for managing a FIFO queue of validators in the Pirex protocol.
[codex:1153465]  * @dev This library provides functions for adding, swapping, and removing validators in the validator queue.
[codex:1153465]  * It also includes functions for popping validators from the end of the queue, retrieving validator information, and clearing the entire queue.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] library ValidatorQueue {
[codex:1153465]     /**
[codex:1153465]      * @notice Emitted when a validator is added to the queue.
[codex:1153465]      * @dev This event is emitted when a validator is successfully added to the end of the queue.
[codex:1153465] 
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Examining potential token and redemption vulnerabilities**
[codex:1153465] 
[codex:1153465] I’m digging through the contracts to track token flows and checks, especially around WrappedToken approvals, fees, and redemption logic. I see careful use of roles and storage slots, which seems mostly safe, but I’m zeroing in on rounding in redemption and whether validator exit batching could be gamed or mismatched. Reentrancy is mostly guarded by nonReentrant modifiers on main functions, though some external calls might influence state unexpectedly. The fee distribution and operator approval logic are intricate; I’m verifying permission scopes carefully. Overall, I’m validating if any subtle rounding, allowance, or external call order could let someone profit unexpectedly or disrupt validator exit scheduling.
[codex:1153465] thinking
[codex:1153465] **Analyzing token transfer and redemption interplay**
[codex:1153465] 
[codex:1153465] I’m tracing how token transfers trigger redemptions, especially the interaction between AutoPxEth’s redirect and PirexEth’s initiateRedemption. There might be mismatch between token types expected and actual transferred amounts, causing redemptions to fail or revert. I’m checking roles, allowances, and how wrapped tokens handle approvals and transfers to understand if any indirect pathway could allow free minting or bypass restrictions.
[codex:1153465] exec
[codex:1153465] /bin/bash -lc "sed -n '1758,1832p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kn06r2an succeeded in 8ms:
[codex:1153465] FILE: contracts/src/interfaces/IPirexEth.sol
[codex:1153465] ================================================================================
[codex:1153465] // SPDX-License-Identifier: MIT
[codex:1153465] 
[codex:1153465] pragma solidity 0.8.25;
[codex:1153465] 
[codex:1153465] import {DataTypes} from "../libraries/DataTypes.sol";
[codex:1153465] 
[codex:1153465] /**
[codex:1153465]  * @title  IPirexEth
[codex:1153465]  * @notice Interface for the PirexEth contract
[codex:1153465]  * @dev    This interface defines the methods for interacting with PirexEth.
[codex:1153465]  * @author redactedcartel.finance
[codex:1153465]  */
[codex:1153465] interface IPirexEth {
[codex:1153465]     /**
[codex:1153465]      * @notice Initiate redemption by burning pxETH in return for upxETH
[codex:1153465]      * @dev    This function allows the initiation of redemption by burning pxETH in exchange for upxETH.
[codex:1153465]      * @param  _assets                      uint256  The amount of assets to burn. If the caller is AutoPxEth, then apxETH; pxETH otherwise.
[codex:1153465]      * @param  _receiver                    address  The address to receive upxETH.
[codex:1153465] 
[codex:1153465] 
[codex:1153465] 
[codex:1153465] thinking
[codex:1153465] **Analyzing asset handling and potential tokenomics issues**
[codex:1153465] thinking
[codex:1153465] **Reviewing deposit logic and reentrancy protections**
[codex:1153465] 
[codex:1153465] This part dives deeper into deposit loops, preDeposit handling, and confirms that nonReentrant guards block reentrancy risks during key external calls. I’m checking if buffer accounting or approval logic can be exploited, but most admin-only functions and access controls appear solid. The complex interactions hint at no clear profit path, especially with restricted roles and proper revert flows.
[codex:1153465] thinking
[codex:1153465] ```json
[codex:1153465] {
[codex:1153465]   "no_findings": true,
[codex:1153465]   "summary": "No concrete exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under stated assumptions.",
[codex:1153465]   "findings": []
[codex:1153465] }
[codex:1153465] ```
[codex:1153465] codex
[codex:1153465] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under the stated assumptions.","findings":[]}
[codex:1153465] tokens used
[codex:1153465] 74,839
[codex:1153465] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under the stated assumptions.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-05T18:15:02.156424+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under the stated assumptions.",
    "raw_final": {
        "summary": "No concrete, exploitable profit paths identified after reviewing AUDIT_BUNDLE.txt under the stated assumptions.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
20
Selfdestruct
2
CREATE2
1
CALL-family (heavy)
0
EXT*/BALANCE
14
Total opcodes
11660
Flags
delegatecall_present selfdestruct_present create_opcodes_present heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0386
0000000c: JUMPI
0000000d: PUSH0
0000000e: CALLDATALOAD
0000000f: PUSH1 0xe0
00000011: SHR
00000012: DUP1
00000013: PUSH4 0x8da5cb5b
00000018: GT
00000019: PUSH2 0x01d3
0000001c: JUMPI
0000001d: DUP1
0000001e: PUSH4 0xc34d97d1
00000023: GT
00000024: PUSH2 0x00fd
00000027: JUMPI
00000028: DUP1
00000029: PUSH4 0xd602b9fd
0000002e: GT
0000002f: PUSH2 0x009d
00000032: JUMPI
00000033: DUP1
00000034: PUSH4 0xeb2b01c3
00000039: GT
0000003a: PUSH2 0x006d
0000003d: JUMPI
0000003e: DUP1
0000003f: PUSH4 0xeb2b01c3
00000044: EQ
00000045: PUSH2 0x0b3d
00000048: JUMPI
00000049: DUP1
0000004a: PUSH4 0xf7ab086e
0000004f: EQ
00000050: PUSH2 0x0b70
00000053: JUMPI
00000054: DUP1
00000055: PUSH4 0xfde90428
0000005a: EQ
0000005b: PUSH2 0x0b8f
0000005e: JUMPI
0000005f: DUP1
00000060: PUSH4 0xfe196cf8
00000065: EQ
00000066: PUSH2 0x0c7c
00000069: JUMPI
0000006a: PUSH0
0000006b: DUP1
0000006c: REVERT
0000006d: JUMPDEST
0000006e: DUP1
0000006f: PUSH4 0xd602b9fd
00000074: EQ
00000075: PUSH2 0x0ad8
00000078: JUMPI
00000079: DUP1
0000007a: PUSH4 0xd65ea232
0000007f: EQ
00000080: PUSH2 0x0aec
00000083: JUMPI
00000084: DUP1
00000085: PUSH4 0xddc63262
0000008a: EQ
0000008b: PUSH2 0x0b0b
0000008e: JUMPI
0000008f: DUP1
00000090: PUSH4 0xe7e54748
00000095: EQ
00000096: PUSH2 0x0b1e
00000099: JUMPI
0000009a: PUSH0
0000009b: DUP1
0000009c: REVERT
0000009d: JUMPDEST
0000009e: DUP1
0000009f: PUSH4 0xcefc1429
000000a4: GT
000000a5: PUSH2 0x00d8
000000a8: JUMPI
000000a9: DUP1
000000aa: PUSH4 0xcefc1429
000000af: EQ
000000b0: PUSH2 0x0a4c
000000b3: JUMPI
000000b4: DUP1
000000b5: PUSH4 0xcf6eefb7
000000ba: EQ
000000bb: PUSH2 0x0a60
000000be: JUMPI
000000bf: DUP1
000000c0: PUSH4 0xd2149288
000000c5: EQ
000000c6: PUSH2 0x0a9a
000000c9: JUMPI
000000ca: DUP1
000000cb: PUSH4 0xd547741f
000000d0: EQ
000000d1: PUSH2 0x0ab9
000000d4: JUMPI
000000d5: PUSH0
000000d6: DUP1
000000d7: REVERT
000000d8: JUMPDEST
000000d9: DUP1
000000da: PUSH4 0xc34d97d1
000000df: EQ
000000e0: PUSH2 0x09eb
000000e3: JUMPI
000000e4: DUP1
000000e5: PUSH4 0xca72be29
000000ea: EQ
000000eb: PUSH2 0x0a19
000000ee: JUMPI
000000ef: DUP1
000000f0: PUSH4 0xcc8463c8
000000f5: EQ
000000f6: PUSH2 0x0a38
000000f9: JUMPI
000000fa: PUSH0
000000fb: DUP1
000000fc: REVERT
000000fd: JUMPDEST
000000fe: DUP1
000000ff: PUSH4 0xa5eb31bf
00000104: GT
00000105: PUSH2 0x0173
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0xb09c18d7
0000010f: GT
00000110: PUSH2 0x0143
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0xb09c18d7
0000011a: EQ
0000011b: PUSH2 0x0954
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0xb5e5e64c
00000125: EQ
00000126: PUSH2 0x0973
00000129: JUMPI
0000012a: DUP1
0000012b: PUSH4 0xbabd37eb
00000130: EQ
00000131: PUSH2 0x0987
00000134: JUMPI
00000135: DUP1
00000136: PUSH4 0xbc8a72b6
0000013b: EQ
0000013c: PUSH2 0x09b8
0000013f: JUMPI
00000140: PUSH0
00000141: DUP1
00000142: REVERT
00000143: JUMPDEST
00000144: DUP1
00000145: PUSH4 0xa5eb31bf
0000014a: EQ
0000014b: PUSH2 0x08a8
0000014e: JUMPI
0000014f: DUP1
00000150: PUSH4 0xa62277f0
00000155: EQ
00000156: PUSH2 0x08db
00000159: JUMPI
0000015a: DUP1
0000015b: PUSH4 0xad45517d
00000160: EQ
00000161: PUSH2 0x08fa
00000164: JUMPI
00000165: DUP1
00000166: PUSH4 0xadc9740c
0000016b: EQ
0000016c: PUSH2 0x0941
0000016f: JUMPI
00000170: PUSH0
00000171: DUP1
00000172: REVERT
00000173: JUMPDEST
00000174: DUP1
00000175: PUSH4 0x9a82c615
0000017a: GT
0000017b: PUSH2 0x01ae
0000017e: JUMPI
0000017f: DUP1
00000180: PUSH4 0x9a82c615
00000185: EQ
00000186: PUSH2 0x07c3
00000189: JUMPI
0000018a: DUP1
0000018b: PUSH4 0x9da93604
00000190: EQ
00000191: PUSH2 0x07e2
00000194: JUMPI
00000195: DUP1
00000196: PUSH4 0xa1eda53c
0000019b: EQ
0000019c: PUSH2 0x0862
0000019f: JUMPI
000001a0: DUP1
000001a1: PUSH4 0xa217fddf
000001a6: EQ
000001a7: PUSH2 0x0895
000001aa: JUMPI
000001ab: PUSH0
000001ac: DUP1
000001ad: REVERT
000001ae: JUMPDEST
000001af: DUP1
000001b0: PUSH4 0x8da5cb5b
000001b5: EQ
000001b6: PUSH2 0x0771
000001b9: JUMPI
000001ba: DUP1
000001bb: PUSH4 0x90abccf4
000001c0: EQ
000001c1: PUSH2 0x0785
000001c4: JUMPI
000001c5: DUP1
000001c6: PUSH4 0x91d14854
000001cb: EQ
000001cc: PUSH2 0x07a4
000001cf: JUMPI
000001d0: PUSH0
000001d1: DUP1
000001d2: REVERT
000001d3: JUMPDEST
000001d4: DUP1
000001d5: PUSH4 0x447266f0
000001da: GT
000001db: PUSH2 0x02b4
000001de: JUMPI
000001df: DUP1
000001e0: PUSH4 0x5fb8bc56
000001e5: GT
000001e6: PUSH2 0x0254
000001e9: JUMPI
000001ea: DUP1
000001eb: PUSH4 0x842d96f3
000001f0: GT
000001f1: PUSH2 0x0224
000001f4: JUMPI
000001f5: DUP1
000001f6: PUSH4 0x842d96f3
000001fb: EQ
000001fc: PUSH2 0x06e8
000001ff: JUMPI
00000200: DUP1
00000201: PUSH4 0x84ef8ffc
00000206: EQ
00000207: PUSH2 0x0707
0000020a: JUMPI
0000020b: DUP1
0000020c: PUSH4 0x865e6fd3
00000211: EQ
00000212: PUSH2 0x0733
00000215: JUMPI
00000216: DUP1
00000217: PUSH4 0x8b4d434b
0000021c: EQ
0000021d: PUSH2 0x0752
00000220: JUMPI
00000221: PUSH0
00000222: DUP1
00000223: REVERT
00000224: JUMPDEST
00000225: DUP1
00000226: PUSH4 0x5fb8bc56
0000022b: EQ
0000022c: PUSH2 0x0683
0000022f: JUMPI
00000230: DUP1
00000231: PUSH4 0x634e93da
00000236: EQ
00000237: PUSH2 0x0697
0000023a: JUMPI
0000023b: DUP1
0000023c: PUSH4 0x649a5ec7
00000241: EQ
00000242: PUSH2 0x06b6
00000245: JUMPI
00000246: DUP1
00000247: PUSH4 0x6b4f0b77
0000024c: EQ
0000024d: PUSH2 0x06d5
00000250: JUMPI
00000251: PUSH0
00000252: DUP1
00000253: REVERT
00000254: JUMPDEST
00000255: DUP1
00000256: PUSH4 0x48b6ce5e
0000025b: GT
0000025c: PUSH2 0x028f
0000025f: JUMPI
00000260: DUP1
00000261: PUSH4 0x48b6ce5e
00000266: EQ
00000267: PUSH2 0x05f2
0000026a: JUMPI
0000026b: DUP1
0000026c: PUSH4 0x4df8a5e7
00000271: EQ
00000272: PUSH2 0x0606
00000275: JUMPI
00000276: DUP1
00000277: PUSH4 0x4e8badd7
0000027c: EQ
0000027d: PUSH2 0x0636
00000280: JUMPI
00000281: DUP1
00000282: PUSH4 0x548ccedf
00000287: EQ
00000288: PUSH2 0x0657
0000028b: JUMPI
0000028c: PUSH0
0000028d: DUP1
0000028e: REVERT
0000028f: JUMPDEST
00000290: DUP1
00000291: PUSH4 0x447266f0
00000296: EQ
00000297: PUSH2 0x05a1
0000029a: JUMPI
0000029b: DUP1
0000029c: PUSH4 0x452e0134
000002a1: EQ
000002a2: PUSH2 0x05c0
000002a5: JUMPI
000002a6: DUP1
000002a7: PUSH4 0x4573e3b3
000002ac: EQ
000002ad: PUSH2 0x05df
000002b0: JUMPI
000002b1: PUSH0
000002b2: DUP1
000002b3: REVERT
000002b4: JUMPDEST
000002b5: DUP1
000002b6: PUSH4 0x10f4686b
000002bb: GT
000002bc: PUSH2 0x032a
000002bf: JUMPI
000002c0: DUP1
000002c1: PUSH4 0x357c1354
000002c6: GT
000002c7: PUSH2 0x02fa
000002ca: JUMPI
000002cb: DUP1
000002cc: PUSH4 0x357c1354
000002d1: EQ
000002d2: PUSH2 0x04d5
000002d5: JUMPI
000002d6: DUP1
000002d7: PUSH4 0x36568abe
000002dc: EQ
000002dd: PUSH2 0x051b
000002e0: JUMPI
000002e1: DUP1
000002e2: PUSH4 0x36bf3325
000002e7: EQ
000002e8: PUSH2 0x053a
000002eb: JUMPI
000002ec: DUP1
000002ed: PUSH4 0x3faae344
000002f2: EQ
000002f3: PUSH2 0x056d
000002f6: JUMPI
000002f7: PUSH0
000002f8: DUP1
000002f9: REVERT
000002fa: JUMPDEST
000002fb: DUP1
000002fc: PUSH4 0x10f4686b
00000301: EQ
00000302: PUSH2 0x0464
00000305: JUMPI
00000306: DUP1
00000307: PUSH4 0x248a9ca3
0000030c: EQ
0000030d: PUSH2 0x0483
00000310: JUMPI
00000311: DUP1
00000312: PUSH4 0x2da2c826
00000317: EQ
00000318: PUSH2 0x04a2
0000031b: JUMPI
0000031c: DUP1
0000031d: PUSH4 0x2f2ff15d
00000322: EQ
00000323: PUSH2 0x04b6
00000326: JUMPI
00000327: PUSH0
00000328: DUP1
00000329: REVERT
0000032a: JUMPDEST
0000032b: DUP1
0000032c: PUSH4 0x022d63fb
00000331: GT
00000332: PUSH2 0x0365
00000335: JUMPI
00000336: DUP1
00000337: PUSH4 0x022d63fb
0000033c: EQ
0000033d: PUSH2 0x03f6
00000340: JUMPI
00000341: DUP1
00000342: PUSH4 0x05c9399c
00000347: EQ
00000348: PUSH2 0x041e
0000034b: JUMPI
0000034c: DUP1
0000034d: PUSH4 0x0aa6220b
00000352: EQ
00000353: PUSH2 0x043d
00000356: JUMPI
00000357: DUP1
00000358: PUSH4 0x10cf3f85
0000035d: EQ
0000035e: PUSH2 0x0451
00000361: JUMPI
00000362: PUSH0
00000363: DUP1
00000364: REVERT
00000365: JUMPDEST
00000366: DUP1
00000367: PUSH3 0x8803d3
0000036b: EQ
0000036c: PUSH2 0x038a
0000036f: JUMPI
00000370: DUP1
00000371: PUSH4 0x0154cd98
00000376: EQ
00000377: PUSH2 0x03a0
0000037a: JUMPI
0000037b: DUP1
0000037c: PUSH4 0x01ffc9a7
00000381: EQ
00000382: PUSH2 0x03c7
00000385: JUMPI
00000386: JUMPDEST
00000387: PUSH0
00000388: DUP1
00000389: REVERT
0000038a: JUMPDEST
0000038b: CALLVALUE
0000038c: DUP1
0000038d: ISZERO
0000038e: PUSH2 0x0395
00000391: JUMPI
00000392: PUSH0
00000393: DUP1
00000394: REVERT
00000395: JUMPDEST
00000396: POP
00000397: PUSH2 0x039e
0000039a: PUSH2 0x0ca8
0000039d: JUMP
0000039e: JUMPDEST
0000039f: STOP
000003a0: JUMPDEST
000003a1: CALLVALUE
000003a2: DUP1
000003a3: ISZERO
000003a4: PUSH2 0x03ab
000003a7: JUMPI
000003a8: PUSH0
000003a9: DUP1
000003aa: REVERT
000003ab: JUMPDEST
000003ac: POP
000003ad: PUSH2 0x03b4
000003b0: PUSH2 0x0d22
000003b3: JUMP
000003b4: JUMPDEST
000003b5: PUSH1 0x40
000003b7: MLOAD
000003b8: SWAP1
000003b9: DUP2
000003ba: MSTORE
000003bb: PUSH1 0x20
000003bd: ADD
000003be: JUMPDEST
000003bf: PUSH1 0x40
000003c1: MLOAD
000003c2: DUP1
000003c3: SWAP2
000003c4: SUB
000003c5: SWAP1
000003c6: RETURN
000003c7: JUMPDEST
000003c8: CALLVALUE
000003c9: DUP1
000003ca: ISZERO
000003cb: PUSH2 0x03d2
000003ce: JUMPI
000003cf: PUSH0
000003d0: DUP1
000003d1: REVERT
000003d2: JUMPDEST
000003d3: POP
000003d4: PUSH2 0x03e6
000003d7: PUSH2 0x03e1
000003da: CALLDATASIZE
000003db: PUSH1 0x04
000003dd: PUSH2 0x3423
000003e0: JUMP
000003e1: JUMPDEST
000003e2: PUSH2 0x0d9b
000003e5: JUMP
000003e6: JUMPDEST
000003e7: PUSH1 0x40
000003e9: MLOAD
000003ea: SWAP1
000003eb: ISZERO
000003ec: ISZERO
000003ed: DUP2
000003ee: MSTORE
000003ef: PUSH1 0x20
000003f1: ADD
000003f2: PUSH2 0x03be
000003f5: JUMP
000003f6: JUMPDEST
000003f7: CALLVALUE
000003f8: DUP1
000003f9: ISZERO
000003fa: PUSH2 0x0401
000003fd: JUMPI
000003fe: PUSH0
000003ff: DUP1
00000400: REVERT
00000401: JUMPDEST
00000402: POP
00000403: PUSH3 0x069780
00000407: JUMPDEST
00000408: PUSH1 0x40
0000040a: MLOAD
0000040b: PUSH6 0xffffffffffff
00000412: SWAP1
00000413: SWAP2
00000414: AND
00000415: DUP2
00000416: MSTORE
00000417: PUSH1 0x20
00000419: ADD
0000041a: PUSH2 0x03be
0000041d: JUMP
0000041e: JUMPDEST
0000041f: CALLVALUE
00000420: DUP1
00000421: ISZERO
00000422: PUSH2 0x0429
00000425: JUMPI
00000426: PUSH0
00000427: DUP1
00000428: REVERT
00000429: JUMPDEST
0000042a: POP
0000042b: PUSH2 0x039e
0000042e: PUSH2 0x0438
00000431: CALLDATASIZE
00000432: PUSH1 0x04
00000434: PUSH2 0x345d
00000437: JUMP
00000438: JUMPDEST
00000439: PUSH2 0x0dc5
0000043c: JUMP
0000043d: JUMPDEST
0000043e: CALLVALUE
0000043f: DUP1
00000440: ISZERO
00000441: PUSH2 0x0448
00000444: JUMPI
00000445: PUSH0
00000446: DUP1
00000447: REVERT
00000448: JUMPDEST
00000449: POP
0000044a: PUSH2 0x039e
0000044d: PUSH2 0x0e4c
00000450: JUMP
00000451: JUMPDEST
00000452: PUSH2 0x039e
00000455: PUSH2 0x045f
00000458: CALLDATASIZE
00000459: PUSH1 0x04
0000045b: PUSH2 0x3526
0000045e: JUMP
0000045f: JUMPDEST
00000460: PUSH2 0x0e61
00000463: JUMP
00000464: JUMPDEST
00000465: CALLVALUE
00000466: DUP1
00000467: ISZERO
00000468: PUSH2 0x046f
0000046b: JUMPI
0000046c: PUSH0
0000046d: DUP1
0000046e: REVERT
0000046f: JUMPDEST
00000470: POP
00000471: PUSH2 0x039e
00000474: PUSH2 0x047e
00000477: CALLDATASIZE
00000478: PUSH1 0x04
0000047a: PUSH2 0x36d7
0000047d: JUMP
0000047e: JUMPDEST
0000047f: PUSH2 0x0f56
00000482: JUMP
00000483: JUMPDEST
00000484: CALLVALUE
00000485: DUP1
00000486: ISZERO
00000487: PUSH2 0x048e
0000048a: JUMPI
0000048b: PUSH0
0000048c: DUP1
0000048d: REVERT
0000048e: JUMPDEST
0000048f: POP
00000490: PUSH2 0x03b4
00000493: PUSH2 0x049d
00000496: CALLDATASIZE
00000497: PUSH1 0x04
00000499: PUSH2 0x3807
0000049c: JUMP
0000049d: JUMPDEST
0000049e: PUSH2 0x1000
000004a1: JUMP
000004a2: JUMPDEST
000004a3: CALLVALUE
000004a4: DUP1
000004a5: ISZERO
000004a6: PUSH2 0x04ad
000004a9: JUMPI
000004aa: PUSH0
000004ab: DUP1
000004ac: REVERT
000004ad: JUMPDEST
000004ae: POP
000004af: PUSH2 0x03b4
000004b2: PUSH2 0x1020
000004b5: JUMP
000004b6: JUMPDEST
000004b7: CALLVALUE
000004b8: DUP1
000004b9: ISZERO
000004ba: PUSH2 0x04c1
000004bd: JUMPI
000004be: PUSH0
000004bf: DUP1
000004c0: REVERT
000004c1: JUMPDEST
000004c2: POP
000004c3: PUSH2 0x039e
000004c6: PUSH2 0x04d0
000004c9: CALLDATASIZE
000004ca: PUSH1 0x04
000004cc: PUSH2 0x381e
000004cf: JUMP
000004d0: JUMPDEST
000004d1: PUSH2 0x1059
000004d4: JUMP
000004d5: JUMPDEST
000004d6: CALLVALUE
000004d7: DUP1
000004d8: ISZERO
000004d9: PUSH2 0x04e0
000004dc: JUMPI
000004dd: PUSH0
000004de: DUP1
000004df: REVERT
000004e0: JUMPDEST
000004e1: POP
000004e2: PUSH2 0x0506
000004e5: PUSH2 0x04ef
000004e8: CALLDATASIZE
000004e9: PUSH1 0x04
000004eb: PUSH2 0x3841
000004ee: JUMP
000004ef: JUMPDEST
000004f0: PUSH1 0x4c
000004f2: PUSH1 0x20
000004f4: MSTORE
000004f5: PUSH0
000004f6: SWAP1
000004f7: DUP2
000004f8: MSTORE
000004f9: PUSH1 0x40
000004fb: SWAP1
000004fc: KECCAK256
000004fd: SLOAD
000004fe: PUSH4 0xffffffff
00000503: AND
00000504: DUP2
00000505: JUMP
00000506: JUMPDEST
00000507: PUSH1 0x40
00000509: MLOAD
0000050a: PUSH4 0xffffffff
0000050f: SWAP1
00000510: SWAP2
00000511: AND
00000512: DUP2
00000513: MSTORE
00000514: PUSH1 0x20
00000516: ADD
00000517: PUSH2 0x03be
0000051a: JUMP
0000051b: JUMPDEST
0000051c: CALLVALUE
0000051d: DUP1
0000051e: ISZERO
0000051f: PUSH2 0x0526
00000522: JUMPI
00000523: PUSH0
00000524: DUP1
00000525: REVERT
00000526: JUMPDEST
00000527: POP
00000528: PUSH2 0x039e
0000052b: PUSH2 0x0535
0000052e: CALLDATASIZE
0000052f: PUSH1 0x04
00000531: PUSH2 0x381e
00000534: JUMP
00000535: JUMPDEST
00000536: PUSH2 0x1085
00000539: JUMP
0000053a: JUMPDEST
0000053b: CALLVALUE
0000053c: DUP1
0000053d: ISZERO
0000053e: PUSH2 0x0545
00000541: JUMPI
00000542: PUSH0
00000543: DUP1
00000544: REVERT
00000545: JUMPDEST
00000546: POP
00000547: PUSH2 0x03b4
0000054a: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
0000056b: DUP2
0000056c: JUMP
0000056d: JUMPDEST
0000056e: CALLVALUE
0000056f: DUP1
00000570: ISZERO
00000571: PUSH2 0x0578
00000574: JUMPI
00000575: PUSH0
00000576: DUP1
00000577: REVERT
00000578: JUMPDEST
00000579: POP
0000057a: PUSH2 0x058c
0000057d: PUSH2 0x0587
00000580: CALLDATASIZE
00000581: PUSH1 0x04
00000583: PUSH2 0x385a
00000586: JUMP
00000587: JUMPDEST
00000588: PUSH2 0x114c
0000058b: JUMP
0000058c: JUMPDEST
0000058d: PUSH1 0x40
0000058f: DUP1
00000590: MLOAD
00000591: SWAP3
00000592: DUP4
00000593: MSTORE
00000594: PUSH1 0x20
00000596: DUP4
00000597: ADD
00000598: SWAP2
00000599: SWAP1
0000059a: SWAP2
0000059b: MSTORE
0000059c: ADD
0000059d: PUSH2 0x03be
000005a0: JUMP
000005a1: JUMPDEST
000005a2: CALLVALUE
000005a3: DUP1
000005a4: ISZERO
000005a5: PUSH2 0x05ac
000005a8: JUMPI
000005a9: PUSH0
000005aa: DUP1
000005ab: REVERT
000005ac: JUMPDEST
000005ad: POP
000005ae: PUSH2 0x039e
000005b1: PUSH2 0x05bb
000005b4: CALLDATASIZE
000005b5: PUSH1 0x04
000005b7: PUSH2 0x38d5
000005ba: JUMP
000005bb: JUMPDEST
000005bc: PUSH2 0x12d7
000005bf: JUMP
000005c0: JUMPDEST
000005c1: CALLVALUE
000005c2: DUP1
000005c3: ISZERO
000005c4: PUSH2 0x05cb
000005c7: JUMPI
000005c8: PUSH0
000005c9: DUP1
000005ca: REVERT
000005cb: JUMPDEST
000005cc: POP
000005cd: PUSH2 0x058c
000005d0: PUSH2 0x05da
000005d3: CALLDATASIZE
000005d4: PUSH1 0x04
000005d6: PUSH2 0x381e
000005d9: JUMP
000005da: JUMPDEST
000005db: PUSH2 0x1390
000005de: JUMP
000005df: JUMPDEST
000005e0: PUSH2 0x039e
000005e3: PUSH2 0x05ed
000005e6: CALLDATASIZE
000005e7: PUSH1 0x04
000005e9: PUSH2 0x3952
000005ec: JUMP
000005ed: JUMPDEST
000005ee: PUSH2 0x149f
000005f1: JUMP
000005f2: JUMPDEST
000005f3: CALLVALUE
000005f4: DUP1
000005f5: ISZERO
000005f6: PUSH2 0x05fd
000005f9: JUMPI
000005fa: PUSH0
000005fb: DUP1
000005fc: REVERT
000005fd: JUMPDEST
000005fe: POP
000005ff: PUSH2 0x039e
00000602: PUSH2 0x152d
00000605: JUMP
00000606: JUMPDEST
00000607: CALLVALUE
00000608: DUP1
00000609: ISZERO
0000060a: PUSH2 0x0611
0000060d: JUMPI
0000060e: PUSH0
0000060f: DUP1
00000610: REVERT
00000611: JUMPDEST
00000612: POP
00000613: PUSH2 0x0625
00000616: PUSH2 0x0620
00000619: CALLDATASIZE
0000061a: PUSH1 0x04
0000061c: PUSH2 0x3807
0000061f: JUMP
00000620: JUMPDEST
00000621: PUSH2 0x159f
00000624: JUMP
00000625: JUMPDEST
00000626: PUSH1 0x40
00000628: MLOAD
00000629: PUSH2 0x03be
0000062c: SWAP6
0000062d: SWAP5
0000062e: SWAP4
0000062f: SWAP3
00000630: SWAP2
00000631: SWAP1
00000632: PUSH2 0x39dd
00000635: JUMP
00000636: JUMPDEST
00000637: CALLVALUE
00000638: DUP1
00000639: ISZERO
0000063a: PUSH2 0x0641
0000063d: JUMPI
0000063e: PUSH0
0000063f: DUP1
00000640: REVERT
00000641: JUMPDEST
00000642: POP
00000643: PUSH2 0x064a
00000646: PUSH2 0x163a
00000649: JUMP
0000064a: JUMPDEST
0000064b: PUSH1 0x40
0000064d: MLOAD
0000064e: PUSH2 0x03be
00000651: SWAP2
00000652: SWAP1
00000653: PUSH2 0x3a38
00000656: JUMP
00000657: JUMPDEST
00000658: CALLVALUE
00000659: DUP1
0000065a: ISZERO
0000065b: PUSH2 0x0662
0000065e: JUMPI
0000065f: PUSH0
00000660: DUP1
00000661: REVERT
00000662: JUMPDEST
00000663: POP
00000664: PUSH2 0x066b
00000667: PUSH2 0x1795
0000066a: JUMP
0000066b: JUMPDEST
0000066c: PUSH1 0x40
0000066e: MLOAD
0000066f: PUSH2 0x03be
00000672: SWAP13
00000673: SWAP12
00000674: SWAP11
00000675: SWAP10
00000676: SWAP9
00000677: SWAP8
00000678: SWAP7
00000679: SWAP6
0000067a: SWAP5
0000067b: SWAP4
0000067c: SWAP3
0000067d: SWAP2
0000067e: SWAP1
0000067f: PUSH2 0x3ad8
00000682: JUMP
00000683: JUMPDEST
00000684: CALLVALUE
00000685: DUP1
00000686: ISZERO
00000687: PUSH2 0x068e
0000068a: JUMPI
0000068b: PUSH0
0000068c: DUP1
0000068d: REVERT
0000068e: JUMPDEST
0000068f: POP
00000690: PUSH2 0x039e
00000693: PUSH2 0x185c
00000696: JUMP
00000697: JUMPDEST
00000698: CALLVALUE
00000699: DUP1
0000069a: ISZERO
0000069b: PUSH2 0x06a2
0000069e: JUMPI
0000069f: PUSH0
000006a0: DUP1
000006a1: REVERT
000006a2: JUMPDEST
000006a3: POP
000006a4: PUSH2 0x039e
000006a7: PUSH2 0x06b1
000006aa: CALLDATASIZE
000006ab: PUSH1 0x04
000006ad: PUSH2 0x3b44
000006b0: JUMP
000006b1: JUMPDEST
000006b2: PUSH2 0x199d
000006b5: JUMP
000006b6: JUMPDEST
000006b7: CALLVALUE
000006b8: DUP1
000006b9: ISZERO
000006ba: PUSH2 0x06c1
000006bd: JUMPI
000006be: PUSH0
000006bf: DUP1
000006c0: REVERT
000006c1: JUMPDEST
000006c2: POP
000006c3: PUSH2 0x039e
000006c6: PUSH2 0x06d0
000006c9: CALLDATASIZE
000006ca: PUSH1 0x04
000006cc: PUSH2 0x3b74
000006cf: JUMP
000006d0: JUMPDEST
000006d1: PUSH2 0x19b0
000006d4: JUMP
000006d5: JUMPDEST
000006d6: PUSH2 0x039e
000006d9: PUSH2 0x06e3
000006dc: CALLDATASIZE
000006dd: PUSH1 0x04
000006df: PUSH2 0x3b8d
000006e2: JUMP
000006e3: JUMPDEST
000006e4: PUSH2 0x19c3
000006e7: JUMP
000006e8: JUMPDEST
000006e9: CALLVALUE
000006ea: DUP1
000006eb: ISZERO
000006ec: PUSH2 0x06f3
000006ef: JUMPI
000006f0: PUSH0
000006f1: DUP1
000006f2: REVERT
000006f3: JUMPDEST
000006f4: POP
000006f5: PUSH2 0x039e
000006f8: PUSH2 0x0702
000006fb: CALLDATASIZE
000006fc: PUSH1 0x04
000006fe: PUSH2 0x3807
00000701: JUMP
00000702: JUMPDEST
00000703: PUSH2 0x1e98
00000706: JUMP
00000707: JUMPDEST
00000708: CALLVALUE
00000709: DUP1
0000070a: ISZERO
0000070b: PUSH2 0x0712
0000070e: JUMPI
0000070f: PUSH0
00000710: DUP1
00000711: REVERT
00000712: JUMPDEST
00000713: POP
00000714: PUSH2 0x071b
00000717: PUSH2 0x1f4d
0000071a: JUMP
0000071b: JUMPDEST
0000071c: PUSH1 0x40
0000071e: MLOAD
0000071f: PUSH1 0x01
00000721: PUSH1 0x01
00000723: PUSH1 0xa0
00000725: SHL
00000726: SUB
00000727: SWAP1
00000728: SWAP2
00000729: AND
0000072a: DUP2
0000072b: MSTORE
0000072c: PUSH1 0x20
0000072e: ADD
0000072f: PUSH2 0x03be
00000732: JUMP
00000733: JUMPDEST
00000734: CALLVALUE
00000735: DUP1
00000736: ISZERO
00000737: PUSH2 0x073e
0000073a: JUMPI
0000073b: PUSH0
0000073c: DUP1
0000073d: REVERT
0000073e: JUMPDEST
0000073f: POP
00000740: PUSH2 0x039e
00000743: PUSH2 0x074d
00000746: CALLDATASIZE
00000747: PUSH1 0x04
00000749: PUSH2 0x3c2c
0000074c: JUMP
0000074d: JUMPDEST
0000074e: PUSH2 0x1f68
00000751: JUMP
00000752: JUMPDEST
00000753: CALLVALUE
00000754: DUP1
00000755: ISZERO
00000756: PUSH2 0x075d
00000759: JUMPI
0000075a: PUSH0
0000075b: DUP1
0000075c: REVERT
0000075d: JUMPDEST
0000075e: POP
0000075f: PUSH2 0x039e
00000762: PUSH2 0x076c
00000765: CALLDATASIZE
00000766: PUSH1 0x04
00000768: PUSH2 0x3c5b
0000076b: JUMP
0000076c: JUMPDEST
0000076d: PUSH2 0x1fbe
00000770: JUMP
00000771: JUMPDEST
00000772: CALLVALUE
00000773: DUP1
00000774: ISZERO
00000775: PUSH2 0x077c
00000778: JUMPI
00000779: PUSH0
0000077a: DUP1
0000077b: REVERT
0000077c: JUMPDEST
0000077d: POP
0000077e: PUSH2 0x071b
00000781: PUSH2 0x2045
00000784: JUMP
00000785: JUMPDEST
00000786: CALLVALUE
00000787: DUP1
00000788: ISZERO
00000789: PUSH2 0x0790
0000078c: JUMPI
0000078d: PUSH0
0000078e: DUP1
0000078f: REVERT
00000790: JUMPDEST
00000791: POP
00000792: PUSH2 0x039e
00000795: PUSH2 0x079f
00000798: CALLDATASIZE
00000799: PUSH1 0x04
0000079b: PUSH2 0x3ca1
0000079e: JUMP
0000079f: JUMPDEST
000007a0: PUSH2 0x204e
000007a3: JUMP
000007a4: JUMPDEST
000007a5: CALLVALUE
000007a6: DUP1
000007a7: ISZERO
000007a8: PUSH2 0x07af
000007ab: JUMPI
000007ac: PUSH0
000007ad: DUP1
000007ae: REVERT
000007af: JUMPDEST
000007b0: POP
000007b1: PUSH2 0x03e6
000007b4: PUSH2 0x07be
000007b7: CALLDATASIZE
000007b8: PUSH1 0x04
000007ba: PUSH2 0x381e
000007bd: JUMP
000007be: JUMPDEST
000007bf: PUSH2 0x20ce
000007c2: JUMP
000007c3: JUMPDEST
000007c4: CALLVALUE
000007c5: DUP1
000007c6: ISZERO
000007c7: PUSH2 0x07ce
000007ca: JUMPI
000007cb: PUSH0
000007cc: DUP1
000007cd: REVERT
000007ce: JUMPDEST
000007cf: POP
000007d0: PUSH2 0x0625
000007d3: PUSH2 0x07dd
000007d6: CALLDATASIZE
000007d7: PUSH1 0x04
000007d9: PUSH2 0x3807
000007dc: JUMP
000007dd: JUMPDEST
000007de: PUSH2 0x2104
000007e1: JUMP
000007e2: JUMPDEST
000007e3: CALLVALUE
000007e4: DUP1
000007e5: ISZERO
000007e6: PUSH2 0x07ed
000007e9: JUMPI
000007ea: PUSH0
000007eb: DUP1
000007ec: REVERT
000007ed: JUMPDEST
000007ee: POP
000007ef: PUSH1 0x3e
000007f1: SLOAD
000007f2: PUSH1 0x3f
000007f4: SLOAD
000007f5: PUSH1 0x40
000007f7: SLOAD
000007f8: PUSH1 0x41
000007fa: SLOAD
000007fb: PUSH1 0x42
000007fd: SLOAD
000007fe: PUSH1 0x43
00000800: SLOAD
00000801: PUSH2 0x0820
00000804: SWAP6
00000805: PUSH1 0x01
00000807: PUSH1 0x01
00000809: PUSH1 0xa0
0000080b: SHL
0000080c: SUB
0000080d: SWAP1
0000080e: DUP2
0000080f: AND
00000810: SWAP6
00000811: DUP2
00000812: AND
00000813: SWAP5
00000814: DUP2
00000815: AND
00000816: SWAP4
00000817: DUP2
00000818: AND
00000819: SWAP3
0000081a: DUP2
0000081b: AND
0000081c: SWAP2
0000081d: AND
0000081e: DUP7
0000081f: JUMP
00000820: JUMPDEST
00000821: PUSH1 0x40
00000823: DUP1
00000824: MLOAD
00000825: PUSH1 0x01
00000827: PUSH1 0x01
00000829: PUSH1 0xa0
0000082b: SHL
0000082c: SUB
0000082d: SWAP8
0000082e: DUP9
0000082f: AND
00000830: DUP2
00000831: MSTORE
00000832: SWAP6
00000833: DUP8
00000834: AND
00000835: PUSH1 0x20
00000837: DUP8
00000838: ADD
00000839: MSTORE
0000083a: SWAP4
0000083b: DUP7
0000083c: AND
0000083d: SWAP4
0000083e: DUP6
0000083f: ADD
00000840: SWAP4
00000841: SWAP1
00000842: SWAP4
00000843: MSTORE
00000844: SWAP1
00000845: DUP5
00000846: AND
00000847: PUSH1 0x60
00000849: DUP5
0000084a: ADD
0000084b: MSTORE
0000084c: DUP4
0000084d: AND
0000084e: PUSH1 0x80
00000850: DUP4
00000851: ADD
00000852: MSTORE
00000853: SWAP1
00000854: SWAP2
00000855: AND
00000856: PUSH1 0xa0
00000858: DUP3
00000859: ADD
0000085a: MSTORE
0000085b: PUSH1 0xc0
0000085d: ADD
0000085e: PUSH2 0x03be
00000861: JUMP
00000862: JUMPDEST
00000863: CALLVALUE
00000864: DUP1
00000865: ISZERO
00000866: PUSH2 0x086d
00000869: JUMPI
0000086a: PUSH0
0000086b: DUP1
0000086c: REVERT
0000086d: JUMPDEST
0000086e: POP
0000086f: PUSH2 0x0876
00000872: PUSH2 0x214c
00000875: JUMP
00000876: JUMPDEST
00000877: PUSH1 0x40
00000879: DUP1
0000087a: MLOAD
0000087b: PUSH6 0xffffffffffff
00000882: SWAP4
00000883: DUP5
00000884: AND
00000885: DUP2
00000886: MSTORE
00000887: SWAP3
00000888: SWAP1
00000889: SWAP2
0000088a: AND
0000088b: PUSH1 0x20
0000088d: DUP4
0000088e: ADD
0000088f: MSTORE
00000890: ADD
00000891: PUSH2 0x03be
00000894: JUMP
00000895: JUMPDEST
00000896: CALLVALUE
00000897: DUP1
00000898: ISZERO
00000899: PUSH2 0x08a0
0000089c: JUMPI
0000089d: PUSH0
0000089e: DUP1
0000089f: REVERT
000008a0: JUMPDEST
000008a1: POP
000008a2: PUSH2 0x03b4
000008a5: PUSH0
000008a6: DUP2
000008a7: JUMP
000008a8: JUMPDEST
000008a9: CALLVALUE
000008aa: DUP1
000008ab: ISZERO
000008ac: PUSH2 0x08b3
000008af: JUMPI
000008b0: PUSH0
000008b1: DUP1
000008b2: REVERT
000008b3: JUMPDEST
000008b4: POP
000008b5: PUSH2 0x071b
000008b8: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
000008d9: DUP2
000008da: JUMP
000008db: JUMPDEST
000008dc: CALLVALUE
000008dd: DUP1
000008de: ISZERO
000008df: PUSH2 0x08e6
000008e2: JUMPI
000008e3: PUSH0
000008e4: DUP1
000008e5: REVERT
000008e6: JUMPDEST
000008e7: POP
000008e8: PUSH2 0x039e
000008eb: PUSH2 0x08f5
000008ee: CALLDATASIZE
000008ef: PUSH1 0x04
000008f1: PUSH2 0x3cc1
000008f4: JUMP
000008f5: JUMPDEST
000008f6: PUSH2 0x21bb
000008f9: JUMP
000008fa: JUMPDEST
000008fb: CALLVALUE
000008fc: DUP1
000008fd: ISZERO
000008fe: PUSH2 0x0905
00000901: JUMPI
00000902: PUSH0
00000903: DUP1
00000904: REVERT
00000905: JUMPDEST
00000906: POP
00000907: PUSH2 0x0934
0000090a: PUSH2 0x0914
0000090d: CALLDATASIZE
0000090e: PUSH1 0x04
00000910: PUSH2 0x3d19
00000913: JUMP
00000914: JUMPDEST
00000915: DUP1
00000916: MLOAD
00000917: PUSH1 0x20
00000919: DUP2
0000091a: DUP4
0000091b: ADD
0000091c: DUP2
0000091d: ADD
0000091e: DUP1
0000091f: MLOAD
00000920: PUSH1 0x48
00000922: DUP3
00000923: MSTORE
00000924: SWAP3
00000925: DUP3
00000926: ADD
00000927: SWAP2
00000928: SWAP1
00000929: SWAP4
0000092a: ADD
0000092b: KECCAK256
0000092c: SWAP2
0000092d: MSTORE
0000092e: SLOAD
0000092f: PUSH1 0xff
00000931: AND
00000932: DUP2
00000933: JUMP
00000934: JUMPDEST
00000935: PUSH1 0x40
00000937: MLOAD
00000938: PUSH2 0x03be
0000093b: SWAP2
0000093c: SWAP1
0000093d: PUSH2 0x3d5e
00000940: JUMP
00000941: JUMPDEST
00000942: PUSH2 0x03b4
00000945: PUSH2 0x094f
00000948: CALLDATASIZE
00000949: PUSH1 0x04
0000094b: PUSH2 0x3d78
0000094e: JUMP
0000094f: JUMPDEST
00000950: PUSH2 0x225d
00000953: JUMP
00000954: JUMPDEST
00000955: CALLVALUE
00000956: DUP1
00000957: ISZERO
00000958: PUSH2 0x095f
0000095b: JUMPI
0000095c: PUSH0
0000095d: DUP1
0000095e: REVERT
0000095f: JUMPDEST
00000960: POP
00000961: PUSH2 0x039e
00000964: PUSH2 0x096e
00000967: CALLDATASIZE
00000968: PUSH1 0x04
0000096a: PUSH2 0x3807
0000096d: JUMP
0000096e: JUMPDEST
0000096f: PUSH2 0x23f0
00000972: JUMP
00000973: JUMPDEST
00000974: CALLVALUE
00000975: DUP1
00000976: ISZERO
00000977: PUSH2 0x097e
0000097a: JUMPI
0000097b: PUSH0
0000097c: DUP1
0000097d: REVERT
0000097e: JUMPDEST
0000097f: POP
00000980: PUSH2 0x039e
00000983: PUSH2 0x244d
00000986: JUMP
00000987: JUMPDEST
00000988: CALLVALUE
00000989: DUP1
0000098a: ISZERO
0000098b: PUSH2 0x0992
0000098e: JUMPI
0000098f: PUSH0
00000990: DUP1
00000991: REVERT
00000992: JUMPDEST
00000993: POP
00000994: PUSH2 0x0506
00000997: PUSH2 0x09a1
0000099a: CALLDATASIZE
0000099b: PUSH1 0x04
0000099d: PUSH2 0x3841
000009a0: JUMP
000009a1: JUMPDEST
000009a2: PUSH1 0x4b
000009a4: PUSH1 0x20
000009a6: MSTORE
000009a7: PUSH0
000009a8: SWAP1
000009a9: DUP2
000009aa: MSTORE
000009ab: PUSH1 0x40
000009ad: SWAP1
000009ae: KECCAK256
000009af: SLOAD
000009b0: PUSH4 0xffffffff
000009b5: AND
000009b6: DUP2
000009b7: JUMP
000009b8: JUMPDEST
000009b9: CALLVALUE
000009ba: DUP1
000009bb: ISZERO
000009bc: PUSH2 0x09c3
000009bf: JUMPI
000009c0: PUSH0
000009c1: DUP1
000009c2: REVERT
000009c3: JUMPDEST
000009c4: POP
000009c5: PUSH2 0x071b
000009c8: PUSH32 0x000000000000000000000000177d685384aa1ac5aba41b7e649f9fa0be717fdb
000009e9: DUP2
000009ea: JUMP
000009eb: JUMPDEST
000009ec: CALLVALUE
000009ed: DUP1
000009ee: ISZERO
000009ef: PUSH2 0x09f6
000009f2: JUMPI
000009f3: PUSH0
000009f4: DUP1
000009f5: REVERT
000009f6: JUMPDEST
000009f7: POP
000009f8: PUSH2 0x03e6
000009fb: PUSH2 0x0a05
000009fe: CALLDATASIZE
000009ff: PUSH1 0x04
00000a01: PUSH2 0x3b44
00000a04: JUMP
00000a05: JUMPDEST
00000a06: PUSH1 0x4a
00000a08: PUSH1 0x20
00000a0a: MSTORE
00000a0b: PUSH0
00000a0c: SWAP1
00000a0d: DUP2
00000a0e: MSTORE
00000a0f: PUSH1 0x40
00000a11: SWAP1
00000a12: KECCAK256
00000a13: SLOAD
00000a14: PUSH1 0xff
00000a16: AND
00000a17: DUP2
00000a18: JUMP
00000a19: JUMPDEST
00000a1a: CALLVALUE
00000a1b: DUP1
00000a1c: ISZERO
00000a1d: PUSH2 0x0a24
00000a20: JUMPI
00000a21: PUSH0
00000a22: DUP1
00000a23: REVERT
00000a24: JUMPDEST
00000a25: POP
00000a26: PUSH2 0x039e
00000a29: PUSH2 0x0a33
00000a2c: CALLDATASIZE
00000a2d: PUSH1 0x04
00000a2f: PUSH2 0x3807
00000a32: JUMP
00000a33: JUMPDEST
00000a34: PUSH2 0x249c
00000a37: JUMP
00000a38: JUMPDEST
00000a39: CALLVALUE
00000a3a: DUP1
00000a3b: ISZERO
00000a3c: PUSH2 0x0a43
00000a3f: JUMPI
00000a40: PUSH0
00000a41: DUP1
00000a42: REVERT
00000a43: JUMPDEST
00000a44: POP
00000a45: PUSH2 0x0407
00000a48: PUSH2 0x24f2
00000a4b: JUMP
00000a4c: JUMPDEST
00000a4d: CALLVALUE
00000a4e: DUP1
00000a4f: ISZERO
00000a50: PUSH2 0x0a57
00000a53: JUMPI
00000a54: PUSH0
00000a55: DUP1
00000a56: REVERT
00000a57: JUMPDEST
00000a58: POP
00000a59: PUSH2 0x039e
00000a5c: PUSH2 0x256d
00000a5f: JUMP
00000a60: JUMPDEST
00000a61: CALLVALUE
00000a62: DUP1
00000a63: ISZERO
00000a64: PUSH2 0x0a6b
00000a67: JUMPI
00000a68: PUSH0
00000a69: DUP1
00000a6a: REVERT
00000a6b: JUMPDEST
00000a6c: POP
00000a6d: PUSH2 0x0a74
00000a70: PUSH2 0x25ac
00000a73: JUMP
00000a74: JUMPDEST
00000a75: PUSH1 0x40
00000a77: DUP1
00000a78: MLOAD
00000a79: PUSH1 0x01
00000a7b: PUSH1 0x01
00000a7d: PUSH1 0xa0
00000a7f: SHL
00000a80: SUB
00000a81: SWAP1
00000a82: SWAP4
00000a83: AND
00000a84: DUP4
00000a85: MSTORE
00000a86: PUSH6 0xffffffffffff
00000a8d: SWAP1
00000a8e: SWAP2
00000a8f: AND
00000a90: PUSH1 0x20
00000a92: DUP4
00000a93: ADD
00000a94: MSTORE
00000a95: ADD
00000a96: PUSH2 0x03be
00000a99: JUMP
00000a9a: JUMPDEST
00000a9b: CALLVALUE
00000a9c: DUP1
00000a9d: ISZERO
00000a9e: PUSH2 0x0aa5
00000aa1: JUMPI
00000aa2: PUSH0
00000aa3: DUP1
00000aa4: REVERT
00000aa5: JUMPDEST
00000aa6: POP
00000aa7: PUSH2 0x039e
00000aaa: PUSH2 0x0ab4
00000aad: CALLDATASIZE
00000aae: PUSH1 0x04
00000ab0: PUSH2 0x3dab
00000ab3: JUMP
00000ab4: JUMPDEST
00000ab5: PUSH2 0x25d9
00000ab8: JUMP
00000ab9: JUMPDEST
00000aba: CALLVALUE
00000abb: DUP1
00000abc: ISZERO
00000abd: PUSH2 0x0ac4
00000ac0: JUMPI
00000ac1: PUSH0
00000ac2: DUP1
00000ac3: REVERT
00000ac4: JUMPDEST
00000ac5: POP
00000ac6: PUSH2 0x039e
00000ac9: PUSH2 0x0ad3
00000acc: CALLDATASIZE
00000acd: PUSH1 0x04
00000acf: PUSH2 0x381e
00000ad2: JUMP
00000ad3: JUMPDEST
00000ad4: PUSH2 0x268f
00000ad7: JUMP
00000ad8: JUMPDEST
00000ad9: CALLVALUE
00000ada: DUP1
00000adb: ISZERO
00000adc: PUSH2 0x0ae3
00000adf: JUMPI
00000ae0: PUSH0
00000ae1: DUP1
00000ae2: REVERT
00000ae3: JUMPDEST
00000ae4: POP
00000ae5: PUSH2 0x039e
00000ae8: PUSH2 0x26b7
00000aeb: JUMP
00000aec: JUMPDEST
00000aed: CALLVALUE
00000aee: DUP1
00000aef: ISZERO
00000af0: PUSH2 0x0af7
00000af3: JUMPI
00000af4: PUSH0
00000af5: DUP1
00000af6: REVERT
00000af7: JUMPDEST
00000af8: POP
00000af9: PUSH2 0x039e
00000afc: PUSH2 0x0b06
00000aff: CALLDATASIZE
00000b00: PUSH1 0x04
00000b02: PUSH2 0x345d
00000b05: JUMP
00000b06: JUMPDEST
00000b07: PUSH2 0x26c9
00000b0a: JUMP
00000b0b: JUMPDEST
00000b0c: PUSH2 0x039e
00000b0f: PUSH2 0x0b19
00000b12: CALLDATASIZE
00000b13: PUSH1 0x04
00000b15: PUSH2 0x3807
00000b18: JUMP
00000b19: JUMPDEST
00000b1a: PUSH2 0x271f
00000b1d: JUMP
00000b1e: JUMPDEST
00000b1f: CALLVALUE
00000b20: DUP1
00000b21: ISZERO
00000b22: PUSH2 0x0b29
00000b25: JUMPI
00000b26: PUSH0
00000b27: DUP1
00000b28: REVERT
00000b29: JUMPDEST
00000b2a: POP
00000b2b: PUSH2 0x039e
00000b2e: PUSH2 0x0b38
00000b31: CALLDATASIZE
00000b32: PUSH1 0x04
00000b34: PUSH2 0x3e18
00000b37: JUMP
00000b38: JUMPDEST
00000b39: PUSH2 0x2828
00000b3c: JUMP
00000b3d: JUMPDEST
00000b3e: CALLVALUE
00000b3f: DUP1
00000b40: ISZERO
00000b41: PUSH2 0x0b48
00000b44: JUMPI
00000b45: PUSH0
00000b46: DUP1
00000b47: REVERT
00000b48: JUMPDEST
00000b49: POP
00000b4a: PUSH2 0x03b4
00000b4d: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000
00000b6e: DUP2
00000b6f: JUMP
00000b70: JUMPDEST
00000b71: CALLVALUE
00000b72: DUP1
00000b73: ISZERO
00000b74: PUSH2 0x0b7b
00000b77: JUMPI
00000b78: PUSH0
00000b79: DUP1
00000b7a: REVERT
00000b7b: JUMPDEST
00000b7c: POP
00000b7d: PUSH2 0x039e
00000b80: PUSH2 0x0b8a
00000b83: CALLDATASIZE
00000b84: PUSH1 0x04
00000b86: PUSH2 0x3e64
00000b89: JUMP
00000b8a: JUMPDEST
00000b8b: PUSH2 0x29a8
00000b8e: JUMP
00000b8f: JUMPDEST
00000b90: CALLVALUE
00000b91: DUP1
00000b92: ISZERO
00000b93: PUSH2 0x0b9a
00000b96: JUMPI
00000b97: PUSH0
00000b98: DUP1
00000b99: REVERT
00000b9a: JUMPDEST
00000b9b: POP
00000b9c: PUSH2 0x0c21
00000b9f: PUSH1 0x40
00000ba1: DUP1
00000ba2: MLOAD
00000ba3: PUSH1 0xc0
00000ba5: DUP2
00000ba6: ADD
00000ba7: DUP3
00000ba8: MSTORE
00000ba9: PUSH0
00000baa: DUP1
00000bab: DUP3
00000bac: MSTORE
00000bad: PUSH1 0x20
00000baf: DUP3
00000bb0: ADD
00000bb1: DUP2
00000bb2: SWAP1
00000bb3: MSTORE
00000bb4: SWAP2
00000bb5: DUP2
00000bb6: ADD
00000bb7: DUP3
00000bb8: SWAP1
00000bb9: MSTORE
00000bba: PUSH1 0x60
00000bbc: DUP2
00000bbd: ADD
00000bbe: DUP3
00000bbf: SWAP1
00000bc0: MSTORE
00000bc1: PUSH1 0x80
00000bc3: DUP2
00000bc4: ADD
00000bc5: DUP3
00000bc6: SWAP1
00000bc7: MSTORE
00000bc8: PUSH1 0xa0
00000bca: DUP2
00000bcb: ADD
00000bcc: SWAP2
00000bcd: SWAP1
00000bce: SWAP2
00000bcf: MSTORE
00000bd0: POP
00000bd1: PUSH1 0x40
00000bd3: DUP1
00000bd4: MLOAD
00000bd5: PUSH1 0xc0
00000bd7: DUP2
00000bd8: ADD
00000bd9: DUP3
00000bda: MSTORE
00000bdb: PUSH1 0x3e
00000bdd: SLOAD
00000bde: PUSH1 0x01
00000be0: PUSH1 0x01
00000be2: PUSH1 0xa0
00000be4: SHL
00000be5: SUB
00000be6: SWAP1
00000be7: DUP2
00000be8: AND
00000be9: DUP3
00000bea: MSTORE
00000beb: PUSH1 0x3f
00000bed: SLOAD
00000bee: DUP2
00000bef: AND
00000bf0: PUSH1 0x20
00000bf2: DUP4
00000bf3: ADD
00000bf4: MSTORE
00000bf5: DUP3
00000bf6: SLOAD
00000bf7: DUP2
00000bf8: AND
00000bf9: SWAP3
00000bfa: DUP3
00000bfb: ADD
00000bfc: SWAP3
00000bfd: SWAP1
00000bfe: SWAP3
00000bff: MSTORE
00000c00: PUSH1 0x41
00000c02: SLOAD
00000c03: DUP3
00000c04: AND
00000c05: PUSH1 0x60
00000c07: DUP3
00000c08: ADD
00000c09: MSTORE
00000c0a: PUSH1 0x42
00000c0c: SLOAD
00000c0d: DUP3
00000c0e: AND
00000c0f: PUSH1 0x80
00000c11: DUP3
00000c12: ADD
00000c13: MSTORE
00000c14: PUSH1 0x43
00000c16: SLOAD
00000c17: SWAP1
00000c18: SWAP2
00000c19: AND
00000c1a: PUSH1 0xa0
00000c1c: DUP3
00000c1d: ADD
00000c1e: MSTORE
00000c1f: SWAP1
00000c20: JUMP
00000c21: JUMPDEST
00000c22: PUSH1 0x40
00000c24: MLOAD
00000c25: PUSH2 0x03be
00000c28: SWAP2
00000c29: SWAP1
00000c2a: DUP2
00000c2b: MLOAD
00000c2c: PUSH1 0x01
00000c2e: PUSH1 0x01
00000c30: PUSH1 0xa0
00000c32: SHL
00000c33: SUB
00000c34: SWAP1
00000c35: DUP2
00000c36: AND
00000c37: DUP3
00000c38: MSTORE
00000c39: PUSH1 0x20
00000c3b: DUP1
00000c3c: DUP5
00000c3d: ADD
00000c3e: MLOAD
00000c3f: DUP3
00000c40: AND
00000c41: SWAP1
00000c42: DUP4
00000c43: ADD
00000c44: MSTORE
00000c45: PUSH1 0x40
00000c47: DUP1
00000c48: DUP5
00000c49: ADD
00000c4a: MLOAD
00000c4b: DUP3
00000c4c: AND
00000c4d: SWAP1
00000c4e: DUP4
00000c4f: ADD
00000c50: MSTORE
00000c51: PUSH1 0x60
00000c53: DUP1
00000c54: DUP5
00000c55: ADD
00000c56: MLOAD
00000c57: DUP3
00000c58: AND
00000c59: SWAP1
00000c5a: DUP4
00000c5b: ADD
00000c5c: MSTORE
00000c5d: PUSH1 0x80
00000c5f: DUP1
00000c60: DUP5
00000c61: ADD
00000c62: MLOAD
00000c63: DUP3
00000c64: AND
00000c65: SWAP1
00000c66: DUP4
00000c67: ADD
00000c68: MSTORE
00000c69: PUSH1 0xa0
00000c6b: SWAP3
00000c6c: DUP4
00000c6d: ADD
00000c6e: MLOAD
00000c6f: AND
00000c70: SWAP2
00000c71: DUP2
00000c72: ADD
00000c73: SWAP2
00000c74: SWAP1
00000c75: SWAP2
00000c76: MSTORE
00000c77: PUSH1 0xc0
00000c79: ADD
00000c7a: SWAP1
00000c7b: JUMP
00000c7c: JUMPDEST
00000c7d: CALLVALUE
00000c7e: DUP1
00000c7f: ISZERO
00000c80: PUSH2 0x0c87
00000c83: JUMPI
00000c84: PUSH0
00000c85: DUP1
00000c86: REVERT
00000c87: JUMPDEST
00000c88: POP
00000c89: PUSH2 0x0c9b
00000c8c: PUSH2 0x0c96
00000c8f: CALLDATASIZE
00000c90: PUSH1 0x04
00000c92: PUSH2 0x3807
00000c95: JUMP
00000c96: JUMPDEST
00000c97: PUSH2 0x2a7b
00000c9a: JUMP
00000c9b: JUMPDEST
00000c9c: PUSH1 0x40
00000c9e: MLOAD
00000c9f: PUSH2 0x03be
00000ca2: SWAP2
00000ca3: SWAP1
00000ca4: PUSH2 0x3e9a
00000ca7: JUMP
00000ca8: JUMPDEST
00000ca9: PUSH0
00000caa: DUP1
00000cab: MLOAD
00000cac: PUSH1 0x20
00000cae: PUSH2 0x466e
00000cb1: DUP4
00000cb2: CODECOPY
00000cb3: DUP2
00000cb4: MLOAD
00000cb5: SWAP2
00000cb6: MSTORE
00000cb7: PUSH2 0x0cbf
00000cba: DUP2
00000cbb: PUSH2 0x2b12
00000cbe: JUMP
00000cbf: JUMPDEST
00000cc0: PUSH1 0x40
00000cc2: MLOAD
00000cc3: PUSH4 0x36d16935
00000cc8: PUSH1 0xe2
00000cca: SHL
00000ccb: DUP2
00000ccc: MSTORE
00000ccd: PUSH1 0x32
00000ccf: PUSH1 0x04
00000cd1: DUP3
00000cd2: ADD
00000cd3: MSTORE
00000cd4: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00000ce9: SWAP1
00000cea: PUSH4 0xdb45a4d4
00000cef: SWAP1
00000cf0: PUSH1 0x24
00000cf2: ADD
00000cf3: JUMPDEST
00000cf4: PUSH0
00000cf5: PUSH1 0x40
00000cf7: MLOAD
00000cf8: DUP1
00000cf9: DUP4
00000cfa: SUB
00000cfb: DUP2
00000cfc: DUP7
00000cfd: DUP1
00000cfe: EXTCODESIZE
00000cff: ISZERO
00000d00: DUP1
00000d01: ISZERO
00000d02: PUSH2 0x0d09
00000d05: JUMPI
00000d06: PUSH0
00000d07: DUP1
00000d08: REVERT
00000d09: JUMPDEST
00000d0a: POP
00000d0b: GAS
00000d0c: DELEGATECALL
00000d0d: ISZERO
00000d0e: DUP1
00000d0f: ISZERO
00000d10: PUSH2 0x0d1b
00000d13: JUMPI
00000d14: RETURNDATASIZE
00000d15: PUSH0
00000d16: DUP1
00000d17: RETURNDATACOPY
00000d18: RETURNDATASIZE
00000d19: PUSH0
00000d1a: REVERT
00000d1b: JUMPDEST
00000d1c: POP
00000d1d: POP
00000d1e: POP
00000d1f: POP
00000d20: POP
00000d21: JUMP
00000d22: JUMPDEST
00000d23: PUSH1 0x40
00000d25: MLOAD
00000d26: PUSH3 0x844991
00000d2a: PUSH1 0xe8
00000d2c: SHL
00000d2d: DUP2
00000d2e: MSTORE
00000d2f: PUSH1 0x44
00000d31: PUSH1 0x04
00000d33: DUP3
00000d34: ADD
00000d35: MSTORE
00000d36: PUSH0
00000d37: SWAP1
00000d38: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00000d4d: SWAP1
00000d4e: PUSH4 0x84499100
00000d53: SWAP1
00000d54: PUSH1 0x24
00000d56: ADD
00000d57: JUMPDEST
00000d58: PUSH1 0x20
00000d5a: PUSH1 0x40
00000d5c: MLOAD
00000d5d: DUP1
00000d5e: DUP4
00000d5f: SUB
00000d60: DUP2
00000d61: DUP7
00000d62: GAS
00000d63: DELEGATECALL
00000d64: ISZERO
00000d65: DUP1
00000d66: ISZERO
00000d67: PUSH2 0x0d72
00000d6a: JUMPI
00000d6b: RETURNDATASIZE
00000d6c: PUSH0
00000d6d: DUP1
00000d6e: RETURNDATACOPY
00000d6f: RETURNDATASIZE
00000d70: PUSH0
00000d71: REVERT
00000d72: JUMPDEST
00000d73: POP
00000d74: POP
00000d75: POP
00000d76: POP
00000d77: PUSH1 0x40
00000d79: MLOAD
00000d7a: RETURNDATASIZE
00000d7b: PUSH1 0x1f
00000d7d: NOT
00000d7e: PUSH1 0x1f
00000d80: DUP3
00000d81: ADD
00000d82: AND
00000d83: DUP3
00000d84: ADD
00000d85: DUP1
00000d86: PUSH1 0x40
00000d88: MSTORE
00000d89: POP
00000d8a: DUP2
00000d8b: ADD
00000d8c: SWAP1
00000d8d: PUSH2 0x0d96
00000d90: SWAP2
00000d91: SWAP1
00000d92: PUSH2 0x3eac
00000d95: JUMP
00000d96: JUMPDEST
00000d97: SWAP1
00000d98: POP
00000d99: SWAP1
00000d9a: JUMP
00000d9b: JUMPDEST
00000d9c: PUSH0
00000d9d: PUSH1 0x01
00000d9f: PUSH1 0x01
00000da1: PUSH1 0xe0
00000da3: SHL
00000da4: SUB
00000da5: NOT
00000da6: DUP3
00000da7: AND
00000da8: PUSH4 0x18a4c3c3
00000dad: PUSH1 0xe1
00000daf: SHL
00000db0: EQ
00000db1: DUP1
00000db2: PUSH2 0x0dbf
00000db5: JUMPI
00000db6: POP
00000db7: PUSH2 0x0dbf
00000dba: DUP3
00000dbb: PUSH2 0x2b1c
00000dbe: JUMP
00000dbf: JUMPDEST
00000dc0: SWAP3
00000dc1: SWAP2
00000dc2: POP
00000dc3: POP
00000dc4: JUMP
00000dc5: JUMPDEST
00000dc6: PUSH0
00000dc7: DUP1
00000dc8: MLOAD
00000dc9: PUSH1 0x20
00000dcb: PUSH2 0x466e
00000dce: DUP4
00000dcf: CODECOPY
00000dd0: DUP2
00000dd1: MLOAD
00000dd2: SWAP2
00000dd3: MSTORE
00000dd4: PUSH2 0x0ddc
00000dd7: DUP2
00000dd8: PUSH2 0x2b12
00000ddb: JUMP
00000ddc: JUMPDEST
00000ddd: PUSH1 0x40
00000ddf: MLOAD
00000de0: PUSH4 0xf43b8bd3
00000de5: PUSH1 0xe0
00000de7: SHL
00000de8: DUP2
00000de9: MSTORE
00000dea: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00000dff: SWAP1
00000e00: PUSH4 0xf43b8bd3
00000e05: SWAP1
00000e06: PUSH2 0x0e1b
00000e09: SWAP1
00000e0a: PUSH1 0x4b
00000e0c: SWAP1
00000e0d: PUSH1 0x4c
00000e0f: SWAP1
00000e10: DUP9
00000e11: SWAP1
00000e12: DUP9
00000e13: SWAP1
00000e14: PUSH1 0x04
00000e16: ADD
00000e17: PUSH2 0x3ec3
00000e1a: JUMP
00000e1b: JUMPDEST
00000e1c: PUSH0
00000e1d: PUSH1 0x40
00000e1f: MLOAD
00000e20: DUP1
00000e21: DUP4
00000e22: SUB
00000e23: DUP2
00000e24: DUP7
00000e25: DUP1
00000e26: EXTCODESIZE
00000e27: ISZERO
00000e28: DUP1
00000e29: ISZERO
00000e2a: PUSH2 0x0e31
00000e2d: JUMPI
00000e2e: PUSH0
00000e2f: DUP1
00000e30: REVERT
00000e31: JUMPDEST
00000e32: POP
00000e33: GAS
00000e34: DELEGATECALL
00000e35: ISZERO
00000e36: DUP1
00000e37: ISZERO
00000e38: PUSH2 0x0e43
00000e3b: JUMPI
00000e3c: RETURNDATASIZE
00000e3d: PUSH0
00000e3e: DUP1
00000e3f: RETURNDATACOPY
00000e40: RETURNDATASIZE
00000e41: PUSH0
00000e42: REVERT
00000e43: JUMPDEST
00000e44: POP
00000e45: POP
00000e46: POP
00000e47: POP
00000e48: POP
00000e49: POP
00000e4a: POP
00000e4b: JUMP
00000e4c: JUMPDEST
00000e4d: PUSH0
00000e4e: PUSH2 0x0e56
00000e51: DUP2
00000e52: PUSH2 0x2b12
00000e55: JUMP
00000e56: JUMPDEST
00000e57: PUSH2 0x0e5e
00000e5a: PUSH2 0x2b50
00000e5d: JUMP
00000e5e: JUMPDEST
00000e5f: POP
00000e60: JUMP
00000e61: JUMPDEST
00000e62: PUSH2 0x0e69
00000e65: PUSH2 0x2b5a
00000e68: JUMP
00000e69: JUMPDEST
00000e6a: PUSH32 0xfc8737ab85eb45125971625a9ebdb75cc78e01d5c1fa80c4c6e5203f47bc4fab
00000e8b: PUSH2 0x0e93
00000e8e: DUP2
00000e8f: PUSH2 0x2b12
00000e92: JUMP
00000e93: JUMPDEST
00000e94: PUSH20 0x9a4d116eda832bbbe6671d1a2f7bba58016787ac
00000ea9: PUSH4 0x6cd37b1a
00000eae: PUSH1 0x32
00000eb0: PUSH1 0x3e
00000eb2: PUSH1 0x48
00000eb4: PUSH1 0x4a
00000eb6: DUP16
00000eb7: DUP16
00000eb8: DUP16
00000eb9: DUP16
00000eba: DUP16
00000ebb: DUP16
00000ebc: DUP16
00000ebd: DUP16
00000ebe: DUP16
00000ebf: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
00000ee0: PUSH1 0x40
00000ee2: MLOAD
00000ee3: DUP16
00000ee4: PUSH4 0xffffffff
00000ee9: AND
00000eea: PUSH1 0xe0
00000eec: SHL
00000eed: DUP2
00000eee: MSTORE
00000eef: PUSH1 0x04
00000ef1: ADD
00000ef2: PUSH2 0x0f08
00000ef5: SWAP15
00000ef6: SWAP14
00000ef7: SWAP13
00000ef8: SWAP12
00000ef9: SWAP11
00000efa: SWAP10
00000efb: SWAP9
00000efc: SWAP8
00000efd: SWAP7
00000efe: SWAP6
00000eff: SWAP5
00000f00: SWAP4
00000f01: SWAP3
00000f02: SWAP2
00000f03: SWAP1
00000f04: PUSH2 0x3f75
00000f07: JUMP
00000f08: JUMPDEST
00000f09: PUSH0
00000f0a: PUSH1 0x40
00000f0c: MLOAD
00000f0d: DUP1
00000f0e: DUP4
00000f0f: SUB
00000f10: DUP2
00000f11: DUP7
00000f12: DUP1
00000f13: EXTCODESIZE
00000f14: ISZERO
00000f15: DUP1
00000f16: ISZERO
00000f17: PUSH2 0x0f1e
00000f1a: JUMPI
00000f1b: PUSH0
00000f1c: DUP1
00000f1d: REVERT
00000f1e: JUMPDEST
00000f1f: POP
00000f20: GAS
00000f21: DELEGATECALL
00000f22: ISZERO
00000f23: DUP1
00000f24: ISZERO
00000f25: PUSH2 0x0f30
00000f28: JUMPI
00000f29: RETURNDATASIZE
00000f2a: PUSH0
00000f2b: DUP1
00000f2c: RETURNDATACOPY
00000f2d: RETURNDATASIZE
00000f2e: PUSH0
00000f2f: REVERT
00000f30: JUMPDEST
00000f31: POP
00000f32: POP
00000f33: POP
00000f34: POP
00000f35: POP
00000f36: PUSH2 0x0f4b
00000f39: PUSH1 0x01
00000f3b: PUSH0
00000f3c: DUP1
00000f3d: MLOAD
00000f3e: PUSH1 0x20
00000f40: PUSH2 0x46ce
00000f43: DUP4
00000f44: CODECOPY
00000f45: DUP2
00000f46: MLOAD
00000f47: SWAP2
00000f48: MSTORE
00000f49: SSTORE
00000f4a: JUMP
00000f4b: JUMPDEST
00000f4c: POP
00000f4d: POP
00000f4e: POP
00000f4f: POP
00000f50: POP
00000f51: POP
00000f52: POP
00000f53: POP
00000f54: POP
00000f55: JUMP
00000f56: JUMPDEST
00000f57: PUSH1 0x36
00000f59: SLOAD
00000f5a: PUSH0
00000f5b: NOT
00000f5c: ADD
00000f5d: PUSH2 0x0f79
00000f60: JUMPI
00000f61: PUSH1 0x40
00000f63: MLOAD
00000f64: PUSH4 0x8a4560db
00000f69: PUSH1 0xe0
00000f6b: SHL
00000f6c: DUP2
00000f6d: MSTORE
00000f6e: PUSH1 0x04
00000f70: ADD
00000f71: PUSH1 0x40
00000f73: MLOAD
00000f74: DUP1
00000f75: SWAP2
00000f76: SUB
00000f77: SWAP1
00000f78: REVERT
00000f79: JUMPDEST
00000f7a: PUSH0
00000f7b: DUP1
00000f7c: MLOAD
00000f7d: PUSH1 0x20
00000f7f: PUSH2 0x466e
00000f82: DUP4
00000f83: CODECOPY
00000f84: DUP2
00000f85: MLOAD
00000f86: SWAP2
00000f87: MSTORE
00000f88: PUSH2 0x0f90
00000f8b: DUP2
00000f8c: PUSH2 0x2b12
00000f8f: JUMP
00000f90: JUMPDEST
00000f91: PUSH1 0x40
00000f93: MLOAD
00000f94: PUSH4 0xcb190247
00000f99: PUSH1 0xe0
00000f9b: SHL
00000f9c: DUP2
00000f9d: MSTORE
00000f9e: PUSH20 0xf57727c6468b2e279f4574dd414547569e758105
00000fb3: SWAP1
00000fb4: PUSH4 0xcb190247
00000fb9: SWAP1
00000fba: PUSH2 0x0fd0
00000fbd: SWAP1
00000fbe: PUSH1 0x32
00000fc0: SWAP1
00000fc1: PUSH1 0x48
00000fc3: SWAP1
00000fc4: PUSH1 0x44
00000fc6: SWAP1
00000fc7: DUP9
00000fc8: SWAP1
00000fc9: PUSH1 0x04
00000fcb: ADD
00000fcc: PUSH2 0x4005
00000fcf: JUMP
00000fd0: JUMPDEST
00000fd1: PUSH0
00000fd2: PUSH1 0x40
00000fd4: MLOAD
00000fd5: DUP1
00000fd6: DUP4
00000fd7: SUB
00000fd8: DUP2
00000fd9: DUP7
00000fda: DUP1
00000fdb: EXTCODESIZE
00000fdc: ISZERO
00000fdd: DUP1
00000fde: ISZERO
00000fdf: PUSH2 0x0fe6
00000fe2: JUMPI
00000fe3: PUSH0
00000fe4: DUP1
00000fe5: REVERT
00000fe6: JUMPDEST
00000fe7: POP
00000fe8: GAS
00000fe9: DELEGATECALL
00000fea: ISZERO
00000feb: DUP1
00000fec: ISZERO
00000fed: PUSH2 0x0ff8
00000ff0: JUMPI
00000ff1: RETURNDATASIZE
00000ff2: PUSH0
00000ff3: DUP1
00000ff4: RETURNDATACOPY
00000ff5: RETURNDATASIZE
00000ff6: PUSH0
00000ff7: REVERT
00000ff8: JUMPDEST
00000ff9: POP
00000ffa: POP
00000ffb: POP
00000ffc: POP
00000ffd: POP
00000ffe: POP
00000fff: JUMP
00001000: JUMPDEST
00001001: PUSH0
00001002: SWAP1
00001003: DUP2
00001004: MSTORE
00001005: PUSH0
00001006: DUP1
00001007: MLOAD
00001008: PUSH1 0x20
0000100a: PUSH2 0x46ae
0000100d: DUP4
0000100e: CODECOPY
0000100f: DUP2
00001010: MLOAD
00001011: SWAP2
00001012: MSTORE
00001013: PUSH1 0x20
00001015: MSTORE
00001016: PUSH1 0x40
00001018: SWAP1
00001019: KECCAK256
0000101a: PUSH1 0x01
0000101c: ADD
0000101d: SLOAD
0000101e: SWAP1
0000101f: JUMP
00001020: JUMPDEST
00001021: PUSH1 0x40
00001023: MLOAD
00001024: PUSH3 0x844991
00001028: PUSH1 0xe8
0000102a: SHL
0000102b: DUP2
0000102c: MSTORE
0000102d: PUSH1 0x46
0000102f: PUSH1 0x04
00001031: DUP3
00001032: ADD
00001033: MSTORE
00001034: PUSH0
00001035: SWAP1
00001036: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
0000104b: SWAP1
0000104c: PUSH4 0x84499100
00001051: SWAP1
00001052: PUSH1 0x24
00001054: ADD
00001055: PUSH2 0x0d57
00001058: JUMP
00001059: JUMPDEST
0000105a: DUP2
0000105b: PUSH2 0x1077
0000105e: JUMPI
0000105f: PUSH1 0x40
00001061: MLOAD
00001062: PUSH4 0x1fe1e13d
00001067: PUSH1 0xe1
00001069: SHL
0000106a: DUP2
0000106b: MSTORE
0000106c: PUSH1 0x04
0000106e: ADD
0000106f: PUSH1 0x40
00001071: MLOAD
00001072: DUP1
00001073: SWAP2
00001074: SUB
00001075: SWAP1
00001076: REVERT
00001077: JUMPDEST
00001078: PUSH2 0x1081
0000107b: DUP3
0000107c: DUP3
0000107d: PUSH2 0x2ba4
00001080: JUMP
00001081: JUMPDEST
00001082: POP
00001083: POP
00001084: JUMP
00001085: JUMPDEST
00001086: PUSH0
00001087: DUP1
00001088: MLOAD
00001089: PUSH1 0x20
0000108b: PUSH2 0x468e
0000108e: DUP4
0000108f: CODECOPY
00001090: DUP2
00001091: MLOAD
00001092: SWAP2
00001093: MSTORE
00001094: DUP3
00001095: ISZERO
00001096: DUP1
00001097: ISZERO
00001098: PUSH2 0x10b9
0000109b: JUMPI
0000109c: POP
0000109d: PUSH2 0x10a4
000010a0: PUSH2 0x1f4d
000010a3: JUMP
000010a4: JUMPDEST
000010a5: PUSH1 0x01
000010a7: PUSH1 0x01
000010a9: PUSH1 0xa0
000010ab: SHL
000010ac: SUB
000010ad: AND
000010ae: DUP3
000010af: PUSH1 0x01
000010b1: PUSH1 0x01
000010b3: PUSH1 0xa0
000010b5: SHL
000010b6: SUB
000010b7: AND
000010b8: EQ
000010b9: JUMPDEST
000010ba: ISZERO
000010bb: PUSH2 0x113d
000010be: JUMPI
000010bf: PUSH0
000010c0: DUP1
000010c1: PUSH2 0x10c8
000010c4: PUSH2 0x25ac
000010c7: JUMP
000010c8: JUMPDEST
000010c9: SWAP1
000010ca: SWAP3
000010cb: POP
000010cc: SWAP1
000010cd: POP
000010ce: PUSH1 0x01
000010d0: PUSH1 0x01
000010d2: PUSH1 0xa0
000010d4: SHL
000010d5: SUB
000010d6: DUP3
000010d7: AND
000010d8: ISZERO
000010d9: ISZERO
000010da: DUP1
000010db: PUSH2 0x10ea
000010de: JUMPI
000010df: POP
000010e0: PUSH6 0xffffffffffff
000010e7: DUP2
000010e8: AND
000010e9: ISZERO
000010ea: JUMPDEST
000010eb: DUP1
000010ec: PUSH2 0x10fd
000010ef: JUMPI
000010f0: POP
000010f1: TIMESTAMP
000010f2: PUSH6 0xffffffffffff
000010f9: DUP3
000010fa: AND
000010fb: LT
000010fc: ISZERO
000010fd: JUMPDEST
000010fe: ISZERO
000010ff: PUSH2 0x112a
00001102: JUMPI
00001103: PUSH1 0x40
00001105: MLOAD
00001106: PUSH4 0x19ca5ebb
0000110b: PUSH1 0xe0
0000110d: SHL
0000110e: DUP2
0000110f: MSTORE
00001110: PUSH6 0xffffffffffff
00001117: DUP3
00001118: AND
00001119: PUSH1 0x04
0000111b: DUP3
0000111c: ADD
0000111d: MSTORE
0000111e: PUSH1 0x24
00001120: ADD
00001121: JUMPDEST
00001122: PUSH1 0x40
00001124: MLOAD
00001125: DUP1
00001126: SWAP2
00001127: SUB
00001128: SWAP1
00001129: REVERT
0000112a: JUMPDEST
0000112b: POP
0000112c: POP
0000112d: DUP1
0000112e: SLOAD
0000112f: PUSH6 0xffffffffffff
00001136: PUSH1 0xa0
00001138: SHL
00001139: NOT
0000113a: AND
0000113b: DUP2
0000113c: SSTORE
0000113d: JUMPDEST
0000113e: PUSH2 0x1147
00001141: DUP4
00001142: DUP4
00001143: PUSH2 0x2bc6
00001146: JUMP
00001147: JUMPDEST
00001148: POP
00001149: POP
0000114a: POP
0000114b: JUMP
0000114c: JUMPDEST
0000114d: PUSH0
0000114e: DUP1
0000114f: PUSH1 0x02
00001151: PUSH1 0x32
00001153: PUSH1 0x0a
00001155: ADD
00001156: SLOAD
00001157: SUB
00001158: PUSH2 0x1174
0000115b: JUMPI
0000115c: PUSH1 0x40
0000115e: MLOAD
0000115f: PUSH4 0x13d0ff59
00001164: PUSH1 0xe3
00001166: SHL
00001167: DUP2
00001168: MSTORE
00001169: PUSH1 0x04
0000116b: ADD
0000116c: PUSH1 0x40
0000116e: MLOAD
0000116f: DUP1
00001170: SWAP2
00001171: SUB
00001172: SWAP1
00001173: REVERT
00001174: JUMPDEST
00001175: PUSH2 0x117c
00001178: PUSH2 0x2b5a
0000117b: JUMP
0000117c: JUMPDEST
0000117d: PUSH1 0x40
0000117f: DUP1
00001180: MLOAD
00001181: PUSH1 0xa0
00001183: DUP2
00001184: ADD
00001185: DUP3
00001186: MSTORE
00001187: DUP5
00001188: ISZERO
00001189: ISZERO
0000118a: DUP2
0000118b: MSTORE
0000118c: PUSH1 0x01
0000118e: PUSH1 0x01
00001190: PUSH1 0xa0
00001192: SHL
00001193: SUB
00001194: PUSH32 0x000000000000000000000000177d685384aa1ac5aba41b7e649f9fa0be717fdb
000011b5: DUP2
000011b6: AND
000011b7: PUSH1 0x20
000011b9: DUP4
000011ba: ADD
000011bb: SWAP1
000011bc: DUP2
000011bd: MSTORE
000011be: DUP8
000011bf: DUP3
000011c0: AND
000011c1: DUP4
000011c2: DUP6
000011c3: ADD
000011c4: SWAP1
000011c5: DUP2
000011c6: MSTORE
000011c7: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
000011e8: PUSH1 0x60
000011ea: DUP6
000011eb: ADD
000011ec: SWAP1
000011ed: DUP2
000011ee: MSTORE
000011ef: PUSH1 0x80
000011f1: DUP6
000011f2: ADD
000011f3: DUP12
000011f4: DUP2
000011f5: MSTORE
000011f6: SWAP6
000011f7: MLOAD
000011f8: PUSH4 0x696c3c45
000011fd: PUSH1 0xe1
000011ff: SHL
00001200: DUP2
00001201: MSTORE
00001202: PUSH1 0x4c
00001204: PUSH1 0x04
00001206: DUP3
00001207: ADD
00001208: MSTORE
00001209: PUSH1 0x32
0000120b: PUSH1 0x24
0000120d: DUP3
0000120e: ADD
0000120f: MSTORE
00001210: PUSH1 0x3e
00001212: PUSH1 0x44
00001214: DUP3
00001215: ADD
00001216: MSTORE
00001217: PUSH1 0x46
00001219: PUSH1 0x64
0000121b: DUP3
0000121c: ADD
0000121d: MSTORE
0000121e: PUSH1 0x49
00001220: PUSH1 0x84
00001222: DUP3
00001223: ADD
00001224: MSTORE
00001225: PUSH1 0x48
00001227: PUSH1 0xa4
00001229: DUP3
0000122a: ADD
0000122b: MSTORE
0000122c: SWAP5
0000122d: MLOAD
0000122e: ISZERO
0000122f: ISZERO
00001230: PUSH1 0xc4
00001232: DUP7
00001233: ADD
00001234: MSTORE
00001235: SWAP2
00001236: MLOAD
00001237: DUP4
00001238: AND
00001239: PUSH1 0xe4
0000123b: DUP6
0000123c: ADD
0000123d: MSTORE
0000123e: MLOAD
0000123f: SWAP1
00001240: SWAP2
00001241: AND
00001242: PUSH2 0x0104
00001245: DUP4
00001246: ADD
00001247: MSTORE
00001248: MLOAD
00001249: PUSH2 0x0124
0000124c: DUP3
0000124d: ADD
0000124e: MSTORE
0000124f: SWAP1
00001250: MLOAD
00001251: PUSH2 0x0144
00001254: DUP3
00001255: ADD
00001256: MSTORE
00001257: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
0000126c: SWAP1
0000126d: PUSH4 0xd2d8788a
00001272: SWAP1
00001273: PUSH2 0x0164
00001276: ADD
00001277: PUSH1 0x40
00001279: DUP1
0000127a: MLOAD
0000127b: DUP1
0000127c: DUP4
0000127d: SUB
0000127e: DUP2
0000127f: DUP7
00001280: GAS
00001281: DELEGATECALL
00001282: ISZERO
00001283: DUP1
00001284: ISZERO
00001285: PUSH2 0x1290
00001288: JUMPI
00001289: RETURNDATASIZE
0000128a: PUSH0
0000128b: DUP1
0000128c: RETURNDATACOPY
0000128d: RETURNDATASIZE
0000128e: PUSH0
0000128f: REVERT
00001290: JUMPDEST
00001291: POP
00001292: POP
00001293: POP
00001294: POP
00001295: PUSH1 0x40
00001297: MLOAD
00001298: RETURNDATASIZE
00001299: PUSH1 0x1f
0000129b: NOT
0000129c: PUSH1 0x1f
0000129e: DUP3
0000129f: ADD
000012a0: AND
000012a1: DUP3
000012a2: ADD
000012a3: DUP1
000012a4: PUSH1 0x40
000012a6: MSTORE
000012a7: POP
000012a8: DUP2
000012a9: ADD
000012aa: SWAP1
000012ab: PUSH2 0x12b4
000012ae: SWAP2
000012af: SWAP1
000012b0: PUSH2 0x40bf
000012b3: JUMP
000012b4: JUMPDEST
000012b5: SWAP1
000012b6: SWAP3
000012b7: POP
000012b8: SWAP1
000012b9: POP
000012ba: PUSH2 0x12cf
000012bd: PUSH1 0x01
000012bf: PUSH0
000012c0: DUP1
000012c1: MLOAD
000012c2: PUSH1 0x20
000012c4: PUSH2 0x46ce
000012c7: DUP4
000012c8: CODECOPY
000012c9: DUP2
000012ca: MLOAD
000012cb: SWAP2
000012cc: MSTORE
000012cd: SSTORE
000012ce: JUMP
000012cf: JUMPDEST
000012d0: SWAP4
000012d1: POP
000012d2: SWAP4
000012d3: SWAP2
000012d4: POP
000012d5: POP
000012d6: JUMP
000012d7: JUMPDEST
000012d8: PUSH1 0x3c
000012da: SLOAD
000012db: PUSH1 0x01
000012dd: NOT
000012de: ADD
000012df: PUSH2 0x12fb
000012e2: JUMPI
000012e3: PUSH1 0x40
000012e5: MLOAD
000012e6: PUSH4 0x13d0ff59
000012eb: PUSH1 0xe3
000012ed: SHL
000012ee: DUP2
000012ef: MSTORE
000012f0: PUSH1 0x04
000012f2: ADD
000012f3: PUSH1 0x40
000012f5: MLOAD
000012f6: DUP1
000012f7: SWAP2
000012f8: SUB
000012f9: SWAP1
000012fa: REVERT
000012fb: JUMPDEST
000012fc: PUSH2 0x1303
000012ff: PUSH2 0x2b5a
00001302: JUMP
00001303: JUMPDEST
00001304: PUSH1 0x40
00001306: MLOAD
00001307: PUSH4 0x8b6a4d9f
0000130c: PUSH1 0xe0
0000130e: SHL
0000130f: DUP2
00001310: MSTORE
00001311: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
00001326: SWAP1
00001327: PUSH4 0x8b6a4d9f
0000132c: SWAP1
0000132d: PUSH2 0x134e
00001330: SWAP1
00001331: PUSH1 0x48
00001333: SWAP1
00001334: PUSH1 0x49
00001336: SWAP1
00001337: PUSH1 0x32
00001339: SWAP1
0000133a: PUSH1 0x3e
0000133c: SWAP1
0000133d: DUP13
0000133e: SWAP1
0000133f: DUP13
00001340: SWAP1
00001341: DUP13
00001342: SWAP1
00001343: DUP13
00001344: SWAP1
00001345: DUP13
00001346: SWAP1
00001347: PUSH1 0x04
00001349: ADD
0000134a: PUSH2 0x4111
0000134d: JUMP
0000134e: JUMPDEST
0000134f: PUSH0
00001350: PUSH1 0x40
00001352: MLOAD
00001353: DUP1
00001354: DUP4
00001355: SUB
00001356: DUP2
00001357: DUP7
00001358: DUP1
00001359: EXTCODESIZE
0000135a: ISZERO
0000135b: DUP1
0000135c: ISZERO
0000135d: PUSH2 0x1364
00001360: JUMPI
00001361: PUSH0
00001362: DUP1
00001363: REVERT
00001364: JUMPDEST
00001365: POP
00001366: GAS
00001367: DELEGATECALL
00001368: ISZERO
00001369: DUP1
0000136a: ISZERO
0000136b: PUSH2 0x1376
0000136e: JUMPI
0000136f: RETURNDATASIZE
00001370: PUSH0
00001371: DUP1
00001372: RETURNDATACOPY
00001373: RETURNDATASIZE
00001374: PUSH0
00001375: REVERT
00001376: JUMPDEST
00001377: POP
00001378: POP
00001379: POP
0000137a: POP
0000137b: PUSH2 0x0d1b
0000137e: PUSH1 0x01
00001380: PUSH0
00001381: DUP1
00001382: MLOAD
00001383: PUSH1 0x20
00001385: PUSH2 0x46ce
00001388: DUP4
00001389: CODECOPY
0000138a: DUP2
0000138b: MLOAD
0000138c: SWAP2
0000138d: MSTORE
0000138e: SSTORE
0000138f: JUMP
00001390: JUMPDEST
00001391: PUSH0
00001392: DUP1
00001393: PUSH1 0x02
00001395: PUSH1 0x32
00001397: PUSH1 0x0a
00001399: ADD
0000139a: SLOAD
0000139b: SUB
0000139c: PUSH2 0x13b8
0000139f: JUMPI
000013a0: PUSH1 0x40
000013a2: MLOAD
000013a3: PUSH4 0x13d0ff59
000013a8: PUSH1 0xe3
000013aa: SHL
000013ab: DUP2
000013ac: MSTORE
000013ad: PUSH1 0x04
000013af: ADD
000013b0: PUSH1 0x40
000013b2: MLOAD
000013b3: DUP1
000013b4: SWAP2
000013b5: SUB
000013b6: SWAP1
000013b7: REVERT
000013b8: JUMPDEST
000013b9: PUSH2 0x13c0
000013bc: PUSH2 0x2b5a
000013bf: JUMP
000013c0: JUMPDEST
000013c1: PUSH1 0x40
000013c3: MLOAD
000013c4: PUSH4 0x03543815
000013c9: PUSH1 0xe5
000013cb: SHL
000013cc: DUP2
000013cd: MSTORE
000013ce: PUSH1 0x4c
000013d0: PUSH1 0x04
000013d2: DUP3
000013d3: ADD
000013d4: MSTORE
000013d5: PUSH1 0x3e
000013d7: PUSH1 0x24
000013d9: DUP3
000013da: ADD
000013db: MSTORE
000013dc: PUSH1 0x32
000013de: PUSH1 0x44
000013e0: DUP3
000013e1: ADD
000013e2: MSTORE
000013e3: PUSH1 0x64
000013e5: DUP2
000013e6: ADD
000013e7: DUP6
000013e8: SWAP1
000013e9: MSTORE
000013ea: PUSH1 0x01
000013ec: PUSH1 0x01
000013ee: PUSH1 0xa0
000013f0: SHL
000013f1: SUB
000013f2: DUP1
000013f3: DUP6
000013f4: AND
000013f5: PUSH1 0x84
000013f7: DUP4
000013f8: ADD
000013f9: MSTORE
000013fa: PUSH32 0x000000000000000000000000177d685384aa1ac5aba41b7e649f9fa0be717fdb
0000141b: AND
0000141c: PUSH1 0xa4
0000141e: DUP3
0000141f: ADD
00001420: MSTORE
00001421: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
00001436: SWAP1
00001437: PUSH4 0x6a8702a0
0000143c: SWAP1
0000143d: PUSH1 0xc4
0000143f: ADD
00001440: PUSH1 0x40
00001442: DUP1
00001443: MLOAD
00001444: DUP1
00001445: DUP4
00001446: SUB
00001447: DUP2
00001448: DUP7
00001449: GAS
0000144a: DELEGATECALL
0000144b: ISZERO
0000144c: DUP1
0000144d: ISZERO
0000144e: PUSH2 0x1459
00001451: JUMPI
00001452: RETURNDATASIZE
00001453: PUSH0
00001454: DUP1
00001455: RETURNDATACOPY
00001456: RETURNDATASIZE
00001457: PUSH0
00001458: REVERT
00001459: JUMPDEST
0000145a: POP
0000145b: POP
0000145c: POP
0000145d: POP
0000145e: PUSH1 0x40
00001460: MLOAD
00001461: RETURNDATASIZE
00001462: PUSH1 0x1f
00001464: NOT
00001465: PUSH1 0x1f
00001467: DUP3
00001468: ADD
00001469: AND
0000146a: DUP3
0000146b: ADD
0000146c: DUP1
0000146d: PUSH1 0x40
0000146f: MSTORE
00001470: POP
00001471: DUP2
00001472: ADD
00001473: SWAP1
00001474: PUSH2 0x147d
00001477: SWAP2
00001478: SWAP1
00001479: PUSH2 0x40bf
0000147c: JUMP
0000147d: JUMPDEST
0000147e: SWAP1
0000147f: SWAP3
00001480: POP
00001481: SWAP1
00001482: POP
00001483: PUSH2 0x1498
00001486: PUSH1 0x01
00001488: PUSH0
00001489: DUP1
0000148a: MLOAD
0000148b: PUSH1 0x20
0000148d: PUSH2 0x46ce
00001490: DUP4
00001491: CODECOPY
00001492: DUP2
00001493: MLOAD
00001494: SWAP2
00001495: MSTORE
00001496: SSTORE
00001497: JUMP
00001498: JUMPDEST
00001499: SWAP3
0000149a: POP
0000149b: SWAP3
0000149c: SWAP1
0000149d: POP
0000149e: JUMP
0000149f: JUMPDEST
000014a0: PUSH1 0x43
000014a2: SLOAD
000014a3: PUSH1 0x01
000014a5: PUSH1 0x01
000014a7: PUSH1 0xa0
000014a9: SHL
000014aa: SUB
000014ab: AND
000014ac: CALLER
000014ad: EQ
000014ae: PUSH2 0x14ca
000014b1: JUMPI
000014b2: PUSH1 0x40
000014b4: MLOAD
000014b5: PUSH4 0xb5674cfd
000014ba: PUSH1 0xe0
000014bc: SHL
000014bd: DUP2
000014be: MSTORE
000014bf: PUSH1 0x04
000014c1: ADD
000014c2: PUSH1 0x40
000014c4: MLOAD
000014c5: DUP1
000014c6: SWAP2
000014c7: SUB
000014c8: SWAP1
000014c9: REVERT
000014ca: JUMPDEST
000014cb: PUSH1 0x40
000014cd: MLOAD
000014ce: PUSH4 0x1075aca7
000014d3: PUSH1 0xe3
000014d5: SHL
000014d6: DUP2
000014d7: MSTORE
000014d8: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
000014ed: SWAP1
000014ee: PUSH4 0x83ad6538
000014f3: SWAP1
000014f4: PUSH2 0x0fd0
000014f7: SWAP1
000014f8: PUSH1 0x48
000014fa: SWAP1
000014fb: PUSH1 0x32
000014fd: SWAP1
000014fe: DUP8
000014ff: SWAP1
00001500: DUP8
00001501: SWAP1
00001502: CALLVALUE
00001503: SWAP1
00001504: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001525: SWAP1
00001526: PUSH1 0x04
00001528: ADD
00001529: PUSH2 0x416e
0000152c: JUMP
0000152d: JUMPDEST
0000152e: PUSH1 0x36
00001530: SLOAD
00001531: PUSH0
00001532: NOT
00001533: ADD
00001534: PUSH2 0x1550
00001537: JUMPI
00001538: PUSH1 0x40
0000153a: MLOAD
0000153b: PUSH4 0x8a4560db
00001540: PUSH1 0xe0
00001542: SHL
00001543: DUP2
00001544: MSTORE
00001545: PUSH1 0x04
00001547: ADD
00001548: PUSH1 0x40
0000154a: MLOAD
0000154b: DUP1
0000154c: SWAP2
0000154d: SUB
0000154e: SWAP1
0000154f: REVERT
00001550: JUMPDEST
00001551: PUSH0
00001552: DUP1
00001553: MLOAD
00001554: PUSH1 0x20
00001556: PUSH2 0x466e
00001559: DUP4
0000155a: CODECOPY
0000155b: DUP2
0000155c: MLOAD
0000155d: SWAP2
0000155e: MSTORE
0000155f: PUSH2 0x1567
00001562: DUP2
00001563: PUSH2 0x2b12
00001566: JUMP
00001567: JUMPDEST
00001568: PUSH1 0x40
0000156a: MLOAD
0000156b: PUSH4 0x1e9708a5
00001570: PUSH1 0xe3
00001572: SHL
00001573: DUP2
00001574: MSTORE
00001575: PUSH1 0x44
00001577: PUSH1 0x04
00001579: DUP3
0000157a: ADD
0000157b: MSTORE
0000157c: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00001591: SWAP1
00001592: PUSH4 0xf4b84528
00001597: SWAP1
00001598: PUSH1 0x24
0000159a: ADD
0000159b: PUSH2 0x0cf3
0000159e: JUMP
0000159f: JUMPDEST
000015a0: PUSH1 0x40
000015a2: MLOAD
000015a3: PUSH4 0x446ad5c9
000015a8: PUSH1 0xe1
000015aa: SHL
000015ab: DUP2
000015ac: MSTORE
000015ad: PUSH1 0x60
000015af: SWAP1
000015b0: DUP2
000015b1: SWAP1
000015b2: DUP2
000015b3: SWAP1
000015b4: PUSH0
000015b5: SWAP1
000015b6: DUP2
000015b7: SWAP1
000015b8: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
000015cd: SWAP1
000015ce: PUSH4 0x88d5ab92
000015d3: SWAP1
000015d4: PUSH2 0x15e7
000015d7: SWAP1
000015d8: PUSH1 0x44
000015da: SWAP1
000015db: PUSH1 0x3d
000015dd: SWAP1
000015de: DUP12
000015df: SWAP1
000015e0: PUSH1 0x04
000015e2: ADD
000015e3: PUSH2 0x41da
000015e6: JUMP
000015e7: JUMPDEST
000015e8: PUSH0
000015e9: PUSH1 0x40
000015eb: MLOAD
000015ec: DUP1
000015ed: DUP4
000015ee: SUB
000015ef: DUP2
000015f0: DUP7
000015f1: GAS
000015f2: DELEGATECALL
000015f3: ISZERO
000015f4: DUP1
000015f5: ISZERO
000015f6: PUSH2 0x1601
000015f9: JUMPI
000015fa: RETURNDATASIZE
000015fb: PUSH0
000015fc: DUP1
000015fd: RETURNDATACOPY
000015fe: RETURNDATASIZE
000015ff: PUSH0
00001600: REVERT
00001601: JUMPDEST
00001602: POP
00001603: POP
00001604: POP
00001605: POP
00001606: PUSH1 0x40
00001608: MLOAD
00001609: RETURNDATASIZE
0000160a: PUSH0
0000160b: DUP3
0000160c: RETURNDATACOPY
0000160d: PUSH1 0x1f
0000160f: RETURNDATASIZE
00001610: SWAP1
00001611: DUP2
00001612: ADD
00001613: PUSH1 0x1f
00001615: NOT
00001616: AND
00001617: DUP3
00001618: ADD
00001619: PUSH1 0x40
0000161b: MSTORE
0000161c: PUSH2 0x1628
0000161f: SWAP2
00001620: SWAP1
00001621: DUP2
00001622: ADD
00001623: SWAP1
00001624: PUSH2 0x42da
00001627: JUMP
00001628: JUMPDEST
00001629: SWAP4
0000162a: SWAP11
0000162b: SWAP3
0000162c: SWAP10
0000162d: POP
0000162e: SWAP1
0000162f: SWAP8
00001630: POP
00001631: SWAP6
00001632: POP
00001633: SWAP1
00001634: SWAP4
00001635: POP
00001636: SWAP2
00001637: POP
00001638: POP
00001639: JUMP
0000163a: JUMPDEST
0000163b: PUSH2 0x1693
0000163e: PUSH1 0x40
00001640: MLOAD
00001641: DUP1
00001642: PUSH2 0x0180
00001645: ADD
00001646: PUSH1 0x40
00001648: MSTORE
00001649: DUP1
0000164a: PUSH0
0000164b: DUP2
0000164c: MSTORE
0000164d: PUSH1 0x20
0000164f: ADD
00001650: PUSH0
00001651: DUP2
00001652: MSTORE
00001653: PUSH1 0x20
00001655: ADD
00001656: PUSH0
00001657: DUP2
00001658: MSTORE
00001659: PUSH1 0x20
0000165b: ADD
0000165c: PUSH0
0000165d: DUP2
0000165e: MSTORE
0000165f: PUSH1 0x20
00001661: ADD
00001662: PUSH0
00001663: DUP2
00001664: MSTORE
00001665: PUSH1 0x20
00001667: ADD
00001668: PUSH0
00001669: DUP2
0000166a: MSTORE
0000166b: PUSH1 0x20
0000166d: ADD
0000166e: PUSH0
0000166f: DUP2
00001670: MSTORE
00001671: PUSH1 0x20
00001673: ADD
00001674: PUSH0
00001675: DUP2
00001676: MSTORE
00001677: PUSH1 0x20
00001679: ADD
0000167a: PUSH0
0000167b: DUP2
0000167c: MSTORE
0000167d: PUSH1 0x20
0000167f: ADD
00001680: PUSH0
00001681: DUP2
00001682: MSTORE
00001683: PUSH1 0x20
00001685: ADD
00001686: PUSH0
00001687: DUP2
00001688: MSTORE
00001689: PUSH1 0x20
0000168b: ADD
0000168c: PUSH1 0x60
0000168e: DUP2
0000168f: MSTORE
00001690: POP
00001691: SWAP1
00001692: JUMP
00001693: JUMPDEST
00001694: PUSH1 0x40
00001696: DUP1
00001697: MLOAD
00001698: PUSH2 0x0180
0000169b: DUP2
0000169c: ADD
0000169d: DUP3
0000169e: MSTORE
0000169f: PUSH1 0x32
000016a1: DUP1
000016a2: SLOAD
000016a3: DUP3
000016a4: MSTORE
000016a5: PUSH1 0x33
000016a7: SLOAD
000016a8: PUSH1 0x20
000016aa: DUP4
000016ab: ADD
000016ac: MSTORE
000016ad: PUSH1 0x34
000016af: SLOAD
000016b0: SWAP3
000016b1: DUP3
000016b2: ADD
000016b3: SWAP3
000016b4: SWAP1
000016b5: SWAP3
000016b6: MSTORE
000016b7: PUSH1 0x35
000016b9: SLOAD
000016ba: PUSH1 0x60
000016bc: DUP3
000016bd: ADD
000016be: MSTORE
000016bf: PUSH1 0x36
000016c1: SLOAD
000016c2: PUSH1 0x80
000016c4: DUP3
000016c5: ADD
000016c6: MSTORE
000016c7: PUSH1 0x37
000016c9: SLOAD
000016ca: PUSH1 0xa0
000016cc: DUP3
000016cd: ADD
000016ce: MSTORE
000016cf: PUSH1 0x38
000016d1: SLOAD
000016d2: PUSH1 0xc0
000016d4: DUP3
000016d5: ADD
000016d6: MSTORE
000016d7: PUSH1 0x39
000016d9: SLOAD
000016da: PUSH1 0xe0
000016dc: DUP3
000016dd: ADD
000016de: MSTORE
000016df: PUSH1 0x3a
000016e1: SLOAD
000016e2: PUSH2 0x0100
000016e5: DUP3
000016e6: ADD
000016e7: MSTORE
000016e8: PUSH1 0x3b
000016ea: SLOAD
000016eb: PUSH2 0x0120
000016ee: DUP3
000016ef: ADD
000016f0: MSTORE
000016f1: PUSH1 0x3c
000016f3: SLOAD
000016f4: PUSH2 0x0140
000016f7: DUP3
000016f8: ADD
000016f9: MSTORE
000016fa: PUSH1 0x3d
000016fc: DUP1
000016fd: SLOAD
000016fe: SWAP2
000016ff: SWAP3
00001700: SWAP2
00001701: PUSH2 0x0160
00001704: DUP5
00001705: ADD
00001706: SWAP2
00001707: SWAP1
00001708: PUSH2 0x1710
0000170b: SWAP1
0000170c: PUSH2 0x41a2
0000170f: JUMP
00001710: JUMPDEST
00001711: DUP1
00001712: PUSH1 0x1f
00001714: ADD
00001715: PUSH1 0x20
00001717: DUP1
00001718: SWAP2
00001719: DIV
0000171a: MUL
0000171b: PUSH1 0x20
0000171d: ADD
0000171e: PUSH1 0x40
00001720: MLOAD
00001721: SWAP1
00001722: DUP2
00001723: ADD
00001724: PUSH1 0x40
00001726: MSTORE
00001727: DUP1
00001728: SWAP3
00001729: SWAP2
0000172a: SWAP1
0000172b: DUP2
0000172c: DUP2
0000172d: MSTORE
0000172e: PUSH1 0x20
00001730: ADD
00001731: DUP3
00001732: DUP1
00001733: SLOAD
00001734: PUSH2 0x173c
00001737: SWAP1
00001738: PUSH2 0x41a2
0000173b: JUMP
0000173c: JUMPDEST
0000173d: DUP1
0000173e: ISZERO
0000173f: PUSH2 0x1787
00001742: JUMPI
00001743: DUP1
00001744: PUSH1 0x1f
00001746: LT
00001747: PUSH2 0x175e
0000174a: JUMPI
0000174b: PUSH2 0x0100
0000174e: DUP1
0000174f: DUP4
00001750: SLOAD
00001751: DIV
00001752: MUL
00001753: DUP4
00001754: MSTORE
00001755: SWAP2
00001756: PUSH1 0x20
00001758: ADD
00001759: SWAP2
0000175a: PUSH2 0x1787
0000175d: JUMP
0000175e: JUMPDEST
0000175f: DUP3
00001760: ADD
00001761: SWAP2
00001762: SWAP1
00001763: PUSH0
00001764: MSTORE
00001765: PUSH1 0x20
00001767: PUSH0
00001768: KECCAK256
00001769: SWAP1
0000176a: JUMPDEST
0000176b: DUP2
0000176c: SLOAD
0000176d: DUP2
0000176e: MSTORE
0000176f: SWAP1
00001770: PUSH1 0x01
00001772: ADD
00001773: SWAP1
00001774: PUSH1 0x20
00001776: ADD
00001777: DUP1
00001778: DUP4
00001779: GT
0000177a: PUSH2 0x176a
0000177d: JUMPI
0000177e: DUP3
0000177f: SWAP1
00001780: SUB
00001781: PUSH1 0x1f
00001783: AND
00001784: DUP3
00001785: ADD
00001786: SWAP2
00001787: JUMPDEST
00001788: POP
00001789: POP
0000178a: POP
0000178b: POP
0000178c: POP
0000178d: DUP2
0000178e: MSTORE
0000178f: POP
00001790: POP
00001791: SWAP1
00001792: POP
00001793: SWAP1
00001794: JUMP
00001795: JUMPDEST
00001796: PUSH1 0x32
00001798: DUP1
00001799: SLOAD
0000179a: PUSH1 0x33
0000179c: SLOAD
0000179d: PUSH1 0x34
0000179f: SLOAD
000017a0: PUSH1 0x35
000017a2: SLOAD
000017a3: PUSH1 0x36
000017a5: SLOAD
000017a6: PUSH1 0x37
000017a8: SLOAD
000017a9: PUSH1 0x38
000017ab: SLOAD
000017ac: PUSH1 0x39
000017ae: SLOAD
000017af: PUSH1 0x3a
000017b1: SLOAD
000017b2: PUSH1 0x3b
000017b4: SLOAD
000017b5: PUSH1 0x3c
000017b7: SLOAD
000017b8: PUSH1 0x3d
000017ba: DUP1
000017bb: SLOAD
000017bc: SWAP12
000017bd: SWAP13
000017be: SWAP11
000017bf: SWAP12
000017c0: SWAP10
000017c1: SWAP11
000017c2: SWAP9
000017c3: SWAP10
000017c4: SWAP8
000017c5: SWAP9
000017c6: SWAP7
000017c7: SWAP8
000017c8: SWAP6
000017c9: SWAP7
000017ca: SWAP5
000017cb: SWAP6
000017cc: SWAP4
000017cd: SWAP5
000017ce: SWAP3
000017cf: SWAP4
000017d0: SWAP2
000017d1: SWAP3
000017d2: SWAP2
000017d3: PUSH2 0x17db
000017d6: SWAP1
000017d7: PUSH2 0x41a2
000017da: JUMP
000017db: JUMPDEST
000017dc: DUP1
000017dd: PUSH1 0x1f
000017df: ADD
000017e0: PUSH1 0x20
000017e2: DUP1
000017e3: SWAP2
000017e4: DIV
000017e5: MUL
000017e6: PUSH1 0x20
000017e8: ADD
000017e9: PUSH1 0x40
000017eb: MLOAD
000017ec: SWAP1
000017ed: DUP2
000017ee: ADD
000017ef: PUSH1 0x40
000017f1: MSTORE
000017f2: DUP1
000017f3: SWAP3
000017f4: SWAP2
000017f5: SWAP1
000017f6: DUP2
000017f7: DUP2
000017f8: MSTORE
000017f9: PUSH1 0x20
000017fb: ADD
000017fc: DUP3
000017fd: DUP1
000017fe: SLOAD
000017ff: PUSH2 0x1807
00001802: SWAP1
00001803: PUSH2 0x41a2
00001806: JUMP
00001807: JUMPDEST
00001808: DUP1
00001809: ISZERO
0000180a: PUSH2 0x1852
0000180d: JUMPI
0000180e: DUP1
0000180f: PUSH1 0x1f
00001811: LT
00001812: PUSH2 0x1829
00001815: JUMPI
00001816: PUSH2 0x0100
00001819: DUP1
0000181a: DUP4
0000181b: SLOAD
0000181c: DIV
0000181d: MUL
0000181e: DUP4
0000181f: MSTORE
00001820: SWAP2
00001821: PUSH1 0x20
00001823: ADD
00001824: SWAP2
00001825: PUSH2 0x1852
00001828: JUMP
00001829: JUMPDEST
0000182a: DUP3
0000182b: ADD
0000182c: SWAP2
0000182d: SWAP1
0000182e: PUSH0
0000182f: MSTORE
00001830: PUSH1 0x20
00001832: PUSH0
00001833: KECCAK256
00001834: SWAP1
00001835: JUMPDEST
00001836: DUP2
00001837: SLOAD
00001838: DUP2
00001839: MSTORE
0000183a: SWAP1
0000183b: PUSH1 0x01
0000183d: ADD
0000183e: SWAP1
0000183f: PUSH1 0x20
00001841: ADD
00001842: DUP1
00001843: DUP4
00001844: GT
00001845: PUSH2 0x1835
00001848: JUMPI
00001849: DUP3
0000184a: SWAP1
0000184b: SUB
0000184c: PUSH1 0x1f
0000184e: AND
0000184f: DUP3
00001850: ADD
00001851: SWAP2
00001852: JUMPDEST
00001853: POP
00001854: POP
00001855: POP
00001856: POP
00001857: POP
00001858: SWAP1
00001859: POP
0000185a: DUP13
0000185b: JUMP
0000185c: JUMPDEST
0000185d: PUSH2 0x1864
00001860: PUSH2 0x2b5a
00001863: JUMP
00001864: JUMPDEST
00001865: PUSH32 0xfc8737ab85eb45125971625a9ebdb75cc78e01d5c1fa80c4c6e5203f47bc4fab
00001886: PUSH2 0x188e
00001889: DUP2
0000188a: PUSH2 0x2b12
0000188d: JUMP
0000188e: JUMPDEST
0000188f: PUSH1 0x40
00001891: MLOAD
00001892: PUSH4 0x3b011e0b
00001897: PUSH1 0xe0
00001899: SHL
0000189a: DUP2
0000189b: MSTORE
0000189c: PUSH1 0x32
0000189e: PUSH1 0x04
000018a0: DUP3
000018a1: ADD
000018a2: MSTORE
000018a3: PUSH1 0x3e
000018a5: PUSH1 0x24
000018a7: DUP3
000018a8: ADD
000018a9: MSTORE
000018aa: PUSH1 0x44
000018ac: DUP1
000018ad: DUP3
000018ae: ADD
000018af: MSTORE
000018b0: PUSH1 0x46
000018b2: PUSH1 0x64
000018b4: DUP3
000018b5: ADD
000018b6: MSTORE
000018b7: PUSH1 0x48
000018b9: PUSH1 0x84
000018bb: DUP3
000018bc: ADD
000018bd: MSTORE
000018be: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
000018df: PUSH1 0xa4
000018e1: DUP3
000018e2: ADD
000018e3: MSTORE
000018e4: PUSH1 0x01
000018e6: PUSH1 0x01
000018e8: PUSH1 0xa0
000018ea: SHL
000018eb: SUB
000018ec: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
0000190d: AND
0000190e: PUSH1 0xc4
00001910: DUP3
00001911: ADD
00001912: MSTORE
00001913: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000
00001934: PUSH1 0xe4
00001936: DUP3
00001937: ADD
00001938: MSTORE
00001939: PUSH20 0x9a4d116eda832bbbe6671d1a2f7bba58016787ac
0000194e: SWAP1
0000194f: PUSH4 0x3b011e0b
00001954: SWAP1
00001955: PUSH2 0x0104
00001958: ADD
00001959: PUSH0
0000195a: PUSH1 0x40
0000195c: MLOAD
0000195d: DUP1
0000195e: DUP4
0000195f: SUB
00001960: DUP2
00001961: DUP7
00001962: DUP1
00001963: EXTCODESIZE
00001964: ISZERO
00001965: DUP1
00001966: ISZERO
00001967: PUSH2 0x196e
0000196a: JUMPI
0000196b: PUSH0
0000196c: DUP1
0000196d: REVERT
0000196e: JUMPDEST
0000196f: POP
00001970: GAS
00001971: DELEGATECALL
00001972: ISZERO
00001973: DUP1
00001974: ISZERO
00001975: PUSH2 0x1980
00001978: JUMPI
00001979: RETURNDATASIZE
0000197a: PUSH0
0000197b: DUP1
0000197c: RETURNDATACOPY
0000197d: RETURNDATASIZE
0000197e: PUSH0
0000197f: REVERT
00001980: JUMPDEST
00001981: POP
00001982: POP
00001983: POP
00001984: POP
00001985: POP
00001986: PUSH2 0x199b
00001989: PUSH1 0x01
0000198b: PUSH0
0000198c: DUP1
0000198d: MLOAD
0000198e: PUSH1 0x20
00001990: PUSH2 0x46ce
00001993: DUP4
00001994: CODECOPY
00001995: DUP2
00001996: MLOAD
00001997: SWAP2
00001998: MSTORE
00001999: SSTORE
0000199a: JUMP
0000199b: JUMPDEST
0000199c: JUMP
0000199d: JUMPDEST
0000199e: PUSH0
0000199f: PUSH2 0x19a7
000019a2: DUP2
000019a3: PUSH2 0x2b12
000019a6: JUMP
000019a7: JUMPDEST
000019a8: PUSH2 0x1081
000019ab: DUP3
000019ac: PUSH2 0x2bf9
000019af: JUMP
000019b0: JUMPDEST
000019b1: PUSH0
000019b2: PUSH2 0x19ba
000019b5: DUP2
000019b6: PUSH2 0x2b12
000019b9: JUMP
000019ba: JUMPDEST
000019bb: PUSH2 0x1081
000019be: DUP3
000019bf: PUSH2 0x2c6b
000019c2: JUMP
000019c3: JUMPDEST
000019c4: PUSH1 0x43
000019c6: SLOAD
000019c7: PUSH1 0x01
000019c9: PUSH1 0x01
000019cb: PUSH1 0xa0
000019cd: SHL
000019ce: SUB
000019cf: AND
000019d0: CALLER
000019d1: EQ
000019d2: PUSH2 0x19ee
000019d5: JUMPI
000019d6: PUSH1 0x40
000019d8: MLOAD
000019d9: PUSH4 0xb5674cfd
000019de: PUSH1 0xe0
000019e0: SHL
000019e1: DUP2
000019e2: MSTORE
000019e3: PUSH1 0x04
000019e5: ADD
000019e6: PUSH1 0x40
000019e8: MLOAD
000019e9: DUP1
000019ea: SWAP2
000019eb: SUB
000019ec: SWAP1
000019ed: REVERT
000019ee: JUMPDEST
000019ef: PUSH0
000019f0: CALLVALUE
000019f1: SWAP1
000019f2: POP
000019f3: PUSH0
000019f4: PUSH1 0x48
000019f6: DUP11
000019f7: DUP11
000019f8: PUSH1 0x40
000019fa: MLOAD
000019fb: PUSH2 0x1a05
000019fe: SWAP3
000019ff: SWAP2
00001a00: SWAP1
00001a01: PUSH2 0x436b
00001a04: JUMP
00001a05: JUMPDEST
00001a06: SWAP1
00001a07: DUP2
00001a08: MSTORE
00001a09: PUSH1 0x40
00001a0b: MLOAD
00001a0c: SWAP1
00001a0d: DUP2
00001a0e: SWAP1
00001a0f: SUB
00001a10: PUSH1 0x20
00001a12: ADD
00001a13: SWAP1
00001a14: KECCAK256
00001a15: SLOAD
00001a16: PUSH1 0xff
00001a18: AND
00001a19: SWAP1
00001a1a: POP
00001a1b: PUSH1 0x01
00001a1d: DUP2
00001a1e: PUSH1 0x04
00001a20: DUP2
00001a21: GT
00001a22: ISZERO
00001a23: PUSH2 0x1a2e
00001a26: JUMPI
00001a27: PUSH2 0x1a2e
00001a2a: PUSH2 0x3d4a
00001a2d: JUMP
00001a2e: JUMPDEST
00001a2f: EQ
00001a30: ISZERO
00001a31: DUP1
00001a32: ISZERO
00001a33: PUSH2 0x1a4e
00001a36: JUMPI
00001a37: POP
00001a38: PUSH1 0x02
00001a3a: DUP2
00001a3b: PUSH1 0x04
00001a3d: DUP2
00001a3e: GT
00001a3f: ISZERO
00001a40: PUSH2 0x1a4b
00001a43: JUMPI
00001a44: PUSH2 0x1a4b
00001a47: PUSH2 0x3d4a
00001a4a: JUMP
00001a4b: JUMPDEST
00001a4c: EQ
00001a4d: ISZERO
00001a4e: JUMPDEST
00001a4f: ISZERO
00001a50: PUSH2 0x1a6c
00001a53: JUMPI
00001a54: PUSH1 0x40
00001a56: MLOAD
00001a57: PUSH4 0x21f03be7
00001a5c: PUSH1 0xe2
00001a5e: SHL
00001a5f: DUP2
00001a60: MSTORE
00001a61: PUSH1 0x04
00001a63: ADD
00001a64: PUSH1 0x40
00001a66: MLOAD
00001a67: DUP1
00001a68: SWAP2
00001a69: SUB
00001a6a: SWAP1
00001a6b: REVERT
00001a6c: JUMPDEST
00001a6d: DUP5
00001a6e: ISZERO
00001a6f: PUSH2 0x1b10
00001a72: JUMPI
00001a73: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00001a88: PUSH4 0xfa86cfe2
00001a8d: PUSH1 0x32
00001a8f: PUSH1 0x3e
00001a91: PUSH1 0x4a
00001a93: PUSH2 0x1abc
00001a96: DUP8
00001a97: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001ab8: PUSH2 0x438e
00001abb: JUMP
00001abc: JUMPDEST
00001abd: DUP10
00001abe: DUP10
00001abf: PUSH1 0x40
00001ac1: MLOAD
00001ac2: DUP8
00001ac3: PUSH4 0xffffffff
00001ac8: AND
00001ac9: PUSH1 0xe0
00001acb: SHL
00001acc: DUP2
00001acd: MSTORE
00001ace: PUSH1 0x04
00001ad0: ADD
00001ad1: PUSH2 0x1adf
00001ad4: SWAP7
00001ad5: SWAP6
00001ad6: SWAP5
00001ad7: SWAP4
00001ad8: SWAP3
00001ad9: SWAP2
00001ada: SWAP1
00001adb: PUSH2 0x43a1
00001ade: JUMP
00001adf: JUMPDEST
00001ae0: PUSH0
00001ae1: PUSH1 0x40
00001ae3: MLOAD
00001ae4: DUP1
00001ae5: DUP4
00001ae6: SUB
00001ae7: DUP2
00001ae8: DUP7
00001ae9: DUP1
00001aea: EXTCODESIZE
00001aeb: ISZERO
00001aec: DUP1
00001aed: ISZERO
00001aee: PUSH2 0x1af5
00001af1: JUMPI
00001af2: PUSH0
00001af3: DUP1
00001af4: REVERT
00001af5: JUMPDEST
00001af6: POP
00001af7: GAS
00001af8: DELEGATECALL
00001af9: ISZERO
00001afa: DUP1
00001afb: ISZERO
00001afc: PUSH2 0x1b07
00001aff: JUMPI
00001b00: RETURNDATASIZE
00001b01: PUSH0
00001b02: DUP1
00001b03: RETURNDATACOPY
00001b04: RETURNDATASIZE
00001b05: PUSH0
00001b06: REVERT
00001b07: JUMPDEST
00001b08: POP
00001b09: POP
00001b0a: POP
00001b0b: POP
00001b0c: PUSH2 0x1b50
00001b0f: JUMP
00001b10: JUMPDEST
00001b11: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001b32: DUP3
00001b33: EQ
00001b34: PUSH2 0x1b50
00001b37: JUMPI
00001b38: PUSH1 0x40
00001b3a: MLOAD
00001b3b: PUSH4 0x162908e3
00001b40: PUSH1 0xe1
00001b42: SHL
00001b43: DUP2
00001b44: MSTORE
00001b45: PUSH1 0x04
00001b47: ADD
00001b48: PUSH1 0x40
00001b4a: MLOAD
00001b4b: DUP1
00001b4c: SWAP2
00001b4d: SUB
00001b4e: SWAP1
00001b4f: REVERT
00001b50: JUMPDEST
00001b51: PUSH1 0x01
00001b53: DUP2
00001b54: PUSH1 0x04
00001b56: DUP2
00001b57: GT
00001b58: ISZERO
00001b59: PUSH2 0x1b64
00001b5c: JUMPI
00001b5d: PUSH2 0x1b64
00001b60: PUSH2 0x3d4a
00001b63: JUMP
00001b64: JUMPDEST
00001b65: SUB
00001b66: PUSH2 0x1da8
00001b69: JUMPI
00001b6a: PUSH1 0x60
00001b6c: DUP7
00001b6d: PUSH2 0x1bf2
00001b70: JUMPI
00001b71: PUSH1 0x40
00001b73: MLOAD
00001b74: PUSH4 0x54427913
00001b79: PUSH1 0xe0
00001b7b: SHL
00001b7c: DUP2
00001b7d: MSTORE
00001b7e: PUSH1 0x46
00001b80: PUSH1 0x04
00001b82: DUP3
00001b83: ADD
00001b84: MSTORE
00001b85: PUSH1 0x24
00001b87: DUP2
00001b88: ADD
00001b89: DUP11
00001b8a: SWAP1
00001b8b: MSTORE
00001b8c: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00001ba1: SWAP1
00001ba2: PUSH4 0x54427913
00001ba7: SWAP1
00001ba8: PUSH1 0x44
00001baa: ADD
00001bab: PUSH0
00001bac: PUSH1 0x40
00001bae: MLOAD
00001baf: DUP1
00001bb0: DUP4
00001bb1: SUB
00001bb2: DUP2
00001bb3: DUP7
00001bb4: GAS
00001bb5: DELEGATECALL
00001bb6: ISZERO
00001bb7: DUP1
00001bb8: ISZERO
00001bb9: PUSH2 0x1bc4
00001bbc: JUMPI
00001bbd: RETURNDATASIZE
00001bbe: PUSH0
00001bbf: DUP1
00001bc0: RETURNDATACOPY
00001bc1: RETURNDATASIZE
00001bc2: PUSH0
00001bc3: REVERT
00001bc4: JUMPDEST
00001bc5: POP
00001bc6: POP
00001bc7: POP
00001bc8: POP
00001bc9: PUSH1 0x40
00001bcb: MLOAD
00001bcc: RETURNDATASIZE
00001bcd: PUSH0
00001bce: DUP3
00001bcf: RETURNDATACOPY
00001bd0: PUSH1 0x1f
00001bd2: RETURNDATASIZE
00001bd3: SWAP1
00001bd4: DUP2
00001bd5: ADD
00001bd6: PUSH1 0x1f
00001bd8: NOT
00001bd9: AND
00001bda: DUP3
00001bdb: ADD
00001bdc: PUSH1 0x40
00001bde: MSTORE
00001bdf: PUSH2 0x1beb
00001be2: SWAP2
00001be3: SWAP1
00001be4: DUP2
00001be5: ADD
00001be6: SWAP1
00001be7: PUSH2 0x43d8
00001bea: JUMP
00001beb: JUMPDEST
00001bec: SWAP1
00001bed: POP
00001bee: PUSH2 0x1c70
00001bf1: JUMP
00001bf2: JUMPDEST
00001bf3: PUSH1 0x40
00001bf5: MLOAD
00001bf6: PUSH4 0x176d231d
00001bfb: PUSH1 0xe2
00001bfd: SHL
00001bfe: DUP2
00001bff: MSTORE
00001c00: PUSH1 0x46
00001c02: PUSH1 0x04
00001c04: DUP3
00001c05: ADD
00001c06: MSTORE
00001c07: PUSH1 0x24
00001c09: DUP2
00001c0a: ADD
00001c0b: DUP11
00001c0c: SWAP1
00001c0d: MSTORE
00001c0e: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00001c23: SWAP1
00001c24: PUSH4 0x5db48c74
00001c29: SWAP1
00001c2a: PUSH1 0x44
00001c2c: ADD
00001c2d: PUSH0
00001c2e: PUSH1 0x40
00001c30: MLOAD
00001c31: DUP1
00001c32: DUP4
00001c33: SUB
00001c34: DUP2
00001c35: DUP7
00001c36: GAS
00001c37: DELEGATECALL
00001c38: ISZERO
00001c39: DUP1
00001c3a: ISZERO
00001c3b: PUSH2 0x1c46
00001c3e: JUMPI
00001c3f: RETURNDATASIZE
00001c40: PUSH0
00001c41: DUP1
00001c42: RETURNDATACOPY
00001c43: RETURNDATASIZE
00001c44: PUSH0
00001c45: REVERT
00001c46: JUMPDEST
00001c47: POP
00001c48: POP
00001c49: POP
00001c4a: POP
00001c4b: PUSH1 0x40
00001c4d: MLOAD
00001c4e: RETURNDATASIZE
00001c4f: PUSH0
00001c50: DUP3
00001c51: RETURNDATACOPY
00001c52: PUSH1 0x1f
00001c54: RETURNDATASIZE
00001c55: SWAP1
00001c56: DUP2
00001c57: ADD
00001c58: PUSH1 0x1f
00001c5a: NOT
00001c5b: AND
00001c5c: DUP3
00001c5d: ADD
00001c5e: PUSH1 0x40
00001c60: MSTORE
00001c61: PUSH2 0x1c6d
00001c64: SWAP2
00001c65: SWAP1
00001c66: DUP2
00001c67: ADD
00001c68: SWAP1
00001c69: PUSH2 0x43d8
00001c6c: JUMP
00001c6d: JUMPDEST
00001c6e: SWAP1
00001c6f: POP
00001c70: JUMPDEST
00001c71: DUP1
00001c72: MLOAD
00001c73: PUSH1 0x20
00001c75: DUP3
00001c76: ADD
00001c77: KECCAK256
00001c78: PUSH1 0x40
00001c7a: MLOAD
00001c7b: PUSH2 0x1c87
00001c7e: SWAP1
00001c7f: DUP14
00001c80: SWAP1
00001c81: DUP14
00001c82: SWAP1
00001c83: PUSH2 0x436b
00001c86: JUMP
00001c87: JUMPDEST
00001c88: PUSH1 0x40
00001c8a: MLOAD
00001c8b: DUP1
00001c8c: SWAP2
00001c8d: SUB
00001c8e: SWAP1
00001c8f: KECCAK256
00001c90: EQ
00001c91: PUSH2 0x1c9c
00001c94: JUMPI
00001c95: PUSH2 0x1c9c
00001c98: PUSH2 0x4409
00001c9b: JUMP
00001c9c: JUMPDEST
00001c9d: PUSH1 0x40
00001c9f: MLOAD
00001ca0: PUSH4 0x7ee9333f
00001ca5: PUSH1 0xe0
00001ca7: SHL
00001ca8: DUP2
00001ca9: MSTORE
00001caa: PUSH1 0x32
00001cac: PUSH1 0x04
00001cae: DUP3
00001caf: ADD
00001cb0: MSTORE
00001cb1: PUSH1 0x3e
00001cb3: PUSH1 0x24
00001cb5: DUP3
00001cb6: ADD
00001cb7: MSTORE
00001cb8: PUSH1 0x44
00001cba: DUP1
00001cbb: DUP3
00001cbc: ADD
00001cbd: MSTORE
00001cbe: PUSH1 0x46
00001cc0: PUSH1 0x64
00001cc2: DUP3
00001cc3: ADD
00001cc4: MSTORE
00001cc5: PUSH1 0x48
00001cc7: PUSH1 0x84
00001cc9: DUP3
00001cca: ADD
00001ccb: MSTORE
00001ccc: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001ced: PUSH1 0xa4
00001cef: DUP3
00001cf0: ADD
00001cf1: DUP2
00001cf2: SWAP1
00001cf3: MSTORE
00001cf4: PUSH1 0x01
00001cf6: PUSH1 0x01
00001cf8: PUSH1 0xa0
00001cfa: SHL
00001cfb: SUB
00001cfc: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
00001d1d: AND
00001d1e: PUSH1 0xc4
00001d20: DUP4
00001d21: ADD
00001d22: MSTORE
00001d23: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000
00001d44: PUSH1 0xe4
00001d46: DUP4
00001d47: ADD
00001d48: MSTORE
00001d49: PUSH2 0x0104
00001d4c: DUP3
00001d4d: ADD
00001d4e: MSTORE
00001d4f: PUSH1 0x01
00001d51: PUSH2 0x0124
00001d54: DUP3
00001d55: ADD
00001d56: MSTORE
00001d57: PUSH20 0x9a4d116eda832bbbe6671d1a2f7bba58016787ac
00001d6c: SWAP1
00001d6d: PUSH4 0x7ee9333f
00001d72: SWAP1
00001d73: PUSH2 0x0144
00001d76: ADD
00001d77: PUSH0
00001d78: PUSH1 0x40
00001d7a: MLOAD
00001d7b: DUP1
00001d7c: DUP4
00001d7d: SUB
00001d7e: DUP2
00001d7f: DUP7
00001d80: DUP1
00001d81: EXTCODESIZE
00001d82: ISZERO
00001d83: DUP1
00001d84: ISZERO
00001d85: PUSH2 0x1d8c
00001d88: JUMPI
00001d89: PUSH0
00001d8a: DUP1
00001d8b: REVERT
00001d8c: JUMPDEST
00001d8d: POP
00001d8e: GAS
00001d8f: DELEGATECALL
00001d90: ISZERO
00001d91: DUP1
00001d92: ISZERO
00001d93: PUSH2 0x1d9e
00001d96: JUMPI
00001d97: RETURNDATASIZE
00001d98: PUSH0
00001d99: DUP1
00001d9a: RETURNDATACOPY
00001d9b: RETURNDATASIZE
00001d9c: PUSH0
00001d9d: REVERT
00001d9e: JUMPDEST
00001d9f: POP
00001da0: POP
00001da1: POP
00001da2: POP
00001da3: POP
00001da4: PUSH2 0x1de2
00001da7: JUMP
00001da8: JUMPDEST
00001da9: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001dca: PUSH1 0x32
00001dcc: PUSH1 0x07
00001dce: ADD
00001dcf: PUSH0
00001dd0: DUP3
00001dd1: DUP3
00001dd2: SLOAD
00001dd3: PUSH2 0x1ddc
00001dd6: SWAP2
00001dd7: SWAP1
00001dd8: PUSH2 0x441d
00001ddb: JUMP
00001ddc: JUMPDEST
00001ddd: SWAP1
00001dde: SWAP2
00001ddf: SSTORE
00001de0: POP
00001de1: POP
00001de2: JUMPDEST
00001de3: PUSH1 0x04
00001de5: PUSH1 0x48
00001de7: DUP12
00001de8: DUP12
00001de9: PUSH1 0x40
00001deb: MLOAD
00001dec: PUSH2 0x1df6
00001def: SWAP3
00001df0: SWAP2
00001df1: SWAP1
00001df2: PUSH2 0x436b
00001df5: JUMP
00001df6: JUMPDEST
00001df7: SWAP1
00001df8: DUP2
00001df9: MSTORE
00001dfa: PUSH1 0x40
00001dfc: MLOAD
00001dfd: SWAP1
00001dfe: DUP2
00001dff: SWAP1
00001e00: SUB
00001e01: PUSH1 0x20
00001e03: ADD
00001e04: SWAP1
00001e05: KECCAK256
00001e06: DUP1
00001e07: SLOAD
00001e08: PUSH1 0xff
00001e0a: NOT
00001e0b: AND
00001e0c: PUSH1 0x01
00001e0e: DUP4
00001e0f: PUSH1 0x04
00001e11: DUP2
00001e12: GT
00001e13: ISZERO
00001e14: PUSH2 0x1e1f
00001e17: JUMPI
00001e18: PUSH2 0x1e1f
00001e1b: PUSH2 0x3d4a
00001e1e: JUMP
00001e1f: JUMPDEST
00001e20: MUL
00001e21: OR
00001e22: SWAP1
00001e23: SSTORE
00001e24: POP
00001e25: PUSH32 0x38dfdd34943d912ef1591f414fa0fd6acbd0ef9b5b6d071908764e7da03c80b6
00001e46: DUP11
00001e47: DUP11
00001e48: DUP8
00001e49: DUP11
00001e4a: PUSH2 0x1e73
00001e4d: DUP2
00001e4e: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00001e6f: PUSH2 0x438e
00001e72: JUMP
00001e73: JUMPDEST
00001e74: PUSH1 0x40
00001e76: MLOAD
00001e77: PUSH2 0x1e84
00001e7a: SWAP6
00001e7b: SWAP5
00001e7c: SWAP4
00001e7d: SWAP3
00001e7e: SWAP2
00001e7f: SWAP1
00001e80: PUSH2 0x4430
00001e83: JUMP
00001e84: JUMPDEST
00001e85: PUSH1 0x40
00001e87: MLOAD
00001e88: DUP1
00001e89: SWAP2
00001e8a: SUB
00001e8b: SWAP1
00001e8c: LOG1
00001e8d: POP
00001e8e: POP
00001e8f: POP
00001e90: POP
00001e91: POP
00001e92: POP
00001e93: POP
00001e94: POP
00001e95: POP
00001e96: POP
00001e97: JUMP
00001e98: JUMPDEST
00001e99: PUSH1 0x36
00001e9b: SLOAD
00001e9c: PUSH0
00001e9d: NOT
00001e9e: ADD
00001e9f: PUSH2 0x1ebb
00001ea2: JUMPI
00001ea3: PUSH1 0x40
00001ea5: MLOAD
00001ea6: PUSH4 0x8a4560db
00001eab: PUSH1 0xe0
00001ead: SHL
00001eae: DUP2
00001eaf: MSTORE
00001eb0: PUSH1 0x04
00001eb2: ADD
00001eb3: PUSH1 0x40
00001eb5: MLOAD
00001eb6: DUP1
00001eb7: SWAP2
00001eb8: SUB
00001eb9: SWAP1
00001eba: REVERT
00001ebb: JUMPDEST
00001ebc: PUSH0
00001ebd: DUP1
00001ebe: MLOAD
00001ebf: PUSH1 0x20
00001ec1: PUSH2 0x466e
00001ec4: DUP4
00001ec5: CODECOPY
00001ec6: DUP2
00001ec7: MLOAD
00001ec8: SWAP2
00001ec9: MSTORE
00001eca: PUSH2 0x1ed2
00001ecd: DUP2
00001ece: PUSH2 0x2b12
00001ed1: JUMP
00001ed2: JUMPDEST
00001ed3: PUSH1 0x40
00001ed5: MLOAD
00001ed6: PUSH4 0xf3c723c7
00001edb: PUSH1 0xe0
00001edd: SHL
00001ede: DUP2
00001edf: MSTORE
00001ee0: PUSH1 0x44
00001ee2: PUSH1 0x04
00001ee4: DUP3
00001ee5: ADD
00001ee6: DUP2
00001ee7: SWAP1
00001ee8: MSTORE
00001ee9: PUSH1 0x24
00001eeb: DUP3
00001eec: ADD
00001eed: DUP5
00001eee: SWAP1
00001eef: MSTORE
00001ef0: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00001f05: SWAP2
00001f06: PUSH4 0xf3c723c7
00001f0b: SWAP2
00001f0c: ADD
00001f0d: PUSH0
00001f0e: PUSH1 0x40
00001f10: MLOAD
00001f11: DUP1
00001f12: DUP4
00001f13: SUB
00001f14: DUP2
00001f15: DUP7
00001f16: GAS
00001f17: DELEGATECALL
00001f18: ISZERO
00001f19: DUP1
00001f1a: ISZERO
00001f1b: PUSH2 0x1f26
00001f1e: JUMPI
00001f1f: RETURNDATASIZE
00001f20: PUSH0
00001f21: DUP1
00001f22: RETURNDATACOPY
00001f23: RETURNDATASIZE
00001f24: PUSH0
00001f25: REVERT
00001f26: JUMPDEST
00001f27: POP
00001f28: POP
00001f29: POP
00001f2a: POP
00001f2b: PUSH1 0x40
00001f2d: MLOAD
00001f2e: RETURNDATASIZE
00001f2f: PUSH0
00001f30: DUP3
00001f31: RETURNDATACOPY
00001f32: PUSH1 0x1f
00001f34: RETURNDATASIZE
00001f35: SWAP1
00001f36: DUP2
00001f37: ADD
00001f38: PUSH1 0x1f
00001f3a: NOT
00001f3b: AND
00001f3c: DUP3
00001f3d: ADD
00001f3e: PUSH1 0x40
00001f40: MSTORE
00001f41: PUSH2 0x1147
00001f44: SWAP2
00001f45: SWAP1
00001f46: DUP2
00001f47: ADD
00001f48: SWAP1
00001f49: PUSH2 0x4460
00001f4c: JUMP
00001f4d: JUMPDEST
00001f4e: PUSH0
00001f4f: DUP1
00001f50: MLOAD
00001f51: PUSH1 0x20
00001f53: PUSH2 0x46ee
00001f56: DUP4
00001f57: CODECOPY
00001f58: DUP2
00001f59: MLOAD
00001f5a: SWAP2
00001f5b: MSTORE
00001f5c: SLOAD
00001f5d: PUSH1 0x01
00001f5f: PUSH1 0x01
00001f61: PUSH1 0xa0
00001f63: SHL
00001f64: SUB
00001f65: AND
00001f66: SWAP1
00001f67: JUMP
00001f68: JUMPDEST
00001f69: PUSH0
00001f6a: DUP1
00001f6b: MLOAD
00001f6c: PUSH1 0x20
00001f6e: PUSH2 0x466e
00001f71: DUP4
00001f72: CODECOPY
00001f73: DUP2
00001f74: MLOAD
00001f75: SWAP2
00001f76: MSTORE
00001f77: PUSH2 0x1f7f
00001f7a: DUP2
00001f7b: PUSH2 0x2b12
00001f7e: JUMP
00001f7f: JUMPDEST
00001f80: PUSH1 0x40
00001f82: MLOAD
00001f83: PUSH4 0x145abf65
00001f88: PUSH1 0xe3
00001f8a: SHL
00001f8b: DUP2
00001f8c: MSTORE
00001f8d: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00001fa2: SWAP1
00001fa3: PUSH4 0xa2d5fb28
00001fa8: SWAP1
00001fa9: PUSH2 0x0e1b
00001fac: SWAP1
00001fad: PUSH1 0x3e
00001faf: SWAP1
00001fb0: PUSH1 0x32
00001fb2: SWAP1
00001fb3: DUP9
00001fb4: SWAP1
00001fb5: DUP9
00001fb6: SWAP1
00001fb7: PUSH1 0x04
00001fb9: ADD
00001fba: PUSH2 0x450b
00001fbd: JUMP
00001fbe: JUMPDEST
00001fbf: PUSH0
00001fc0: DUP1
00001fc1: MLOAD
00001fc2: PUSH1 0x20
00001fc4: PUSH2 0x466e
00001fc7: DUP4
00001fc8: CODECOPY
00001fc9: DUP2
00001fca: MLOAD
00001fcb: SWAP2
00001fcc: MSTORE
00001fcd: PUSH2 0x1fd5
00001fd0: DUP2
00001fd1: PUSH2 0x2b12
00001fd4: JUMP
00001fd5: JUMPDEST
00001fd6: PUSH1 0x40
00001fd8: MLOAD
00001fd9: PUSH4 0x692ba17b
00001fde: PUSH1 0xe0
00001fe0: SHL
00001fe1: DUP2
00001fe2: MSTORE
00001fe3: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00001ff8: SWAP1
00001ff9: PUSH4 0x692ba17b
00001ffe: SWAP1
00001fff: PUSH2 0x2013
00002002: SWAP1
00002003: PUSH1 0x4a
00002005: SWAP1
00002006: DUP9
00002007: SWAP1
00002008: DUP9
00002009: SWAP1
0000200a: DUP9
0000200b: SWAP1
0000200c: PUSH1 0x04
0000200e: ADD
0000200f: PUSH2 0x4549
00002012: JUMP
00002013: JUMPDEST
00002014: PUSH0
00002015: PUSH1 0x40
00002017: MLOAD
00002018: DUP1
00002019: DUP4
0000201a: SUB
0000201b: DUP2
0000201c: DUP7
0000201d: DUP1
0000201e: EXTCODESIZE
0000201f: ISZERO
00002020: DUP1
00002021: ISZERO
00002022: PUSH2 0x2029
00002025: JUMPI
00002026: PUSH0
00002027: DUP1
00002028: REVERT
00002029: JUMPDEST
0000202a: POP
0000202b: GAS
0000202c: DELEGATECALL
0000202d: ISZERO
0000202e: DUP1
0000202f: ISZERO
00002030: PUSH2 0x203b
00002033: JUMPI
00002034: RETURNDATASIZE
00002035: PUSH0
00002036: DUP1
00002037: RETURNDATACOPY
00002038: RETURNDATASIZE
00002039: PUSH0
0000203a: REVERT
0000203b: JUMPDEST
0000203c: POP
0000203d: POP
0000203e: POP
0000203f: POP
00002040: POP
00002041: POP
00002042: POP
00002043: POP
00002044: JUMP
00002045: JUMPDEST
00002046: PUSH0
00002047: PUSH2 0x0d96
0000204a: PUSH2 0x1f4d
0000204d: JUMP
0000204e: JUMPDEST
0000204f: PUSH1 0x36
00002051: SLOAD
00002052: PUSH0
00002053: NOT
00002054: ADD
00002055: PUSH2 0x2071
00002058: JUMPI
00002059: PUSH1 0x40
0000205b: MLOAD
0000205c: PUSH4 0x8a4560db
00002061: PUSH1 0xe0
00002063: SHL
00002064: DUP2
00002065: MSTORE
00002066: PUSH1 0x04
00002068: ADD
00002069: PUSH1 0x40
0000206b: MLOAD
0000206c: DUP1
0000206d: SWAP2
0000206e: SUB
0000206f: SWAP1
00002070: REVERT
00002071: JUMPDEST
00002072: PUSH0
00002073: DUP1
00002074: MLOAD
00002075: PUSH1 0x20
00002077: PUSH2 0x466e
0000207a: DUP4
0000207b: CODECOPY
0000207c: DUP2
0000207d: MLOAD
0000207e: SWAP2
0000207f: MSTORE
00002080: PUSH2 0x2088
00002083: DUP2
00002084: PUSH2 0x2b12
00002087: JUMP
00002088: JUMPDEST
00002089: PUSH1 0x40
0000208b: MLOAD
0000208c: PUSH4 0x04ab817f
00002091: PUSH1 0xe0
00002093: SHL
00002094: DUP2
00002095: MSTORE
00002096: PUSH1 0x44
00002098: PUSH1 0x04
0000209a: DUP3
0000209b: ADD
0000209c: DUP2
0000209d: SWAP1
0000209e: MSTORE
0000209f: PUSH1 0x24
000020a1: DUP3
000020a2: ADD
000020a3: DUP6
000020a4: SWAP1
000020a5: MSTORE
000020a6: DUP2
000020a7: ADD
000020a8: DUP4
000020a9: SWAP1
000020aa: MSTORE
000020ab: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
000020c0: SWAP1
000020c1: PUSH4 0x04ab817f
000020c6: SWAP1
000020c7: PUSH1 0x64
000020c9: ADD
000020ca: PUSH2 0x0e1b
000020cd: JUMP
000020ce: JUMPDEST
000020cf: PUSH0
000020d0: SWAP2
000020d1: DUP3
000020d2: MSTORE
000020d3: PUSH0
000020d4: DUP1
000020d5: MLOAD
000020d6: PUSH1 0x20
000020d8: PUSH2 0x46ae
000020db: DUP4
000020dc: CODECOPY
000020dd: DUP2
000020de: MLOAD
000020df: SWAP2
000020e0: MSTORE
000020e1: PUSH1 0x20
000020e3: SWAP1
000020e4: DUP2
000020e5: MSTORE
000020e6: PUSH1 0x40
000020e8: DUP1
000020e9: DUP5
000020ea: KECCAK256
000020eb: PUSH1 0x01
000020ed: PUSH1 0x01
000020ef: PUSH1 0xa0
000020f1: SHL
000020f2: SUB
000020f3: SWAP4
000020f4: SWAP1
000020f5: SWAP4
000020f6: AND
000020f7: DUP5
000020f8: MSTORE
000020f9: SWAP2
000020fa: SWAP1
000020fb: MSTORE
000020fc: SWAP1
000020fd: KECCAK256
000020fe: SLOAD
000020ff: PUSH1 0xff
00002101: AND
00002102: SWAP1
00002103: JUMP
00002104: JUMPDEST
00002105: PUSH1 0x40
00002107: MLOAD
00002108: PUSH4 0x446ad5c9
0000210d: PUSH1 0xe1
0000210f: SHL
00002110: DUP2
00002111: MSTORE
00002112: PUSH1 0x60
00002114: SWAP1
00002115: DUP2
00002116: SWAP1
00002117: DUP2
00002118: SWAP1
00002119: PUSH0
0000211a: SWAP1
0000211b: DUP2
0000211c: SWAP1
0000211d: PUSH20 0x7111c8bc4d214f88823ec06bbed120ddce69f75a
00002132: SWAP1
00002133: PUSH4 0x88d5ab92
00002138: SWAP1
00002139: PUSH2 0x15e7
0000213c: SWAP1
0000213d: PUSH1 0x46
0000213f: SWAP1
00002140: PUSH1 0x3d
00002142: SWAP1
00002143: DUP12
00002144: SWAP1
00002145: PUSH1 0x04
00002147: ADD
00002148: PUSH2 0x41da
0000214b: JUMP
0000214c: JUMPDEST
0000214d: PUSH0
0000214e: DUP1
0000214f: MLOAD
00002150: PUSH1 0x20
00002152: PUSH2 0x46ee
00002155: DUP4
00002156: CODECOPY
00002157: DUP2
00002158: MLOAD
00002159: SWAP2
0000215a: MSTORE
0000215b: SLOAD
0000215c: PUSH0
0000215d: SWAP1
0000215e: PUSH1 0x01
00002160: PUSH1 0xd0
00002162: SHL
00002163: SWAP1
00002164: DIV
00002165: PUSH6 0xffffffffffff
0000216c: AND
0000216d: PUSH0
0000216e: DUP1
0000216f: MLOAD
00002170: PUSH1 0x20
00002172: PUSH2 0x468e
00002175: DUP4
00002176: CODECOPY
00002177: DUP2
00002178: MLOAD
00002179: SWAP2
0000217a: MSTORE
0000217b: DUP2
0000217c: ISZERO
0000217d: DUP1
0000217e: ISZERO
0000217f: SWAP1
00002180: PUSH2 0x2191
00002183: JUMPI
00002184: POP
00002185: TIMESTAMP
00002186: PUSH6 0xffffffffffff
0000218d: DUP4
0000218e: AND
0000218f: LT
00002190: ISZERO
00002191: JUMPDEST
00002192: PUSH2 0x219c
00002195: JUMPI
00002196: PUSH0
00002197: DUP1
00002198: PUSH2 0x21b2
0000219b: JUMP
0000219c: JUMPDEST
0000219d: PUSH1 0x01
0000219f: DUP2
000021a0: ADD
000021a1: SLOAD
000021a2: PUSH1 0x01
000021a4: PUSH1 0xa0
000021a6: SHL
000021a7: SWAP1
000021a8: DIV
000021a9: PUSH6 0xffffffffffff
000021b0: AND
000021b1: DUP3
000021b2: JUMPDEST
000021b3: SWAP3
000021b4: POP
000021b5: SWAP3
000021b6: POP
000021b7: POP
000021b8: SWAP1
000021b9: SWAP2
000021ba: JUMP
000021bb: JUMPDEST
000021bc: PUSH1 0x36
000021be: SLOAD
000021bf: PUSH0
000021c0: NOT
000021c1: ADD
000021c2: PUSH2 0x21de
000021c5: JUMPI
000021c6: PUSH1 0x40
000021c8: MLOAD
000021c9: PUSH4 0x8a4560db
000021ce: PUSH1 0xe0
000021d0: SHL
000021d1: DUP2
000021d2: MSTORE
000021d3: PUSH1 0x04
000021d5: ADD
000021d6: PUSH1 0x40
000021d8: MLOAD
000021d9: DUP1
000021da: SWAP2
000021db: SUB
000021dc: SWAP1
000021dd: REVERT
000021de: JUMPDEST
000021df: PUSH0
000021e0: DUP1
000021e1: MLOAD
000021e2: PUSH1 0x20
000021e4: PUSH2 0x466e
000021e7: DUP4
000021e8: CODECOPY
000021e9: DUP2
000021ea: MLOAD
000021eb: SWAP2
000021ec: MSTORE
000021ed: PUSH2 0x21f5
000021f0: DUP2
000021f1: PUSH2 0x2b12
000021f4: JUMP
000021f5: JUMPDEST
000021f6: PUSH1 0x40
000021f8: MLOAD
000021f9: PUSH4 0x189db935
000021fe: PUSH1 0xe3
00002200: SHL
00002201: DUP2
00002202: MSTORE
00002203: PUSH20 0xf57727c6468b2e279f4574dd414547569e758105
00002218: SWAP1
00002219: PUSH4 0xc4edc9a8
0000221e: SWAP1
0000221f: PUSH2 0x2235
00002222: SWAP1
00002223: PUSH1 0x44
00002225: SWAP1
00002226: DUP10
00002227: SWAP1
00002228: DUP10
00002229: SWAP1
0000222a: DUP10
0000222b: SWAP1
0000222c: DUP10
0000222d: SWAP1
0000222e: PUSH1 0x04
00002230: ADD
00002231: PUSH2 0x45ac
00002234: JUMP
00002235: JUMPDEST
00002236: PUSH0
00002237: PUSH1 0x40
00002239: MLOAD
0000223a: DUP1
0000223b: DUP4
0000223c: SUB
0000223d: DUP2
0000223e: DUP7
0000223f: DUP1
00002240: EXTCODESIZE
00002241: ISZERO
00002242: DUP1
00002243: ISZERO
00002244: PUSH2 0x224b
00002247: JUMPI
00002248: PUSH0
00002249: DUP1
0000224a: REVERT
0000224b: JUMPDEST
0000224c: POP
0000224d: GAS
0000224e: DELEGATECALL
0000224f: ISZERO
00002250: DUP1
00002251: ISZERO
00002252: PUSH2 0x0f4b
00002255: JUMPI
00002256: RETURNDATASIZE
00002257: PUSH0
00002258: DUP1
00002259: RETURNDATACOPY
0000225a: RETURNDATASIZE
0000225b: PUSH0
0000225c: REVERT
0000225d: JUMPDEST
0000225e: PUSH1 0x3c
00002260: SLOAD
00002261: PUSH0
00002262: SWAP1
00002263: PUSH1 0x01
00002265: NOT
00002266: ADD
00002267: PUSH2 0x2283
0000226a: JUMPI
0000226b: PUSH1 0x40
0000226d: MLOAD
0000226e: PUSH4 0x13d0ff59
00002273: PUSH1 0xe3
00002275: SHL
00002276: DUP2
00002277: MSTORE
00002278: PUSH1 0x04
0000227a: ADD
0000227b: PUSH1 0x40
0000227d: MLOAD
0000227e: DUP1
0000227f: SWAP2
00002280: SUB
00002281: SWAP1
00002282: REVERT
00002283: JUMPDEST
00002284: PUSH2 0x228b
00002287: PUSH2 0x2b5a
0000228a: JUMP
0000228b: JUMPDEST
0000228c: PUSH32 0xb165298935924f540e4181c03493a5d686c54a0aaeb3f6216de85b7ffbba7738
000022ad: PUSH2 0x22b5
000022b0: DUP2
000022b1: PUSH2 0x2b12
000022b4: JUMP
000022b5: JUMPDEST
000022b6: PUSH1 0x40
000022b8: MLOAD
000022b9: PUSH4 0x3b6c1175
000022be: PUSH1 0xe2
000022c0: SHL
000022c1: DUP2
000022c2: MSTORE
000022c3: PUSH1 0x32
000022c5: PUSH1 0x04
000022c7: DUP3
000022c8: ADD
000022c9: MSTORE
000022ca: PUSH1 0x3e
000022cc: PUSH1 0x24
000022ce: DUP3
000022cf: ADD
000022d0: MSTORE
000022d1: PUSH1 0x44
000022d3: DUP2
000022d4: DUP2
000022d5: ADD
000022d6: MSTORE
000022d7: PUSH1 0x46
000022d9: PUSH1 0x64
000022db: DUP3
000022dc: ADD
000022dd: MSTORE
000022de: PUSH1 0x48
000022e0: PUSH1 0x84
000022e2: DUP3
000022e3: ADD
000022e4: MSTORE
000022e5: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
00002306: PUSH1 0xa4
00002308: DUP3
00002309: ADD
0000230a: MSTORE
0000230b: PUSH1 0x01
0000230d: PUSH1 0x01
0000230f: PUSH1 0xa0
00002311: SHL
00002312: SUB
00002313: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
00002334: DUP2
00002335: AND
00002336: PUSH1 0xc4
00002338: DUP4
00002339: ADD
0000233a: MSTORE
0000233b: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000
0000235c: PUSH1 0xe4
0000235e: DUP4
0000235f: ADD
00002360: MSTORE
00002361: CALLVALUE
00002362: PUSH2 0x0104
00002365: DUP4
00002366: ADD
00002367: MSTORE
00002368: DUP6
00002369: AND
0000236a: PUSH2 0x0124
0000236d: DUP3
0000236e: ADD
0000236f: MSTORE
00002370: DUP4
00002371: ISZERO
00002372: ISZERO
00002373: PUSH2 0x0144
00002376: DUP3
00002377: ADD
00002378: MSTORE
00002379: PUSH20 0x9a4d116eda832bbbe6671d1a2f7bba58016787ac
0000238e: SWAP1
0000238f: PUSH4 0xedb045d4
00002394: SWAP1
00002395: PUSH2 0x0164
00002398: ADD
00002399: PUSH1 0x20
0000239b: PUSH1 0x40
0000239d: MLOAD
0000239e: DUP1
0000239f: DUP4
000023a0: SUB
000023a1: DUP2
000023a2: DUP7
000023a3: GAS
000023a4: DELEGATECALL
000023a5: ISZERO
000023a6: DUP1
000023a7: ISZERO
000023a8: PUSH2 0x23b3
000023ab: JUMPI
000023ac: RETURNDATASIZE
000023ad: PUSH0
000023ae: DUP1
000023af: RETURNDATACOPY
000023b0: RETURNDATASIZE
000023b1: PUSH0
000023b2: REVERT
000023b3: JUMPDEST
000023b4: POP
000023b5: POP
000023b6: POP
000023b7: POP
000023b8: PUSH1 0x40
000023ba: MLOAD
000023bb: RETURNDATASIZE
000023bc: PUSH1 0x1f
000023be: NOT
000023bf: PUSH1 0x1f
000023c1: DUP3
000023c2: ADD
000023c3: AND
000023c4: DUP3
000023c5: ADD
000023c6: DUP1
000023c7: PUSH1 0x40
000023c9: MSTORE
000023ca: POP
000023cb: DUP2
000023cc: ADD
000023cd: SWAP1
000023ce: PUSH2 0x23d7
000023d1: SWAP2
000023d2: SWAP1
000023d3: PUSH2 0x3eac
000023d6: JUMP
000023d7: JUMPDEST
000023d8: SWAP2
000023d9: POP
000023da: POP
000023db: PUSH2 0x0dbf
000023de: PUSH1 0x01
000023e0: PUSH0
000023e1: DUP1
000023e2: MLOAD
000023e3: PUSH1 0x20
000023e5: PUSH2 0x46ce
000023e8: DUP4
000023e9: CODECOPY
000023ea: DUP2
000023eb: MLOAD
000023ec: SWAP2
000023ed: MSTORE
000023ee: SSTORE
000023ef: JUMP
000023f0: JUMPDEST
000023f1: PUSH0
000023f2: DUP1
000023f3: MLOAD
000023f4: PUSH1 0x20
000023f6: PUSH2 0x466e
000023f9: DUP4
000023fa: CODECOPY
000023fb: DUP2
000023fc: MLOAD
000023fd: SWAP2
000023fe: MSTORE
000023ff: PUSH2 0x2407
00002402: DUP2
00002403: PUSH2 0x2b12
00002406: JUMP
00002407: JUMPDEST
00002408: PUSH1 0x40
0000240a: MLOAD
0000240b: PUSH4 0x023fb3df
00002410: PUSH1 0xe5
00002412: SHL
00002413: DUP2
00002414: MSTORE
00002415: PUSH1 0x32
00002417: PUSH1 0x04
00002419: DUP3
0000241a: ADD
0000241b: MSTORE
0000241c: PUSH1 0x3e
0000241e: PUSH1 0x24
00002420: DUP3
00002421: ADD
00002422: MSTORE
00002423: PUSH1 0x44
00002425: DUP2
00002426: ADD
00002427: DUP4
00002428: SWAP1
00002429: MSTORE
0000242a: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
0000243f: SWAP1
00002440: PUSH4 0x47f67be0
00002445: SWAP1
00002446: PUSH1 0x64
00002448: ADD
00002449: PUSH2 0x0fd0
0000244c: JUMP
0000244d: JUMPDEST
0000244e: PUSH0
0000244f: DUP1
00002450: MLOAD
00002451: PUSH1 0x20
00002453: PUSH2 0x466e
00002456: DUP4
00002457: CODECOPY
00002458: DUP2
00002459: MLOAD
0000245a: SWAP2
0000245b: MSTORE
0000245c: PUSH2 0x2464
0000245f: DUP2
00002460: PUSH2 0x2b12
00002463: JUMP
00002464: JUMPDEST
00002465: PUSH1 0x40
00002467: MLOAD
00002468: PUSH4 0x72af118b
0000246d: PUSH1 0xe1
0000246f: SHL
00002470: DUP2
00002471: MSTORE
00002472: PUSH1 0x32
00002474: PUSH1 0x04
00002476: DUP3
00002477: ADD
00002478: MSTORE
00002479: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
0000248e: SWAP1
0000248f: PUSH4 0xe55e2316
00002494: SWAP1
00002495: PUSH1 0x24
00002497: ADD
00002498: PUSH2 0x0cf3
0000249b: JUMP
0000249c: JUMPDEST
0000249d: PUSH0
0000249e: DUP1
0000249f: MLOAD
000024a0: PUSH1 0x20
000024a2: PUSH2 0x466e
000024a5: DUP4
000024a6: CODECOPY
000024a7: DUP2
000024a8: MLOAD
000024a9: SWAP2
000024aa: MSTORE
000024ab: PUSH2 0x24b3
000024ae: DUP2
000024af: PUSH2 0x2b12
000024b2: JUMP
000024b3: JUMPDEST
000024b4: PUSH1 0x40
000024b6: MLOAD
000024b7: PUSH4 0x0ee31c7f
000024bc: PUSH1 0xe0
000024be: SHL
000024bf: DUP2
000024c0: MSTORE
000024c1: PUSH1 0x32
000024c3: PUSH1 0x04
000024c5: DUP3
000024c6: ADD
000024c7: MSTORE
000024c8: PUSH1 0x24
000024ca: DUP2
000024cb: ADD
000024cc: DUP4
000024cd: SWAP1
000024ce: MSTORE
000024cf: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
000024e4: SWAP1
000024e5: PUSH4 0x0ee31c7f
000024ea: SWAP1
000024eb: PUSH1 0x44
000024ed: ADD
000024ee: PUSH2 0x0fd0
000024f1: JUMP
000024f2: JUMPDEST
000024f3: PUSH0
000024f4: DUP1
000024f5: MLOAD
000024f6: PUSH1 0x20
000024f8: PUSH2 0x46ee
000024fb: DUP4
000024fc: CODECOPY
000024fd: DUP2
000024fe: MLOAD
000024ff: SWAP2
00002500: MSTORE
00002501: SLOAD
00002502: PUSH0
00002503: SWAP1
00002504: PUSH0
00002505: DUP1
00002506: MLOAD
00002507: PUSH1 0x20
00002509: PUSH2 0x468e
0000250c: DUP4
0000250d: CODECOPY
0000250e: DUP2
0000250f: MLOAD
00002510: SWAP2
00002511: MSTORE
00002512: SWAP1
00002513: PUSH1 0x01
00002515: PUSH1 0xd0
00002517: SHL
00002518: SWAP1
00002519: DIV
0000251a: PUSH6 0xffffffffffff
00002521: AND
00002522: DUP1
00002523: ISZERO
00002524: DUP1
00002525: ISZERO
00002526: SWAP1
00002527: PUSH2 0x2537
0000252a: JUMPI
0000252b: POP
0000252c: TIMESTAMP
0000252d: PUSH6 0xffffffffffff
00002534: DUP3
00002535: AND
00002536: LT
00002537: JUMPDEST
00002538: PUSH2 0x2551
0000253b: JUMPI
0000253c: DUP2
0000253d: SLOAD
0000253e: PUSH1 0x01
00002540: PUSH1 0xd0
00002542: SHL
00002543: SWAP1
00002544: DIV
00002545: PUSH6 0xffffffffffff
0000254c: AND
0000254d: PUSH2 0x2566
00002550: JUMP
00002551: JUMPDEST
00002552: PUSH1 0x01
00002554: DUP3
00002555: ADD
00002556: SLOAD
00002557: PUSH1 0x01
00002559: PUSH1 0xa0
0000255b: SHL
0000255c: SWAP1
0000255d: DIV
0000255e: PUSH6 0xffffffffffff
00002565: AND
00002566: JUMPDEST
00002567: SWAP3
00002568: POP
00002569: POP
0000256a: POP
0000256b: SWAP1
0000256c: JUMP
0000256d: JUMPDEST
0000256e: PUSH0
0000256f: PUSH2 0x2576
00002572: PUSH2 0x25ac
00002575: JUMP
00002576: JUMPDEST
00002577: POP
00002578: SWAP1
00002579: POP
0000257a: CALLER
0000257b: PUSH1 0x01
0000257d: PUSH1 0x01
0000257f: PUSH1 0xa0
00002581: SHL
00002582: SUB
00002583: DUP3
00002584: AND
00002585: EQ
00002586: PUSH2 0x25a4
00002589: JUMPI
0000258a: PUSH1 0x40
0000258c: MLOAD
0000258d: PUSH4 0x61164011
00002592: PUSH1 0xe1
00002594: SHL
00002595: DUP2
00002596: MSTORE
00002597: CALLER
00002598: PUSH1 0x04
0000259a: DUP3
0000259b: ADD
0000259c: MSTORE
0000259d: PUSH1 0x24
0000259f: ADD
000025a0: PUSH2 0x1121
000025a3: JUMP
000025a4: JUMPDEST
000025a5: PUSH2 0x0e5e
000025a8: PUSH2 0x2cda
000025ab: JUMP
000025ac: JUMPDEST
000025ad: PUSH0
000025ae: DUP1
000025af: MLOAD
000025b0: PUSH1 0x20
000025b2: PUSH2 0x468e
000025b5: DUP4
000025b6: CODECOPY
000025b7: DUP2
000025b8: MLOAD
000025b9: SWAP2
000025ba: MSTORE
000025bb: SLOAD
000025bc: PUSH1 0x01
000025be: PUSH1 0x01
000025c0: PUSH1 0xa0
000025c2: SHL
000025c3: SUB
000025c4: DUP2
000025c5: AND
000025c6: SWAP2
000025c7: PUSH1 0x01
000025c9: PUSH1 0xa0
000025cb: SHL
000025cc: SWAP1
000025cd: SWAP2
000025ce: DIV
000025cf: PUSH6 0xffffffffffff
000025d6: AND
000025d7: SWAP1
000025d8: JUMP
000025d9: JUMPDEST
000025da: PUSH0
000025db: DUP1
000025dc: MLOAD
000025dd: PUSH1 0x20
000025df: PUSH2 0x466e
000025e2: DUP4
000025e3: CODECOPY
000025e4: DUP2
000025e5: MLOAD
000025e6: SWAP2
000025e7: MSTORE
000025e8: PUSH2 0x25f0
000025eb: DUP2
000025ec: PUSH2 0x2b12
000025ef: JUMP
000025f0: JUMPDEST
000025f1: PUSH1 0x36
000025f3: SLOAD
000025f4: PUSH0
000025f5: NOT
000025f6: ADD
000025f7: PUSH2 0x2613
000025fa: JUMPI
000025fb: PUSH1 0x40
000025fd: MLOAD
000025fe: PUSH4 0x8a4560db
00002603: PUSH1 0xe0
00002605: SHL
00002606: DUP2
00002607: MSTORE
00002608: PUSH1 0x04
0000260a: ADD
0000260b: PUSH1 0x40
0000260d: MLOAD
0000260e: DUP1
0000260f: SWAP2
00002610: SUB
00002611: SWAP1
00002612: REVERT
00002613: JUMPDEST
00002614: PUSH1 0x40
00002616: MLOAD
00002617: PUSH4 0x8744151d
0000261c: PUSH1 0xe0
0000261e: SHL
0000261f: DUP2
00002620: MSTORE
00002621: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
00002636: SWAP1
00002637: PUSH4 0x8744151d
0000263c: SWAP1
0000263d: PUSH2 0x265b
00002640: SWAP1
00002641: PUSH1 0x32
00002643: SWAP1
00002644: PUSH1 0x3e
00002646: SWAP1
00002647: DUP10
00002648: SWAP1
00002649: DUP12
0000264a: SWAP1
0000264b: DUP14
0000264c: SWAP1
0000264d: PUSH1 0x4a
0000264f: SWAP1
00002650: DUP13
00002651: SWAP1
00002652: DUP13
00002653: SWAP1
00002654: PUSH1 0x04
00002656: ADD
00002657: PUSH2 0x45de
0000265a: JUMP
0000265b: JUMPDEST
0000265c: PUSH0
0000265d: PUSH1 0x40
0000265f: MLOAD
00002660: DUP1
00002661: DUP4
00002662: SUB
00002663: DUP2
00002664: DUP7
00002665: DUP1
00002666: EXTCODESIZE
00002667: ISZERO
00002668: DUP1
00002669: ISZERO
0000266a: PUSH2 0x2671
0000266d: JUMPI
0000266e: PUSH0
0000266f: DUP1
00002670: REVERT
00002671: JUMPDEST
00002672: POP
00002673: GAS
00002674: DELEGATECALL
00002675: ISZERO
00002676: DUP1
00002677: ISZERO
00002678: PUSH2 0x2683
0000267b: JUMPI
0000267c: RETURNDATASIZE
0000267d: PUSH0
0000267e: DUP1
0000267f: RETURNDATACOPY
00002680: RETURNDATASIZE
00002681: PUSH0
00002682: REVERT
00002683: JUMPDEST
00002684: POP
00002685: POP
00002686: POP
00002687: POP
00002688: POP
00002689: POP
0000268a: POP
0000268b: POP
0000268c: POP
0000268d: POP
0000268e: JUMP
0000268f: JUMPDEST
00002690: DUP2
00002691: PUSH2 0x26ad
00002694: JUMPI
00002695: PUSH1 0x40
00002697: MLOAD
00002698: PUSH4 0x1fe1e13d
0000269d: PUSH1 0xe1
0000269f: SHL
000026a0: DUP2
000026a1: MSTORE
000026a2: PUSH1 0x04
000026a4: ADD
000026a5: PUSH1 0x40
000026a7: MLOAD
000026a8: DUP1
000026a9: SWAP2
000026aa: SUB
000026ab: SWAP1
000026ac: REVERT
000026ad: JUMPDEST
000026ae: PUSH2 0x1081
000026b1: DUP3
000026b2: DUP3
000026b3: PUSH2 0x2d73
000026b6: JUMP
000026b7: JUMPDEST
000026b8: PUSH0
000026b9: PUSH2 0x26c1
000026bc: DUP2
000026bd: PUSH2 0x2b12
000026c0: JUMP
000026c1: JUMPDEST
000026c2: PUSH2 0x0e5e
000026c5: PUSH2 0x2d8f
000026c8: JUMP
000026c9: JUMPDEST
000026ca: PUSH0
000026cb: DUP1
000026cc: MLOAD
000026cd: PUSH1 0x20
000026cf: PUSH2 0x466e
000026d2: DUP4
000026d3: CODECOPY
000026d4: DUP2
000026d5: MLOAD
000026d6: SWAP2
000026d7: MSTORE
000026d8: PUSH2 0x26e0
000026db: DUP2
000026dc: PUSH2 0x2b12
000026df: JUMP
000026e0: JUMPDEST
000026e1: PUSH1 0x40
000026e3: MLOAD
000026e4: PUSH4 0xa69d6885
000026e9: PUSH1 0xe0
000026eb: SHL
000026ec: DUP2
000026ed: MSTORE
000026ee: PUSH20 0x2b827dd0e75e25b9d5c03424d88cd2709c62ed21
00002703: SWAP1
00002704: PUSH4 0xa69d6885
00002709: SWAP1
0000270a: PUSH2 0x0e1b
0000270d: SWAP1
0000270e: PUSH1 0x4b
00002710: SWAP1
00002711: PUSH1 0x4c
00002713: SWAP1
00002714: DUP9
00002715: SWAP1
00002716: DUP9
00002717: SWAP1
00002718: PUSH1 0x04
0000271a: ADD
0000271b: PUSH2 0x3ec3
0000271e: JUMP
0000271f: JUMPDEST
00002720: PUSH1 0x43
00002722: SLOAD
00002723: PUSH1 0x01
00002725: PUSH1 0x01
00002727: PUSH1 0xa0
00002729: SHL
0000272a: SUB
0000272b: AND
0000272c: CALLER
0000272d: EQ
0000272e: PUSH2 0x274a
00002731: JUMPI
00002732: PUSH1 0x40
00002734: MLOAD
00002735: PUSH4 0xb5674cfd
0000273a: PUSH1 0xe0
0000273c: SHL
0000273d: DUP2
0000273e: MSTORE
0000273f: PUSH1 0x04
00002741: ADD
00002742: PUSH1 0x40
00002744: MLOAD
00002745: DUP1
00002746: SWAP2
00002747: SUB
00002748: SWAP1
00002749: REVERT
0000274a: JUMPDEST
0000274b: PUSH1 0x40
0000274d: MLOAD
0000274e: PUSH4 0x0e3aa191
00002753: PUSH1 0xe1
00002755: SHL
00002756: DUP2
00002757: MSTORE
00002758: PUSH1 0x32
0000275a: PUSH1 0x04
0000275c: DUP3
0000275d: ADD
0000275e: MSTORE
0000275f: PUSH1 0x3e
00002761: PUSH1 0x24
00002763: DUP3
00002764: ADD
00002765: MSTORE
00002766: PUSH1 0x44
00002768: DUP1
00002769: DUP3
0000276a: ADD
0000276b: MSTORE
0000276c: PUSH1 0x46
0000276e: PUSH1 0x64
00002770: DUP3
00002771: ADD
00002772: MSTORE
00002773: PUSH1 0x48
00002775: PUSH1 0x84
00002777: DUP3
00002778: ADD
00002779: MSTORE
0000277a: PUSH32 0x000000000000000000000000000000000000000000000001bc16d674ec800000
0000279b: PUSH1 0xa4
0000279d: DUP3
0000279e: ADD
0000279f: MSTORE
000027a0: PUSH1 0x01
000027a2: PUSH1 0x01
000027a4: PUSH1 0xa0
000027a6: SHL
000027a7: SUB
000027a8: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
000027c9: AND
000027ca: PUSH1 0xc4
000027cc: DUP3
000027cd: ADD
000027ce: MSTORE
000027cf: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000
000027f0: PUSH1 0xe4
000027f2: DUP3
000027f3: ADD
000027f4: MSTORE
000027f5: PUSH2 0x0104
000027f8: DUP2
000027f9: ADD
000027fa: DUP3
000027fb: SWAP1
000027fc: MSTORE
000027fd: CALLVALUE
000027fe: PUSH2 0x0124
00002801: DUP3
00002802: ADD
00002803: MSTORE
00002804: PUSH20 0x9a4d116eda832bbbe6671d1a2f7bba58016787ac
00002819: SWAP1
0000281a: PUSH4 0x1c754322
0000281f: SWAP1
00002820: PUSH2 0x0144
00002823: ADD
00002824: PUSH2 0x0cf3
00002827: JUMP
00002828: JUMPDEST
00002829: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
0000284a: DUP1
0000284b: SLOAD
0000284c: PUSH1 0x01
0000284e: PUSH1 0x40
00002850: SHL
00002851: DUP2
00002852: DIV
00002853: PUSH1 0xff
00002855: AND
00002856: ISZERO
00002857: SWAP1
00002858: PUSH1 0x01
0000285a: PUSH1 0x01
0000285c: PUSH1 0x40
0000285e: SHL
0000285f: SUB
00002860: AND
00002861: PUSH0
00002862: DUP2
00002863: ISZERO
00002864: DUP1
00002865: ISZERO
00002866: PUSH2 0x286c
00002869: JUMPI
0000286a: POP
0000286b: DUP3
0000286c: JUMPDEST
0000286d: SWAP1
0000286e: POP
0000286f: PUSH0
00002870: DUP3
00002871: PUSH1 0x01
00002873: PUSH1 0x01
00002875: PUSH1 0x40
00002877: SHL
00002878: SUB
00002879: AND
0000287a: PUSH1 0x01
0000287c: EQ
0000287d: DUP1
0000287e: ISZERO
0000287f: PUSH2 0x2887
00002882: JUMPI
00002883: POP
00002884: ADDRESS
00002885: EXTCODESIZE
00002886: ISZERO
00002887: JUMPDEST
00002888: SWAP1
00002889: POP
0000288a: DUP2
0000288b: ISZERO
0000288c: DUP1
0000288d: ISZERO
0000288e: PUSH2 0x2895
00002891: JUMPI
00002892: POP
00002893: DUP1
00002894: ISZERO
00002895: JUMPDEST
00002896: ISZERO
00002897: PUSH2 0x28b3
0000289a: JUMPI
0000289b: PUSH1 0x40
0000289d: MLOAD
0000289e: PUSH4 0xf92ee8a9
000028a3: PUSH1 0xe0
000028a5: SHL
000028a6: DUP2
000028a7: MSTORE
000028a8: PUSH1 0x04
000028aa: ADD
000028ab: PUSH1 0x40
000028ad: MLOAD
000028ae: DUP1
000028af: SWAP2
000028b0: SUB
000028b1: SWAP1
000028b2: REVERT
000028b3: JUMPDEST
000028b4: DUP5
000028b5: SLOAD
000028b6: PUSH8 0xffffffffffffffff
000028bf: NOT
000028c0: AND
000028c1: PUSH1 0x01
000028c3: OR
000028c4: DUP6
000028c5: SSTORE
000028c6: DUP4
000028c7: ISZERO
000028c8: PUSH2 0x28dd
000028cb: JUMPI
000028cc: DUP5
000028cd: SLOAD
000028ce: PUSH1 0xff
000028d0: PUSH1 0x40
000028d2: SHL
000028d3: NOT
000028d4: AND
000028d5: PUSH1 0x01
000028d7: PUSH1 0x40
000028d9: SHL
000028da: OR
000028db: DUP6
000028dc: SSTORE
000028dd: JUMPDEST
000028de: PUSH2 0x28e9
000028e1: DUP10
000028e2: DUP10
000028e3: DUP10
000028e4: DUP10
000028e5: PUSH2 0x2d99
000028e8: JUMP
000028e9: JUMPDEST
000028ea: PUSH1 0x4b
000028ec: PUSH1 0x20
000028ee: MSTORE
000028ef: PUSH32 0xa616258785d57c6565e8210a7a01441f8018ea52e0ce6d2ea56b8099c64a4d75
00002910: DUP1
00002911: SLOAD
00002912: PUSH3 0x030d40
00002916: PUSH4 0xffffffff
0000291b: NOT
0000291c: SWAP2
0000291d: DUP3
0000291e: AND
0000291f: DUP2
00002920: OR
00002921: SWAP1
00002922: SWAP3
00002923: SSTORE
00002924: PUSH1 0x02
00002926: PUSH0
00002927: MSTORE
00002928: PUSH32 0xed8fe69440ed7378c748b48bdf0a382a8b2b7193fd6134dd2b323f6392cefa4d
00002949: DUP1
0000294a: SLOAD
0000294b: SWAP1
0000294c: SWAP2
0000294d: AND
0000294e: SWAP1
0000294f: SWAP2
00002950: OR
00002951: SWAP1
00002952: SSTORE
00002953: PUSH1 0x01
00002955: PUSH1 0x3c
00002957: SSTORE
00002958: DUP4
00002959: ISZERO
0000295a: PUSH2 0x0f4b
0000295d: JUMPI
0000295e: DUP5
0000295f: SLOAD
00002960: PUSH1 0xff
00002962: PUSH1 0x40
00002964: SHL
00002965: NOT
00002966: AND
00002967: DUP6
00002968: SSTORE
00002969: PUSH1 0x40
0000296b: MLOAD
0000296c: PUSH1 0x01
0000296e: DUP2
0000296f: MSTORE
00002970: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00002991: SWAP1
00002992: PUSH1 0x20
00002994: ADD
00002995: JUMPDEST
00002996: PUSH1 0x40
00002998: MLOAD
00002999: DUP1
0000299a: SWAP2
0000299b: SUB
0000299c: SWAP1
0000299d: LOG1
0000299e: POP
0000299f: POP
000029a0: POP
000029a1: POP
000029a2: POP
000029a3: POP
000029a4: POP
000029a5: POP
000029a6: POP
000029a7: JUMP
000029a8: JUMPDEST
000029a9: PUSH1 0x3c
000029ab: SLOAD
000029ac: PUSH1 0x01
000029ae: NOT
000029af: ADD
000029b0: PUSH2 0x29cc
000029b3: JUMPI
000029b4: PUSH1 0x40
000029b6: MLOAD
000029b7: PUSH4 0x13d0ff59
000029bc: PUSH1 0xe3
000029be: SHL
000029bf: DUP2
000029c0: MSTORE
000029c1: PUSH1 0x04
000029c3: ADD
000029c4: PUSH1 0x40
000029c6: MLOAD
000029c7: DUP1
000029c8: SWAP2
000029c9: SUB
000029ca: SWAP1
000029cb: REVERT
000029cc: JUMPDEST
000029cd: PUSH2 0x29d4
000029d0: PUSH2 0x2b5a
000029d3: JUMP
000029d4: JUMPDEST
000029d5: PUSH1 0x40
000029d7: MLOAD
000029d8: PUSH4 0x9ae86e7f
000029dd: PUSH1 0xe0
000029df: SHL
000029e0: DUP2
000029e1: MSTORE
000029e2: PUSH1 0x48
000029e4: PUSH1 0x04
000029e6: DUP3
000029e7: ADD
000029e8: MSTORE
000029e9: PUSH1 0x49
000029eb: PUSH1 0x24
000029ed: DUP3
000029ee: ADD
000029ef: MSTORE
000029f0: PUSH1 0x32
000029f2: PUSH1 0x44
000029f4: DUP3
000029f5: ADD
000029f6: MSTORE
000029f7: PUSH1 0x3e
000029f9: PUSH1 0x64
000029fb: DUP3
000029fc: ADD
000029fd: MSTORE
000029fe: PUSH1 0x84
00002a00: DUP2
00002a01: ADD
00002a02: DUP5
00002a03: SWAP1
00002a04: MSTORE
00002a05: PUSH1 0xa4
00002a07: DUP2
00002a08: ADD
00002a09: DUP4
00002a0a: SWAP1
00002a0b: MSTORE
00002a0c: PUSH1 0x01
00002a0e: PUSH1 0x01
00002a10: PUSH1 0xa0
00002a12: SHL
00002a13: SUB
00002a14: DUP3
00002a15: AND
00002a16: PUSH1 0xc4
00002a18: DUP3
00002a19: ADD
00002a1a: MSTORE
00002a1b: PUSH20 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
00002a30: SWAP1
00002a31: PUSH4 0x9ae86e7f
00002a36: SWAP1
00002a37: PUSH1 0xe4
00002a39: ADD
00002a3a: PUSH0
00002a3b: PUSH1 0x40
00002a3d: MLOAD
00002a3e: DUP1
00002a3f: DUP4
00002a40: SUB
00002a41: DUP2
00002a42: DUP7
00002a43: DUP1
00002a44: EXTCODESIZE
00002a45: ISZERO
00002a46: DUP1
00002a47: ISZERO
00002a48: PUSH2 0x2a4f
00002a4b: JUMPI
00002a4c: PUSH0
00002a4d: DUP1
00002a4e: REVERT
00002a4f: JUMPDEST
00002a50: POP
00002a51: GAS
00002a52: DELEGATECALL
00002a53: ISZERO
00002a54: DUP1
00002a55: ISZERO
00002a56: PUSH2 0x2a61
00002a59: JUMPI
00002a5a: RETURNDATASIZE
00002a5b: PUSH0
00002a5c: DUP1
00002a5d: RETURNDATACOPY
00002a5e: RETURNDATASIZE
00002a5f: PUSH0
00002a60: REVERT
00002a61: JUMPDEST
00002a62: POP
00002a63: POP
00002a64: POP
00002a65: POP
00002a66: PUSH2 0x1147
00002a69: PUSH1 0x01
00002a6b: PUSH0
00002a6c: DUP1
00002a6d: MLOAD
00002a6e: PUSH1 0x20
00002a70: PUSH2 0x46ce
00002a73: DUP4
00002a74: CODECOPY
00002a75: DUP2
00002a76: MLOAD
00002a77: SWAP2
00002a78: MSTORE
00002a79: SSTORE
00002a7a: JUMP
00002a7b: JUMPDEST
00002a7c: PUSH1 0x49
00002a7e: PUSH1 0x20
00002a80: MSTORE
00002a81: PUSH0
00002a82: SWAP1
00002a83: DUP2
00002a84: MSTORE
00002a85: PUSH1 0x40
00002a87: SWAP1
00002a88: KECCAK256
00002a89: DUP1
00002a8a: SLOAD
00002a8b: PUSH2 0x2a93
00002a8e: SWAP1
00002a8f: PUSH2 0x41a2
00002a92: JUMP
00002a93: JUMPDEST
00002a94: DUP1
00002a95: PUSH1 0x1f
00002a97: ADD
00002a98: PUSH1 0x20
00002a9a: DUP1
00002a9b: SWAP2
00002a9c: DIV
00002a9d: MUL
00002a9e: PUSH1 0x20
00002aa0: ADD
00002aa1: PUSH1 0x40
00002aa3: MLOAD
00002aa4: SWAP1
00002aa5: DUP2
00002aa6: ADD
00002aa7: PUSH1 0x40
00002aa9: MSTORE
00002aaa: DUP1
00002aab: SWAP3
00002aac: SWAP2
00002aad: SWAP1
00002aae: DUP2
00002aaf: DUP2
00002ab0: MSTORE
00002ab1: PUSH1 0x20
00002ab3: ADD
00002ab4: DUP3
00002ab5: DUP1
00002ab6: SLOAD
00002ab7: PUSH2 0x2abf
00002aba: SWAP1
00002abb: PUSH2 0x41a2
00002abe: JUMP
00002abf: JUMPDEST
00002ac0: DUP1
00002ac1: ISZERO
00002ac2: PUSH2 0x2b0a
00002ac5: JUMPI
00002ac6: DUP1
00002ac7: PUSH1 0x1f
00002ac9: LT
00002aca: PUSH2 0x2ae1
00002acd: JUMPI
00002ace: PUSH2 0x0100
00002ad1: DUP1
00002ad2: DUP4
00002ad3: SLOAD
00002ad4: DIV
00002ad5: MUL
00002ad6: DUP4
00002ad7: MSTORE
00002ad8: SWAP2
00002ad9: PUSH1 0x20
00002adb: ADD
00002adc: SWAP2
00002add: PUSH2 0x2b0a
00002ae0: JUMP
00002ae1: JUMPDEST
00002ae2: DUP3
00002ae3: ADD
00002ae4: SWAP2
00002ae5: SWAP1
00002ae6: PUSH0
00002ae7: MSTORE
00002ae8: PUSH1 0x20
00002aea: PUSH0
00002aeb: KECCAK256
00002aec: SWAP1
00002aed: JUMPDEST
00002aee: DUP2
00002aef: SLOAD
00002af0: DUP2
00002af1: MSTORE
00002af2: SWAP1
00002af3: PUSH1 0x01
00002af5: ADD
00002af6: SWAP1
00002af7: PUSH1 0x20
00002af9: ADD
00002afa: DUP1
00002afb: DUP4
00002afc: GT
00002afd: PUSH2 0x2aed
00002b00: JUMPI
00002b01: DUP3
00002b02: SWAP1
00002b03: SUB
00002b04: PUSH1 0x1f
00002b06: AND
00002b07: DUP3
00002b08: ADD
00002b09: SWAP2
00002b0a: JUMPDEST
00002b0b: POP
00002b0c: POP
00002b0d: POP
00002b0e: POP
00002b0f: POP
00002b10: DUP2
00002b11: JUMP
00002b12: JUMPDEST
00002b13: PUSH2 0x0e5e
00002b16: DUP2
00002b17: CALLER
00002b18: PUSH2 0x2f2a
00002b1b: JUMP
00002b1c: JUMPDEST
00002b1d: PUSH0
00002b1e: PUSH1 0x01
00002b20: PUSH1 0x01
00002b22: PUSH1 0xe0
00002b24: SHL
00002b25: SUB
00002b26: NOT
00002b27: DUP3
00002b28: AND
00002b29: PUSH4 0x7965db0b
00002b2e: PUSH1 0xe0
00002b30: SHL
00002b31: EQ
00002b32: DUP1
00002b33: PUSH2 0x0dbf
00002b36: JUMPI
00002b37: POP
00002b38: PUSH4 0x01ffc9a7
00002b3d: PUSH1 0xe0
00002b3f: SHL
00002b40: PUSH1 0x01
00002b42: PUSH1 0x01
00002b44: PUSH1 0xe0
00002b46: SHL
00002b47: SUB
00002b48: NOT
00002b49: DUP4
00002b4a: AND
00002b4b: EQ
00002b4c: PUSH2 0x0dbf
00002b4f: JUMP
00002b50: JUMPDEST
00002b51: PUSH2 0x199b
00002b54: PUSH0
00002b55: DUP1
00002b56: PUSH2 0x2f63
00002b59: JUMP
00002b5a: JUMPDEST
00002b5b: PUSH0
00002b5c: DUP1
00002b5d: MLOAD
00002b5e: PUSH1 0x20
00002b60: PUSH2 0x46ce
00002b63: DUP4
00002b64: CODECOPY
00002b65: DUP2
00002b66: MLOAD
00002b67: SWAP2
00002b68: MSTORE
00002b69: DUP1
00002b6a: SLOAD
00002b6b: PUSH1 0x01
00002b6d: NOT
00002b6e: ADD
00002b6f: PUSH2 0x2b8b
00002b72: JUMPI
00002b73: PUSH1 0x40
00002b75: MLOAD
00002b76: PUSH4 0x3ee5aeb5
00002b7b: PUSH1 0xe0
00002b7d: SHL
00002b7e: DUP2
00002b7f: MSTORE
00002b80: PUSH1 0x04
00002b82: ADD
00002b83: PUSH1 0x40
00002b85: MLOAD
00002b86: DUP1
00002b87: SWAP2
00002b88: SUB
00002b89: SWAP1
00002b8a: REVERT
00002b8b: JUMPDEST
00002b8c: PUSH1 0x02
00002b8e: SWAP1
00002b8f: SSTORE
00002b90: JUMP
00002b91: JUMPDEST
00002b92: PUSH1 0x01
00002b94: PUSH0
00002b95: DUP1
00002b96: MLOAD
00002b97: PUSH1 0x20
00002b99: PUSH2 0x46ce
00002b9c: DUP4
00002b9d: CODECOPY
00002b9e: DUP2
00002b9f: MLOAD
00002ba0: SWAP2
00002ba1: MSTORE
00002ba2: SSTORE
00002ba3: JUMP
00002ba4: JUMPDEST
00002ba5: PUSH2 0x2bad
00002ba8: DUP3
00002ba9: PUSH2 0x1000
00002bac: JUMP
00002bad: JUMPDEST
00002bae: PUSH2 0x2bb6
00002bb1: DUP2
00002bb2: PUSH2 0x2b12
00002bb5: JUMP
00002bb6: JUMPDEST
00002bb7: PUSH2 0x2bc0
00002bba: DUP4
00002bbb: DUP4
00002bbc: PUSH2 0x303b
00002bbf: JUMP
00002bc0: JUMPDEST
00002bc1: POP
00002bc2: POP
00002bc3: POP
00002bc4: POP
00002bc5: JUMP
00002bc6: JUMPDEST
00002bc7: PUSH1 0x01
00002bc9: PUSH1 0x01
00002bcb: PUSH1 0xa0
00002bcd: SHL
00002bce: SUB
00002bcf: DUP2
00002bd0: AND
00002bd1: CALLER
00002bd2: EQ
00002bd3: PUSH2 0x2bef
00002bd6: JUMPI
00002bd7: PUSH1 0x40
00002bd9: MLOAD
00002bda: PUSH4 0x334bd919
00002bdf: PUSH1 0xe1
00002be1: SHL
00002be2: DUP2
00002be3: MSTORE
00002be4: PUSH1 0x04
00002be6: ADD
00002be7: PUSH1 0x40
00002be9: MLOAD
00002bea: DUP1
00002beb: SWAP2
00002bec: SUB
00002bed: SWAP1
00002bee: REVERT
00002bef: JUMPDEST
00002bf0: PUSH2 0x1147
00002bf3: DUP3
00002bf4: DUP3
00002bf5: PUSH2 0x30af
00002bf8: JUMP
00002bf9: JUMPDEST
00002bfa: PUSH0
00002bfb: PUSH2 0x2c02
00002bfe: PUSH2 0x24f2
00002c01: JUMP
00002c02: JUMPDEST
00002c03: PUSH2 0x2c0b
00002c06: TIMESTAMP
00002c07: PUSH2 0x3106
00002c0a: JUMP
00002c0b: JUMPDEST
00002c0c: PUSH2 0x2c15
00002c0f: SWAP2
00002c10: SWAP1
00002c11: PUSH2 0x462f
00002c14: JUMP
00002c15: JUMPDEST
00002c16: SWAP1
00002c17: POP
00002c18: PUSH2 0x2c21
00002c1b: DUP3
00002c1c: DUP3
00002c1d: PUSH2 0x313c
00002c20: JUMP
00002c21: JUMPDEST
00002c22: PUSH1 0x40
00002c24: MLOAD
00002c25: PUSH6 0xffffffffffff
00002c2c: DUP3
00002c2d: AND
00002c2e: DUP2
00002c2f: MSTORE
00002c30: PUSH1 0x01
00002c32: PUSH1 0x01
00002c34: PUSH1 0xa0
00002c36: SHL
00002c37: SUB
00002c38: DUP4
00002c39: AND
00002c3a: SWAP1
00002c3b: PUSH32 0x3377dc44241e779dd06afab5b788a35ca5f3b778836e2990bdb26a2a4b2e5ed6
00002c5c: SWAP1
00002c5d: PUSH1 0x20
00002c5f: ADD
00002c60: PUSH1 0x40
00002c62: MLOAD
00002c63: DUP1
00002c64: SWAP2
00002c65: SUB
00002c66: SWAP1
00002c67: LOG2
00002c68: POP
00002c69: POP
00002c6a: JUMP
00002c6b: JUMPDEST
00002c6c: PUSH0
00002c6d: PUSH2 0x2c75
00002c70: DUP3
00002c71: PUSH2 0x31c6
00002c74: JUMP
00002c75: JUMPDEST
00002c76: PUSH2 0x2c7e
00002c79: TIMESTAMP
00002c7a: PUSH2 0x3106
00002c7d: JUMP
00002c7e: JUMPDEST
00002c7f: PUSH2 0x2c88
00002c82: SWAP2
00002c83: SWAP1
00002c84: PUSH2 0x462f
00002c87: JUMP
00002c88: JUMPDEST
00002c89: SWAP1
00002c8a: POP
00002c8b: PUSH2 0x2c94
00002c8e: DUP3
00002c8f: DUP3
00002c90: PUSH2 0x2f63
00002c93: JUMP
00002c94: JUMPDEST
00002c95: PUSH1 0x40
00002c97: DUP1
00002c98: MLOAD
00002c99: PUSH6 0xffffffffffff
00002ca0: DUP1
00002ca1: DUP6
00002ca2: AND
00002ca3: DUP3
00002ca4: MSTORE
00002ca5: DUP4
00002ca6: AND
00002ca7: PUSH1 0x20
00002ca9: DUP3
00002caa: ADD
00002cab: MSTORE
00002cac: PUSH32 0xf1038c18cf84a56e432fdbfaf746924b7ea511dfe03a6506a0ceba4888788d9b
00002ccd: SWAP2
00002cce: ADD
00002ccf: PUSH1 0x40
00002cd1: MLOAD
00002cd2: DUP1
00002cd3: SWAP2
00002cd4: SUB
00002cd5: SWAP1
00002cd6: LOG1
00002cd7: POP
00002cd8: POP
00002cd9: JUMP
00002cda: JUMPDEST
00002cdb: PUSH0
00002cdc: DUP1
00002cdd: MLOAD
00002cde: PUSH1 0x20
00002ce0: PUSH2 0x468e
00002ce3: DUP4
00002ce4: CODECOPY
00002ce5: DUP2
00002ce6: MLOAD
00002ce7: SWAP2
00002ce8: MSTORE
00002ce9: PUSH0
00002cea: DUP1
00002ceb: PUSH2 0x2cf2
00002cee: PUSH2 0x25ac
00002cf1: JUMP
00002cf2: JUMPDEST
00002cf3: SWAP2
00002cf4: POP
00002cf5: SWAP2
00002cf6: POP
00002cf7: PUSH2 0x2d07
00002cfa: DUP2
00002cfb: PUSH6 0xffffffffffff
00002d02: AND
00002d03: ISZERO
00002d04: ISZERO
00002d05: SWAP1
00002d06: JUMP
00002d07: JUMPDEST
00002d08: ISZERO
00002d09: DUP1
00002d0a: PUSH2 0x2d1b
00002d0d: JUMPI
00002d0e: POP
00002d0f: TIMESTAMP
00002d10: PUSH6 0xffffffffffff
00002d17: DUP3
00002d18: AND
00002d19: LT
00002d1a: ISZERO
00002d1b: JUMPDEST
00002d1c: ISZERO
00002d1d: PUSH2 0x2d43
00002d20: JUMPI
00002d21: PUSH1 0x40
00002d23: MLOAD
00002d24: PUSH4 0x19ca5ebb
00002d29: PUSH1 0xe0
00002d2b: SHL
00002d2c: DUP2
00002d2d: MSTORE
00002d2e: PUSH6 0xffffffffffff
00002d35: DUP3
00002d36: AND
00002d37: PUSH1 0x04
00002d39: DUP3
00002d3a: ADD
00002d3b: MSTORE
00002d3c: PUSH1 0x24
00002d3e: ADD
00002d3f: PUSH2 0x1121
00002d42: JUMP
00002d43: JUMPDEST
00002d44: PUSH2 0x2d54
00002d47: PUSH0
00002d48: PUSH2 0x2d4f
00002d4b: PUSH2 0x1f4d
00002d4e: JUMP
00002d4f: JUMPDEST
00002d50: PUSH2 0x30af
00002d53: JUMP
00002d54: JUMPDEST
00002d55: POP
00002d56: PUSH2 0x2d5f
00002d59: PUSH0
00002d5a: DUP4
00002d5b: PUSH2 0x303b
00002d5e: JUMP
00002d5f: JUMPDEST
00002d60: POP
00002d61: POP
00002d62: DUP2
00002d63: SLOAD
00002d64: PUSH1 0x01
00002d66: PUSH1 0x01
00002d68: PUSH1 0xd0
00002d6a: SHL
00002d6b: SUB
00002d6c: NOT
00002d6d: AND
00002d6e: SWAP1
00002d6f: SWAP2
00002d70: SSTORE
00002d71: POP
00002d72: JUMP
00002d73: JUMPDEST
00002d74: PUSH2 0x2d7c
00002d77: DUP3
00002d78: PUSH2 0x1000
00002d7b: JUMP
00002d7c: JUMPDEST
00002d7d: PUSH2 0x2d85
00002d80: DUP2
00002d81: PUSH2 0x2b12
00002d84: JUMP
00002d85: JUMPDEST
00002d86: PUSH2 0x2bc0
00002d89: DUP4
00002d8a: DUP4
00002d8b: PUSH2 0x30af
00002d8e: JUMP
00002d8f: JUMPDEST
00002d90: PUSH2 0x199b
00002d93: PUSH0
00002d94: DUP1
00002d95: PUSH2 0x313c
00002d98: JUMP
00002d99: JUMPDEST
00002d9a: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
00002dbb: DUP1
00002dbc: SLOAD
00002dbd: PUSH1 0x01
00002dbf: PUSH1 0x40
00002dc1: SHL
00002dc2: DUP2
00002dc3: DIV
00002dc4: PUSH1 0xff
00002dc6: AND
00002dc7: ISZERO
00002dc8: SWAP1
00002dc9: PUSH1 0x01
00002dcb: PUSH1 0x01
00002dcd: PUSH1 0x40
00002dcf: SHL
00002dd0: SUB
00002dd1: AND
00002dd2: PUSH0
00002dd3: DUP2
00002dd4: ISZERO
00002dd5: DUP1
00002dd6: ISZERO
00002dd7: PUSH2 0x2ddd
00002dda: JUMPI
00002ddb: POP
00002ddc: DUP3
00002ddd: JUMPDEST
00002dde: SWAP1
00002ddf: POP
00002de0: PUSH0
00002de1: DUP3
00002de2: PUSH1 0x01
00002de4: PUSH1 0x01
00002de6: PUSH1 0x40
00002de8: SHL
00002de9: SUB
00002dea: AND
00002deb: PUSH1 0x01
00002ded: EQ
00002dee: DUP1
00002def: ISZERO
00002df0: PUSH2 0x2df8
00002df3: JUMPI
00002df4: POP
00002df5: ADDRESS
00002df6: EXTCODESIZE
00002df7: ISZERO
00002df8: JUMPDEST
00002df9: SWAP1
00002dfa: POP
00002dfb: DUP2
00002dfc: ISZERO
00002dfd: DUP1
00002dfe: ISZERO
00002dff: PUSH2 0x2e06
00002e02: JUMPI
00002e03: POP
00002e04: DUP1
00002e05: ISZERO
00002e06: JUMPDEST
00002e07: ISZERO
00002e08: PUSH2 0x2e24
00002e0b: JUMPI
00002e0c: PUSH1 0x40
00002e0e: MLOAD
00002e0f: PUSH4 0xf92ee8a9
00002e14: PUSH1 0xe0
00002e16: SHL
00002e17: DUP2
00002e18: MSTORE
00002e19: PUSH1 0x04
00002e1b: ADD
00002e1c: PUSH1 0x40
00002e1e: MLOAD
00002e1f: DUP1
00002e20: SWAP2
00002e21: SUB
00002e22: SWAP1
00002e23: REVERT
00002e24: JUMPDEST
00002e25: DUP5
00002e26: SLOAD
00002e27: PUSH8 0xffffffffffffffff
00002e30: NOT
00002e31: AND
00002e32: PUSH1 0x01
00002e34: OR
00002e35: DUP6
00002e36: SSTORE
00002e37: DUP4
00002e38: ISZERO
00002e39: PUSH2 0x2e4e
00002e3c: JUMPI
00002e3d: DUP5
00002e3e: SLOAD
00002e3f: PUSH1 0xff
00002e41: PUSH1 0x40
00002e43: SHL
00002e44: NOT
00002e45: AND
00002e46: PUSH1 0x01
00002e48: PUSH1 0x40
00002e4a: SHL
00002e4b: OR
00002e4c: DUP6
00002e4d: SSTORE
00002e4e: JUMPDEST
00002e4f: PUSH1 0x01
00002e51: PUSH1 0x01
00002e53: PUSH1 0xa0
00002e55: SHL
00002e56: SUB
00002e57: DUP10
00002e58: AND
00002e59: PUSH2 0x2e75
00002e5c: JUMPI
00002e5d: PUSH1 0x40
00002e5f: MLOAD
00002e60: PUSH4 0xd92e233d
00002e65: PUSH1 0xe0
00002e67: SHL
00002e68: DUP2
00002e69: MSTORE
00002e6a: PUSH1 0x04
00002e6c: ADD
00002e6d: PUSH1 0x40
00002e6f: MLOAD
00002e70: DUP1
00002e71: SWAP2
00002e72: SUB
00002e73: SWAP1
00002e74: REVERT
00002e75: JUMPDEST
00002e76: PUSH1 0x01
00002e78: PUSH1 0x01
00002e7a: PUSH1 0xa0
00002e7c: SHL
00002e7d: SUB
00002e7e: DUP8
00002e7f: AND
00002e80: PUSH2 0x2e9c
00002e83: JUMPI
00002e84: PUSH1 0x40
00002e86: MLOAD
00002e87: PUSH4 0xd92e233d
00002e8c: PUSH1 0xe0
00002e8e: SHL
00002e8f: DUP2
00002e90: MSTORE
00002e91: PUSH1 0x04
00002e93: ADD
00002e94: PUSH1 0x40
00002e96: MLOAD
00002e97: DUP1
00002e98: SWAP2
00002e99: SUB
00002e9a: SWAP1
00002e9b: REVERT
00002e9c: JUMPDEST
00002e9d: PUSH2 0x2ea6
00002ea0: DUP7
00002ea1: DUP10
00002ea2: PUSH2 0x3214
00002ea5: JUMP
00002ea6: JUMPDEST
00002ea7: PUSH2 0x2eae
00002eaa: PUSH2 0x3226
00002ead: JUMP
00002eae: JUMPDEST
00002eaf: PUSH1 0x14
00002eb1: PUSH1 0x35
00002eb3: SSTORE
00002eb4: PUSH1 0x3f
00002eb6: DUP1
00002eb7: SLOAD
00002eb8: PUSH1 0x01
00002eba: PUSH1 0x01
00002ebc: PUSH1 0xa0
00002ebe: SHL
00002ebf: SUB
00002ec0: DUP1
00002ec1: DUP13
00002ec2: AND
00002ec3: PUSH1 0x01
00002ec5: PUSH1 0x01
00002ec7: PUSH1 0xa0
00002ec9: SHL
00002eca: SUB
00002ecb: NOT
00002ecc: SWAP3
00002ecd: DUP4
00002ece: AND
00002ecf: OR
00002ed0: SWAP1
00002ed1: SWAP3
00002ed2: SSTORE
00002ed3: PUSH1 0x3e
00002ed5: DUP1
00002ed6: SLOAD
00002ed7: SWAP3
00002ed8: DUP11
00002ed9: AND
00002eda: SWAP3
00002edb: SWAP1
00002edc: SWAP2
00002edd: AND
00002ede: SWAP2
00002edf: SWAP1
00002ee0: SWAP2
00002ee1: OR
00002ee2: SWAP1
00002ee3: SSTORE
00002ee4: PUSH1 0x01
00002ee6: PUSH1 0x36
00002ee8: SSTORE
00002ee9: DUP4
00002eea: ISZERO
00002eeb: PUSH2 0x0f4b
00002eee: JUMPI
00002eef: DUP5
00002ef0: SLOAD
00002ef1: PUSH1 0xff
00002ef3: PUSH1 0x40
00002ef5: SHL
00002ef6: NOT
00002ef7: AND
00002ef8: DUP6
00002ef9: SSTORE
00002efa: PUSH1 0x40
00002efc: MLOAD
00002efd: PUSH1 0x01
00002eff: DUP2
00002f00: MSTORE
00002f01: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00002f22: SWAP1
00002f23: PUSH1 0x20
00002f25: ADD
00002f26: PUSH2 0x2995
00002f29: JUMP
00002f2a: JUMPDEST
00002f2b: PUSH2 0x2f34
00002f2e: DUP3
00002f2f: DUP3
00002f30: PUSH2 0x20ce
00002f33: JUMP
00002f34: JUMPDEST
00002f35: PUSH2 0x1081
00002f38: JUMPI
00002f39: PUSH1 0x40
00002f3b: MLOAD
00002f3c: PUSH4 0xe2517d3f
00002f41: PUSH1 0xe0
00002f43: SHL
00002f44: DUP2
00002f45: MSTORE
00002f46: PUSH1 0x01
00002f48: PUSH1 0x01
00002f4a: PUSH1 0xa0
00002f4c: SHL
00002f4d: SUB
00002f4e: DUP3
00002f4f: AND
00002f50: PUSH1 0x04
00002f52: DUP3
00002f53: ADD
00002f54: MSTORE
00002f55: PUSH1 0x24
00002f57: DUP2
00002f58: ADD
00002f59: DUP4
00002f5a: SWAP1
00002f5b: MSTORE
00002f5c: PUSH1 0x44
00002f5e: ADD
00002f5f: PUSH2 0x1121
00002f62: JUMP
00002f63: JUMPDEST
00002f64: PUSH0
00002f65: DUP1
00002f66: MLOAD
00002f67: PUSH1 0x20
00002f69: PUSH2 0x46ee
00002f6c: DUP4
00002f6d: CODECOPY
00002f6e: DUP2
00002f6f: MLOAD
00002f70: SWAP2
00002f71: MSTORE
00002f72: SLOAD
00002f73: PUSH0
00002f74: DUP1
00002f75: MLOAD
00002f76: PUSH1 0x20
00002f78: PUSH2 0x468e
00002f7b: DUP4
00002f7c: CODECOPY
00002f7d: DUP2
00002f7e: MLOAD
00002f7f: SWAP2
00002f80: MSTORE
00002f81: SWAP1
00002f82: PUSH1 0x01
00002f84: PUSH1 0xd0
00002f86: SHL
00002f87: SWAP1
00002f88: DIV
00002f89: PUSH6 0xffffffffffff
00002f90: AND
00002f91: DUP1
00002f92: ISZERO
00002f93: PUSH2 0x2ffd
00002f96: JUMPI
00002f97: TIMESTAMP
00002f98: PUSH6 0xffffffffffff
00002f9f: DUP3
00002fa0: AND
00002fa1: LT
00002fa2: ISZERO
00002fa3: PUSH2 0x2fd4
00002fa6: JUMPI
00002fa7: PUSH1 0x01
00002fa9: DUP3
00002faa: ADD
00002fab: SLOAD
00002fac: DUP3
00002fad: SLOAD
00002fae: PUSH1 0x01
00002fb0: PUSH1 0x01
00002fb2: PUSH1 0xd0
00002fb4: SHL
00002fb5: SUB
00002fb6: AND
00002fb7: PUSH1 0x01
00002fb9: PUSH1 0xa0
00002fbb: SHL
00002fbc: SWAP1
00002fbd: SWAP2
00002fbe: DIV
00002fbf: PUSH6 0xffffffffffff
00002fc6: AND
00002fc7: PUSH1 0x01
00002fc9: PUSH1 0xd0
00002fcb: SHL
00002fcc: MUL
00002fcd: OR
00002fce: DUP3
00002fcf: SSTORE
00002fd0: PUSH2 0x2ffd
00002fd3: JUMP
00002fd4: JUMPDEST
00002fd5: PUSH1 0x40
00002fd7: MLOAD
00002fd8: PUSH32 0x2b1fa2edafe6f7b9e97c1a9e0c3660e645beb2dcaa2d45bdbf9beaf5472e1ec5
00002ff9: SWAP1
00002ffa: PUSH0
00002ffb: SWAP1
00002ffc: LOG1
00002ffd: JUMPDEST
00002ffe: POP
00002fff: PUSH1 0x01
00003001: ADD
00003002: DUP1
00003003: SLOAD
00003004: PUSH1 0x01
00003006: PUSH1 0x01
00003008: PUSH1 0xa0
0000300a: SHL
0000300b: SUB
0000300c: AND
0000300d: PUSH1 0x01
0000300f: PUSH1 0xa0
00003011: SHL
00003012: PUSH6 0xffffffffffff
00003019: SWAP5
0000301a: DUP6
0000301b: AND
0000301c: MUL
0000301d: PUSH1 0x01
0000301f: PUSH1 0x01
00003021: PUSH1 0xd0
00003023: SHL
00003024: SUB
00003025: AND
00003026: OR
00003027: PUSH1 0x01
00003029: PUSH1 0xd0
0000302b: SHL
0000302c: SWAP3
0000302d: SWAP1
0000302e: SWAP4
0000302f: AND
00003030: SWAP2
00003031: SWAP1
00003032: SWAP2
00003033: MUL
00003034: SWAP2
00003035: SWAP1
00003036: SWAP2
00003037: OR
00003038: SWAP1
00003039: SSTORE
0000303a: JUMP
0000303b: JUMPDEST
0000303c: PUSH0
0000303d: PUSH0
0000303e: DUP1
0000303f: MLOAD
00003040: PUSH1 0x20
00003042: PUSH2 0x468e
00003045: DUP4
00003046: CODECOPY
00003047: DUP2
00003048: MLOAD
00003049: SWAP2
0000304a: MSTORE
0000304b: DUP4
0000304c: PUSH2 0x309d
0000304f: JUMPI
00003050: PUSH0
00003051: PUSH2 0x3058
00003054: PUSH2 0x1f4d
00003057: JUMP
00003058: JUMPDEST
00003059: PUSH1 0x01
0000305b: PUSH1 0x01
0000305d: PUSH1 0xa0
0000305f: SHL
00003060: SUB
00003061: AND
00003062: EQ
00003063: PUSH2 0x307f
00003066: JUMPI
00003067: PUSH1 0x40
00003069: MLOAD
0000306a: PUSH4 0x1fe1e13d
0000306f: PUSH1 0xe1
00003071: SHL
00003072: DUP2
00003073: MSTORE
00003074: PUSH1 0x04
00003076: ADD
00003077: PUSH1 0x40
00003079: MLOAD
0000307a: DUP1
0000307b: SWAP2
0000307c: SUB
0000307d: SWAP1
0000307e: REVERT
0000307f: JUMPDEST
00003080: PUSH1 0x01
00003082: DUP2
00003083: ADD
00003084: DUP1
00003085: SLOAD
00003086: PUSH1 0x01
00003088: PUSH1 0x01
0000308a: PUSH1 0xa0
0000308c: SHL
0000308d: SUB
0000308e: NOT
0000308f: AND
00003090: PUSH1 0x01
00003092: PUSH1 0x01
00003094: PUSH1 0xa0
00003096: SHL
00003097: SUB
00003098: DUP6
00003099: AND
0000309a: OR
0000309b: SWAP1
0000309c: SSTORE
0000309d: JUMPDEST
0000309e: PUSH2 0x30a7
000030a1: DUP5
000030a2: DUP5
000030a3: PUSH2 0x3236
000030a6: JUMP
000030a7: JUMPDEST
000030a8: SWAP5
000030a9: SWAP4
000030aa: POP
000030ab: POP
000030ac: POP
000030ad: POP
000030ae: JUMP
000030af: JUMPDEST
000030b0: PUSH0
000030b1: PUSH0
000030b2: DUP1
000030b3: MLOAD
000030b4: PUSH1 0x20
000030b6: PUSH2 0x468e
000030b9: DUP4
000030ba: CODECOPY
000030bb: DUP2
000030bc: MLOAD
000030bd: SWAP2
000030be: MSTORE
000030bf: DUP4
000030c0: ISZERO
000030c1: DUP1
000030c2: ISZERO
000030c3: PUSH2 0x30e4
000030c6: JUMPI
000030c7: POP
000030c8: PUSH2 0x30cf
000030cb: PUSH2 0x1f4d
000030ce: JUMP
000030cf: JUMPDEST
000030d0: PUSH1 0x01
000030d2: PUSH1 0x01
000030d4: PUSH1 0xa0
000030d6: SHL
000030d7: SUB
000030d8: AND
000030d9: DUP4
000030da: PUSH1 0x01
000030dc: PUSH1 0x01
000030de: PUSH1 0xa0
000030e0: SHL
000030e1: SUB
000030e2: AND
000030e3: EQ
000030e4: JUMPDEST
000030e5: ISZERO
000030e6: PUSH2 0x30fc
000030e9: JUMPI
000030ea: PUSH1 0x01
000030ec: DUP2
000030ed: ADD
000030ee: DUP1
000030ef: SLOAD
000030f0: PUSH1 0x01
000030f2: PUSH1 0x01
000030f4: PUSH1 0xa0
000030f6: SHL
000030f7: SUB
000030f8: NOT
000030f9: AND
000030fa: SWAP1
000030fb: SSTORE
000030fc: JUMPDEST
000030fd: PUSH2 0x30a7
00003100: DUP5
00003101: DUP5
00003102: PUSH2 0x32de
00003105: JUMP
00003106: JUMPDEST
00003107: PUSH0
00003108: PUSH6 0xffffffffffff
0000310f: DUP3
00003110: GT
00003111: ISZERO
00003112: PUSH2 0x3138
00003115: JUMPI
00003116: PUSH1 0x40
00003118: MLOAD
00003119: PUSH4 0x06dfcc65
0000311e: PUSH1 0xe4
00003120: SHL
00003121: DUP2
00003122: MSTORE
00003123: PUSH1 0x30
00003125: PUSH1 0x04
00003127: DUP3
00003128: ADD
00003129: MSTORE
0000312a: PUSH1 0x24
0000312c: DUP2
0000312d: ADD
0000312e: DUP4
0000312f: SWAP1
00003130: MSTORE
00003131: PUSH1 0x44
00003133: ADD
00003134: PUSH2 0x1121
00003137: JUMP
00003138: JUMPDEST
00003139: POP
0000313a: SWAP1
0000313b: JUMP
0000313c: JUMPDEST
0000313d: PUSH0
0000313e: DUP1
0000313f: MLOAD
00003140: PUSH1 0x20
00003142: PUSH2 0x468e
00003145: DUP4
00003146: CODECOPY
00003147: DUP2
00003148: MLOAD
00003149: SWAP2
0000314a: MSTORE
0000314b: PUSH0
0000314c: PUSH2 0x3153
0000314f: PUSH2 0x25ac
00003152: JUMP
00003153: JUMPDEST
00003154: DUP4
00003155: SLOAD
00003156: PUSH6 0xffffffffffff
0000315d: DUP7
0000315e: AND
0000315f: PUSH1 0x01
00003161: PUSH1 0xa0
00003163: SHL
00003164: MUL
00003165: PUSH1 0x01
00003167: PUSH1 0x01
00003169: PUSH1 0xd0
0000316b: SHL
0000316c: SUB
0000316d: NOT
0000316e: SWAP1
0000316f: SWAP2
00003170: AND
00003171: PUSH1 0x01
00003173: PUSH1 0x01
00003175: PUSH1 0xa0
00003177: SHL
00003178: SUB
00003179: DUP9
0000317a: AND
0000317b: OR
0000317c: OR
0000317d: DUP5
0000317e: SSTORE
0000317f: SWAP2
00003180: POP
00003181: PUSH2 0x3193
00003184: SWAP1
00003185: POP
00003186: DUP2
00003187: PUSH6 0xffffffffffff
0000318e: AND
0000318f: ISZERO
00003190: ISZERO
00003191: SWAP1
00003192: JUMP
00003193: JUMPDEST
00003194: ISZERO
00003195: PUSH2 0x2bc0
00003198: JUMPI
00003199: PUSH1 0x40
0000319b: MLOAD
0000319c: PUSH32 0x8886ebfc4259abdbc16601dd8fb5678e54878f47b3c34836cfc51154a9605109
000031bd: SWAP1
000031be: PUSH0
000031bf: SWAP1
000031c0: LOG1
000031c1: POP
000031c2: POP
000031c3: POP
000031c4: POP
000031c5: JUMP
000031c6: JUMPDEST
000031c7: PUSH0
000031c8: DUP1
000031c9: PUSH2 0x31d0
000031cc: PUSH2 0x24f2
000031cf: JUMP
000031d0: JUMPDEST
000031d1: SWAP1
000031d2: POP
000031d3: DUP1
000031d4: PUSH6 0xffffffffffff
000031db: AND
000031dc: DUP4
000031dd: PUSH6 0xffffffffffff
000031e4: AND
000031e5: GT
000031e6: PUSH2 0x31f8
000031e9: JUMPI
000031ea: PUSH2 0x31f3
000031ed: DUP4
000031ee: DUP3
000031ef: PUSH2 0x464e
000031f2: JUMP
000031f3: JUMPDEST
000031f4: PUSH2 0x320d
000031f7: JUMP
000031f8: JUMPDEST
000031f9: PUSH2 0x320d
000031fc: PUSH6 0xffffffffffff
00003203: DUP5
00003204: AND
00003205: PUSH3 0x069780
00003209: PUSH2 0x3357
0000320c: JUMP
0000320d: JUMPDEST
0000320e: SWAP4
0000320f: SWAP3
00003210: POP
00003211: POP
00003212: POP
00003213: JUMP
00003214: JUMPDEST
00003215: PUSH2 0x321c
00003218: PUSH2 0x336c
0000321b: JUMP
0000321c: JUMPDEST
0000321d: PUSH2 0x1081
00003220: DUP3
00003221: DUP3
00003222: PUSH2 0x33b5
00003225: JUMP
00003226: JUMPDEST
00003227: PUSH2 0x322e
0000322a: PUSH2 0x336c
0000322d: JUMP
0000322e: JUMPDEST
0000322f: PUSH2 0x199b
00003232: PUSH2 0x341b
00003235: JUMP
00003236: JUMPDEST
00003237: PUSH0
00003238: PUSH0
00003239: DUP1
0000323a: MLOAD
0000323b: PUSH1 0x20
0000323d: PUSH2 0x46ae
00003240: DUP4
00003241: CODECOPY
00003242: DUP2
00003243: MLOAD
00003244: SWAP2
00003245: MSTORE
00003246: PUSH2 0x324f
00003249: DUP5
0000324a: DUP5
0000324b: PUSH2 0x20ce
0000324e: JUMP
0000324f: JUMPDEST
00003250: PUSH2 0x32ce
00003253: JUMPI
00003254: PUSH0
00003255: DUP5
00003256: DUP2
00003257: MSTORE
00003258: PUSH1 0x20
0000325a: DUP3
0000325b: DUP2
0000325c: MSTORE
0000325d: PUSH1 0x40
0000325f: DUP1
00003260: DUP4
00003261: KECCAK256
00003262: PUSH1 0x01
00003264: PUSH1 0x01
00003266: PUSH1 0xa0
00003268: SHL
00003269: SUB
0000326a: DUP8
0000326b: AND
0000326c: DUP5
0000326d: MSTORE
0000326e: SWAP1
0000326f: SWAP2
00003270: MSTORE
00003271: SWAP1
00003272: KECCAK256
00003273: DUP1
00003274: SLOAD
00003275: PUSH1 0xff
00003277: NOT
00003278: AND
00003279: PUSH1 0x01
0000327b: OR
0000327c: SWAP1
0000327d: SSTORE
0000327e: PUSH2 0x3284
00003281: CALLER
00003282: SWAP1
00003283: JUMP
00003284: JUMPDEST
00003285: PUSH1 0x01
00003287: PUSH1 0x01
00003289: PUSH1 0xa0
0000328b: SHL
0000328c: SUB
0000328d: AND
0000328e: DUP4
0000328f: PUSH1 0x01
00003291: PUSH1 0x01
00003293: PUSH1 0xa0
00003295: SHL
00003296: SUB
00003297: AND
00003298: DUP6
00003299: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
000032ba: PUSH1 0x40
000032bc: MLOAD
000032bd: PUSH1 0x40
000032bf: MLOAD
000032c0: DUP1
000032c1: SWAP2
000032c2: SUB
000032c3: SWAP1
000032c4: LOG4
000032c5: PUSH1 0x01
000032c7: SWAP2
000032c8: POP
000032c9: POP
000032ca: PUSH2 0x0dbf
000032cd: JUMP
000032ce: JUMPDEST
000032cf: PUSH0
000032d0: SWAP2
000032d1: POP
000032d2: POP
000032d3: PUSH2 0x0dbf
000032d6: JUMP
000032d7: JUMPDEST
000032d8: POP
000032d9: SWAP3
000032da: SWAP2
000032db: POP
000032dc: POP
000032dd: JUMP
000032de: JUMPDEST
000032df: PUSH0
000032e0: PUSH0
000032e1: DUP1
000032e2: MLOAD
000032e3: PUSH1 0x20
000032e5: PUSH2 0x46ae
000032e8: DUP4
000032e9: CODECOPY
000032ea: DUP2
000032eb: MLOAD
000032ec: SWAP2
000032ed: MSTORE
000032ee: PUSH2 0x32f7
000032f1: DUP5
000032f2: DUP5
000032f3: PUSH2 0x20ce
000032f6: JUMP
000032f7: JUMPDEST
000032f8: ISZERO
000032f9: PUSH2 0x32ce
000032fc: JUMPI
000032fd: PUSH0
000032fe: DUP5
000032ff: DUP2
00003300: MSTORE
00003301: PUSH1 0x20
00003303: DUP3
00003304: DUP2
00003305: MSTORE
00003306: PUSH1 0x40
00003308: DUP1
00003309: DUP4
0000330a: KECCAK256
0000330b: PUSH1 0x01
0000330d: PUSH1 0x01
0000330f: PUSH1 0xa0
00003311: SHL
00003312: SUB
00003313: DUP8
00003314: AND
00003315: DUP1
00003316: DUP6
00003317: MSTORE
00003318: SWAP3
00003319: MSTORE
0000331a: DUP1
0000331b: DUP4
0000331c: KECCAK256
0000331d: DUP1
0000331e: SLOAD
0000331f: PUSH1 0xff
00003321: NOT
00003322: AND
00003323: SWAP1
00003324: SSTORE
00003325: MLOAD
00003326: CALLER
00003327: SWAP3
00003328: DUP8
00003329: SWAP2
0000332a: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
0000334b: SWAP2
0000334c: SWAP1
0000334d: LOG4
0000334e: PUSH1 0x01
00003350: SWAP2
00003351: POP
00003352: POP
00003353: PUSH2 0x0dbf
00003356: JUMP
00003357: JUMPDEST
00003358: PUSH0
00003359: DUP2
0000335a: DUP4
0000335b: LT
0000335c: PUSH2 0x3365
0000335f: JUMPI
00003360: DUP2
00003361: PUSH2 0x320d
00003364: JUMP
00003365: JUMPDEST
00003366: POP
00003367: SWAP1
00003368: SWAP2
00003369: SWAP1
0000336a: POP
0000336b: JUMP
0000336c: JUMPDEST
0000336d: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
0000338e: SLOAD
0000338f: PUSH1 0x01
00003391: PUSH1 0x40
00003393: SHL
00003394: SWAP1
00003395: DIV
00003396: PUSH1 0xff
00003398: AND
00003399: PUSH2 0x199b
0000339c: JUMPI
0000339d: PUSH1 0x40
0000339f: MLOAD
000033a0: PUSH4 0x1afcd79f
000033a5: PUSH1 0xe3
000033a7: SHL
000033a8: DUP2
000033a9: MSTORE
000033aa: PUSH1 0x04
000033ac: ADD
000033ad: PUSH1 0x40
000033af: MLOAD
000033b0: DUP1
000033b1: SWAP2
000033b2: SUB
000033b3: SWAP1
000033b4: REVERT
000033b5: JUMPDEST
000033b6: PUSH2 0x33bd
000033b9: PUSH2 0x336c
000033bc: JUMP
000033bd: JUMPDEST
000033be: PUSH0
000033bf: DUP1
000033c0: MLOAD
000033c1: PUSH1 0x20
000033c3: PUSH2 0x468e
000033c6: DUP4
000033c7: CODECOPY
000033c8: DUP2
000033c9: MLOAD
000033ca: SWAP2
000033cb: MSTORE
000033cc: PUSH1 0x01
000033ce: PUSH1 0x01
000033d0: PUSH1 0xa0
000033d2: SHL
000033d3: SUB
000033d4: DUP3
000033d5: AND
000033d6: PUSH2 0x33f4
000033d9: JUMPI
000033da: PUSH1 0x40
000033dc: MLOAD
000033dd: PUSH4 0x61164011
000033e2: PUSH1 0xe1
000033e4: SHL
000033e5: DUP2
000033e6: MSTORE
000033e7: PUSH0
000033e8: PUSH1 0x04
000033ea: DUP3
000033eb: ADD
000033ec: MSTORE
000033ed: PUSH1 0x24
000033ef: ADD
000033f0: PUSH2 0x1121
000033f3: JUMP
000033f4: JUMPDEST
000033f5: DUP1
000033f6: SLOAD
000033f7: PUSH1 0x01
000033f9: PUSH1 0x01
000033fb: PUSH1 0xd0
000033fd: SHL
000033fe: SUB
000033ff: AND
00003400: PUSH1 0x01
00003402: PUSH1 0xd0
00003404: SHL
00003405: PUSH6 0xffffffffffff
0000340c: DUP6
0000340d: AND
0000340e: MUL
0000340f: OR
00003410: DUP2
00003411: SSTORE
00003412: PUSH2 0x2bc0
00003415: PUSH0
00003416: DUP4
00003417: PUSH2 0x303b
0000341a: JUMP
0000341b: JUMPDEST
0000341c: PUSH2 0x2b91
0000341f: PUSH2 0x336c
00003422: JUMP
00003423: JUMPDEST
00003424: PUSH0
00003425: PUSH1 0x20
00003427: DUP3
00003428: DUP5
00003429: SUB
0000342a: SLT
0000342b: ISZERO
0000342c: PUSH2 0x3433
0000342f: JUMPI
00003430: PUSH0
00003431: DUP1
00003432: REVERT
00003433: JUMPDEST
00003434: DUP2
00003435: CALLDATALOAD
00003436: PUSH1 0x01
00003438: PUSH1 0x01
0000343a: PUSH1 0xe0
0000343c: SHL
0000343d: SUB
0000343e: NOT
0000343f: DUP2
00003440: AND
00003441: DUP2
00003442: EQ
00003443: PUSH2 0x320d
00003446: JUMPI
00003447: PUSH0
00003448: DUP1
00003449: REVERT
0000344a: JUMPDEST
0000344b: DUP1
0000344c: CALLDATALOAD
0000344d: PUSH1 0x03
0000344f: DUP2
00003450: LT
00003451: PUSH2 0x3458
00003454: JUMPI
00003455: PUSH0
00003456: DUP1
00003457: REVERT
00003458: JUMPDEST
00003459: SWAP2
0000345a: SWAP1
0000345b: POP
0000345c: JUMP
0000345d: JUMPDEST
0000345e: PUSH0
0000345f: DUP1
00003460: PUSH1 0x40
00003462: DUP4
00003463: DUP6
00003464: SUB
00003465: SLT
00003466: ISZERO
00003467: PUSH2 0x346e
0000346a: JUMPI
0000346b: PUSH0
0000346c: DUP1
0000346d: REVERT
0000346e: JUMPDEST
0000346f: PUSH2 0x3477
00003472: DUP4
00003473: PUSH2 0x344a
00003476: JUMP
00003477: JUMPDEST
00003478: SWAP2
00003479: POP
0000347a: PUSH1 0x20
0000347c: DUP4
0000347d: ADD
0000347e: CALLDATALOAD
0000347f: PUSH4 0xffffffff
00003484: DUP2
00003485: AND
00003486: DUP2
00003487: EQ
00003488: PUSH2 0x348f
0000348b: JUMPI
0000348c: PUSH0
0000348d: DUP1
0000348e: REVERT
0000348f: JUMPDEST
00003490: DUP1
00003491: SWAP2
00003492: POP
00003493: POP
00003494: SWAP3
00003495: POP
00003496: SWAP3
00003497: SWAP1
00003498: POP
00003499: JUMP
0000349a: JUMPDEST
0000349b: PUSH0
0000349c: DUP1
0000349d: DUP4
0000349e: PUSH1 0x1f
000034a0: DUP5
000034a1: ADD
000034a2: SLT
000034a3: PUSH2 0x34aa
000034a6: JUMPI
000034a7: PUSH0
000034a8: DUP1
000034a9: REVERT
000034aa: JUMPDEST
000034ab: POP
000034ac: DUP2
000034ad: CALLDATALOAD
000034ae: PUSH1 0x01
000034b0: PUSH1 0x01
000034b2: PUSH1 0x40
000034b4: SHL
000034b5: SUB
000034b6: DUP2
000034b7: GT
000034b8: ISZERO
000034b9: PUSH2 0x34c0
000034bc: JUMPI
000034bd: PUSH0
000034be: DUP1
000034bf: REVERT
000034c0: JUMPDEST
000034c1: PUSH1 0x20
000034c3: DUP4
000034c4: ADD
000034c5: SWAP2
000034c6: POP
000034c7: DUP4
000034c8: PUSH1 0x20
000034ca: DUP3
000034cb: DUP6
000034cc: ADD
000034cd: ADD
000034ce: GT
000034cf: ISZERO
000034d0: PUSH2 0x1498
000034d3: JUMPI
000034d4: PUSH0
000034d5: DUP1
000034d6: REVERT
000034d7: JUMPDEST
000034d8: DUP1
000034d9: CALLDATALOAD
000034da: DUP1
000034db: ISZERO
000034dc: ISZERO
000034dd: DUP2
000034de: EQ
000034df: PUSH2 0x3458
000034e2: JUMPI
000034e3: PUSH0
000034e4: DUP1
000034e5: REVERT
000034e6: JUMPDEST
000034e7: PUSH0
000034e8: DUP1
000034e9: DUP4
000034ea: PUSH1 0x1f
000034ec: DUP5
000034ed: ADD
000034ee: SLT
000034ef: PUSH2 0x34f6
000034f2: JUMPI
000034f3: PUSH0
000034f4: DUP1
000034f5: REVERT
000034f6: JUMPDEST
000034f7: POP
000034f8: DUP2
000034f9: CALLDATALOAD
000034fa: PUSH1 0x01
000034fc: PUSH1 0x01
000034fe: PUSH1 0x40
00003500: SHL
00003501: SUB
00003502: DUP2
00003503: GT
00003504: ISZERO
00003505: PUSH2 0x350c
00003508: JUMPI
00003509: PUSH0
0000350a: DUP1
0000350b: REVERT
0000350c: JUMPDEST
0000350d: PUSH1 0x20
0000350f: DUP4
00003510: ADD
00003511: SWAP2
00003512: POP
00003513: DUP4
00003514: PUSH1 0x20
00003516: DUP3
00003517: PUSH1 0x06
00003519: SHL
0000351a: DUP6
0000351b: ADD
0000351c: ADD
0000351d: GT
0000351e: ISZERO
0000351f: PUSH2 0x1498
00003522: JUMPI
00003523: PUSH0
00003524: DUP1
00003525: REVERT
00003526: JUMPDEST
00003527: PUSH0
00003528: DUP1
00003529: PUSH0
0000352a: DUP1
0000352b: PUSH0
0000352c: DUP1
0000352d: PUSH0
0000352e: DUP1
0000352f: PUSH0
00003530: PUSH1 0xc0
00003532: DUP11
00003533: DUP13
00003534: SUB
00003535: SLT
00003536: ISZERO
00003537: PUSH2 0x353e
0000353a: JUMPI
0000353b: PUSH0
0000353c: DUP1
0000353d: REVERT
0000353e: JUMPDEST
0000353f: DUP10
00003540: CALLDATALOAD
00003541: PUSH1 0x01
00003543: PUSH1 0x01
00003545: PUSH1 0x40
00003547: SHL
00003548: SUB
00003549: DUP1
0000354a: DUP3
0000354b: GT
0000354c: ISZERO
0000354d: PUSH2 0x3554
00003550: JUMPI
00003551: PUSH0
00003552: DUP1
00003553: REVERT
00003554: JUMPDEST
00003555: PUSH2 0x3560
00003558: DUP14
00003559: DUP4
0000355a: DUP15
0000355b: ADD
0000355c: PUSH2 0x349a
0000355f: JUMP
00003560: JUMPDEST
00003561: SWAP1
00003562: SWAP12
00003563: POP
00003564: SWAP10
00003565: POP
00003566: PUSH1 0x20
00003568: DUP13
00003569: ADD
0000356a: CALLDATALOAD
0000356b: SWAP2
0000356c: POP
0000356d: DUP1
0000356e: DUP3
0000356f: GT
00003570: ISZERO
00003571: PUSH2 0x3578
00003574: JUMPI
00003575: PUSH0
00003576: DUP1
00003577: REVERT
00003578: JUMPDEST
00003579: PUSH2 0x3584
0000357c: DUP14
0000357d: DUP4
0000357e: DUP15
0000357f: ADD
00003580: PUSH2 0x349a
00003583: JUMP
00003584: JUMPDEST
00003585: SWAP1
00003586: SWAP10
00003587: POP
00003588: SWAP8
00003589: POP
0000358a: PUSH1 0x40
0000358c: DUP13
0000358d: ADD
0000358e: CALLDATALOAD
0000358f: SWAP7
00003590: POP
00003591: PUSH1 0x60
00003593: DUP13
00003594: ADD
00003595: CALLDATALOAD
00003596: SWAP6
00003597: POP
00003598: DUP8
00003599: SWAP2
0000359a: POP
0000359b: PUSH2 0x35a6
0000359e: PUSH1 0x80
000035a0: DUP14
000035a1: ADD
000035a2: PUSH2 0x34d7
000035a5: JUMP
000035a6: JUMPDEST
000035a7: SWAP5
000035a8: POP
000035a9: PUSH1 0xa0
000035ab: DUP13
000035ac: ADD
000035ad: CALLDATALOAD
000035ae: SWAP2
000035af: POP
000035b0: DUP1
000035b1: DUP3
000035b2: GT
000035b3: ISZERO
000035b4: PUSH2 0x35bb
000035b7: JUMPI
000035b8: PUSH0
000035b9: DUP1
000035ba: REVERT
000035bb: JUMPDEST
000035bc: POP
000035bd: PUSH2 0x35c8
000035c0: DUP13
000035c1: DUP3
000035c2: DUP14
000035c3: ADD
000035c4: PUSH2 0x34e6
000035c7: JUMP
000035c8: JUMPDEST
000035c9: SWAP2
000035ca: POP
000035cb: DUP1
000035cc: SWAP4
000035cd: POP
000035ce: POP
000035cf: DUP1
000035d0: SWAP2
000035d1: POP
000035d2: POP
000035d3: SWAP3
000035d4: SWAP6
000035d5: SWAP9
000035d6: POP
000035d7: SWAP3
000035d8: SWAP6
000035d9: SWAP9
000035da: POP
000035db: SWAP3
000035dc: SWAP6
000035dd: SWAP9
000035de: JUMP
000035df: JUMPDEST
000035e0: PUSH4 0x4e487b71
000035e5: PUSH1 0xe0
000035e7: SHL
000035e8: PUSH0
000035e9: MSTORE
000035ea: PUSH1 0x41
000035ec: PUSH1 0x04
000035ee: MSTORE
000035ef: PUSH1 0x24
000035f1: PUSH0
000035f2: REVERT
000035f3: JUMPDEST
000035f4: PUSH1 0x40
000035f6: MLOAD
000035f7: PUSH1 0x80
000035f9: DUP2
000035fa: ADD
000035fb: PUSH1 0x01
000035fd: PUSH1 0x01
000035ff: PUSH1 0x40
00003601: SHL
00003602: SUB
00003603: DUP2
00003604: GT
00003605: DUP3
00003606: DUP3
00003607: LT
00003608: OR
00003609: ISZERO
0000360a: PUSH2 0x3615
0000360d: JUMPI
0000360e: PUSH2 0x3615
00003611: PUSH2 0x35df
00003614: JUMP
00003615: JUMPDEST
00003616: PUSH1 0x40
00003618: MSTORE
00003619: SWAP1
0000361a: JUMP
0000361b: JUMPDEST
0000361c: PUSH1 0x40
0000361e: MLOAD
0000361f: PUSH1 0x1f
00003621: DUP3
00003622: ADD
00003623: PUSH1 0x1f
00003625: NOT
00003626: AND
00003627: DUP2
00003628: ADD
00003629: PUSH1 0x01
0000362b: PUSH1 0x01
0000362d: PUSH1 0x40
0000362f: SHL
00003630: SUB
00003631: DUP2
00003632: GT
00003633: DUP3
00003634: DUP3
00003635: LT
00003636: OR
00003637: ISZERO
00003638: PUSH2 0x3643
0000363b: JUMPI
0000363c: PUSH2 0x3643
0000363f: PUSH2 0x35df
00003642: JUMP
00003643: JUMPDEST
00003644: PUSH1 0x40
00003646: MSTORE
00003647: SWAP2
00003648: SWAP1
00003649: POP
0000364a: JUMP
0000364b: JUMPDEST
0000364c: PUSH0
0000364d: PUSH1 0x01
0000364f: PUSH1 0x01
00003651: PUSH1 0x40
00003653: SHL
00003654: SUB
00003655: DUP3
00003656: GT
00003657: ISZERO
00003658: PUSH2 0x3663
0000365b: JUMPI
0000365c: PUSH2 0x3663
0000365f: PUSH2 0x35df
00003662: JUMP
00003663: JUMPDEST
00003664: POP
00003665: PUSH1 0x1f
00003667: ADD
00003668: PUSH1 0x1f
0000366a: NOT
0000366b: AND
0000366c: PUSH1 0x20
0000366e: ADD
0000366f: SWAP1
00003670: JUMP
00003671: JUMPDEST
00003672: PUSH0
00003673: DUP3
00003674: PUSH1 0x1f
00003676: DUP4
00003677: ADD
00003678: SLT
00003679: PUSH2 0x3680
0000367c: JUMPI
0000367d: PUSH0
0000367e: DUP1
0000367f: REVERT
00003680: JUMPDEST
00003681: DUP2
00003682: CALLDATALOAD
00003683: PUSH2 0x3693
00003686: PUSH2 0x368e
00003689: DUP3
0000368a: PUSH2 0x364b
0000368d: JUMP
0000368e: JUMPDEST
0000368f: PUSH2 0x361b
00003692: JUMP
00003693: JUMPDEST
00003694: DUP2
00003695: DUP2
00003696: MSTORE
00003697: DUP5
00003698: PUSH1 0x20
0000369a: DUP4
0000369b: DUP7
0000369c: ADD
0000369d: ADD
0000369e: GT
0000369f: ISZERO
000036a0: PUSH2 0x36a7
000036a3: JUMPI
000036a4: PUSH0
000036a5: DUP1
000036a6: REVERT
000036a7: JUMPDEST
000036a8: DUP2
000036a9: PUSH1 0x20
000036ab: DUP6
000036ac: ADD
000036ad: PUSH1 0x20
000036af: DUP4
000036b0: ADD
000036b1: CALLDATACOPY
000036b2: PUSH0
000036b3: SWAP2
000036b4: DUP2
000036b5: ADD
000036b6: PUSH1 0x20
000036b8: ADD
000036b9: SWAP2
000036ba: SWAP1
000036bb: SWAP2
000036bc: MSTORE
000036bd: SWAP4
000036be: SWAP3
000036bf: POP
000036c0: POP
000036c1: POP
000036c2: JUMP
000036c3: JUMPDEST
000036c4: PUSH1 0x01
000036c6: PUSH1 0x01
000036c8: PUSH1 0xa0
000036ca: SHL
000036cb: SUB
000036cc: DUP2
000036cd: AND
000036ce: DUP2
000036cf: EQ
000036d0: PUSH2 0x0e5e
000036d3: JUMPI
000036d4: PUSH0
000036d5: DUP1
000036d6: REVERT
000036d7: JUMPDEST
000036d8: PUSH0
000036d9: PUSH1 0x20
000036db: DUP1
000036dc: DUP4
000036dd: DUP6
000036de: SUB
000036df: SLT
000036e0: ISZERO
000036e1: PUSH2 0x36e8
000036e4: JUMPI
000036e5: PUSH0
000036e6: DUP1
000036e7: REVERT
000036e8: JUMPDEST
000036e9: DUP3
000036ea: CALLDATALOAD
000036eb: PUSH1 0x01
000036ed: PUSH1 0x01
000036ef: PUSH1 0x40
000036f1: SHL
000036f2: SUB
000036f3: DUP1
000036f4: DUP3
000036f5: GT
000036f6: ISZERO
000036f7: PUSH2 0x36fe
000036fa: JUMPI
000036fb: PUSH0
000036fc: DUP1
000036fd: REVERT
000036fe: JUMPDEST
000036ff: DUP2
00003700: DUP6
00003701: ADD
00003702: SWAP2
00003703: POP
00003704: DUP6
00003705: PUSH1 0x1f
00003707: DUP4
00003708: ADD
00003709: SLT
0000370a: PUSH2 0x3711
0000370d: JUMPI
0000370e: PUSH0
0000370f: DUP1
00003710: REVERT
00003711: JUMPDEST
00003712: DUP2
00003713: CALLDATALOAD
00003714: DUP2
00003715: DUP2
00003716: GT
00003717: ISZERO
00003718: PUSH2 0x3723
0000371b: JUMPI
0000371c: PUSH2 0x3723
0000371f: PUSH2 0x35df
00003722: JUMP
00003723: JUMPDEST
00003724: DUP1
00003725: PUSH1 0x05
00003727: SHL
00003728: PUSH2 0x3732
0000372b: DUP6
0000372c: DUP3
0000372d: ADD
0000372e: PUSH2 0x361b
00003731: JUMP
00003732: JUMPDEST
00003733: SWAP2
00003734: DUP3
00003735: MSTORE
00003736: DUP4
00003737: DUP2
00003738: ADD
00003739: DUP6
0000373a: ADD
0000373b: SWAP2
0000373c: DUP6
0000373d: DUP2
0000373e: ADD
0000373f: SWAP1
00003740: DUP10
00003741: DUP5
00003742: GT
00003743: ISZERO
00003744: PUSH2 0x374b
00003747: JUMPI
00003748: PUSH0
00003749: DUP1
0000374a: REVERT
0000374b: JUMPDEST
0000374c: DUP7
0000374d: DUP7
0000374e: ADD
0000374f: SWAP3
00003750: POP
00003751: JUMPDEST
00003752: DUP4
00003753: DUP4
00003754: LT
00003755: ISZERO
00003756: PUSH2 0x37fa
00003759: JUMPI
0000375a: DUP3
0000375b: CALLDATALOAD
0000375c: DUP6
0000375d: DUP2
0000375e: GT
0000375f: ISZERO
00003760: PUSH2 0x3767
00003763: JUMPI
00003764: PUSH0
00003765: DUP1
00003766: REVERT
00003767: JUMPDEST
00003768: DUP7
00003769: ADD
0000376a: PUSH1 0x80
0000376c: DUP2
0000376d: DUP13
0000376e: SUB
0000376f: PUSH1 0x1f
00003771: NOT
00003772: ADD
00003773: DUP2
00003774: SGT
00003775: ISZERO
00003776: PUSH2 0x377d
00003779: JUMPI
0000377a: PUSH0
0000377b: DUP1
0000377c: REVERT
0000377d: JUMPDEST
0000377e: PUSH2 0x3785
00003781: PUSH2 0x35f3
00003784: JUMP
00003785: JUMPDEST
00003786: DUP10
00003787: DUP4
00003788: ADD
00003789: CALLDATALOAD
0000378a: DUP9
0000378b: DUP2
0000378c: GT
0000378d: ISZERO
0000378e: PUSH2 0x3795
00003791: JUMPI
00003792: PUSH0
00003793: DUP1
00003794: REVERT
00003795: JUMPDEST
00003796: PUSH2 0x37a3
00003799: DUP15
0000379a: DUP13
0000379b: DUP4
0000379c: DUP8
0000379d: ADD
0000379e: ADD
0000379f: PUSH2 0x3671
000037a2: JUMP
000037a3: JUMPDEST
000037a4: DUP3
000037a5: MSTORE
000037a6: POP
000037a7: PUSH1 0x40
000037a9: DUP1
000037aa: DUP5
000037ab: ADD
000037ac: CALLDATALOAD
000037ad: DUP10
000037ae: DUP2
000037af: GT
000037b0: ISZERO
000037b1: PUSH2 0x37b8
000037b4: JUMPI
000037b5: PUSH0
000037b6: DUP1
000037b7: REVERT
000037b8: JUMPDEST
000037b9: PUSH2 0x37c6
000037bc: DUP16
000037bd: DUP14
000037be: DUP4
000037bf: DUP9
000037c0: ADD
000037c1: ADD
000037c2: PUSH2 0x3671
000037c5: JUMP
000037c6: JUMPDEST
000037c7: DUP4
000037c8: DUP14
000037c9: ADD
000037ca: MSTORE
000037cb: POP
000037cc: PUSH1 0x60
000037ce: DUP5
000037cf: DUP2
000037d0: ADD
000037d1: CALLDATALOAD
000037d2: DUP3
000037d3: DUP5
000037d4: ADD
000037d5: MSTORE
000037d6: SWAP4
000037d7: DUP4
000037d8: ADD
000037d9: CALLDATALOAD
000037da: SWAP4
000037db: PUSH2 0x37e3
000037de: DUP6
000037df: PUSH2 0x36c3
000037e2: JUMP
000037e3: JUMPDEST
000037e4: DUP3
000037e5: ADD
000037e6: SWAP4
000037e7: SWAP1
000037e8: SWAP4
000037e9: MSTORE
000037ea: DUP5
000037eb: MSTORE
000037ec: POP
000037ed: POP
000037ee: SWAP2
000037ef: DUP7
000037f0: ADD
000037f1: SWAP2
000037f2: SWAP1
000037f3: DUP7
000037f4: ADD
000037f5: SWAP1
000037f6: PUSH2 0x3751
000037f9: JUMP
000037fa: JUMPDEST
000037fb: SWAP10
000037fc: SWAP9
000037fd: POP
000037fe: POP
000037ff: POP
00003800: POP
00003801: POP
00003802: POP
00003803: POP
00003804: POP
00003805: POP
00003806: JUMP
00003807: JUMPDEST
00003808: PUSH0
00003809: PUSH1 0x20
0000380b: DUP3
0000380c: DUP5
0000380d: SUB
0000380e: SLT
0000380f: ISZERO
00003810: PUSH2 0x3817
00003813: JUMPI
00003814: PUSH0
00003815: DUP1
00003816: REVERT
00003817: JUMPDEST
00003818: POP
00003819: CALLDATALOAD
0000381a: SWAP2
0000381b: SWAP1
0000381c: POP
0000381d: JUMP
0000381e: JUMPDEST
0000381f: PUSH0
00003820: DUP1
00003821: PUSH1 0x40
00003823: DUP4
00003824: DUP6
00003825: SUB
00003826: SLT
00003827: ISZERO
00003828: PUSH2 0x382f
0000382b: JUMPI
0000382c: PUSH0
0000382d: DUP1
0000382e: REVERT
0000382f: JUMPDEST
00003830: DUP3
00003831: CALLDATALOAD
00003832: SWAP2
00003833: POP
00003834: PUSH1 0x20
00003836: DUP4
00003837: ADD
00003838: CALLDATALOAD
00003839: PUSH2 0x348f
0000383c: DUP2
0000383d: PUSH2 0x36c3
00003840: JUMP
00003841: JUMPDEST
00003842: PUSH0
00003843: PUSH1 0x20
00003845: DUP3
00003846: DUP5
00003847: SUB
00003848: SLT
00003849: ISZERO
0000384a: PUSH2 0x3851
0000384d: JUMPI
0000384e: PUSH0
0000384f: DUP1
00003850: REVERT
00003851: JUMPDEST
00003852: PUSH2 0x320d
00003855: DUP3
00003856: PUSH2 0x344a
00003859: JUMP
0000385a: JUMPDEST
0000385b: PUSH0
0000385c: DUP1
0000385d: PUSH0
0000385e: PUSH1 0x60
00003860: DUP5
00003861: DUP7
00003862: SUB
00003863: SLT
00003864: ISZERO
00003865: PUSH2 0x386c
00003868: JUMPI
00003869: PUSH0
0000386a: DUP1
0000386b: REVERT
0000386c: JUMPDEST
0000386d: DUP4
0000386e: CALLDATALOAD
0000386f: SWAP3
00003870: POP
00003871: PUSH1 0x20
00003873: DUP5
00003874: ADD
00003875: CALLDATALOAD
00003876: PUSH2 0x387e
00003879: DUP2
0000387a: PUSH2 0x36c3
0000387d: JUMP
0000387e: JUMPDEST
0000387f: SWAP2
00003880: POP
00003881: PUSH2 0x388c
00003884: PUSH1 0x40
00003886: DUP6
00003887: ADD
00003888: PUSH2 0x34d7
0000388b: JUMP
0000388c: JUMPDEST
0000388d: SWAP1
0000388e: POP
0000388f: SWAP3
00003890: POP
00003891: SWAP3
00003892: POP
00003893: SWAP3
00003894: JUMP
00003895: JUMPDEST
00003896: PUSH0
00003897: DUP1
00003898: DUP4
00003899: PUSH1 0x1f
0000389b: DUP5
0000389c: ADD
0000389d: SLT
0000389e: PUSH2 0x38a5
000038a1: JUMPI
000038a2: PUSH0
000038a3: DUP1
000038a4: REVERT
000038a5: JUMPDEST
000038a6: POP
000038a7: DUP2
000038a8: CALLDATALOAD
000038a9: PUSH1 0x01
000038ab: PUSH1 0x01
000038ad: PUSH1 0x40
000038af: SHL
000038b0: SUB
000038b1: DUP2
000038b2: GT
000038b3: ISZERO
000038b4: PUSH2 0x38bb
000038b7: JUMPI
000038b8: PUSH0
000038b9: DUP1
000038ba: REVERT
000038bb: JUMPDEST
000038bc: PUSH1 0x20
000038be: DUP4
000038bf: ADD
000038c0: SWAP2
000038c1: POP
000038c2: DUP4
000038c3: PUSH1 0x20
000038c5: DUP3
000038c6: PUSH1 0x05
000038c8: SHL
000038c9: DUP6
000038ca: ADD
000038cb: ADD
000038cc: GT
000038cd: ISZERO
000038ce: PUSH2 0x1498
000038d1: JUMPI
000038d2: PUSH0
000038d3: DUP1
000038d4: REVERT
000038d5: JUMPDEST
000038d6: PUSH0
000038d7: DUP1
000038d8: PUSH0
000038d9: DUP1
000038da: PUSH0
000038db: PUSH1 0x60
000038dd: DUP7
000038de: DUP9
000038df: SUB
000038e0: SLT
000038e1: ISZERO
000038e2: PUSH2 0x38e9
000038e5: JUMPI
000038e6: PUSH0
000038e7: DUP1
000038e8: REVERT
000038e9: JUMPDEST
000038ea: DUP6
000038eb: CALLDATALOAD
000038ec: PUSH1 0x01
000038ee: PUSH1 0x01
000038f0: PUSH1 0x40
000038f2: SHL
000038f3: SUB
000038f4: DUP1
000038f5: DUP3
000038f6: GT
000038f7: ISZERO
000038f8: PUSH2 0x38ff
000038fb: JUMPI
000038fc: PUSH0
000038fd: DUP1
000038fe: REVERT
000038ff: JUMPDEST
00003900: PUSH2 0x390b
00003903: DUP10
00003904: DUP4
00003905: DUP11
00003906: ADD
00003907: PUSH2 0x3895
0000390a: JUMP
0000390b: JUMPDEST
0000390c: SWAP1
0000390d: SWAP8
0000390e: POP
0000390f: SWAP6
00003910: POP
00003911: PUSH1 0x20
00003913: DUP9
00003914: ADD
00003915: CALLDATALOAD
00003916: SWAP2
00003917: POP
00003918: DUP1
00003919: DUP3
0000391a: GT
0000391b: ISZERO
0000391c: PUSH2 0x3923
0000391f: JUMPI
00003920: PUSH0
00003921: DUP1
00003922: REVERT
00003923: JUMPDEST
00003924: POP
00003925: PUSH2 0x3930
00003928: DUP9
00003929: DUP3
0000392a: DUP10
0000392b: ADD
0000392c: PUSH2 0x3895
0000392f: JUMP
00003930: JUMPDEST
00003931: SWAP1
00003932: SWAP5
00003933: POP
00003934: SWAP3
00003935: POP
00003936: POP
00003937: PUSH1 0x40
00003939: DUP7
0000393a: ADD
0000393b: CALLDATALOAD
0000393c: PUSH2 0x3944
0000393f: DUP2
00003940: PUSH2 0x36c3
00003943: JUMP
00003944: JUMPDEST
00003945: DUP1
00003946: SWAP2
00003947: POP
00003948: POP
00003949: SWAP3
0000394a: SWAP6
0000394b: POP
0000394c: SWAP3
0000394d: SWAP6
0000394e: SWAP1
0000394f: SWAP4
00003950: POP
00003951: JUMP
00003952: JUMPDEST
00003953: PUSH0
00003954: DUP1
00003955: PUSH1 0x20
00003957: DUP4
00003958: DUP6
00003959: SUB
0000395a: SLT
0000395b: ISZERO
0000395c: PUSH2 0x3963
0000395f: JUMPI
00003960: PUSH0
00003961: DUP1
00003962: REVERT
00003963: JUMPDEST
00003964: DUP3
00003965: CALLDATALOAD
00003966: PUSH1 0x01
00003968: PUSH1 0x01
0000396a: PUSH1 0x40
0000396c: SHL
0000396d: SUB
0000396e: DUP2
0000396f: GT
00003970: ISZERO
00003971: PUSH2 0x3978
00003974: JUMPI
00003975: PUSH0
00003976: DUP1
00003977: REVERT
00003978: JUMPDEST
00003979: PUSH2 0x3984
0000397c: DUP6
0000397d: DUP3
0000397e: DUP7
0000397f: ADD
00003980: PUSH2 0x349a
00003983: JUMP
00003984: JUMPDEST
00003985: SWAP1
00003986: SWAP7
00003987: SWAP1
00003988: SWAP6
00003989: POP
0000398a: SWAP4
0000398b: POP
0000398c: POP
0000398d: POP
0000398e: POP
0000398f: JUMP
00003990: JUMPDEST
00003991: PUSH0
00003992: JUMPDEST
00003993: DUP4
00003994: DUP2
00003995: LT
00003996: ISZERO
00003997: PUSH2 0x39aa
0000399a: JUMPI
0000399b: DUP2
0000399c: DUP2
0000399d: ADD
0000399e: MLOAD
0000399f: DUP4
000039a0: DUP3
000039a1: ADD
000039a2: MSTORE
000039a3: PUSH1 0x20
000039a5: ADD
000039a6: PUSH2 0x3992
000039a9: JUMP
000039aa: JUMPDEST
000039ab: POP
000039ac: POP
000039ad: PUSH0
000039ae: SWAP2
000039af: ADD
000039b0: MSTORE
000039b1: JUMP
000039b2: JUMPDEST
000039b3: PUSH0
000039b4: DUP2
000039b5: MLOAD
000039b6: DUP1
000039b7: DUP5
000039b8: MSTORE
000039b9: PUSH2 0x39c9
000039bc: DUP2
000039bd: PUSH1 0x20
000039bf: DUP7
000039c0: ADD
000039c1: PUSH1 0x20
000039c3: DUP7
000039c4: ADD
000039c5: PUSH2 0x3990
000039c8: JUMP
000039c9: JUMPDEST
000039ca: PUSH1 0x1f
000039cc: ADD
000039cd: PUSH1 0x1f
000039cf: NOT
000039d0: AND
000039d1: SWAP3
000039d2: SWAP1
000039d3: SWAP3
000039d4: ADD
000039d5: PUSH1 0x20
000039d7: ADD
000039d8: SWAP3
000039d9: SWAP2
000039da: POP
000039db: POP
000039dc: JUMP
000039dd: JUMPDEST
000039de: PUSH1 0xa0
000039e0: DUP2
000039e1: MSTORE
000039e2: PUSH0
000039e3: PUSH2 0x39ef
000039e6: PUSH1 0xa0
000039e8: DUP4
000039e9: ADD
000039ea: DUP9
000039eb: PUSH2 0x39b2
000039ee: JUMP
000039ef: JUMPDEST
000039f0: DUP3
000039f1: DUP2
000039f2: SUB
000039f3: PUSH1 0x20
000039f5: DUP5
000039f6: ADD
000039f7: MSTORE
000039f8: PUSH2 0x3a01
000039fb: DUP2
000039fc: DUP9
000039fd: PUSH2 0x39b2
00003a00: JUMP
00003a01: JUMPDEST
00003a02: SWAP1
00003a03: POP
00003a04: DUP3
00003a05: DUP2
00003a06: SUB
00003a07: PUSH1 0x40
00003a09: DUP5
00003a0a: ADD
00003a0b: MSTORE
00003a0c: PUSH2 0x3a15
00003a0f: DUP2
00003a10: DUP8
00003a11: PUSH2 0x39b2
00003a14: JUMP
00003a15: JUMPDEST
00003a16: PUSH1 0x60
00003a18: DUP5
00003a19: ADD
00003a1a: SWAP6
00003a1b: SWAP1
00003a1c: SWAP6
00003a1d: MSTORE
00003a1e: POP
00003a1f: POP
00003a20: PUSH1 0x01
00003a22: PUSH1 0x01
00003a24: PUSH1 0xa0
00003a26: SHL
00003a27: SUB
00003a28: SWAP2
00003a29: SWAP1
00003a2a: SWAP2
00003a2b: AND
00003a2c: PUSH1 0x80
00003a2e: SWAP1
00003a2f: SWAP2
00003a30: ADD
00003a31: MSTORE
00003a32: SWAP4
00003a33: SWAP3
00003a34: POP
00003a35: POP
00003a36: POP
00003a37: JUMP
00003a38: JUMPDEST
00003a39: PUSH1 0x20
00003a3b: DUP2
00003a3c: MSTORE
00003a3d: DUP2
00003a3e: MLOAD
00003a3f: PUSH1 0x20
00003a41: DUP3
00003a42: ADD
00003a43: MSTORE
00003a44: PUSH1 0x20
00003a46: DUP3
00003a47: ADD
00003a48: MLOAD
00003a49: PUSH1 0x40
00003a4b: DUP3
00003a4c: ADD
00003a4d: MSTORE
00003a4e: PUSH1 0x40
00003a50: DUP3
00003a51: ADD
00003a52: MLOAD
00003a53: PUSH1 0x60
00003a55: DUP3
00003a56: ADD
00003a57: MSTORE
00003a58: PUSH1 0x60
00003a5a: DUP3
00003a5b: ADD
00003a5c: MLOAD
00003a5d: PUSH1 0x80
00003a5f: DUP3
00003a60: ADD
00003a61: MSTORE
00003a62: PUSH1 0x80
00003a64: DUP3
00003a65: ADD
00003a66: MLOAD
00003a67: PUSH1 0xa0
00003a69: DUP3
00003a6a: ADD
00003a6b: MSTORE
00003a6c: PUSH1 0xa0
00003a6e: DUP3
00003a6f: ADD
00003a70: MLOAD
00003a71: PUSH1 0xc0
00003a73: DUP3
00003a74: ADD
00003a75: MSTORE
00003a76: PUSH1 0xc0
00003a78: DUP3
00003a79: ADD
00003a7a: MLOAD
00003a7b: PUSH1 0xe0
00003a7d: DUP3
00003a7e: ADD
00003a7f: MSTORE
00003a80: PUSH0
00003a81: PUSH1 0xe0
00003a83: DUP4
00003a84: ADD
00003a85: MLOAD
00003a86: PUSH2 0x0100
00003a89: DUP2
00003a8a: DUP2
00003a8b: DUP6
00003a8c: ADD
00003a8d: MSTORE
00003a8e: DUP1
00003a8f: DUP6
00003a90: ADD
00003a91: MLOAD
00003a92: SWAP2
00003a93: POP
00003a94: POP
00003a95: PUSH2 0x0120
00003a98: DUP2
00003a99: DUP2
00003a9a: DUP6
00003a9b: ADD
00003a9c: MSTORE
00003a9d: DUP1
00003a9e: DUP6
00003a9f: ADD
00003aa0: MLOAD
00003aa1: SWAP2
00003aa2: POP
00003aa3: POP
00003aa4: PUSH2 0x0140
00003aa7: DUP2
00003aa8: DUP2
00003aa9: DUP6
00003aaa: ADD
00003aab: MSTORE
00003aac: DUP1
00003aad: DUP6
00003aae: ADD
00003aaf: MLOAD
00003ab0: SWAP2
00003ab1: POP
00003ab2: POP
00003ab3: PUSH2 0x0160
00003ab6: DUP2
00003ab7: DUP2
00003ab8: DUP6
00003ab9: ADD
00003aba: MSTORE
00003abb: DUP1
00003abc: DUP6
00003abd: ADD
00003abe: MLOAD
00003abf: SWAP2
00003ac0: POP
00003ac1: POP
00003ac2: PUSH2 0x0180
00003ac5: DUP1
00003ac6: DUP2
00003ac7: DUP6
00003ac8: ADD
00003ac9: MSTORE
00003aca: POP
00003acb: PUSH2 0x30a7
00003ace: PUSH2 0x01a0
00003ad1: DUP5
00003ad2: ADD
00003ad3: DUP3
00003ad4: PUSH2 0x39b2
00003ad7: JUMP
00003ad8: JUMPDEST
00003ad9: PUSH0
00003ada: PUSH2 0x0180
00003add: DUP15
00003ade: DUP4
00003adf: MSTORE
00003ae0: DUP14
00003ae1: PUSH1 0x20
00003ae3: DUP5
00003ae4: ADD
00003ae5: MSTORE
00003ae6: DUP13
00003ae7: PUSH1 0x40
00003ae9: DUP5
00003aea: ADD
00003aeb: MSTORE
00003aec: DUP12
00003aed: PUSH1 0x60
00003aef: DUP5
00003af0: ADD
00003af1: MSTORE
00003af2: DUP11
00003af3: PUSH1 0x80
00003af5: DUP5
00003af6: ADD
00003af7: MSTORE
00003af8: DUP10
00003af9: PUSH1 0xa0
00003afb: DUP5
00003afc: ADD
00003afd: MSTORE
00003afe: DUP9
00003aff: PUSH1 0xc0
00003b01: DUP5
00003b02: ADD
00003b03: MSTORE
00003b04: DUP8
00003b05: PUSH1 0xe0
00003b07: DUP5
00003b08: ADD
00003b09: MSTORE
00003b0a: DUP7
00003b0b: PUSH2 0x0100
00003b0e: DUP5
00003b0f: ADD
00003b10: MSTORE
00003b11: DUP6
00003b12: PUSH2 0x0120
00003b15: DUP5
00003b16: ADD
00003b17: MSTORE
00003b18: DUP5
00003b19: PUSH2 0x0140
00003b1c: DUP5
00003b1d: ADD
00003b1e: MSTORE
00003b1f: DUP1
00003b20: PUSH2 0x0160
00003b23: DUP5
00003b24: ADD
00003b25: MSTORE
00003b26: PUSH2 0x3b31
00003b29: DUP2
00003b2a: DUP5
00003b2b: ADD
00003b2c: DUP6
00003b2d: PUSH2 0x39b2
00003b30: JUMP
00003b31: JUMPDEST
00003b32: SWAP16
00003b33: SWAP15
00003b34: POP
00003b35: POP
00003b36: POP
00003b37: POP
00003b38: POP
00003b39: POP
00003b3a: POP
00003b3b: POP
00003b3c: POP
00003b3d: POP
00003b3e: POP
00003b3f: POP
00003b40: POP
00003b41: POP
00003b42: POP
00003b43: JUMP
00003b44: JUMPDEST
00003b45: PUSH0
00003b46: PUSH1 0x20
00003b48: DUP3
00003b49: DUP5
00003b4a: SUB
00003b4b: SLT
00003b4c: ISZERO
00003b4d: PUSH2 0x3b54
00003b50: JUMPI
00003b51: PUSH0
00003b52: DUP1
00003b53: REVERT
00003b54: JUMPDEST
00003b55: DUP2
00003b56: CALLDATALOAD
00003b57: PUSH2 0x320d
00003b5a: DUP2
00003b5b: PUSH2 0x36c3
00003b5e: JUMP
00003b5f: JUMPDEST
00003b60: DUP1
00003b61: CALLDATALOAD
00003b62: PUSH6 0xffffffffffff
00003b69: DUP2
00003b6a: AND
00003b6b: DUP2
00003b6c: EQ
00003b6d: PUSH2 0x3458
00003b70: JUMPI
00003b71: PUSH0
00003b72: DUP1
00003b73: REVERT
00003b74: JUMPDEST
00003b75: PUSH0
00003b76: PUSH1 0x20
00003b78: DUP3
00003b79: DUP5
00003b7a: SUB
00003b7b: SLT
00003b7c: ISZERO
00003b7d: PUSH2 0x3b84
00003b80: JUMPI
00003b81: PUSH0
00003b82: DUP1
00003b83: REVERT
00003b84: JUMPDEST
00003b85: PUSH2 0x320d
00003b88: DUP3
00003b89: PUSH2 0x3b5f
00003b8c: JUMP
00003b8d: JUMPDEST
00003b8e: PUSH0
00003b8f: DUP1
00003b90: PUSH0
00003b91: DUP1
00003b92: PUSH0
00003b93: DUP1
00003b94: PUSH0
00003b95: DUP1
00003b96: PUSH1 0xc0
00003b98: DUP10
00003b99: DUP12
00003b9a: SUB
00003b9b: SLT
00003b9c: ISZERO
00003b9d: PUSH2 0x3ba4
00003ba0: JUMPI
00003ba1: PUSH0
00003ba2: DUP1
00003ba3: REVERT
00003ba4: JUMPDEST
00003ba5: DUP9
00003ba6: CALLDATALOAD
00003ba7: PUSH1 0x01
00003ba9: PUSH1 0x01
00003bab: PUSH1 0x40
00003bad: SHL
00003bae: SUB
00003baf: DUP1
00003bb0: DUP3
00003bb1: GT
00003bb2: ISZERO
00003bb3: PUSH2 0x3bba
00003bb6: JUMPI
00003bb7: PUSH0
00003bb8: DUP1
00003bb9: REVERT
00003bba: JUMPDEST
00003bbb: PUSH2 0x3bc6
00003bbe: DUP13
00003bbf: DUP4
00003bc0: DUP14
00003bc1: ADD
00003bc2: PUSH2 0x349a
00003bc5: JUMP
00003bc6: JUMPDEST
00003bc7: SWAP1
00003bc8: SWAP11
00003bc9: POP
00003bca: SWAP9
00003bcb: POP
00003bcc: PUSH1 0x20
00003bce: DUP12
00003bcf: ADD
00003bd0: CALLDATALOAD
00003bd1: SWAP8
00003bd2: POP
00003bd3: PUSH1 0x40
00003bd5: DUP12
00003bd6: ADD
00003bd7: CALLDATALOAD
00003bd8: SWAP7
00003bd9: POP
00003bda: DUP9
00003bdb: SWAP2
00003bdc: POP
00003bdd: PUSH2 0x3be8
00003be0: PUSH1 0x60
00003be2: DUP13
00003be3: ADD
00003be4: PUSH2 0x34d7
00003be7: JUMP
00003be8: JUMPDEST
00003be9: SWAP6
00003bea: POP
00003beb: PUSH2 0x3bf6
00003bee: PUSH1 0x80
00003bf0: DUP13
00003bf1: ADD
00003bf2: PUSH2 0x34d7
00003bf5: JUMP
00003bf6: JUMPDEST
00003bf7: SWAP5
00003bf8: POP
00003bf9: PUSH1 0xa0
00003bfb: DUP12
00003bfc: ADD
00003bfd: CALLDATALOAD
00003bfe: SWAP2
00003bff: POP
00003c00: DUP1
00003c01: DUP3
00003c02: GT
00003c03: ISZERO
00003c04: PUSH2 0x3c0b
00003c07: JUMPI
00003c08: PUSH0
00003c09: DUP1
00003c0a: REVERT
00003c0b: JUMPDEST
00003c0c: POP
00003c0d: PUSH2 0x3c18
00003c10: DUP12
00003c11: DUP3
00003c12: DUP13
00003c13: ADD
00003c14: PUSH2 0x34e6
00003c17: JUMP
00003c18: JUMPDEST
00003c19: SWAP10
00003c1a: SWAP13
00003c1b: SWAP9
00003c1c: SWAP12
00003c1d: POP
00003c1e: SWAP7
00003c1f: SWAP10
00003c20: POP
00003c21: SWAP5
00003c22: SWAP8
00003c23: SWAP4
00003c24: SWAP7
00003c25: SWAP3
00003c26: SWAP6
00003c27: SWAP5
00003c28: POP
00003c29: POP
00003c2a: POP
00003c2b: JUMP
00003c2c: JUMPDEST
00003c2d: PUSH0
00003c2e: DUP1
00003c2f: PUSH1 0x40
00003c31: DUP4
00003c32: DUP6
00003c33: SUB
00003c34: SLT
00003c35: ISZERO
00003c36: PUSH2 0x3c3d
00003c39: JUMPI
00003c3a: PUSH0
00003c3b: DUP1
00003c3c: REVERT
00003c3d: JUMPDEST
00003c3e: DUP3
00003c3f: CALLDATALOAD
00003c40: PUSH1 0x07
00003c42: DUP2
00003c43: LT
00003c44: PUSH2 0x3c4b
00003c47: JUMPI
00003c48: PUSH0
00003c49: DUP1
00003c4a: REVERT
00003c4b: JUMPDEST
00003c4c: SWAP2
00003c4d: POP
00003c4e: PUSH1 0x20
00003c50: DUP4
00003c51: ADD
00003c52: CALLDATALOAD
00003c53: PUSH2 0x348f
00003c56: DUP2
00003c57: PUSH2 0x36c3
00003c5a: JUMP
00003c5b: JUMPDEST
00003c5c: PUSH0
00003c5d: DUP1
00003c5e: PUSH0
00003c5f: PUSH1 0x40
00003c61: DUP5
00003c62: DUP7
00003c63: SUB
00003c64: SLT
00003c65: ISZERO
00003c66: PUSH2 0x3c6d
00003c69: JUMPI
00003c6a: PUSH0
00003c6b: DUP1
00003c6c: REVERT
00003c6d: JUMPDEST
00003c6e: DUP4
00003c6f: CALLDATALOAD
00003c70: PUSH1 0x01
00003c72: PUSH1 0x01
00003c74: PUSH1 0x40
00003c76: SHL
00003c77: SUB
00003c78: DUP2
00003c79: GT
00003c7a: ISZERO
00003c7b: PUSH2 0x3c82
00003c7e: JUMPI
00003c7f: PUSH0
00003c80: DUP1
00003c81: REVERT
00003c82: JUMPDEST
00003c83: PUSH2 0x3c8e
00003c86: DUP7
00003c87: DUP3
00003c88: DUP8
00003c89: ADD
00003c8a: PUSH2 0x3895
00003c8d: JUMP
00003c8e: JUMPDEST
00003c8f: SWAP1
00003c90: SWAP5
00003c91: POP
00003c92: SWAP3
00003c93: POP
00003c94: PUSH2 0x388c
00003c97: SWAP1
00003c98: POP
00003c99: PUSH1 0x20
00003c9b: DUP6
00003c9c: ADD
00003c9d: PUSH2 0x34d7
00003ca0: JUMP
00003ca1: JUMPDEST
00003ca2: PUSH0
00003ca3: DUP1
00003ca4: PUSH1 0x40
00003ca6: DUP4
00003ca7: DUP6
00003ca8: SUB
00003ca9: SLT
00003caa: ISZERO
00003cab: PUSH2 0x3cb2
00003cae: JUMPI
00003caf: PUSH0
00003cb0: DUP1
00003cb1: REVERT
00003cb2: JUMPDEST
00003cb3: POP
00003cb4: POP
00003cb5: DUP1
00003cb6: CALLDATALOAD
00003cb7: SWAP3
00003cb8: PUSH1 0x20
00003cba: SWAP1
00003cbb: SWAP2
00003cbc: ADD
00003cbd: CALLDATALOAD
00003cbe: SWAP2
00003cbf: POP
00003cc0: JUMP
00003cc1: JUMPDEST
00003cc2: PUSH0
00003cc3: DUP1
00003cc4: PUSH0
00003cc5: DUP1
00003cc6: PUSH1 0x60
00003cc8: DUP6
00003cc9: DUP8
00003cca: SUB
00003ccb: SLT
00003ccc: ISZERO
00003ccd: PUSH2 0x3cd4
00003cd0: JUMPI
00003cd1: PUSH0
00003cd2: DUP1
00003cd3: REVERT
00003cd4: JUMPDEST
00003cd5: DUP5
00003cd6: CALLDATALOAD
00003cd7: PUSH1 0x01
00003cd9: PUSH1 0x01
00003cdb: PUSH1 0x40
00003cdd: SHL
00003cde: SUB
00003cdf: DUP2
00003ce0: GT
00003ce1: ISZERO
00003ce2: PUSH2 0x3ce9
00003ce5: JUMPI
00003ce6: PUSH0
00003ce7: DUP1
00003ce8: REVERT
00003ce9: JUMPDEST
00003cea: PUSH2 0x3cf5
00003ced: DUP8
00003cee: DUP3
00003cef: DUP9
00003cf0: ADD
00003cf1: PUSH2 0x349a
00003cf4: JUMP
00003cf5: JUMPDEST
00003cf6: SWAP1
00003cf7: SWAP6
00003cf8: POP
00003cf9: SWAP4
00003cfa: POP
00003cfb: POP
00003cfc: PUSH1 0x20
00003cfe: DUP6
00003cff: ADD
00003d00: CALLDATALOAD
00003d01: SWAP2
00003d02: POP
00003d03: PUSH2 0x3d0e
00003d06: PUSH1 0x40
00003d08: DUP7
00003d09: ADD
00003d0a: PUSH2 0x34d7
00003d0d: JUMP
00003d0e: JUMPDEST
00003d0f: SWAP1
00003d10: POP
00003d11: SWAP3
00003d12: SWAP6
00003d13: SWAP2
00003d14: SWAP5
00003d15: POP
00003d16: SWAP3
00003d17: POP
00003d18: JUMP
00003d19: JUMPDEST
00003d1a: PUSH0
00003d1b: PUSH1 0x20
00003d1d: DUP3
00003d1e: DUP5
00003d1f: SUB
00003d20: SLT
00003d21: ISZERO
00003d22: PUSH2 0x3d29
00003d25: JUMPI
00003d26: PUSH0
00003d27: DUP1
00003d28: REVERT
00003d29: JUMPDEST
00003d2a: DUP2
00003d2b: CALLDATALOAD
00003d2c: PUSH1 0x01
00003d2e: PUSH1 0x01
00003d30: PUSH1 0x40
00003d32: SHL
00003d33: SUB
00003d34: DUP2
00003d35: GT
00003d36: ISZERO
00003d37: PUSH2 0x3d3e
00003d3a: JUMPI
00003d3b: PUSH0
00003d3c: DUP1
00003d3d: REVERT
00003d3e: JUMPDEST
00003d3f: PUSH2 0x30a7
00003d42: DUP5
00003d43: DUP3
00003d44: DUP6
00003d45: ADD
00003d46: PUSH2 0x3671
00003d49: JUMP
00003d4a: JUMPDEST
00003d4b: PUSH4 0x4e487b71
00003d50: PUSH1 0xe0
00003d52: SHL
00003d53: PUSH0
00003d54: MSTORE
00003d55: PUSH1 0x21
00003d57: PUSH1 0x04
00003d59: MSTORE
00003d5a: PUSH1 0x24
00003d5c: PUSH0
00003d5d: REVERT
00003d5e: JUMPDEST
00003d5f: PUSH1 0x20
00003d61: DUP2
00003d62: ADD
00003d63: PUSH1 0x05
00003d65: DUP4
00003d66: LT
00003d67: PUSH2 0x3d72
00003d6a: JUMPI
00003d6b: PUSH2 0x3d72
00003d6e: PUSH2 0x3d4a
00003d71: JUMP
00003d72: JUMPDEST
00003d73: SWAP2
00003d74: SWAP1
00003d75: MSTORE
00003d76: SWAP1
00003d77: JUMP
00003d78: JUMPDEST
00003d79: PUSH0
00003d7a: DUP1
00003d7b: PUSH1 0x40
00003d7d: DUP4
00003d7e: DUP6
00003d7f: SUB
00003d80: SLT
00003d81: ISZERO
00003d82: PUSH2 0x3d89
00003d85: JUMPI
00003d86: PUSH0
00003d87: DUP1
00003d88: REVERT
00003d89: JUMPDEST
00003d8a: DUP3
00003d8b: CALLDATALOAD
00003d8c: PUSH2 0x3d94
00003d8f: DUP2
00003d90: PUSH2 0x36c3
00003d93: JUMP
00003d94: JUMPDEST
00003d95: SWAP2
00003d96: POP
00003d97: PUSH2 0x3da2
00003d9a: PUSH1 0x20
00003d9c: DUP5
00003d9d: ADD
00003d9e: PUSH2 0x34d7
00003da1: JUMP
00003da2: JUMPDEST
00003da3: SWAP1
00003da4: POP
00003da5: SWAP3
00003da6: POP
00003da7: SWAP3
00003da8: SWAP1
00003da9: POP
00003daa: JUMP
00003dab: JUMPDEST
00003dac: PUSH0
00003dad: DUP1
00003dae: PUSH0
00003daf: DUP1
00003db0: PUSH0
00003db1: PUSH1 0x80
00003db3: DUP7
00003db4: DUP9
00003db5: SUB
00003db6: SLT
00003db7: ISZERO
00003db8: PUSH2 0x3dbf
00003dbb: JUMPI
00003dbc: PUSH0
00003dbd: DUP1
00003dbe: REVERT
00003dbf: JUMPDEST
00003dc0: DUP6
00003dc1: CALLDATALOAD
00003dc2: PUSH2 0x3dca
00003dc5: DUP2
00003dc6: PUSH2 0x36c3
00003dc9: JUMP
00003dca: JUMPDEST
00003dcb: SWAP5
00003dcc: POP
00003dcd: PUSH1 0x20
00003dcf: DUP7
00003dd0: ADD
00003dd1: CALLDATALOAD
00003dd2: PUSH2 0x3dda
00003dd5: DUP2
00003dd6: PUSH2 0x36c3
00003dd9: JUMP
00003dda: JUMPDEST
00003ddb: SWAP4
00003ddc: POP
00003ddd: PUSH1 0x40
00003ddf: DUP7
00003de0: ADD
00003de1: CALLDATALOAD
00003de2: SWAP3
00003de3: POP
00003de4: PUSH1 0x60
00003de6: DUP7
00003de7: ADD
00003de8: CALLDATALOAD
00003de9: PUSH1 0x01
00003deb: PUSH1 0x01
00003ded: PUSH1 0x40
00003def: SHL
00003df0: SUB
00003df1: DUP2
00003df2: GT
00003df3: ISZERO
00003df4: PUSH2 0x3dfb
00003df7: JUMPI
00003df8: PUSH0
00003df9: DUP1
00003dfa: REVERT
00003dfb: JUMPDEST
00003dfc: PUSH2 0x3e07
00003dff: DUP9
00003e00: DUP3
00003e01: DUP10
00003e02: ADD
00003e03: PUSH2 0x34e6
00003e06: JUMP
00003e07: JUMPDEST
00003e08: SWAP7
00003e09: SWAP10
00003e0a: SWAP6
00003e0b: SWAP9
00003e0c: POP
00003e0d: SWAP4
00003e0e: SWAP7
00003e0f: POP
00003e10: SWAP3
00003e11: SWAP5
00003e12: SWAP4
00003e13: SWAP3
00003e14: POP
00003e15: POP
00003e16: POP
00003e17: JUMP
00003e18: JUMPDEST
00003e19: PUSH0
00003e1a: DUP1
00003e1b: PUSH0
00003e1c: DUP1
00003e1d: PUSH1 0x80
00003e1f: DUP6
00003e20: DUP8
00003e21: SUB
00003e22: SLT
00003e23: ISZERO
00003e24: PUSH2 0x3e2b
00003e27: JUMPI
00003e28: PUSH0
00003e29: DUP1
00003e2a: REVERT
00003e2b: JUMPDEST
00003e2c: DUP5
00003e2d: CALLDATALOAD
00003e2e: PUSH2 0x3e36
00003e31: DUP2
00003e32: PUSH2 0x36c3
00003e35: JUMP
00003e36: JUMPDEST
00003e37: SWAP4
00003e38: POP
00003e39: PUSH1 0x20
00003e3b: DUP6
00003e3c: ADD
00003e3d: CALLDATALOAD
00003e3e: PUSH2 0x3e46
00003e41: DUP2
00003e42: PUSH2 0x36c3
00003e45: JUMP
00003e46: JUMPDEST
00003e47: SWAP3
00003e48: POP
00003e49: PUSH1 0x40
00003e4b: DUP6
00003e4c: ADD
00003e4d: CALLDATALOAD
00003e4e: PUSH2 0x3e56
00003e51: DUP2
00003e52: PUSH2 0x36c3
00003e55: JUMP
00003e56: JUMPDEST
00003e57: SWAP2
00003e58: POP
00003e59: PUSH2 0x3d0e
00003e5c: PUSH1 0x60
00003e5e: DUP7
00003e5f: ADD
00003e60: PUSH2 0x3b5f
00003e63: JUMP
00003e64: JUMPDEST
00003e65: PUSH0
00003e66: DUP1
00003e67: PUSH0
00003e68: PUSH1 0x60
00003e6a: DUP5
00003e6b: DUP7
00003e6c: SUB
00003e6d: SLT
00003e6e: ISZERO
00003e6f: PUSH2 0x3e76
00003e72: JUMPI
00003e73: PUSH0
00003e74: DUP1
00003e75: REVERT
00003e76: JUMPDEST
00003e77: DUP4
00003e78: CALLDATALOAD
00003e79: SWAP3
00003e7a: POP
00003e7b: PUSH1 0x20
00003e7d: DUP5
00003e7e: ADD
00003e7f: CALLDATALOAD
00003e80: SWAP2
00003e81: POP
00003e82: PUSH1 0x40
00003e84: DUP5
00003e85: ADD
00003e86: CALLDATALOAD
00003e87: PUSH2 0x3e8f
00003e8a: DUP2
00003e8b: PUSH2 0x36c3
00003e8e: JUMP
00003e8f: JUMPDEST
00003e90: DUP1
00003e91: SWAP2
00003e92: POP
00003e93: POP
00003e94: SWAP3
00003e95: POP
00003e96: SWAP3
00003e97: POP
00003e98: SWAP3
00003e99: JUMP
00003e9a: JUMPDEST
00003e9b: PUSH1 0x20
00003e9d: DUP2
00003e9e: MSTORE
00003e9f: PUSH0
00003ea0: PUSH2 0x320d
00003ea3: PUSH1 0x20
00003ea5: DUP4
00003ea6: ADD
00003ea7: DUP5
00003ea8: PUSH2 0x39b2
00003eab: JUMP
00003eac: JUMPDEST
00003ead: PUSH0
00003eae: PUSH1 0x20
00003eb0: DUP3
00003eb1: DUP5
00003eb2: SUB
00003eb3: SLT
00003eb4: ISZERO
00003eb5: PUSH2 0x3ebc
00003eb8: JUMPI
00003eb9: PUSH0
00003eba: DUP1
00003ebb: REVERT
00003ebc: JUMPDEST
00003ebd: POP
00003ebe: MLOAD
00003ebf: SWAP2
00003ec0: SWAP1
00003ec1: POP
00003ec2: JUMP
00003ec3: JUMPDEST
00003ec4: DUP5
00003ec5: DUP2
00003ec6: MSTORE
00003ec7: PUSH1 0x20
00003ec9: DUP2
00003eca: ADD
00003ecb: DUP5
00003ecc: SWAP1
00003ecd: MSTORE
00003ece: PUSH1 0x80
00003ed0: DUP2
00003ed1: ADD
00003ed2: PUSH1 0x03
00003ed4: DUP5
00003ed5: LT
00003ed6: PUSH2 0x3ee1
00003ed9: JUMPI
00003eda: PUSH2 0x3ee1
00003edd: PUSH2 0x3d4a
00003ee0: JUMP
00003ee1: JUMPDEST
00003ee2: DUP4
00003ee3: PUSH1 0x40
00003ee5: DUP4
00003ee6: ADD
00003ee7: MSTORE
00003ee8: PUSH4 0xffffffff
00003eed: DUP4
00003eee: AND
00003eef: PUSH1 0x60
00003ef1: DUP4
00003ef2: ADD
00003ef3: MSTORE
00003ef4: SWAP6
00003ef5: SWAP5
00003ef6: POP
00003ef7: POP
00003ef8: POP
00003ef9: POP
00003efa: POP
00003efb: JUMP
00003efc: JUMPDEST
00003efd: DUP2
00003efe: DUP4
00003eff: MSTORE
00003f00: DUP2
00003f01: DUP2
00003f02: PUSH1 0x20
00003f04: DUP6
00003f05: ADD
00003f06: CALLDATACOPY
00003f07: POP
00003f08: PUSH0
00003f09: DUP3
00003f0a: DUP3
00003f0b: ADD
00003f0c: PUSH1 0x20
00003f0e: SWAP1
00003f0f: DUP2
00003f10: ADD
00003f11: SWAP2
00003f12: SWAP1
00003f13: SWAP2
00003f14: MSTORE
00003f15: PUSH1 0x1f
00003f17: SWAP1
00003f18: SWAP2
00003f19: ADD
00003f1a: PUSH1 0x1f
00003f1c: NOT
00003f1d: AND
00003f1e: SWAP1
00003f1f: SWAP2
00003f20: ADD
00003f21: ADD
00003f22: SWAP1
00003f23: JUMP
00003f24: JUMPDEST
00003f25: DUP2
00003f26: DUP4
00003f27: MSTORE
00003f28: PUSH0
00003f29: PUSH1 0x20
00003f2b: DUP1
00003f2c: DUP6
00003f2d: ADD
00003f2e: SWAP5
00003f2f: POP
00003f30: DUP3
00003f31: PUSH0
00003f32: JUMPDEST
00003f33: DUP6
00003f34: DUP2
00003f35: LT
00003f36: ISZERO
00003f37: PUSH2 0x3f6a
00003f3a: JUMPI
00003f3b: DUP2
00003f3c: CALLDATALOAD
00003f3d: PUSH2 0x3f45
00003f40: DUP2
00003f41: PUSH2 0x36c3
00003f44: JUMP
00003f45: JUMPDEST
00003f46: PUSH1 0x01
00003f48: PUSH1 0x01
00003f4a: PUSH1 0xa0
00003f4c: SHL
00003f4d: SUB
00003f4e: AND
00003f4f: DUP8
00003f50: MSTORE
00003f51: DUP2
00003f52: DUP4
00003f53: ADD
00003f54: CALLDATALOAD
00003f55: DUP4
00003f56: DUP9
00003f57: ADD
00003f58: MSTORE
00003f59: PUSH1 0x40
00003f5b: SWAP7
00003f5c: DUP8
00003f5d: ADD
00003f5e: SWAP7
00003f5f: SWAP1
00003f60: SWAP2
00003f61: ADD
00003f62: SWAP1
00003f63: PUSH1 0x01
00003f65: ADD
00003f66: PUSH2 0x3f32
00003f69: JUMP
00003f6a: JUMPDEST
00003f6b: POP
00003f6c: SWAP5
00003f6d: SWAP6
00003f6e: SWAP5
00003f6f: POP
00003f70: POP
00003f71: POP
00003f72: POP
00003f73: POP
00003f74: JUMP
00003f75: JUMPDEST
00003f76: DUP15
00003f77: DUP2
00003f78: MSTORE
00003f79: DUP14
00003f7a: PUSH1 0x20
00003f7c: DUP3
00003f7d: ADD
00003f7e: MSTORE
00003f7f: DUP13
00003f80: PUSH1 0x40
00003f82: DUP3
00003f83: ADD
00003f84: MSTORE
00003f85: DUP12
00003f86: PUSH1 0x60
00003f88: DUP3
00003f89: ADD
00003f8a: MSTORE
00003f8b: PUSH2 0x0160
00003f8e: PUSH1 0x80
00003f90: DUP3
00003f91: ADD
00003f92: MSTORE
00003f93: PUSH0
00003f94: PUSH2 0x3fa2
00003f97: PUSH2 0x0160
00003f9a: DUP4
00003f9b: ADD
00003f9c: DUP13
00003f9d: DUP15
00003f9e: PUSH2 0x3efc
00003fa1: JUMP
00003fa2: JUMPDEST
00003fa3: DUP3
00003fa4: DUP2
00003fa5: SUB
00003fa6: PUSH1 0xa0
00003fa8: DUP5
00003fa9: ADD
00003faa: MSTORE
00003fab: PUSH2 0x3fb5
00003fae: DUP2
00003faf: DUP12
00003fb0: DUP14
00003fb1: PUSH2 0x3efc
00003fb4: JUMP
00003fb5: JUMPDEST
00003fb6: SWAP1
00003fb7: POP
00003fb8: DUP9
00003fb9: PUSH1 0xc0
00003fbb: DUP5
00003fbc: ADD
00003fbd: MSTORE
00003fbe: DUP8
00003fbf: PUSH1 0xe0
00003fc1: DUP5
00003fc2: ADD
00003fc3: MSTORE
00003fc4: DUP7
00003fc5: ISZERO
00003fc6: ISZERO
00003fc7: PUSH2 0x0100
00003fca: DUP5
00003fcb: ADD
00003fcc: MSTORE
00003fcd: DUP3
00003fce: DUP2
00003fcf: SUB
00003fd0: PUSH2 0x0120
00003fd3: DUP5
00003fd4: ADD
00003fd5: MSTORE
00003fd6: PUSH2 0x3fe0
00003fd9: DUP2
00003fda: DUP7
00003fdb: DUP9
00003fdc: PUSH2 0x3f24
00003fdf: JUMP
00003fe0: JUMPDEST
00003fe1: SWAP2
00003fe2: POP
00003fe3: POP
00003fe4: PUSH1 0x01
00003fe6: DUP1
00003fe7: PUSH1 0xa0
00003fe9: SHL
00003fea: SUB
00003feb: DUP4
00003fec: AND
00003fed: PUSH2 0x0140
00003ff0: DUP4
00003ff1: ADD
00003ff2: MSTORE
00003ff3: SWAP16
00003ff4: SWAP15
00003ff5: POP
00003ff6: POP
00003ff7: POP
00003ff8: POP
00003ff9: POP
00003ffa: POP
00003ffb: POP
00003ffc: POP
00003ffd: POP
00003ffe: POP
00003fff: POP
00004000: POP
00004001: POP
00004002: POP
00004003: POP
00004004: JUMP
00004005: JUMPDEST
00004006: PUSH0
00004007: PUSH1 0x80
00004009: DUP1
0000400a: DUP4
0000400b: ADD
0000400c: DUP8
0000400d: DUP5
0000400e: MSTORE
0000400f: PUSH1 0x20
00004011: DUP8
00004012: DUP2
00004013: DUP7
00004014: ADD
00004015: MSTORE
00004016: PUSH1 0x40
00004018: DUP8
00004019: PUSH1 0x40
0000401b: DUP8
0000401c: ADD
0000401d: MSTORE
0000401e: PUSH1 0x60
00004020: PUSH1 0x80
00004022: PUSH1 0x60
00004024: DUP9
00004025: ADD
00004026: MSTORE
00004027: DUP4
00004028: DUP9
00004029: MLOAD
0000402a: DUP1
0000402b: DUP7
0000402c: MSTORE
0000402d: PUSH1 0xa0
0000402f: DUP10
00004030: ADD
00004031: SWAP2
00004032: POP
00004033: PUSH1 0xa0
00004035: DUP2
00004036: PUSH1 0x05
00004038: SHL
00004039: DUP11
0000403a: ADD
0000403b: ADD
0000403c: SWAP6
0000403d: POP
0000403e: DUP5
0000403f: DUP11
00004040: ADD
00004041: PUSH0
00004042: JUMPDEST
00004043: DUP3
00004044: DUP2
00004045: LT
00004046: ISZERO
00004047: PUSH2 0x40ac
0000404a: JUMPI
0000404b: DUP11
0000404c: DUP9
0000404d: SUB
0000404e: PUSH1 0x9f
00004050: NOT
00004051: ADD
00004052: DUP5
00004053: MSTORE
00004054: DUP2
00004055: MLOAD
00004056: DUP1
00004057: MLOAD
00004058: DUP11
00004059: DUP11
0000405a: MSTORE
0000405b: PUSH2 0x4066
0000405e: DUP12
0000405f: DUP12
00004060: ADD
00004061: DUP3
00004062: PUSH2 0x39b2
00004065: JUMP
00004066: JUMPDEST
00004067: SWAP1
00004068: POP
00004069: DUP9
0000406a: DUP3
0000406b: ADD
0000406c: MLOAD
0000406d: DUP11
0000406e: DUP3
0000406f: SUB
00004070: DUP11
00004071: DUP13
00004072: ADD
00004073: MSTORE
00004074: PUSH2 0x407d
00004077: DUP3
00004078: DUP3
00004079: PUSH2 0x39b2
0000407c: JUMP
0000407d: JUMPDEST
0000407e: DUP4
0000407f: DUP11
00004080: ADD
00004081: MLOAD
00004082: DUP13
00004083: DUP12
00004084: ADD
00004085: MSTORE
00004086: SWAP3
00004087: DUP9
00004088: ADD
00004089: MLOAD
0000408a: PUSH1 0x01
0000408c: PUSH1 0x01
0000408e: PUSH1 0xa0
00004090: SHL
00004091: SUB
00004092: AND
00004093: SWAP11
00004094: DUP9
00004095: ADD
00004096: SWAP11
00004097: SWAP1
00004098: SWAP11
00004099: MSTORE
0000409a: POP
0000409b: SWAP8
0000409c: POP
0000409d: SWAP3
0000409e: DUP7
0000409f: ADD
000040a0: SWAP3
000040a1: SWAP1
000040a2: DUP7
000040a3: ADD
000040a4: SWAP1
000040a5: PUSH1 0x01
000040a7: ADD
000040a8: PUSH2 0x4042
000040ab: JUMP
000040ac: JUMPDEST
000040ad: POP
000040ae: SWAP6
000040af: SWAP14
000040b0: SWAP13
000040b1: POP
000040b2: POP
000040b3: POP
000040b4: POP
000040b5: POP
000040b6: POP
000040b7: POP
000040b8: POP
000040b9: POP
000040ba: POP
000040bb: POP
000040bc: POP
000040bd: POP
000040be: JUMP
000040bf: JUMPDEST
000040c0: PUSH0
000040c1: DUP1
000040c2: PUSH1 0x40
000040c4: DUP4
000040c5: DUP6
000040c6: SUB
000040c7: SLT
000040c8: ISZERO
000040c9: PUSH2 0x40d0
000040cc: JUMPI
000040cd: PUSH0
000040ce: DUP1
000040cf: REVERT
000040d0: JUMPDEST
000040d1: POP
000040d2: POP
000040d3: DUP1
000040d4: MLOAD
000040d5: PUSH1 0x20
000040d7: SWAP1
000040d8: SWAP2
000040d9: ADD
000040da: MLOAD
000040db: SWAP1
000040dc: SWAP3
000040dd: SWAP1
000040de: SWAP2
000040df: POP
000040e0: JUMP
000040e1: JUMPDEST
000040e2: DUP2
000040e3: DUP4
000040e4: MSTORE
000040e5: PUSH0
000040e6: PUSH1 0x01
000040e8: PUSH1 0x01
000040ea: PUSH1 0xfb
000040ec: SHL
000040ed: SUB
000040ee: DUP4
000040ef: GT
000040f0: ISZERO
000040f1: PUSH2 0x40f8
000040f4: JUMPI
000040f5: PUSH0
000040f6: DUP1
000040f7: REVERT
000040f8: JUMPDEST
000040f9: DUP3
000040fa: PUSH1 0x05
000040fc: SHL
000040fd: DUP1
000040fe: DUP4
000040ff: PUSH1 0x20
00004101: DUP8
00004102: ADD
00004103: CALLDATACOPY
00004104: SWAP4
00004105: SWAP1
00004106: SWAP4
00004107: ADD
00004108: PUSH1 0x20
0000410a: ADD
0000410b: SWAP4
0000410c: SWAP3
0000410d: POP
0000410e: POP
0000410f: POP
00004110: JUMP
00004111: JUMPDEST
00004112: DUP10
00004113: DUP2
00004114: MSTORE
00004115: DUP9
00004116: PUSH1 0x20
00004118: DUP3
00004119: ADD
0000411a: MSTORE
0000411b: DUP8
0000411c: PUSH1 0x40
0000411e: DUP3
0000411f: ADD
00004120: MSTORE
00004121: DUP7
00004122: PUSH1 0x60
00004124: DUP3
00004125: ADD
00004126: MSTORE
00004127: PUSH1 0xe0
00004129: PUSH1 0x80
0000412b: DUP3
0000412c: ADD
0000412d: MSTORE
0000412e: PUSH0
0000412f: PUSH2 0x413c
00004132: PUSH1 0xe0
00004134: DUP4
00004135: ADD
00004136: DUP8
00004137: DUP10
00004138: PUSH2 0x40e1
0000413b: JUMP
0000413c: JUMPDEST
0000413d: DUP3
0000413e: DUP2
0000413f: SUB
00004140: PUSH1 0xa0
00004142: DUP5
00004143: ADD
00004144: MSTORE
00004145: PUSH2 0x414f
00004148: DUP2
00004149: DUP7
0000414a: DUP9
0000414b: PUSH2 0x40e1
0000414e: JUMP
0000414f: JUMPDEST
00004150: SWAP2
00004151: POP
00004152: POP
00004153: PUSH1 0x01
00004155: DUP1
00004156: PUSH1 0xa0
00004158: SHL
00004159: SUB
0000415a: DUP4
0000415b: AND
0000415c: PUSH1 0xc0
0000415e: DUP4
0000415f: ADD
00004160: MSTORE
00004161: SWAP11
00004162: SWAP10
00004163: POP
00004164: POP
00004165: POP
00004166: POP
00004167: POP
00004168: POP
00004169: POP
0000416a: POP
0000416b: POP
0000416c: POP
0000416d: JUMP
0000416e: JUMPDEST
0000416f: DUP7
00004170: DUP2
00004171: MSTORE
00004172: DUP6
00004173: PUSH1 0x20
00004175: DUP3
00004176: ADD
00004177: MSTORE
00004178: PUSH1 0xa0
0000417a: PUSH1 0x40
0000417c: DUP3
0000417d: ADD
0000417e: MSTORE
0000417f: PUSH0
00004180: PUSH2 0x418d
00004183: PUSH1 0xa0
00004185: DUP4
00004186: ADD
00004187: DUP7
00004188: DUP9
00004189: PUSH2 0x3efc
0000418c: JUMP
0000418d: JUMPDEST
0000418e: PUSH1 0x60
00004190: DUP4
00004191: ADD
00004192: SWAP5
00004193: SWAP1
00004194: SWAP5
00004195: MSTORE
00004196: POP
00004197: PUSH1 0x80
00004199: ADD
0000419a: MSTORE
0000419b: SWAP5
0000419c: SWAP4
0000419d: POP
0000419e: POP
0000419f: POP
000041a0: POP
000041a1: JUMP
000041a2: JUMPDEST
000041a3: PUSH1 0x01
000041a5: DUP2
000041a6: DUP2
000041a7: SHR
000041a8: SWAP1
000041a9: DUP3
000041aa: AND
000041ab: DUP1
000041ac: PUSH2 0x41b6
000041af: JUMPI
000041b0: PUSH1 0x7f
000041b2: DUP3
000041b3: AND
000041b4: SWAP2
000041b5: POP
000041b6: JUMPDEST
000041b7: PUSH1 0x20
000041b9: DUP3
000041ba: LT
000041bb: DUP2
000041bc: SUB
000041bd: PUSH2 0x41d4
000041c0: JUMPI
000041c1: PUSH4 0x4e487b71
000041c6: PUSH1 0xe0
000041c8: SHL
000041c9: PUSH0
000041ca: MSTORE
000041cb: PUSH1 0x22
000041cd: PUSH1 0x04
000041cf: MSTORE
000041d0: PUSH1 0x24
000041d2: PUSH0
000041d3: REVERT
000041d4: JUMPDEST
000041d5: POP
000041d6: SWAP2
000041d7: SWAP1
000041d8: POP
000041d9: JUMP
000041da: JUMPDEST
000041db: DUP4
000041dc: DUP2
000041dd: MSTORE
000041de: PUSH0
000041df: PUSH1 0x20
000041e1: PUSH1 0x60
000041e3: PUSH1 0x20
000041e5: DUP5
000041e6: ADD
000041e7: MSTORE
000041e8: PUSH0
000041e9: DUP6
000041ea: SLOAD
000041eb: PUSH0
000041ec: PUSH1 0x01
000041ee: DUP3
000041ef: PUSH1 0x01
000041f1: SHR
000041f2: SWAP2
000041f3: POP
000041f4: PUSH1 0x01
000041f6: DUP4
000041f7: AND
000041f8: DUP1
000041f9: PUSH2 0x4203
000041fc: JUMPI
000041fd: PUSH1 0x7f
000041ff: DUP4
00004200: AND
00004201: SWAP3
00004202: POP
00004203: JUMPDEST
00004204: PUSH1 0x20
00004206: DUP4
00004207: LT
00004208: DUP2
00004209: SUB
0000420a: PUSH2 0x4221
0000420d: JUMPI
0000420e: PUSH4 0x4e487b71
00004213: PUSH1 0xe0
00004215: SHL
00004216: PUSH0
00004217: MSTORE
00004218: PUSH1 0x22
0000421a: PUSH1 0x04
0000421c: MSTORE
0000421d: PUSH1 0x24
0000421f: PUSH0
00004220: REVERT
00004221: JUMPDEST
00004222: PUSH1 0x60
00004224: DUP9
00004225: ADD
00004226: DUP4
00004227: SWAP1
00004228: MSTORE
00004229: PUSH1 0x80
0000422b: DUP9
0000422c: ADD
0000422d: DUP2
0000422e: DUP1
0000422f: ISZERO
00004230: PUSH2 0x4240
00004233: JUMPI
00004234: PUSH1 0x01
00004236: DUP2
00004237: EQ
00004238: PUSH2 0x4256
0000423b: JUMPI
0000423c: PUSH2 0x427f
0000423f: JUMP
00004240: JUMPDEST
00004241: PUSH1 0xff
00004243: NOT
00004244: DUP7
00004245: AND
00004246: DUP3
00004247: MSTORE
00004248: DUP5
00004249: ISZERO
0000424a: ISZERO
0000424b: PUSH1 0x05
0000424d: SHL
0000424e: DUP3
0000424f: ADD
00004250: SWAP7
00004251: POP
00004252: PUSH2 0x427f
00004255: JUMP
00004256: JUMPDEST
00004257: PUSH0
00004258: DUP13
00004259: DUP2
0000425a: MSTORE
0000425b: PUSH1 0x20
0000425d: SWAP1
0000425e: KECCAK256
0000425f: PUSH0
00004260: JUMPDEST
00004261: DUP7
00004262: DUP2
00004263: LT
00004264: ISZERO
00004265: PUSH2 0x4279
00004268: JUMPI
00004269: DUP2
0000426a: SLOAD
0000426b: DUP5
0000426c: DUP3
0000426d: ADD
0000426e: MSTORE
0000426f: SWAP1
00004270: DUP6
00004271: ADD
00004272: SWAP1
00004273: DUP10
00004274: ADD
00004275: PUSH2 0x4260
00004278: JUMP
00004279: JUMPDEST
0000427a: DUP4
0000427b: ADD
0000427c: SWAP8
0000427d: POP
0000427e: POP
0000427f: JUMPDEST
00004280: POP
00004281: POP
00004282: POP
00004283: POP
00004284: POP
00004285: POP
00004286: DUP1
00004287: SWAP3
00004288: POP
00004289: POP
0000428a: POP
0000428b: DUP3
0000428c: PUSH1 0x40
0000428e: DUP4
0000428f: ADD
00004290: MSTORE
00004291: SWAP5
00004292: SWAP4
00004293: POP
00004294: POP
00004295: POP
00004296: POP
00004297: JUMP
00004298: JUMPDEST
00004299: PUSH0
0000429a: DUP3
0000429b: PUSH1 0x1f
0000429d: DUP4
0000429e: ADD
0000429f: SLT
000042a0: PUSH2 0x42a7
000042a3: JUMPI
000042a4: PUSH0
000042a5: DUP1
000042a6: REVERT
000042a7: JUMPDEST
000042a8: DUP2
000042a9: MLOAD
000042aa: PUSH2 0x42b5
000042ad: PUSH2 0x368e
000042b0: DUP3
000042b1: PUSH2 0x364b
000042b4: JUMP
000042b5: JUMPDEST
000042b6: DUP2
000042b7: DUP2
000042b8: MSTORE
000042b9: DUP5
000042ba: PUSH1 0x20
000042bc: DUP4
000042bd: DUP7
000042be: ADD
000042bf: ADD
000042c0: GT
000042c1: ISZERO
000042c2: PUSH2 0x42c9
000042c5: JUMPI
000042c6: PUSH0
000042c7: DUP1
000042c8: REVERT
000042c9: JUMPDEST
000042ca: PUSH2 0x30a7
000042cd: DUP3
000042ce: PUSH1 0x20
000042d0: DUP4
000042d1: ADD
000042d2: PUSH1 0x20
000042d4: DUP8
000042d5: ADD
000042d6: PUSH2 0x3990
000042d9: JUMP
000042da: JUMPDEST
000042db: PUSH0
000042dc: DUP1
000042dd: PUSH0
000042de: DUP1
000042df: PUSH0
000042e0: PUSH1 0xa0
000042e2: DUP7
000042e3: DUP9
000042e4: SUB
000042e5: SLT
000042e6: ISZERO
000042e7: PUSH2 0x42ee
000042ea: JUMPI
000042eb: PUSH0
000042ec: DUP1
000042ed: REVERT
000042ee: JUMPDEST
000042ef: DUP6
000042f0: MLOAD
000042f1: PUSH1 0x01
000042f3: PUSH1 0x01
000042f5: PUSH1 0x40
000042f7: SHL
000042f8: SUB
000042f9: DUP1
000042fa: DUP3
000042fb: GT
000042fc: ISZERO
000042fd: PUSH2 0x4304
00004300: JUMPI
00004301: PUSH0
00004302: DUP1
00004303: REVERT
00004304: JUMPDEST
00004305: PUSH2 0x4310
00004308: DUP10
00004309: DUP4
0000430a: DUP11
0000430b: ADD
0000430c: PUSH2 0x4298
0000430f: JUMP
00004310: JUMPDEST
00004311: SWAP7
00004312: POP
00004313: PUSH1 0x20
00004315: DUP9
00004316: ADD
00004317: MLOAD
00004318: SWAP2
00004319: POP
0000431a: DUP1
0000431b: DUP3
0000431c: GT
0000431d: ISZERO
0000431e: PUSH2 0x4325
00004321: JUMPI
00004322: PUSH0
00004323: DUP1
00004324: REVERT
00004325: JUMPDEST
00004326: PUSH2 0x4331
00004329: DUP10
0000432a: DUP4
0000432b: DUP11
0000432c: ADD
0000432d: PUSH2 0x4298
00004330: JUMP
00004331: JUMPDEST
00004332: SWAP6
00004333: POP
00004334: PUSH1 0x40
00004336: DUP9
00004337: ADD
00004338: MLOAD
00004339: SWAP2
0000433a: POP
0000433b: DUP1
0000433c: DUP3
0000433d: GT
0000433e: ISZERO
0000433f: PUSH2 0x4346
00004342: JUMPI
00004343: PUSH0
00004344: DUP1
00004345: REVERT
00004346: JUMPDEST
00004347: POP
00004348: PUSH2 0x4353
0000434b: DUP9
0000434c: DUP3
0000434d: DUP10
0000434e: ADD
0000434f: PUSH2 0x4298
00004352: JUMP
00004353: JUMPDEST
00004354: SWAP4
00004355: POP
00004356: POP
00004357: PUSH1 0x60
00004359: DUP7
0000435a: ADD
0000435b: MLOAD
0000435c: SWAP2
0000435d: POP
0000435e: PUSH1 0x80
00004360: DUP7
00004361: ADD
00004362: MLOAD
00004363: PUSH2 0x3944
00004366: DUP2
00004367: PUSH2 0x36c3
0000436a: JUMP
0000436b: JUMPDEST
0000436c: DUP2
0000436d: DUP4
0000436e: DUP3
0000436f: CALLDATACOPY
00004370: PUSH0
00004371: SWAP2
00004372: ADD
00004373: SWAP1
00004374: DUP2
00004375: MSTORE
00004376: SWAP2
00004377: SWAP1
00004378: POP
00004379: JUMP
0000437a: JUMPDEST
0000437b: PUSH4 0x4e487b71
00004380: PUSH1 0xe0
00004382: SHL
00004383: PUSH0
00004384: MSTORE
00004385: PUSH1 0x11
00004387: PUSH1 0x04
00004389: MSTORE
0000438a: PUSH1 0x24
0000438c: PUSH0
0000438d: REVERT
0000438e: JUMPDEST
0000438f: DUP2
00004390: DUP2
00004391: SUB
00004392: DUP2
00004393: DUP2
00004394: GT
00004395: ISZERO
00004396: PUSH2 0x0dbf
00004399: JUMPI
0000439a: PUSH2 0x0dbf
0000439d: PUSH2 0x437a
000043a0: JUMP
000043a1: JUMPDEST
000043a2: DUP7
000043a3: DUP2
000043a4: MSTORE
000043a5: DUP6
000043a6: PUSH1 0x20
000043a8: DUP3
000043a9: ADD
000043aa: MSTORE
000043ab: DUP5
000043ac: PUSH1 0x40
000043ae: DUP3
000043af: ADD
000043b0: MSTORE
000043b1: DUP4
000043b2: PUSH1 0x60
000043b4: DUP3
000043b5: ADD
000043b6: MSTORE
000043b7: PUSH1 0xa0
000043b9: PUSH1 0x80
000043bb: DUP3
000043bc: ADD
000043bd: MSTORE
000043be: PUSH0
000043bf: PUSH2 0x43cc
000043c2: PUSH1 0xa0
000043c4: DUP4
000043c5: ADD
000043c6: DUP5
000043c7: DUP7
000043c8: PUSH2 0x3f24
000043cb: JUMP
000043cc: JUMPDEST
000043cd: SWAP9
000043ce: SWAP8
000043cf: POP
000043d0: POP
000043d1: POP
000043d2: POP
000043d3: POP
000043d4: POP
000043d5: POP
000043d6: POP
000043d7: JUMP
000043d8: JUMPDEST
000043d9: PUSH0
000043da: PUSH1 0x20
000043dc: DUP3
000043dd: DUP5
000043de: SUB
000043df: SLT
000043e0: ISZERO
000043e1: PUSH2 0x43e8
000043e4: JUMPI
000043e5: PUSH0
000043e6: DUP1
000043e7: REVERT
000043e8: JUMPDEST
000043e9: DUP2
000043ea: MLOAD
000043eb: PUSH1 0x01
000043ed: PUSH1 0x01
000043ef: PUSH1 0x40
000043f1: SHL
000043f2: SUB
000043f3: DUP2
000043f4: GT
000043f5: ISZERO
000043f6: PUSH2 0x43fd
000043f9: JUMPI
000043fa: PUSH0
000043fb: DUP1
000043fc: REVERT
000043fd: JUMPDEST
000043fe: PUSH2 0x30a7
00004401: DUP5
00004402: DUP3
00004403: DUP6
00004404: ADD
00004405: PUSH2 0x4298
00004408: JUMP
00004409: JUMPDEST
0000440a: PUSH4 0x4e487b71
0000440f: PUSH1 0xe0
00004411: SHL
00004412: PUSH0
00004413: MSTORE
00004414: PUSH1 0x01
00004416: PUSH1 0x04
00004418: MSTORE
00004419: PUSH1 0x24
0000441b: PUSH0
0000441c: REVERT
0000441d: JUMPDEST
0000441e: DUP1
0000441f: DUP3
00004420: ADD
00004421: DUP1
00004422: DUP3
00004423: GT
00004424: ISZERO
00004425: PUSH2 0x0dbf
00004428: JUMPI
00004429: PUSH2 0x0dbf
0000442c: PUSH2 0x437a
0000442f: JUMP
00004430: JUMPDEST
00004431: PUSH1 0x80
00004433: DUP2
00004434: MSTORE
00004435: PUSH0
00004436: PUSH2 0x4443
00004439: PUSH1 0x80
0000443b: DUP4
0000443c: ADD
0000443d: DUP8
0000443e: DUP10
0000443f: PUSH2 0x3efc
00004442: JUMP
00004443: JUMPDEST
00004444: SWAP5
00004445: ISZERO
00004446: ISZERO
00004447: PUSH1 0x20
00004449: DUP4
0000444a: ADD
0000444b: MSTORE
0000444c: POP
0000444d: PUSH1 0x40
0000444f: DUP2
00004450: ADD
00004451: SWAP3
00004452: SWAP1
00004453: SWAP3
00004454: MSTORE
00004455: PUSH1 0x60
00004457: SWAP1
00004458: SWAP2
00004459: ADD
0000445a: MSTORE
0000445b: SWAP3
0000445c: SWAP2
0000445d: POP
0000445e: POP
0000445f: JUMP
00004460: JUMPDEST
00004461: PUSH0
00004462: PUSH1 0x20
00004464: DUP3
00004465: DUP5
00004466: SUB
00004467: SLT
00004468: ISZERO
00004469: PUSH2 0x4470
0000446c: JUMPI
0000446d: PUSH0
0000446e: DUP1
0000446f: REVERT
00004470: JUMPDEST
00004471: DUP2
00004472: MLOAD
00004473: PUSH1 0x01
00004475: PUSH1 0x01
00004477: PUSH1 0x40
00004479: SHL
0000447a: SUB
0000447b: DUP1
0000447c: DUP3
0000447d: GT
0000447e: ISZERO
0000447f: PUSH2 0x4486
00004482: JUMPI
00004483: PUSH0
00004484: DUP1
00004485: REVERT
00004486: JUMPDEST
00004487: SWAP1
00004488: DUP4
00004489: ADD
0000448a: SWAP1
0000448b: PUSH1 0x80
0000448d: DUP3
0000448e: DUP7
0000448f: SUB
00004490: SLT
00004491: ISZERO
00004492: PUSH2 0x4499
00004495: JUMPI
00004496: PUSH0
00004497: DUP1
00004498: REVERT
00004499: JUMPDEST
0000449a: PUSH2 0x44a1
0000449d: PUSH2 0x35f3
000044a0: JUMP
000044a1: JUMPDEST
000044a2: DUP3
000044a3: MLOAD
000044a4: DUP3
000044a5: DUP2
000044a6: GT
000044a7: ISZERO
000044a8: PUSH2 0x44af
000044ab: JUMPI
000044ac: PUSH0
000044ad: DUP1
000044ae: REVERT
000044af: JUMPDEST
000044b0: PUSH2 0x44bb
000044b3: DUP8
000044b4: DUP3
000044b5: DUP7
000044b6: ADD
000044b7: PUSH2 0x4298
000044ba: JUMP
000044bb: JUMPDEST
000044bc: DUP3
000044bd: MSTORE
000044be: POP
000044bf: PUSH1 0x20
000044c1: DUP4
000044c2: ADD
000044c3: MLOAD
000044c4: DUP3
000044c5: DUP2
000044c6: GT
000044c7: ISZERO
000044c8: PUSH2 0x44cf
000044cb: JUMPI
000044cc: PUSH0
000044cd: DUP1
000044ce: REVERT
000044cf: JUMPDEST
000044d0: PUSH2 0x44db
000044d3: DUP8
000044d4: DUP3
000044d5: DUP7
000044d6: ADD
000044d7: PUSH2 0x4298
000044da: JUMP
000044db: JUMPDEST
000044dc: PUSH1 0x20
000044de: DUP4
000044df: ADD
000044e0: MSTORE
000044e1: POP
000044e2: PUSH1 0x40
000044e4: DUP4
000044e5: ADD
000044e6: MLOAD
000044e7: PUSH1 0x40
000044e9: DUP3
000044ea: ADD
000044eb: MSTORE
000044ec: PUSH1 0x60
000044ee: DUP4
000044ef: ADD
000044f0: MLOAD
000044f1: SWAP3
000044f2: POP
000044f3: PUSH2 0x44fb
000044f6: DUP4
000044f7: PUSH2 0x36c3
000044fa: JUMP
000044fb: JUMPDEST
000044fc: PUSH1 0x60
000044fe: DUP2
000044ff: ADD
00004500: SWAP3
00004501: SWAP1
00004502: SWAP3
00004503: MSTORE
00004504: POP
00004505: SWAP4
00004506: SWAP3
00004507: POP
00004508: POP
00004509: POP
0000450a: JUMP
0000450b: JUMPDEST
0000450c: DUP5
0000450d: DUP2
0000450e: MSTORE
0000450f: PUSH1 0x20
00004511: DUP2
00004512: ADD
00004513: DUP5
00004514: SWAP1
00004515: MSTORE
00004516: PUSH1 0x80
00004518: DUP2
00004519: ADD
0000451a: PUSH1 0x07
0000451c: DUP5
0000451d: LT
0000451e: PUSH2 0x4529
00004521: JUMPI
00004522: PUSH2 0x4529
00004525: PUSH2 0x3d4a
00004528: JUMP
00004529: JUMPDEST
0000452a: PUSH1 0x40
0000452c: DUP3
0000452d: ADD
0000452e: SWAP4
0000452f: SWAP1
00004530: SWAP4
00004531: MSTORE
00004532: PUSH1 0x01
00004534: PUSH1 0x01
00004536: PUSH1 0xa0
00004538: SHL
00004539: SUB
0000453a: SWAP2
0000453b: SWAP1
0000453c: SWAP2
0000453d: AND
0000453e: PUSH1 0x60
00004540: SWAP1
00004541: SWAP2
00004542: ADD
00004543: MSTORE
00004544: SWAP3
00004545: SWAP2
00004546: POP
00004547: POP
00004548: JUMP
00004549: JUMPDEST
0000454a: DUP5
0000454b: DUP2
0000454c: MSTORE
0000454d: PUSH1 0x60
0000454f: PUSH1 0x20
00004551: DUP1
00004552: DUP4
00004553: ADD
00004554: DUP3
00004555: SWAP1
00004556: MSTORE
00004557: SWAP1
00004558: DUP3
00004559: ADD
0000455a: DUP5
0000455b: SWAP1
0000455c: MSTORE
0000455d: PUSH0
0000455e: SWAP1
0000455f: DUP6
00004560: SWAP1
00004561: PUSH1 0x80
00004563: DUP5
00004564: ADD
00004565: DUP4
00004566: JUMPDEST
00004567: DUP8
00004568: DUP2
00004569: LT
0000456a: ISZERO
0000456b: PUSH2 0x4594
0000456e: JUMPI
0000456f: DUP4
00004570: CALLDATALOAD
00004571: PUSH2 0x4579
00004574: DUP2
00004575: PUSH2 0x36c3
00004578: JUMP
00004579: JUMPDEST
0000457a: PUSH1 0x01
0000457c: PUSH1 0x01
0000457e: PUSH1 0xa0
00004580: SHL
00004581: SUB
00004582: AND
00004583: DUP3
00004584: MSTORE
00004585: SWAP3
00004586: DUP3
00004587: ADD
00004588: SWAP3
00004589: SWAP1
0000458a: DUP3
0000458b: ADD
0000458c: SWAP1
0000458d: PUSH1 0x01
0000458f: ADD
00004590: PUSH2 0x4566
00004593: JUMP
00004594: JUMPDEST
00004595: POP
00004596: DUP1
00004597: SWAP4
00004598: POP
00004599: POP
0000459a: POP
0000459b: POP
0000459c: DUP3
0000459d: ISZERO
0000459e: ISZERO
0000459f: PUSH1 0x40
000045a1: DUP4
000045a2: ADD
000045a3: MSTORE
000045a4: SWAP6
000045a5: SWAP5
000045a6: POP
000045a7: POP
000045a8: POP
000045a9: POP
000045aa: POP
000045ab: JUMP
000045ac: JUMPDEST
000045ad: DUP6
000045ae: DUP2
000045af: MSTORE
000045b0: PUSH1 0x80
000045b2: PUSH1 0x20
000045b4: DUP3
000045b5: ADD
000045b6: MSTORE
000045b7: PUSH0
000045b8: PUSH2 0x45c5
000045bb: PUSH1 0x80
000045bd: DUP4
000045be: ADD
000045bf: DUP7
000045c0: DUP9
000045c1: PUSH2 0x3efc
000045c4: JUMP
000045c5: JUMPDEST
000045c6: PUSH1 0x40
000045c8: DUP4
000045c9: ADD
000045ca: SWAP5
000045cb: SWAP1
000045cc: SWAP5
000045cd: MSTORE
000045ce: POP
000045cf: SWAP1
000045d0: ISZERO
000045d1: ISZERO
000045d2: PUSH1 0x60
000045d4: SWAP1
000045d5: SWAP2
000045d6: ADD
000045d7: MSTORE
000045d8: SWAP4
000045d9: SWAP3
000045da: POP
000045db: POP
000045dc: POP
000045dd: JUMP
000045de: JUMPDEST
000045df: DUP9
000045e0: DUP2
000045e1: MSTORE
000045e2: DUP8
000045e3: PUSH1 0x20
000045e5: DUP3
000045e6: ADD
000045e7: MSTORE
000045e8: DUP7
000045e9: PUSH1 0x40
000045eb: DUP3
000045ec: ADD
000045ed: MSTORE
000045ee: PUSH0
000045ef: PUSH1 0x01
000045f1: DUP1
000045f2: PUSH1 0xa0
000045f4: SHL
000045f5: SUB
000045f6: DUP1
000045f7: DUP9
000045f8: AND
000045f9: PUSH1 0x60
000045fb: DUP5
000045fc: ADD
000045fd: MSTORE
000045fe: DUP1
000045ff: DUP8
00004600: AND
00004601: PUSH1 0x80
00004603: DUP5
00004604: ADD
00004605: MSTORE
00004606: POP
00004607: DUP5
00004608: PUSH1 0xa0
0000460a: DUP4
0000460b: ADD
0000460c: MSTORE
0000460d: PUSH1 0xe0
0000460f: PUSH1 0xc0
00004611: DUP4
00004612: ADD
00004613: MSTORE
00004614: PUSH2 0x4621
00004617: PUSH1 0xe0
00004619: DUP4
0000461a: ADD
0000461b: DUP5
0000461c: DUP7
0000461d: PUSH2 0x3f24
00004620: JUMP
00004621: JUMPDEST
00004622: SWAP11
00004623: SWAP10
00004624: POP
00004625: POP
00004626: POP
00004627: POP
00004628: POP
00004629: POP
0000462a: POP
0000462b: POP
0000462c: POP
0000462d: POP
0000462e: JUMP
0000462f: JUMPDEST
00004630: PUSH6 0xffffffffffff
00004637: DUP2
00004638: DUP2
00004639: AND
0000463a: DUP4
0000463b: DUP3
0000463c: AND
0000463d: ADD
0000463e: SWAP1
0000463f: DUP1
00004640: DUP3
00004641: GT
00004642: ISZERO
00004643: PUSH2 0x32d7
00004646: JUMPI
00004647: PUSH2 0x32d7
0000464a: PUSH2 0x437a
0000464d: JUMP
0000464e: JUMPDEST
0000464f: PUSH6 0xffffffffffff
00004656: DUP3
00004657: DUP2
00004658: AND
00004659: DUP3
0000465a: DUP3
0000465b: AND
0000465c: SUB
0000465d: SWAP1
0000465e: DUP1
0000465f: DUP3
00004660: GT
00004661: ISZERO
00004662: PUSH2 0x32d7
00004665: JUMPI
00004666: PUSH2 0x32d7
00004669: PUSH2 0x437a
0000466c: JUMP
0000466d: INVALID
0000466e: PUSH18 0x840dc4906352362b0cdaf79870196c8e42ac
00004681: UNKNOWN(0xAF)
00004682: UNKNOWN(0xAD)
00004683: UNKNOWN(0xE7)
00004684: UNKNOWN(0x2D)
00004685: TSTORE
00004686: GAS
00004687: PUSH14 0x59291253ceb1eef3dac4538c82c8
00004696: UNKNOWN(0xAC)
00004697: UNKNOWN(0xE4)
00004698: MOD
00004699: GASPRICE
0000469a: UNKNOWN(0xB0)
0000469b: UNKNOWN(0xAC)
0000469c: UNKNOWN(0xD2)
0000469d: UNKNOWN(0xD1)
0000469e: TLOAD
0000469f: UNKNOWN(0xDB)
000046a0: PC
000046a1: DUP4
000046a2: UNKNOWN(0xAA)
000046a3: SAR
000046a4: SELFDESTRUCT
000046a5: PUSH29 0x2673abb3d869840002dd7bc7dec4dceedda775e58dd541e08a116c6c53
000046c3: DUP2
000046c4: TLOAD
000046c5: SIGNEXTEND
000046c6: UNKNOWN(0xD0)
000046c7: UNKNOWN(0x28)
000046c8: NOT
000046c9: UNKNOWN(0x2F)
000046ca: PUSH28 0x6268009b779b17422d0df92223018b32b4d1fa46e071723d6817e248
000046e7: PUSH14 0x003becc55f00eef3dac4538c82c8
000046f6: UNKNOWN(0xAC)
000046f7: UNKNOWN(0xE4)
000046f8: MOD
000046f9: GASPRICE
000046fa: UNKNOWN(0xB0)
000046fb: UNKNOWN(0xAC)
000046fc: UNKNOWN(0xD2)
000046fd: UNKNOWN(0xD1)
000046fe: TLOAD
000046ff: UNKNOWN(0xDB)
00004700: PC
00004701: DUP4
00004702: UNKNOWN(0xAA)
00004703: SAR
00004704: SELFDESTRUCT
00004705: PUSH29 0x2673abb3d8698401a2646970667358221220dec0387669db4d061a7ed5
00004723: PUSH11 0xf5cce77261f93f23853170
0000472f: CREATE2
00004730: UNKNOWN(0xA7)
00004731: UNKNOWN(0xB4)
00004732: UNKNOWN(0xD9)
00004733: UNKNOWN(0xFB)
00004734: UNKNOWN(0xAC)
00004735: UNKNOWN(0xCD)
00004736: UNKNOWN(0xAD)
00004737: LOG3
00004738: PUSH5 0x736f6c6343
0000473e: STOP
0000473f: ADDMOD
00004740: NOT
00004741: STOP
00004742: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 yes yes
view
trace_id: 0x17d26b29f7349c2ac14808319c083a2e1e39dc94d7b83c93d5bde7d419fd2bbc
call_targets: 0x3b86e38dd1a85fa181508f4b1a24f358dc9d2a9e, 0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 15,
    "trace_id": "0x17d26b29f7349c2ac14808319c083a2e1e39dc94d7b83c93d5bde7d419fd2bbc",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x3b86e38dd1a85fa181508f4b1a24f358dc9d2a9e",
        "0x583c299ba5c6cad55fdd89a3534f14fe8b4c90d6"
    ],
    "matched_probe": null,
    "target_varies": true,
    "classification": "target_varies"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xeb2b01c3",
            "selector": "0xeb2b01c3",
            "calldata_variants": [
                "0xeb2b01c3",
                "0xeb2b01c30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7ab086e",
            "selector": "0xf7ab086e",
            "calldata_variants": [
                "0xf7ab086e",
                "0xf7ab086e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfde90428",
            "selector": "0xfde90428",
            "calldata_variants": [
                "0xfde90428",
                "0xfde904280000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe196cf8",
            "selector": "0xfe196cf8",
            "calldata_variants": [
                "0xfe196cf8",
                "0xfe196cf80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd602b9fd",
            "selector": "0xd602b9fd",
            "calldata_variants": [
                "0xd602b9fd",
                "0xd602b9fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd65ea232",
            "selector": "0xd65ea232",
            "calldata_variants": [
                "0xd65ea232",
                "0xd65ea2320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xddc63262",
            "selector": "0xddc63262",
            "calldata_variants": [
                "0xddc63262",
                "0xddc632620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe7e54748",
            "selector": "0xe7e54748",
            "calldata_variants": [
                "0xe7e54748",
                "0xe7e547480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3340,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 3427,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 3636,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 20,
    "untrusted_delegatecall_count": 20
}
high other cast SELFDESTRUCT present 85 no
view
evidence_json
{
    "notes": "selfdestruct can remove contract code and send funds; review reachability",
    "selfdestruct_count": 2
}
high other detector SELFDESTRUCT reachable 65 no no
view
trace_id: 0x478d3f8b9ed1e489a08a3e079ad84f8daaa3a2aa61327b457e199033c3168084
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0x478d3f8b9ed1e489a08a3e079ad84f8daaa3a2aa61327b457e199033c3168084",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xeb2b01c3",
            "selector": "0xeb2b01c3",
            "calldata_variants": [
                "0xeb2b01c3",
                "0xeb2b01c30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7ab086e",
            "selector": "0xf7ab086e",
            "calldata_variants": [
                "0xf7ab086e",
                "0xf7ab086e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfde90428",
            "selector": "0xfde90428",
            "calldata_variants": [
                "0xfde90428",
                "0xfde904280000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe196cf8",
            "selector": "0xfe196cf8",
            "calldata_variants": [
                "0xfe196cf8",
                "0xfe196cf80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd602b9fd",
            "selector": "0xd602b9fd",
            "calldata_variants": [
                "0xd602b9fd",
                "0xd602b9fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd65ea232",
            "selector": "0xd65ea232",
            "calldata_variants": [
                "0xd65ea232",
                "0xd65ea2320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xddc63262",
            "selector": "0xddc63262",
            "calldata_variants": [
                "0xddc63262",
                "0xddc632620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe7e54748",
            "selector": "0xe7e54748",
            "calldata_variants": [
                "0xe7e54748",
                "0xe7e547480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [],
    "selfdestruct_count": 2
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x478d3f8b9ed1e489a08a3e079ad84f8daaa3a2aa61327b457e199033c3168084
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0x478d3f8b9ed1e489a08a3e079ad84f8daaa3a2aa61327b457e199033c3168084",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xeb2b01c3",
            "selector": "0xeb2b01c3",
            "calldata_variants": [
                "0xeb2b01c3",
                "0xeb2b01c30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7ab086e",
            "selector": "0xf7ab086e",
            "calldata_variants": [
                "0xf7ab086e",
                "0xf7ab086e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfde90428",
            "selector": "0xfde90428",
            "calldata_variants": [
                "0xfde90428",
                "0xfde904280000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe196cf8",
            "selector": "0xfe196cf8",
            "calldata_variants": [
                "0xfe196cf8",
                "0xfe196cf80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd602b9fd",
            "selector": "0xd602b9fd",
            "calldata_variants": [
                "0xd602b9fd",
                "0xd602b9fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd65ea232",
            "selector": "0xd65ea232",
            "calldata_variants": [
                "0xd65ea232",
                "0xd65ea2320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xddc63262",
            "selector": "0xddc63262",
            "calldata_variants": [
                "0xddc63262",
                "0xddc632620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe7e54748",
            "selector": "0xe7e54748",
            "calldata_variants": [
                "0xe7e54748",
                "0xe7e547480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 20
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 0,
    "create2_count": 1
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 14
}