Sourcify Logosourcify.eth

0x289859f89226c094DcEdB8D4ae6eFb08Bdc93056

on Ubiq (8)

Exact Match
Runtime Bytecode
Creation Bytecode
Warning: This contract is only matched with runtime bytecode. The constructor may be different from the original one, which could affect the contract's functionality.
Contract Name
Bubbles
Compilation Target
contracts/Bubbles.sol:Bubbles
Language
Solidity
Compiler
solc 0.8.18+commit.87f61d96
EVM Version
paris
Verified At
2024-08-08 10:04:58 UTC
Deployer
Deployment Transaction
Block Number
Transaction Index

ABI

Expand to view

Source Code

Remix IDE LogoView on Remix IDE
  • contracts/Bubbles.sol
  • @openzeppelin/contracts/utils/Base64.sol
  • @openzeppelin/contracts/utils/Address.sol
  • @openzeppelin/contracts/utils/Context.sol
  • @openzeppelin/contracts/utils/Strings.sol
  • @openzeppelin/contracts/access/Ownable.sol
  • @openzeppelin/contracts/utils/math/Math.sol
  • @openzeppelin/contracts/token/ERC721/ERC721.sol
  • @openzeppelin/contracts/token/ERC721/IERC721.sol
  • @openzeppelin/contracts/utils/introspection/ERC165.sol
  • @openzeppelin/contracts/utils/introspection/IERC165.sol
  • @openzeppelin/contracts/token/ERC721/IERC721Receiver.sol
  • @openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol
Loading...

Compiler Settings

Loading...

Contract Metadata

Loading...
Contract couldn't be verified with the creation bytecode but with the runtime bytecode. Below is what was found at the time of verification.

Creation Bytecode

0x60806040526804c53ecdc18a60000060075560006009553480156200002357600080fd5b506040518060400160405280600781526020017f425542424c4553000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f42424c53000000000000000000000000000000000000000000000000000000008152508160009081620000a1919062000ac2565b508060019081620000b3919062000ac2565b505050620000d6620000ca6200011b60201b60201c565b6200012360201b60201c565b6000600190505b600a81116200010c57620000f83382620001e960201b60201c565b80620001049062000bd8565b9050620000dd565b50600a60098190555062001000565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6200020b8282604051806020016040528060008152506200020f60201b60201c565b5050565b6200022183836200027d60201b60201c565b620002366000848484620004c360201b60201c565b62000278576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200026f9062000cac565b60405180910390fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002e69062000d1e565b60405180910390fd5b62000300816200066c60201b60201c565b1562000343576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200033a9062000d90565b60405180910390fd5b62000359600083836001620006b560201b60201c565b6200036a816200066c60201b60201c565b15620003ad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003a49062000d90565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4620004bf600083836001620007e260201b60201c565b5050565b6000620004f18473ffffffffffffffffffffffffffffffffffffffff16620007e860201b620011821760201c565b156200065f578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02620005236200011b60201b60201c565b8786866040518563ffffffff1660e01b815260040162000547949392919062000ea2565b6020604051808303816000875af19250505080156200058657506040513d601f19601f8201168201806040525081019062000583919062000f58565b60015b6200060e573d8060008114620005b9576040519150601f19603f3d011682016040523d82523d6000602084013e620005be565b606091505b50600081510362000606576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005fd9062000cac565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505062000664565b600190505b949350505050565b60008073ffffffffffffffffffffffffffffffffffffffff1662000696836200080b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6001811115620007dc57600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146200074d5780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000745919062000f8a565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614620007db5780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620007d3919062000fc5565b925050819055505b5b50505050565b50505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620008ca57607f821691505b602082108103620008e057620008df62000882565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200094a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200090b565b6200095686836200090b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620009a36200099d62000997846200096e565b62000978565b6200096e565b9050919050565b6000819050919050565b620009bf8362000982565b620009d7620009ce82620009aa565b84845462000918565b825550505050565b600090565b620009ee620009df565b620009fb818484620009b4565b505050565b5b8181101562000a235762000a17600082620009e4565b60018101905062000a01565b5050565b601f82111562000a725762000a3c81620008e6565b62000a4784620008fb565b8101602085101562000a57578190505b62000a6f62000a6685620008fb565b83018262000a00565b50505b505050565b600082821c905092915050565b600062000a976000198460080262000a77565b1980831691505092915050565b600062000ab2838362000a84565b9150826002028217905092915050565b62000acd8262000848565b67ffffffffffffffff81111562000ae95762000ae862000853565b5b62000af58254620008b1565b62000b0282828562000a27565b600060209050601f83116001811462000b3a576000841562000b25578287015190505b62000b31858262000aa4565b86555062000ba1565b601f19841662000b4a86620008e6565b60005b8281101562000b745784890151825560018201915060208501945060208101905062000b4d565b8683101562000b94578489015162000b90601f89168262000a84565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000be5826200096e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362000c1a5762000c1962000ba9565b5b600182019050919050565b600082825260208201905092915050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600062000c9460328362000c25565b915062000ca18262000c36565b604082019050919050565b6000602082019050818103600083015262000cc78162000c85565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600062000d0660208362000c25565b915062000d138262000cce565b602082019050919050565b6000602082019050818103600083015262000d398162000cf7565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600062000d78601c8362000c25565b915062000d858262000d40565b602082019050919050565b6000602082019050818103600083015262000dab8162000d69565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ddf8262000db2565b9050919050565b62000df18162000dd2565b82525050565b62000e02816200096e565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101562000e4457808201518184015260208101905062000e27565b60008484015250505050565b6000601f19601f8301169050919050565b600062000e6e8262000e08565b62000e7a818562000e13565b935062000e8c81856020860162000e24565b62000e978162000e50565b840191505092915050565b600060808201905062000eb9600083018762000de6565b62000ec8602083018662000de6565b62000ed7604083018562000df7565b818103606083015262000eeb818462000e61565b905095945050505050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b62000f328162000efb565b811462000f3e57600080fd5b50565b60008151905062000f528162000f27565b92915050565b60006020828403121562000f715762000f7062000ef6565b5b600062000f818482850162000f41565b91505092915050565b600062000f97826200096e565b915062000fa4836200096e565b925082820390508181111562000fbf5762000fbe62000ba9565b5b92915050565b600062000fd2826200096e565b915062000fdf836200096e565b925082820190508082111562000ffa5762000ff962000ba9565b5b92915050565b61459d80620010106000396000f3fe6080604052600436106101665760003560e01c8063853828b6116100d1578063b88d4fde1161008a578063e985e9c511610064578063e985e9c5146104fe578063f2fde38b1461053b578063f43a22dc14610564578063f47c84c51461058f57610166565b8063b88d4fde14610481578063c87b56dd146104aa578063daaeec86146104e757610166565b8063853828b61461039d5780638da5cb5b146103bb57806395d89b41146103e6578063a035b1fe14610411578063a0712d681461043c578063a22cb4651461045857610166565b806323b872dd1161012357806323b872dd1461028f57806342842e0e146102b8578063564566a8146102e15780636352211e1461030c57806370a0823114610349578063715018a61461038657610166565b806301ffc9a71461016b57806306fdde03146101a8578063081812fc146101d3578063095ea7b3146102105780630f2cdd6c1461023957806318160ddd14610264575b600080fd5b34801561017757600080fd5b50610192600480360381019061018d9190612574565b6105ba565b60405161019f91906125bc565b60405180910390f35b3480156101b457600080fd5b506101bd61069c565b6040516101ca9190612667565b60405180910390f35b3480156101df57600080fd5b506101fa60048036038101906101f591906126bf565b61072e565b604051610207919061272d565b60405180910390f35b34801561021c57600080fd5b5061023760048036038101906102329190612774565b610774565b005b34801561024557600080fd5b5061024e61088b565b60405161025b91906127c3565b60405180910390f35b34801561027057600080fd5b50610279610890565b60405161028691906127c3565b60405180910390f35b34801561029b57600080fd5b506102b660048036038101906102b191906127de565b610896565b005b3480156102c457600080fd5b506102df60048036038101906102da91906127de565b6108f6565b005b3480156102ed57600080fd5b506102f6610916565b60405161030391906125bc565b60405180910390f35b34801561031857600080fd5b50610333600480360381019061032e91906126bf565b610929565b604051610340919061272d565b60405180910390f35b34801561035557600080fd5b50610370600480360381019061036b9190612831565b6109af565b60405161037d91906127c3565b60405180910390f35b34801561039257600080fd5b5061039b610a66565b005b6103a5610a7a565b6040516103b291906125bc565b60405180910390f35b3480156103c757600080fd5b506103d0610af7565b6040516103dd919061272d565b60405180910390f35b3480156103f257600080fd5b506103fb610b21565b6040516104089190612667565b60405180910390f35b34801561041d57600080fd5b50610426610bb3565b60405161043391906127c3565b60405180910390f35b610456600480360381019061045191906126bf565b610bb9565b005b34801561046457600080fd5b5061047f600480360381019061047a919061288a565b610e29565b005b34801561048d57600080fd5b506104a860048036038101906104a391906129ff565b610e3f565b005b3480156104b657600080fd5b506104d160048036038101906104cc91906126bf565b610ea1565b6040516104de9190612667565b60405180910390f35b3480156104f357600080fd5b506104fc61102c565b005b34801561050a57600080fd5b5061052560048036038101906105209190612a82565b611060565b60405161053291906125bc565b60405180910390f35b34801561054757600080fd5b50610562600480360381019061055d9190612831565b6110f4565b005b34801561057057600080fd5b50610579611177565b60405161058691906127c3565b60405180910390f35b34801561059b57600080fd5b506105a461117c565b6040516105b191906127c3565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061068557507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806106955750610694826111a5565b5b9050919050565b6060600080546106ab90612af1565b80601f01602080910402602001604051908101604052809291908181526020018280546106d790612af1565b80156107245780601f106106f957610100808354040283529160200191610724565b820191906000526020600020905b81548152906001019060200180831161070757829003601f168201915b5050505050905090565b60006107398261120f565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061077f82610929565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036107ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e690612b94565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661080e61125a565b73ffffffffffffffffffffffffffffffffffffffff16148061083d575061083c8161083761125a565b611060565b5b61087c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087390612c26565b60405180910390fd5b6108868383611262565b505050565b606481565b60095481565b6108a76108a161125a565b8261131b565b6108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90612cb8565b60405180910390fd5b6108f18383836113b0565b505050565b61091183838360405180602001604052806000815250610e3f565b505050565b600860009054906101000a900460ff1681565b600080610935836116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099d90612d24565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1690612db6565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a6e6116e6565b610a786000611764565b565b6000610a846116e6565b60003373ffffffffffffffffffffffffffffffffffffffff1647604051610aaa90612e07565b60006040518083038185875af1925050503d8060008114610ae7576040519150601f19603f3d011682016040523d82523d6000602084013e610aec565b606091505b505090508091505090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610b3090612af1565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5c90612af1565b8015610ba95780601f10610b7e57610100808354040283529160200191610ba9565b820191906000526020600020905b815481529060010190602001808311610b8c57829003601f168201915b5050505050905090565b60075481565b600860009054906101000a900460ff16610c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bff90612e68565b60405180910390fd5b6014811115610c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4390612ed4565b60405180910390fd5b606481600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c999190612f23565b1115610cda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd190612fa3565b60405180910390fd5b600060095490506107608282610cf09190612f23565b1115610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d289061300f565b60405180910390fd5b3460075483610d40919061302f565b1115610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d78906130bd565b60405180910390fd5b6000600190505b828111610db557610da4338284610d9f9190612f23565b61182a565b80610dae906130dd565b9050610d88565b5081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e059190612f23565b925050819055508160096000828254610e1e9190612f23565b925050819055505050565b610e3b610e3461125a565b8383611848565b5050565b610e50610e4a61125a565b8361131b565b610e8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8690612cb8565b60405180910390fd5b610e9b848484846119b4565b50505050565b6060816009541015610ee8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edf90613171565b60405180910390fd5b600082604051602001610efb91906131b2565b6040516020818303038152906040528051906020012060001c90506000610fca610f32610f2d84600b60006002611a10565b611a43565b610f49610f4485600c60006002611a10565b611a43565b610f60610f5b86600d60016006611a10565b611a43565b610f6d8660076046611b11565b610f7a8760086096611b11565b610f88886009610136611b11565b610f9689600a6101c2611b11565b610f9f8c611a43565b604051602001610fb6989796959493929190613563565b604051602081830303815290604052611c32565b90506000610fd785611a43565b82604051602001610fe9929190613877565b604051602081830303815290604052905061100381611c32565b6040516020016110139190613934565b6040516020818303038152906040529350505050919050565b6110346116e6565b600860009054906101000a900460ff1615600860006101000a81548160ff021916908315150217905550565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6110fc6116e6565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361116b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611162906139c8565b60405180910390fd5b61117481611764565b50565b601481565b61076081565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b61121881611d95565b611257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124e90612d24565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166112d583610929565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061132783610929565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061136957506113688185611060565b5b806113a757508373ffffffffffffffffffffffffffffffffffffffff1661138f8461072e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166113d082610929565b73ffffffffffffffffffffffffffffffffffffffff1614611426576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141d90613a5a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148c90613aec565b60405180910390fd5b6114a28383836001611dd6565b8273ffffffffffffffffffffffffffffffffffffffff166114c282610929565b73ffffffffffffffffffffffffffffffffffffffff1614611518576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150f90613a5a565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46116a48383836001611efc565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6116ee61125a565b73ffffffffffffffffffffffffffffffffffffffff1661170c610af7565b73ffffffffffffffffffffffffffffffffffffffff1614611762576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175990613b58565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611844828260405180602001604052806000815250611f02565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ad90613bc4565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516119a791906125bc565b60405180910390a3505050565b6119bf8484846113b0565b6119cb84848484611f5d565b611a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0190613c56565b60405180910390fd5b50505050565b6000828383611a1f9190613c76565b8587901c8718611a2f9190613cd9565b611a399190612f23565b9050949350505050565b606060006001611a52846120e4565b01905060008167ffffffffffffffff811115611a7157611a706128d4565b5b6040519080825280601f01601f191660200182016040528015611aa35781602001600182028036833780820191505090505b509050600082602001820190505b600115611b06578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611afa57611af9613caa565b5b04945060008503611ab1575b819350505050919050565b60606000601e8460ff1686901c8618611b2a9190613d14565b9050611b368585612237565b611b4a8285611b459190613d45565b611a43565b611b6f611b6a88600189611b5e9190613d96565b60ff166002600a611a10565b611a43565b611b94611b8f8960028a611b839190613d96565b60ff1660006009611a10565b611a43565b611bb9611bb48a60038b611ba89190613d96565b60ff16600f6096611a10565b611a43565b611bde611bd98b60048c611bcd9190613d96565b60ff1660026009611a10565b611a43565b611c03611bfe8c60058d611bf29190613d96565b60ff1660006009611a10565b611a43565b604051602001611c1997969594939291906140c3565b6040516020818303038152906040529150509392505050565b60606000825103611c5457604051806020016040528060008152509050611d90565b60006040518060600160405280604081526020016145286040913990506000600360028551611c839190612f23565b611c8d91906141a1565b6004611c99919061302f565b67ffffffffffffffff811115611cb257611cb16128d4565b5b6040519080825280601f01601f191660200182016040528015611ce45781602001600182028036833780820191505090505b509050600182016020820185865187015b80821015611d50576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845360018401935050611cf5565b5050600386510660018114611d6c5760028114611d7f57611d87565b603d6001830353603d6002830353611d87565b603d60018303535b50505080925050505b919050565b60008073ffffffffffffffffffffffffffffffffffffffff16611db7836116a9565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6001811115611ef657600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611e6a5780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e629190613c76565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611ef55780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611eed9190612f23565b925050819055505b5b50505050565b50505050565b611f0c83836122eb565b611f196000848484611f5d565b611f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4f90613c56565b60405180910390fd5b505050565b6000611f7e8473ffffffffffffffffffffffffffffffffffffffff16611182565b156120d7578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611fa761125a565b8786866040518563ffffffff1660e01b8152600401611fc9949392919061421c565b6020604051808303816000875af192505050801561200557506040513d601f19601f82011682018060405250810190612002919061427d565b60015b612087573d8060008114612035576040519150601f19603f3d011682016040523d82523d6000602084013e61203a565b606091505b50600081510361207f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207690613c56565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506120dc565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310612142577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161213857612137613caa565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061217f576d04ee2d6d415b85acef8100000000838161217557612174613caa565b5b0492506020810190505b662386f26fc1000083106121ae57662386f26fc1000083816121a4576121a3613caa565b5b0492506010810190505b6305f5e10083106121d7576305f5e10083816121cd576121cc613caa565b5b0492506008810190505b61271083106121fc5761271083816121f2576121f1613caa565b5b0492506004810190505b6064831061221f576064838161221557612214613caa565b5b0492506002810190505b600a831061222e576001810190505b80915050919050565b606061225261224d848460ff16600b60ff611a10565b611a43565b612277612272858560016122669190613d96565b60ff16600b60ff611a10565b611a43565b61229c6122978686600261228b9190613d96565b60ff16600b60ff611a10565b611a43565b6122c16122bc878760036122b09190613d96565b60ff16600a6063611a10565b611a43565b6040516020016122d494939291906143da565b604051602081830303815290604052905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361235a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123519061449b565b60405180910390fd5b61236381611d95565b156123a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161239a90614507565b60405180910390fd5b6123b1600083836001611dd6565b6123ba81611d95565b156123fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f190614507565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612504600083836001611efc565b5050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6125518161251c565b811461255c57600080fd5b50565b60008135905061256e81612548565b92915050565b60006020828403121561258a57612589612512565b5b60006125988482850161255f565b91505092915050565b60008115159050919050565b6125b6816125a1565b82525050565b60006020820190506125d160008301846125ad565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156126115780820151818401526020810190506125f6565b60008484015250505050565b6000601f19601f8301169050919050565b6000612639826125d7565b61264381856125e2565b93506126538185602086016125f3565b61265c8161261d565b840191505092915050565b60006020820190508181036000830152612681818461262e565b905092915050565b6000819050919050565b61269c81612689565b81146126a757600080fd5b50565b6000813590506126b981612693565b92915050565b6000602082840312156126d5576126d4612512565b5b60006126e3848285016126aa565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612717826126ec565b9050919050565b6127278161270c565b82525050565b6000602082019050612742600083018461271e565b92915050565b6127518161270c565b811461275c57600080fd5b50565b60008135905061276e81612748565b92915050565b6000806040838503121561278b5761278a612512565b5b60006127998582860161275f565b92505060206127aa858286016126aa565b9150509250929050565b6127bd81612689565b82525050565b60006020820190506127d860008301846127b4565b92915050565b6000806000606084860312156127f7576127f6612512565b5b60006128058682870161275f565b93505060206128168682870161275f565b9250506040612827868287016126aa565b9150509250925092565b60006020828403121561284757612846612512565b5b60006128558482850161275f565b91505092915050565b612867816125a1565b811461287257600080fd5b50565b6000813590506128848161285e565b92915050565b600080604083850312156128a1576128a0612512565b5b60006128af8582860161275f565b92505060206128c085828601612875565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61290c8261261d565b810181811067ffffffffffffffff8211171561292b5761292a6128d4565b5b80604052505050565b600061293e612508565b905061294a8282612903565b919050565b600067ffffffffffffffff82111561296a576129696128d4565b5b6129738261261d565b9050602081019050919050565b82818337600083830152505050565b60006129a261299d8461294f565b612934565b9050828152602081018484840111156129be576129bd6128cf565b5b6129c9848285612980565b509392505050565b600082601f8301126129e6576129e56128ca565b5b81356129f684826020860161298f565b91505092915050565b60008060008060808587031215612a1957612a18612512565b5b6000612a278782880161275f565b9450506020612a388782880161275f565b9350506040612a49878288016126aa565b925050606085013567ffffffffffffffff811115612a6a57612a69612517565b5b612a76878288016129d1565b91505092959194509250565b60008060408385031215612a9957612a98612512565b5b6000612aa78582860161275f565b9250506020612ab88582860161275f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612b0957607f821691505b602082108103612b1c57612b1b612ac2565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b7e6021836125e2565b9150612b8982612b22565b604082019050919050565b60006020820190508181036000830152612bad81612b71565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000612c10603d836125e2565b9150612c1b82612bb4565b604082019050919050565b60006020820190508181036000830152612c3f81612c03565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000612ca2602d836125e2565b9150612cad82612c46565b604082019050919050565b60006020820190508181036000830152612cd181612c95565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612d0e6018836125e2565b9150612d1982612cd8565b602082019050919050565b60006020820190508181036000830152612d3d81612d01565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612da06029836125e2565b9150612dab82612d44565b604082019050919050565b60006020820190508181036000830152612dcf81612d93565b9050919050565b600081905092915050565b50565b6000612df1600083612dd6565b9150612dfc82612de1565b600082019050919050565b6000612e1282612de4565b9150819050919050565b7f53616c6520697320706175736564000000000000000000000000000000000000600082015250565b6000612e52600e836125e2565b9150612e5d82612e1c565b602082019050919050565b60006020820190508181036000830152612e8181612e45565b9050919050565b7f45786365656473204d41585f5045525f54580000000000000000000000000000600082015250565b6000612ebe6012836125e2565b9150612ec982612e88565b602082019050919050565b60006020820190508181036000830152612eed81612eb1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f2e82612689565b9150612f3983612689565b9250828201905080821115612f5157612f50612ef4565b5b92915050565b7f45786365656473204d41585f5045525f57414c4c455400000000000000000000600082015250565b6000612f8d6016836125e2565b9150612f9882612f57565b602082019050919050565b60006020820190508181036000830152612fbc81612f80565b9050919050565b7f4d696e746564206f757400000000000000000000000000000000000000000000600082015250565b6000612ff9600a836125e2565b915061300482612fc3565b602082019050919050565b6000602082019050818103600083015261302881612fec565b9050919050565b600061303a82612689565b915061304583612689565b925082820261305381612689565b9150828204841483151761306a57613069612ef4565b5b5092915050565b7f496e73756666696369656e742066756e64730000000000000000000000000000600082015250565b60006130a76012836125e2565b91506130b282613071565b602082019050919050565b600060208201905081810360008301526130d68161309a565b9050919050565b60006130e882612689565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361311a57613119612ef4565b5b600182019050919050565b7f4e6f74204d696e74656420596574000000000000000000000000000000000000600082015250565b600061315b600e836125e2565b915061316682613125565b602082019050919050565b6000602082019050818103600083015261318a8161314e565b9050919050565b6000819050919050565b6131ac6131a782612689565b613191565b82525050565b60006131be828461319b565b60208201915081905092915050565b600081905092915050565b7f3c7376672076696577426f783d2230203020353132203531322220776964746860008201527f3d2235313222206865696768743d22353132222076657273696f6e3d22312e3160208201527f2220786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323030302f60408201527f737667223e3c72656374207374796c653d2266696c6c3a230000000000000000606082015250565b60006132806078836131cd565b915061328b826131d8565b607882019050919050565b60006132a1826125d7565b6132ab81856131cd565b93506132bb8185602086016125f3565b80840191505092915050565b7f222077696474683d2234393022206865696768743d223439302220783d22313060008201527f2220793d223130222f3e00000000000000000000000000000000000000000000602082015250565b6000613323602a836131cd565b915061332e826132c7565b602a82019050919050565b600081519050919050565b600061334f82613339565b6133598185612dd6565b93506133698185602086016125f3565b80840191505092915050565b7f3c7265637420783d2231352220793d223135222077696474683d22343832222060008201527f6865696768743d2234383222207374726f6b653d2223303030222066696c6c3d60208201527f227472616e73706172656e7422207374726f6b652d77696474683d223330222f60408201527f3e00000000000000000000000000000000000000000000000000000000000000606082015250565b600061341d6061836131cd565b915061342882613375565b606182019050919050565b7f3c7465787420783d223338302220793d22353031222066696c6c3d222346464660008201527f2220666f6e742d66616d696c793d226d6f6e6f7370616365223e427562626c6560208201527f7320230000000000000000000000000000000000000000000000000000000000604082015250565b60006134b56043836131cd565b91506134c082613433565b604382019050919050565b7f3c2f746578743e00000000000000000000000000000000000000000000000000600082015250565b60006135016007836131cd565b915061350c826134cb565b600782019050919050565b7f3c2f7376673e0000000000000000000000000000000000000000000000000000600082015250565b600061354d6006836131cd565b915061355882613517565b600682019050919050565b600061356e82613273565b915061357a828b613296565b9150613586828a613296565b91506135928289613296565b915061359d82613316565b91506135a98288613344565b91506135b58287613344565b91506135c18286613344565b91506135cd8285613344565b91506135d882613410565b91506135e3826134a8565b91506135ef8284613296565b91506135fa826134f4565b915061360582613540565b91508190509998505050505050505050565b7f7b00000000000000000000000000000000000000000000000000000000000000600082015250565b600061364d6001836131cd565b915061365882613617565b600182019050919050565b7f226e616d65223a2022427562626c657320230000000000000000000000000000600082015250565b60006136996012836131cd565b91506136a482613663565b601282019050919050565b7f222c000000000000000000000000000000000000000000000000000000000000600082015250565b60006136e56002836131cd565b91506136f0826136af565b600282019050919050565b7f226465736372697074696f6e223a2022427562626c65733a20416e20616e696d60008201527f61746564206f6e20636861696e204e4654222c00000000000000000000000000602082015250565b60006137576033836131cd565b9150613762826136fb565b603382019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b62617360008201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b60006137c96024836131cd565b91506137d48261376d565b602482019050919050565b7f2200000000000000000000000000000000000000000000000000000000000000600082015250565b60006138156001836131cd565b9150613820826137df565b600182019050919050565b7f7d00000000000000000000000000000000000000000000000000000000000000600082015250565b60006138616001836131cd565b915061386c8261382b565b600182019050919050565b600061388282613640565b915061388d8261368c565b91506138998285613296565b91506138a4826136d8565b91506138af8261374a565b91506138ba826137bc565b91506138c68284613296565b91506138d182613808565b91506138dc82613854565b91508190509392505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b600061391e601d836131cd565b9150613929826138e8565b601d82019050919050565b600061393f82613911565b915061394b8284613296565b915081905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006139b26026836125e2565b91506139bd82613956565b604082019050919050565b600060208201905081810360008301526139e1816139a5565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613a446025836125e2565b9150613a4f826139e8565b604082019050919050565b60006020820190508181036000830152613a7381613a37565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613ad66024836125e2565b9150613ae182613a7a565b604082019050919050565b60006020820190508181036000830152613b0581613ac9565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613b426020836125e2565b9150613b4d82613b0c565b602082019050919050565b60006020820190508181036000830152613b7181613b35565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613bae6019836125e2565b9150613bb982613b78565b602082019050919050565b60006020820190508181036000830152613bdd81613ba1565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613c406032836125e2565b9150613c4b82613be4565b604082019050919050565b60006020820190508181036000830152613c6f81613c33565b9050919050565b6000613c8182612689565b9150613c8c83612689565b9250828203905081811115613ca457613ca3612ef4565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613ce482612689565b9150613cef83612689565b925082613cff57613cfe613caa565b5b828206905092915050565b6000819050919050565b6000613d1f82613d0a565b9150613d2a83613d0a565b925082613d3a57613d39613caa565b5b828207905092915050565b6000613d5082613d0a565b9150613d5b83613d0a565b925082820190508281121560008312168382126000841215161715613d8357613d82612ef4565b5b92915050565b600060ff82169050919050565b6000613da182613d89565b9150613dac83613d89565b9250828201905060ff811115613dc557613dc4612ef4565b5b92915050565b7f3c636972636c65207374796c653d2266696c6c3a000000000000000000000000600082015250565b6000613e016014836131cd565b9150613e0c82613dcb565b601482019050919050565b7f222063783d220000000000000000000000000000000000000000000000000000600082015250565b6000613e4d6006836131cd565b9150613e5882613e17565b600682019050919050565b7f222063793d22302220723d2230223e0000000000000000000000000000000000600082015250565b6000613e99600f836131cd565b9150613ea482613e63565b600f82019050919050565b7f3c616e696d617465206174747269627574654e616d653d226379222066726f6d60008201527f3d223533302220746f3d222d343022206475723d220000000000000000000000602082015250565b6000613f0b6035836131cd565b9150613f1682613eaf565b603582019050919050565b7f2e00000000000000000000000000000000000000000000000000000000000000600082015250565b6000613f576001836131cd565b9150613f6282613f21565b600182019050919050565b7f2220726570656174436f756e743d22696e646566696e697465222f3e00000000600082015250565b6000613fa3601c836131cd565b9150613fae82613f6d565b601c82019050919050565b7f3c616e696d617465206174747269627574654e616d653d2272222066726f6d3d60008201527f22322220746f3d22000000000000000000000000000000000000000000000000602082015250565b60006140156028836131cd565b915061402082613fb9565b602882019050919050565b7f22206475723d2200000000000000000000000000000000000000000000000000600082015250565b60006140616007836131cd565b915061406c8261402b565b600782019050919050565b7f3c2f636972636c653e0000000000000000000000000000000000000000000000600082015250565b60006140ad6009836131cd565b91506140b882614077565b600982019050919050565b60006140ce82613df4565b91506140da828a613344565b91506140e582613e40565b91506140f18289613296565b91506140fc82613e8c565b915061410782613efe565b91506141138288613296565b915061411e82613f4a565b915061412a8287613296565b915061413582613f96565b915061414082614008565b915061414c8286613296565b915061415782614054565b91506141638285613296565b915061416e82613f4a565b915061417a8284613296565b915061418582613f96565b9150614190826140a0565b915081905098975050505050505050565b60006141ac82612689565b91506141b783612689565b9250826141c7576141c6613caa565b5b828204905092915050565b600082825260208201905092915050565b60006141ee82613339565b6141f881856141d2565b93506142088185602086016125f3565b6142118161261d565b840191505092915050565b6000608082019050614231600083018761271e565b61423e602083018661271e565b61424b60408301856127b4565b818103606083015261425d81846141e3565b905095945050505050565b60008151905061427781612548565b92915050565b60006020828403121561429357614292612512565b5b60006142a184828501614268565b91505092915050565b7f7267626128000000000000000000000000000000000000000000000000000000600082015250565b60006142e06005836131cd565b91506142eb826142aa565b600582019050919050565b7f2c00000000000000000000000000000000000000000000000000000000000000600082015250565b600061432c6001836131cd565b9150614337826142f6565b600182019050919050565b7f2c302e0000000000000000000000000000000000000000000000000000000000600082015250565b60006143786003836131cd565b915061438382614342565b600382019050919050565b7f2900000000000000000000000000000000000000000000000000000000000000600082015250565b60006143c46001836131cd565b91506143cf8261438e565b600182019050919050565b60006143e5826142d3565b91506143f18287613296565b91506143fc8261431f565b91506144088286613296565b91506144138261431f565b915061441f8285613296565b915061442a8261436b565b91506144368284613296565b9150614441826143b7565b915081905095945050505050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006144856020836125e2565b91506144908261444f565b602082019050919050565b600060208201905081810360008301526144b481614478565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006144f1601c836125e2565b91506144fc826144bb565b602082019050919050565b60006020820190508181036000830152614520816144e4565b905091905056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa264697066735822122077ef5680e571896df3e0a5c03f97c297a3acf7217d04c873b96d163467649ad064736f6c63430008120033

CBOR Auxdata

These values are what Sourcify extracted from the recompiled bytecode. If these values are different in the on-chain bytecode, they will show up in Transformations section.

CBOR Auxdata id: 1

View on IPFS LogoSolidity metadata.json IPFS hash: QmWQptzXTPbyEvY1u9B2wuVWPWZcrdUrvqAELKB9kVTUiB
RawDecoded
Length: 53 bytes
0xa264697066735822122077ef5680e571896df3e0a5c03f97c297a3acf7217d04c873b96d163467649ad064736f6c63430008120033

Runtime Bytecode

On-chain & Recompiled Bytecode
0x6080604052600436106101665760003560e01c8063853828b6116100d1578063b88d4fde1161008a578063e985e9c511610064578063e985e9c5146104fe578063f2fde38b1461053b578063f43a22dc14610564578063f47c84c51461058f57610166565b8063b88d4fde14610481578063c87b56dd146104aa578063daaeec86146104e757610166565b8063853828b61461039d5780638da5cb5b146103bb57806395d89b41146103e6578063a035b1fe14610411578063a0712d681461043c578063a22cb4651461045857610166565b806323b872dd1161012357806323b872dd1461028f57806342842e0e146102b8578063564566a8146102e15780636352211e1461030c57806370a0823114610349578063715018a61461038657610166565b806301ffc9a71461016b57806306fdde03146101a8578063081812fc146101d3578063095ea7b3146102105780630f2cdd6c1461023957806318160ddd14610264575b600080fd5b34801561017757600080fd5b50610192600480360381019061018d9190612574565b6105ba565b60405161019f91906125bc565b60405180910390f35b3480156101b457600080fd5b506101bd61069c565b6040516101ca9190612667565b60405180910390f35b3480156101df57600080fd5b506101fa60048036038101906101f591906126bf565b61072e565b604051610207919061272d565b60405180910390f35b34801561021c57600080fd5b5061023760048036038101906102329190612774565b610774565b005b34801561024557600080fd5b5061024e61088b565b60405161025b91906127c3565b60405180910390f35b34801561027057600080fd5b50610279610890565b60405161028691906127c3565b60405180910390f35b34801561029b57600080fd5b506102b660048036038101906102b191906127de565b610896565b005b3480156102c457600080fd5b506102df60048036038101906102da91906127de565b6108f6565b005b3480156102ed57600080fd5b506102f6610916565b60405161030391906125bc565b60405180910390f35b34801561031857600080fd5b50610333600480360381019061032e91906126bf565b610929565b604051610340919061272d565b60405180910390f35b34801561035557600080fd5b50610370600480360381019061036b9190612831565b6109af565b60405161037d91906127c3565b60405180910390f35b34801561039257600080fd5b5061039b610a66565b005b6103a5610a7a565b6040516103b291906125bc565b60405180910390f35b3480156103c757600080fd5b506103d0610af7565b6040516103dd919061272d565b60405180910390f35b3480156103f257600080fd5b506103fb610b21565b6040516104089190612667565b60405180910390f35b34801561041d57600080fd5b50610426610bb3565b60405161043391906127c3565b60405180910390f35b610456600480360381019061045191906126bf565b610bb9565b005b34801561046457600080fd5b5061047f600480360381019061047a919061288a565b610e29565b005b34801561048d57600080fd5b506104a860048036038101906104a391906129ff565b610e3f565b005b3480156104b657600080fd5b506104d160048036038101906104cc91906126bf565b610ea1565b6040516104de9190612667565b60405180910390f35b3480156104f357600080fd5b506104fc61102c565b005b34801561050a57600080fd5b5061052560048036038101906105209190612a82565b611060565b60405161053291906125bc565b60405180910390f35b34801561054757600080fd5b50610562600480360381019061055d9190612831565b6110f4565b005b34801561057057600080fd5b50610579611177565b60405161058691906127c3565b60405180910390f35b34801561059b57600080fd5b506105a461117c565b6040516105b191906127c3565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061068557507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806106955750610694826111a5565b5b9050919050565b6060600080546106ab90612af1565b80601f01602080910402602001604051908101604052809291908181526020018280546106d790612af1565b80156107245780601f106106f957610100808354040283529160200191610724565b820191906000526020600020905b81548152906001019060200180831161070757829003601f168201915b5050505050905090565b60006107398261120f565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061077f82610929565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036107ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e690612b94565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661080e61125a565b73ffffffffffffffffffffffffffffffffffffffff16148061083d575061083c8161083761125a565b611060565b5b61087c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087390612c26565b60405180910390fd5b6108868383611262565b505050565b606481565b60095481565b6108a76108a161125a565b8261131b565b6108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90612cb8565b60405180910390fd5b6108f18383836113b0565b505050565b61091183838360405180602001604052806000815250610e3f565b505050565b600860009054906101000a900460ff1681565b600080610935836116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099d90612d24565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1690612db6565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a6e6116e6565b610a786000611764565b565b6000610a846116e6565b60003373ffffffffffffffffffffffffffffffffffffffff1647604051610aaa90612e07565b60006040518083038185875af1925050503d8060008114610ae7576040519150601f19603f3d011682016040523d82523d6000602084013e610aec565b606091505b505090508091505090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610b3090612af1565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5c90612af1565b8015610ba95780601f10610b7e57610100808354040283529160200191610ba9565b820191906000526020600020905b815481529060010190602001808311610b8c57829003601f168201915b5050505050905090565b60075481565b600860009054906101000a900460ff16610c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bff90612e68565b60405180910390fd5b6014811115610c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4390612ed4565b60405180910390fd5b606481600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c999190612f23565b1115610cda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd190612fa3565b60405180910390fd5b600060095490506107608282610cf09190612f23565b1115610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d289061300f565b60405180910390fd5b3460075483610d40919061302f565b1115610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d78906130bd565b60405180910390fd5b6000600190505b828111610db557610da4338284610d9f9190612f23565b61182a565b80610dae906130dd565b9050610d88565b5081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e059190612f23565b925050819055508160096000828254610e1e9190612f23565b925050819055505050565b610e3b610e3461125a565b8383611848565b5050565b610e50610e4a61125a565b8361131b565b610e8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8690612cb8565b60405180910390fd5b610e9b848484846119b4565b50505050565b6060816009541015610ee8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edf90613171565b60405180910390fd5b600082604051602001610efb91906131b2565b6040516020818303038152906040528051906020012060001c90506000610fca610f32610f2d84600b60006002611a10565b611a43565b610f49610f4485600c60006002611a10565b611a43565b610f60610f5b86600d60016006611a10565b611a43565b610f6d8660076046611b11565b610f7a8760086096611b11565b610f88886009610136611b11565b610f9689600a6101c2611b11565b610f9f8c611a43565b604051602001610fb6989796959493929190613563565b604051602081830303815290604052611c32565b90506000610fd785611a43565b82604051602001610fe9929190613877565b604051602081830303815290604052905061100381611c32565b6040516020016110139190613934565b6040516020818303038152906040529350505050919050565b6110346116e6565b600860009054906101000a900460ff1615600860006101000a81548160ff021916908315150217905550565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6110fc6116e6565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361116b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611162906139c8565b60405180910390fd5b61117481611764565b50565b601481565b61076081565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b61121881611d95565b611257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124e90612d24565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166112d583610929565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061132783610929565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061136957506113688185611060565b5b806113a757508373ffffffffffffffffffffffffffffffffffffffff1661138f8461072e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166113d082610929565b73ffffffffffffffffffffffffffffffffffffffff1614611426576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141d90613a5a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148c90613aec565b60405180910390fd5b6114a28383836001611dd6565b8273ffffffffffffffffffffffffffffffffffffffff166114c282610929565b73ffffffffffffffffffffffffffffffffffffffff1614611518576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150f90613a5a565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46116a48383836001611efc565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6116ee61125a565b73ffffffffffffffffffffffffffffffffffffffff1661170c610af7565b73ffffffffffffffffffffffffffffffffffffffff1614611762576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175990613b58565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611844828260405180602001604052806000815250611f02565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ad90613bc4565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516119a791906125bc565b60405180910390a3505050565b6119bf8484846113b0565b6119cb84848484611f5d565b611a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0190613c56565b60405180910390fd5b50505050565b6000828383611a1f9190613c76565b8587901c8718611a2f9190613cd9565b611a399190612f23565b9050949350505050565b606060006001611a52846120e4565b01905060008167ffffffffffffffff811115611a7157611a706128d4565b5b6040519080825280601f01601f191660200182016040528015611aa35781602001600182028036833780820191505090505b509050600082602001820190505b600115611b06578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611afa57611af9613caa565b5b04945060008503611ab1575b819350505050919050565b60606000601e8460ff1686901c8618611b2a9190613d14565b9050611b368585612237565b611b4a8285611b459190613d45565b611a43565b611b6f611b6a88600189611b5e9190613d96565b60ff166002600a611a10565b611a43565b611b94611b8f8960028a611b839190613d96565b60ff1660006009611a10565b611a43565b611bb9611bb48a60038b611ba89190613d96565b60ff16600f6096611a10565b611a43565b611bde611bd98b60048c611bcd9190613d96565b60ff1660026009611a10565b611a43565b611c03611bfe8c60058d611bf29190613d96565b60ff1660006009611a10565b611a43565b604051602001611c1997969594939291906140c3565b6040516020818303038152906040529150509392505050565b60606000825103611c5457604051806020016040528060008152509050611d90565b60006040518060600160405280604081526020016145286040913990506000600360028551611c839190612f23565b611c8d91906141a1565b6004611c99919061302f565b67ffffffffffffffff811115611cb257611cb16128d4565b5b6040519080825280601f01601f191660200182016040528015611ce45781602001600182028036833780820191505090505b509050600182016020820185865187015b80821015611d50576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845360018401935050611cf5565b5050600386510660018114611d6c5760028114611d7f57611d87565b603d6001830353603d6002830353611d87565b603d60018303535b50505080925050505b919050565b60008073ffffffffffffffffffffffffffffffffffffffff16611db7836116a9565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6001811115611ef657600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611e6a5780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e629190613c76565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611ef55780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611eed9190612f23565b925050819055505b5b50505050565b50505050565b611f0c83836122eb565b611f196000848484611f5d565b611f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4f90613c56565b60405180910390fd5b505050565b6000611f7e8473ffffffffffffffffffffffffffffffffffffffff16611182565b156120d7578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611fa761125a565b8786866040518563ffffffff1660e01b8152600401611fc9949392919061421c565b6020604051808303816000875af192505050801561200557506040513d601f19601f82011682018060405250810190612002919061427d565b60015b612087573d8060008114612035576040519150601f19603f3d011682016040523d82523d6000602084013e61203a565b606091505b50600081510361207f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207690613c56565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506120dc565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310612142577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161213857612137613caa565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061217f576d04ee2d6d415b85acef8100000000838161217557612174613caa565b5b0492506020810190505b662386f26fc1000083106121ae57662386f26fc1000083816121a4576121a3613caa565b5b0492506010810190505b6305f5e10083106121d7576305f5e10083816121cd576121cc613caa565b5b0492506008810190505b61271083106121fc5761271083816121f2576121f1613caa565b5b0492506004810190505b6064831061221f576064838161221557612214613caa565b5b0492506002810190505b600a831061222e576001810190505b80915050919050565b606061225261224d848460ff16600b60ff611a10565b611a43565b612277612272858560016122669190613d96565b60ff16600b60ff611a10565b611a43565b61229c6122978686600261228b9190613d96565b60ff16600b60ff611a10565b611a43565b6122c16122bc878760036122b09190613d96565b60ff16600a6063611a10565b611a43565b6040516020016122d494939291906143da565b604051602081830303815290604052905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361235a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123519061449b565b60405180910390fd5b61236381611d95565b156123a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161239a90614507565b60405180910390fd5b6123b1600083836001611dd6565b6123ba81611d95565b156123fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f190614507565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612504600083836001611efc565b5050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6125518161251c565b811461255c57600080fd5b50565b60008135905061256e81612548565b92915050565b60006020828403121561258a57612589612512565b5b60006125988482850161255f565b91505092915050565b60008115159050919050565b6125b6816125a1565b82525050565b60006020820190506125d160008301846125ad565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156126115780820151818401526020810190506125f6565b60008484015250505050565b6000601f19601f8301169050919050565b6000612639826125d7565b61264381856125e2565b93506126538185602086016125f3565b61265c8161261d565b840191505092915050565b60006020820190508181036000830152612681818461262e565b905092915050565b6000819050919050565b61269c81612689565b81146126a757600080fd5b50565b6000813590506126b981612693565b92915050565b6000602082840312156126d5576126d4612512565b5b60006126e3848285016126aa565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612717826126ec565b9050919050565b6127278161270c565b82525050565b6000602082019050612742600083018461271e565b92915050565b6127518161270c565b811461275c57600080fd5b50565b60008135905061276e81612748565b92915050565b6000806040838503121561278b5761278a612512565b5b60006127998582860161275f565b92505060206127aa858286016126aa565b9150509250929050565b6127bd81612689565b82525050565b60006020820190506127d860008301846127b4565b92915050565b6000806000606084860312156127f7576127f6612512565b5b60006128058682870161275f565b93505060206128168682870161275f565b9250506040612827868287016126aa565b9150509250925092565b60006020828403121561284757612846612512565b5b60006128558482850161275f565b91505092915050565b612867816125a1565b811461287257600080fd5b50565b6000813590506128848161285e565b92915050565b600080604083850312156128a1576128a0612512565b5b60006128af8582860161275f565b92505060206128c085828601612875565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61290c8261261d565b810181811067ffffffffffffffff8211171561292b5761292a6128d4565b5b80604052505050565b600061293e612508565b905061294a8282612903565b919050565b600067ffffffffffffffff82111561296a576129696128d4565b5b6129738261261d565b9050602081019050919050565b82818337600083830152505050565b60006129a261299d8461294f565b612934565b9050828152602081018484840111156129be576129bd6128cf565b5b6129c9848285612980565b509392505050565b600082601f8301126129e6576129e56128ca565b5b81356129f684826020860161298f565b91505092915050565b60008060008060808587031215612a1957612a18612512565b5b6000612a278782880161275f565b9450506020612a388782880161275f565b9350506040612a49878288016126aa565b925050606085013567ffffffffffffffff811115612a6a57612a69612517565b5b612a76878288016129d1565b91505092959194509250565b60008060408385031215612a9957612a98612512565b5b6000612aa78582860161275f565b9250506020612ab88582860161275f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612b0957607f821691505b602082108103612b1c57612b1b612ac2565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b7e6021836125e2565b9150612b8982612b22565b604082019050919050565b60006020820190508181036000830152612bad81612b71565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000612c10603d836125e2565b9150612c1b82612bb4565b604082019050919050565b60006020820190508181036000830152612c3f81612c03565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000612ca2602d836125e2565b9150612cad82612c46565b604082019050919050565b60006020820190508181036000830152612cd181612c95565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612d0e6018836125e2565b9150612d1982612cd8565b602082019050919050565b60006020820190508181036000830152612d3d81612d01565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612da06029836125e2565b9150612dab82612d44565b604082019050919050565b60006020820190508181036000830152612dcf81612d93565b9050919050565b600081905092915050565b50565b6000612df1600083612dd6565b9150612dfc82612de1565b600082019050919050565b6000612e1282612de4565b9150819050919050565b7f53616c6520697320706175736564000000000000000000000000000000000000600082015250565b6000612e52600e836125e2565b9150612e5d82612e1c565b602082019050919050565b60006020820190508181036000830152612e8181612e45565b9050919050565b7f45786365656473204d41585f5045525f54580000000000000000000000000000600082015250565b6000612ebe6012836125e2565b9150612ec982612e88565b602082019050919050565b60006020820190508181036000830152612eed81612eb1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f2e82612689565b9150612f3983612689565b9250828201905080821115612f5157612f50612ef4565b5b92915050565b7f45786365656473204d41585f5045525f57414c4c455400000000000000000000600082015250565b6000612f8d6016836125e2565b9150612f9882612f57565b602082019050919050565b60006020820190508181036000830152612fbc81612f80565b9050919050565b7f4d696e746564206f757400000000000000000000000000000000000000000000600082015250565b6000612ff9600a836125e2565b915061300482612fc3565b602082019050919050565b6000602082019050818103600083015261302881612fec565b9050919050565b600061303a82612689565b915061304583612689565b925082820261305381612689565b9150828204841483151761306a57613069612ef4565b5b5092915050565b7f496e73756666696369656e742066756e64730000000000000000000000000000600082015250565b60006130a76012836125e2565b91506130b282613071565b602082019050919050565b600060208201905081810360008301526130d68161309a565b9050919050565b60006130e882612689565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361311a57613119612ef4565b5b600182019050919050565b7f4e6f74204d696e74656420596574000000000000000000000000000000000000600082015250565b600061315b600e836125e2565b915061316682613125565b602082019050919050565b6000602082019050818103600083015261318a8161314e565b9050919050565b6000819050919050565b6131ac6131a782612689565b613191565b82525050565b60006131be828461319b565b60208201915081905092915050565b600081905092915050565b7f3c7376672076696577426f783d2230203020353132203531322220776964746860008201527f3d2235313222206865696768743d22353132222076657273696f6e3d22312e3160208201527f2220786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323030302f60408201527f737667223e3c72656374207374796c653d2266696c6c3a230000000000000000606082015250565b60006132806078836131cd565b915061328b826131d8565b607882019050919050565b60006132a1826125d7565b6132ab81856131cd565b93506132bb8185602086016125f3565b80840191505092915050565b7f222077696474683d2234393022206865696768743d223439302220783d22313060008201527f2220793d223130222f3e00000000000000000000000000000000000000000000602082015250565b6000613323602a836131cd565b915061332e826132c7565b602a82019050919050565b600081519050919050565b600061334f82613339565b6133598185612dd6565b93506133698185602086016125f3565b80840191505092915050565b7f3c7265637420783d2231352220793d223135222077696474683d22343832222060008201527f6865696768743d2234383222207374726f6b653d2223303030222066696c6c3d60208201527f227472616e73706172656e7422207374726f6b652d77696474683d223330222f60408201527f3e00000000000000000000000000000000000000000000000000000000000000606082015250565b600061341d6061836131cd565b915061342882613375565b606182019050919050565b7f3c7465787420783d223338302220793d22353031222066696c6c3d222346464660008201527f2220666f6e742d66616d696c793d226d6f6e6f7370616365223e427562626c6560208201527f7320230000000000000000000000000000000000000000000000000000000000604082015250565b60006134b56043836131cd565b91506134c082613433565b604382019050919050565b7f3c2f746578743e00000000000000000000000000000000000000000000000000600082015250565b60006135016007836131cd565b915061350c826134cb565b600782019050919050565b7f3c2f7376673e0000000000000000000000000000000000000000000000000000600082015250565b600061354d6006836131cd565b915061355882613517565b600682019050919050565b600061356e82613273565b915061357a828b613296565b9150613586828a613296565b91506135928289613296565b915061359d82613316565b91506135a98288613344565b91506135b58287613344565b91506135c18286613344565b91506135cd8285613344565b91506135d882613410565b91506135e3826134a8565b91506135ef8284613296565b91506135fa826134f4565b915061360582613540565b91508190509998505050505050505050565b7f7b00000000000000000000000000000000000000000000000000000000000000600082015250565b600061364d6001836131cd565b915061365882613617565b600182019050919050565b7f226e616d65223a2022427562626c657320230000000000000000000000000000600082015250565b60006136996012836131cd565b91506136a482613663565b601282019050919050565b7f222c000000000000000000000000000000000000000000000000000000000000600082015250565b60006136e56002836131cd565b91506136f0826136af565b600282019050919050565b7f226465736372697074696f6e223a2022427562626c65733a20416e20616e696d60008201527f61746564206f6e20636861696e204e4654222c00000000000000000000000000602082015250565b60006137576033836131cd565b9150613762826136fb565b603382019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b62617360008201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b60006137c96024836131cd565b91506137d48261376d565b602482019050919050565b7f2200000000000000000000000000000000000000000000000000000000000000600082015250565b60006138156001836131cd565b9150613820826137df565b600182019050919050565b7f7d00000000000000000000000000000000000000000000000000000000000000600082015250565b60006138616001836131cd565b915061386c8261382b565b600182019050919050565b600061388282613640565b915061388d8261368c565b91506138998285613296565b91506138a4826136d8565b91506138af8261374a565b91506138ba826137bc565b91506138c68284613296565b91506138d182613808565b91506138dc82613854565b91508190509392505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b600061391e601d836131cd565b9150613929826138e8565b601d82019050919050565b600061393f82613911565b915061394b8284613296565b915081905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006139b26026836125e2565b91506139bd82613956565b604082019050919050565b600060208201905081810360008301526139e1816139a5565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613a446025836125e2565b9150613a4f826139e8565b604082019050919050565b60006020820190508181036000830152613a7381613a37565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613ad66024836125e2565b9150613ae182613a7a565b604082019050919050565b60006020820190508181036000830152613b0581613ac9565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613b426020836125e2565b9150613b4d82613b0c565b602082019050919050565b60006020820190508181036000830152613b7181613b35565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613bae6019836125e2565b9150613bb982613b78565b602082019050919050565b60006020820190508181036000830152613bdd81613ba1565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613c406032836125e2565b9150613c4b82613be4565b604082019050919050565b60006020820190508181036000830152613c6f81613c33565b9050919050565b6000613c8182612689565b9150613c8c83612689565b9250828203905081811115613ca457613ca3612ef4565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613ce482612689565b9150613cef83612689565b925082613cff57613cfe613caa565b5b828206905092915050565b6000819050919050565b6000613d1f82613d0a565b9150613d2a83613d0a565b925082613d3a57613d39613caa565b5b828207905092915050565b6000613d5082613d0a565b9150613d5b83613d0a565b925082820190508281121560008312168382126000841215161715613d8357613d82612ef4565b5b92915050565b600060ff82169050919050565b6000613da182613d89565b9150613dac83613d89565b9250828201905060ff811115613dc557613dc4612ef4565b5b92915050565b7f3c636972636c65207374796c653d2266696c6c3a000000000000000000000000600082015250565b6000613e016014836131cd565b9150613e0c82613dcb565b601482019050919050565b7f222063783d220000000000000000000000000000000000000000000000000000600082015250565b6000613e4d6006836131cd565b9150613e5882613e17565b600682019050919050565b7f222063793d22302220723d2230223e0000000000000000000000000000000000600082015250565b6000613e99600f836131cd565b9150613ea482613e63565b600f82019050919050565b7f3c616e696d617465206174747269627574654e616d653d226379222066726f6d60008201527f3d223533302220746f3d222d343022206475723d220000000000000000000000602082015250565b6000613f0b6035836131cd565b9150613f1682613eaf565b603582019050919050565b7f2e00000000000000000000000000000000000000000000000000000000000000600082015250565b6000613f576001836131cd565b9150613f6282613f21565b600182019050919050565b7f2220726570656174436f756e743d22696e646566696e697465222f3e00000000600082015250565b6000613fa3601c836131cd565b9150613fae82613f6d565b601c82019050919050565b7f3c616e696d617465206174747269627574654e616d653d2272222066726f6d3d60008201527f22322220746f3d22000000000000000000000000000000000000000000000000602082015250565b60006140156028836131cd565b915061402082613fb9565b602882019050919050565b7f22206475723d2200000000000000000000000000000000000000000000000000600082015250565b60006140616007836131cd565b915061406c8261402b565b600782019050919050565b7f3c2f636972636c653e0000000000000000000000000000000000000000000000600082015250565b60006140ad6009836131cd565b91506140b882614077565b600982019050919050565b60006140ce82613df4565b91506140da828a613344565b91506140e582613e40565b91506140f18289613296565b91506140fc82613e8c565b915061410782613efe565b91506141138288613296565b915061411e82613f4a565b915061412a8287613296565b915061413582613f96565b915061414082614008565b915061414c8286613296565b915061415782614054565b91506141638285613296565b915061416e82613f4a565b915061417a8284613296565b915061418582613f96565b9150614190826140a0565b915081905098975050505050505050565b60006141ac82612689565b91506141b783612689565b9250826141c7576141c6613caa565b5b828204905092915050565b600082825260208201905092915050565b60006141ee82613339565b6141f881856141d2565b93506142088185602086016125f3565b6142118161261d565b840191505092915050565b6000608082019050614231600083018761271e565b61423e602083018661271e565b61424b60408301856127b4565b818103606083015261425d81846141e3565b905095945050505050565b60008151905061427781612548565b92915050565b60006020828403121561429357614292612512565b5b60006142a184828501614268565b91505092915050565b7f7267626128000000000000000000000000000000000000000000000000000000600082015250565b60006142e06005836131cd565b91506142eb826142aa565b600582019050919050565b7f2c00000000000000000000000000000000000000000000000000000000000000600082015250565b600061432c6001836131cd565b9150614337826142f6565b600182019050919050565b7f2c302e0000000000000000000000000000000000000000000000000000000000600082015250565b60006143786003836131cd565b915061438382614342565b600382019050919050565b7f2900000000000000000000000000000000000000000000000000000000000000600082015250565b60006143c46001836131cd565b91506143cf8261438e565b600182019050919050565b60006143e5826142d3565b91506143f18287613296565b91506143fc8261431f565b91506144088286613296565b91506144138261431f565b915061441f8285613296565b915061442a8261436b565b91506144368284613296565b9150614441826143b7565b915081905095945050505050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006144856020836125e2565b91506144908261444f565b602082019050919050565b600060208201905081810360008301526144b481614478565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006144f1601c836125e2565b91506144fc826144bb565b602082019050919050565b60006020820190508181036000830152614520816144e4565b905091905056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa264697066735822122077ef5680e571896df3e0a5c03f97c297a3acf7217d04c873b96d163467649ad064736f6c63430008120033

CBOR Auxdata

These values are what Sourcify extracted from the recompiled bytecode. If these values are different in the on-chain bytecode, they will show up in Transformations section.

CBOR Auxdata id: 1

View on IPFS LogoSolidity metadata.json IPFS hash: QmWQptzXTPbyEvY1u9B2wuVWPWZcrdUrvqAELKB9kVTUiB
RawDecoded
Length: 53 bytes
0xa264697066735822122077ef5680e571896df3e0a5c03f97c297a3acf7217d04c873b96d163467649ad064736f6c63430008120033

Storage Layout

SlotOffsetBytesLabelTypeContract
0032_namestringcontracts/Bubbles.sol:Bubbles
1032_symbolstringcontracts/Bubbles.sol:Bubbles
2032_ownersmapping(uint256 ⇒ address)contracts/Bubbles.sol:Bubbles
3032_balancesmapping(address ⇒ uint256)contracts/Bubbles.sol:Bubbles
4032_tokenApprovalsmapping(uint256 ⇒ address)contracts/Bubbles.sol:Bubbles
5032_operatorApprovalsmapping(address ⇒ mapping(address ⇒ bool))contracts/Bubbles.sol:Bubbles
6020_owneraddresscontracts/Bubbles.sol:Bubbles
7032priceuint256contracts/Bubbles.sol:Bubbles
801isSaleActiveboolcontracts/Bubbles.sol:Bubbles
9032totalSupplyuint256contracts/Bubbles.sol:Bubbles
10032mintedPerWalletmapping(address ⇒ uint256)contracts/Bubbles.sol:Bubbles

Standard JSON Input

This isn't the original compiler JSON data. Generated for compatibility.

Loading...

Standard JSON Output

This isn't the original compiler JSON data. Generated for compatibility.

Loading...
0x289859f89226c094DcEdB8D4ae6eFb08Bdc93056 on Ubiq (8)