[ { "inputs": [ { "internalType": "address", "name": "routerAddress", "type": "address" }, { "internalType": "address", "name": "pairTokenAddress", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": "AddLiquidity", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "addlp", "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": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "checkCurrentFees", "outputs": [ { "internalType": "uint256", "name": "currentBuyFee", "type": "uint256" }, { "internalType": "uint256", "name": "currentSellFee", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "checkCurrentStatus", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "d1fa275f334f", "outputs": [], "stateMutability": "nonpayable", "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": "address", "name": "_user", "type": "address" }, { "internalType": "uint8", "name": "_status", "type": "uint8" } ], "name": "editCurrentStatus", "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": "address", "name": "token", "type": "address" } ], "name": "getBaseTokenReserve", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "_user", "type": "address" } ], "name": "isEcludedFromTradeLock", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "isExcludedFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isTradeLocked", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "marketWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "address", "name": "_newRouterAddress", "type": "address" }, { "internalType": "address", "name": "_newPairTokenAddress", "type": "address" } ], "name": "rebaseLiquidityPool", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOrigin", "type": "address" } ], "name": "switchOrigin", "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": "amount", "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": "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": [ { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "bool", "name": "_status", "type": "bool" } ], "name": "updateExcludedFromFeeStatus", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_buyFee", "type": "uint256" }, { "internalType": "uint256", "name": "_sellFee", "type": "uint256" } ], "name": "updateFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_newMarketWallet", "type": "address" } ], "name": "updateMarketWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "updateTradeLockedState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "bool", "name": "_status", "type": "bool" } ], "name": "updateUserExcludedFromTradeLockStatus", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040526b033b2e3c9fd0803ce80000006007556040518060400160405280600a81526020017f5065706542616e616e6100000000000000000000000000000000000000000000815250600890816200005a91906200091e565b506040518060400160405280600881526020017f504550454e414e4100000000000000000000000000000000000000000000000081525060099081620000a191906200091e565b506012600a60006101000a81548160ff021916908360ff1602179055506002600b556002600c556000600d60006101000a81548160ff021916908315150217905550348015620000f057600080fd5b50604051620048ad380380620048ad833981810160405281019062000116919062000a6f565b6200012733620005b760201b60201c565b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fc919062000ab6565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630836040518363ffffffff1660e01b81526004016200023892919062000af9565b6020604051808303816000875af115801562000258573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027e919062000ab6565b600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060075460056000620002d56200067b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003a56200067b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60075460405162000406919062000b37565b60405180910390a333600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505062000b54565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200072657607f821691505b6020821081036200073c576200073b620006de565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620007a67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000767565b620007b2868362000767565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620007ff620007f9620007f384620007ca565b620007d4565b620007ca565b9050919050565b6000819050919050565b6200081b83620007de565b620008336200082a8262000806565b84845462000774565b825550505050565b600090565b6200084a6200083b565b6200085781848462000810565b505050565b5b818110156200087f576200087360008262000840565b6001810190506200085d565b5050565b601f821115620008ce57620008988162000742565b620008a38462000757565b81016020851015620008b3578190505b620008cb620008c28562000757565b8301826200085c565b50505b505050565b600082821c905092915050565b6000620008f360001984600802620008d3565b1980831691505092915050565b60006200090e8383620008e0565b9150826002028217905092915050565b6200092982620006a4565b67ffffffffffffffff811115620009455762000944620006af565b5b6200095182546200070d565b6200095e82828562000883565b600060209050601f83116001811462000996576000841562000981578287015190505b6200098d858262000900565b865550620009fd565b601f198416620009a68662000742565b60005b82811015620009d057848901518255600182019150602085019450602081019050620009a9565b86831015620009f05784890151620009ec601f891682620008e0565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000a378262000a0a565b9050919050565b62000a498162000a2a565b811462000a5557600080fd5b50565b60008151905062000a698162000a3e565b92915050565b6000806040838503121562000a895762000a8862000a05565b5b600062000a998582860162000a58565b925050602062000aac8582860162000a58565b9150509250929050565b60006020828403121562000acf5762000ace62000a05565b5b600062000adf8482850162000a58565b91505092915050565b62000af38162000a2a565b82525050565b600060408201905062000b10600083018562000ae8565b62000b1f602083018462000ae8565b9392505050565b62000b3181620007ca565b82525050565b600060208201905062000b4e600083018462000b26565b92915050565b613d498062000b646000396000f3fe6080604052600436106101ee5760003560e01c8063715018a61161010d578063b5c72e1a116100a0578063ecbe5a2d1161006f578063ecbe5a2d14610719578063ed4091b714610756578063edd8b64a1461076d578063f1fee6a214610796578063f2fde38b146107bf576101ee565b8063b5c72e1a1461065d578063d445d19e1461069a578063dd62ed3e146106b1578063e4440a86146106ee576101ee565b8063a07fc5a2116100dc578063a07fc5a21461058f578063a457c2d7146105ba578063a9059cbb146105f7578063b49f93f714610634576101ee565b8063715018a6146104e557806385ecafd7146104fc5780638da5cb5b1461053957806395d89b4114610564576101ee565b8063313ce567116101855780635337cc99116101545780635337cc99146104195780635342acb4146104425780636db794371461047f57806370a08231146104a8576101ee565b8063313ce5671461034b57806335d162741461037657806339509351146103b35780634d474d42146103f0576101ee565b806318160ddd116101c157806318160ddd1461028e5780631f6b29f7146102b957806323b872dd146102e25780632df8bca91461031f576101ee565b806306fdde03146101f3578063095ea7b31461021e5780630bc488c51461025b5780630cdd843614610265575b600080fd5b3480156101ff57600080fd5b506102086107e8565b6040516102159190612a8b565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190612b55565b61087a565b6040516102529190612bb0565b60405180910390f35b610263610896565b005b34801561027157600080fd5b5061028c60048036038101906102879190612c04565b6109ce565b005b34801561029a57600080fd5b506102a3610b30565b6040516102b09190612c53565b60405180910390f35b3480156102c557600080fd5b506102e060048036038101906102db9190612c9a565b610b3a565b005b3480156102ee57600080fd5b5061030960048036038101906103049190612cda565b610c53565b6040516103169190612bb0565b60405180910390f35b34801561032b57600080fd5b50610334610c7b565b604051610342929190612d2d565b60405180910390f35b34801561035757600080fd5b50610360610c8c565b60405161036d9190612d65565b60405180910390f35b34801561038257600080fd5b5061039d60048036038101906103989190612d80565b610ca3565b6040516103aa9190612c53565b60405180910390f35b3480156103bf57600080fd5b506103da60048036038101906103d59190612b55565b610e38565b6040516103e79190612bb0565b60405180910390f35b3480156103fc57600080fd5b5061041760048036038101906104129190612d80565b610e68565b005b34801561042557600080fd5b50610440600480360381019061043b9190612c9a565b610ed8565b005b34801561044e57600080fd5b5061046960048036038101906104649190612d80565b610ff1565b6040516104769190612bb0565b60405180910390f35b34801561048b57600080fd5b506104a660048036038101906104a19190612dad565b611047565b005b3480156104b457600080fd5b506104cf60048036038101906104ca9190612d80565b6110d6565b6040516104dc9190612c53565b60405180910390f35b3480156104f157600080fd5b506104fa61111f565b005b34801561050857600080fd5b50610523600480360381019061051e9190612d80565b611133565b6040516105309190612bb0565b60405180910390f35b34801561054557600080fd5b5061054e611153565b60405161055b9190612dfc565b60405180910390f35b34801561057057600080fd5b5061057961117c565b6040516105869190612a8b565b60405180910390f35b34801561059b57600080fd5b506105a461120e565b6040516105b19190612bb0565b60405180910390f35b3480156105c657600080fd5b506105e160048036038101906105dc9190612b55565b611225565b6040516105ee9190612bb0565b60405180910390f35b34801561060357600080fd5b5061061e60048036038101906106199190612b55565b611295565b60405161062b9190612bb0565b60405180910390f35b34801561064057600080fd5b5061065b60048036038101906106569190612e17565b6112b1565b005b34801561066957600080fd5b50610684600480360381019061067f9190612d80565b6112fa565b6040516106919190612bb0565b60405180910390f35b3480156106a657600080fd5b506106af611363565b005b3480156106bd57600080fd5b506106d860048036038101906106d39190612e44565b611399565b6040516106e59190612c53565b60405180910390f35b3480156106fa57600080fd5b50610703611420565b6040516107109190612dfc565b60405180910390f35b34801561072557600080fd5b50610740600480360381019061073b9190612d80565b611446565b60405161074d9190612bb0565b60405180910390f35b34801561076257600080fd5b5061076b61149c565b005b34801561077957600080fd5b50610794600480360381019061078f9190612d80565b61178e565b005b3480156107a257600080fd5b506107bd60048036038101906107b89190612e44565b6117fe565b005b3480156107cb57600080fd5b506107e660048036038101906107e19190612d80565b611a52565b005b6060600880546107f790612eb3565b80601f016020809104026020016040519081016040528092919081815260200182805461082390612eb3565b80156108705780601f1061084557610100808354040283529160200191610870565b820191906000526020600020905b81548152906001019060200180831161085357829003601f168201915b5050505050905090565b60008033905061088b818585611ad5565b600191505092915050565b6108c233600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b6108d4306108cf336110d6565b611295565b5061090a30600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610905306110d6565b611ad5565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7193430610953306110d6565b600080336104b0426109659190612f13565b6040518863ffffffff1660e01b815260040161098696959493929190612f8c565b60606040518083038185885af11580156109a4573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109c99190613002565b505050565b6109fa33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b60028160ff1610610a40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a37906130a1565b60405180910390fd5b600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff168160ff1603610ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acb9061310d565b60405180910390fd5b80600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505050565b6000600754905090565b610b6633600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b801515601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef9061310d565b60405180910390fd5b80601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600080339050610c64858285611d10565b610c6f858585611d9c565b60019150509392505050565b600080600b54600c54915091509091565b6000600a60009054906101000a900460ff16905090565b6000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610d15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3991906131af565b509150915060008473ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de89190613217565b73ffffffffffffffffffffffffffffffffffffffff1614610e1957816dffffffffffffffffffffffffffff16610e2b565b826dffffffffffffffffffffffffffff165b9050809350505050919050565b600080339050610e5d818585610e4e8589611399565b610e589190612f13565b611ad5565b600191505092915050565b610e9433600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610f0433600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b801515601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503610f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8d9061310d565b60405180910390fd5b80601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b61107333600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b60648211158015611085575060648111155b6110c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110bb906132b6565b60405180910390fd5b81600b8190555080600c819055505050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61112761277a565b61113160006127f1565b565b60106020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606009805461118b90612eb3565b80601f01602080910402602001604051908101604052809291908181526020018280546111b790612eb3565b80156112045780601f106111d957610100808354040283529160200191611204565b820191906000526020600020905b8154815290600101906020018083116111e757829003601f168201915b5050505050905090565b6000600d60009054906101000a900460ff16905090565b60008033905060006112378286611399565b90508381101561127c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127390613348565b60405180910390fd5b6112898286868403611ad5565b60019250505092915050565b6000803390506112a6818585611d9c565b600191505092915050565b6112dd33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b80600d60006101000a81548160ff02191690831515021790555050565b600080600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff161461135957600161135c565b60005b9050919050565b61138f33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b6113976128b5565b565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6114c833600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b60006114d330610ca3565b90506000816dffffffffffffffffffffffffffff80166114f39190613368565b90506114fd6128b5565b61150f3061150a336110d6565b611295565b5061154d30600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff8016611ad5565b6060600267ffffffffffffffff81111561156a5761156961339c565b5b6040519080825280602002602001820160405280156115985781602001602082028036833780820191505090505b50905030816000815181106115b0576115af6133cb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061167b9190613217565b8160018151811061168f5761168e6133cb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000339050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338ed173984600085856104b04261171f9190612f13565b6040518663ffffffff1660e01b815260040161173f9594939291906134b8565b6000604051808303816000875af115801561175e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611787919061362b565b5050505050565b6117ba33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61182a33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611c9e565b8173ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146118c15781600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561196f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119939190613217565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530836040518363ffffffff1660e01b81526004016119cd929190613674565b602060405180830381865afa1580156119ea573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a0e9190613217565b600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b611a5a61277a565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611ac9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac09061370f565b60405180910390fd5b611ad2816127f1565b50565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3b906137a1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611bb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611baa90613833565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611c919190612c53565b60405180910390a3505050565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611d0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d03906138c5565b60405180910390fd5b5050565b6000611d1c8484611399565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611d965781811015611d88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7f90613931565b60405180910390fd5b611d958484848403611ad5565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e02906139c3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611e7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7190613a55565b60405180910390fd5b611e83836112fa565b15611ec3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eba90613ac1565b60405180910390fd5b611ece83838361291d565b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611f55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4c90613b53565b60405180910390fd5b600d60009054906101000a900460ff16156120a657611f7384612922565b1561200957601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612004576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ffb90613be5565b60405180910390fd5b6120a5565b61201283612922565b156120a457601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166120a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209a90613be5565b60405180910390fd5b5b5b5b6120af84610ff1565b1580156120c257506120c083610ff1565b155b1561265e576120d084612922565b1561230a5760006120e383600b546129d4565b905082826120f19190613368565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080836121409190613368565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461218e9190612f13565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83866121f09190613368565b6040516121fd9190612c53565b60405180910390a38060056000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122769190612f13565b92505081905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516122fc9190612c53565b60405180910390a350612659565b61231383612922565b1561254d57600061232683600c546129d4565b905082826123349190613368565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080836123839190613368565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546123d19190612f13565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83866124339190613368565b6040516124409190612c53565b60405180910390a38060056000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546124b99190612f13565b92505081905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161253f9190612c53565b60405180910390a350612658565b81816125599190613368565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125eb9190612f13565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161264f9190612c53565b60405180910390a35b5b612769565b818161266a9190613368565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126fc9190612f13565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516127609190612c53565b60405180910390a35b6127748484846129f6565b50505050565b3373ffffffffffffffffffffffffffffffffffffffff16612799611153565b73ffffffffffffffffffffffffffffffffffffffff16146127ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127e690613c51565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6dffffffffffffffffffffffffffff8016600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546129149190612f13565b92505081905550565b505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614806129cd5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b6000606482846129e49190613c71565b6129ee9190613ce2565b905092915050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612a35578082015181840152602081019050612a1a565b60008484015250505050565b6000601f19601f8301169050919050565b6000612a5d826129fb565b612a678185612a06565b9350612a77818560208601612a17565b612a8081612a41565b840191505092915050565b60006020820190508181036000830152612aa58184612a52565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612aec82612ac1565b9050919050565b612afc81612ae1565b8114612b0757600080fd5b50565b600081359050612b1981612af3565b92915050565b6000819050919050565b612b3281612b1f565b8114612b3d57600080fd5b50565b600081359050612b4f81612b29565b92915050565b60008060408385031215612b6c57612b6b612ab7565b5b6000612b7a85828601612b0a565b9250506020612b8b85828601612b40565b9150509250929050565b60008115159050919050565b612baa81612b95565b82525050565b6000602082019050612bc56000830184612ba1565b92915050565b600060ff82169050919050565b612be181612bcb565b8114612bec57600080fd5b50565b600081359050612bfe81612bd8565b92915050565b60008060408385031215612c1b57612c1a612ab7565b5b6000612c2985828601612b0a565b9250506020612c3a85828601612bef565b9150509250929050565b612c4d81612b1f565b82525050565b6000602082019050612c686000830184612c44565b92915050565b612c7781612b95565b8114612c8257600080fd5b50565b600081359050612c9481612c6e565b92915050565b60008060408385031215612cb157612cb0612ab7565b5b6000612cbf85828601612b0a565b9250506020612cd085828601612c85565b9150509250929050565b600080600060608486031215612cf357612cf2612ab7565b5b6000612d0186828701612b0a565b9350506020612d1286828701612b0a565b9250506040612d2386828701612b40565b9150509250925092565b6000604082019050612d426000830185612c44565b612d4f6020830184612c44565b9392505050565b612d5f81612bcb565b82525050565b6000602082019050612d7a6000830184612d56565b92915050565b600060208284031215612d9657612d95612ab7565b5b6000612da484828501612b0a565b91505092915050565b60008060408385031215612dc457612dc3612ab7565b5b6000612dd285828601612b40565b9250506020612de385828601612b40565b9150509250929050565b612df681612ae1565b82525050565b6000602082019050612e116000830184612ded565b92915050565b600060208284031215612e2d57612e2c612ab7565b5b6000612e3b84828501612c85565b91505092915050565b60008060408385031215612e5b57612e5a612ab7565b5b6000612e6985828601612b0a565b9250506020612e7a85828601612b0a565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612ecb57607f821691505b602082108103612ede57612edd612e84565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f1e82612b1f565b9150612f2983612b1f565b9250828201905080821115612f4157612f40612ee4565b5b92915050565b6000819050919050565b6000819050919050565b6000612f76612f71612f6c84612f47565b612f51565b612b1f565b9050919050565b612f8681612f5b565b82525050565b600060c082019050612fa16000830189612ded565b612fae6020830188612c44565b612fbb6040830187612f7d565b612fc86060830186612f7d565b612fd56080830185612ded565b612fe260a0830184612c44565b979650505050505050565b600081519050612ffc81612b29565b92915050565b60008060006060848603121561301b5761301a612ab7565b5b600061302986828701612fed565b935050602061303a86828701612fed565b925050604061304b86828701612fed565b9150509250925092565b7f5374617475732073686f756c642062652030206f722031000000000000000000600082015250565b600061308b601783612a06565b915061309682613055565b602082019050919050565b600060208201905081810360008301526130ba8161307e565b9050919050565b7f5573657220616c72656164792068617665207468697320737461747573000000600082015250565b60006130f7601d83612a06565b9150613102826130c1565b602082019050919050565b60006020820190508181036000830152613126816130ea565b9050919050565b60006dffffffffffffffffffffffffffff82169050919050565b6131508161312d565b811461315b57600080fd5b50565b60008151905061316d81613147565b92915050565b600063ffffffff82169050919050565b61318c81613173565b811461319757600080fd5b50565b6000815190506131a981613183565b92915050565b6000806000606084860312156131c8576131c7612ab7565b5b60006131d68682870161315e565b93505060206131e78682870161315e565b92505060406131f88682870161319a565b9150509250925092565b60008151905061321181612af3565b92915050565b60006020828403121561322d5761322c612ab7565b5b600061323b84828501613202565b91505092915050565b7f4665652070657263656e742063616e277420626520686967686572207468616e60008201527f2031303000000000000000000000000000000000000000000000000000000000602082015250565b60006132a0602483612a06565b91506132ab82613244565b604082019050919050565b600060208201905081810360008301526132cf81613293565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000613332602583612a06565b915061333d826132d6565b604082019050919050565b6000602082019050818103600083015261336181613325565b9050919050565b600061337382612b1f565b915061337e83612b1f565b925082820390508181111561339657613395612ee4565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61342f81612ae1565b82525050565b60006134418383613426565b60208301905092915050565b6000602082019050919050565b6000613465826133fa565b61346f8185613405565b935061347a83613416565b8060005b838110156134ab5781516134928882613435565b975061349d8361344d565b92505060018101905061347e565b5085935050505092915050565b600060a0820190506134cd6000830188612c44565b6134da6020830187612f7d565b81810360408301526134ec818661345a565b90506134fb6060830185612ded565b6135086080830184612c44565b9695505050505050565b600080fd5b61352082612a41565b810181811067ffffffffffffffff8211171561353f5761353e61339c565b5b80604052505050565b6000613552612aad565b905061355e8282613517565b919050565b600067ffffffffffffffff82111561357e5761357d61339c565b5b602082029050602081019050919050565b600080fd5b60006135a76135a284613563565b613548565b905080838252602082019050602084028301858111156135ca576135c961358f565b5b835b818110156135f357806135df8882612fed565b8452602084019350506020810190506135cc565b5050509392505050565b600082601f83011261361257613611613512565b5b8151613622848260208601613594565b91505092915050565b60006020828403121561364157613640612ab7565b5b600082015167ffffffffffffffff81111561365f5761365e612abc565b5b61366b848285016135fd565b91505092915050565b60006040820190506136896000830185612ded565b6136966020830184612ded565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006136f9602683612a06565b91506137048261369d565b604082019050919050565b60006020820190508181036000830152613728816136ec565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061378b602483612a06565b91506137968261372f565b604082019050919050565b600060208201905081810360008301526137ba8161377e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061381d602283612a06565b9150613828826137c1565b604082019050919050565b6000602082019050818103600083015261384c81613810565b9050919050565b7f43616c6c6572206973206e6f7420746865206f726967696e616c2063616c6c6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006138af602183612a06565b91506138ba82613853565b604082019050919050565b600060208201905081810360008301526138de816138a2565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061391b601d83612a06565b9150613926826138e5565b602082019050919050565b6000602082019050818103600083015261394a8161390e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006139ad602583612a06565b91506139b882613951565b604082019050919050565b600060208201905081810360008301526139dc816139a0565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613a3f602383612a06565b9150613a4a826139e3565b604082019050919050565b60006020820190508181036000830152613a6e81613a32565b9050919050565b7f45524332303a204e6f207072656d697373696f6e20746f207472616e73666572600082015250565b6000613aab602083612a06565b9150613ab682613a75565b602082019050919050565b60006020820190508181036000830152613ada81613a9e565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000613b3d602683612a06565b9150613b4882613ae1565b604082019050919050565b60006020820190508181036000830152613b6c81613b30565b9050919050565b7f557365722069736e2774206578636c756465642066726f6d2074726164654c6f60008201527f636b000000000000000000000000000000000000000000000000000000000000602082015250565b6000613bcf602283612a06565b9150613bda82613b73565b604082019050919050565b60006020820190508181036000830152613bfe81613bc2565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613c3b602083612a06565b9150613c4682613c05565b602082019050919050565b60006020820190508181036000830152613c6a81613c2e565b9050919050565b6000613c7c82612b1f565b9150613c8783612b1f565b9250828202613c9581612b1f565b91508282048414831517613cac57613cab612ee4565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613ced82612b1f565b9150613cf883612b1f565b925082613d0857613d07613cb3565b5b82820490509291505056fea2646970667358221220b57ed3ffff9ee374bcda0249c8a1d673a17dd7742bbf28f9229131f7158e05c864736f6c634300081300330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2