[ { "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": [], "name": "EnabledUniswap", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "wallet", "type": "address" } ], "name": "ExcludeFromFee", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "wallet", "type": "address" } ], "name": "IncludeInFee", "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": false, "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "SwapAndLiquifyEnabledUpdated", "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" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "prevWallet", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": false, "internalType": "string", "name": "operation", "type": "string" } ], "name": "UpdateOperationWallet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "buyTax", "type": "uint8" }, { "indexed": false, "internalType": "uint8", "name": "sellTax", "type": "uint8" } ], "name": "UpdateTax", "type": "event" }, { "inputs": [], "name": "_bridgeContract", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pool", "type": "address" } ], "name": "addPoolAddress", "outputs": [], "stateMutability": "nonpayable", "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": [], "name": "autoSplitShares", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": [ { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "burnBridge", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "coinStakingAddress", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "pure", "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": [], "name": "developmentAddress", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "distributeTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "excludeFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "excludedFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint24", "name": "", "type": "uint24" } ], "name": "feeToPoolAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTax", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" }, { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "includeInFee", "outputs": [], "stateMutability": "nonpayable", "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": [], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isPoolAddress", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lpVaultAddress", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenAmountToSwap", "type": "uint256" } ], "name": "manualSwapAndLiquify", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "marketingAddress", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "minimumETHToTransfer", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "minimumTokensBeforeSwap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "mintBridge", "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": [ { "internalType": "address", "name": "pool", "type": "address" } ], "name": "removePoolAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_enabled", "type": "bool" } ], "name": "setAutoSplitSharesEnables", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "_coinStakingAddress", "type": "address" } ], "name": "setCoinStakingAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "_developmentAddress", "type": "address" } ], "name": "setDevelopmentAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "_vaultAddress", "type": "address" } ], "name": "setLpVaultAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "_marketingAddress", "type": "address" } ], "name": "setMarketingAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_minimumETHToTransfer", "type": "uint256" } ], "name": "setMinimumETHToTransfer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_minimumTokensBeforeSwap", "type": "uint256" } ], "name": "setMinimumTokensBeforeSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8", "name": "coinShareLP", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareMarketing", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareDevelopment", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareStaking", "type": "uint8" }, { "internalType": "uint8", "name": "tokenShareReserve", "type": "uint8" }, { "internalType": "uint8", "name": "buyTax", "type": "uint8" }, { "internalType": "uint8", "name": "sellTax", "type": "uint8" } ], "name": "setShares", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_enabled", "type": "bool" } ], "name": "setSwapAndLiquifyEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_newValue", "type": "bool" } ], "name": "setTaxesEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_tokenReserveAddress", "type": "address" } ], "name": "setTokenReserveAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newRouter", "type": "address" } ], "name": "setupExchange", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapAndLiquifyEnabled", "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": "taxesEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokenConfigs", "outputs": [ { "internalType": "uint8", "name": "coinShareLP", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareMarketing", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareDevelopment", "type": "uint8" }, { "internalType": "uint8", "name": "coinShareStaking", "type": "uint8" }, { "internalType": "uint8", "name": "tokenShareReserve", "type": "uint8" }, { "internalType": "uint8", "name": "buyTax", "type": "uint8" }, { "internalType": "uint8", "name": "sellTax", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokenReserveAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalTaxCollected", "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": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_newBridgeAddress", "type": "address" } ], "name": "updateBridgeAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040525f805460ff60a01b19169055348015601a575f80fd5b50613143806100285f395ff3fe608060405260043610610344575f3560e01c806370a08231116101bd578063aaca7f69116100f2578063d2d7ad8311610092578063e8ca92121161006d578063e8ca921214610a5e578063ea2f0b3714610a7d578063f2fde38b14610a9c578063f5a3ae7f14610abb575f80fd5b8063d2d7ad83146109f1578063d8454a8214610a06578063dd62ed3e14610a1a575f80fd5b8063b75c2cb5116100cd578063b75c2cb51461097e578063bc8d69fd14610993578063bff51ef8146109b2578063c49b9a80146109d2575f80fd5b8063aaca7f6914610893578063aee50b1e146108c7578063b4e0dfbc146108e6575f80fd5b806385ecafd71161015d57806395d89b411161013857806395d89b4114610822578063a457c2d714610836578063a5ece94114610855578063a9059cbb14610874575f80fd5b806385ecafd7146107b95780638da5cb5b146107e7578063906e9dd014610803575f80fd5b8063719fecf911610198578063719fecf9146107485780638129fc1c1461076757806381bcb9d01461077b578063838c00391461079a575f80fd5b806370a08231146106e057806370d768cc14610714578063715018a614610734575f80fd5b806339509351116102935780634c6d7aac1161023357806359512ab01161020e57806359512ab014610664578063638b1b1414610683578063645c8a4b146106a257806365473fd2146106c1575f80fd5b80634c6d7aac146105f0578063514d327b1461060f57806354b762a61461062e575f80fd5b8063434998441161026e5780634349984414610573578063437823ec146105925780634a74bb02146105b15780634a917a2f146105d1575f80fd5b806339509351146105165780633a591fc01461053557806342966c6814610554575f80fd5b80631bf0d240116102fe57806328b5ce12116102d957806328b5ce121461049e57806329b1c15c146104bd57806330823c82146104dc578063313ce567146104fb575f80fd5b80631bf0d2401461043257806323b872dd146104515780632842d75714610470575f80fd5b806306fdde031461034f578063095ea7b3146103795780630f3d9c9f146103a85780631694505e146103be57806316c66c1e146103f557806318160ddd14610414575f80fd5b3661034b57005b5f80fd5b34801561035a575f80fd5b50610363610ada565b6040516103709190612bb0565b60405180910390f35b348015610384575f80fd5b50610398610393366004612bf9565b610b6a565b6040519015158152602001610370565b3480156103b3575f80fd5b506103bc610b80565b005b3480156103c9575f80fd5b506012546103dd906001600160a01b031681565b6040516001600160a01b039091168152602001610370565b348015610400575f80fd5b506103bc61040f366004612c23565b610bbc565b34801561041f575f80fd5b506008545b604051908152602001610370565b34801561043d575f80fd5b506103bc61044c366004612c3a565b610c75565b34801561045c575f80fd5b5061039861046b366004612c55565b610ca7565b34801561047b575f80fd5b5061039861048a366004612c3a565b60056020525f908152604090205460ff1681565b3480156104a9575f80fd5b506103bc6104b8366004612ca8565b610d0e565b3480156104c8575f80fd5b506103bc6104d7366004612c3a565b610e90565b3480156104e7575f80fd5b506103bc6104f6366004612bf9565b610f3d565b348015610506575f80fd5b5060405160128152602001610370565b348015610521575f80fd5b50610398610530366004612bf9565b611024565b348015610540575f80fd5b506103bc61054f366004612d29565b611059565b34801561055f575f80fd5b506103bc61056e366004612c23565b6110a0565b34801561057e575f80fd5b506103bc61058d366004612c3a565b61114e565b34801561059d575f80fd5b506103bc6105ac366004612c3a565b61119a565b3480156105bc575f80fd5b5060105461039890600160a01b900460ff1681565b3480156105dc575f80fd5b506103bc6105eb366004612c3a565b61120e565b3480156105fb575f80fd5b506103bc61060a366004612c23565b611292565b34801561061a575f80fd5b50600f546103dd906001600160a01b031681565b348015610639575f80fd5b506011546040805160ff600160281b840481168252600160301b909304909216602083015201610370565b34801561066f575f80fd5b506103bc61067e366004612d29565b6112c0565b34801561068e575f80fd5b50600e546103dd906001600160a01b031681565b3480156106ad575f80fd5b506103bc6106bc366004612c3a565b611307565b3480156106cc575f80fd5b506010546103dd906001600160a01b031681565b3480156106eb575f80fd5b506104246106fa366004612c3a565b6001600160a01b03165f9081526001602052604090205490565b34801561071f575f80fd5b5060105461039890600160a81b900460ff1681565b34801561073f575f80fd5b506103bc611352565b348015610753575f80fd5b506103bc610762366004612c23565b611384565b348015610772575f80fd5b506103bc61142e565b348015610786575f80fd5b506013546103dd906001600160a01b031681565b3480156107a5575f80fd5b506103bc6107b4366004612c3a565b61167d565b3480156107c4575f80fd5b506103986107d3366004612c3a565b60036020525f908152604090205460ff1681565b3480156107f2575f80fd5b505f546001600160a01b03166103dd565b34801561080e575f80fd5b506103bc61081d366004612c3a565b6116c6565b34801561082d575f80fd5b50610363611771565b348015610841575f80fd5b50610398610850366004612bf9565b611780565b348015610860575f80fd5b50600d546103dd906001600160a01b031681565b34801561087f575f80fd5b5061039861088e366004612bf9565b6117cd565b34801561089e575f80fd5b506103dd6108ad366004612d48565b60046020525f90815260409020546001600160a01b031681565b3480156108d2575f80fd5b506103bc6108e1366004612c23565b6117d9565b3480156108f1575f80fd5b5060115461093b9060ff808216916101008104821691620100008204811691630100000081048216916401000000008204811691600160281b8104821691600160301b9091041687565b6040805160ff9889168152968816602088015294871694860194909452918516606085015284166080840152831660a083015290911660c082015260e001610370565b348015610989575f80fd5b50610424600b5481565b34801561099e575f80fd5b506103bc6109ad366004612c3a565b611807565b3480156109bd575f80fd5b5060105461039890600160b01b900460ff1681565b3480156109dd575f80fd5b506103bc6109ec366004612d29565b6118b0565b3480156109fc575f80fd5b50610424600a5481565b348015610a11575f80fd5b50610424611931565b348015610a25575f80fd5b50610424610a34366004612d6a565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610a69575f80fd5b50600c546103dd906001600160a01b031681565b348015610a88575f80fd5b506103bc610a97366004612c3a565b611962565b348015610aa7575f80fd5b506103bc610ab6366004612c3a565b6119d3565b348015610ac6575f80fd5b506103bc610ad5366004612c3a565b611a6a565b606060068054610ae990612da1565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1590612da1565b8015610b605780601f10610b3757610100808354040283529160200191610b60565b820191905f5260205f20905b815481529060010190602001808311610b4357829003601f168201915b5050505050905090565b5f610b76338484611b13565b5060015b92915050565b5f546001600160a01b03163314610bb25760405162461bcd60e51b8152600401610ba990612dd9565b60405180910390fd5b610bba611c37565b565b5f546001600160a01b03163314610be55760405162461bcd60e51b8152600401610ba990612dd9565b601054600160b81b900460ff16158015610c095750601054600160c01b900460ff16155b15610c7257305f9081526001602052604090205481811015610c5e5760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908185b5bdd5b9d60921b6044820152606401610ba9565b600a548210610c7057610c7082611cf9565b505b50565b5f546001600160a01b03163314610c9e5760405162461bcd60e51b8152600401610ba990612dd9565b610c7281611d68565b5f610cb384848461200b565b610d048433610cff85604051806060016040528060288152602001613081602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190612208565b611b13565b5060019392505050565b5f546001600160a01b03163314610d375760405162461bcd60e51b8152600401610ba990612dd9565b60198260ff1611158015610d4f575060198160ff1611155b610d895760405162461bcd60e51b815260206004820152600b60248201526a092dcecc2d8d2c840a8c2f60ab1b6044820152606401610ba9565b60648360ff161115610dd35760405162461bcd60e51b8152602060048201526013602482015272496e76616c696420746f6b656e20736861726560681b6044820152606401610ba9565b8385610ddf888a612e22565b610de99190612e22565b610df39190612e22565b60ff16606414610e3b5760405162461bcd60e51b8152602060048201526013602482015272496e76616c696420636f696e2073686172657360681b6044820152606401610ba9565b610e4a87878787878787612240565b6040805160ff8085168252831660208201527f0c375c34ad37f834432281bfa81db66c11d48f4791d5fe61439f0ce78187b253910160405180910390a150505050505050565b5f546001600160a01b03163314610eb95760405162461bcd60e51b8152600401610ba990612dd9565b803b63ffffffff1615610ede5760405162461bcd60e51b8152600401610ba990612e3b565b600e54604080516001600160a01b03928316815291831660208301526060828201819052600b908301526a19195d995b1bdc1b595b9d60aa1b6080830152515f805160206130c98339815191529181900360a00190a1610c72816122d5565b6013546001600160a01b03163314610f53575f80fd5b6001600160a01b038216610fa95760405162461bcd60e51b815260206004820152601a60248201527f43616e6e6f74206d696e742066726f6d206164647265737320300000000000006044820152606401610ba9565b600854610fb690826122f7565b6008556001600160a01b0382165f90815260016020526040902054610fdb90826122f7565b6001600160a01b0383165f818152600160205260408082209390935591519091905f805160206130a9833981519152906110189085815260200190565b60405180910390a35050565b335f8181526002602090815260408083206001600160a01b03871684529091528120549091610b76918590610cff90866122f7565b5f546001600160a01b031633146110825760405162461bcd60e51b8152600401610ba990612dd9565b60108054911515600160a81b0260ff60a81b19909216919091179055565b806110aa336106fa565b10156110ef5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610ba9565b335f90815260016020526040902054611108908261235c565b335f90815260016020526040902055600854611124908261235c565b6008556040518181525f9033905f805160206130a98339815191529060200160405180910390a350565b5f546001600160a01b031633146111775760405162461bcd60e51b8152600401610ba990612dd9565b6001600160a01b03165f908152600560205260409020805460ff19166001179055565b5f546001600160a01b031633146111c35760405162461bcd60e51b8152600401610ba990612dd9565b6001600160a01b0381165f81815260036020526040808220805460ff19166001179055517f58c3e0504c69d3a92726966f152a771e0f8f6ad4daca1ae9055a38aba1fd2b629190a250565b5f546001600160a01b031633146112375760405162461bcd60e51b8152600401610ba990612dd9565b601054604080516001600160a01b03928316815291831660208301526060828201819052600790830152667265736572766560c81b6080830152515f805160206130c98339815191529181900360a00190a1610c728161239d565b5f546001600160a01b031633146112bb5760405162461bcd60e51b8152600401610ba990612dd9565b600b55565b5f546001600160a01b031633146112e95760405162461bcd60e51b8152600401610ba990612dd9565b60108054911515600160b01b0260ff60b01b19909216919091179055565b5f546001600160a01b031633146113305760405162461bcd60e51b8152600401610ba990612dd9565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b0316331461137b5760405162461bcd60e51b8152600401610ba990612dd9565b610bba5f6123bf565b335f90815260016020526040902054818110156113e35760405162461bcd60e51b815260206004820152601760248201527f496e73756666696369656e742076616c75652073656e740000000000000000006044820152606401610ba9565b6008546113f0908361235c565b6008556113fd818361235c565b335f818152600160205260408082209390935591515f805160206130a9833981519152906110189086815260200190565b61143661240e565b6040805180820190915260098152684d6963726f5065747360b81b60208201526006906114639082612eca565b506040805180820190915260048152635045545360e01b602082015260079061148c9082612eca565b506b204fce5e3e2502611000000060088190556b019d971e4fe8401e74000000906114b7908261235c565b335f818152600160205260408120929092556008549091905f805160206130a9833981519152906114e8908561235c565b60405190815260200160405180910390a37338402a3316a4ab8fc742ae42c30d2ff9b6f43dc55f818152600160209081527f32423ee8e4687c495b031e6184c16e724574af8554a483ee8668befadaf1592c8490556040518481525f805160206130a9833981519152910160405180910390a3335f90815260036020526040808220805460ff1990811660019081179092553084529190922080549091169091179055681043561a8829300000600a556706f05b59d3b20000600b556010805462ffffff60a01b19166201010160a01b1790556115d8737a250d5630b4cf539739df2c5dacb4c659f2488d611d68565b6115ec6012601b80601b6008600c80612240565b6116097370875197acf27ae827dc056ace22f5893fd55ed5612473565b611626734adfaf09e978657337ba596f5d1d61d068962ec2612495565b61164373465fe58cafadea9c80d04078b72c5bb1136f28c06122d5565b611660735bfaf16cc8e39cc34ec575a1e510e4f293eafc446124b7565b610c7273e9fcb23a23ade85d424625b00c77ea99f8e64c0d61239d565b5f546001600160a01b031633146116a65760405162461bcd60e51b8152600401610ba990612dd9565b6001600160a01b03165f908152600560205260409020805460ff19169055565b5f546001600160a01b031633146116ef5760405162461bcd60e51b8152600401610ba990612dd9565b803b63ffffffff16156117145760405162461bcd60e51b8152600401610ba990612e3b565b600d54604080516001600160a01b03928316815291831660208301526060828201819052600990830152686d61726b6574696e6760b81b6080830152515f805160206130c98339815191529181900360a00190a1610c7281612495565b606060078054610ae990612da1565b5f610b763384610cff856040518060600160405280602581526020016130e960259139335f9081526002602090815260408083206001600160a01b038d1684529091529020549190612208565b5f610b7633848461200b565b5f546001600160a01b031633146118025760405162461bcd60e51b8152600401610ba990612dd9565b600a55565b5f546001600160a01b031633146118305760405162461bcd60e51b8152600401610ba990612dd9565b803b63ffffffff16156118555760405162461bcd60e51b8152600401610ba990612e3b565b600f54604080516001600160a01b03928316815291831660208301526060828201819052600790830152667374616b696e6760c81b6080830152515f805160206130c98339815191529181900360a00190a1610c72816124b7565b5f546001600160a01b031633146118d95760405162461bcd60e51b8152600401610ba990612dd9565b60108054821515600160a01b0260ff60a01b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1599061192690831515815260200190565b60405180910390a150565b5f80546001600160a01b0316331461195b5760405162461bcd60e51b8152600401610ba990612dd9565b5060095490565b5f546001600160a01b0316331461198b5760405162461bcd60e51b8152600401610ba990612dd9565b6001600160a01b0381165f81815260036020526040808220805460ff19169055517f4f6a6b6efe34ec6478021aa9fb7f6980e78ea3a10c74074a8ce49d5d3ebf1f7e9190a250565b5f546001600160a01b031633146119fc5760405162461bcd60e51b8152600401610ba990612dd9565b6001600160a01b038116611a615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ba9565b610c72816123bf565b5f546001600160a01b03163314611a935760405162461bcd60e51b8152600401610ba990612dd9565b803b63ffffffff1615611ab85760405162461bcd60e51b8152600401610ba990612e3b565b600c54604080516001600160a01b03928316815291831660208301526060828201819052600790830152661b1c1d985d5b1d60ca1b6080830152515f805160206130c98339815191529181900360a00190a1610c7281612473565b6001600160a01b038316611b755760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610ba9565b6001600160a01b038216611bd65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610ba9565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6010805460ff60c01b1916600160c01b179055600c546011544791611c74916001600160a01b0390911690611c6f9060ff16846124d9565b6124f2565b600d54601154611c9a916001600160a01b031690611c6f90610100900460ff16846124d9565b600e54601154611cc1916001600160a01b031690611c6f9062010000900460ff16846124d9565b600f54601154611ce9916001600160a01b031690611c6f906301000000900460ff16846124d9565b506010805460ff60c01b19169055565b6010805460ff60b81b1916600160b81b1790555f80611d1783612586565b6010549193509150611d349030906001600160a01b03168361286c565b611d5381611d4d846009546122f790919063ffffffff16565b906122f7565b60095550506010805460ff60b81b1916905550565b5f8190505f816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611da9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dcd9190612f85565b90505f816001600160a01b031663e6a4390530856001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e409190612f85565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015611e89573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ead9190612f85565b90506001600160a01b038116611fc3575f826001600160a01b031663c9c6539630866001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f2e9190612f85565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015611f78573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f9c9190612f85565b6001600160a01b03165f908152600560205260409020805460ff1916600117905550611fe6565b6001600160a01b0381165f908152600560205260409020805460ff191660011790555b5050601280546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b03831661206f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610ba9565b6001600160a01b0382166120d15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610ba9565b805f0361210a57816001600160a01b0316836001600160a01b03165f805160206130a98339815191525f604051611c2a91815260200190565b601054600160b01b900460ff16158061213a57506001600160a01b0383165f9081526003602052604090205460ff165b8061215c57506001600160a01b0382165f9081526003602052604090205460ff165b156121715761216c83838361286c565b505050565b6001600160a01b038083165f9081526005602052604080822054928616825290205460ff9182169116811580156121a6575080155b156121bd576121b685858561286c565b5050505050565b81156121ec576121cb6128fc565b6011546121e790869086908690600160301b900460ff166129c2565b6121b6565b6011546121b690869086908690600160281b900460ff166129c2565b5f818484111561222b5760405162461bcd60e51b8152600401610ba99190612bb0565b505f6122378486612fa0565b95945050505050565b6011805460ff98891661ffff1990911617610100978916979097029690961763ffff00001916620100009588169590950263ff0000001916949094176301000000938716939093029290921765ffff0000000019166401000000009186169190910265ff0000000000191617600160281b918516919091021766ff0000000000001916600160301b9190931602919091179055565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b5f806123038385612fb3565b9050838110156123555760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610ba9565b9392505050565b5f61235583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612208565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f54600160a01b900460ff16156124565760405162461bcd60e51b815260206004820152600c60248201526b125b9d985b1a59081a5b9a5d60a21b6044820152606401610ba9565b61245f336123bf565b5f805460ff60a01b1916600160a01b179055565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f61235560646124ec8460ff8716612aca565b90612b48565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f811461253b576040519150601f19603f3d011682016040523d82523d5f602084013e612540565b606091505b505090508061216c5760405162461bcd60e51b815260206004820152601260248201527108cc2d2d8cac840e8de40e6cadcc8408aa8960731b6044820152606401610ba9565b6040805160028082526060820183525f9283928392909160208301908036833701905050905030815f815181106125bf576125bf612fc6565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015612616573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061263a9190612f85565b8160018151811061264d5761264d612fc6565b6001600160a01b0392831660209182029290920101526012546126739130911686611b13565b6012546040805163c45a015560e01b815290515f926001600160a01b03169163c45a01559160048083019260209291908290030181865afa1580156126ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126de9190612f85565b90505f816001600160a01b031663e6a43905845f8151811061270257612702612fc6565b60200260200101518560018151811061271d5761271d612fc6565b60200260200101516040518363ffffffff1660e01b81526004016127579291906001600160a01b0392831681529116602082015260400190565b602060405180830381865afa158015612772573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127969190612f85565b6001600160a01b0381165f90815260016020526040812054919250906127bd906064612b48565b90508087116127cc57866127ce565b805b6011549096506127f1906064906124ec908990640100000000900460ff16612aca565b94506127fd868661235c565b60125460405163791ac94760e01b81529197506001600160a01b03169063791ac947906128369089905f90899030904290600401612fda565b5f604051808303815f87803b15801561284d575f80fd5b505af115801561285f573d5f803e3d5ffd5b5050505050505050915091565b6001600160a01b0383165f9081526001602052604090205461288e908261235c565b6001600160a01b038085165f9081526001602052604080822093909355908416815220546128bc90826122f7565b6001600160a01b038084165f8181526001602052604090819020939093559151908516905f805160206130a983398151915290611c2a9085815260200190565b6010545f90600160b81b900460ff161580156129225750601054600160c01b900460ff16155b80156129375750601054600160a01b900460ff165b1561296457305f90815260016020526040902054600a5481106129625761295d81611cf9565b600191505b505b8015801561297c5750601054600160c01b900460ff16155b80156129925750601054600160b81b900460ff16155b80156129a75750601054600160a81b900460ff165b80156129b55750600b544710155b15610c7257610c72611c37565b805f036129d9576129d484848461286c565b612ac4565b6001600160a01b0384165f908152600160205260409020546129fb908361235c565b6001600160a01b0385165f90815260016020526040812091909155612a2560646124ec8585612aca565b90505f612a32848361235c565b305f90815260016020526040902054909150612a4e90836122f7565b305f90815260016020526040808220929092556001600160a01b03871681522054612a7990826122f7565b6001600160a01b038087165f8181526001602052604090819020939093559151908816905f805160206130a983398151915290612ab99085815260200190565b60405180910390a350505b50505050565b5f825f03612ad957505f610b7a565b5f612ae4838561304a565b905082612af18583613061565b146123555760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610ba9565b5f61235583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152505f8183612ba45760405162461bcd60e51b8152600401610ba99190612bb0565b505f6122378486613061565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610c72575f80fd5b5f8060408385031215612c0a575f80fd5b8235612c1581612be5565b946020939093013593505050565b5f60208284031215612c33575f80fd5b5035919050565b5f60208284031215612c4a575f80fd5b813561235581612be5565b5f805f60608486031215612c67575f80fd5b8335612c7281612be5565b92506020840135612c8281612be5565b929592945050506040919091013590565b803560ff81168114612ca3575f80fd5b919050565b5f805f805f805f60e0888a031215612cbe575f80fd5b612cc788612c93565b9650612cd560208901612c93565b9550612ce360408901612c93565b9450612cf160608901612c93565b9350612cff60808901612c93565b9250612d0d60a08901612c93565b9150612d1b60c08901612c93565b905092959891949750929550565b5f60208284031215612d39575f80fd5b81358015158114612355575f80fd5b5f60208284031215612d58575f80fd5b813562ffffff81168114612355575f80fd5b5f8060408385031215612d7b575f80fd5b8235612d8681612be5565b91506020830135612d9681612be5565b809150509250929050565b600181811c90821680612db557607f821691505b602082108103612dd357634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b60ff8181168382160190811115610b7a57610b7a612e0e565b6020808252601b908201527f43616e6e6f742073657420636f6e747261637420616464726573730000000000604082015260600190565b634e487b7160e01b5f52604160045260245ffd5b601f82111561216c57805f5260205f20601f840160051c81016020851015612eab5750805b601f840160051c820191505b818110156121b6575f8155600101612eb7565b815167ffffffffffffffff811115612ee457612ee4612e72565b612ef881612ef28454612da1565b84612e86565b6020601f821160018114612f2a575f8315612f135750848201515b5f19600385901b1c1916600184901b1784556121b6565b5f84815260208120601f198516915b82811015612f595787850151825560209485019460019092019101612f39565b5084821015612f7657868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215612f95575f80fd5b815161235581612be5565b81810381811115610b7a57610b7a612e0e565b80820180821115610b7a57610b7a612e0e565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b8181101561302a5783516001600160a01b0316835260209384019390920191600101613003565b50506001600160a01b039590951660608401525050608001529392505050565b8082028115828204841417610b7a57610b7a612e0e565b5f8261307b57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef887b60eeb739c5bafd6fb91252e90ed0ab7744b0cfb29af5b58a41abc3ba6b1945524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122006fc5ecf20641edc2ec25a2f6647eb504c512a83c71c44b53f5ad562ba56128664736f6c634300081a0033