[ { "inputs": [], "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": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeFromFees", "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": "pair", "type": "address" }, { "indexed": true, "internalType": "bool", "name": "value", "type": "bool" } ], "name": "SetAutomatedMarketMakerPair", "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": true, "internalType": "address", "name": "newAddress", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldAddress", "type": "address" } ], "name": "UpdateUniswapV2Router", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "developmentWalletUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "marketingWalletUpdated", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_isExcludedmaxTransaction", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "antiDrainer", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "", "type": "address" } ], "name": "automatedMarketMakerPairs", "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": [], "name": "buyDevFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyMarketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyTotalFees", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "developmentWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "enableTradingWithPermit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "excludeFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "updAds", "type": "address" }, { "internalType": "bool", "name": "isEx", "type": "bool" } ], "name": "excludeFromMaxTransaction", "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": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExcludedFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "limitsInEffect", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "marketingWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransaction", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "removeLimits", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "sellDevFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellMarketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellTotalFees", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_antiDrainer", "type": "address" } ], "name": "setAntiDrainer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "wallets", "type": "address[]" }, { "internalType": "bool", "name": "blocked", "type": "bool" } ], "name": "setBlackList", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapTokensAtAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokensForDev", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokensForMarketing", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": "uniswapV2Pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_marketingFee", "type": "uint256" }, { "internalType": "uint256", "name": "_devFee", "type": "uint256" } ], "name": "updateBuyFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newMarketingWallet", "type": "address" } ], "name": "updateMarketingWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newNum", "type": "uint256" } ], "name": "updateMaxTxnAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newNum", "type": "uint256" } ], "name": "updateMaxWalletAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_marketingFee", "type": "uint256" }, { "internalType": "uint256", "name": "_devFee", "type": "uint256" } ], "name": "updateSellFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "updateSwapEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newAmount", "type": "uint256" } ], "name": "updateSwapTokensAtAmount", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "address", "name": "value", "type": "address" } ], "internalType": "struct TaxAddressChange", "name": "_newMarketingWallet", "type": "tuple" }, { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct TaxChange", "name": "_newBuyMarketingFee", "type": "tuple" }, { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct TaxChange", "name": "_newSellMarketingFee", "type": "tuple" }, { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "address", "name": "value", "type": "address" } ], "internalType": "struct TaxAddressChange", "name": "_newDevelopmentWallet", "type": "tuple" }, { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct TaxChange", "name": "_newBuyDevFee", "type": "tuple" }, { "components": [ { "internalType": "bool", "name": "isChanged", "type": "bool" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct TaxChange", "name": "_newSellDevFee", "type": "tuple" } ], "name": "updateTaxConfig", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "updatedevelopmentWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040526001600e5f6101000a81548160ff0219169083151502179055505f600e60016101000a81548160ff0219169083151502179055505f600e60026101000a81548160ff02191690831515021790555034801561005d575f80fd5b506040518060400160405280600681526020017f4361744e697000000000000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f4361744e6970000000000000000000000000000000000000000000000000000081525081600390816100d99190610eaf565b5080600490816100e99190610eaf565b5050506101086100fd61076260201b60201c565b61076960201b60201c565b60014614806101175750600546145b1561017557737a250d5630b4cf539739df2c5dacb4c659f2488d60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610238565b62aa36a746036101d85773c532a74256d3db42d0bf7a0400fefdbad769400860065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610237565b612105460361023657734752ba5dbc23f44d87826276bf6fd6b1c372ad2460065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102c69190610fdc565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561034c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103709190610fdc565b6040518363ffffffff1660e01b815260040161038d929190611016565b6020604051808303815f875af11580156103a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cd9190610fdc565b60075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061043e60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161082c60201b60201c565b61047060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161082c60201b60201c565b6104a260075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161090c60201b60201c565b5f600590505f600590505f600a90505f600a90505f6104c56109aa60201b60201c565b600a6104d191906111a5565b633b9aca006104e091906111ef565b90505f8073b61cf5d1e4ca1e15ddd4e1f3137b34bdf2afe95790506105096109aa60201b60201c565b600a61051591906111a5565b6298968061052391906111ef565b600b819055506105376109aa60201b60201c565b600a61054391906111a5565b6298968061055191906111ef565b600d819055506105656109aa60201b60201c565b600a61057191906111a5565b6216e36061057f91906111ef565b600c8190555086601081905550856011819055506011546010546105a39190611230565b600f8190555084601381905550836014819055506014546013546105c79190611230565b6012819055507360afc4acc855a209569b9b7aeacbebd78363b64060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073ada227f06a206d7c4a2d083c19e7e3f7d59b4902600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506106936106866109b260201b60201c565b60016109da60201b60201c565b6106a43060016109da60201b60201c565b6106b761dead60016109da60201b60201c565b6106d56106c86109b260201b60201c565b600161082c60201b60201c565b6106e630600161082c60201b60201c565b6106f961dead600161082c60201b60201c565b61072e336103e8846103e861070e9190611263565b8661071991906111ef565b61072391906112c3565b610b0860201b60201c565b610756816103e8848661074191906111ef565b61074b91906112c3565b610b0860201b60201c565b5050505050505061142e565b5f33905090565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61083a61076260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1661085e6109b260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146108b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ab9061134d565b60405180910390fd5b8060195f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b80601a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f6012905090565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6109e861076260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16610a0c6109b260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614610a62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a599061134d565b60405180910390fd5b8060185f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051610afc9190611385565b60405180910390a25050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6d906113e8565b60405180910390fd5b610b875f8383610c6b60201b60201c565b8060025f828254610b989190611230565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610bea9190611230565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c4e9190611415565b60405180910390a3610c675f8383610c7060201b60201c565b5050565b505050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610cf057607f821691505b602082108103610d0357610d02610cac565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302610d657fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610d2a565b610d6f8683610d2a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f610db3610dae610da984610d87565b610d90565b610d87565b9050919050565b5f819050919050565b610dcc83610d99565b610de0610dd882610dba565b848454610d36565b825550505050565b5f90565b610df4610de8565b610dff818484610dc3565b505050565b5b81811015610e2257610e175f82610dec565b600181019050610e05565b5050565b601f821115610e6757610e3881610d09565b610e4184610d1b565b81016020851015610e50578190505b610e64610e5c85610d1b565b830182610e04565b50505b505050565b5f82821c905092915050565b5f610e875f1984600802610e6c565b1980831691505092915050565b5f610e9f8383610e78565b9150826002028217905092915050565b610eb882610c75565b67ffffffffffffffff811115610ed157610ed0610c7f565b5b610edb8254610cd9565b610ee6828285610e26565b5f60209050601f831160018114610f17575f8415610f05578287015190505b610f0f8582610e94565b865550610f76565b601f198416610f2586610d09565b5f5b82811015610f4c57848901518255600182019150602085019450602081019050610f27565b86831015610f695784890151610f65601f891682610e78565b8355505b6001600288020188555050505b505050505050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610fab82610f82565b9050919050565b610fbb81610fa1565b8114610fc5575f80fd5b50565b5f81519050610fd681610fb2565b92915050565b5f60208284031215610ff157610ff0610f7e565b5b5f610ffe84828501610fc8565b91505092915050565b61101081610fa1565b82525050565b5f6040820190506110295f830185611007565b6110366020830184611007565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156110bf5780860481111561109b5761109a61103d565b5b60018516156110aa5780820291505b80810290506110b88561106a565b945061107f565b94509492505050565b5f826110d75760019050611192565b816110e4575f9050611192565b81600181146110fa576002811461110457611133565b6001915050611192565b60ff8411156111165761111561103d565b5b8360020a91508482111561112d5761112c61103d565b5b50611192565b5060208310610133831016604e8410600b84101617156111685782820a9050838111156111635761116261103d565b5b611192565b6111758484846001611076565b9250905081840481111561118c5761118b61103d565b5b81810290505b9392505050565b5f60ff82169050919050565b5f6111af82610d87565b91506111ba83611199565b92506111e77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846110c8565b905092915050565b5f6111f982610d87565b915061120483610d87565b925082820261121281610d87565b915082820484148315176112295761122861103d565b5b5092915050565b5f61123a82610d87565b915061124583610d87565b925082820190508082111561125d5761125c61103d565b5b92915050565b5f61126d82610d87565b915061127883610d87565b92508282039050818111156112905761128f61103d565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6112cd82610d87565b91506112d883610d87565b9250826112e8576112e7611296565b5b828204905092915050565b5f82825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6113376020836112f3565b915061134282611303565b602082019050919050565b5f6020820190508181035f8301526113648161132b565b9050919050565b5f8115159050919050565b61137f8161136b565b82525050565b5f6020820190506113985f830184611376565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f6113d2601f836112f3565b91506113dd8261139e565b602082019050919050565b5f6020820190508181035f8301526113ff816113c6565b9050919050565b61140f81610d87565b82525050565b5f6020820190506114285f830184611406565b92915050565b615c8d8061143b5f395ff3fe60806040526004361061031d575f3560e01c80638f85a043116101aa578063bae14e1d116100f6578063d257b34f11610094578063e1bc33941161006e578063e1bc339414610ba2578063e2f4560514610bde578063f2fde38b14610c08578063f8b45b0514610c3057610324565b8063d257b34f14610b00578063d85ba06314610b3c578063dd62ed3e14610b6657610324565b8063c04a5414116100d0578063c04a541414610a5c578063c18bc19514610a86578063c3f70b5214610aae578063c79c04fd14610ad857610324565b8063bae14e1d146109e2578063bbc0c74214610a0a578063c024666814610a3457610324565b80639fccce3211610163578063a9059cbb1161013d578063a9059cbb1461091a578063a90eab8c14610956578063aacebbe31461097e578063b62496f5146109a657610324565b80639fccce321461088a578063a0d82dc5146108b4578063a457c2d7146108de57610324565b80638f85a0431461079457806392136913146107bc578063924de9b7146107e657806395d89b411461080e5780639a7a23d6146108385780639c3b4fdc1461086057610324565b80634a62bb6511610269578063715018a61161022257806375f0a874116101fc57806375f0a874146107005780637bce5a041461072a5780638a8c523c146107545780638da5cb5b1461076a57610324565b8063715018a614610698578063751039fc146106ae5780637571336a146106d857610324565b80634a62bb651461057a5780634fbee193146105a457806366ca9b83146105e05780636a486a8e146106085780636ddd17131461063257806370a082311461065c57610324565b8063203e727e116102d657806337c2810f116102b057806337c2810f146104c257806339509351146104ec57806342ce82481461052857806349bd5a5e1461055057610324565b8063203e727e1461043457806323b872dd1461045c578063313ce5671461049857610324565b806302dbd8f81461032857806306fdde0314610350578063095ea7b31461037a5780631694505e146103b657806318160ddd146103e05780631f3fed8f1461040a57610324565b3661032457005b5f80fd5b348015610333575f80fd5b5061034e60048036038101906103499190614110565b610c5a565b005b34801561035b575f80fd5b50610364610d44565b60405161037191906141be565b60405180910390f35b348015610385575f80fd5b506103a0600480360381019061039b9190614238565b610dd4565b6040516103ad9190614290565b60405180910390f35b3480156103c1575f80fd5b506103ca610df1565b6040516103d79190614304565b60405180910390f35b3480156103eb575f80fd5b506103f4610e16565b604051610401919061432c565b60405180910390f35b348015610415575f80fd5b5061041e610e1f565b60405161042b919061432c565b60405180910390f35b34801561043f575f80fd5b5061045a60048036038101906104559190614345565b610e25565b005b348015610467575f80fd5b50610482600480360381019061047d9190614370565b610f4a565b60405161048f9190614290565b60405180910390f35b3480156104a3575f80fd5b506104ac61103c565b6040516104b991906143db565b60405180910390f35b3480156104cd575f80fd5b506104d6611044565b6040516104e39190614403565b60405180910390f35b3480156104f7575f80fd5b50610512600480360381019061050d9190614238565b611069565b60405161051f9190614290565b60405180910390f35b348015610533575f80fd5b5061054e6004803603810190610549919061455c565b611110565b005b34801561055b575f80fd5b50610564611488565b6040516105719190614403565b60405180910390f35b348015610585575f80fd5b5061058e6114ad565b60405161059b9190614290565b60405180910390f35b3480156105af575f80fd5b506105ca60048036038101906105c591906145e8565b6114bf565b6040516105d79190614290565b60405180910390f35b3480156105eb575f80fd5b5061060660048036038101906106019190614110565b611511565b005b348015610613575f80fd5b5061061c6115fb565b604051610629919061432c565b60405180910390f35b34801561063d575f80fd5b50610646611601565b6040516106539190614290565b60405180910390f35b348015610667575f80fd5b50610682600480360381019061067d91906145e8565b611614565b60405161068f919061432c565b60405180910390f35b3480156106a3575f80fd5b506106ac611659565b005b3480156106b9575f80fd5b506106c26116e0565b6040516106cf9190614290565b60405180910390f35b3480156106e3575f80fd5b506106fe60048036038101906106f99190614613565b61177d565b005b34801561070b575f80fd5b50610714611851565b6040516107219190614403565b60405180910390f35b348015610735575f80fd5b5061073e611876565b60405161074b919061432c565b60405180910390f35b34801561075f575f80fd5b5061076861187c565b005b348015610775575f80fd5b5061077e611930565b60405161078b9190614403565b60405180910390f35b34801561079f575f80fd5b506107ba60048036038101906107b591906146b2565b611958565b005b3480156107c7575f80fd5b506107d0611a6f565b6040516107dd919061432c565b60405180910390f35b3480156107f1575f80fd5b5061080c6004803603810190610807919061470f565b611a75565b005b348015610819575f80fd5b50610822611b0e565b60405161082f91906141be565b60405180910390f35b348015610843575f80fd5b5061085e60048036038101906108599190614613565b611b9e565b005b34801561086b575f80fd5b50610874611cb7565b604051610881919061432c565b60405180910390f35b348015610895575f80fd5b5061089e611cbd565b6040516108ab919061432c565b60405180910390f35b3480156108bf575f80fd5b506108c8611cc3565b6040516108d5919061432c565b60405180910390f35b3480156108e9575f80fd5b5061090460048036038101906108ff9190614238565b611cc9565b6040516109119190614290565b60405180910390f35b348015610925575f80fd5b50610940600480360381019061093b9190614238565b611daf565b60405161094d9190614290565b60405180910390f35b348015610961575f80fd5b5061097c60048036038101906109779190614797565b611dcc565b005b348015610989575f80fd5b506109a4600480360381019061099f91906145e8565b61204f565b005b3480156109b1575f80fd5b506109cc60048036038101906109c791906145e8565b612189565b6040516109d99190614290565b60405180910390f35b3480156109ed575f80fd5b50610a086004803603810190610a0391906145e8565b6121a6565b005b348015610a15575f80fd5b50610a1e6122d3565b604051610a2b9190614290565b60405180910390f35b348015610a3f575f80fd5b50610a5a6004803603810190610a559190614613565b6122e6565b005b348015610a67575f80fd5b50610a70612408565b604051610a7d9190614403565b60405180910390f35b348015610a91575f80fd5b50610aac6004803603810190610aa79190614345565b61242d565b005b348015610ab9575f80fd5b50610ac2612552565b604051610acf919061432c565b60405180910390f35b348015610ae3575f80fd5b50610afe6004803603810190610af991906145e8565b612558565b005b348015610b0b575f80fd5b50610b266004803603810190610b219190614345565b612692565b604051610b339190614290565b60405180910390f35b348015610b47575f80fd5b50610b506127e6565b604051610b5d919061432c565b60405180910390f35b348015610b71575f80fd5b50610b8c6004803603810190610b8791906147e7565b6127ec565b604051610b99919061432c565b60405180910390f35b348015610bad575f80fd5b50610bc86004803603810190610bc391906145e8565b61286e565b604051610bd59190614290565b60405180910390f35b348015610be9575f80fd5b50610bf261288b565b604051610bff919061432c565b60405180910390f35b348015610c13575f80fd5b50610c2e6004803603810190610c2991906145e8565b612891565b005b348015610c3b575f80fd5b50610c44612987565b604051610c51919061432c565b60405180910390f35b610c6261298d565b73ffffffffffffffffffffffffffffffffffffffff16610c80611930565b73ffffffffffffffffffffffffffffffffffffffff1614610cd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccd9061486f565b60405180910390fd5b8160138190555080601481905550601454601354610cf491906148ba565b60128190555060196012541115610d40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3790614937565b60405180910390fd5b5050565b606060038054610d5390614982565b80601f0160208091040260200160405190810160405280929190818152602001828054610d7f90614982565b8015610dca5780601f10610da157610100808354040283529160200191610dca565b820191905f5260205f20905b815481529060010190602001808311610dad57829003601f168201915b5050505050905090565b5f610de7610de061298d565b8484612994565b6001905092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600254905090565b60155481565b610e2d61298d565b73ffffffffffffffffffffffffffffffffffffffff16610e4b611930565b73ffffffffffffffffffffffffffffffffffffffff1614610ea1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e989061486f565b60405180910390fd5b610ea961103c565b600a610eb59190614ae1565b6103e86001610ec2610e16565b610ecc9190614b2b565b610ed69190614b99565b610ee09190614b99565b811015610f22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1990614c39565b60405180910390fd5b610f2a61103c565b600a610f369190614ae1565b81610f419190614b2b565b600b8190555050565b5f610f56848484612b57565b5f60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610f9d61298d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561101c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101390614cc7565b60405180910390fd5b6110308561102861298d565b858403612994565b60019150509392505050565b5f6012905090565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f61110661107561298d565b848460015f61108261298d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461110191906148ba565b612994565b6001905092915050565b61111861298d565b73ffffffffffffffffffffffffffffffffffffffff16611136611930565b73ffffffffffffffffffffffffffffffffffffffff161461118c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111839061486f565b60405180910390fd5b855f0151156111da57856020015160095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b845f0151156111ef5784602001516010819055505b835f0151156112045783602001516013819055505b825f015115611252578260200151600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b815f0151156112675781602001516011819055505b805f01511561127c5780602001516014819055505b60115460105461128c91906148ba565b600f819055506014546013546112a291906148ba565b6012819055506019600f5411156112ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e590614937565b60405180910390fd5b60196012541115611334576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132b90614937565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff1660095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036113da575f60105414801561139a57505f601354145b6113d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d090614d55565b60405180910390fd5b5b5f73ffffffffffffffffffffffffffffffffffffffff16600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611480575f60115414801561144057505f601454145b61147f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147690614de3565b60405180910390fd5b5b505050505050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5f9054906101000a900460ff1681565b5f60185f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b61151961298d565b73ffffffffffffffffffffffffffffffffffffffff16611537611930565b73ffffffffffffffffffffffffffffffffffffffff161461158d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115849061486f565b60405180910390fd5b81601081905550806011819055506011546010546115ab91906148ba565b600f819055506019600f5411156115f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ee90614937565b60405180910390fd5b5050565b60125481565b600e60029054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61166161298d565b73ffffffffffffffffffffffffffffffffffffffff1661167f611930565b73ffffffffffffffffffffffffffffffffffffffff16146116d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cc9061486f565b60405180910390fd5b6116de5f61389d565b565b5f6116e961298d565b73ffffffffffffffffffffffffffffffffffffffff16611707611930565b73ffffffffffffffffffffffffffffffffffffffff161461175d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117549061486f565b60405180910390fd5b5f600e5f6101000a81548160ff0219169083151502179055506001905090565b61178561298d565b73ffffffffffffffffffffffffffffffffffffffff166117a3611930565b73ffffffffffffffffffffffffffffffffffffffff16146117f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f09061486f565b60405180910390fd5b8060195f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60105481565b61188461298d565b73ffffffffffffffffffffffffffffffffffffffff166118a2611930565b73ffffffffffffffffffffffffffffffffffffffff16146118f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ef9061486f565b60405180910390fd5b6001600e60016101000a81548160ff0219169083151502179055506001600e60026101000a81548160ff021916908315150217905550565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61196061298d565b73ffffffffffffffffffffffffffffffffffffffff1661197e611930565b73ffffffffffffffffffffffffffffffffffffffff16146119d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119cb9061486f565b60405180910390fd5b5f5b83839050811015611a69578160175f8686858181106119f8576119f7614e01565b5b9050602002016020810190611a0d91906145e8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506119d6565b50505050565b60135481565b611a7d61298d565b73ffffffffffffffffffffffffffffffffffffffff16611a9b611930565b73ffffffffffffffffffffffffffffffffffffffff1614611af1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae89061486f565b60405180910390fd5b80600e60026101000a81548160ff02191690831515021790555050565b606060048054611b1d90614982565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4990614982565b8015611b945780601f10611b6b57610100808354040283529160200191611b94565b820191905f5260205f20905b815481529060010190602001808311611b7757829003601f168201915b5050505050905090565b611ba661298d565b73ffffffffffffffffffffffffffffffffffffffff16611bc4611930565b73ffffffffffffffffffffffffffffffffffffffff1614611c1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c119061486f565b60405180910390fd5b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ca9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ca090614e9e565b60405180910390fd5b611cb38282613960565b5050565b60115481565b60165481565b60145481565b5f8060015f611cd661298d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015611d90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8790614f2c565b60405180910390fd5b611da4611d9b61298d565b85858403612994565b600191505092915050565b5f611dc2611dbb61298d565b8484612b57565b6001905092915050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6040518060400160405280600d81526020017f54726164696e6720546f6b656e00000000000000000000000000000000000000815250805190602001206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001204630604051602001611e7e959493929190614f59565b6040516020818303038152906040528051906020012090505f7f7dfdbf06c6260804b81338506aa4a709bd9f04b68ca0d2d054b8627926c90ae46040518060400160405280600e81526020017f456e61626c652054726164696e67000000000000000000000000000000000000815250805190602001205f604051602001611f0893929190614faa565b6040516020818303038152906040528051906020012090505f8282604051602001611f34929190615053565b6040516020818303038152906040528051906020012090505f6001828888886040515f8152602001604052604051611f6f9493929190615089565b6020604051602081039080840390855afa158015611f8f573d5f803e3d5ffd5b505050602060405103519050611fa3611930565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612010576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200790615116565b60405180910390fd5b6001600e60016101000a81548160ff0219169083151502179055506001600e60026101000a81548160ff02191690831515021790555050505050505050565b61205761298d565b73ffffffffffffffffffffffffffffffffffffffff16612075611930565b73ffffffffffffffffffffffffffffffffffffffff16146120cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c29061486f565b60405180910390fd5b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a38060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601a602052805f5260405f205f915054906101000a900460ff1681565b6121ae61298d565b73ffffffffffffffffffffffffffffffffffffffff166121cc611930565b73ffffffffffffffffffffffffffffffffffffffff1614612222576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122199061486f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612290576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122879061517e565b60405180910390fd5b8060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e60019054906101000a900460ff1681565b6122ee61298d565b73ffffffffffffffffffffffffffffffffffffffff1661230c611930565b73ffffffffffffffffffffffffffffffffffffffff1614612362576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123599061486f565b60405180910390fd5b8060185f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516123fc9190614290565b60405180910390a25050565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61243561298d565b73ffffffffffffffffffffffffffffffffffffffff16612453611930565b73ffffffffffffffffffffffffffffffffffffffff16146124a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a09061486f565b60405180910390fd5b6124b161103c565b600a6124bd9190614ae1565b6103e860056124ca610e16565b6124d49190614b2b565b6124de9190614b99565b6124e89190614b99565b81101561252a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125219061520c565b60405180910390fd5b61253261103c565b600a61253e9190614ae1565b816125499190614b2b565b600d8190555050565b600b5481565b61256061298d565b73ffffffffffffffffffffffffffffffffffffffff1661257e611930565b73ffffffffffffffffffffffffffffffffffffffff16146125d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125cb9061486f565b60405180910390fd5b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ffaf1b77ed79f6e898c44dd8ab36b330c7b2fd39bcaab05ed6362480df870396560405160405180910390a380600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f61269b61298d565b73ffffffffffffffffffffffffffffffffffffffff166126b9611930565b73ffffffffffffffffffffffffffffffffffffffff161461270f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127069061486f565b60405180910390fd5b620186a0600161271d610e16565b6127279190614b2b565b6127319190614b99565b821015612773576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161276a9061529a565b60405180910390fd5b6103e86005612780610e16565b61278a9190614b2b565b6127949190614b99565b8211156127d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127cd90615328565b60405180910390fd5b81600c8190555060019050919050565b600f5481565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6019602052805f5260405f205f915054906101000a900460ff1681565b600c5481565b61289961298d565b73ffffffffffffffffffffffffffffffffffffffff166128b7611930565b73ffffffffffffffffffffffffffffffffffffffff161461290d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129049061486f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361297b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612972906153b6565b60405180910390fd5b6129848161389d565b50565b600d5481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612a02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f990615444565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612a70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a67906154d2565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612b4a919061432c565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612bc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bbc90615560565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612c33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c2a906155ee565b60405180910390fd5b60175f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615612cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb490615656565b60405180910390fd5b60175f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615612d47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d3e906156be565b60405180910390fd5b5f8103612d5e57612d5983835f6139fe565b613898565b600e5f9054906101000a900460ff161561324257612d7a611930565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612de85750612db8611930565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e2057505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e5a575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e735750600860149054906101000a900460ff16155b1561324157600e60019054906101000a900460ff16612f675760185f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612f27575060185f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612f66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5d90615726565b60405180910390fd5b5b601a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015613004575060195f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156130ab57600b5481111561304e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613045906157b4565b60405180910390fd5b600d5461305a83611614565b8261306591906148ba565b11156130a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161309d9061581c565b60405180910390fd5b613240565b601a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015613148575060195f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561319757600b54811115613192576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613189906158aa565b60405180910390fd5b61323f565b60195f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661323e57600d546131f183611614565b826131fc91906148ba565b111561323d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132349061581c565b60405180910390fd5b5b5b5b5b5b5f73ffffffffffffffffffffffffffffffffffffffff1660085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015613334575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639015d371306040518263ffffffff1660e01b81526004016132f49190614403565b602060405180830381865afa15801561330f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061333391906158dc565b5b15613449575f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a20527fc858560075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d54600b54600c546040518763ffffffff1660e01b81526004016133c596959493929190615907565b6020604051808303815f875af11580156133e1573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061340591906158dc565b905080613447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161343e906159b0565b60405180910390fd5b505b5f61345330611614565b90505f600c5482101590508080156134775750600e60029054906101000a900460ff165b80156134905750600860149054906101000a900460ff16155b80156134e25750601a5f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b8015613535575060185f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015613588575060185f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156135cb576001600860146101000a81548160ff0219169083151502179055506135b0613c73565b5f600860146101000a81548160ff0219169083151502179055505b5f600860149054906101000a900460ff1615905060185f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168061367a575060185f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15613683575f90505b5f811561388857601a5f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156136e157505f601254115b156137795761370e606461370060125488613e4d90919063ffffffff16565b613e6290919063ffffffff16565b9050601254601454826137219190614b2b565b61372b9190614b99565b60165f82825461373b91906148ba565b92505081905550601254601354826137539190614b2b565b61375d9190614b99565b60155f82825461376d91906148ba565b92505081905550613865565b601a5f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156137d057505f600f54115b15613864576137fd60646137ef600f5488613e4d90919063ffffffff16565b613e6290919063ffffffff16565b9050600f54601154826138109190614b2b565b61381a9190614b99565b60165f82825461382a91906148ba565b92505081905550600f54601054826138429190614b2b565b61384c9190614b99565b60155f82825461385c91906148ba565b925050819055505b5b5f811115613879576138788730836139fe565b5b808561388591906159ce565b94505b6138938787876139fe565b505050505b505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80601a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613a6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a6390615560565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ad1906155ee565b60405180910390fd5b613ae5838383613e77565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015613b68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613b5f90615a71565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254613bf691906148ba565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613c5a919061432c565b60405180910390a3613c6d848484613e7c565b50505050565b5f613c7d30611614565b90505f601654601554613c9091906148ba565b90505f80831480613ca057505f82145b15613cad57505050613e4b565b6014600c54613cbc9190614b2b565b831115613cd5576014600c54613cd29190614b2b565b92505b5f479050613ce284613e81565b5f613cf682476140b790919063ffffffff16565b90505f613d2085613d1260165485613e4d90919063ffffffff16565b613e6290919063ffffffff16565b90505f6015819055505f601681905550600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681604051613d7590615abc565b5f6040518083038185875af1925050503d805f8114613daf576040519150601f19603f3d011682016040523d82523d5f602084013e613db4565b606091505b50508094505060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613dff90615abc565b5f6040518083038185875af1925050503d805f8114613e39576040519150601f19603f3d011682016040523d82523d5f602084013e613e3e565b606091505b5050809450505050505050505b565b5f8183613e5a9190614b2b565b905092915050565b5f8183613e6f9190614b99565b905092915050565b505050565b505050565b5f600267ffffffffffffffff811115613e9d57613e9c614420565b5b604051908082528060200260200182016040528015613ecb5781602001602082028036833780820191505090505b50905030815f81518110613ee257613ee1614e01565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613f86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613faa9190615ae4565b81600181518110613fbe57613fbd614e01565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506140243060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612994565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401614086959493929190615bff565b5f604051808303815f87803b15801561409d575f80fd5b505af11580156140af573d5f803e3d5ffd5b505050505050565b5f81836140c491906159ce565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6140ef816140dd565b81146140f9575f80fd5b50565b5f8135905061410a816140e6565b92915050565b5f8060408385031215614126576141256140d5565b5b5f614133858286016140fc565b9250506020614144858286016140fc565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6141908261414e565b61419a8185614158565b93506141aa818560208601614168565b6141b381614176565b840191505092915050565b5f6020820190508181035f8301526141d68184614186565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f614207826141de565b9050919050565b614217816141fd565b8114614221575f80fd5b50565b5f813590506142328161420e565b92915050565b5f806040838503121561424e5761424d6140d5565b5b5f61425b85828601614224565b925050602061426c858286016140fc565b9150509250929050565b5f8115159050919050565b61428a81614276565b82525050565b5f6020820190506142a35f830184614281565b92915050565b5f819050919050565b5f6142cc6142c76142c2846141de565b6142a9565b6141de565b9050919050565b5f6142dd826142b2565b9050919050565b5f6142ee826142d3565b9050919050565b6142fe816142e4565b82525050565b5f6020820190506143175f8301846142f5565b92915050565b614326816140dd565b82525050565b5f60208201905061433f5f83018461431d565b92915050565b5f6020828403121561435a576143596140d5565b5b5f614367848285016140fc565b91505092915050565b5f805f60608486031215614387576143866140d5565b5b5f61439486828701614224565b93505060206143a586828701614224565b92505060406143b6868287016140fc565b9150509250925092565b5f60ff82169050919050565b6143d5816143c0565b82525050565b5f6020820190506143ee5f8301846143cc565b92915050565b6143fd816141fd565b82525050565b5f6020820190506144165f8301846143f4565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61445682614176565b810181811067ffffffffffffffff8211171561447557614474614420565b5b80604052505050565b5f6144876140cc565b9050614493828261444d565b919050565b6144a181614276565b81146144ab575f80fd5b50565b5f813590506144bc81614498565b92915050565b5f604082840312156144d7576144d661441c565b5b6144e1604061447e565b90505f6144f0848285016144ae565b5f83015250602061450384828501614224565b60208301525092915050565b5f604082840312156145245761452361441c565b5b61452e604061447e565b90505f61453d848285016144ae565b5f830152506020614550848285016140fc565b60208301525092915050565b5f805f805f806101808789031215614577576145766140d5565b5b5f61458489828a016144c2565b965050604061459589828a0161450f565b95505060806145a689828a0161450f565b94505060c06145b789828a016144c2565b9350506101006145c989828a0161450f565b9250506101406145db89828a0161450f565b9150509295509295509295565b5f602082840312156145fd576145fc6140d5565b5b5f61460a84828501614224565b91505092915050565b5f8060408385031215614629576146286140d5565b5b5f61463685828601614224565b9250506020614647858286016144ae565b9150509250929050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261467257614671614651565b5b8235905067ffffffffffffffff81111561468f5761468e614655565b5b6020830191508360208202830111156146ab576146aa614659565b5b9250929050565b5f805f604084860312156146c9576146c86140d5565b5b5f84013567ffffffffffffffff8111156146e6576146e56140d9565b5b6146f28682870161465d565b93509350506020614705868287016144ae565b9150509250925092565b5f60208284031215614724576147236140d5565b5b5f614731848285016144ae565b91505092915050565b614743816143c0565b811461474d575f80fd5b50565b5f8135905061475e8161473a565b92915050565b5f819050919050565b61477681614764565b8114614780575f80fd5b50565b5f813590506147918161476d565b92915050565b5f805f606084860312156147ae576147ad6140d5565b5b5f6147bb86828701614750565b93505060206147cc86828701614783565b92505060406147dd86828701614783565b9150509250925092565b5f80604083850312156147fd576147fc6140d5565b5b5f61480a85828601614224565b925050602061481b85828601614224565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f614859602083614158565b915061486482614825565b602082019050919050565b5f6020820190508181035f8301526148868161484d565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6148c4826140dd565b91506148cf836140dd565b92508282019050808211156148e7576148e661488d565b5b92915050565b7f4d757374206b656570206665657320617420323525206f72206c6573730000005f82015250565b5f614921601d83614158565b915061492c826148ed565b602082019050919050565b5f6020820190508181035f83015261494e81614915565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061499957607f821691505b6020821081036149ac576149ab614955565b5b50919050565b5f8160011c9050919050565b5f808291508390505b6001851115614a07578086048111156149e3576149e261488d565b5b60018516156149f25780820291505b8081029050614a00856149b2565b94506149c7565b94509492505050565b5f82614a1f5760019050614ada565b81614a2c575f9050614ada565b8160018114614a425760028114614a4c57614a7b565b6001915050614ada565b60ff841115614a5e57614a5d61488d565b5b8360020a915084821115614a7557614a7461488d565b5b50614ada565b5060208310610133831016604e8410600b8410161715614ab05782820a905083811115614aab57614aaa61488d565b5b614ada565b614abd84848460016149be565b92509050818404811115614ad457614ad361488d565b5b81810290505b9392505050565b5f614aeb826140dd565b9150614af6836143c0565b9250614b237fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484614a10565b905092915050565b5f614b35826140dd565b9150614b40836140dd565b9250828202614b4e816140dd565b91508282048414831517614b6557614b6461488d565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f614ba3826140dd565b9150614bae836140dd565b925082614bbe57614bbd614b6c565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e206c6f776572205f8201527f7468616e20302e31250000000000000000000000000000000000000000000000602082015250565b5f614c23602983614158565b9150614c2e82614bc9565b604082019050919050565b5f6020820190508181035f830152614c5081614c17565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f614cb1602883614158565b9150614cbc82614c57565b604082019050919050565b5f6020820190508181035f830152614cde81614ca5565b9050919050565b7f6275794d61726b6574696e674665652c2073656c6c4d61726b6574696e6746655f8201527f65206d757374206265207a65726f000000000000000000000000000000000000602082015250565b5f614d3f602e83614158565b9150614d4a82614ce5565b604082019050919050565b5f6020820190508181035f830152614d6c81614d33565b9050919050565b7f6275794465764665652c2073656c6c446576466565206d757374206265207a655f8201527f726f000000000000000000000000000000000000000000000000000000000000602082015250565b5f614dcd602283614158565b9150614dd882614d73565b604082019050919050565b5f6020820190508181035f830152614dfa81614dc1565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f614e88603983614158565b9150614e9382614e2e565b604082019050919050565b5f6020820190508181035f830152614eb581614e7c565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f614f16602583614158565b9150614f2182614ebc565b604082019050919050565b5f6020820190508181035f830152614f4381614f0a565b9050919050565b614f5381614764565b82525050565b5f60a082019050614f6c5f830188614f4a565b614f796020830187614f4a565b614f866040830186614f4a565b614f93606083018561431d565b614fa060808301846143f4565b9695505050505050565b5f606082019050614fbd5f830186614f4a565b614fca6020830185614f4a565b614fd7604083018461431d565b949350505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f61501d600283614fdf565b915061502882614fe9565b600282019050919050565b5f819050919050565b61504d61504882614764565b615033565b82525050565b5f61505d82615011565b9150615069828561503c565b602082019150615079828461503c565b6020820191508190509392505050565b5f60808201905061509c5f830187614f4a565b6150a960208301866143cc565b6150b66040830185614f4a565b6150c36060830184614f4a565b95945050505050565b7f496e76616c6964207369676e61747572650000000000000000000000000000005f82015250565b5f615100601183614158565b915061510b826150cc565b602082019050919050565b5f6020820190508181035f83015261512d816150f4565b9050919050565b7f496e76616c696420616e746920647261696e65720000000000000000000000005f82015250565b5f615168601483614158565b915061517382615134565b602082019050919050565b5f6020820190508181035f8301526151958161515c565b9050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e205f8201527f302e352500000000000000000000000000000000000000000000000000000000602082015250565b5f6151f6602483614158565b91506152018261519c565b604082019050919050565b5f6020820190508181035f830152615223816151ea565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e5f8201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b5f615284603583614158565b915061528f8261522a565b604082019050919050565b5f6020820190508181035f8301526152b181615278565b9050919050565b7f5377617020616d6f756e742063616e6e6f7420626520686967686572207468615f8201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b5f615312603483614158565b915061531d826152b8565b604082019050919050565b5f6020820190508181035f83015261533f81615306565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6153a0602683614158565b91506153ab82615346565b604082019050919050565b5f6020820190508181035f8301526153cd81615394565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61542e602483614158565b9150615439826153d4565b604082019050919050565b5f6020820190508181035f83015261545b81615422565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6154bc602283614158565b91506154c782615462565b604082019050919050565b5f6020820190508181035f8301526154e9816154b0565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61554a602583614158565b9150615555826154f0565b604082019050919050565b5f6020820190508181035f8301526155778161553e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6155d8602383614158565b91506155e38261557e565b604082019050919050565b5f6020820190508181035f830152615605816155cc565b9050919050565b7f5b66726f6d5d20626c61636b206c6973740000000000000000000000000000005f82015250565b5f615640601183614158565b915061564b8261560c565b602082019050919050565b5f6020820190508181035f83015261566d81615634565b9050919050565b7f5b746f5d20626c61636b206c69737400000000000000000000000000000000005f82015250565b5f6156a8600f83614158565b91506156b382615674565b602082019050919050565b5f6020820190508181035f8301526156d58161569c565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f615710601683614158565b915061571b826156dc565b602082019050919050565b5f6020820190508181035f83015261573d81615704565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61785472616e73616374696f6e2e0000000000000000000000000000000000602082015250565b5f61579e602f83614158565b91506157a982615744565b604082019050919050565b5f6020820190508181035f8301526157cb81615792565b9050919050565b7f4d61782077616c6c6574206578636565646564000000000000000000000000005f82015250565b5f615806601383614158565b9150615811826157d2565b602082019050919050565b5f6020820190508181035f830152615833816157fa565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61785472616e73616374696f6e2e00000000000000000000000000000000602082015250565b5f615894603083614158565b915061589f8261583a565b604082019050919050565b5f6020820190508181035f8301526158c181615888565b9050919050565b5f815190506158d681614498565b92915050565b5f602082840312156158f1576158f06140d5565b5b5f6158fe848285016158c8565b91505092915050565b5f60c08201905061591a5f8301896143f4565b61592760208301886143f4565b61593460408301876143f4565b615941606083018661431d565b61594e608083018561431d565b61595b60a083018461431d565b979650505050505050565b7f416e746920447261696e657220456e61626c65640000000000000000000000005f82015250565b5f61599a601483614158565b91506159a582615966565b602082019050919050565b5f6020820190508181035f8301526159c78161598e565b9050919050565b5f6159d8826140dd565b91506159e3836140dd565b92508282039050818111156159fb576159fa61488d565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f615a5b602683614158565b9150615a6682615a01565b604082019050919050565b5f6020820190508181035f830152615a8881615a4f565b9050919050565b5f81905092915050565b50565b5f615aa75f83615a8f565b9150615ab282615a99565b5f82019050919050565b5f615ac682615a9c565b9150819050919050565b5f81519050615ade8161420e565b92915050565b5f60208284031215615af957615af86140d5565b5b5f615b0684828501615ad0565b91505092915050565b5f819050919050565b5f615b32615b2d615b2884615b0f565b6142a9565b6140dd565b9050919050565b615b4281615b18565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b615b7a816141fd565b82525050565b5f615b8b8383615b71565b60208301905092915050565b5f602082019050919050565b5f615bad82615b48565b615bb78185615b52565b9350615bc283615b62565b805f5b83811015615bf2578151615bd98882615b80565b9750615be483615b97565b925050600181019050615bc5565b5085935050505092915050565b5f60a082019050615c125f83018861431d565b615c1f6020830187615b39565b8181036040830152615c318186615ba3565b9050615c4060608301856143f4565b615c4d608083018461431d565b969550505050505056fea2646970667358221220c36c11ba690196f63e5426c6c7d67826c462518ac3f2ac2d59f9e5445947ed2864736f6c63430008190033