[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [], "name": "ERC20MaxWallet", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "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": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "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": "MAX_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "value", "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": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_maxWallet", "type": "uint256" } ], "name": "removeLiitations", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "setExemptFromMaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "whitelist", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ]
60806040526103e86200001c670de0b6b3a7640000600562000329565b62000028919062000349565b60065534801562000037575f80fd5b503360405180604001604052806007815260200166546865204f6e6560c81b815250604051806040016040528060018152602001603160f81b815250816003908162000084919062000409565b50600462000093828262000409565b5050506001600160a01b038116620000c557604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b620000d081620000f6565b50620000e533670de0b6b3a764000062000147565b620000f03362000183565b620004e7565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b038216620001725760405163ec442f0560e01b81525f6004820152602401620000bc565b6200017f5f8383620001b5565b5050565b6200018d620002e4565b6001600160a01b03165f908152600760205260409020805460ff19811660ff90911615179055565b6001600160a01b038316620001e3578060025f828254620001d79190620004d1565b90915550620002559050565b6001600160a01b0383165f9081526020819052604090205481811015620002375760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401620000bc565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b038216620002735760028054829003905562000291565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002d791815260200190565b60405180910390a3505050565b6005546001600160a01b03163314620003135760405163118cdaa760e01b8152336004820152602401620000bc565b565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141762000343576200034362000315565b92915050565b5f826200036457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200039257607f821691505b602082108103620003b157634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111562000404575f81815260208120601f850160051c81016020861015620003df5750805b601f850160051c820191505b818110156200040057828155600101620003eb565b5050505b505050565b81516001600160401b0381111562000425576200042562000369565b6200043d816200043684546200037d565b84620003b7565b602080601f83116001811462000473575f84156200045b5750858301515b5f19600386901b1c1916600185901b17855562000400565b5f85815260208120601f198616915b82811015620004a35788860151825594840194600190910190840162000482565b5085821015620004c157878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b8082018082111562000343576200034362000315565b610a9280620004f55f395ff3fe608060405234801561000f575f80fd5b5060043610610106575f3560e01c8063715018a61161009e5780639b19251a1161006e5780639b19251a14610209578063a9059cbb1461022b578063dd62ed3e1461023e578063f2fde38b14610276578063f8b45b0514610289575f80fd5b8063715018a6146101cb5780638114bdd7146101d35780638da5cb5b146101e657806395d89b4114610201575f80fd5b806323b872dd116100d957806323b872dd14610172578063313ce5671461018557806332cb6b0c1461019457806370a08231146101a3575f80fd5b806306fdde031461010a578063095ea7b31461012857806318160ddd1461014b5780631b69b97a1461015d575b5f80fd5b610112610292565b60405161011f91906108b7565b60405180910390f35b61013b61013636600461091d565b610322565b604051901515815260200161011f565b6002545b60405190815260200161011f565b61017061016b366004610945565b61033b565b005b61013b61018036600461095c565b6103a7565b6040516012815260200161011f565b61014f670de0b6b3a764000081565b61014f6101b1366004610995565b6001600160a01b03165f9081526020819052604090205490565b61017061044d565b6101706101e1366004610995565b610460565b6005546040516001600160a01b03909116815260200161011f565b610112610490565b61013b610217366004610995565b60076020525f908152604090205460ff1681565b61013b61023936600461091d565b61049f565b61014f61024c3660046109b5565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b610170610284366004610995565b61051a565b61014f60065481565b6060600380546102a1906109e6565b80601f01602080910402602001604051908101604052809291908181526020018280546102cd906109e6565b80156103185780601f106102ef57610100808354040283529160200191610318565b820191905f5260205f20905b8154815290600101906020018083116102fb57829003601f168201915b5050505050905090565b5f3361032f818585610557565b60019150505b92915050565b610343610569565b6103576103e8670de0b6b3a7640000610a1e565b8110156103a25760405162461bcd60e51b81526020600482015260146024820152731b585e0b5dd85b1b195d0b5d1bdbcb5cdb585b1b60621b60448201526064015b60405180910390fd5b600655565b6001600160a01b0382165f90815260076020526040812054339060ff161580156103d957506001600160a01b0384163b155b801561040e575060065483610402866001600160a01b03165f9081526020819052604090205490565b61040c9190610a3d565b115b1561042c5760405163018d78a160e01b815260040160405180910390fd5b610437858285610596565b610442858585610611565b506001949350505050565b610455610569565b61045e5f61066e565b565b610468610569565b6001600160a01b03165f908152600760205260409020805460ff19811660ff90911615179055565b6060600480546102a1906109e6565b6001600160a01b0382165f9081526020818152604080832054600790925282205433919060ff161580156104db57506001600160a01b0385163b155b80156104f157506006546104ef8583610a3d565b115b1561050f5760405163018d78a160e01b815260040160405180910390fd5b610442828686610611565b610522610569565b6001600160a01b03811661054b57604051631e4fbdf760e01b81525f6004820152602401610399565b6105548161066e565b50565b61056483838360016106bf565b505050565b6005546001600160a01b0316331461045e5760405163118cdaa760e01b8152336004820152602401610399565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f19811461060b57818110156105fd57604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610399565b61060b84848484035f6106bf565b50505050565b6001600160a01b03831661063a57604051634b637e8f60e11b81525f6004820152602401610399565b6001600160a01b0382166106635760405163ec442f0560e01b81525f6004820152602401610399565b610564838383610791565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0384166106e85760405163e602df0560e01b81525f6004820152602401610399565b6001600160a01b03831661071157604051634a1406b160e11b81525f6004820152602401610399565b6001600160a01b038085165f908152600160209081526040808320938716835292905220829055801561060b57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161078391815260200190565b60405180910390a350505050565b6001600160a01b0383166107bb578060025f8282546107b09190610a3d565b9091555061082b9050565b6001600160a01b0383165f908152602081905260409020548181101561080d5760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610399565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661084757600280548290039055610865565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516108aa91815260200190565b60405180910390a3505050565b5f6020808352835180828501525f5b818110156108e2578581018301518582016040015282016108c6565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610918575f80fd5b919050565b5f806040838503121561092e575f80fd5b61093783610902565b946020939093013593505050565b5f60208284031215610955575f80fd5b5035919050565b5f805f6060848603121561096e575f80fd5b61097784610902565b925061098560208501610902565b9150604084013590509250925092565b5f602082840312156109a5575f80fd5b6109ae82610902565b9392505050565b5f80604083850312156109c6575f80fd5b6109cf83610902565b91506109dd60208401610902565b90509250929050565b600181811c908216806109fa57607f821691505b602082108103610a1857634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82610a3857634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561033557634e487b7160e01b5f52601160045260245ffdfea2646970667358221220765c4116400e7be65cbc328e43c314a33b21bfbded7ee1f292122ae5b577587664736f6c63430008140033