diff --git a/.github/scripts/slither-comment.js b/.github/scripts/slither-comment.js new file mode 100644 index 0000000..a1d35db --- /dev/null +++ b/.github/scripts/slither-comment.js @@ -0,0 +1,31 @@ +// Ref: https://github.com/marketplace/actions/slither-action#example-workflow-markdown-report + +module.exports = async ({ github, context, header, body }) => { + const collapse_details = '
Click me to view the full report '; + const close_details = '
'; + + const comment = [header, collapse_details, body, close_details].join("\n"); + + const { data: comments } = await github.rest.issues.listComments({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.payload.number, + }); + + const botComment = comments.find( + (comment) => + // github-actions bot user + comment.user.id === 41898282 && comment.body.startsWith(header) + ); + + const commentFn = botComment ? "updateComment" : "createComment"; + + await github.rest.issues[commentFn]({ + owner: context.repo.owner, + repo: context.repo.repo, + body: comment, + ...(botComment + ? { comment_id: botComment.id } + : { issue_number: context.payload.number }), + }); + }; \ No newline at end of file diff --git a/.github/workflows/foundry.yml b/.github/workflows/build.yml similarity index 52% rename from .github/workflows/foundry.yml rename to .github/workflows/build.yml index 5a7cf14..46f7955 100644 --- a/.github/workflows/foundry.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Foundry CI/CD +name: Foundry Build CI/CD on: push: @@ -9,15 +9,7 @@ on: workflow_dispatch: env: - FOUNDRY_PROFILE: ci - FORK_URL: https://rpc.goerli.linea.build - ENCLAVE_IDENTITY_HELPER: "0x4DfeFC7d9b139D5DD5837075FFd7CB340994d6bc" - FMSPC_TCB_HELPER: "0xd7e1EE3d83baa20eA9ee5c42BcCCEDA411E2F02F" - X509_CRL_HELPER: "0x74a4A96787D23058A67d9799F4Ac62379a1a3136" - X509_HELPER: "0xaa27A6a77D6F23b0346863E732beF8D0DaF7c61E" - ENCLAVE_IDENTITY_DAO_PORTAL: "0xeAce48c11258Ec79c941Daee80343298dC084Be3" - FMSPC_TCB_DAO_PORTAL: "0x1930D878D4BAbb10b2C20F65D84a54fdf709959A" - PCS_DAO_PORTAL: "0xC4838158D29C7DB6D344dDB4C082dB0f30C8073e" + DCAP_IMAGE_ID: "0x4052beb38db7869b15596d53c2d5c02c9307faffca9215e69b0f0d0e1812a6c2" jobs: check: @@ -45,4 +37,7 @@ jobs: - name: Run Forge tests run: | forge test -vvv - id: test \ No newline at end of file + id: test + + - name: Run snapshot and Generate Summary + run: NO_COLOR=1 forge snapshot --gas-report >> $GITHUB_STEP_SUMMARY \ No newline at end of file diff --git a/.github/workflows/slither.yml b/.github/workflows/slither.yml new file mode 100644 index 0000000..72e9875 --- /dev/null +++ b/.github/workflows/slither.yml @@ -0,0 +1,42 @@ +name: Slither Static Analysis + +# Runs only on PR merging to main +on: + pull_request: + branches: [ main ] + types: [ opened, reopened, synchronize, ready_for_review ] + + workflow_dispatch: + +jobs: + analyze: + runs-on: ubuntu-latest + + # Do not run when PR is still a draft + if: ${{ !github.event.pull_request.draft }} + + env: + commit_url: ${{ github.server_url }}/${{ github.repository }}/blob/${{ github.event.pull_request.head.sha }}/ + + steps: + - uses: actions/checkout@v3 + + - name: Run Slither + uses: crytic/slither-action@v0.4.0 + id: slither + with: + fail-on: none + slither-args: --checklist --show-ignored-findings --markdown-root ${{ env.commit_url }} + + + - name: Create/update checklist as PR comment + uses: actions/github-script@v7 + if: github.event_name == 'pull_request' + env: + REPORT: ${{ steps.slither.outputs.stdout }} + with: + script: | + const script = require('.github/scripts/slither-comment') + const header = '# Slither report' + const body = process.env.REPORT + await script({ github, context, header, body }) \ No newline at end of file diff --git a/README.md b/README.md index 4a1bfa8..24511b0 100644 --- a/README.md +++ b/README.md @@ -163,13 +163,24 @@ forge script AttestationScript --rpc-url $RPC_URL --broadcast -vvvv --sig "confi The ImageID currently used for the DCAP RiscZero Guest Program is `4052beb38db7869b15596d53c2d5c02c9307faffca9215e69b0f0d0e1812a6c2`. +##### Testnet + +| Contract | Network | Address | +| --- | --- | --- | +| `PCCSRouter.sol` | Automata Testnet | 0xbFDeE7A1f1bFA2267cD0DA50BE76D8c4a3864543 | +| | Ethereum Holesky | 0xdE5e69A2ca2556fe46883d754d987703bF28Cc51 | +| `AutomataDcapAttestation.sol` | Automata Testnet | 0xefE368b17D137E86298eec8EbC5502fb56d27832 | +| | Ethereum Holesky | 0x133303659F51d75ED216FD98a0B70CbCD75339b2 | +| `V3QuoteVerifier.sol` | Automata Testnet | 0x67042d171b8b7da1a4a98df787bdce79190dac3c | +| | Ethereum Holesky | 0x12d7d59Ae1e4dbF83b08C82958Ac3FcEB84fB164 | +| `V4QuoteVerifier.sol` | Automata Testnet | 0x921b8f6ec83e405b715111ec1ae8b54a3ea063eb | +| | Ethereum Holesky | 0x3Cb24c454a29e796edF47a96dF32DD1855058258 | + +##### Mainnet + | Contract | Network | Address | | --- | --- | --- | -| `PCCSRouter.sol` | testnet | 0xbFDeE7A1f1bFA2267cD0DA50BE76D8c4a3864543 | -| | mainnet (preview) | 0xb76834729717868fa203b9D90fc88F859A4E594D | -| `AutomataDcapAttestation.sol` | testnet | 0xefE368b17D137E86298eec8EbC5502fb56d27832 | -| | mainnet (preview) | 0xE26E11B257856B0bEBc4C759aaBDdea72B64351F | -| `V3QuoteVerifier.sol` | testnet | 0x67042d171b8b7da1a4a98df787bdce79190dac3c | -| | mainnet (preview) | 0xF38a49322cAA0Ead71D4B1cF2afBb6d02BE5FC96 | -| `V4QuoteVerifier.sol` | testnet | 0x921b8f6ec83e405b715111ec1ae8b54a3ea063eb | -| | mainnet (preview) | 0xfF47ecA64898692a86926CDDa794807be3f6567D | +| `PCCSRouter.sol` | Automata Mainnet (preview) | 0xb76834729717868fa203b9D90fc88F859A4E594D | +| `AutomataDcapAttestation.sol` | Automata Mainnet (preview) | 0xE26E11B257856B0bEBc4C759aaBDdea72B64351F | +| `V3QuoteVerifier.sol` | Automata Mainnet (preview) | 0xF38a49322cAA0Ead71D4B1cF2afBb6d02BE5FC96 | +| `V4QuoteVerifier.sol` | Automata Mainnet (preview) | 0xfF47ecA64898692a86926CDDa794807be3f6567D | diff --git a/broadcast/AttestationScript.s.sol/17000/configVerifier-latest.json b/broadcast/AttestationScript.s.sol/17000/configVerifier-latest.json new file mode 100644 index 0000000..136c0b9 --- /dev/null +++ b/broadcast/AttestationScript.s.sol/17000/configVerifier-latest.json @@ -0,0 +1,49 @@ +{ + "transactions": [ + { + "hash": "0xd90eb00c1b505c7d7fc5b7783ed820053ed050c123fa45c98711b5406a3858b9", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x133303659f51d75ed216fd98a0b70cbcd75339b2", + "function": "setQuoteVerifier(address)", + "arguments": [ + "0x3Cb24c454a29e796edF47a96dF32DD1855058258" + ], + "transaction": { + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": "0x133303659f51d75ed216fd98a0b70cbcd75339b2", + "gas": "0x109d3", + "value": "0x0", + "input": "0xce3fe7ee0000000000000000000000003cb24c454a29e796edf47a96df32dd1855058258", + "nonce": "0x16", + "chainId": "0x4268" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1d3bc7", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xd90eb00c1b505c7d7fc5b7783ed820053ed050c123fa45c98711b5406a3858b9", + "transactionIndex": "0xe", + "blockHash": "0x4e7026244e10e953a30e8dae33773db15ae8247d3fc6c0c0e709a0947aa2d574", + "blockNumber": "0x24b6e2", + "gasUsed": "0xc074", + "effectiveGasPrice": "0x5c81a45", + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": "0x133303659f51d75ed216fd98a0b70cbcd75339b2", + "contractAddress": null + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1727270560, + "chain": 17000, + "commit": "7c32bb8" +} \ No newline at end of file diff --git a/broadcast/AttestationScript.s.sol/17000/deployEntrypoint-latest.json b/broadcast/AttestationScript.s.sol/17000/deployEntrypoint-latest.json new file mode 100644 index 0000000..4b91e79 --- /dev/null +++ b/broadcast/AttestationScript.s.sol/17000/deployEntrypoint-latest.json @@ -0,0 +1,65 @@ +{ + "transactions": [ + { + "hash": "0xa9bcce54a587dff5ee6f3dffed68ab81d73e4bb7650a42aea70b8212e8028510", + "transactionType": "CREATE", + "contractName": "AutomataDcapAttestation", + "contractAddress": "0x133303659f51d75ed216fd98a0b70cbcd75339b2", + "function": null, + "arguments": [ + "0xf70aBAb028Eb6F4100A24B203E113D94E87DE93C", + "0x4052beb38db7869b15596d53c2d5c02c9307faffca9215e69b0f0d0e1812a6c2" + ], + "transaction": { + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "gas": "0xfc6f9", + "value": "0x0", + "input": "0x60803460a857601f610ce738819003918201601f19168301916001600160401b0383118484101760ad57808492604094855283398101031260a85780516001600160a01b038116919082900360a857602001519033638b78c6d819553360007f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a3600080546001600160a01b031916919091179055600155604051610c2390816100c48239f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608080604052600436101561001357600080fd5b60003560e01c90816304daae79146104a95750806313f19c801461044c578063256929621461040057806338d8480a146103b257806354d1f13d1461036a578063715018a61461031e57806386b5dec9146102de5780638da5cb5b146102b1578063cb7f894414610268578063ce3fe7ee1461019d578063eec47a181461017f578063f04e283e1461012f578063f2fde38b146100f15763fee81cf4146100b957600080fd5b346100ec5760203660031901126100ec576100d2610553565b63389a75e1600c52600052602080600c2054604051908152f35b600080fd5b60203660031901126100ec57610105610553565b61010d610aa0565b8060601b156101215761011f90610abd565b005b637448fbae6000526004601cfd5b60203660031901126100ec57610143610553565b61014b610aa0565b63389a75e1600c52806000526020600c20908154421161017157600061011f9255610abd565b636f5e88186000526004601cfd5b346100ec5760003660031901126100ec576020600154604051908152f35b346100ec5760203660031901126100ec576101b6610553565b6101be610aa0565b604051630207783760e01b81526001600160a01b039190911690602081600481855afa90811561025c57600091610216575b5061ffff16600090815260026020526040902080546001600160a01b0319169091179055005b6020813d602011610254575b8161022f6020938361059b565b8101031261025057519061ffff8216820361024d575061ffff6101f0565b80fd5b5080fd5b3d9150610222565b6040513d6000823e3d90fd5b346100ec5760403660031901126100ec57610281610553565b610289610aa0565b600080546001600160a01b0319166001600160a01b0392909216919091179055602435600155005b346100ec5760003660031901126100ec57638b78c6d819546040516001600160a01b039091168152602090f35b346100ec5760203660031901126100ec5760043561ffff81168091036100ec576000526002602052602060018060a01b0360406000205416604051908152f35b60003660031901126100ec57610332610aa0565b6000638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a36000638b78c6d81955005b60003660031901126100ec5763389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2005b346100ec5760203660031901126100ec5760043567ffffffffffffffff81116100ec576103e66103ec9136906004016104cd565b90610808565b906103fc6040519283928361051e565b0390f35b60003660031901126100ec5763389a75e1600c52336000526202a30042016020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a2005b346100ec5760403660031901126100ec5760043567ffffffffffffffff81116100ec5761047d9036906004016104cd565b6024359167ffffffffffffffff83116100ec576104a16103ec9336906004016104cd565b9290916106a8565b346100ec5760003660031901126100ec576000546001600160a01b03168152602090f35b9181601f840112156100ec5782359167ffffffffffffffff83116100ec57602083818601950101116100ec57565b60005b83811061050e5750506000910152565b81810151838201526020016104fe565b9091606092151582526040602083015261054781518092816040860152602086860191016104fb565b601f01601f1916010190565b600435906001600160a01b03821682036100ec57565b60e0810190811067ffffffffffffffff82111761058557604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761058557604052565b908060209392818452848401376000828201840152601f01601f1916010190565b67ffffffffffffffff811161058557601f01601f191660200190565b6040519061060960408361059b565b601982527f556e737570706f727465642071756f74652076657273696f6e000000000000006020830152565b91906040838203126100ec57825180151581036100ec579260208101519067ffffffffffffffff82116100ec570181601f820112156100ec578051610679816105de565b92610687604051948561059b565b818452602082840101116100ec576106a591602080850191016104fb565b90565b919260009360018060a01b0385541690600154926020876040518789823780888101838152039060025afa156107fd57865193833b156107f9579187939161070f936040519687958694859463ab750e7560e01b86526060600487015260648601916105bd565b916024840152604483015203915afa80156107ee576107da575b50806004116107d65760028281013560f01c845260205260408320546001600160a01b03169081156107ca579183916107809360405180958194829363d9ed324f60e01b84526020600485015260248401916105bd565b03915afa9081156107bf57828092610799575b50509091565b9091506107b892503d8091833e6107b0818361059b565b810190610635565b3880610793565b6040513d84823e3d90fd5b505050906106a56105fa565b8280fd5b836107e79194929461059b565b9138610729565b6040513d86823e3d90fd5b8780fd5b6040513d88823e3d90fd5b90600060c060405161081981610569565b8281528260208201528260408201528260608201528260808201528260a08201520152806004116100ec576002820180356001600160f01b03191690600a83106100ec57600884019061ffff60f01b8235169484600c116100ec57600a8101356001600160f01b03191691601c86106100ec57856002116100ec5761089e60026105de565b906108ac604051928361059b565b6002825236106100ec576108d181600284602061ffff95013760006022820152610b3f565b1692856008116100ec576108e560046105de565b906108f3604051928361059b565b6004825236106100ec5760048083016020830137600060248201526001600160e01b03199061092190610b3f565b60e01b1695856030116100ec576040519161093b83610569565b8483526020830195865260408301978852606083019182526080830193845260a08301966fffffffffffffffffffffffffffffffff19600c83013516885260c08401956bffffffffffffffffffffffff19601c840135168752600052600260205260018060a01b0360406000205416958615610a8957604051633c52544560e21b8152945161ffff16600486015296516001600160f01b0319908116602486015298516001600160e01b03191660448501529151881660648401529251909616608482015293516fffffffffffffffffffffffffffffffff191660a485015291516bffffffffffffffffffffffff191660c484015261010060e484015291926000928492909183918291610a5591610104840191906105bd565b03915afa801561025c57600091600091610a6e57509091565b9050610a8591503d806000833e6107b0818361059b565b9091565b50505050505050505050610a9b6105fa565b600091565b638b78c6d819543303610aaf57565b6382b429006000526004601cfd5b60018060a01b031680638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3638b78c6d81955565b81810292918115918404141715610b0e57565b634e487b7160e01b600052601160045260246000fd5b603f8111610b0e5760100a90565b91908201809211610b0e57565b60009190825b8151841015610be85781840160200151600090600186901b6001600160ff1b0387168703610bd457610b85610b7982610b24565b600f8460f81c16610afb565b9260018201809211610bc05750610bb892610bb260019593610ba9610bb294610b24565b9060fc1c610afb565b90610b32565b930192610b45565b634e487b7160e01b81526011600452602490fd5b634e487b7160e01b83526011600452602483fd5b92505056fea2646970667358221220071c10cf8b0e0563544bbed0ec5bf442b55047e10260aace5d1f511e6974195364736f6c634300081b0033000000000000000000000000f70abab028eb6f4100a24b203e113d94e87de93c4052beb38db7869b15596d53c2d5c02c9307faffca9215e69b0f0d0e1812a6c2", + "nonce": "0x12", + "chainId": "0x4268" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x296421", + "logs": [ + { + "address": "0x133303659f51d75ed216fd98a0b70cbcd75339b2", + "topics": [ + "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000dc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc" + ], + "data": "0x", + "blockHash": "0x3d7448ba7101c5b14d7efffad12211a42969b71acfd73d05fcc6ce03c1cd4f29", + "blockNumber": "0x24b6c7", + "transactionHash": "0xa9bcce54a587dff5ee6f3dffed68ab81d73e4bb7650a42aea70b8212e8028510", + "transactionIndex": "0x13", + "logIndex": "0x1c", + "removed": false + } + ], + "logsBloom": "0x00004000800000000000000000000000000000000000000000800000000000000080000000001000000000000000000000000800000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xa9bcce54a587dff5ee6f3dffed68ab81d73e4bb7650a42aea70b8212e8028510", + "transactionIndex": "0x13", + "blockHash": "0x3d7448ba7101c5b14d7efffad12211a42969b71acfd73d05fcc6ce03c1cd4f29", + "blockNumber": "0x24b6c7", + "gasUsed": "0xc23bb", + "effectiveGasPrice": "0x5f5e105", + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": null, + "contractAddress": "0x133303659f51d75ed216fd98a0b70cbcd75339b2" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1727270133, + "chain": 17000, + "commit": "7c32bb8" +} \ No newline at end of file diff --git a/broadcast/AttestationScript.s.sol/65536/configVerifier-latest.json b/broadcast/AttestationScript.s.sol/65536/configVerifier-latest.json new file mode 100644 index 0000000..eef0738 --- /dev/null +++ b/broadcast/AttestationScript.s.sol/65536/configVerifier-latest.json @@ -0,0 +1,55 @@ +{ + "transactions": [ + { + "hash": "0x83e5aeb4d2dad352ba250c6b2ead2378204d40b8c39360b02d25cf8643320776", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0xe26e11b257856b0bebc4c759aabddea72b64351f", + "function": "setQuoteVerifier(address)", + "arguments": [ + "0xfF47ecA64898692a86926CDDa794807be3f6567D" + ], + "transaction": { + "from": "0x427e03845e6187ec01260a0fb501ab0908ec42b5", + "to": "0xe26e11b257856b0bebc4c759aabddea72b64351f", + "gas": "0x109ff", + "value": "0x0", + "input": "0xce3fe7ee000000000000000000000000ff47eca64898692a86926cdda794807be3f6567d", + "nonce": "0x10", + "chainId": "0x10000" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x285402", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x83e5aeb4d2dad352ba250c6b2ead2378204d40b8c39360b02d25cf8643320776", + "transactionIndex": "0x2", + "blockHash": "0x4f283d3074538027fc4dfede2f5cdb3c9674b56b2354010a8696254f5772d496", + "blockNumber": "0x1142ee", + "gasUsed": "0xc094", + "effectiveGasPrice": "0xb2d05efd", + "from": "0x427e03845e6187ec01260a0fb501ab0908ec42b5", + "to": "0xe26e11b257856b0bebc4c759aabddea72b64351f", + "contractAddress": null, + "l1BaseFeeScalar": "0x3567e00", + "l1BlobBaseFee": "0x1", + "l1BlobBaseFeeScalar": "0x0", + "l1Fee": "0x5556106db800", + "l1GasPrice": "0x3e6ad5e4", + "l1GasUsed": "0x640" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1723445560, + "chain": 65536, + "commit": "ed37ade" +} \ No newline at end of file diff --git a/broadcast/DeployRouter.s.sol/17000/run-latest.json b/broadcast/DeployRouter.s.sol/17000/run-latest.json new file mode 100644 index 0000000..8ed772f --- /dev/null +++ b/broadcast/DeployRouter.s.sol/17000/run-latest.json @@ -0,0 +1,69 @@ +{ + "transactions": [ + { + "hash": "0x94475c6a65ead1e5534470fad741f9e39d352378bbd598d76004d86dca39611c", + "transactionType": "CREATE", + "contractName": "PCCSRouter", + "contractAddress": "0xde5e69a2ca2556fe46883d754d987703bf28cc51", + "function": null, + "arguments": [ + "0x9f4b0fB3A95072bD133082e9683A3536669EFE07", + "0xaB5074445E5ae3C650553d5a7560B3A7121635B9", + "0x66FdB4E72d2F4a7e2081bf83F1FfACC9bbCb384b", + "0x5B2d7781E3c44966769484daBCdc435EFD281c34", + "0xDe20629a87C371668bB371ef1d77D9D167E52021", + "0x3ACBfad7460e2fae32A31f863e1A38F7a002cEA8" + ], + "transaction": { + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "gas": "0x23e435", + "value": "0x0", + "input": "0x60803461013457601f611e2a38819003918201601f19168301916001600160401b038311848410176101395780849260c094604052833981010312610134576100478161014f565b906100546020820161014f565b6100606040830161014f565b61006c6060840161014f565b9161008560a061007e6080870161014f565b950161014f565b9433638b78c6d819553360007f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a3600080546001600160a01b03199081166001600160a01b0393841617909155600180548216938316939093179092556002805483169382169390931790925560038054821693831693909317909255600480548316938216939093179092556005805490911692909116919091179055604051611cc690816101648239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b03821682036101345756fe608080604052600436101561001357600080fd5b60003560e01c90816301627c15146114d4575080631a60341c1461149a578063256929621461144e5780633fcb603b146114255780634a27215b146113fc57806354d1f13d146113b457806367ecb1391461138b578063715018a61461133f578063812df395146112335780638da5cb5b14611206578063943374c9146111cc57806398e98ffe1461107a578063a498226f14610e9b578063b9f1b94f146109a2578063c64c7b90146108f0578063ccbfa6481461084d578063d137d4a314610824578063e69f638314610200578063e99bba53146101d7578063f04e283e14610187578063f2fde38b146101495763fee81cf41461011157600080fd5b346101445760203660031901126101445761012a61155c565b63389a75e1600c52600052602080600c2054604051908152f35b600080fd5b60203660031901126101445761015d61155c565b610165611ae8565b8060601b156101795761017790611b05565b005b637448fbae6000526004601cfd5b60203660031901126101445761019b61155c565b6101a3611ae8565b63389a75e1600c52806000526020600c2090815442116101c95760006101779255611b05565b636f5e88186000526004601cfd5b34610144576000366003190112610144576004546040516001600160a01b039091168152602090f35b3461014457604036600319011261014457600435600281108015610144576024359065ffffffffffff60d01b821680920361014457600060408051610244816116df565b606081528260208201520152600091604051602081019160ff60f81b8660f81b1683526021820152600360e01b6027820152600b8152610285602b82611731565b519020600154604051633275577960e21b815260048101929092526001600160a01b0316602082602481845afa9182156108195784926107e1575b50816102f857505063eb9cf5a360e01b8252156102e4576044916004526003602452fd5b634e487b7160e01b81526021600452602490fd5b909150826001926103076117e9565b50602460405180948193635a0a685960e11b835260048301525afa9081156107d65783916107b4575b50805181019260208401936101a0838203126107b0576103538560208501611859565b506101208301516001600160401b0381116107ac578301926060848303126107ac5760405190610382826116df565b60208501516001600160401b0381116107a8578760206103a492880101611752565b82526103c560606103b760408801611ad3565b966020850197885201611ad3565b90604083019182526101408101516001600160401b0381116107a45781019780603f8a0112156107a4576020890151986103fe8a61190c565b9561040c6040519788611731565b8a87526020870190602080839d60051b85010101928484116107a05760408101925b84841061061e5750505050506101608201516001600160401b03811161061a5781602061045d92850101611997565b916101808101516001600160401b0381116106165782602061048192840101611752565b506101a0810151906001600160401b03821161061657926104b46104e49360206104cd94604098979e9c9b9e0101611752565b5084519915158a52608060208b015260808a01906115f9565b93888503848a01525160608552606085019061151b565b946001600160401b0360c01b90511660208401526001600160401b0360c01b905116910152838203606085015251908181526020810160208360051b830101939580925b8484106105355786860387f35b9091929394601f198282030184528751608061059b61055d835160a0865260a086019061151b565b6001600160401b0360c01b60208501511660208601526001600160401b0360c01b60408501511660408601526060840151858203606087015261151b565b9101519160808183039101526020808351928381520192019084905b8082106105d65750505060209788019790959460010193019190610528565b9091926020606060019261060b6040885160ff81511684526001600160401b03868201511686850152015160408301906115d6565b0194019201906105b7565b8780fd5b8680fd5b83516001600160401b03811161079c578201602081019060a0908503601f19011261079c5760405190610650826116fa565b60208101516001600160401b0381116107985788602061067292840101611752565b825261068060408201611ad3565b602083015261069160608201611ad3565b604083015260808101516001600160401b038111610798578860206106b892840101611752565b606083015260a0810151906001600160401b0382116107985790602091010187601f820112156107945780516106ed8161190c565b916106fb6040519384611731565b818352602060608185019302820101908a821161079057602001915b81831061073457505050608082015281526020938401930161042e565b60606020848a0301126107905760405161074d816116df565b61075684611826565b815261076460208501611845565b60208201526040840151600881101561078d576040820152815260609290920191602001610717565b50505b8f80fd5b8c80fd5b8d80fd5b8b80fd5b8980fd5b8580fd5b8480fd5b8280fd5b5080fd5b6107d091503d8085833e6107c88183611731565b8101906117a3565b83610330565b6040513d85823e3d90fd5b9091506020813d602011610811575b816107fd60209383611731565b8101031261080d575190856102c0565b8380fd5b3d91506107f0565b6040513d86823e3d90fd5b34610144576000366003190112610144576003546040516001600160a01b039091168152602090f35b34610144576020366003190112610144576004356004811015610144576002546001600160a01b03169060009061088690829084611b43565b81929150602460405180958193635a0a685960e11b835260048301525afa9182156108e4576000926108c7575b506108c360405192839283611540565b0390f35b6108dd9192503d806000833e6107c88183611731565b90826108b3565b6040513d6000823e3d90fd5b34610144576020366003190112610144576004356004811015610144576002546001600160a01b03169060209061092a9060019084611b43565b8192915060246040518095819363bf721aaf60e01b835260048301525afa9182156108e45760009261096b575b506040805191151582526020820192909252f35b90916020823d60201161099a575b8161098660209383611731565b810103126109975750519082610957565b80fd5b3d9150610979565b34610144576040366003190112610144576004356003811080156101445760243560606101606040516109d4816116ad565b60008152600060208201526000604082015260008382015260006080820152600060a0820152600060c0820152600060e08201526000610100820152600061012082015260006101408201520152600091604051602081019085825283604082015260408152610a45606082611731565b5190208354604051635e3d471160e01b815260048101929092526001600160a01b031690602081602481855afa908115610e90578591610e5e575b5080610ab657505063549fd69560e11b835215610aa257604492600452602452fd5b634e487b7160e01b82526021600452602482fd5b8480600192602460405180968193635a0a685960e11b835260048301525afa928315610e51578193610e35575b50825183019260208401936060828203126107ac5760208201516001600160401b03811161080d5782016101808183031261080d5760405192610b25846116ad565b602082015160038110156107a4578452839190610b4460408301611834565b9760208401988952610b5860608401611845565b9860408501998a52610b6c60808501611845565b99606086019a8b52610b8060a08601611834565b60808701908152610b9360c08701611aa9565b9160a08801928352610ba760e08801611aa9565b9360c08901948552610bbc6101008901611abe565b9560e08a01968752610bd16101208a01611abe565b976101008b019889526101408a0151996101208c019a8b52610140610bf96101608301611923565b9c019b8c52610180810151906001600160401b0382116107905790602091010182601f82011215610dd757805190610c308261190c565b9d6040519e8f90610c419082611731565b8381526020019260600282016020019185831161078d57602001925b828410610ddb57505050506101608d019b8c5260408101516001600160401b038111610dd757826020610c9292840101611752565b506060810151906001600160401b038211610dd757610cb5929101602001611752565b506040602081519e8f901515815201526101c08d019a516003811015610dc35760408e01525163ffffffff90811660608e015290516001600160401b0390811660808e01528d511660a08d015290511660c08b0152516001600160e01b031990811660e08b0152905116610100890152516001600160801b0319908116610120890152905116610140870152516101608601525161ffff166101808086019190915290516101a085019190915280519182905283926101e0840192602090920191905b818110610d86575050500390f35b91935091602060606001926040875161ffff815116835284810151858401520151610db0816116a3565b6040820152019401910191849392610d78565b634e487b7160e01b8d52602160045260248dfd5b8e80fd5b60606020858403011261078d57604051610df4816116df565b610dfd85611923565b81526020850151602082015260408501516004811015610e2d576040820152815260609390930192602001610c5d565b505050508f80fd5b610e4a9193503d8085833e6107c88183611731565b9183610ae3565b50604051903d90823e3d90fd5b90506020813d602011610e88575b81610e7960209383611731565b810103126107a8575186610a80565b3d9150610e6c565b6040513d87823e3d90fd5b346101445760203660031901126101445760043565ffffffffffff60d01b8116809103610144576040516020810191600083526021820152600160e11b6027820152600b8152610eec602b82611731565b519020600154604051633275577960e21b815260048101929092526001600160a01b031690602081602481855afa9081156108e457600091611048575b5080610f4a5763eb9cf5a360e01b6000526000600452600260245260446000fd5b6000600191610f576117e9565b50602460405180958193635a0a685960e11b835260048301525afa9182156108e45760009261102d575b508151820191610160816020850194031261014457610fa38360208301611859565b506101208101516001600160401b03811161014457836020610fc792840101611997565b926101408201516001600160401b03811161014457816020610feb92850101611752565b50610160820151916001600160401b0383116101445761100e9201602001611752565b506108c3604051928392151583526040602084015260408301906115f9565b61104191923d8091833e6107c88183611731565b9082610f81565b906020823d602011611072575b8161106260209383611731565b8101031261099757505182610f29565b3d9150611055565b34610144576080366003190112610144576004356001600160401b038111610144576110aa903690600401611572565b6024356001600160401b038111610144576110c9903690600401611572565b9290916044356001600160401b038111610144576110eb903690600401611572565b906064356001600160401b0381116101445761110b903690600401611572565b919092600160a01b6001900360035416966040519889978897630f1f5c4560e21b895260048901608090526084890190611144926117c8565b9060031988830301602489015261115a926117c8565b90600319868303016044870152611170926117c8565b90600319848303016064850152611186926117c8565b03815a93600094fa9081156108e4576000916111b1575b50805115156108c360405192839283611540565b6111c691503d806000833e6107c88183611731565b8161119d565b34610144576020366003190112610144576004356004811015610144576002546001600160a01b03169060209061092a9060009084611b43565b3461014457600036600319011261014457638b78c6d819546040516001600160a01b039091168152602090f35b346101445760c03660031901126101445761124c61155c565b6024356001600160a01b03811690819003610144576044356001600160a01b03811690819003610144576064356001600160a01b0381169190829003610144576084356001600160a01b03811693908490036101445760a4356001600160a01b0381169590869003610144576112c0611ae8565b60018060a01b03166001600160601b0360a01b60005416176000556001600160601b0360a01b60015416176001556001600160601b0360a01b60025416176002556001600160601b0360a01b60035416176003556001600160601b0360a01b60045416176004556001600160601b0360a01b6005541617600555600080f35b600036600319011261014457611353611ae8565b6000638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a36000638b78c6d81955005b34610144576000366003190112610144576002546040516001600160a01b039091168152602090f35b60003660031901126101445763389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2005b34610144576000366003190112610144576001546040516001600160a01b039091168152602090f35b34610144576000366003190112610144576005546040516001600160a01b039091168152602090f35b60003660031901126101445763389a75e1600c52336000526202a30042016020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a2005b34610144576020366003190112610144576004356004811015610144576002546001600160a01b0316906000906108869060019084611b43565b34610144576000366003190112610144576000546001600160a01b03168152602090f35b60005b83811061150b5750506000910152565b81810151838201526020016114fb565b90602091611534815180928185528580860191016114f8565b601f01601f1916010190565b604090611559939215158152816020820152019061151b565b90565b600435906001600160a01b038216820361014457565b9181601f84011215610144578235916001600160401b038311610144576020838186019501011161014457565b906020808351928381520192019060005b8181106115bd5750505090565b825160ff168452602093840193909201916001016115b0565b9060088210156115e35752565b634e487b7160e01b600052602160045260246000fd5b9080602083519182815201916020808360051b8301019401926000915b83831061162557505050505090565b9091929394602080600192601f1985820301865261169489519161ffff83511681526080806116766116648787015160a08987015260a086019061159f565b6040870151858203604087015261159f565b946001600160401b03606082015116606085015201519101906115d6565b97019301930191939290611616565b600411156115e357565b61018081019081106001600160401b038211176116c957604052565b634e487b7160e01b600052604160045260246000fd5b606081019081106001600160401b038211176116c957604052565b60a081019081106001600160401b038211176116c957604052565b61010081019081106001600160401b038211176116c957604052565b90601f801991011681019081106001600160401b038211176116c957604052565b81601f8201121561014457602081519101906001600160401b0381116116c9576040519261178a601f8301601f191660200185611731565b81845281830111610144576115599160208401906114f8565b906020828203126101445781516001600160401b038111610144576115599201611752565b908060209392818452848401376000828201840152601f01601f1916010190565b604051906117f682611715565b600060e0838281528260208201528260408201528260608201528260808201528260a08201528260c08201520152565b519060ff8216820361014457565b519063ffffffff8216820361014457565b51906001600160401b038216820361014457565b9190826101009103126101445760405161187281611715565b809261187d81611826565b82526020810151600281101561014457602083015261189e60408201611834565b60408301526118af60608201611845565b60608301526118c060808201611845565b60808301526118d160a08201611834565b60a083015260c0810151906001600160d01b0319821682036101445760e09160c084015201519061ffff60f01b821682036101445760e00152565b6001600160401b0381116116c95760051b60200190565b519061ffff8216820361014457565b9080601f830112156101445781516119498161190c565b926119576040519485611731565b81845260208085019260051b82010192831161014457602001905b82821061197f5750505090565b6020809161198c84611826565b815201910190611972565b9080601f83011215610144578151916119af8361190c565b926119bd6040519485611731565b80845260208085019160051b830101918383116101445760208101915b8383106119e957505050505090565b82516001600160401b0381116101445782019060a0828703601f1901126101445760405191611a17836116fa565b611a2360208201611923565b835260408101516001600160401b03811161014457876020611a4792840101611932565b60208401526060810151906001600160401b03821161014457611a7188602060a094840101611932565b6040850152611a8260808201611845565b606085015201519060088210156101445782602093926080859401528152019201916119da565b51906001600160e01b03198216820361014457565b51906001600160801b03198216820361014457565b51906001600160c01b03198216820361014457565b638b78c6d819543303611af757565b6382b429006000526004601cfd5b60018060a01b031680638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3638b78c6d81955565b90929060008315611c08575060206024916040519283809263189d97f760e01b8252611b6e896116a3565b600482018990526001600160a01b03165afa9081156108e457600091611bd6575b505b80611bce57505015611bba57630c637bb160e11b600052611bb1816116a3565b60045260246000fd5b63da23629360e01b600052611bb1816116a3565b600193509150565b90506020813d602011611c00575b81611bf160209383611731565b81010312610144575138611b8f565b3d9150611be4565b9060206024916040519283809263974ddd9560e01b8252611c288a6116a3565b600482018a90526001600160a01b03165afa918215611c84578092611c4f575b5050611b91565b9091506020823d602011611c7c575b81611c6b60209383611731565b810103126109975750513880611c48565b3d9150611c5e565b604051903d90823e3d90fdfea26469706673582212202739e7efddcce7dcf65be74b35fcfd2393ffd437d97e2ae72e7440d5b05a630064736f6c634300081b00330000000000000000000000009f4b0fb3a95072bd133082e9683a3536669efe07000000000000000000000000ab5074445e5ae3c650553d5a7560b3a7121635b900000000000000000000000066fdb4e72d2f4a7e2081bf83f1ffacc9bbcb384b0000000000000000000000005b2d7781e3c44966769484dabcdc435efd281c34000000000000000000000000de20629a87c371668bb371ef1d77d9d167e520210000000000000000000000003acbfad7460e2fae32a31f863e1a38f7a002cea8", + "nonce": "0x11", + "chainId": "0x4268" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x463eec", + "logs": [ + { + "address": "0xde5e69a2ca2556fe46883d754d987703bf28cc51", + "topics": [ + "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000dc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc" + ], + "data": "0x", + "blockHash": "0xea1571204884eb9317a5003e7b1f1ed8d1d60783cfb9fd3504a5a2eb862a8005", + "blockNumber": "0x24b6c1", + "transactionHash": "0x94475c6a65ead1e5534470fad741f9e39d352378bbd598d76004d86dca39611c", + "transactionIndex": "0x19", + "logIndex": "0x5e", + "removed": false + } + ], + "logsBloom": "0x00004000800000200000000000000000000000000000000000800000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x94475c6a65ead1e5534470fad741f9e39d352378bbd598d76004d86dca39611c", + "transactionIndex": "0x19", + "blockHash": "0xea1571204884eb9317a5003e7b1f1ed8d1d60783cfb9fd3504a5a2eb862a8005", + "blockNumber": "0x24b6c1", + "gasUsed": "0x1b9dca", + "effectiveGasPrice": "0x5f5e105", + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": null, + "contractAddress": "0xde5e69a2ca2556fe46883d754d987703bf28cc51" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1727270042, + "chain": 17000, + "commit": "7c32bb8" +} \ No newline at end of file diff --git a/broadcast/DeployV3.s.sol/17000/run-latest.json b/broadcast/DeployV3.s.sol/17000/run-latest.json new file mode 100644 index 0000000..cf1581f --- /dev/null +++ b/broadcast/DeployV3.s.sol/17000/run-latest.json @@ -0,0 +1,48 @@ +{ + "transactions": [ + { + "hash": "0x5d03a2c90fdc2efba764382efcbd50cbd787e196a2bf96b2b27312462c90de40", + "transactionType": "CREATE", + "contractName": "V3QuoteVerifier", + "contractAddress": "0x12d7d59ae1e4dbf83b08c82958ac3fceb84fb164", + "function": null, + "arguments": [ + "0xdE5e69A2ca2556fe46883d754d987703bF28Cc51" + ], + "transaction": { + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "gas": "0x45574f", + "value": "0x0", + "input": "0x60c0346100a957601f613f0938819003918201601f19168301916001600160401b038311848410176100ae578084926020946040528339810103126100a957516001600160a01b038116908190036100a957608052600360a052604051613e4490816100c582396080518181816068015281816108ce015281816112fe01528181611c500152612053015260a05181818160b2015281816114b10152818161177101526120260152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c8063020778371461009c5780639e0fb0bf14610052578063d9ed324f1461004d5763f14951141461004857600080fd5b610258565b61016c565b34610097576000366003190112610097576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b600080fd5b346100975760003660031901126100975761ffff7f00000000000000000000000000000000000000000000000000000000000000001660805260206080f35b9181601f84011215610097578235916001600160401b038311610097576020838186019501011161009757565b60005b83811061011b5750506000910152565b818101518382015260200161010b565b9060209161014481518092818552858086019101610108565b601f01601f1916010190565b604090610169939215158152816020820152019061012b565b90565b34610097576020366003190112610097576004356001600160401b0381116100975761019c9036906004016100db565b9060609161ffff6101ad600f6102b0565b1690604882018083116102535781846101c59261082d565b938415610203575081600211610097578111610097576101ee913691600119019060020161052c565b905b6101ff60405192839283610150565b0390f35b925050506102146040519182610403565b602681527f466f756e64206f6e65206f72206d6f726520636f6c6c61746572616c73206d696020820152650e6dac2e8c6d60d31b6040820152906101f0565b61029a565b3461009757366003190161010081126100975760e0136100975760e4356001600160401b038111610097576102946101ee9136906004016100db565b906106fe565b634e487b7160e01b600052601160045260246000fd5b61ffff6101809116019061ffff821161025357565b906020820180921161025357565b906040820180921161025357565b906060820180921161025357565b906080820180921161025357565b906004820180921161025357565b906001820180921161025357565b6102420190816102421161025357565b906002820180921161025357565b90601b820180921161025357565b906019820180921161025357565b9190820180921161025357565b634e487b7160e01b600052604160045260246000fd5b61018081019081106001600160401b0382111761039257604052565b610360565b604081019081106001600160401b0382111761039257604052565b606081019081106001600160401b0382111761039257604052565b60e081019081106001600160401b0382111761039257604052565b60a081019081106001600160401b0382111761039257604052565b90601f801991011681019081106001600160401b0382111761039257604052565b60405190610433606083610403565b565b6040519061043360a083610403565b6040519061043361018083610403565b6040519061043361012083610403565b6001600160401b03811161039257601f01601f191660200190565b90929192836030116100975783116100975760300191602f190190565b906040116100975790604090565b906080116100975760400190604090565b9061020011610097576080019061018090565b9061024011610097576102000190604090565b9061024211610097576102400190600290565b909291928361024211610097578311610097576102420191610241190190565b90939293848311610097578411610097578101920390565b92919261053882610464565b916105466040519384610403565b829481845281830111610097578281602093846000960137010152565b6040519061057082610376565b60606101608360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c08201528260e082015260006101008201526000610120820152826101408201520152565b60405190608082018281106001600160401b038211176103925760405260608083600081528160208201528160408201520152565b6040519061060682610397565b816060815260206106156105c4565b910152565b6040519060c082018281106001600160401b038211176103925760405281606081526060602082015261064b610563565b604082015260608082015260405161066281610397565b6000815260606020820152608082015260a060405191610681836103b2565b60008352600060208401526106946105f9565b60408401520152565b604051906106aa826103b2565b816040516106b7816103cd565b6000815260006020820152600060408201526000606082015260006080820152600060a0820152600060c082015281526106ef610563565b6020820152604061061561061a565b9061070761069d565b5061071481836004610d01565b939190921561077957508060301161009757610734906101b0908561047f565b9360405191610744606084610403565b603083523660308301116100975761077595603061076f93602086013760006050850152369161052c565b9161128b565b9091565b94935050505060009190565b359060208110610793575090565b6000199060200360031b1b1690565b5190811515820361009757565b91908260409103126100975760206107c6836107a2565b92015190565b634e487b7160e01b600052602160045260246000fd5b600411156107ec57565b6107cc565b6040513d6000823e3d90fd5b3d15610828573d9061080e82610464565b9161081c6040519384610403565b82523d6000602084013e565b606090565b90916108ad61084c61085261084c610844866102c5565b868689610514565b90610785565b9461087361084c610862876102c5565b61086b886102d3565b908785610514565b9461089461084c610883836102d3565b61088c846102e1565b908886610514565b946108a76108a1836102e1565b926102ef565b92610514565b6040805163943374c960e01b81526003600482015291946001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016949092909181602481885afa908115610a9657600090600092610ae4575b5015918215610ad9575b5050610ad0576040805163943374c960e01b8152600060048201529081602481875afa908115610a9657600090600092610aae575b5015918215610aa3575b5050610a9b5760408051630c64c7b960e41b8152600060048201529081602481865afa908115610a9657600090600092610a64575b5015918215610a59575b5050610a5257604051630c64c7b960e41b60208201908152600260248301526000918291906109d081604481015b03601f198101835282610403565b5190845afa906000806109e16107fd565b604051630c64c7b960e41b602082019081526001602483015291949190610a0b81604481016109c2565b51915afa610a176107fd565b9215610a385750610a329150602080825183010191016107af565b90501490565b159050610a525780602080610a32935183010191016107af565b5050600090565b141590503880610994565b9050610a88915060403d604011610a8f575b610a808183610403565b8101906107af565b903861098a565b503d610a76565b6107f1565b505050600090565b141590503880610955565b9050610ac9915060403d604011610a8f57610a808183610403565b903861094b565b50505050600090565b141590503880610916565b9050610aff915060403d604011610a8f57610a808183610403565b903861090c565b6001600160e01b031981160361009757565b3561016981610b06565b60405190610b31604083610403565b602082527f6661696c656420746f207061727365206c6f63616c20697376207265706f72746020830152565b60001981019190821161025357565b60011981019190821161025357565b602003906020821161025357565b9190820391821161025357565b60405190610ba5604083610403565b601982527f71756f7465206c656e67746820697320696e636f7272656374000000000000006020830152565b60405190610be0604083610403565b601882527f6661696c656420746f20706172736520617574686461746100000000000000006020830152565b61ffff81160361009757565b6001600160f01b031981160361009757565b359061043382610c18565b359061043382610b06565b6001600160801b031981160361009757565b359061043382610c40565b35906bffffffffffffffffffffffff198216820361009757565b91908260e091031261009757604051610c8f816103cd565b60c06106158183958035610ca281610c0c565b85526020810135610cb281610c18565b6020860152610cc360408201610c35565b6040860152610cd460608201610c2a565b6060860152610ce560808201610c2a565b6080860152610cf660a08201610c52565b60a086015201610c5d565b92909192610d0d61069d565b90606093610d3163ffffffff60e01b610d2860408501610b18565b16158784611755565b8096918015610e3a575050610d44610563565b506101b096610d66610d61610d5a8a848761047f565b369161052c565b6118f9565b989015610e2657610d95610d8f610d8a610d5a610d82856102fd565b85878a610514565b611a80565b916102fd565b9281610da18585610b89565b10610e11575091610dc993916108a7610dc394610dbc61061a565b5083610353565b90611afa565b8094919215610df9575050600195610dea610de2610424565b933690610c77565b83526020830152604082015291565b9496509450505050600092610e0c610bd1565b929190565b96985050505050509150600092610e0c610b96565b505093955050509150600092610e0c610b22565b975095509293915050565b60405190610e54604083610403565b6015825274496e76616c69642051455265706f7274206461746160581b6020830152565b60405190610e87606083610403565b60278252667920636865636b60c81b6040837f566572696669636174696f6e206661696c65642062792051454964656e74697460208201520152565b80516020909101516001600160d01b0319811692919060068210610ee5575050565b6001600160d01b031960069290920360031b82901b16169150565b6001600160401b0381116103925760051b60200190565b519061043382610c0c565b9080601f8301121561009757815190610f3a82610f00565b92610f486040519485610403565b82845260208085019360051b82010191821161009757602001915b818310610f705750505090565b825160ff8116810361009757815260209283019201610f63565b51906001600160401b038216820361009757565b5190600882101561009757565b919060408382031261009757610fc0836107a2565b926020810151906001600160401b03821161009757019080601f8301121561009757815191610fee83610f00565b92610ffc6040519485610403565b80845260208085019160051b830101918383116100975760208101915b83831061102857505050505090565b82516001600160401b0381116100975782019060a0828703601f1901126100975760405190611056826103e8565b602083015161106481610c0c565b825260408301516001600160401b0381116100975787602061108892860101610f22565b60208301526060830151916001600160401b038311610097576110d560a0856110b98b602080999881990101610f22565b60408501526110ca60808201610f8a565b606085015201610f9e565b6080820152815201920191611019565b604051906110f4604083610403565b601882527f544342206e6f7420666f756e64206f72206578706972656400000000000000006020830152565b634e487b7160e01b600052603260045260246000fd5b8051156111435760200190565b611120565b80518210156111435760209160051b010190565b600811156107ec57565b60405190611175606083610403565b602382526265636b60e81b6040837f5665726966696361746f6e206661696c656420627920544342496e666f20636860208201520152565b9081602091031261009757516001600160a01b03811681036100975790565b604051906111db604083610403565b601b82527f4661696c656420746f20766572696679205835303920436861696e00000000006020830152565b9061121a60209282815194859201610108565b0190565b6040519061122d606083610403565b603882527f2f6f72207165207265706f7274207369676e61747572657300000000000000006040837f4661696c656420746f20766572696679206174746573746174696f6e20616e6460208201520152565b60088210156107ec5752565b6040909492939401936112b7855161016060408201510151906020608081830151920151015191611d1a565b801561160757506112cc604086510151612006565b919095861580156115f4575b6115e65761135a959650604060a082510151015190602082519201519460018060a01b037f00000000000000000000000000000000000000000000000000000000000000001694604087019660006113308951610ec3565b60405163a498226f60e01b81526001600160d01b031990911660048201529a8b9081906024820190565b03818a5afa998a15610a965760009060009b6115be575b50156115a6576000998a805b82518d101561159557505061139c6113958c83611148565b5183612115565b909b8c6113ac576001019b61137d565b50939495969798999a9150505b80158015611582575b6115705750906113d191612165565b6040516367ecb13960e01b81529095602082600481845afa918215610a965760009261154b575b50602060049160405192838092633fcb603b60e01b82525afa8015610a965761142b92869260009261151a575b50612369565b801561150a575061148a939291611466611452926114586040519485926020840190611207565b8c611207565b03601f198101845283610403565b60a061147760608351015194611136565b51015190519260208451940151946126d3565b9384156114ff576114f56114a16101699451610ec3565b6114e46114ac610435565b61ffff7f000000000000000000000000000000000000000000000000000000000000000016815294600060208701526040860161127f565b6001600160d01b0319166060840152565b6080820152612746565b50505061016961121e565b97505050505050506101696111cc565b61153d91925060203d602011611544575b6115358183610403565b8101906111ad565b9038611425565b503d61152b565b6004919250611568602091823d8411611544576115358183610403565b9291506113f8565b99505050505050505050610169611166565b5061158c8361115c565b600683146113c2565b9250939495969798999a50506113b9565b50505050505050509150506115b96110e5565b600091565b90506115de919a503d806000833e6115d68183610403565b810190610fab565b999038611371565b505050509050610169610e78565b506115fe836107e2565b600283146112d8565b945050509050610169610e45565b60405190611624606083610403565b60218252606d60f81b6040837f51756f7465206c656e677468206973206c657373207468616e206d696e696d7560208201520152565b3561016981610c0c565b60405190611673604083610403565b601082526f0accae4e6d2dedc40dad2e6dac2e8c6d60831b6020830152565b3561016981610c18565b604051906116ab604083610403565b602082527f556e737570706f72746564206174746573746174696f6e206b657920747970656020830152565b604051906116e6604083610403565b601082526f556e6b6e6f776e20544545207479706560801b6020830152565b3561016981610c40565b6040519061171e606083610403565b6022825261125160f21b6040837f4e6f7420612076616c696420496e74656c205347582051452056656e646f722060208201520152565b90916103fc606093106118285761176b8261165a565b61ffff807f00000000000000000000000000000000000000000000000000000000000000001691160361181a57600160f91b6001600160f01b03196117b260208501611692565b160361180c57156117ff576f939a7233f79c4ca9940a0db3957f060760801b906001600160801b0319906117e89060a001611705565b16036117f357600191565b5060009061016961170f565b50506000906101696116d7565b50505060009061016961169c565b505050600090610169611664565b505050600090610169611615565b9060208251920151916001600160801b031983169260108210611857575050565b6001600160801b031960109290920360031b82901b16169150565b80516020909101516001600160e01b0319811692919060048210611894575050565b6001600160e01b031960049290920360031b82901b16169150565b90602082519201519163ffffffff19831692601c82106118cd575050565b63ffffffff19601c9290920360031b82901b16169150565b602081519101519060208110610793575090565b611901610563565b90610180815103611a41578061193261192461191f611a36946127cf565b611836565b6001600160801b0319168452565b61195761194661194183612882565b611872565b6001600160e01b0319166020850152565b61197961196b6119668361290a565b6118af565b63ffffffff19166040850152565b61199961198861191f83612992565b6001600160801b0319166060850152565b6119aa6119a582612a1a565b6118e5565b60808401526119bb6119a582612aa2565b60a08401526119cc6119a582612b2a565b60c08401526119da81612bb2565b60e0840152611a046119f86119f1610d8a84612c3b565b61ffff1690565b61ffff16610100850152565b611a22611a166119f1610d8a84612cc5565b61ffff16610120850152565b611a2b81612d4f565b610140840152612dd9565b610160820152600191565b50600091565b600181901b91906001600160ff1b0381160361025357565b8181029291811591840414171561025357565b603f81116102535760100a90565b60009190825b8151841015611af55760006020858401015190611ad7611ac2600f8460f81c9460fc1c9416611abc611ab78a611a47565b611a72565b90611a5f565b92611abc611ab7611ad28a611a47565b61030b565b82018092116102535750810180911161025357600190930192611a86565b925050565b611b0261061a565b91611b10610d5a828461049c565b8352611b1f610d5a82846104aa565b6020840152611c2d610d5a611b37610d5a84866104bb565b93611b45610d5a85836104ce565b6060870152611ba5611b606119f1610d8a610d5a88866104e1565b6020611b9e61ffff60808b0193611b7c8186519061ffff169052565b1692611b91611b8a85610319565b8a886104f4565b939091510192369161052c565b9052610319565b611bc26119f1610d8a610d5a611bba85610329565b858a88610514565b946108a763ffffffff611c18611c26611bed60a08d0196611be88c89519061ffff169052565b610329565b6020611c10611c07610d8a610d5a8c868c6108a7826102fd565b63ffffffff1690565b9384926102fd565b9751019063ffffffff169052565b1683610353565b611c36836118f9565b604086015215611d125760405163d137d4a360e01b8152917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602084600481845afa908115610a9657600494602092611cf7575b5060405163e99bba5360e01b815294859182905afa8015610a9657611cc093600091611cd8575b50612fff565b60a084015160400152928315611cd257565b60009350565b611cf1915060203d602011611544576115358183610403565b38611cba565b611d0d90833d8511611544576115358183610403565b611c93565b506000939050565b611d7f60209283611d6e611d2f6000956118e5565b9660405192839181611d4a8185019788815193849201610108565b8301611d5e82518093858085019101610108565b010103601f198101835282610403565b604051928392839251928391610108565b8101039060025afa15610a96576000511490565b60405190611da082610376565b60606101608360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c0820152600060e08201526000610100820152600061012082015260006101408201520152565b5190600382101561009757565b519063ffffffff8216820361009757565b519061043382610b06565b519061043382610c40565b81601f8201121561009757805190611e4182610f00565b92611e4f6040519485610403565b8284526020606081860194028301019181831161009757602001925b828410611e79575050505090565b6060848303126100975760405190611e90826103b2565b8451611e9b81610c0c565b8252602085015160208301526040850151906004821015610097578260209260406060950152815201930192611e6b565b919060408382031261009757611ee1836107a2565b926020810151906001600160401b03821161009757016101808183031261009757611f0a610444565b91611f1482611df6565b8352611f2260208301611e03565b6020840152611f3360408301610f8a565b6040840152611f4460608301610f8a565b6060840152611f5560808301611e03565b6080840152611f6660a08301611e14565b60a0840152611f7760c08301611e14565b60c0840152611f8860e08301611e1f565b60e0840152611f9a6101008301611e1f565b610100840152610120820151610120840152611fb96101408301610f17565b6101408401526101608201516001600160401b03811161009757611fdd9201611e2a565b61016082015290565b909291604082019360038110156107ec5760209161ffff91845216910152565b61200e611d93565b5060405163b9f1b94f60e01b8152906000828061204f7f00000000000000000000000000000000000000000000000000000000000000008460048401611fe6565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610a96576000926000926120ed575b5082156120e557602081015161077593506001600160e01b03191660608201516001600160801b03191660c0830151916120df6101206120d561010087015161ffff1690565b95015161ffff1690565b94613125565b505090600090565b90925061210d91503d806000833e6121058183610403565b810190611ecc565b90913861208f565b9190608061213a602061ffff86511661ffff85511611159501516020840151906137a6565b9101519060088210156107ec578361215d575b5082156121575790565b50600790565b92503861214d565b91906003600093612175816107e2565b036121e35760088110156107ec57801580156121d0575b6121c7575b61219a8161115c565b600381149081156121b3575b506121ad57565b60059150565b600291506121c08161115c565b14386121a6565b60049250612191565b506121da8161115c565b6001811461218c565b9150565b6040519061012082018281106001600160401b038211176103925760405260606101008360008152826020820152600060408201526000838201528260808201528260a0820152600060c08201528260e08201520152565b6040519061224e604083610403565b601982527f496e74656c205347582050434b20506c6174666f726d204341000000000000006020830152565b60405190612289604083610403565b601a82527f496e74656c205347582050434b2050726f636573736f722043410000000000006020830152565b81601f8201121561009757602081519101906122d081610464565b926122de6040519485610403565b8184528183011161009757610169916020840190610108565b9190916040818403126100975780516001600160401b03811161009757836123209183016122b5565b9260208201516001600160401b0381116100975761016992016122b5565b9081602091031261009757610169906107a2565b60409061016993928152816020820152019061012b565b825160009384938493849384936001600160a01b039283169391929091165b8285106123c3575b50505050501592836123bb575b50826123b3575b50816123ae575090565b905090565b9150386123a4565b92503861239d565b9091929395976123d16121e7565b506123db84610b5d565b87036124da57506123ec8683611148565b51955b60406123fb8285611148565b510151421198896124c1575b89156124ba5750602060006124316101006124228588611148565b51015160405191828092611207565b039060025afa15610a965761245e60005160a060e06124508588611148565b5101519901988951916132a0565b9687156124b4577f89f72d7c488e5b53a77c23ebcb36970ef7eb5bcf6658e9b8292cfbe4703a8473905160208151910120146124a05760010193929190612388565b505050505091506001913880808080612390565b50612390565b9650612390565b985060606124cf8285611148565b510151421098612407565b956124ed6124e78261030b565b84611148565b519660606124fa86610b6c565b83036125e7575060405163722f132760e01b8152600060048201819052816024818a5afa908115610a96576000916125c4575b505b805161254a575b508661254257506123ef565b989650612390565b61257a91975060209061255d8487611148565b515160405163cedb978160e01b8152938492839260048401612352565b0381865afa908115610a9657600091612596575b509538612536565b6125b7915060203d81116125bd575b6125af8183610403565b81019061233e565b3861258e565b503d6125a5565b6125df913d8091833e6125d78183610403565b8101906122f7565b90503861252d565b8261252f575060206125f98386611148565b51015161261c61260761223f565b82906020815191012090602081519101201490565b1561266f575060405163722f132760e01b8152600260048201526000816024818a5afa908115610a9657600091612654575b5061252f565b612667913d8091833e6125d78183610403565b90503861264e565b61268e9061267b61227a565b6020815191012090602081519101201490565b156126c45760405163722f132760e01b8152600160048201526000816024818a5afa908115610a9657600091612654575061252f565b50505050505050505050600090565b60006126f46020929796979493948360405192828480945193849201610108565b8101039060025afa15610a965761270d916000516132a0565b15610a9b57600061272d6020928360405192828480945193849201610108565b8101039060025afa15610a9657610169916000516132a0565b805163ffffffff60e01b6020830151169160408101519160088310156107ec5761016992602d92608065ffffffffffff60d01b6060830151169101519160405196879461ffff60f01b9060f01b166020860152602285015260f81b602684015260278301526127be8151809260208686019101610108565b81010301601f198101835282610403565b8051601011610097576127e26010610464565b906127f06040519283610403565b601082526127fe6010610464565b6020830190601f19013682379060200160105b602081101561285257806128335750600019905b518251821691191617905290565b61284761284261284c92610b7b565b61335c565b610b5d565b90612825565b909182518152602081018091116102535791602081018091116102535790601f198101908111156128115761029a565b8051601411610097576128956004610464565b906128a36040519283610403565b600482526128b16004610464565b6020830190601f19013682379060300160045b60208110156128da578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f198101908111156128c45761029a565b80516030116100975761291d601c610464565b9061292b6040519283610403565b601c8252612939601c610464565b6020830190601f190136823790603401601c5b6020811015612962578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f1981019081111561294c5761029a565b8051604011610097576129a56010610464565b906129b36040519283610403565b601082526129c16010610464565b6020830190601f19013682379060500160105b60208110156129ea578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f198101908111156129d45761029a565b805160601161009757612a2d6020610464565b90612a3b6040519283610403565b60208252612a496020610464565b6020830190601f19013682379060600160205b6020811015612a72578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612a5c5761029a565b805160801161009757612ab56020610464565b90612ac36040519283610403565b60208252612ad16020610464565b6020830190601f19013682379060800160205b6020811015612afa578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612ae45761029a565b805160a01161009757612b3d6020610464565b90612b4b6040519283610403565b60208252612b596020610464565b6020830190601f19013682379060a00160205b6020811015612b82578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612b6c5761029a565b80516101001161009757612bc66060610464565b90612bd46040519283610403565b60608252612be26060610464565b6020830190601f19013682379060c00160605b6020811015612c0b578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612bf55761029a565b80516101021161009757612c4f6002610464565b90612c5d6040519283610403565b60028252612c6b6002610464565b6020830190601f1901368237906101200160025b6020811015612c95578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612c7f5761029a565b80516101041161009757612cd96002610464565b90612ce76040519283610403565b60028252612cf56002610464565b6020830190601f1901368237906101220160025b6020811015612d1f578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612d095761029a565b80516101401161009757612d63603c610464565b90612d716040519283610403565b603c8252612d7f603c610464565b6020830190601f19013682379061012401603c5b6020811015612da9578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612d935761029a565b80516101801161009757612ded6040610464565b90612dfb6040519283610403565b60408252612e096040610464565b6020830190601f1901368237906101600160405b6020811015612e33578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612e1d5761029a565b805160201161009757612e766020610464565b90612e846040519283610403565b60208252612e926020610464565b6020830190601f1901368237602080920190915b6020811015612ebc578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612ea65761029a565b805160401161009757612eff6020610464565b90612f0d6040519283610403565b60208252612f1b6020610464565b6020830190601f19013682379060400160205b6020811015612f44578061283357509192915050565b909182518152602081018091116102535791602081018091116102535790601f19810190811115612f2e5761029a565b60405160809190612f858382610403565b6003815291601f19018260005b828110612f9e57505050565b602090612fa96121e7565b82828501015201612f92565b90612fbf82610f00565b612fcc6040519182610403565b8281528092612fdd601f1991610f00565b019060005b828110612fee57505050565b806060602080938501015201612fe2565b9192909261ffff61300e6105f9565b94613017612f74565b865216600581101561302c5750600093925050565b60050361311d5761303c9061336b565b91909384156131135761306b61305b61305485611136565b51866135bf565b8392919251906020850152611136565b5261307e6130798451610b5d565b612fb5565b9460005b86518110156130bd57806130a061309a60019361030b565b87611148565b516130ab828a611148565b526130b68189611148565b5001613082565b50925092936130cc91946136c1565b9060005b825181101561310d57806131066130e960019386611148565b5186516130f58461030b565b916131008383611148565b52611148565b50016130d0565b50929050565b6000945092509050565b506000929150565b94909192959360009261314260c088015163ffffffff60e01b1690565b1661316761315a60a089015163ffffffff60e01b1690565b6001600160e01b03191690565b6101008801516001600160e01b03199092161494906001600160801b031916166131ac61319f60e08901516001600160801b03191690565b6001600160801b03191690565b906001600160801b0319161496610120870151149061ffff6131d76119f16101408a015161ffff1690565b911614916000805b610160890180518051831015613281576131fc8361320592611148565b515161ffff1690565b61ffff8086169116111561321c57506001016131df565b969798509050604092939450613236915060019551611148565b510151613242816107e2565b955b84613279575b5083613271575b5082613269575b508161326357509190565b90509190565b915038613258565b925038613251565b93503861324a565b5050509495965050909195613244565b90816020910312610097575190565b6000929183926132be6119a56132b86119a585612e63565b93612eec565b906132d76119a56132d16119a584612e63565b92612eec565b91604051936020850195865260408501526060840152608083015260a082015260a0815261330660c082610403565b519073c2b78104907f722dabac4c69f826a522b2754de45afa6133276107fd565b90156133465761334281602080600194518301019101613291565b1490565b634e487b7160e01b600052600160045260246000fd5b601f8111610253576101000a90565b6133756003612fb5565b906000815191815b6003831061338e5750505050600191565b821561340c57838101808211610253576133ac6133b1918385613802565b6138dc565b9291906133be8689611148565b526133d26133cc8689611148565b516139bc565b6133dc8689611148565b526133e78588611148565b5015613401576001916133f991610353565b92019161337d565b506000959350505050565b6133b1826138dc565b602081830312610097578051906001600160401b03821161009757016101208183031261009757613444610454565b918151835260208201516001600160401b03811161009757816134689184016122b5565b6020840152604082015160408401526060820151606084015260808201516001600160401b03811161009757816134a09184016122b5565b608084015260a08201516001600160401b03811161009757816134c49184016122b5565b60a084015260c082015160c084015260e08201516001600160401b03811161009757816134f29184016122b5565b60e08401526101008201516001600160401b0381116100975761351592016122b5565b61010082015290565b90602061016992818152019061012b565b9060808282031261009757815161354581610c0c565b9260208301516001600160401b0381116100975782613565918501610f22565b9260408101516001600160401b03811161009757836135859183016122b5565b9260608201516001600160401b0381116100975761016992016122b5565b9291906135ba60209160408652604086019061012b565b930152565b90916135c96121e7565b506135d26105c4565b604051631dbcd30f60e11b81529390926001600160a01b0316600085806135fc856004830161351e565b0381845afa948515610a9657600095613694575b5061363a9160009160c08701519160405180958194829363740e383f60e11b8452600484016135a3565b03915afa908115610a96576104339160009182918391849161366f575b5060608701526040860152602085015261ffff168352565b9250505061368e913d8091833e6136868183610403565b81019061352f565b38613657565b6000919550916136b861363a933d8085833e6136b08183610403565b810190613415565b95915091613610565b81519192916001600160a01b03909116906136db81610f00565b916136e96040519384610403565b818352601f196136f883610f00565b0160005b81811061378f575050829460005b838110613718575050505050565b8060006137286137439385611148565b5160405180948192631dbcd30f60e11b83526004830161351e565b0381875afa8015610a9657600192600091613776575b506137648288611148565b5261376f8187611148565b500161370a565b613789913d8091833e6136b08183610403565b38613759565b60209061379a6121e7565b828288010152016136fc565b9060108251148015906137f6575b610a525760005b601081106137cb57505050600190565b60ff6137d78285611148565b511660ff806137e68486611148565b51161611610a9b576001016137bb565b506010815114156137b4565b80516060949392908381111561387a575b81811115613872575b5082811061382957505050565b6040519281900380845292945001601f8201601f19165b8181015185820152601f19019081156138595790613840565b5050600083820160200152603f01601f19168201604052565b90503861381c565b925082613813565b60405190613891604083610403565b601982527f2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d000000000000006020830152565b604051906138cc604083610403565b60018252600560f91b6020830152565b61391d6040516138ed604082610403565b601b81527f2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0000000000602082015282613c13565b61392e613928613882565b83613c13565b91600019821480156139b1575b6139a35761395d8361394f61396294610337565b6139576138bd565b93613802565b613adc565b60009260605b8251851015613990576139886001916139818786611148565b5190613ba0565b940193613968565b93509161399d9150610345565b60019291565b505050600090606090600090565b50600019831461393b565b906060918051806139cb575050565b90925060038160021c029060038116908115613ac1575001600019015b604051928184526020840191840191600360046020850193600080516020613def833981519152605b527804080c1014181c2024282c3034383c4044484c5054585c6064603b526ef8fcf800fcd0d4d8dce0e4e8ecf0f4601a525b0191825160ff81165160061c81601e1a51600080516020613def833981519152161760061c81601d1a51600080516020613def833981519152161760061c90601c1a51600080516020613def83398151915216178152019082821015613aae57600390600490613a43565b5050604060009201604052526000606052565b613d3d91508401511860ff81161590601e1a150190036139e8565b919091613ae98382613ceb565b90602082018091600184510160051b8401916020830192825190526001855101855260005b81519060608352808203613b4a575b50602090885101910190838210613b0e575050505081935115613b3e575050565b90516001190181529150565b604051818303808252949091601f8601601f19165b82820181015184820152601f1901918215613b7a5791613b5f565b9590506020939291506000848284010152603f601f199101168101604052835290613b1d565b60405181519093929160208201601f19165b8181015186820152601f1901908115613bcb5790613bb2565b505081519184820160208401601f19165b8281015182820152601f1901918215613bf55791613bdc565b5050500180830190600060208301528352603f601f19910116604052565b8051825191939284908215158415613ce057602185602060001999019585010301946020601f8216810360031b93018051928787101615613cb9576020821015613c92575050925b83815118821c15613c7f576001019284841015613c785792613c5b565b5050505050565b91909103601f1901945061043392505050565b90809295939120925b85815118821c15613cc2575b6001019486861015613cb95794613c9b565b50505050505050565b8383822003613ca75793909303601f19019650610433945050505050565b506000955050505050565b9190828391606094805182519181831115613d09575b505050505050565b8293949596975091602080602193940195019260206040510197010301936000916020841015613de4575b601f841660200360031b9051945b85815118821c15613d8b575b6001019486861015613d61575b94613d42565b505050505050505b90602060405192601f198482030160051c845201604052388080808080613d01565b968484613dbd575b60208192601f19868c030181520198019015613d4e5794868610613d5b5750505050505050613d69565b8490892003613dcc5784613d93565b9660010194868610613d5b5750505050505050613d69565b8381209250613d3456fefc000000fc00686c7074787c8084888c9094989ca0a4a8acb0b4b8bcc0c4c8cca264697066735822122003d96124e04f6f0b4f3b2a3eb7d45928f2bc16a72ac678633528968488aedb0b64736f6c634300081b0033000000000000000000000000de5e69a2ca2556fe46883d754d987703bf28cc51", + "nonce": "0x13", + "chainId": "0x4268" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0xcdba51", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x5d03a2c90fdc2efba764382efcbd50cbd787e196a2bf96b2b27312462c90de40", + "transactionIndex": "0x26", + "blockHash": "0xf954d0645360428c9579bb3973281cdd6f331c5bc3e7ea2e7fc101e9f9de025c", + "blockNumber": "0x24b6d8", + "gasUsed": "0x355acf", + "effectiveGasPrice": "0x5c81a45", + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": null, + "contractAddress": "0x12d7d59ae1e4dbf83b08c82958ac3fceb84fb164" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1727270403, + "chain": 17000, + "commit": "7c32bb8" +} \ No newline at end of file diff --git a/broadcast/DeployV4.s.sol/17000/run-latest.json b/broadcast/DeployV4.s.sol/17000/run-latest.json new file mode 100644 index 0000000..14ef0ff --- /dev/null +++ b/broadcast/DeployV4.s.sol/17000/run-latest.json @@ -0,0 +1,48 @@ +{ + "transactions": [ + { + "hash": "0x63d79437b36b9cdbc90fa288dce58b3b557f8f85f1c6fc283ee6a05b5a259c75", + "transactionType": "CREATE", + "contractName": "V4QuoteVerifier", + "contractAddress": "0x3cb24c454a29e796edf47a96df32dd1855058258", + "function": null, + "arguments": [ + "0xdE5e69A2ca2556fe46883d754d987703bF28Cc51" + ], + "transaction": { + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "gas": "0x5c3720", + "value": "0x0", + "input": "0x60c0346100b057601f6153e838819003918201601f19168301916001600160401b038311848410176100b5578084926020946040528339810103126100b057516001600160a01b038116908190036100b057608052600460a05260405161531c90816100cc8239608051818181606801528181610b6c01528181611c5c015281816133470152613fb2015260a05181818160b2015281816114180152818161176c015281816119020152613f850152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c8063020778371461009c5780639e0fb0bf14610052578063d9ed324f1461004d5763f14951141461004857600080fd5b6101b9565b61016c565b34610097576000366003190112610097576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b600080fd5b346100975760003660031901126100975761ffff7f00000000000000000000000000000000000000000000000000000000000000001660805260206080f35b9181601f84011215610097578235916001600160401b038311610097576020838186019501011161009757565b60005b83811061011b5750506000910152565b818101518382015260200161010b565b9060209161014481518092818552858086019101610108565b601f01601f1916010190565b604090610169939215158152816020820152019061012b565b90565b34610097576020366003190112610097576004356001600160401b0381116100975761019f6101a59136906004016100db565b90610611565b906101b560405192839283610150565b0390f35b3461009757366003190161010081126100975760e0136100975760e4356001600160401b038111610097576101f56101a59136906004016100db565b90610925565b909291928360021161009757831161009757600201916001190190565b906030116100975790603090565b90929192836030116100975783116100975760300191602f190190565b906040116100975790604090565b906080116100975760400190604090565b906082116100975760800190600290565b906086116100975760820190600490565b9061020611610097576086019061018090565b9061024611610097576102060190604090565b9061024811610097576102460190600290565b909291928361024811610097578311610097576102480191610247190190565b90939293848311610097578411610097578101920390565b356001600160e01b0319811692919060048210610310575050565b6001600160e01b031960049290920360031b82901b16169150565b634e487b7160e01b600052604160045260246000fd5b61018081019081106001600160401b0382111761035d57604052565b61032b565b608081019081106001600160401b0382111761035d57604052565b604081019081106001600160401b0382111761035d57604052565b606081019081106001600160401b0382111761035d57604052565b60e081019081106001600160401b0382111761035d57604052565b6101e081019081106001600160401b0382111761035d57604052565b60a081019081106001600160401b0382111761035d57604052565b90601f801991011681019081106001600160401b0382111761035d57604052565b60405190610435606083610405565b565b6040519061043560a083610405565b6040519061043561018083610405565b6040519061043561012083610405565b6001600160401b03811161035d57601f01601f191660200190565b60405190610490604083610405565b601082526f556e6b6e6f776e20544545207479706560801b6020830152565b634e487b7160e01b600052601160045260246000fd5b60020190816002116104d357565b6104af565b90604882018092116104d357565b90602082018092116104d357565b90604082018092116104d357565b90606082018092116104d357565b90608082018092116104d357565b9061018082018092116104d357565b90600482018092116104d357565b90600182018092116104d357565b610248019081610248116104d357565b90600282018092116104d357565b90601b82018092116104d357565b90601982018092116104d357565b919082018092116104d357565b6040519061059f606083610405565b60268252650e6dac2e8c6d60d31b6040837f466f756e64206f6e65206f72206d6f726520636f6c6c61746572616c73206d6960208201520152565b9291926105e682610466565b916105f46040519384610405565b829481845281830111610097578281602093846000960137010152565b919060026000826008116106b257506001600160e01b031961063660048681016102f5565b1690816106865761064b915061018d90610583565b925b610660828261065b876104d8565b610acb565b93841561067b5761016992610674926101fb565b36916105da565b505050610169610590565b50608160e01b036106a25761069c6102556104c5565b9261064d565b5090506106ad610481565b600091565b80fd5b604051906106c282610341565b60606101608360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c08201528260e082015260006101008201526000610120820152826101408201520152565b6040519061072382610362565b60608083600081528160208201528160408201520152565b604051906107488261037d565b81606081526020610757610716565b910152565b6040519061076982610398565b816060815260606020820152604080519161078383610362565b61078b6106b5565b835260606020840152815161079f8161037d565b60008152606060208201528284015281516107b981610398565b60008152600060208201526107cc61073b565b8382015260608401520152565b6001600160e01b031981160361009757565b35610169816107d9565b61ffff81160361009757565b6001600160f01b031981160361009757565b359061043582610801565b3590610435826107d9565b6001600160801b031981160361009757565b359061043582610829565b35906bffffffffffffffffffffffff198216820361009757565b91908260e091031261009757604051610878816103b3565b60c0610757818395803561088b816107f5565b8552602081013561089b81610801565b60208601526108ac6040820161081e565b60408601526108bd60608201610813565b60608601526108ce60808201610813565b60808601526108df60a0820161083b565b60a086015201610846565b604051906108f9604083610405565b602082527f6661696c656420746f207061727365206c6f63616c20697376207265706f72746020830152565b61092d61075c565b5061093a82826004610e62565b93949192909415610a1657506109536106748683610218565b916001600160e01b031961096760446107eb565b166109d35761097e906109786106b5565b50611520565b9190156109c5576109c19561099b91610674916101b05b91610226565b926109a4610426565b916109b0366004610860565b8352602083015260408201526116a5565b9091565b5050505050506106ad6108ea565b6106746109c196926109e76109f093611028565b93610278610995565b926109f9610426565b91610a05366004610860565b83526020830152604082015261130f565b9594505050505060009190565b359060208110610a31575090565b6000199060200360031b1b1690565b5190811515820361009757565b9190826040910312610097576020610a6483610a40565b92015190565b634e487b7160e01b600052602160045260246000fd5b60041115610a8a57565b610a6a565b6040513d6000823e3d90fd5b3d15610ac6573d90610aac82610466565b91610aba6040519384610405565b82523d6000602084013e565b606090565b9091610b4b610aea610af0610aea610ae2866104e6565b8686896102dd565b90610a23565b94610b11610aea610b00876104e6565b610b09886104f4565b9087856102dd565b94610b32610aea610b21836104f4565b610b2a84610502565b9088866102dd565b94610b45610b3f83610502565b92610510565b926102dd565b6040805163943374c960e01b81526003600482015291946001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016949092909181602481885afa908115610d3457600090600092610d82575b5015918215610d77575b5050610d6e576040805163943374c960e01b8152600060048201529081602481875afa908115610d3457600090600092610d4c575b5015918215610d41575b5050610d395760408051630c64c7b960e41b8152600060048201529081602481865afa908115610d3457600090600092610d02575b5015918215610cf7575b5050610cf057604051630c64c7b960e41b6020820190815260026024830152600091829190610c6e81604481015b03601f198101835282610405565b5190845afa90600080610c7f610a9b565b604051630c64c7b960e41b602082019081526001602483015291949190610ca98160448101610c60565b51915afa610cb5610a9b565b9215610cd65750610cd0915060208082518301019101610a4d565b90501490565b159050610cf05780602080610cd093518301019101610a4d565b5050600090565b141590503880610c32565b9050610d26915060403d604011610d2d575b610d1e8183610405565b810190610a4d565b9038610c28565b503d610d14565b610a8f565b505050600090565b141590503880610bf3565b9050610d67915060403d604011610d2d57610d1e8183610405565b9038610be9565b50505050600090565b141590503880610bb4565b9050610d9d915060403d604011610d2d57610d1e8183610405565b9038610baa565b6085198101919082116104d357565b60200390602082116104d357565b6000198101919082116104d357565b6001198101919082116104d357565b919082039182116104d357565b60405190610dfb604083610405565b601982527f71756f7465206c656e67746820697320696e636f7272656374000000000000006020830152565b60405190610e36604083610405565b601882527f6661696c656420746f20706172736520617574686461746100000000000000006020830152565b9190606091610e6f61075c565b90610e9d6001600160e01b0319610e88604088016107eb565b16958287159182988315610f6d575b506118e6565b8096918015610f61575050603090600014610f5857610ebb9061051e565b610ec9610674828487610226565b94610ef2610eec610ee7610674610edf8661052d565b86888b6102dd565b611a00565b9261052d565b9382610efe8686610ddf565b10610f4557505091610f1e9391610b45610f189483610583565b90611a99565b919482828715610f2c575050565b9350939450945050600093610f3f610e27565b93929190565b9450949550505050600093610f3f610dec565b50610278610ebb565b97909650859450915050565b608160e01b14925038610e97565b60405190610f88826103ce565b60606101c0836000815282602082015282604082015260008382015260006080820152600060a08201528260c08201528260e08201528261010082015282610120820152826101408201528261016082015282610180820152826101a08201520152565b9060208251920151916001600160801b03198316926010821061100d575050565b6001600160801b031960109290920360031b82901b16169150565b9061117c611034610f7b565b9261105761104961104483611d4e565b610fec565b6001600160801b0319168552565b61106081611e01565b602085015261106e81611e8a565b60408501526110b56110a4611094611088610ee785611f12565b6001600160401b031690565b60c01b6001600160c01b03191690565b6001600160c01b0319166060860152565b6110db6110ca611094611088610ee785611f9a565b6001600160c01b0319166080860152565b6111016110f0611094611088610ee785612022565b6001600160c01b03191660a0860152565b61110a816120aa565b60c085015261111881612132565b60e0850152611126816121ba565b61010085015261113581612244565b610120850152611144816122ce565b61014085015261115381612358565b610160850152611162816123e2565b6101808501526111718161246c565b6101a08501526124f6565b6101c0830152565b6040519060c082018281106001600160401b0382111761035d57604052600060a083606081526111b2610716565b6020820152606060408201526040516111ca81610398565b606081528360208201528360408201526060820152606060808201520152565b604051906111f9606083610405565b602982526843422053746174757360b81b6040837f4661696c656420746f206c6f6361746520612076616c696420464d535043205460208201520152565b60081115610a8a57565b60405190611250606083610405565b602d82526c6c65205443422053746174757360981b6040837f4661696c656420746f206c6f6361746520612076616c6964205444584d6f647560208201520152565b604051906112a1604083610405565b6016825275151116135bd91d5b194818da1958dac819985a5b195960521b6020830152565b80516020909101516001600160d01b03198116929190600682106112e8575050565b6001600160d01b031960069290920360031b82901b16169150565b6008821015610a8a5752565b93929061133d9161131e611184565b5085516040015184906001600160e01b031916926040880151936132a9565b9291156114aa575060408201519161137460208201936020855197019661136e88516001600160801b031990511690565b916135a7565b95901561149c578051516080830151611396916001600160801b031916613705565b939092949150158015611489575b611478575160408101516060909101516113ca9392906001600160c01b03191691613894565b9586156114695760406113ff61016996959460a06113ee61145f96611408966138e5565b9101516113fa81610a80565b613966565b945101516112c6565b61144e611413610437565b61ffff7f000000000000000000000000000000000000000000000000000000000000000016815294608160e01b602087015260408601611303565b6001600160d01b0319166060840152565b6080820152613999565b505050505090506106ad611292565b5050505050505090506106ad611241565b5061149384611237565b600684146113a4565b5050505090506106ad6111ea565b9350505060009190565b80516020909101516001600160e01b0319811692919060048210610310575050565b90602082519201519163ffffffff19831692601c82106114f4575050565b63ffffffff19601c9290920360031b82901b16169150565b602081519101519060208110610a31575090565b6115286106b5565b90610180815103611663578061155461154661104461165894611d4e565b6001600160801b0319168452565b61157961156861156383612580565b6114b4565b6001600160e01b0319166020850152565b61159b61158d61158883612608565b6114d6565b63ffffffff19166040850152565b6115bb6115aa61104483612690565b6001600160801b0319166060850152565b6115cc6115c782612718565b61150c565b60808401526115dd6115c7826127a0565b60a08401526115ee6115c782612828565b60c08401526115fc816128b0565b60e084015261162661161a611613610ee784612939565b61ffff1690565b61ffff16610100850152565b611644611638611613610ee7846129c3565b61ffff16610120850152565b61164d81612a4d565b610140840152612ad7565b610160820152600191565b50600091565b634e487b7160e01b600052603260045260246000fd5b80511561168c5760200190565b611669565b805182101561168c5760209160051b010190565b9092826116d193946116b5611184565b5083516040908101516001600160e01b031916940151936132a9565b9082949294156117cb575060009283805b60408401519182518710156117bf57505061170d9061170686602086015192611691565b5190613a22565b948161171c57600101946116e2565b5093909192935b801580156117ac575b61179f57509061145f61175c60406020611752879660a06101699901516113fa81610a80565b95015101516112c6565b61144e611767610437565b61ffff7f0000000000000000000000000000000000000000000000000000000000000000168152946000602087015260408601611303565b94505050506101696111ea565b506117b682611237565b6006821461172c565b91509192939450611723565b60009450925050565b604051906117e3606083610405565b60218252606d60f81b6040837f51756f7465206c656e677468206973206c657373207468616e206d696e696d7560208201520152565b35610169816107f5565b60405190611832604083610405565b601082526f0accae4e6d2dedc40dad2e6dac2e8c6d60831b6020830152565b3561016981610801565b6040519061186a604083610405565b602082527f556e737570706f72746564206174746573746174696f6e206b657920747970656020830152565b3561016981610829565b604051906118af606083610405565b6022825261125160f21b6040837f4e6f7420612076616c696420496e74656c205347582051452056656e646f722060208201520152565b90916103fc606093106119b9576118fc82611819565b61ffff807f0000000000000000000000000000000000000000000000000000000000000000169116036119ab57600160f91b6001600160f01b031961194360208501611851565b160361199d5715611990576f939a7233f79c4ca9940a0db3957f060760801b906001600160801b0319906119799060a001611896565b160361198457600191565b506000906101696118a0565b5050600090610169610481565b50505060009061016961185b565b505050600090610169611823565b5050506000906101696117d4565b600181901b91906001600160ff1b038116036104d357565b818102929181159184041417156104d357565b603f81116104d35760100a90565b60009190825b8151841015611a755760006020858401015190611a57611a42600f8460f81c9460fc1c9416611a3c611a378a6119c7565b6119f2565b906119df565b92611a3c611a37611a528a6119c7565b61053b565b82018092116104d3575081018091116104d357600190930192611a06565b925050565b9081602091031261009757516001600160a01b03811681036100975790565b90611aa261075c565b91611ab06106748383610243565b8352611abf6106748383610251565b60208401526006611ad6610ee76106748585610262565b03611d4457611aeb610ee76106748484610273565b611af86106748484610284565b92611b71611b068285610297565b611b1b604089019260208451019236916105da565b90526040611b6a61ffff611b38611613610ee7610674898c6102aa565b845184015161ffff8216905216926020611b5b611b5486610549565b888b6102bd565b949092510151019236916105da565b9052610549565b92611b8f611613610ee7610674611b8788610559565b8887876102dd565b93600561ffff861603611d395760609392611c28610674611c33948863ffffffff611c0a611c1c611bd98f99611bd46040611c2e9c01968f885101519061ffff169052565b610559565b6020611c02611bf9610ee76106748d86611bf28161052d565b918d6102dd565b63ffffffff1690565b93849261052d565b9d8e96510151019063ffffffff169052565b1694610b458683610583565b94610583565b610da4565b03611d3157611c4183611520565b60408601515215611d315760405163d137d4a360e01b8152917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602084600481845afa908115610d3457600494602092611d16575b5060405163e99bba5360e01b815294859182905afa8015610d3457611ccc93600091611ce7575b50613b41565b604084810151606001510152928315611ce157565b60009350565b611d09915060203d602011611d0f575b611d018183610405565b810190611a7a565b38611cc6565b503d611cf7565b611d2c90833d8511611d0f57611d018183610405565b611c9f565b506000939050565b506000969350505050565b5060009260609150565b805160101161009757611d616010610466565b90611d6f6040519283610405565b60108252611d7d6010610466565b6020830190601f19013682379060200160105b6020811015611dd15780611db25750600019905b518251821691191617905290565b611dc6611dc1611dcb92610db3565b613c67565b610dc1565b90611da4565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115611d90576104af565b805160401161009757611e146030610466565b90611e226040519283610405565b60308252611e306030610466565b6020830190601f1901368237603080920190915b6020811015611e5a5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115611e44576104af565b805160701161009757611e9d6030610466565b90611eab6040519283610405565b60308252611eb96030610466565b6020830190601f19013682379060600160305b6020811015611ee25780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115611ecc576104af565b805160781161009757611f256008610466565b90611f336040519283610405565b60088252611f416008610466565b6020830190601f19013682379060900160085b6020811015611f6a5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115611f54576104af565b805160801161009757611fad6008610466565b90611fbb6040519283610405565b60088252611fc96008610466565b6020830190601f19013682379060980160085b6020811015611ff25780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115611fdc576104af565b8051608811610097576120356008610466565b906120436040519283610405565b600882526120516008610466565b6020830190601f19013682379060a00160085b602081101561207a5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612064576104af565b805160b811610097576120bd6030610466565b906120cb6040519283610405565b603082526120d96030610466565b6020830190601f19013682379060a80160305b60208110156121025780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156120ec576104af565b805160e811610097576121456030610466565b906121536040519283610405565b603082526121616030610466565b6020830190601f19013682379060d80160305b602081101561218a5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612174576104af565b805161011811610097576121ce6030610466565b906121dc6040519283610405565b603082526121ea6030610466565b6020830190601f1901368237906101080160305b60208110156122145780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156121fe576104af565b805161014811610097576122586030610466565b906122666040519283610405565b603082526122746030610466565b6020830190601f1901368237906101380160305b602081101561229e5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612288576104af565b805161017811610097576122e26030610466565b906122f06040519283610405565b603082526122fe6030610466565b6020830190601f1901368237906101680160305b60208110156123285780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612312576104af565b80516101a8116100975761236c6030610466565b9061237a6040519283610405565b603082526123886030610466565b6020830190601f1901368237906101980160305b60208110156123b25780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561239c576104af565b80516101d811610097576123f66030610466565b906124046040519283610405565b603082526124126030610466565b6020830190601f1901368237906101c80160305b602081101561243c5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612426576104af565b805161020811610097576124806030610466565b9061248e6040519283610405565b6030825261249c6030610466565b6020830190601f1901368237906101f80160305b60208110156124c65780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156124b0576104af565b8051610248116100975761250a6040610466565b906125186040519283610405565b604082526125266040610466565b6020830190601f1901368237906102280160405b60208110156125505780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561253a576104af565b8051601411610097576125936004610466565b906125a16040519283610405565b600482526125af6004610466565b6020830190601f19013682379060300160045b60208110156125d85780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156125c2576104af565b80516030116100975761261b601c610466565b906126296040519283610405565b601c8252612637601c610466565b6020830190601f190136823790603401601c5b60208110156126605780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561264a576104af565b8051604011610097576126a36010610466565b906126b16040519283610405565b601082526126bf6010610466565b6020830190601f19013682379060500160105b60208110156126e85780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156126d2576104af565b80516060116100975761272b6020610466565b906127396040519283610405565b602082526127476020610466565b6020830190601f19013682379060600160205b60208110156127705780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561275a576104af565b8051608011610097576127b36020610466565b906127c16040519283610405565b602082526127cf6020610466565b6020830190601f19013682379060800160205b60208110156127f85780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156127e2576104af565b805160a0116100975761283b6020610466565b906128496040519283610405565b602082526128576020610466565b6020830190601f19013682379060a00160205b60208110156128805780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561286a576104af565b805161010011610097576128c46060610466565b906128d26040519283610405565b606082526128e06060610466565b6020830190601f19013682379060c00160605b60208110156129095780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f198101908111156128f3576104af565b8051610102116100975761294d6002610466565b9061295b6040519283610405565b600282526129696002610466565b6020830190601f1901368237906101200160025b60208110156129935780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f1981019081111561297d576104af565b805161010411610097576129d76002610466565b906129e56040519283610405565b600282526129f36002610466565b6020830190601f1901368237906101220160025b6020811015612a1d5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612a07576104af565b80516101401161009757612a61603c610466565b90612a6f6040519283610405565b603c8252612a7d603c610466565b6020830190601f19013682379061012401603c5b6020811015612aa75780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612a91576104af565b80516101801161009757612aeb6040610466565b90612af96040519283610405565b60408252612b076040610466565b6020830190601f1901368237906101600160405b6020811015612b315780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612b1b576104af565b805160201161009757612b746020610466565b90612b826040519283610405565b60208252612b906020610466565b6020830190601f1901368237602080920190915b6020811015612bba5780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612ba4576104af565b805160401161009757612bfd6020610466565b90612c0b6040519283610405565b60208252612c196020610466565b6020830190601f19013682379060400160205b6020811015612c425780611db257509192915050565b909182518152602081018091116104d35791602081018091116104d35790601f19810190811115612c2c576104af565b60405190612c81604083610405565b6015825274496e76616c69642051455265706f7274206461746160581b6020830152565b60405190612cb4606083610405565b60278252667920636865636b60c81b6040837f566572696669636174696f6e206661696c65642062792051454964656e74697460208201520152565b6001600160401b03811161035d5760051b60200190565b5190610435826107f5565b519060ff8216820361009757565b9080601f83011215610097578151612d3781612cf0565b92612d456040519485610405565b81845260208085019260051b82010192831161009757602001905b828210612d6d5750505090565b60208091612d7a84612d12565b815201910190612d60565b51906001600160401b038216820361009757565b5190600882101561009757565b81601f820112156100975760208151910190612dc181610466565b92612dcf6040519485610405565b8184528183011161009757610169916020840190610108565b51906001600160c01b03198216820361009757565b9190916060818403126100975760405190612e1782610398565b81938151906001600160401b0382116100975782612e3e6040949261075794869401612da6565b8552612e4c60208201612de8565b602086015201612de8565b81601f8201121561009757805190612e6e82612cf0565b92612e7c6040519485610405565b8284526020606081860194028301019181831161009757602001925b828410612ea6575050505090565b606084830312610097576020606091604051612ec181610398565b612eca87612d12565b8152612ed7838801612d85565b83820152612ee760408801612d99565b6040820152815201930192612e98565b9080601f8301121561009757815191612f0f83612cf0565b92612f1d6040519485610405565b80845260208085019160051b830101918383116100975760208101915b838310612f4957505050505090565b82516001600160401b0381116100975782019060a0828703601f19011261009757612f72610437565b9060208301516001600160401b03811161009757876020612f9592860101612da6565b8252612fa360408401612de8565b6020830152612fb460608401612de8565b604083015260808301516001600160401b03811161009757876020612fdb92860101612da6565b606083015260a0830151916001600160401b0383116100975761300688602080969581960101612e57565b6080820152815201920191612f3a565b906080828203126100975761302a82610a40565b9260208301516001600160401b03811161009757830182601f820112156100975780519061305782612cf0565b916130656040519384610405565b80835260208084019160051b830101918583116100975760208101915b8383106130cb57505050509260408101516001600160401b03811161009757836130ad918301612dfd565b9260608201516001600160401b038111610097576101699201612ef7565b82516001600160401b0381116100975782019060a0828903601f19011261009757604051906130f9826103ea565b6020830151613107816107f5565b825260408301516001600160401b0381116100975789602061312b92860101612d20565b60208301526060830151916001600160401b0383116100975761317860a08561315c8d602080999881990101612d20565b604085015261316d60808201612d85565b606085015201612d99565b6080820152815201920191613082565b9092919260408201936002821015610a8a57602091835265ffffffffffff60d01b16910152565b604051906131be604083610405565b601882527f544342206e6f7420666f756e64206f72206578706972656400000000000000006020830152565b604051906131f9604083610405565b601b82527f4661696c656420746f20766572696679205835303920436861696e00000000006020830152565b9061323860209282815194859201610108565b0190565b6040519061324b606083610405565b603882527f2f6f72207165207265706f7274207369676e61747572657300000000000000006040837f4661696c656420746f20766572696679206174746573746174696f6e20616e6460208201520152565b6132a682610a80565b52565b939491906060946132b8611184565b9460408801908151926132e16101608551015160208c0195602060408851920151015191613c76565b801561359357506001600160e01b031916159283156135895761330960005b84515190613f62565b9a9080158015613576575b613561575090839291604060606133989897965101510151936020855195015195600014613559576000965b60408701517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169860009161337c906112c6565b60405163e69f638360e01b81529b8c9283929060048401613188565b03818b5afa998a15610d345760009889809b819d613526575b501561350b576040516367ecb13960e01b815290602082600481845afa918215610d34576000926134e6575b50602060049160405192838092633fcb603b60e01b82525afa8015610d3457613410928a926000926134c5575b5061415c565b80156134ac575061343a9261344e6134699796959361344060209460405197889387850190613225565b90613225565b03601f198101865285610405565b51015160a061345c8861167f565b51015191519351946144c6565b9889156134955761347d9060a0890161329d565b86526020860152604085015260608401526080830152565b50505050505092909150916134a861323c565b9190565b9c9d5050505050505050505050509250916134a86131ea565b6134df91925060203d602011611d0f57611d018183610405565b903861340a565b6004919250613503602091823d8411611d0f57611d018183610405565b9291506133dd565b505050505050505050505050925090506000916134a86131af565b929c50909950613549929a503d8091833e6135418183610405565b810190613016565b9b909a91999192909190386133b1565b600196613340565b989950505050505050509250916134a8612ca5565b506135808c610a80565b60028c14613314565b6133096002613300565b9798505050505050509250916134a8612c72565b600093909284929083808080805b89518110156136d4576135c8818b611691565b5184156136be575b83806136b7575b61369c575b8480613688575b1561365d576001600160801b031987161561364d5761360660408201518861455c565b613633575b508a5b61361a576001016135b5565b505050505050509091505b821561362d57565b60079150565b6080015160019b508b995061364781611237565b9861360b565b5050505050505050909150613625565b5061366785611237565b60068514613675578a61360e565b5050505050505092505050600090600690565b5061369286611237565b60068614156135e3565b9450925060019260808501516136b181611237565b946135dc565b50826135d7565b925090506136cc8287614539565b9190926135d0565b50505050505050909150613625565b604051906136f2604083610405565b60048252635444585f60e01b6020830152565b8060001a9060011a6060916000908215613880579061343a916137786137296136e3565b60405160f887901b6001600160f81b031916602082015261376a9061375a906137558160218101610c60565b614596565b6040519687936020850190613225565b03601f198101855284610405565b60009460009060005b885181101561387157613794818a611691565b516137af815188906020815191012090602081519101201490565b6137bc5750600101613781565b9697985050909192935060808501519360005b8551811015613862576137f66137f06137e88389611691565b515160ff1690565b60ff1690565b851015613805576001016137cf565b925050506040929394955061381d9150600193611691565b51015161382981611237565b93613846602060608501519401516001600160401b0360c01b1690565b915b156138565760019493929190565b60009450600793929190565b50945094959150959150613848565b50959294965096925050613848565b505091505060019160009190606090600090565b929083518151811494856138c4575b505050826138b057505090565b6001600160c01b0319918216911614919050565b6138db92939550816138d591614fa5565b92614fa5565b14913880806138a3565b600092916008811015610a8a576004036139625761390281611237565b8015801561394f575b613946575b61391981611237565b60038114908115613932575b5061392c57565b60059150565b6002915061393f81611237565b1438613925565b60049250613910565b5061395981611237565b6001811461390b565b9150565b9190600360009361397681610a80565b03613962576008811015610a8a578015801561394f576139465761391981611237565b805163ffffffff60e01b602083015116916040810151916008831015610a8a5761016992602d92608065ffffffffffff60d01b6060830151169101519160405196879461ffff60f01b9060f01b166020860152602285015260f81b60268401526027830152613a118151809260208686019101610108565b81010301601f198101835282610405565b613a3182608092949394614539565b9190930151906008821015610a8a5783613a56575b508215613a505790565b50600790565b925038613a46565b6040519061012082018281106001600160401b0382111761035d5760405260606101008360008152826020820152600060408201526000838201528260808201528260a0820152600060c08201528260e08201520152565b60405160809190613ac78382610405565b6003815291601f19018260005b828110613ae057505050565b602090613aeb613a5e565b82828501015201613ad4565b90613b0182612cf0565b613b0e6040519182610405565b8281528092613b1f601f1991612cf0565b019060005b828110613b3057505050565b806060602080938501015201613b24565b9192909261ffff613b5061073b565b94613b59613ab6565b8652166005811015613b6e5750600093925050565b600503613c5f57613b7e906145fd565b9190938415613c5557613bad613b9d613b968561167f565b5186614851565b839291925190602085015261167f565b52613bc0613bbb8451610dc1565b613af7565b9460005b8651811015613bff5780613be2613bdc60019361053b565b87611691565b51613bed828a611691565b52613bf88189611691565b5001613bc4565b5092509293613c0e9194614953565b9060005b8251811015613c4f5780613c48613c2b60019386611691565b518651613c378461053b565b91613c428383611691565b52611691565b5001613c12565b50929050565b6000945092509050565b506000929150565b601f81116104d3576101000a90565b613cdb60209283613cca613c8b60009561150c565b9660405192839181613ca68185019788815193849201610108565b8301613cba82518093858085019101610108565b010103601f198101835282610405565b604051928392839251928391610108565b8101039060025afa15610d34576000511490565b60405190613cfc82610341565b60606101608360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c0820152600060e08201526000610100820152600061012082015260006101408201520152565b5190600382101561009757565b519063ffffffff8216820361009757565b5190610435826107d9565b519061043582610829565b81601f8201121561009757805190613d9d82612cf0565b92613dab6040519485610405565b8284526020606081860194028301019181831161009757602001925b828410613dd5575050505090565b6060848303126100975760405190613dec82610398565b8451613df7816107f5565b8252602085015160208301526040850151906004821015610097578260209260406060950152815201930192613dc7565b919060408382031261009757613e3d83610a40565b926020810151906001600160401b03821161009757016101808183031261009757613e66610446565b91613e7082613d52565b8352613e7e60208301613d5f565b6020840152613e8f60408301612d85565b6040840152613ea060608301612d85565b6060840152613eb160808301613d5f565b6080840152613ec260a08301613d70565b60a0840152613ed360c08301613d70565b60c0840152613ee460e08301613d7b565b60e0840152613ef66101008301613d7b565b610100840152610120820151610120840152613f156101408301612d07565b6101408401526101608201516001600160401b03811161009757613f399201613d86565b61016082015290565b90929160408201936003811015610a8a5760209161ffff91845216910152565b906000613fae92613f71613cef565b506040518094819263b9f1b94f60e01b83527f00000000000000000000000000000000000000000000000000000000000000009060048401613f42565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610d345760009260009261404c575b5082156140445760208101516109c193506001600160e01b03191660608201516001600160801b03191660c08301519161403e61012061403461010087015161ffff1690565b95015161ffff1690565b94614a38565b505090600090565b90925061406c91503d806000833e6140648183610405565b810190613e28565b909138613fee565b60405190614083604083610405565b601982527f496e74656c205347582050434b20506c6174666f726d204341000000000000006020830152565b604051906140be604083610405565b601a82527f496e74656c205347582050434b2050726f636573736f722043410000000000006020830152565b9190916040818403126100975780516001600160401b0381116100975783614113918301612da6565b9260208201516001600160401b038111610097576101699201612da6565b908160209103126100975761016990610a40565b60409061016993928152816020820152019061012b565b825160009384938493849384936001600160a01b039283169391929091165b8285106141b6575b50505050501592836141ae575b50826141a6575b50816141a1575090565b905090565b915038614197565b925038614190565b9091929395976141c4613a5e565b506141ce84610dc1565b87036142cd57506141df8683611691565b51955b60406141ee8285611691565b510151421198896142b4575b89156142ad5750602060006142246101006142158588611691565b51015160405191828092613225565b039060025afa15610d345761425160005160a060e06142438588611691565b510151990198895191614bb3565b9687156142a7577f89f72d7c488e5b53a77c23ebcb36970ef7eb5bcf6658e9b8292cfbe4703a847390516020815191012014614293576001019392919061417b565b505050505091506001913880808080614183565b50614183565b9650614183565b985060606142c28285611691565b5101514210986141fa565b956142e06142da8261053b565b84611691565b519660606142ed86610dd0565b83036143da575060405163722f132760e01b8152600060048201819052816024818a5afa908115610d34576000916143b7575b505b805161433d575b508661433557506141e2565b989650614183565b61436d9197506020906143508487611691565b515160405163cedb978160e01b8152938492839260048401614145565b0381865afa908115610d3457600091614389575b509538614329565b6143aa915060203d81116143b0575b6143a28183610405565b810190614131565b38614381565b503d614398565b6143d2913d8091833e6143ca8183610405565b8101906140ea565b905038614320565b82614322575060206143ec8386611691565b51015161440f6143fa614074565b82906020815191012090602081519101201490565b15614462575060405163722f132760e01b8152600260048201526000816024818a5afa908115610d3457600091614447575b50614322565b61445a913d8091833e6143ca8183610405565b905038614441565b6144819061446e6140af565b6020815191012090602081519101201490565b156144b75760405163722f132760e01b8152600160048201526000816024818a5afa908115610d34576000916144475750614322565b50505050505050505050600090565b60006144e76020929796979493948360405192828480945193849201610108565b8101039060025afa15610d345761450091600051614bb3565b15610d395760006145206020928360405192828480945193849201610108565b8101039060025afa15610d345761016991600051614bb3565b91906101699060208061ffff86511661ffff845116111595015191015190614c6f565b6010825103610cf05760005b6010811061457857505050600190565b60ff6145848285611691565b511682821a10610d3957600101614568565b90815191604051926022600285019482800186526f30313233343536373839616263646566600f5201908201915b8281036145d957506000815260200160405250565b60016002910191600f835116516001820153600f835160041c1651815301906145c4565b6146076003613af7565b906000815191815b600383106146205750505050600191565b821561469e578381018082116104d35761463e614643918385614ccb565b614da5565b9291906146508689611691565b5261466461465e8689611691565b51614e85565b61466e8689611691565b526146798588611691565b50156146935760019161468b91610583565b92019161460f565b506000959350505050565b61464382614da5565b602081830312610097578051906001600160401b038211610097570161012081830312610097576146d6610456565b918151835260208201516001600160401b03811161009757816146fa918401612da6565b6020840152604082015160408401526060820151606084015260808201516001600160401b0381116100975781614732918401612da6565b608084015260a08201516001600160401b0381116100975781614756918401612da6565b60a084015260c082015160c084015260e08201516001600160401b0381116100975781614784918401612da6565b60e08401526101008201516001600160401b038111610097576147a79201612da6565b61010082015290565b90602061016992818152019061012b565b906080828203126100975781516147d7816107f5565b9260208301516001600160401b03811161009757826147f7918501612d20565b9260408101516001600160401b0381116100975783614817918301612da6565b9260608201516001600160401b038111610097576101699201612da6565b92919061484c60209160408652604086019061012b565b930152565b909161485b613a5e565b50614864610716565b604051631dbcd30f60e11b81529390926001600160a01b03166000858061488e85600483016147b0565b0381845afa948515610d3457600095614926575b506148cc9160009160c08701519160405180958194829363740e383f60e11b845260048401614835565b03915afa908115610d345761043591600091829183918491614901575b5060608701526040860152602085015261ffff168352565b92505050614920913d8091833e6149188183610405565b8101906147c1565b386148e9565b60009195509161494a6148cc933d8085833e6149428183610405565b8101906146a7565b959150916148a2565b81519192916001600160a01b039091169061496d81612cf0565b9161497b6040519384610405565b818352601f1961498a83612cf0565b0160005b818110614a21575050829460005b8381106149aa575050505050565b8060006149ba6149d59385611691565b5160405180948192631dbcd30f60e11b8352600483016147b0565b0381875afa8015610d3457600192600091614a08575b506149f68288611691565b52614a018187611691565b500161499c565b614a1b913d8091833e6149428183610405565b386149eb565b602090614a2c613a5e565b8282880101520161498e565b949091929593600092614a5560c088015163ffffffff60e01b1690565b16614a7a614a6d60a089015163ffffffff60e01b1690565b6001600160e01b03191690565b6101008801516001600160e01b03199092161494906001600160801b03191616614abf614ab260e08901516001600160801b03191690565b6001600160801b03191690565b906001600160801b0319161496610120870151149061ffff614aea6116136101408a015161ffff1690565b911614916000805b610160890180518051831015614b9457614b0f83614b1892611691565b515161ffff1690565b61ffff80861691161115614b2f5750600101614af2565b969798509050604092939450614b49915060019551611691565b510151614b5581610a80565b955b84614b8c575b5083614b84575b5082614b7c575b5081614b7657509190565b90509190565b915038614b6b565b925038614b64565b935038614b5d565b5050509495965050909195614b57565b90816020910312610097575190565b600092918392614bd16115c7614bcb6115c785612b61565b93612bea565b90614bea6115c7614be46115c784612b61565b92612bea565b91604051936020850195865260408501526060840152608083015260a082015260a08152614c1960c082610405565b519073c2b78104907f722dabac4c69f826a522b2754de45afa614c3a610a9b565b9015614c5957614c5581602080600194518301019101614ba4565b1490565b634e487b7160e01b600052600160045260246000fd5b906010825114801590614cbf575b610cf05760005b60108110614c9457505050600190565b60ff614ca08285611691565b511660ff80614caf8486611691565b51161611610d3957600101614c84565b50601081511415614c7d565b805160609493929083811115614d43575b81811115614d3b575b50828110614cf257505050565b6040519281900380845292945001601f8201601f19165b8181015185820152601f1901908115614d225790614d09565b5050600083820160200152603f01601f19168201604052565b905038614ce5565b925082614cdc565b60405190614d5a604083610405565b601982527f2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d000000000000006020830152565b60405190614d95604083610405565b60018252600560f91b6020830152565b614de6604051614db6604082610405565b601b81527f2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d00000000006020820152826150eb565b614df7614df1614d4b565b836150eb565b9160001982148015614e7a575b614e6c57614e2683614e18614e2b94610567565b614e20614d86565b93614ccb565b614fb4565b60009260605b8251851015614e5957614e51600191614e4a8786611691565b5190615078565b940193614e31565b935091614e669150610575565b60019291565b505050600090606090600090565b506000198314614e04565b90606091805180614e94575050565b90925060038160021c029060038116908115614f8a575001600019015b6040519281845260208401918401916003600460208501936000805160206152c7833981519152605b527804080c1014181c2024282c3034383c4044484c5054585c6064603b526ef8fcf800fcd0d4d8dce0e4e8ecf0f4601a525b0191825160ff81165160061c81601e1a516000805160206152c7833981519152161760061c81601d1a516000805160206152c7833981519152161760061c90601c1a516000805160206152c783398151915216178152019082821015614f7757600390600490614f0c565b5050604060009201604052526000606052565b613d3d91508401511860ff81161590601e1a15019003614eb1565b80518211610097576020012090565b919091614fc183826151c3565b90602082018091600184510160051b8401916020830192825190526001855101855260005b81519060608352808203615022575b50602090885101910190838210614fe6575050505081935115615016575050565b90516001190181529150565b604051818303808252949091601f8601601f19165b82820181015184820152601f19019182156150525791615037565b9590506020939291506000848284010152603f601f199101168101604052835290614ff5565b60405181519093929160208201601f19165b8181015186820152601f19019081156150a3579061508a565b505081519184820160208401601f19165b8281015182820152601f19019182156150cd57916150b4565b5050500180830190600060208301528352603f601f19910116604052565b80518251919392849082151584156151b857602185602060001999019585010301946020601f8216810360031b9301805192878710161561519157602082101561516a575050925b83815118821c156151575760010192848410156151505792615133565b5050505050565b91909103601f1901945061043592505050565b90809295939120925b85815118821c1561519a575b60010194868610156151915794615173565b50505050505050565b838382200361517f5793909303601f19019650610435945050505050565b506000955050505050565b91908283916060948051825191818311156151e1575b505050505050565b82939495969750916020806021939401950192602060405101970103019360009160208410156152bc575b601f841660200360031b9051945b85815118821c15615263575b6001019486861015615239575b9461521a565b505050505050505b90602060405192601f198482030160051c8452016040523880808080806151d9565b968484615295575b60208192601f19868c03018152019801901561522657948686106152335750505050505050615241565b84908920036152a4578461526b565b96600101948686106152335750505050505050615241565b838120925061520c56fefc000000fc00686c7074787c8084888c9094989ca0a4a8acb0b4b8bcc0c4c8cca26469706673582212204e5f1475a4d62693834a9cea6c2b41dccfedf82e0020c370238e7db5f6f8f92d64736f6c634300081b0033000000000000000000000000de5e69a2ca2556fe46883d754d987703bf28cc51", + "nonce": "0x14", + "chainId": "0x4268" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x7898cb", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x63d79437b36b9cdbc90fa288dce58b3b557f8f85f1c6fc283ee6a05b5a259c75", + "transactionIndex": "0x19", + "blockHash": "0xe6341de3338e4992b5534c4857461ae7195a87c86c0cd9c38fc58f8afc8dc22a", + "blockNumber": "0x24b6db", + "gasUsed": "0x46f496", + "effectiveGasPrice": "0x5c81a46", + "from": "0xdc3bda6d40f0e33e0dfa4aef9604b66195e6c5dc", + "to": null, + "contractAddress": "0x3cb24c454a29e796edf47a96df32dd1855058258" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1727270462, + "chain": 17000, + "commit": "7c32bb8" +} \ No newline at end of file diff --git a/broadcast/DeployV4.s.sol/65536/run-latest.json b/broadcast/DeployV4.s.sol/65536/run-latest.json new file mode 100644 index 0000000..ffccdf7 --- /dev/null +++ b/broadcast/DeployV4.s.sol/65536/run-latest.json @@ -0,0 +1,54 @@ +{ + "transactions": [ + { + "hash": "0xae4127d5f3d8264ceb27eb2872a8810a37d1e89a8e04dc79ef67c8106e370b09", + "transactionType": "CREATE", + "contractName": "V4QuoteVerifier", + "contractAddress": "0xff47eca64898692a86926cdda794807be3f6567d", + "function": null, + "arguments": [ + "0xb76834729717868fa203b9D90fc88F859A4E594D" + ], + "transaction": { + "from": "0x427e03845e6187ec01260a0fb501ab0908ec42b5", + "gas": "0x5a94cf", + "value": "0x0", + "input": "0x60c034620000b657601f6200526838819003918201601f19168301916001600160401b03831184841017620000bb57808492602094604052833981010312620000b657516001600160a01b03811690819003620000b657608052600460a0526040516151969081620000d28239608051818181606a01528181610b1601528181611bf6015281816130ce0152613d7a015260a05181818160b1015281816113a3015281816117090152818161189d0152613d4d0152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b6000803560e01c908163020778371461009c5781639e0fb0bf1461005557508063d9ed324f146100505763f14951141461004b57600080fd5b6101bd565b610170565b346100995780600319360112610099576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b3461009957806003193601126100995761ffff7f00000000000000000000000000000000000000000000000000000000000000001660805260206080f35b9181601f84011215610107578235916001600160401b038311610107576020838186019501011161010757565b600080fd5b60005b83811061011f5750506000910152565b818101518382015260200161010f565b906020916101488151809281855285808601910161010c565b601f01601f1916010190565b60409061016d939215158152816020820152019061012f565b90565b34610107576020366003190112610107576004356001600160401b038111610107576101a36101a99136906004016100da565b906105d0565b906101b960405192839283610154565b0390f35b3461010757366003190161010081126101075760e0136101075760e4356001600160401b038111610107576101f96101a99136906004016100da565b906108db565b909291928360021161010757831161010757600201916001190190565b906030116101075790603090565b9061027811610107576030019061024890565b906101b011610107576030019061018090565b90929192836030116101075783116101075760300191602f190190565b906040116101075790604090565b906080116101075760400190604090565b906082116101075760800190600290565b906086116101075760820190600490565b9061020611610107576086019061018090565b9061024611610107576102060190604090565b9061024811610107576102460190600290565b92919261024891848311610107578411610107570191610247190190565b90939293848311610107578411610107578101920390565b634e487b7160e01b600052604160045260246000fd5b61018081019081106001600160401b0382111761034f57604052565b61031d565b608081019081106001600160401b0382111761034f57604052565b604081019081106001600160401b0382111761034f57604052565b606081019081106001600160401b0382111761034f57604052565b60a081019081106001600160401b0382111761034f57604052565b60c081019081106001600160401b0382111761034f57604052565b90601f801991011681019081106001600160401b0382111761034f57604052565b604051906104098261038a565b565b60405190610409826103a5565b6040519061040982610333565b6040519061012082018281106001600160401b0382111761034f57604052565b6001600160401b03811161034f57601f01601f191660200190565b6040519061046d8261036f565b601082526f556e6b6e6f776e20544545207479706560801b6020830152565b634e487b7160e01b600052601160045260246000fd5b90602082018092116104b057565b61048c565b90604082018092116104b057565b90606082018092116104b057565b90608082018092116104b057565b9061018082018092116104b057565b90600482018092116104b057565b90600182018092116104b057565b906102489182018092116104b057565b90600282018092116104b057565b90601b82018092116104b057565b90601982018092116104b057565b919082018092116104b057565b6040519061055e8261038a565b60268252650e6dac2e8c6d60d31b6040837f466f756e64206f6e65206f72206d6f726520636f6c6c61746572616c73206d6960208201520152565b9291926105a582610445565b916105b360405193846103db565b829481845281830111610107578281602093846000960137010152565b91906002816008116101075760048401356001600160e01b0319168061063b575061018d81018091116104b057925b604884018085116104b057828261061592610a71565b9384156106305761016d92610629926101ff565b3691610599565b50505061016d610551565b608160e01b1415905061065157610257926105ff565b50905061065c610460565b600091565b6040519061066e82610333565b606061016083600080825280602083015280604083015280848301528060808301528060a08301528060c08301528360e083015280610100830152610120820152826101408201520152565b604051906106c782610354565b60608083600081528160208201528160408201520152565b604051906106ec8261036f565b816060815260206106fb6106ba565b910152565b604090815161070e8161038a565b8092606082526060602083015280519161072783610354565b61072f610661565b83526060602084015281516107438161036f565b600081526060602082015282840152815161075d8161038a565b60008152600060208201526107706106df565b8382015260608401520152565b6001600160e01b031981160361010757565b60443561016d8161077d565b61ffff81160361010757565b6001600160f01b031981160361010757565b60643590610409826107a7565b60843590610409826107a7565b604435906104098261077d565b6001600160801b031981160361010757565b60a43590610409826107e0565b60c435906bffffffffffffffffffffffff198216820361010757565b60e0906003190112610107576040519060e082018281106001600160401b0382111761034f57604052816004356108518161079b565b815260243561085f816107a7565b602082015261086c6107d3565b60408201526108796107b9565b60608201526108866107c6565b60808201526108936107f2565b60a082015260c06106fb6107ff565b604051906108af8261036f565b602082527f6661696c656420746f207061727365206c6f63616c20697376207265706f72746020830152565b906108e4610700565b506108ef8183610dee565b939491929094156109bc5750610908610629828761021c565b916001600160e01b031961091a61078f565b1661097e576109319061092b610661565b506114b5565b919015610970576106296109489161096c9761023d565b926109516103fc565b9161095b3661081b565b83526020830152604082015261163a565b9091565b50505050505061065c6108a2565b61062961096c969261099261099893610fb4565b9361022a565b926109a16103fc565b916109ab3661081b565b835260208301526040820152611295565b9594505050505060009190565b3590602081106109d7575090565b6000199060200360031b1b1690565b5190811515820361010757565b9190826040910312610107576020610a0a836109e6565b92015190565b634e487b7160e01b600052602160045260246000fd5b60041115610a3057565b610a10565b6040513d6000823e3d90fd5b3d15610a6c573d90610a5282610445565b91610a6060405193846103db565b82523d6000602084013e565b606090565b919091610af2610a91610a97610a91610a89856104a2565b858789610305565b906109c9565b94610ab8610a91610aa7866104a2565b610ab0876104b5565b908885610305565b93610ad9610a91610ac8836104b5565b610ad1846104c3565b908986610305565b95610aec610ae6836104c3565b926104d1565b92610305565b6040805163943374c960e01b80825260036004830152929591936001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001693918581602481885afa908115610cce57600090600092610d14575b5015918215610d09575b5050610cfe578351908152600060048201528381602481865afa908115610cce57600090600092610cde575b5015918215610cd3575b5050610c8a578151630c64c7b960e41b8082526000600483015293908381602481865afa908115610cce57600090600092610c9e575b5015918215610c93575b5050610c8a57600080835192602095828088870183815287610bfc60248201906002602083019252565b0397610c10601f19998a81018352826103db565b5190855afa94610c3e610c21610a41565b9751898101938452600160248201526044928301815291826103db565b51915afa610c4a610a41565b9115610c6957505081610c6392825183010191016109f3565b90501490565b90915015610c825781610c6392825183010191016109f3565b505050600090565b50505050600090565b141590503880610bd2565b9050610cc09150843d8611610cc7575b610cb881836103db565b8101906109f3565b9038610bc8565b503d610cae565b610a35565b141590503880610b92565b9050610cf79150843d8611610cc757610cb881836103db565b9038610b88565b505050505050600090565b141590503880610b5c565b9050610d2d9150863d8811610cc757610cb881836103db565b9038610b52565b6085198101919082116104b057565b60200390602082116104b057565b6000198101919082116104b057565b6001198101919082116104b057565b919082039182116104b057565b60405190610d898261036f565b601982527f71756f7465206c656e67746820697320696e636f7272656374000000000000006020830152565b60405190610dc28261036f565b601882527f6661696c656420746f20706172736520617574686461746100000000000000006020830152565b606090610df9610700565b6001600160e01b0319610e0a61078f565b1693610e21851580968115610ef1575b5082611883565b8096918015610ee5575050603090600014610edc57610e3f906104df565b610e4d610629828487610250565b94610e76610e70610e6b610629610e63866104ee565b86888b610305565b61198d565b926104ee565b9382610e828686610d6f565b10610ec957505091610ea29391610aec610e9c9483610544565b90611a25565b919482828715610eb0575050565b9350939450945050600093610ec3610db5565b93929190565b9450949550505050600093610ec3610d7c565b50610278610e3f565b97909650859450915050565b608160e01b14905038610e1a565b604051906101e082018281106001600160401b0382111761034f5760405281600081526101c060609182602082015282604082015260008382015260006080820152600060a08201528260c08201528260e08201528261010082015282610120820152826101408201528261016082015282610180820152826101a08201520152565b90602082519201516001600160801b0319908181169360108110610fa557505050565b60100360031b82901b16169150565b90611108610fc0610eff565b92610fe3610fd5610fd083611ce9565b610f82565b6001600160801b0319168552565b610fec81611d86565b6020850152610ffa81611dfa565b6040850152611041611030611020611014610e6b85611e6f565b6001600160401b031690565b60c01b6001600160c01b03191690565b6001600160c01b0319166060860152565b611067611056611020611014610e6b85611ee4565b6001600160c01b0319166080860152565b61108d61107c611020611014610e6b85611f59565b6001600160c01b03191660a0860152565b61109681611fce565b60c08501526110a481612043565b60e08501526110b2816120b8565b6101008501526110c18161212f565b6101208501526110d0816121a6565b6101408501526110df8161221d565b6101608501526110ee81612294565b6101808501526110fd8161230b565b6101a0850152612382565b6101c0830152565b6040519060c082018281106001600160401b0382111761034f57604052600060a0836060815261113e6106ba565b6020820152606060408201526040516111568161038a565b606081528360208201528360408201526060820152606060808201520152565b604051906111838261038a565b602982526843422053746174757360b81b6040837f4661696c656420746f206c6f6361746520612076616c696420464d535043205460208201520152565b60081115610a3057565b604051906111d88261038a565b602d82526c6c65205443422053746174757360981b6040837f4661696c656420746f206c6f6361746520612076616c6964205444584d6f647560208201520152565b604051906112278261036f565b6016825275151116135bd91d5b194818da1958dac819985a5b195960521b6020830152565b5161016d81610a26565b906020825192015165ffffffffffff60d01b90818116936006811061127a57505050565b60060360031b82901b16169150565b6008821015610a305752565b939291906112ca906112a5611110565b50604093836112bf8689510163ffffffff60e01b90511690565b928689015193613030565b9115611436575082810151906112ff6020820192602084519801976112f989516001600160801b031990511690565b91613335565b969015611427578051516080830151611321916001600160801b031916613495565b939092949150158015611414575b6114025751878101516060909101516113549392906001600160c01b03191691613644565b9687156113f2576113958661138c6113e89560a061137b61016d9b9a99976113d797613695565b91015161138781610a26565b613716565b93510151611256565b9161139e61040b565b61ffff7f000000000000000000000000000000000000000000000000000000000000000016815295608160e01b60208801528601611289565b6001600160d01b0319166060840152565b6080820152613749565b505050505050905061065c61121a565b5050505050505050905061065c6111cb565b5061141e846111c1565b6006841461132f565b5050505050905061065c611176565b945050505060009190565b906020825192015163ffffffff60e01b90818116936004811061146357505050565b60040360031b82901b16169150565b906020825192015163ffffffff199081811693601c811061149257505050565b601c0360031b82901b16169150565b6020815191015190602081106109d7575090565b6114bd610661565b906101808151036115f857806114e96114db610fd06115ed94611ce9565b6001600160801b0319168452565b61150e6114fd6114f8836123f9565b611441565b6001600160e01b0319166020850152565b61153061152261151d8361246e565b611472565b63ffffffff19166040850152565b61155061153f610fd0836124e3565b6001600160801b0319166060850152565b61156161155c82612558565b6114a1565b608084015261157261155c826125c9565b60a084015261158361155c8261263a565b60c0840152611591816126ab565b60e08401526115bb6115af6115a8610e6b84612721565b61ffff1690565b61ffff16610100850152565b6115d96115cd6115a8610e6b84612798565b61ffff16610120850152565b6115e28161280f565b610140840152612886565b610160820152600191565b50600091565b634e487b7160e01b600052603260045260246000fd5b8051156116215760200190565b6115fe565b80518210156116215760209160051b010190565b61166f919394929461164a611110565b508560409560406116668186510163ffffffff60e01b90511690565b94015193613030565b91949085156117695750600080815b8685015191825184101561175c5750506116a8906116a183602087015192611626565b51906137d1565b9091826116b957600101919061167e565b5091929394505b80158015611749575b61173c5750906113e86116f9604060206116ef879660a061016d99015161138781610a26565b9501510151611256565b6113d761170461040b565b61ffff7f0000000000000000000000000000000000000000000000000000000000000000168152946000602087015260408601611289565b945050505061016d611176565b50611753826111c1565b600682146116c9565b92509293949550506116c0565b6000955093505050565b604051906117808261038a565b60218252606d60f81b6040837f51756f7465206c656e677468206973206c657373207468616e206d696e696d7560208201520152565b60043561016d8161079b565b604051906117cf8261036f565b601082526f0accae4e6d2dedc40dad2e6dac2e8c6d60831b6020830152565b60243561016d816107a7565b604051906118078261036f565b602082527f556e737570706f72746564206174746573746174696f6e206b657920747970656020830152565b60a43561016d816107e0565b6040519061184c8261038a565b6022825261125160f21b6040837f4e6f7420612076616c696420496e74656c205347582051452056656e646f722060208201520152565b906103fc60609210611947576118976117b6565b61ffff807f00000000000000000000000000000000000000000000000000000000000000001691160361193a57600160f91b6001600160f01b03196118da6117ee565b160361192d5715611921576f939a7233f79c4ca9940a0db3957f060760801b6001600160801b031961190a611833565b160361191557600191565b5060009061016d61183f565b5060009061016d610460565b505060009061016d6117fa565b505060009061016d6117c2565b505060009061016d611773565b600181901b91906001600160ff1b038116036104b057565b818102929181159184041417156104b057565b603f81116104b05760100a90565b60009190825b8151841015611a0157602084830101516119e46119c66119ba6119b588611954565b61197f565b600f8460f81c1661196c565b916119db6119b56119d689611954565b6104fc565b9060fc1c61196c565b81018091116104b05781018091116104b057600190930192611993565b925050565b9081602091031261010757516001600160a01b03811681036101075790565b919091611a30610700565b91611a3e610629858461026d565b8352611a59611a4d858461027b565b91906020923691610599565b818501526006611a6f610e6b610629888761028c565b03611cde57611a84610e6b610629878661029d565b92611a9261062987836102ae565b93611a9d87836102c1565b979092604098611ab68a8a019587875101923691610599565b9052611b10611ace6115a8610e6b61062986866102d4565b85518b015161ffff82169052948a611b0961ffff8098169289611afa611af38661050a565b89896102e7565b94909251015101923691610599565b905261050a565b6005611b2f6115a8610e6b610629611b278661051a565b868989610305565b95861603611cd257849392611bc5610629611bd09460609863ffffffff8f8f8d611b77611bcb9a611b72611ba795611bb99501976060895101519061ffff169052565b61051a565b90611b9f611b96610e6b6106298d86611b8f816104ee565b918d610305565b63ffffffff1690565b9384926104ee565b9e8f96510151019063ffffffff169052565b1694610aec8683610544565b95610544565b610d34565b03611cc957611bde856114b5565b888801515215611cc957865163d137d4a360e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168482600481845afa908115610cce576004928692611cac575b50895163e99bba5360e01b815292839182905afa908115610cce57611c6594600092611c7f575b505061391f565b9094606081860151015101528315611c7957565b60009350565b611c9e9250803d10611ca5575b611c9681836103db565b810190611a06565b3880611c5e565b503d611c8c565b611cc290833d8511611ca557611c9681836103db565b5038611c37565b50600095505050565b50600098505050505050565b506000935060609150565b80516010116101075760405190611cff8261036f565b601082526020908183019082368337826010910191925b80821015611d57575080611d385750600019905b518251821691191617905290565b611d4c611d47611d5192610d43565b613a45565b610d51565b90611d2a565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611d16565b80516040116101075760405190611d9c8261038a565b6030825260209060208301906040368337603080910191925b80821015611dcb575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611db5565b80516070116101075760405190611e108261038a565b603082526020906020830190604036833760606030910191925b80821015611e40575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611e2a565b80516078116101075760405190611e858261036f565b600882526020906020830190602036833760906008910191925b80821015611eb5575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611e9f565b80516080116101075760405190611efa8261036f565b600882526020906020830190602036833760986008910191925b80821015611f2a575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611f14565b80516088116101075760405190611f6f8261036f565b600882526020906020830190602036833760a06008910191925b80821015611f9f575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611f89565b805160b8116101075760405190611fe48261038a565b603082526020906020830190604036833760a86030910191925b80821015612014575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790611ffe565b805160e81161010757604051906120598261038a565b603082526020906020830190604036833760d86030910191925b80821015612089575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612073565b80516101181161010757604051906120cf8261038a565b60308252602090602083019060403683376101086030910191925b80821015612100575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906120ea565b80516101481161010757604051906121468261038a565b60308252602090602083019060403683376101386030910191925b80821015612177575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612161565b80516101781161010757604051906121bd8261038a565b60308252602090602083019060403683376101686030910191925b808210156121ee575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906121d8565b80516101a81161010757604051906122348261038a565b60308252602090602083019060403683376101986030910191925b80821015612265575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b0579061224f565b80516101d81161010757604051906122ab8261038a565b60308252602090602083019060403683376101c86030910191925b808210156122dc575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906122c6565b80516102081161010757604051906123228261038a565b60308252602090602083019060403683376101f86030910191925b80821015612353575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b0579061233d565b80516102481161010757604051906123998261038a565b60408252602090602083019060403683376102286040910191925b808210156123ca575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906123b4565b8051601411610107576040519061240f8261036f565b600482526020906020830190602036833760306004910191925b8082101561243f575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612429565b805160301161010757604051906124848261036f565b601c8252602090602083019060203683376034601c910191925b808210156124b4575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b0579061249e565b805160401161010757604051906124f98261036f565b601082526020906020830190602036833760506010910191925b80821015612529575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612513565b8051606011610107576040519061256e8261036f565b6020908183528183019082368337606083910191925b8082101561259a575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612584565b805160801161010757604051906125df8261036f565b6020908183528183019082368337608083910191925b8082101561260b575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906125f5565b805160a01161010757604051906126508261036f565b602090818352818301908236833760a083910191925b8082101561267c575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612666565b80516101001161010757604051906126c282610354565b606082526020906020830190606036833760c06060910191925b808210156126f2575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906126dc565b80516101021161010757604051906127388261036f565b60028252602090602083019060203683376101206002910191925b80821015612769575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612753565b80516101041161010757604051906127af8261036f565b60028252602090602083019060203683376101226002910191925b808210156127e0575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906127ca565b80516101401161010757604051906128268261038a565b603c825260209060208301906040368337610124603c910191925b80821015612857575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612841565b805161018011610107576040519061289d8261038a565b60408252602090602083019060403683376101606040910191925b808210156128ce575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b057906128b8565b805160401161010757604051906129138261036f565b6020908183528183019082368337604083910191925b8082101561293f575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612929565b8051602090811161010757604051916129868361036f565b81835281830190823683378280910191925b808210156129ae575080611d3857509192915050565b909192835181528181018091116104b057928181018091116104b05791601f1981019081116104b05790612998565b604051906129ea8261036f565b6015825274496e76616c69642051455265706f7274206461746160581b6020830152565b60405190612a1b8261038a565b60278252667920636865636b60c81b6040837f566572696669636174696f6e206661696c65642062792051454964656e74697460208201520152565b6001600160401b03811161034f5760051b60200190565b51906104098261079b565b519060ff8216820361010757565b9080601f8301121561010757815190602091612aa281612a57565b93612ab060405195866103db565b81855260208086019260051b82010192831161010757602001905b828210612ad9575050505090565b838091612ae584612a79565b815201910190612acb565b51906001600160401b038216820361010757565b5190600882101561010757565b81601f82011215610107578051612b2781610445565b92612b3560405194856103db565b818452602082840101116101075761016d916020808501910161010c565b51906001600160c01b03198216820361010757565b9190916060818403126101075760405190612b828261038a565b81938151906001600160401b0382116101075782612ba9604094926106fb94869401612b11565b8552612bb760208201612b53565b602086015201612b53565b81601f82011215610107578051906020612bdb83612a57565b936040612beb60405196876103db565b8486528286019183606080970286010194818611610107578401925b858410612c18575050505050505090565b8684830312610107578487918451612c2f8161038a565b612c3887612a79565b8152612c45838801612af0565b83820152612c54868801612b04565b86820152815201930192612c07565b81601f8201121561010757805191602091612c7d84612a57565b93604092612c8e60405196876103db565b818652848087019260051b8401019381851161010757858401925b858410612cba575050505050505090565b83516001600160401b03908181116101075786019160a080601f19858803011261010757612ce661040b565b908a85015184811161010757878c612d0092880101612b11565b8252612d0d868601612b53565b8b830152606090612d1f828701612b53565b878401526080918287015186811161010757898e612d3f928a0101612b11565b9084015285015193841161010757612d5e878c80979681970101612bc2565b90820152815201930192612ca9565b9060808282031261010757612d81826109e6565b9260208301516001600160401b0381116101075782601f828601011215610107578084015190612db082612a57565b91612dbe60405193846103db565b808352602083018560208360051b858a0101011161010757602083880101905b60208360051b858a0101018210612e3157505050509260408101516001600160401b0381116101075783612e13918301612b68565b9260608201516001600160401b0381116101075761016d9201612c63565b81516001600160401b0381116101075760a09182601f1983888d01018b0301126101075760405190612e62826103a5565b602083888d01010151612e748161079b565b8252604083888d01010151916001600160401b03831161010757612ea38b60208a958f87899101010101612a87565b60208201528b84606094859201010151926001600160401b03841161010757602095858a8f8f94612ee2612f03968c809c9b819c878701010101612a87565b6040880152612ef76080858585010101612af0565b90870152010101612b04565b60808201528152019201919050612dde565b9092919260408201936002821015610a3057602091835265ffffffffffff60d01b16910152565b60405190612f498261036f565b601882527f544342206e6f7420666f756e64206f72206578706972656400000000000000006020830152565b60405190612f828261036f565b601b82527f4661696c656420746f20766572696679205835303920436861696e00000000006020830152565b90612fc16020928281519485920161010c565b0190565b60405190612fd28261038a565b603882527f2f6f72207165207265706f7274207369676e61747572657300000000000000006040837f4661696c656420746f20766572696679206174746573746174696f6e20616e6460208201520152565b61302d82610a26565b52565b9291849591606094613040611110565b9460409788928382019061306b825161016081510151906020808097019e8f51920151015191613a54565b801561331257506001600160e01b031916159283156133085761309360005b83515190613d2a565b9b90801580156132f5575b6132de575061311e9798999a9b9c86606085510151015193858551950151966000146132d6576000985b878901517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169a60009161310390611256565b8b5163e69f638360e01b81529d8e9283929060048401612f15565b03818d5afa9b8c15610cce5760009a8b809d819f6132a3575b5015613286578a516367ecb13960e01b81528981600481855afa908115610cce578a90600092613266575b508c51633fcb603b60e01b81529192829060049082905afa8015610cce57613194928a92600092613247575b50613f1c565b801561322c57506131bc926131d06131eb979695936131c28b948e5197889387850190612fae565b90612fae565b03601f1981018652856103db565b51015160a06131de88611614565b5101519151935194614287565b9a8b15613213576131ff9060a08b01613024565b885287015285015260608401526080830152565b50505050505050509290915091613228612fc5565b9190565b9e9f5050505050505050505050505050925091613228612f75565b61325f9192508c8d3d10611ca557611c9681836103db565b903861318e565b6004925061328090823d8411611ca557611c9681836103db565b91613162565b505050505050505050505050505092509050600091613228612f3c565b929e50909b506132c6929c503d8091833e6132be81836103db565b810190612d6d565b9d909c919b919290919038613137565b6001986130c8565b9a5050505050505050509350915091613228612a0e565b506132ff8d610a26565b60028d1461309e565b613093600261308a565b99505050505050505093509150916132286129dd565b516008811015610a305790565b60009390928492908380808080805b8a5181101561346557613357818c611626565b51841561344f575b8380613448575b61342d575b8480613419575b156133ee576001600160801b03198816156133dd5761339560408201518961431c565b6133c3575b508b5b6133a957600101613344565b50505050505050509091505b82156133bd57565b60079150565b6080015160019c508c9a506133d7816111c1565b9961339a565b5050505050505050509091506133b5565b506133f8866111c1565b600680871461340857508b61339d565b9b5050505050945050505091509190565b50613423876111c1565b6006871415613372565b955092506001926080860151613442816111c1565b9561336b565b5082613366565b9250905061345d82886142fa565b91909261335f565b50505050505050509091506133b5565b604051906134828261036f565b60048252635444585f60e01b6020830152565b9091600082811a91600193841a93606092606094819487156136335783906131bc6134be613475565b938a61352360409660405190613517613507836134ee6020976020830160019160ff60f81b9060f81b1681520190565b0393613502601f19958681018352826103db565b614366565b6040519788936020850190612fae565b039081018552846103db565b8695879d8689905b613553575b505050505050505060001461354757509493929190565b95506007949392919050565b815181101561362e576135668183611626565b51613581815188906020815191012090602081519101201490565b61358e575087018761352b565b9697505050909192506080840151928888905b6135ad575b8996613530565b8451811015613629576135d46135ce6135c68388611626565b515160ff1690565b60ff1690565b8210156135e3578901896135a1565b91939a505061360191949c50613608939a5061361c95508799611626565b5101613328565b988701519601516001600160c01b03191690565b93388080808080806135a6565b6135a6565b613530565b509196509493506060925084919050565b92908351815181149485613674575b5050508261366057505090565b6001600160c01b0319918216911614919050565b61368b929395508161368591614dea565b92614dea565b1491388080613653565b600092916008811015610a3057600403613712576136b2816111c1565b801580156136ff575b6136f6575b6136c9816111c1565b600381149081156136e2575b506136dc57565b60059150565b600291506136ef816111c1565b14386136d5565b600492506136c0565b50613709816111c1565b600181146136bb565b9150565b9190600360009361372681610a26565b03613712576008811015610a3057801580156136ff576136f6576136c9816111c1565b805163ffffffff60e01b602083015116916040810151916008831015610a305761016d92602d92608065ffffffffffff60d01b6060830151169101519160405196879461ffff60f01b9060f01b166020860152602285015260f81b602684015260278301526137c1815180926020868601910161010c565b810103600d8101845201826103db565b6137e0826080929493946142fa565b9190930151906008821015610a305783613805575b5082156137ff5790565b50600790565b9250386137f5565b6040519061012082018281106001600160401b0382111761034f576040528160008152610100606091826020820152600060408201526000838201528260808201528260a0820152600060c08201528260e08201520152565b6040519061387382610354565b600382528160005b60608110613887575050565b60209061389261380d565b8282850101520161387b565b604051906138ab82610354565b60038252819060005b6060808210156138ce5790602091828287010152016138b4565b5050909150565b906138df82612a57565b6138ec60405191826103db565b82815280926138fd601f1991612a57565b019060005b82811061390e57505050565b806060602080938501015201613902565b9192909261ffff61392e6106df565b94613937613866565b865216600581101561394c5750600093925050565b600503613a3d5761395c906143d5565b9190938415613a335761398b61397b61397485611614565b5186614712565b8392919251906020850152611614565b5261399e6139998451610d51565b6138d5565b9460005b86518110156139dd57806139c06139ba6001936104fc565b87611626565b516139cb828a611626565b526139d68189611626565b50016139a2565b50925092936139ec9194614816565b9060005b8251811015613a2d5780613a26613a0960019386611626565b518651613a15846104fc565b91613a208383611626565b52611626565b50016139f0565b50929050565b6000945092509050565b506000929150565b601f81116104b0576101000a90565b613ab7613aa692613a666000936114a1565b94604051948591602096879182613a86818401978881519384920161010c565b8201613a9a8251809386808501910161010c565b010380845201826103db565b60405192839283925192839161010c565b8101039060025afa15610cce576000511490565b60405190613ad882610333565b606061016083600080825280602083015280604083015280848301528060808301528060a08301528060c08301528060e083015280610100830152806101208301526101408201520152565b5190600382101561010757565b519063ffffffff8216820361010757565b51906104098261077d565b5190610409826107e0565b81601f82011215610107578051906020613b7183612a57565b936040613b8160405196876103db565b8486528286019183606080970286010194818611610107578401925b858410613bae575050505050505090565b868483031261010757825190613bc38261038a565b8451613bce8161079b565b825285850151868301528385015190600482101561010757828792868b950152815201930192613b9d565b919060408382031261010757613c0e836109e6565b9260208101516001600160401b039182821161010757016101808184031261010757613c38610418565b92613c4282613b24565b8452613c5060208301613b31565b6020850152613c6160408301612af0565b6040850152613c7260608301612af0565b6060850152613c8360808301613b31565b6080850152613c9460a08301613b42565b60a0850152613ca560c08301613b42565b60c0850152613cb660e08301613b4d565b60e0850152610100613cc9818401613b4d565b908501526101208083015190850152610140613ce6818401612a6e565b90850152610160928383015190811161010757613d039201613b58565b9082015290565b90929160408201936003811015610a305760209161ffff91845216910152565b906000613d7692613d39613acb565b506040518094819263b9f1b94f60e01b83527f00000000000000000000000000000000000000000000000000000000000000009060048401613d0a565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610cce57600092600092613e14575b508215613e0c57602081015161096c93506001600160e01b03191660608201516001600160801b03191660c083015191613e06610120613dfc61010087015161ffff1690565b95015161ffff1690565b946148fe565b505090600090565b909250613e3491503d806000833e613e2c81836103db565b810190613bf9565b909138613db6565b60405190613e498261036f565b601982527f496e74656c205347582050434b20506c6174666f726d204341000000000000006020830152565b60405190613e828261036f565b601a82527f496e74656c205347582050434b2050726f636573736f722043410000000000006020830152565b919091604081840312610107578051926001600160401b03938481116101075781613eda918401612b11565b9360208301519081116101075761016d9201612b11565b908160209103126101075761016d906109e6565b60409061016d93928152816020820152019061012f565b825160009384938493849384936001600160a01b03928316939092165b818510613f74575b5050505050159283613f6c575b5082613f64575b5081613f5f575090565b905090565b915038613f55565b925038613f4e565b909192939597613f8261380d565b50613f8c83610d51565b870361408e5750613f9d8684611626565b51955b60409687613fae8387611626565b5101514211998a614075575b8a1561406d5750610100613fce8387611626565b51015197519760008980613fe560209c8d95612fae565b039060025afa15610cce5761401260005160a060e0614004868a611626565b510151930192835191614a9b565b97881561406657905180519101207f89f72d7c488e5b53a77c23ebcb36970ef7eb5bcf6658e9b8292cfbe4703a8473146140525760010193929190613f39565b505050505091506001913880808080613f41565b5050613f41565b975050613f41565b995060606140838387611626565b510151421099613fba565b956140a161409b826104fc565b85611626565b519660606140ae85610d60565b830361419b575060405163722f132760e01b8152600060048201819052816024818a5afa908115610cce57600091614178575b505b80516140fe575b50866140f65750613fa0565b989650613f41565b90965061410b8286611626565b51516040519063cedb978160e01b8252818061412e602095869460048401613f05565b0381875afa918215610cce5760009261414b575b505095386140ea565b61416a9250803d10614171575b61416281836103db565b810190613ef1565b3880614142565b503d614158565b614193913d8091833e61418b81836103db565b810190613eae565b9050386140e1565b826140e3575060206141ad8387611626565b5101516141d06141bb613e3c565b82906020815191012090602081519101201490565b15614223575060405163722f132760e01b8152600260048201526000816024818a5afa908115610cce57600091614208575b506140e3565b61421b913d8091833e61418b81836103db565b905038614202565b6142429061422f613e75565b6020815191012090602081519101201490565b156142785760405163722f132760e01b8152600160048201526000816024818a5afa908115610cce5760009161420857506140e3565b50505050505050505050600090565b60006142a8602092979697949394836040519282848094519384920161010c565b8101039060025afa15610cce576142c191600051614a9b565b15610c825760006142e1602092836040519282848094519384920161010c565b8101039060025afa15610cce5761016d91600051614a9b565b919061016d9060208061ffff8087511690845116111595015191015190614bd1565b906010916010825103610c825760009160005b848110614340575050505050600190565b60ff61434c8284611626565b511683821a1061435e5760010161432f565b505050905090565b908151916040519260028085019482800186526022600f916f30313233343536373839616263646566600f5201928401935b8481036143af575050600082525060200160405250565b9091809360018093019284845116519082015383835160041c1651815301929190614398565b6143dd61389e565b600090825193825b60039081851015614591578415614588578681018082116104b05761440e614413918389614c31565b614d0a565b939061441f8888611626565b5261442a8787611626565b51606091815180614475575b5050506144438787611626565b5261444e8686611626565b50156144685760019161446091610544565b9301926143e5565b5050925092505060009190565b908094969b93508160029b93969a9b1c029084811690811561456c57500160001901925b604091825195858752602095868801908801968701958460047ffc000000fc00686c7074787c8084888c9094989ca0a4a8acb0b4b8bcc0c4c8cc9485605b527804080c1014181c2024282c3034383c4044484c5054585c6064603b526ef8fcf800fcd0d4d8dce0e4e8ecf0f4601a525b0192835160ff811651600690811c82601e1a51881617811c82601d1a51881617901c90601c1a5186161781520191878310156145485760048691614509565b509d9896905084929c9b979593506000949150019052526000606052388080614436565b613d3d91508601511860ff81161590601e1a1501900392614499565b61441386614d0a565b50509350915050600191565b6020818303126101075780516001600160401b0391828211610107570161012081840312610107576145cd610425565b9281518452602082015183811161010757816145ea918401612b11565b602085015260408201516040850152606082015160608501526080820151838111610107578161461b918401612b11565b608085015260a08201518381116101075781614638918401612b11565b60a085015260c082015160c085015260e0820151838111610107578161465f918401612b11565b60e0850152610100928383015190811161010757613d039201612b11565b90602061016d92818152019061012f565b6080818303126101075780516146a38161079b565b926020820151916001600160401b039283811161010757846146c6918301612a87565b93604082015184811161010757816146df918401612b11565b9360608301519081116101075761016d9201612b11565b92919061470d60209160408652604086019061012f565b930152565b909161471c61380d565b506147256106ba565b604051631dbcd30f60e11b8152939092600091906001600160a01b0316828680614752856004830161467d565b0381845afa958615610cce5783966147ea575b5061478e91839160c08801519160405180958194829363740e383f60e11b8452600484016146f6565b03915afa908115610cce5782610409939281928280926147c2575b505060608701526040860152602085015261ffff168352565b92509250506147e392503d8091833e6147db81836103db565b81019061468e565b38806147a9565b839196509161480d61478e933d8085833e61480581836103db565b81019061459d565b96915091614765565b81519192916001600160a01b039091169061483081612a57565b9160409061484160405194856103db565b828452601f1961485084612a57565b0160005b8181106148e7575050839560005b84811061487157505050505050565b80600061488161489b9385611626565b51865180948192631dbcd30f60e11b83526004830161467d565b0381875afa8015610cce576001926000916148ce575b506148bc8289611626565b526148c78188611626565b5001614862565b6148e1913d8091833e61480581836103db565b386148b1565b6020906148f261380d565b82828901015201614854565b9495939091929560009261491c60c088015163ffffffff60e01b1690565b1661494161493460a089015163ffffffff60e01b1690565b6001600160e01b03191690565b6101008801516001600160e01b03199092161494906001600160801b0319161661498661497960e08901516001600160801b03191690565b6001600160801b03191690565b906001600160801b031916149661012087015114916149ae6115a861014089015161ffff1690565b9261ffff926000805b6101608b0180518051831015614a5d576149d4836149dd92611626565b515161ffff1690565b87808616911611156149f257506001016149b7565b98999a50614a1893949596975060409250614a11915060019851611626565b510161124c565b975b86614a55575b5085614a4d575b5084614a41575b50505081614a3b57509190565b90509190565b16149150388080614a2e565b945038614a27565b955038614a20565b50505096979850509091929397614a1a565b15614a7657565b634e487b7160e01b600052600160045260246000fd5b90816020910312610107575190565b92919281519160209283116101075760405194614ab78661036f565b8386528386019584368837828501855b86811015614ba25792614b0c61155c614b06614b8999989560019b9c600099968a9980158b14614b8d57508919905b51825182169119161790526114a1565b936128fd565b90614b2561155c614b1f61155c8461296e565b926128fd565b916040519388850195865260408501526060840152608083015260a082015260a08152614b51816103c0565b519073c2b78104907f722dabac4c69f826a522b2754de45afa90614b7c614b76610a41565b92614a6f565b8082518301019101614a8c565b1490565b611d4c611d47614b9c92610d43565b90614af6565b97815181528681018091116104b057908681018091116104b05797601f1981019081116104b057979097614ac7565b6010916010825114801590614c25575b610c825760009160005b848110614bfc575050505050600190565b60ff80614c098385611626565b511690614c168386611626565b51161161435e57600101614beb565b50601081511415614be1565b805160609493929083811115614cac575b81811115614ca4575b50828110614c5857505050565b60405192819003808452929450601f19929183910181601f840181165b808301518189015201908115614c8d57908290614c75565b505060008583016020015250603f01168201604052565b905038614c4b565b925082614c42565b60405190614cc18261036f565b601982527f2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d000000000000006020830152565b60405190614cfa8261036f565b60018252600560f91b6020830152565b614d49604051614d198161036f565b601b81527f2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0000000000602082015282614f79565b614d5a614d54614cb4565b83614f79565b91600019828114908115614de0575b50614dd257614d8c83614d7e614d9194610528565b614d86614ced565b93614c31565b614df9565b60009260605b8251851015614dbf57614db7600191614db08786611626565b5190614f05565b940193614d97565b935091614dcc9150610536565b60019291565b505050600090606090600090565b9050831438614d69565b80518211610107576020012090565b919091614e06838261505b565b9060209060208301918260018086510160051b86019360208501948151905260018751018752600091806000905b614e58575b5050505050505081935115614e4c575050565b90516001190181529150565b8451606086528691808203614e82575b508b510194019386851015614e7d5781614e34565b614e39565b6040805191808403808452601f19918783601f840116905b614eb9575b5050808987603f9387010152011682019052865238614e68565b83975080828b94979b9c989c9a969a959395010151818b015201928b8415614ef3575090869392919793509793908b9692889a969a614e9a565b96928198945099959998949198614e9f565b6040518151909392601f19928390816020850181165b80830151818a015201908115614f3357908290614f1b565b50505082815191838701828060208601165b808401518184015201918215614f5d57918390614f45565b50505050603f9101808501906000602083015285520116604052565b805182519392829082151560008715615052575060001996602181602080980196860103019580601f8316810360031b940190815193888810161561504857821015614ffa575050925b83815118821c15614fe7576001019284841015614fe05792614fc3565b5050505050565b91909103601f1901945061040992505050565b90809295939120925b85815118821c1561502a575b60010194868610156150215794615003565b50505050505050565b838382200361500f5793909303601f19019650610409945050505050565b5050505050505050565b96505050505050565b91909180806060948151918151948386111561507a575b505050505050565b8597506021602096939495969889808095019601968460405101980103019460009083851015615156575b601f8516840360031b9051955b86815118821c156150fa575b60010195878710156150d1575b956150b2565b50505050505050505b9160405192601f198482030160051c845201604052388080808080615072565b9785858461512c575b8192601f19878d0301815201990190156150be57958787106150cb5750505050505050506150da565b5083908a200361513d578585615103565b97600101958787106150cb5750505050505050506150da565b84812091506150a556fea26469706673582212201c1b4285727c91bdc44b14dca3e1e38681a187a7800533bf9fa88c11d27024e564736f6c63430008180033000000000000000000000000b76834729717868fa203b9d90fc88f859a4e594d", + "nonce": "0xf", + "chainId": "0x10000" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x465df8", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xae4127d5f3d8264ceb27eb2872a8810a37d1e89a8e04dc79ef67c8106e370b09", + "transactionIndex": "0x1", + "blockHash": "0x0737f5e5eb4ef616dda6401d1af8e0c9ceb9b7999aaa5b5ef2b88238e8becb1a", + "blockNumber": "0x1142d4", + "gasUsed": "0x45b2b6", + "effectiveGasPrice": "0xb2d05efd", + "from": "0x427e03845e6187ec01260a0fb501ab0908ec42b5", + "to": null, + "contractAddress": "0xff47eca64898692a86926cdda794807be3f6567d", + "l1BaseFeeScalar": "0x3567e00", + "l1BlobBaseFee": "0x1", + "l1BlobBaseFeeScalar": "0x0", + "l1Fee": "0x29f4e9abc32969", + "l1GasPrice": "0x4258262a", + "l1GasUsed": "0x2e419" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1723445507, + "chain": 65536, + "commit": "ed37ade" +} \ No newline at end of file diff --git a/foundry.toml b/foundry.toml index ffc5fd7..8ab4b86 100644 --- a/foundry.toml +++ b/foundry.toml @@ -14,7 +14,7 @@ remappings = [ # foundry is not able to detect this particular remapping for some reason... "openzeppelin/=lib/risc0-ethereum/lib/openzeppelin-contracts/" ] -solc = "0.8.24" +solc = "0.8.27" optimizer = true optimizer_runs = 200