[ { "inputs": [ { "internalType": "string", "name": "name_", "type": "string" }, { "internalType": "string", "name": "symbol_", "type": "string" }, { "internalType": "bytes", "name": "arguments_", "type": "bytes" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "uint256", "name": "amount_", "type": "uint256" }, { "internalType": "uint256", "name": "cap_", "type": "uint256" } ], "name": "CapExceeded", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "allowance_", "type": "uint256" }, { "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "InvalidAllowance", "type": "error" }, { "inputs": [ { "internalType": "uint8", "name": "decimals_", "type": "uint8" } ], "name": "InvalidDecimals", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sale_", "type": "address" }, { "internalType": "uint256", "name": "saleSupply_", "type": "uint256" } ], "name": "InvalidSaleConfig", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "percentage_", "type": "uint256" } ], "name": "InvalidTransactionTax", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "vesting_", "type": "address" }, { "internalType": "uint256", "name": "vestingSupply_", "type": "uint256" } ], "name": "InvalidVestingConfig", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "supply_", "type": "uint256" }, { "internalType": "uint256", "name": "saleSupply_", "type": "uint256" }, { "internalType": "uint256", "name": "vestingSupply_", "type": "uint256" }, { "internalType": "uint256", "name": "cap_", "type": "uint256" } ], "name": "SupplyGreaterThanCap", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "CAN_BURN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CAN_MINT_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "cap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "internalContracts", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "saleAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "saleSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tax", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "vestingAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "vestingSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ]
6101606040523480156200001257600080fd5b50604051620021623803806200216283398101604081905262000035916200080d565b8251839083906200004e90600390602085019062000683565b5080516200006490600490602084019062000683565b50505060003290506000806000806000806000806000808b806020019051810190620000919190620008f3565b995099509950995099509950995099509950995060128a60ff161115620000d55760405163ca95039160e01b815260ff8b1660048201526024015b60405180910390fd5b88620000e15760001998505b8881620000ef858b6200099e565b620000fb91906200099e565b11156200013457604051636c0cb0a960e11b8152600481018990526024810184905260448101829052606481018a9052608401620000cc565b60648560ff161115620001605760405163391710a160e21b815260ff86166004820152602401620000cc565b6000831180156200017857506001600160a01b038416155b80620001965750821580156200019657506001600160a01b03841615155b15620001c85760405163683ca69160e01b81526001600160a01b038516600482015260248101849052604401620000cc565b600081118015620001e057506001600160a01b038216155b80620001fe575080158015620001fe57506001600160a01b03821615155b15620002305760405163221540cf60e01b81526001600160a01b038316600482015260248101829052604401620000cc565b60ff808b1660805260a08a9052851660c05287156200025557620002558b8962000424565b6001600160a01b03841660e081905261010084905215620002a5576001600160a01b0384166000908152600660205260409020805460ff191660011790556200029f848462000424565b620002d8565b8215620002d85760405163683ca69160e01b81526001600160a01b038516600482015260248101849052604401620000cc565b6001600160a01b0382166101208190526101408290521562000329576001600160a01b0382166000908152600660205260409020805460ff1916600117905562000323828262000424565b6200035c565b80156200035c5760405163221540cf60e01b81526001600160a01b038316600482015260248101829052604401620000cc565b6200036960008c62000499565b62000385600080516020620021228339815191526000620004a9565b620003a1600080516020620021428339815191526000620004a9565b8615620003c357620003c3600080516020620021228339815191528c62000499565b8515620003e557620003e5600080516020620021428339815191528c62000499565b6001600160a01b03841615620004105762000410600080516020620021428339815191528562000499565b505050505050505050505050505062000a02565b6000816200043c620004f460201b6200060e1760201c565b6200044891906200099e565b905060a0518111156200047d5760a05160405163f480e28560e01b8152620000cc918391600401918252602082015260400190565b620004948383620004fa60201b620009bd1760201c565b505050565b620004a58282620005df565b5050565b600082815260056020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60025490565b6001600160a01b038216620005525760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620000cc565b80600260008282546200056691906200099e565b90915550506001600160a01b03821660009081526020819052604081208054839290620005959084906200099e565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b60008281526005602090815260408083206001600160a01b038516845290915290205460ff16620004a55760008281526005602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200063f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b8280546200069190620009c5565b90600052602060002090601f016020900481019282620006b5576000855562000700565b82601f10620006d057805160ff191683800117855562000700565b8280016001018555821562000700579182015b8281111562000700578251825591602001919060010190620006e3565b506200070e92915062000712565b5090565b5b808211156200070e576000815560010162000713565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156200075c576200075c62000729565b604051601f8501601f19908116603f0116810190828211818310171562000787576200078762000729565b81604052809350858152868686011115620007a157600080fd5b600092505b85831015620007c6578285015160208483010152602083019250620007a6565b85831115620007d9576000602087830101525b5050509392505050565b600082601f830112620007f557600080fd5b62000806838351602085016200073f565b9392505050565b6000806000606084860312156200082357600080fd5b83516001600160401b03808211156200083b57600080fd5b6200084987838801620007e3565b945060208601519150808211156200086057600080fd5b6200086e87838801620007e3565b935060408601519150808211156200088557600080fd5b508401601f810186136200089857600080fd5b620008a9868251602084016200073f565b9150509250925092565b805160ff81168114620008c557600080fd5b919050565b80518015158114620008c557600080fd5b80516001600160a01b0381168114620008c557600080fd5b6000806000806000806000806000806101408b8d0312156200091457600080fd5b6200091f8b620008b3565b995060208b0151985060408b015197506200093d60608c01620008ca565b96506200094d60808c01620008ca565b95506200095d60a08c01620008b3565b94506200096d60c08c01620008db565b935060e08b01519250620009856101008c01620008db565b91506101208b015190509295989b9194979a5092959850565b60008219821115620009c057634e487b7160e01b600052601160045260246000fd5b500190565b600181811c90821680620009da57607f821691505b60208210811415620009fc57634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e0516101005161012051610140516116a262000a8060003960006102b701526000610482015260006104590152600061050d01526000818161040701528181610619015281816109150152610bcd0152600081816102dd01528181610f770152610fb30152600061028301526116a26000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806350a5250311610104578063a217fddf116100a2578063c77c738711610071578063c77c73871461047d578063d547741f146104bc578063dd62ed3e146104cf578063fffe088d1461050857600080fd5b8063a217fddf14610429578063a457c2d714610431578063a9059cbb14610444578063a96af0f41461045757600080fd5b806391d14854116100de57806391d14854146103c057806395d89b41146103d357806396daa968146103db57806399c8d5561461040257600080fd5b806350a525031461034d5780636a5a77ee1461037457806370a082311461039757600080fd5b8063313ce5671161017157806336568abe1161014b57806336568abe14610301578063395093511461031457806340c10f191461032757806342966c681461033a57600080fd5b8063313ce56714610281578063332e5bad146102b5578063355274ea146102db57600080fd5b806318160ddd116101ad57806318160ddd1461022457806323b872dd14610236578063248a9ca3146102495780632f2ff15d1461026c57600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063095ea7b314610211575b600080fd5b6101e76101e236600461135e565b61052f565b60405190151581526020015b60405180910390f35b610204610566565b6040516101f391906113b4565b6101e761021f366004611403565b6105f8565b6002545b6040519081526020016101f3565b6101e761024436600461142d565b610614565b610228610257366004611469565b60009081526005602052604090206001015490565b61027f61027a366004611482565b6106ee565b005b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff90911681526020016101f3565b7f0000000000000000000000000000000000000000000000000000000000000000610228565b7f0000000000000000000000000000000000000000000000000000000000000000610228565b61027f61030f366004611482565b610719565b6101e7610322366004611403565b610797565b61027f610335366004611403565b6107d3565b61027f610348366004611469565b610808565b6102287ffaff01ca95586d20085dce0eb9c384cf58df7a188cfe76211db71886c8a2c9cf81565b6101e76103823660046114ae565b60066020526000908152604090205460ff1681565b6102286103a53660046114ae565b6001600160a01b031660009081526020819052604090205490565b6101e76103ce366004611482565b61083d565b610204610868565b6102287f21d33b64d960084e4ecc472243d172cd20c1b4be33451d9ecb56e1b27cc707ac81565b6102a37f000000000000000000000000000000000000000000000000000000000000000081565b610228600081565b6101e761043f366004611403565b610877565b6101e7610452366004611403565b610910565b7f0000000000000000000000000000000000000000000000000000000000000000610228565b6104a47f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101f3565b61027f6104ca366004611482565b610997565b6102286104dd3660046114c9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6104a47f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b03198216637965db0b60e01b148061056057506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060038054610575906114f3565b80601f01602080910402602001604051908101604052809291908181526020018280546105a1906114f3565b80156105ee5780601f106105c3576101008083540402835291602001916105ee565b820191906000526020600020905b8154815290600101906020018083116105d157829003601f168201915b5050505050905090565b6000610605338484610a9c565b50600192915050565b60025490565b6000807f000000000000000000000000000000000000000000000000000000000000000060ff1611801561065857503360009081526006602052604090205460ff16155b156106d95760008061066984610bc0565b91509150600061067a876104dd3390565b9050848110156106ac576040516358c2849760e11b815260048101829052602481018690526044015b60405180910390fd5b6106ba87335b858403610a9c565b6106c48784610c17565b6106cf878784610d65565b93505050506106e7565b6106e4848484610d65565b90505b9392505050565b60008281526005602052604090206001015461070a8133610e0c565b6107148383610e70565b505050565b6001600160a01b03811633146107895760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016106a3565b6107938282610ef6565b5050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916106059185906107ce908690611544565b610a9c565b7ffaff01ca95586d20085dce0eb9c384cf58df7a188cfe76211db71886c8a2c9cf6107fe8133610e0c565b6107148383610f5d565b7f21d33b64d960084e4ecc472243d172cd20c1b4be33451d9ecb56e1b27cc707ac6108338133610e0c565b6107933383610c17565b60009182526005602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060048054610575906114f3565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156108f95760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106a3565b6109063385858403610a9c565b5060019392505050565b6000807f000000000000000000000000000000000000000000000000000000000000000060ff1611801561095457503360009081526006602052604090205460ff16155b156109865760008061096584610bc0565b915091506109733383610c17565b61097d8582610fe9565b92505050610560565b6109908383610fe9565b9050610560565b6000828152600560205260409020600101546109b38133610e0c565b6107148383610ef6565b6001600160a01b038216610a135760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016106a3565b8060026000828254610a259190611544565b90915550506001600160a01b03821660009081526020819052604081208054839290610a52908490611544565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b038316610afe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106a3565b6001600160a01b038216610b5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106a3565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600080806064610bf360ff7f0000000000000000000000000000000000000000000000000000000000000000168661155c565b610bfd919061157b565b90506000610c0b828661159d565b91959194509092505050565b6001600160a01b038216610c775760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016106a3565b6001600160a01b03821660009081526020819052604090205481811015610ceb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016106a3565b6001600160a01b0383166000908152602081905260408120838303905560028054849290610d1a90849061159d565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b6000610d72848484610ff2565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610df75760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016106a3565b610e0185336106b2565b506001949350505050565b610e16828261083d565b61079357610e2e816001600160a01b031660146111c2565b610e398360206111c2565b604051602001610e4a9291906115b4565b60408051601f198184030181529082905262461bcd60e51b82526106a3916004016113b4565b610e7a828261083d565b6107935760008281526005602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eb23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f00828261083d565b156107935760008281526005602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600081610f6960025490565b610f739190611544565b90507f0000000000000000000000000000000000000000000000000000000000000000811115610fdf5760405163f480e28560e01b8152600481018290527f000000000000000000000000000000000000000000000000000000000000000060248201526044016106a3565b61071483836109bd565b60006106053384845b6001600160a01b0383166110565760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106a3565b6001600160a01b0382166110b85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106a3565b6001600160a01b038316600090815260208190526040902054818110156111305760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016106a3565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611167908490611544565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111b391815260200190565b60405180910390a35b50505050565b606060006111d183600261155c565b6111dc906002611544565b67ffffffffffffffff8111156111f4576111f4611629565b6040519080825280601f01601f19166020018201604052801561121e576020820181803683370190505b509050600360fc1b816000815181106112395761123961163f565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106112685761126861163f565b60200101906001600160f81b031916908160001a905350600061128c84600261155c565b611297906001611544565b90505b600181111561130f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112cb576112cb61163f565b1a60f81b8282815181106112e1576112e161163f565b60200101906001600160f81b031916908160001a90535060049490941c9361130881611655565b905061129a565b5083156106e75760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016106a3565b60006020828403121561137057600080fd5b81356001600160e01b0319811681146106e757600080fd5b60005b838110156113a357818101518382015260200161138b565b838111156111bc5750506000910152565b60208152600082518060208401526113d3816040850160208701611388565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146113fe57600080fd5b919050565b6000806040838503121561141657600080fd5b61141f836113e7565b946020939093013593505050565b60008060006060848603121561144257600080fd5b61144b846113e7565b9250611459602085016113e7565b9150604084013590509250925092565b60006020828403121561147b57600080fd5b5035919050565b6000806040838503121561149557600080fd5b823591506114a5602084016113e7565b90509250929050565b6000602082840312156114c057600080fd5b6106e7826113e7565b600080604083850312156114dc57600080fd5b6114e5836113e7565b91506114a5602084016113e7565b600181811c9082168061150757607f821691505b6020821081141561152857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082198211156115575761155761152e565b500190565b60008160001904831182151516156115765761157661152e565b500290565b60008261159857634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156115af576115af61152e565b500390565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516115ec816017850160208801611388565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161161d816028840160208801611388565b01602801949350505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000816116645761166461152e565b50600019019056fea26469706673582212206803b80aeb6d8ef9988f8d3c77752a43dcdba37e8ca57b5e3f4299ac5882e11864736f6c63430008090033faff01ca95586d20085dce0eb9c384cf58df7a188cfe76211db71886c8a2c9cf21d33b64d960084e4ecc472243d172cd20c1b4be33451d9ecb56e1b27cc707ac000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000005555341474900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553414700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000