[ { "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": [ { "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": false, "internalType": "address", "name": "poolAddress", "type": "address" } ], "name": "DeployedPool", "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": "Factory", "outputs": [ { "internalType": "contract IUniswapV2Factory", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "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": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "launch", "outputs": [], "stateMutability": "nonpayable", "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": [], "name": "renounceOwnership", "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" }, { "stateMutability": "payable", "type": "receive" } ]
60c0604052600a608090815269141c9a5b59519b1bd85d60b21b60a05260009061002990826104da565b506040805180820190915260058152645052494d4560d81b602082015260019061005390826104da565b50600780546001600160a01b031916735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f179055600880546001600160a81b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790553480156100ac57600080fd5b50336040518060400160405280600a815260200169141c9a5b59519b1bd85d60b21b815250604051806040016040528060058152602001645052494d4560d81b815250601262989680836000908161010491906104da565b50600161011184826104da565b506101303361012184600a610697565b61012b90846106ad565b6101b7565b5050506001600160a01b038216905061016457604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b61016d816101f1565b507ffe92c5fd16214fb4ec5058b0809bac9cc9d23029cf6367db82ae2eec1ba1cfeb610197610243565b6040516001600160a01b03909116815260200160405180910390a1610719565b6001600160a01b0382166101e15760405163ec442f0560e01b81526000600482015260240161015b565b6101ed600083836102d8565b5050565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6007546040516364e329cb60e11b815230600482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26024820181905260009290916001600160a01b039091169063c9c65396906044016020604051808303816000875af11580156102ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d291906106c4565b91505090565b6001600160a01b03831661032c576001600160a01b038216600090815260056020526040812080549161030a836106ed565b919050555080600260008282546103219190610706565b909155506103ae9050565b6001600160a01b038316600090815260036020908152604080832054600590925282205401908282101561038c5760405163391434e360e21b81526001600160a01b0386166004820152602481018390526044810184905260640161015b565b50506001600160a01b0383166000908152600360205260409020805482900390555b6001600160a01b0382166103ca576002805482900390556103e9565b6001600160a01b03821660009081526003602052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161042e91815260200190565b60405180910390a3505050565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061046557607f821691505b60208210810361048557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156104d557806000526020600020601f840160051c810160208510156104b25750805b601f840160051c820191505b818110156104d257600081556001016104be565b50505b505050565b81516001600160401b038111156104f3576104f361043b565b610507816105018454610451565b8461048b565b6020601f82116001811461053b57600083156105235750848201515b600019600385901b1c1916600184901b1784556104d2565b600084815260208120601f198516915b8281101561056b578785015182556020948501946001909201910161054b565b50848210156105895786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b6001815b60018411156105e9578085048111156105cd576105cd610598565b60018416156105db57908102905b60019390931c9280026105b2565b935093915050565b60008261060057506001610691565b8161060d57506000610691565b8160018114610623576002811461062d57610649565b6001915050610691565b60ff84111561063e5761063e610598565b50506001821b610691565b5060208310610133831016604e8410600b841016171561066c575081810a610691565b61067960001984846105ae565b806000190482111561068d5761068d610598565b0290505b92915050565b60006106a660ff8416836105f1565b9392505050565b808202811582820484141761069157610691610598565b6000602082840312156106d657600080fd5b81516001600160a01b03811681146106a657600080fd5b6000600182016106ff576106ff610598565b5060010190565b8082018082111561069157610691610598565b610cbb806107286000396000f3fe60806040526004361061010d5760003560e01c806379cc679011610095578063a9059cbb11610064578063a9059cbb146102e0578063c83dd23114610300578063dd62ed3e14610320578063f2fde38b14610358578063f6d7eade1461037857600080fd5b806379cc6790146102585780638a8c523c146102785780638da5cb5b1461029957806395d89b41146102cb57600080fd5b806323b872dd116100dc57806323b872dd146101af578063313ce567146101cf57806342966c68146101f657806370a0823114610216578063715018a61461024357600080fd5b806301339c211461011957806306fdde0314610130578063095ea7b31461015b57806318160ddd1461018b57600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012e610398565b005b34801561013c57600080fd5b506101456104bb565b6040516101529190610a9c565b60405180910390f35b34801561016757600080fd5b5061017b610176366004610b06565b610549565b6040519015158152602001610152565b34801561019757600080fd5b506101a160025481565b604051908152602001610152565b3480156101bb57600080fd5b5061017b6101ca366004610b30565b610563565b3480156101db57600080fd5b506101e4601281565b60405160ff9091168152602001610152565b34801561020257600080fd5b5061012e610211366004610b6d565b610587565b34801561022257600080fd5b506101a1610231366004610b86565b60036020526000908152604090205481565b34801561024f57600080fd5b5061012e610594565b34801561026457600080fd5b5061012e610273366004610b06565b6105a8565b34801561028457600080fd5b5060085461017b90600160a01b900460ff1681565b3480156102a557600080fd5b506006546001600160a01b03165b6040516001600160a01b039091168152602001610152565b3480156102d757600080fd5b506101456105c1565b3480156102ec57600080fd5b5061017b6102fb366004610b06565b6105ce565b34801561030c57600080fd5b506007546102b3906001600160a01b031681565b34801561032c57600080fd5b506101a161033b366004610ba8565b600460209081526000928352604080842090915290825290205481565b34801561036457600080fd5b5061012e610373366004610b86565b6105dc565b34801561038457600080fd5b506008546102b3906001600160a01b031681565b6103a061061c565b600854600160a01b900460ff16156103b757600080fd5b670de0b6b3a76400004710156103cc57600080fd5b6008546103e69030906001600160a01b0316600019610649565b6008805460ff60a01b198116600160a01b179091556002546001600160a01b039091169063f305d71990479030906000806104296006546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610491573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906104b69190610bdb565b505050565b600080546104c890610c09565b80601f01602080910402602001604051908101604052809291908181526020018280546104f490610c09565b80156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b505050505081565b600033610557818585610649565b60019150505b92915050565b600033610571858285610656565b61057c8585856106d5565b506001949350505050565b61059133826107ea565b50565b61059c61061c565b6105a66000610820565b565b6105b3823383610656565b6105bd82826107ea565b5050565b600180546104c890610c09565b6000336105578185856106d5565b6105e461061c565b6001600160a01b03811661061357604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b61059181610820565b6006546001600160a01b031633146105a65760405163118cdaa760e01b815233600482015260240161060a565b6104b68383836001610872565b6001600160a01b038084166000908152600460209081526040808320938616835292905220546000198110156106cf57818110156106c057604051637dc7a0d960e11b81526001600160a01b0384166004820152602481018290526044810183905260640161060a565b6106cf84848484036000610872565b50505050565b6001600160a01b0383166106ff57604051634b637e8f60e11b81526000600482015260240161060a565b6001600160a01b0382166107295760405163ec442f0560e01b81526000600482015260240161060a565b6001600160a01b0383166000908152600360205260409020548181101561077c5760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640161060a565b6001600160a01b0380851660008181526003602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107dc9086815260200190565b60405180910390a350505050565b6001600160a01b03821661081457604051634b637e8f60e11b81526000600482015260240161060a565b6105bd82600083610939565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03841661089c5760405163e602df0560e01b81526000600482015260240161060a565b6001600160a01b0383166108c657604051634a1406b160e11b81526000600482015260240161060a565b6001600160a01b03808516600090815260046020908152604080832093871683529290522082905580156106cf57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516107dc91815260200190565b6001600160a01b03831661098d576001600160a01b038216600090815260056020526040812080549161096b83610c59565b919050555080600260008282546109829190610c72565b90915550610a0f9050565b6001600160a01b03831660009081526003602090815260408083205460059092528220540190828210156109ed5760405163391434e360e21b81526001600160a01b0386166004820152602481018390526044810184905260640161060a565b50506001600160a01b0383166000908152600360205260409020805482900390555b6001600160a01b038216610a2b57600280548290039055610a4a565b6001600160a01b03821660009081526003602052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610a8f91815260200190565b60405180910390a3505050565b602081526000825180602084015260005b81811015610aca5760208186018101516040868401015201610aad565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610b0157600080fd5b919050565b60008060408385031215610b1957600080fd5b610b2283610aea565b946020939093013593505050565b600080600060608486031215610b4557600080fd5b610b4e84610aea565b9250610b5c60208501610aea565b929592945050506040919091013590565b600060208284031215610b7f57600080fd5b5035919050565b600060208284031215610b9857600080fd5b610ba182610aea565b9392505050565b60008060408385031215610bbb57600080fd5b610bc483610aea565b9150610bd260208401610aea565b90509250929050565b600080600060608486031215610bf057600080fd5b5050815160208301516040909301519094929350919050565b600181811c90821680610c1d57607f821691505b602082108103610c3d57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600060018201610c6b57610c6b610c43565b5060010190565b8082018082111561055d5761055d610c4356fea264697066735822122060b4b16203d64c52cce4abab9bda46dd6f90dccd8c64917f536526e6e33d842764736f6c634300081c0033