Skip to content

Instantly share code, notes, and snippets.

@critesjosh
Created December 21, 2023 02:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save critesjosh/fab06378c54ca00c2732075d6b90a400 to your computer and use it in GitHub Desktop.
Save critesjosh/fab06378c54ca00c2732075d6b90a400 to your computer and use it in GitHub Desktop.
private token deployment info
{
"arbitrumSepolia": {
"address": "0x1275f8f414d95508ba13c90586f933edec825cc0",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_processDepositVerifier",
"type": "address"
},
{
"internalType": "address",
"name": "_processTransferVerifier",
"type": "address"
},
{
"internalType": "address",
"name": "_allTransferVerifier",
"type": "address"
},
{
"internalType": "address",
"name": "_allWithdrawVerifier",
"type": "address"
},
{
"internalType": "address",
"name": "_lockVerifier",
"type": "address"
},
{
"internalType": "address",
"name": "_token",
"type": "address"
},
{
"internalType": "uint256",
"name": "_decimals",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "to",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "processFee",
"type": "uint256"
}
],
"name": "Deposit",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "to",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "processFee",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "feeRecipient",
"type": "address"
}
],
"name": "DepositProcessed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "publicKey",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "lockedTo",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "relayerFee",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "relayerFeeRecipient",
"type": "address"
}
],
"name": "Lock",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "to",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "from",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"indexed": false,
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "amount",
"type": "tuple"
}
],
"name": "Transfer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "to",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"indexed": false,
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "newBalance",
"type": "tuple"
},
{
"indexed": false,
"internalType": "uint256",
"name": "processFee",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "processFeeRecipient",
"type": "address"
}
],
"name": "TransferProcessed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "publicKey",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "unlockedFrom",
"type": "address"
}
],
"name": "Unlock",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "from",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "_relayFeeRecipient",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "relayFee",
"type": "uint256"
}
],
"name": "Withdraw",
"type": "event"
},
{
"inputs": [],
"name": "LOCK_VERIFIER",
"outputs": [
{
"internalType": "contract UltraVerifier",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "PROCESS_DEPOSIT_VERIFIER",
"outputs": [
{
"internalType": "contract UltraVerifier",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "PROCESS_TRANSFER_VERIFIER",
"outputs": [
{
"internalType": "contract UltraVerifier",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "SOURCE_TOKEN_DECIMALS",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "allPendingDepositsMapping",
"outputs": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "uint40",
"name": "fee",
"type": "uint40"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "allPendingTransfersMapping",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "amount",
"type": "tuple"
},
{
"internalType": "uint40",
"name": "fee",
"type": "uint40"
},
{
"internalType": "uint256",
"name": "time",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "allTransferVerifier",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "allWithdrawVerifier",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
}
],
"name": "balances",
"outputs": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_data",
"type": "bytes32"
}
],
"name": "bytes32ToBytes",
"outputs": [
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "decimals",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_from",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "_to",
"type": "bytes32"
},
{
"internalType": "uint40",
"name": "_processFee",
"type": "uint40"
}
],
"name": "deposit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_from",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_lockToContract",
"type": "address"
},
{
"internalType": "uint40",
"name": "_relayFee",
"type": "uint40"
},
{
"internalType": "address",
"name": "_relayFeeRecipient",
"type": "address"
},
{
"internalType": "bytes",
"name": "_proof",
"type": "bytes"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_newEncryptedAmount",
"type": "tuple"
}
],
"name": "lock",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
}
],
"name": "lockedTo",
"outputs": [
{
"internalType": "address",
"name": "lockedToContract",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "nonce",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
}
],
"name": "pendingDepositCounts",
"outputs": [
{
"internalType": "uint256",
"name": "count",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "packedPublicKey",
"type": "bytes32"
}
],
"name": "pendingTransferCounts",
"outputs": [
{
"internalType": "uint256",
"name": "count",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "_proof",
"type": "bytes"
},
{
"internalType": "uint256[]",
"name": "_txsToProcess",
"type": "uint256[]"
},
{
"internalType": "address",
"name": "_feeRecipient",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_recipient",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_zeroBalance",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_newBalance",
"type": "tuple"
}
],
"name": "processPendingDeposit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "_proof",
"type": "bytes"
},
{
"internalType": "uint8[]",
"name": "_txsToProcess",
"type": "uint8[]"
},
{
"internalType": "address",
"name": "_feeRecipient",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_recipient",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_newBalance",
"type": "tuple"
}
],
"name": "processPendingTransfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint40",
"name": "",
"type": "uint40"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_to",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "_from",
"type": "bytes32"
},
{
"internalType": "uint40",
"name": "_processFee",
"type": "uint40"
},
{
"internalType": "uint40",
"name": "_relayFee",
"type": "uint40"
},
{
"internalType": "address",
"name": "_relayFeeRecipient",
"type": "address"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_amountToSend",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_senderNewBalance",
"type": "tuple"
},
{
"internalType": "bytes",
"name": "_proof_transfer",
"type": "bytes"
}
],
"name": "transfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "publicKey",
"type": "bytes32"
}
],
"name": "unlock",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_from",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_to",
"type": "address"
},
{
"internalType": "uint40",
"name": "_amount",
"type": "uint40"
},
{
"internalType": "uint40",
"name": "_relayFee",
"type": "uint40"
},
{
"internalType": "address",
"name": "_relayFeeRecipient",
"type": "address"
},
{
"internalType": "bytes",
"name": "_withdraw_proof",
"type": "bytes"
},
{
"components": [
{
"internalType": "uint256",
"name": "C1x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C1y",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "C2y",
"type": "uint256"
}
],
"internalType": "struct PrivateToken.EncryptedAmount",
"name": "_newEncryptedAmount",
"type": "tuple"
}
],
"name": "withdraw",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"network": "arbitrumSepolia",
"chainId": 421614,
"bytecode": "0x60a06040527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000160005560026080523480156200003a57600080fd5b5060405162003fce38038062003fce8339810160408190526200005d9162000150565b600180546001600160a01b03199081166001600160a01b038a811691909117909255600280548216898416179055600480548216888416178155600580548316888516179055600380548316878516179055600680549092169285169283179091556040805163313ce56760e01b8152905184939263313ce567928082019260209290918290030181865afa92505050801562000119575060408051601f3d908101601f191682019092526200011691810190620001dc565b60015b15620001225790505b60075550620001f695505050505050565b80516001600160a01b03811681146200014b57600080fd5b919050565b600080600080600080600060e0888a0312156200016c57600080fd5b620001778862000133565b9650620001876020890162000133565b9550620001976040890162000133565b9450620001a76060890162000133565b9350620001b76080890162000133565b9250620001c760a0890162000133565b915060c0880151905092959891949750929550565b600060208284031215620001ef57600080fd5b5051919050565b608051613d8b620002436000396000818161026e01528181610964015281816112f501528181611a8501528181611dcd01528181611ea90152818161257601526126c00152613d8b6000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c8063616abcd4116100e3578063a7b9ce391161008c578063e19c1f4011610066578063e19c1f401461055c578063ea6d53751461057c578063ec9b5b3a1461058f57600080fd5b8063a7b9ce3914610520578063bcda9aca14610540578063e106201c1461055357600080fd5b80638489712d116100bd5780638489712d146104575780638909aa3f1461048d5780639577b86e146104e257600080fd5b8063616abcd4146103dd578063641be359146103f057806374ddd4e91461040357600080fd5b806335091551116101455780634c0999c71161011f5780634c0999c71461037d5780634ebb87381461039d57806350ae0683146103bd57600080fd5b806335091551146102a257806335f90966146102b75780634758d3581461036a57600080fd5b806318160ddd1161017657806318160ddd146101fc5780632cba24141461023b578063313ce5671461026957600080fd5b8063035442f01461019257806314d68109146101dc575b600080fd5b6004546101b29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6003546101b29073ffffffffffffffffffffffffffffffffffffffff1681565b6005546102259074010000000000000000000000000000000000000000900464ffffffffff1681565b60405164ffffffffff90911681526020016101d3565b61025b610249366004613021565b600a6020526000908152604090205481565b6040519081526020016101d3565b6102907f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101d3565b6102b56102b036600461319c565b6105a2565b005b6103256102c5366004613244565b600b60209081526000928352604080842082529183529181902081516080810183528154815260018201549381019390935260028101549183019190915260038101546060830152600481015460059091015464ffffffffff9091169083565b60408051845181526020808601519082015284820151918101919091526060938401519381019390935264ffffffffff909116608083015260a082015260c0016101d3565b6102b561037836600461328a565b610b2c565b61039061038b366004613021565b61140f565b6040516101d391906133eb565b6001546101b29073ffffffffffffffffffffffffffffffffffffffff1681565b6005546101b29073ffffffffffffffffffffffffffffffffffffffff1681565b6102b56103eb3660046133fe565b6114b0565b6102b56103fe36600461355d565b611bce565b61043c610411366004613244565b600c6020908152600092835260408084209091529082529020805460019091015464ffffffffff1682565b6040805192835264ffffffffff9091166020830152016101d3565b6101b2610465366004613021565b600e6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b6104c261049b366004613021565b60086020526000908152604090208054600182015460028301546003909301549192909184565b6040805194855260208501939093529183015260608201526080016101d3565b6105106104f0366004613244565b600d60209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016101d3565b6002546101b29073ffffffffffffffffffffffffffffffffffffffff1681565b6102b561054e3660046135f9565b6120c3565b61025b60075481565b61025b61056a366004613021565b60096020526000908152604090205481565b6102b561058a366004613677565b6126bc565b6102b561059d366004613021565b6129bc565b6105aa612de7565b6105c2886105bd368690038601866136bd565b612acf565b81526000888152600e602090815260409091205473ffffffffffffffffffffffffffffffffffffffff1690820181905215806106175750602081015173ffffffffffffffffffffffffffffffffffffffff1633145b6106a7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f6163636f756e74206973206c6f636b656420746f20616e6f746865722061636360448201527f6f756e740000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b600860008981526020019081526020016000206040518060800160405290816000820154815260200160018201548152602001600282015481526020016003820154815250508160400181905250600860008a81526020019081526020016000206040518060800160405290816000820154815260200160018201548152602001600282015481526020016003820154815250508160600181905250600081606001516000015160001480156107635750606082015160400151155b80156107755750606082015160200151155b801561078657506060808301510151155b905080156107c65760008a8152600860209081526040808320883581559188013560018301558701356002820155606087013560039091015597506108b1565b60008a81526009602052604090819020546080840152805160608101909152806107f5368890038801886136bd565b815264ffffffffff8a81166020808401919091524260409384015260008e8152600b8252838120608088015182528252838120855180518255808401516001808401919091558187015160028401556060909101516003830155868401516004830180547fffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000169190961617909455948401516005909501949094558d8452600990529082208054919290916108ab908490613708565b90915550505b600089815260086020526040902084906108ec8282813581556020820135600182015560408201356002820155606082013560038201555050565b90505089897f53962e9fad115c431fd1c9fe4534dd8f26fe09c8c7e314f1a4828cb7cbf53de487604051610920919061371b565b60405180910390a364ffffffffff871615610a3c5760065460075473ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb90889061098a9060ff7f00000000000000000000000000000000000000000000000000000000000000001690613746565b61099590600a613879565b6109a69064ffffffffff8c16613885565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044016020604051808303816000875af1158015610a16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3a919061389c565b505b60a082018a905260c0820189905264ffffffffff808816610100840152881660e0830152610a6f368590038501856136bd565b610140830152610a84368690038601866136bd565b610120830152306101608301526101808201839052600480546040517fd724c19800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169163d724c19891610aee918691016138be565b600060405180830381600087803b158015610b0857600080fd5b505af1158015610b1c573d6000803e3d6000fd5b5050505050505050505050505050565b83516004811115610b99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f546f6f206d616e792074787320746f2070726f63657373000000000000000000604482015260640161069e565b60008381526008602090815260408083208151608081018352815481526001820154818501526002820154818401526003909101546060820152815160188082526103208201909352909284929082016103008036833750508351825192935091839150600090610c0c57610c0c613a47565b602002602001018181525050816020015160001b81600181518110610c3357610c33613a47565b602002602001018181525050816040015160001b81600281518110610c5a57610c5a613a47565b602002602001018181525050816060015160001b81600381518110610c8157610c81613a47565b6020908102919091010152805185359082906004908110610ca457610ca4613a47565b602002602001018181525050846020013560001b81600581518110610ccb57610ccb613a47565b602002602001018181525050846040013560001b81600681518110610cf257610cf2613a47565b602002602001018181525050846060013560001b81600781518110610d1957610d19613a47565b602090810291909101015260408051600480825260a08201909252600091816020015b610d44612f1d565b815260200190600190039081610d3c57905050905060005b60048160ff161015611183578560ff168160ff1610610e5757600083610d83836004613a76565b610d8e906008613a92565b60ff1681518110610da157610da1613a47565b6020908102919091010152600083610dba836004613a76565b610dc5906009613a92565b60ff1681518110610dd857610dd8613a47565b6020908102919091010152600083610df1836004613a76565b610dfc90600a613a92565b60ff1681518110610e0f57610e0f613a47565b6020908102919091010152600083610e28836004613a76565b610e3390600b613a92565b60ff1681518110610e4657610e46613a47565b602002602001018181525050611171565b600b600089815260200190815260200160002060008b8360ff1681518110610e8157610e81613a47565b60209081029190910181015160ff9081168352828201939093526040918201600020825160e08101845281546060820190815260018301546080830152600283015460a0830152600383015460c08301528152600482015464ffffffffff16928101929092526005015491810191909152835190918491908416908110610f0a57610f0a613a47565b6020026020010181905250600b600089815260200190815260200160002060008b8360ff1681518110610f3f57610f3f613a47565b60209081029190910181015160ff90811683529082019290925260400160009081208181556001810182905560028101829055600381018290556004810180547fffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000016905560050155825183918316908110610fbc57610fbc613a47565b6020026020010151604001514211610fd357600080fd5b818160ff1681518110610fe857610fe8613a47565b6020908102919091010151515183611001836004613a76565b61100c906008613a92565b60ff168151811061101f5761101f613a47565b602002602001018181525050818160ff168151811061104057611040613a47565b6020908102919091018101515101518361105b836004613a76565b611066906009613a92565b60ff168151811061107957611079613a47565b602002602001018181525050818160ff168151811061109a5761109a613a47565b60209081029190910101515160400151836110b6836004613a76565b6110c190600a613a92565b60ff16815181106110d4576110d4613a47565b602002602001018181525050818160ff16815181106110f5576110f5613a47565b6020908102919091010151516060015183611111836004613a76565b61111c90600b613a92565b60ff168151811061112f5761112f613a47565b602002602001018181525050818160ff168151811061115057611150613a47565b60200260200101516020015164ffffffffff168561116e9190613708565b94505b8061117b81613aab565b915050610d5c565b506002546040517fea50d0e400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063ea50d0e4906111dc908d908690600401613aca565b602060405180830381865afa1580156111f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061121d919061389c565b611283576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f50726f636573732070656e64696e672070726f6f6620697320696e76616c6964604482015260640161069e565b600087815260086020526040902086906112be8282813581556020820135600182015560408201356002820155606082013560038201555050565b505083156113c65760065460075473ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb908a9061131b9060ff7f00000000000000000000000000000000000000000000000000000000000000001690613746565b61132690600a613879565b6113309088613885565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044016020604051808303816000875af11580156113a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c4919061389c565b505b7f359b9d89d5ab2f0962319b2f6490ba0285acb1443f8e7a31cdf93e484f6eb3958787868b6040516113fb9493929190613b21565b60405180910390a150505050505050505050565b6040805160208082528183019092526060916000919060208201818036833701905050905060005b60208110156114a95783816020811061145257611452613a47565b1a60f81b82828151811061146857611468613a47565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350806114a181613b81565b915050611437565b5092915050565b8451600460ff82161115611520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f546f6f206d616e792074787320746f2070726f63657373000000000000000000604482015260640161069e565b600084815260086020908152604080832081516080810183528154808252600183015494820194909452600282015492810192909252600301546060820152829115801561157057506020810151155b801561157e57506040810151155b801561158c57506060810151155b156115a3576115a0368790038701876136bd565b90505b60408051600480825260a08201909252600091816020015b60408051808201909152600080825260208201528152602001906001900390816115bb57905050905060005b8560ff168160ff16101561175e57600c60008a815260200190815260200160002060008c8360ff168151811061161f5761161f613a47565b60209081029190910181015182528181019290925260409081016000208151808301909252805482526001015464ffffffffff16918101919091528251839060ff841690811061167157611671613a47565b6020026020010181905250600c60008a815260200190815260200160002060008c8360ff16815181106116a6576116a6613a47565b6020908102919091018101518252810191909152604001600090812090815560010180547fffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000001690558151829060ff831690811061170557611705613a47565b6020026020010151600001518461171c9190613708565b9350818160ff168151811061173357611733613a47565b6020026020010151602001518561174a9190613bb9565b94508061175681613aab565b9150506115e7565b50600061176a89612bdb565b60408051600a80825261016082019092529192506000919060208201610140803683370190505090508160001b816000815181106117aa576117aa613a47565b6020026020010181815250508460001b816001815181106117cd576117cd613a47565b602090810291909101015283518151829060029081106117ef576117ef613a47565b602002602001018181525050836020015160001b8160038151811061181657611816613a47565b602002602001018181525050836040015160001b8160048151811061183d5761183d613a47565b602002602001018181525050836060015160001b8160058151811061186457611864613a47565b602090810291909101015280518835908290600690811061188757611887613a47565b602002602001018181525050876020013560001b816007815181106118ae576118ae613a47565b602002602001018181525050876040013560001b816008815181106118d5576118d5613a47565b602002602001018181525050876060013560001b816009815181106118fc576118fc613a47565b602002602001018181525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ea50d0e48e836040518363ffffffff1660e01b8152600401611965929190613aca565b602060405180830381865afa158015611982573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119a6919061389c565b611a0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f50726f636573732070656e64696e672070726f6f6620697320696e76616c6964604482015260640161069e565b60008a81526008602052604090208890611a478282813581556020820135600182015560408201356002820155606082013560038201555050565b505064ffffffffff861615611b5d5760065460075473ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb908d90611aab9060ff7f00000000000000000000000000000000000000000000000000000000000000001690613746565b611ab690600a613879565b611ac79064ffffffffff8b16613885565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044016020604051808303816000875af1158015611b37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5b919061389c565b505b604080518b81526020810187905264ffffffffff88168183015273ffffffffffffffffffffffffffffffffffffffff8d16606082015290517ffaf0555374013b45f833bc0f4e3e33e2dfc99ab6db8b30856b0095ee31431f809181900360800190a150505050505050505050505050565b611bd6612f67565b611be08883612acf565b81526000888152600e602090815260409091205473ffffffffffffffffffffffffffffffffffffffff169082018190521580611c355750602081015173ffffffffffffffffffffffffffffffffffffffff1633145b611cc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f6163636f756e74206973206c6f636b656420746f20616e6f746865722061636360448201527f6f756e7400000000000000000000000000000000000000000000000000000000606482015260840161069e565b60086000898152602001908152602001600020604051806080016040529081600082015481526020016001820154815260200160028201548152602001600382015481525050816040018190525081600860008a81526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003015590505085600560148282829054906101000a900464ffffffffff16611d6f9190613bd7565b92506101000a81548164ffffffffff021916908364ffffffffff1602179055508464ffffffffff16600014611ea55760065460075473ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb908690611df39060ff7f00000000000000000000000000000000000000000000000000000000000000001690613746565b611dfe90600a613879565b611e0f9064ffffffffff8a16613885565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044016020604051808303816000875af1158015611e7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea3919061389c565b505b60007f000000000000000000000000000000000000000000000000000000000000000060ff16600754611ed89190613746565b611ee390600a613879565b611ef49064ffffffffff8916613885565b6006546040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b811660048301526024820184905292935091169063a9059cbb906044016020604051808303816000875af1158015611f6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f93919061389c565b50604080518a815273ffffffffffffffffffffffffffffffffffffffff8a811660208301528183018490528716606082015264ffffffffff8816608082015290517fde45ca438d9091de916125a3493ce9a04b8e772645668311a8bb9262378546af9181900360a00190a15073ffffffffffffffffffffffffffffffffffffffff80881660c083015260e0820189905264ffffffffff80871660a0840152871660808301526101008201849052606082018390526005546040517f254f5a0f00000000000000000000000000000000000000000000000000000000815291169063254f5a0f90612087908490600401613bf5565b600060405180830381600087803b1580156120a157600080fd5b505af11580156120b5573d6000803e3d6000fd5b505050505050505050505050565b60006120cf8783612acf565b6000888152600e602052604090205490915073ffffffffffffffffffffffffffffffffffffffff161561215e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f6163636f756e7420697320616c7265616479206c6f636b656400000000000000604482015260640161069e565b61219e73ffffffffffffffffffffffffffffffffffffffff87167f80ac58cd00000000000000000000000000000000000000000000000000000000612c72565b61222a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f636f6e747261637420646f6573206e6f7420696d706c656d656e7420756e6c6f60448201527f636b000000000000000000000000000000000000000000000000000000000000606482015260840161069e565b6000878152600e6020908152604080832080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8b161790556008825280832081516080810183528154815260018201548185015260028201548184015260039091015460608201528151600c8082526101a082019093529093929091908201610180803683370190505090508260001b816000815181106122e4576122e4613a47565b602002602001018181525050888160018151811061230457612304613a47565b6020026020010181815250508773ffffffffffffffffffffffffffffffffffffffff1660001b8160028151811061233d5761233d613a47565b6020026020010181815250508664ffffffffff1660001b8160038151811061236757612367613a47565b6020908102919091010152815181518290600490811061238957612389613a47565b602002602001018181525050816020015160001b816005815181106123b0576123b0613a47565b602002602001018181525050816040015160001b816006815181106123d7576123d7613a47565b602002602001018181525050816060015160001b816007815181106123fe576123fe613a47565b6020908102919091010152835181518290600890811061242057612420613a47565b602002602001018181525050836020015160001b8160098151811061244757612447613a47565b602002602001018181525050836040015160001b81600a8151811061246e5761246e613a47565b602002602001018181525050836060015160001b81600b8151811061249557612495613a47565b60209081029190910101526003546040517fea50d0e400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063ea50d0e4906124f89088908590600401613aca565b602060405180830381865afa158015612515573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612539919061389c565b5064ffffffffff87161561264e5760065460075473ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb90889061259c9060ff7f00000000000000000000000000000000000000000000000000000000000000001690613746565b6125a790600a613879565b6125b89064ffffffffff8c16613885565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044016020604051808303816000875af1158015612628573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061264c919061389c565b505b604080518a815273ffffffffffffffffffffffffffffffffffffffff8a8116602083015264ffffffffff8a16828401528816606082015290517fdb6bb1790d909f7adcc71e58b5a685cbf333685ecfdc5366862f4a715b3934489181900360800190a1505050505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000060ff166007546126ef9190613746565b6126fa90600a613879565b6127049085613d02565b60055490915064ffffffffff906127369083907401000000000000000000000000000000000000000090048316613bb9565b64ffffffffff16106127a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f416d6f756e7420697320746f6f20626967000000000000000000000000000000604482015260640161069e565b6006546040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015230602483015260448201879052909116906323b872dd906064016020604051808303816000875af1158015612823573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612847919061389c565b506128528282613bd7565b6000848152600a6020818152604080842080548251808401845264ffffffffff88811682528a81168287019081528c8952600c8752858920848a528752948820915182559351600191820180547fffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000001691909516179093558986529390925281549495509193919290916128e6908490613708565b90915550506005805483919060149061291f90849074010000000000000000000000000000000000000000900464ffffffffff16613bb9565b92506101000a81548164ffffffffff021916908364ffffffffff1602179055507facc794f52427786f12f34f1c111f79c65476905ce8685dd43515e11c8163a216868584866040516129ac949392919073ffffffffffffffffffffffffffffffffffffffff949094168452602084019290925264ffffffffff908116604084015216606082015260800190565b60405180910390a1505050505050565b6000818152600e602052604090205473ffffffffffffffffffffffffffffffffffffffff16338114612a4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f77726f6e672073656e6465720000000000000000000000000000000000000000604482015260640161069e565b6040805183815273ffffffffffffffffffffffffffffffffffffffff831660208201527f3228d53aec01c740899a507719f566916ac058e41fb369ffae1a9664089c6639910160405180910390a1506000908152600e6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60008060005483604051602001612ae69190613d16565b6040516020818303038152906040528051906020012060001c612b099190613d41565b6000858152600d6020908152604080832084845290915290205490915060ff1615612b90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f6e6f6e6365206973206e6f7420756e6971756500000000000000000000000000604482015260640161069e565b6000848152600d60209081526040808320848452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590505b92915050565b600080600181612bea8561140f565b905060005b60208160ff161015612c685760005483838360ff1681518110612c1457612c14613a47565b0160200151612c26919060f81c613885565b612c309190613d41565b612c3a9085613708565b93508060ff16601f14612c5657612c5361010084613885565b92505b80612c6081613aab565b915050612bef565b5091949350505050565b6000612c7d83612c95565b8015612c8e5750612c8e8383612cf9565b9392505050565b6000612cc1827f01ffc9a700000000000000000000000000000000000000000000000000000000612cf9565b8015612bd55750612cf2827fffffffff00000000000000000000000000000000000000000000000000000000612cf9565b1592915050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000821660248201526000908190604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825192935060009283928392909183918a617530fa92503d91506000519050828015612dd0575060208210155b8015612ddc5750600081115b979650505050505050565b604051806101a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001612e426040518060800160405280600081526020016000815260200160008152602001600081525090565b8152602001612e726040518060800160405280600081526020016000815260200160008152602001600081525090565b8152602001600081526020016000801916815260200160008019168152602001600064ffffffffff168152602001600064ffffffffff168152602001612ed96040518060800160405280600081526020016000815260200160008152602001600081525090565b8152602001612f096040518060800160405280600081526020016000815260200160008152602001600081525090565b815260006020820152606060409091015290565b6040518060600160405280612f536040518060800160405280600081526020016000815260200160008152602001600081525090565b815260006020820181905260409091015290565b60405180610120016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001612fc26040518060800160405280600081526020016000815260200160008152602001600081525090565b8152602001612ff26040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016000801916815260200160008019168152602001606081525090565b60006020828403121561303357600080fd5b5035919050565b803564ffffffffff8116811461304f57600080fd5b919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461304f57600080fd5b60006080828403121561308a57600080fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561310657613106613090565b604052919050565b600082601f83011261311f57600080fd5b813567ffffffffffffffff81111561313957613139613090565b61316a60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016130bf565b81815284602083860101111561317f57600080fd5b816020850160208301376000918101602001919091529392505050565b6000806000806000806000806101c0898b0312156131b957600080fd5b88359750602089013596506131d060408a0161303a565b95506131de60608a0161303a565b94506131ec60808a01613054565b93506131fb8a60a08b01613078565b925061320b8a6101208b01613078565b91506101a089013567ffffffffffffffff81111561322857600080fd5b6132348b828c0161310e565b9150509295985092959890939650565b6000806040838503121561325757600080fd5b50508035926020909101359150565b600067ffffffffffffffff82111561328057613280613090565b5060051b60200190565b600080600080600061010086880312156132a357600080fd5b853567ffffffffffffffff808211156132bb57600080fd5b6132c789838a0161310e565b96506020915081880135818111156132de57600080fd5b88019050601f810189136132f157600080fd5b80356133046132ff82613266565b6130bf565b81815260059190911b8201830190838101908b83111561332357600080fd5b928401925b8284101561335157833560ff811681146133425760008081fd5b82529284019290840190613328565b809850505050505061336560408701613054565b92506060860135915061337b8760808801613078565b90509295509295909350565b6000815180845260005b818110156133ad57602081850181015186830182015201613391565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081526000612c8e6020830184613387565b600080600080600080610180878903121561341857600080fd5b863567ffffffffffffffff8082111561343057600080fd5b61343c8a838b0161310e565b975060209150818901358181111561345357600080fd5b89019050601f81018a1361346657600080fd5b80356134746132ff82613266565b81815260059190911b8201830190838101908c83111561349357600080fd5b928401925b828410156134b157833582529284019290840190613498565b80995050505050506134c560408801613054565b9350606087013592506134db8860808901613078565b91506134eb886101008901613078565b90509295509295509295565b60006080828403121561350957600080fd5b6040516080810181811067ffffffffffffffff8211171561352c5761352c613090565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b6000806000806000806000610140888a03121561357957600080fd5b8735965061358960208901613054565b95506135976040890161303a565b94506135a56060890161303a565b93506135b360808901613054565b925060a088013567ffffffffffffffff8111156135cf57600080fd5b6135db8a828b0161310e565b9250506135eb8960c08a016134f7565b905092959891949750929550565b600080600080600080610120878903121561361357600080fd5b8635955061362360208801613054565b94506136316040880161303a565b935061363f60608801613054565b9250608087013567ffffffffffffffff81111561365b57600080fd5b61366789828a0161310e565b9250506134eb8860a089016134f7565b6000806000806080858703121561368d57600080fd5b61369685613054565b935060208501359250604085013591506136b26060860161303a565b905092959194509250565b6000608082840312156136cf57600080fd5b612c8e83836134f7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115612bd557612bd56136d9565b8135815260208083013590820152604080830135908201526060808301359082015260808101612bd5565b81810381811115612bd557612bd56136d9565b600181815b808511156137b257817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613798576137986136d9565b808516156137a557918102915b93841c939080029061375e565b509250929050565b6000826137c957506001612bd5565b816137d657506000612bd5565b81600181146137ec57600281146137f657613812565b6001915050612bd5565b60ff841115613807576138076136d9565b50506001821b612bd5565b5060208310610133831016604e8410600b8410161715613835575081810a612bd5565b61383f8383613759565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613871576138716136d9565b029392505050565b6000612c8e83836137ba565b8082028115828204841417612bd557612bd56136d9565b6000602082840312156138ae57600080fd5b81518015158114612c8e57600080fd5b6020815281516020820152600060208301516138f2604084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060408301516139266060840182805182526020810151602083015260408101516040830152606081015160608301525050565b50606083810151805160e08501526020810151610100850152604081015161012085015290810151610140840152506080830151610160818185015260a08501519150610180828186015260c08601516101a086015260e086015192506139976101c086018464ffffffffff169052565b61010086015164ffffffffff166101e0860152610120860151805161020087015260208082015161022088015260408083015161024089015260609283015161026089015261014089015180516102808a0152918201516102a08901528101516102c088015201516102e08601529085015173ffffffffffffffffffffffffffffffffffffffff16610300850152840151610320808501529050613a3f610340840182613387565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60ff81811683821602908116908181146114a9576114a96136d9565b60ff8181168382160190811115612bd557612bd56136d9565b600060ff821660ff8103613ac157613ac16136d9565b60010192915050565b604081526000613add6040830185613387565b82810360208481019190915284518083528582019282019060005b81811015613b1457845183529383019391830191600101613af8565b5090979650505050505050565b84815260e08101613b566020830186803582526020810135602083015260408101356040830152606081013560608301525050565b8360a083015273ffffffffffffffffffffffffffffffffffffffff831660c083015295945050505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613bb257613bb26136d9565b5060010190565b64ffffffffff8181168382160190808211156114a9576114a96136d9565b64ffffffffff8281168282160390808211156114a9576114a96136d9565b602081528151602082015260006020830151613c29604084018273ffffffffffffffffffffffffffffffffffffffff169052565b506040830151613c5d6060840182805182526020810151602083015260408101516040830152606081015160608301525050565b50606083810151805160e0850152602081015161010085015260408101516101208501529081015161014084015250608083015161016083015260a083015161018083015260c08301516101a083015260e08301516101c08301526101008301516101e080840152613a3f610200840182613387565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082613d1157613d11613cd3565b500490565b8151815260208083015190820152604080830151908201526060808301519082015260808101612bd5565b600082613d5057613d50613cd3565b50069056fea2646970667358221220d2bacbe07c1013bfa3687061289b58009c1a3750d2b26374b2d35c342741a76764736f6c63430008140033",
"receipt": {
"transactionHash": "0x14f7758d276ed1b84cc5fa446bcdc46bd1351bcada2c4bb244bb1e1571a47e57",
"blockHash": "0x35d4b17182848b963e9f645242116e1ccc0bc83e8542ae859e44a59a5f120f17",
"blockNumber": 3044518,
"logs": [],
"contractAddress": "0x1275f8f414d95508ba13c90586f933edec825cc0",
"effectiveGasPrice": 100000000,
"cumulativeGasUsed": 12010050,
"from": "0x844aa7ae2db9beb52f0613e5742ec5ce9e1371a6",
"gasUsed": 12010050,
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"status": "success",
"to": null,
"transactionIndex": 1,
"type": "eip1559",
"l1BlockNumber": "0x4afdc8",
"gasUsedForL1": "0x7fda75"
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment