ETH Price: $2,565.95 (+5.23%)
Gas: 0.58 Gwei

Token

Janet's Dog (JASPER)
 

Overview

Max Total Supply

1,000,000,000 JASPER

Holders

4

Transfers

-
0

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
UI Multiplier changes (based on UIMultiplierUpdated event). Displayed token amounts are scaled by the active multiplier.
Transaction Hash Block
Age
Multiplier Status
# Exchange Pair Price  24H Volume % Volume
Source Code Verified Exact Match

Contract Name

Contract

Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled
No with 200 runs
Other Settings
default evmVersion
License
None
Contract Source Code (Solidity)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"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":[],"name":"AutoNukeLP","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sniper","type":"address"}],"name":"BoughtEarly","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":[],"name":"ManualNukeLP","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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"devWalletUpdated","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":"_isExcludedMaxTransactionAmount","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":[{"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":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"isBlacklistedAccount","type":"bool"}],"name":"blacklistAccounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyDevFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyLiquidityFee","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":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"disableTransferDelay","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"earlySellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"earlySellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableEarlySellTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableTrading","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":"isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"maxTransactionAmount","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":"sellLiquidityFee","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":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setEarlySellTax","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":"tokensForLiquidity","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"}],"name":"updateBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateDevWallet","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":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_earlySellLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"_earlySellMarketingFee","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"},{"stateMutability":"payable","type":"receive"}]
60c06040526001600b60006101000a81548160ff0219169083151502179055506000600b60016101000a81548160ff0219169083151502179055506000600b60026101000a81548160ff0219169083151502179055506001600b60036101000a81548160ff0219169083151502179055506001600f60006101000a81548160ff0219169083151502179055503480156200009857600080fd5b506040518060400160405280600b81526020017f4a616e6574277320446f670000000000000000000000000000000000000000008152506040518060400160405280600681526020017f4a41535045520000000000000000000000000000000000000000000000000000815250816003908162000116919062000e21565b50806004908162000128919062000e21565b50505060006200013d6200067460201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d905073fd4a6c7ff637802ac740e6a03869c979bc6035e9600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073fd4a6c7ff637802ac740e6a03869c979bc6035e9600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002b28160016200067c60201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000332573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000358919062000f72565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003c0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003e6919062000f72565b6040518363ffffffff1660e01b81526004016200040592919062000fb5565b6020604051808303816000875af115801562000425573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200044b919062000f72565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506200049360a05160016200067c60201b60201c565b620004a860a05160016200077960201b60201c565b6000601e90506000806000601e905060008060008060006b033b2e3c9fd0803ce800000090506064600282620004df919062001011565b620004eb91906200108b565b600881905550606460028262000502919062001011565b6200050e91906200108b565b600a8190555061271060058262000526919062001011565b6200053291906200108b565b600981905550886011819055508760128190555086601381905550601354601254601154620005629190620010c3565b6200056e9190620010c3565b6010819055508560158190555084601681905550836017819055506017546016546015546200059e9190620010c3565b620005aa9190620010c3565b6014819055508260188190555081601981905550620005e0620005d26200081a60201b60201c565b60016200084460201b60201c565b620005f33060016200084460201b60201c565b6200060861dead60016200084460201b60201c565b6200062a6200061c6200081a60201b60201c565b60016200067c60201b60201c565b6200063d3060016200067c60201b60201c565b6200065261dead60016200067c60201b60201c565b6200066433826200099160201b60201c565b50505050505050505050620012cd565b600033905090565b6200068c6200067460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200071e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000715906200115f565b60405180910390fd5b80601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620008546200067460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614620008e6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008dd906200115f565b60405180910390fd5b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516200098591906200119e565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009fa906200120b565b60405180910390fd5b62000a176000838362000b3f60201b60201c565b62000a338160025462000b4460201b6200297b1790919060201c565b60028190555062000a91816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000b4460201b6200297b1790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000b3391906200123e565b60405180910390a35050565b505050565b600080828462000b559190620010c3565b90508381101562000b9d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b9490620012ab565b60405180910390fd5b8091505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000c2957607f821691505b60208210810362000c3f5762000c3e62000be1565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000ca97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000c6a565b62000cb5868362000c6a565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000d0262000cfc62000cf68462000ccd565b62000cd7565b62000ccd565b9050919050565b6000819050919050565b62000d1e8362000ce1565b62000d3662000d2d8262000d09565b84845462000c77565b825550505050565b600090565b62000d4d62000d3e565b62000d5a81848462000d13565b505050565b5b8181101562000d825762000d7660008262000d43565b60018101905062000d60565b5050565b601f82111562000dd15762000d9b8162000c45565b62000da68462000c5a565b8101602085101562000db6578190505b62000dce62000dc58562000c5a565b83018262000d5f565b50505b505050565b600082821c905092915050565b600062000df66000198460080262000dd6565b1980831691505092915050565b600062000e11838362000de3565b9150826002028217905092915050565b62000e2c8262000ba7565b67ffffffffffffffff81111562000e485762000e4762000bb2565b5b62000e54825462000c10565b62000e6182828562000d86565b600060209050601f83116001811462000e99576000841562000e84578287015190505b62000e90858262000e03565b86555062000f00565b601f19841662000ea98662000c45565b60005b8281101562000ed35784890151825560018201915060208501945060208101905062000eac565b8683101562000ef3578489015162000eef601f89168262000de3565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000f3a8262000f0d565b9050919050565b62000f4c8162000f2d565b811462000f5857600080fd5b50565b60008151905062000f6c8162000f41565b92915050565b60006020828403121562000f8b5762000f8a62000f08565b5b600062000f9b8482850162000f5b565b91505092915050565b62000faf8162000f2d565b82525050565b600060408201905062000fcc600083018562000fa4565b62000fdb602083018462000fa4565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200101e8262000ccd565b91506200102b8362000ccd565b92508282026200103b8162000ccd565b9150828204841483151762001055576200105462000fe2565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620010988262000ccd565b9150620010a58362000ccd565b925082620010b857620010b76200105c565b5b828204905092915050565b6000620010d08262000ccd565b9150620010dd8362000ccd565b9250828201905080821115620010f857620010f762000fe2565b5b92915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062001147602083620010fe565b915062001154826200110f565b602082019050919050565b600060208201905081810360008301526200117a8162001138565b9050919050565b60008115159050919050565b620011988162001181565b82525050565b6000602082019050620011b560008301846200118d565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620011f3601f83620010fe565b91506200120082620011bb565b602082019050919050565b600060208201905081810360008301526200122681620011e4565b9050919050565b620012388162000ccd565b82525050565b60006020820190506200125560008301846200122d565b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600062001293601b83620010fe565b9150620012a0826200125b565b602082019050919050565b60006020820190508181036000830152620012c68162001284565b9050919050565b60805160a051615ace620013246000396000818161134301528181611b8b015281816130420152613462015260008181610eed01528181612fea015281816141c4015281816142a501526142cc0152615ace6000f3fe6080604052600436106103905760003560e01c806392136913116101dc578063c024666811610102578063e2f45605116100a0578063f63743421161006f578063f637434214610d5f578063f8b45b0514610d8a578063fe575a8714610db5578063ff935af614610df257610397565b8063e2f4560514610cb5578063e884f26014610ce0578063f11a24d314610d0b578063f2fde38b14610d3657610397565b8063c8c8ebe4116100dc578063c8c8ebe414610be5578063d257b34f14610c10578063d85ba06314610c4d578063dd62ed3e14610c7857610397565b8063c024666814610b68578063c18bc19514610b91578063c876d0b914610bba57610397565b8063a0d82dc51161017a578063a9059cbb11610149578063a9059cbb14610a9a578063aacebbe314610ad7578063b62496f514610b00578063bbc0c74214610b3d57610397565b8063a0d82dc5146109de578063a265777814610a09578063a457c2d714610a32578063a4d15b6414610a6f57610397565b80639a7a23d6116101b65780639a7a23d6146109365780639c3b4fdc1461095f5780639ccf6e211461098a5780639fccce32146109b357610397565b806392136913146108b7578063924de9b7146108e257806395d89b411461090b57610397565b80634a62bb65116102c1578063751039fc1161025f5780638095d5641161022e5780638095d564146108215780638a8c523c1461084a5780638da5cb5b146108615780638ea5220f1461088c57610397565b8063751039fc146107775780637571336a146107a257806375f0a874146107cb5780637bce5a04146107f657610397565b80636a486a8e1161029b5780636a486a8e146106cd5780636ddd1713146106f857806370a0823114610723578063715018a61461076057610397565b80634a62bb651461063a5780634fbee19314610665578063541a43cf146106a257610397565b80631f3fed8f1161032e5780632bf3d42d116103085780632bf3d42d1461057c578063313ce567146105a757806339509351146105d257806349bd5a5e1461060f57610397565b80631f3fed8f146104eb578063203e727e1461051657806323b872dd1461053f57610397565b80631694505e1161036a5780631694505e1461044157806318160ddd1461046c5780631816467f146104975780631a8145bb146104c057610397565b806306fdde031461039c578063095ea7b3146103c757806310d5de531461040457610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103b1610e1b565b6040516103be9190614455565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e9919061451f565b610ead565b6040516103fb919061457a565b60405180910390f35b34801561041057600080fd5b5061042b60048036038101906104269190614595565b610ecb565b604051610438919061457a565b60405180910390f35b34801561044d57600080fd5b50610456610eeb565b6040516104639190614621565b60405180910390f35b34801561047857600080fd5b50610481610f0f565b60405161048e919061464b565b60405180910390f35b3480156104a357600080fd5b506104be60048036038101906104b99190614595565b610f19565b005b3480156104cc57600080fd5b506104d5611070565b6040516104e2919061464b565b60405180910390f35b3480156104f757600080fd5b50610500611076565b60405161050d919061464b565b60405180910390f35b34801561052257600080fd5b5061053d60048036038101906105389190614666565b61107c565b005b34801561054b57600080fd5b5061056660048036038101906105619190614693565b6111a6565b604051610573919061457a565b60405180910390f35b34801561058857600080fd5b5061059161127f565b60405161059e919061464b565b60405180910390f35b3480156105b357600080fd5b506105bc611285565b6040516105c99190614702565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f4919061451f565b61128e565b604051610606919061457a565b60405180910390f35b34801561061b57600080fd5b50610624611341565b604051610631919061472c565b60405180910390f35b34801561064657600080fd5b5061064f611365565b60405161065c919061457a565b60405180910390f35b34801561067157600080fd5b5061068c60048036038101906106879190614595565b611378565b604051610699919061457a565b60405180910390f35b3480156106ae57600080fd5b506106b76113ce565b6040516106c4919061464b565b60405180910390f35b3480156106d957600080fd5b506106e26113d4565b6040516106ef919061464b565b60405180910390f35b34801561070457600080fd5b5061070d6113da565b60405161071a919061457a565b60405180910390f35b34801561072f57600080fd5b5061074a60048036038101906107459190614595565b6113ed565b604051610757919061464b565b60405180910390f35b34801561076c57600080fd5b50610775611435565b005b34801561078357600080fd5b5061078c61158d565b604051610799919061457a565b60405180910390f35b3480156107ae57600080fd5b506107c960048036038101906107c49190614773565b611648565b005b3480156107d757600080fd5b506107e061173a565b6040516107ed919061472c565b60405180910390f35b34801561080257600080fd5b5061080b611760565b604051610818919061464b565b60405180910390f35b34801561082d57600080fd5b50610848600480360381019061084391906147b3565b611766565b005b34801561085657600080fd5b5061085f611880565b005b34801561086d57600080fd5b50610876611956565b604051610883919061472c565b60405180910390f35b34801561089857600080fd5b506108a1611980565b6040516108ae919061472c565b60405180910390f35b3480156108c357600080fd5b506108cc6119a6565b6040516108d9919061464b565b60405180910390f35b3480156108ee57600080fd5b5061090960048036038101906109049190614806565b6119ac565b005b34801561091757600080fd5b50610920611a60565b60405161092d9190614455565b60405180910390f35b34801561094257600080fd5b5061095d60048036038101906109589190614773565b611af2565b005b34801561096b57600080fd5b50610974611c25565b604051610981919061464b565b60405180910390f35b34801561099657600080fd5b506109b160048036038101906109ac919061497b565b611c2b565b005b3480156109bf57600080fd5b506109c8611d9b565b6040516109d5919061464b565b60405180910390f35b3480156109ea57600080fd5b506109f3611da1565b604051610a00919061464b565b60405180910390f35b348015610a1557600080fd5b50610a306004803603810190610a2b9190614806565b611da7565b005b348015610a3e57600080fd5b50610a596004803603810190610a54919061451f565b611e5b565b604051610a66919061457a565b60405180910390f35b348015610a7b57600080fd5b50610a84611f28565b604051610a91919061457a565b60405180910390f35b348015610aa657600080fd5b50610ac16004803603810190610abc919061451f565b611f3b565b604051610ace919061457a565b60405180910390f35b348015610ae357600080fd5b50610afe6004803603810190610af99190614595565b611f59565b005b348015610b0c57600080fd5b50610b276004803603810190610b229190614595565b6120b0565b604051610b34919061457a565b60405180910390f35b348015610b4957600080fd5b50610b526120cf565b604051610b5f919061457a565b60405180910390f35b348015610b7457600080fd5b50610b8f6004803603810190610b8a9190614773565b6120e2565b005b348015610b9d57600080fd5b50610bb86004803603810190610bb39190614666565b612222565b005b348015610bc657600080fd5b50610bcf61234c565b604051610bdc919061457a565b60405180910390f35b348015610bf157600080fd5b50610bfa61235f565b604051610c07919061464b565b60405180910390f35b348015610c1c57600080fd5b50610c376004803603810190610c329190614666565b612365565b604051610c44919061457a565b60405180910390f35b348015610c5957600080fd5b50610c626124d5565b604051610c6f919061464b565b60405180910390f35b348015610c8457600080fd5b50610c9f6004803603810190610c9a91906149d7565b6124db565b604051610cac919061464b565b60405180910390f35b348015610cc157600080fd5b50610cca612562565b604051610cd7919061464b565b60405180910390f35b348015610cec57600080fd5b50610cf5612568565b604051610d02919061457a565b60405180910390f35b348015610d1757600080fd5b50610d20612623565b604051610d2d919061464b565b60405180910390f35b348015610d4257600080fd5b50610d5d6004803603810190610d589190614595565b612629565b005b348015610d6b57600080fd5b50610d746127ef565b604051610d81919061464b565b60405180910390f35b348015610d9657600080fd5b50610d9f6127f5565b604051610dac919061464b565b60405180910390f35b348015610dc157600080fd5b50610ddc6004803603810190610dd79190614595565b6127fb565b604051610de9919061457a565b60405180910390f35b348015610dfe57600080fd5b50610e196004803603810190610e149190614a17565b612851565b005b606060038054610e2a90614ac1565b80601f0160208091040260200160405190810160405280929190818152602001828054610e5690614ac1565b8015610ea35780601f10610e7857610100808354040283529160200191610ea3565b820191906000526020600020905b815481529060010190602001808311610e8657829003601f168201915b5050505050905090565b6000610ec1610eba6129d9565b84846129e1565b6001905092915050565b601f6020528060005260406000206000915054906101000a900460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b610f216129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa790614b3e565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f90b8024c4923d3873ff5b9fcb43d0360d4b9217fa41225d07ba379993552e74360405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601b5481565b601a5481565b6110846129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611113576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110a90614b3e565b60405180910390fd5b670de0b6b3a76400006103e86005611129610f0f565b6111339190614b8d565b61113d9190614bfe565b6111479190614bfe565b811015611189576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118090614ca1565b60405180910390fd5b670de0b6b3a76400008161119d9190614b8d565b60088190555050565b60006111b3848484612baa565b611274846111bf6129d9565b61126f85604051806060016040528060288152602001615a4c60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006112256129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6129e1565b600190509392505050565b60195481565b60006012905090565b600061133761129b6129d9565b8461133285600160006112ac6129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461297b90919063ffffffff16565b6129e1565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600b60009054906101000a900460ff1681565b6000601e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60185481565b60145481565b600b60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61143d6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c390614b3e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006115976129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161d90614b3e565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001905090565b6116506129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d690614b3e565b60405180910390fd5b80601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115481565b61176e6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f490614b3e565b60405180910390fd5b8260118190555081601281905550806013819055506013546012546011546118259190614cc1565b61182f9190614cc1565b6010819055506032601054111561187b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187290614d41565b60405180910390fd5b505050565b6118886129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611917576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190e90614b3e565b60405180910390fd5b6001600b60016101000a81548160ff0219169083151502179055506001600b60026101000a81548160ff02191690831515021790555043601d81905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60155481565b6119b46129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3a90614b3e565b60405180910390fd5b80600b60026101000a81548160ff02191690831515021790555050565b606060048054611a6f90614ac1565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9b90614ac1565b8015611ae85780601f10611abd57610100808354040283529160200191611ae8565b820191906000526020600020905b815481529060010190602001808311611acb57829003601f168201915b5050505050905090565b611afa6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8090614b3e565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0e90614dd3565b60405180910390fd5b611c218282613a9c565b5050565b60135481565b611c336129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611cc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb990614b3e565b60405180910390fd5b6000825111611d06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cfd90614e3f565b60405180910390fd5b60005b8251811015611d965781600e6000858481518110611d2a57611d29614e5f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611d8e90614e8e565b915050611d09565b505050565b601c5481565b60175481565b611daf6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3590614b3e565b60405180910390fd5b80600b60036101000a81548160ff02191690831515021790555050565b6000611f1e611e686129d9565b84611f1985604051806060016040528060258152602001615a746025913960016000611e926129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6129e1565b6001905092915050565b600b60039054906101000a900460ff1681565b6000611f4f611f486129d9565b8484612baa565b6001905092915050565b611f616129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ff0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe790614b3e565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b602080528060005260406000206000915054906101000a900460ff1681565b600b60019054906101000a900460ff1681565b6120ea6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612179576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161217090614b3e565b60405180910390fd5b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051612216919061457a565b60405180910390a25050565b61222a6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b090614b3e565b60405180910390fd5b670de0b6b3a76400006103e8600f6122cf610f0f565b6122d99190614b8d565b6122e39190614bfe565b6122ed9190614bfe565b81101561232f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232690614f48565b60405180910390fd5b670de0b6b3a7640000816123439190614b8d565b600a8190555050565b600f60009054906101000a900460ff1681565b60085481565b600061236f6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146123fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f590614b3e565b60405180910390fd5b620186a0600161240c610f0f565b6124169190614b8d565b6124209190614bfe565b821015612462576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161245990614fda565b60405180910390fd5b6103e8600561246f610f0f565b6124799190614b8d565b6124839190614bfe565b8211156124c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124bc9061506c565b60405180910390fd5b8160098190555060019050919050565b60105481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60095481565b60006125726129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612601576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f890614b3e565b60405180910390fd5b6000600f60006101000a81548160ff0219169083151502179055506001905090565b60125481565b6126316129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146126c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126b790614b3e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361272f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612726906150fe565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60165481565b600a5481565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6128596129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146128e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128df90614b3e565b60405180910390fd5b846015819055508360168190555082601781905550816018819055508060198190555060175460165460155461291e9190614cc1565b6129289190614cc1565b60148190555060636014541115612974576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161296b9061516a565b60405180910390fd5b5050505050565b600080828461298a9190614cc1565b9050838110156129cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c6906151d6565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a4790615268565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612abf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab6906152fa565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612b9d919061464b565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c109061538c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7f9061541e565b60405180910390fd5b600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612d2c5750600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b612d6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d62906154b0565b60405180910390fd5b60008103612d8457612d7f83836000613b3d565b613a33565b600b60009054906101000a900460ff161561344757612da1611956565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612e0f5750612ddf611956565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e485750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e82575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e9b5750600560149054906101000a900460ff16155b1561344657600b60019054906101000a900460ff16612f9557601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612f555750601e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612f94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f8b9061551c565b60405180910390fd5b5b600f60009054906101000a900460ff161561315d57612fb2611956565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561303957507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561309157507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561315c5743600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410613117576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161310e906155d4565b60405180910390fd5b43600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156132005750601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156132a75760085481111561324a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161324190615666565b60405180910390fd5b600a54613256836113ed565b826132619190614cc1565b11156132a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613299906156d2565b60405180910390fd5b613445565b602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561334a5750601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561339957600854811115613394576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161338b90615764565b60405180910390fd5b613444565b601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661344357600a546133f6836113ed565b826134019190614cc1565b1115613442576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613439906156d2565b60405180910390fd5b5b5b5b5b5b6000601d546134569190614cc1565b43111580156134b157507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156134fd5750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561355b576000600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b6000613566306113ed565b90506000600954821015905080801561358b5750600b60029054906101000a900460ff165b80156135a45750600560149054906101000a900460ff16155b80156135fa5750602060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136505750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136a65750601e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156136ea576001600560146101000a81548160ff0219169083151502179055506136ce613dd0565b6000600560146101000a81548160ff0219169083151502179055505b6000600560149054906101000a900460ff16159050601e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806137a05750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156137aa57600090505b60008115613a2357602060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561380d57506000601454115b156138da5761383a606461382c6014548861401290919063ffffffff16565b61408c90919063ffffffff16565b90506014546016548261384d9190614b8d565b6138579190614bfe565b601b60008282546138689190614cc1565b92505081905550601454601754826138809190614b8d565b61388a9190614bfe565b601c600082825461389b9190614cc1565b92505081905550601454601554826138b39190614b8d565b6138bd9190614bfe565b601a60008282546138ce9190614cc1565b925050819055506139ff565b602060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561393557506000601054115b156139fe5761396260646139546010548861401290919063ffffffff16565b61408c90919063ffffffff16565b9050601054601254826139759190614b8d565b61397f9190614bfe565b601b60008282546139909190614cc1565b92505081905550601054601354826139a89190614b8d565b6139b29190614bfe565b601c60008282546139c39190614cc1565b92505081905550601054601154826139db9190614b8d565b6139e59190614bfe565b601a60008282546139f69190614cc1565b925050819055505b5b6000811115613a1457613a13873083613b3d565b5b8085613a209190615784565b94505b613a2e878787613b3d565b505050505b505050565b6000838311158290613a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a779190614455565b60405180910390fd5b5060008385613a8f9190615784565b9050809150509392505050565b80602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613bac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ba39061538c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c129061541e565b60405180910390fd5b613c268383836140d6565b613c9181604051806060016040528060268152602001615a26602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613d24816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461297b90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613dc3919061464b565b60405180910390a3505050565b6000613ddb306113ed565b90506000601c54601a54601b54613df29190614cc1565b613dfc9190614cc1565b9050600080831480613e0e5750600082145b15613e1b57505050614010565b6014600954613e2a9190614b8d565b831115613e43576014600954613e409190614b8d565b92505b6000600283601b5486613e569190614b8d565b613e609190614bfe565b613e6a9190614bfe565b90506000613e8182866140db90919063ffffffff16565b90506000479050613e9182614125565b6000613ea682476140db90919063ffffffff16565b90506000613ed187613ec3601c548561401290919063ffffffff16565b61408c90919063ffffffff16565b90506000601b819055506000601a819055506000601c81905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681604051613f31906157e9565b60006040518083038185875af1925050503d8060008114613f6e576040519150601f19603f3d011682016040523d82523d6000602084013e613f73565b606091505b505080965050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613fbf906157e9565b60006040518083038185875af1925050503d8060008114613ffc576040519150601f19603f3d011682016040523d82523d6000602084013e614001565b606091505b50508096505050505050505050505b565b60008083036140245760009050614086565b600082846140329190614b8d565b90508284826140419190614bfe565b14614081576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161407890615870565b60405180910390fd5b809150505b92915050565b60006140ce83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614362565b905092915050565b505050565b600061411d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613a38565b905092915050565b6000600267ffffffffffffffff81111561414257614141614838565b5b6040519080825280602002602001820160405280156141705781602001602082028036833780820191505090505b509050308160008151811061418857614187614e5f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561422d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061425191906158a5565b8160018151811061426557614264614e5f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506142ca307f0000000000000000000000000000000000000000000000000000000000000000846129e1565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161432c9594939291906159cb565b600060405180830381600087803b15801561434657600080fd5b505af115801561435a573d6000803e3d6000fd5b505050505050565b600080831182906143a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016143a09190614455565b60405180910390fd5b50600083856143b89190614bfe565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156143ff5780820151818401526020810190506143e4565b60008484015250505050565b6000601f19601f8301169050919050565b6000614427826143c5565b61443181856143d0565b93506144418185602086016143e1565b61444a8161440b565b840191505092915050565b6000602082019050818103600083015261446f818461441c565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006144b68261448b565b9050919050565b6144c6816144ab565b81146144d157600080fd5b50565b6000813590506144e3816144bd565b92915050565b6000819050919050565b6144fc816144e9565b811461450757600080fd5b50565b600081359050614519816144f3565b92915050565b6000806040838503121561453657614535614481565b5b6000614544858286016144d4565b92505060206145558582860161450a565b9150509250929050565b60008115159050919050565b6145748161455f565b82525050565b600060208201905061458f600083018461456b565b92915050565b6000602082840312156145ab576145aa614481565b5b60006145b9848285016144d4565b91505092915050565b6000819050919050565b60006145e76145e26145dd8461448b565b6145c2565b61448b565b9050919050565b60006145f9826145cc565b9050919050565b600061460b826145ee565b9050919050565b61461b81614600565b82525050565b60006020820190506146366000830184614612565b92915050565b614645816144e9565b82525050565b6000602082019050614660600083018461463c565b92915050565b60006020828403121561467c5761467b614481565b5b600061468a8482850161450a565b91505092915050565b6000806000606084860312156146ac576146ab614481565b5b60006146ba868287016144d4565b93505060206146cb868287016144d4565b92505060406146dc8682870161450a565b9150509250925092565b600060ff82169050919050565b6146fc816146e6565b82525050565b600060208201905061471760008301846146f3565b92915050565b614726816144ab565b82525050565b6000602082019050614741600083018461471d565b92915050565b6147508161455f565b811461475b57600080fd5b50565b60008135905061476d81614747565b92915050565b6000806040838503121561478a57614789614481565b5b6000614798858286016144d4565b92505060206147a98582860161475e565b9150509250929050565b6000806000606084860312156147cc576147cb614481565b5b60006147da8682870161450a565b93505060206147eb8682870161450a565b92505060406147fc8682870161450a565b9150509250925092565b60006020828403121561481c5761481b614481565b5b600061482a8482850161475e565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6148708261440b565b810181811067ffffffffffffffff8211171561488f5761488e614838565b5b80604052505050565b60006148a2614477565b90506148ae8282614867565b919050565b600067ffffffffffffffff8211156148ce576148cd614838565b5b602082029050602081019050919050565b600080fd5b60006148f76148f2846148b3565b614898565b9050808382526020820190506020840283018581111561491a576149196148df565b5b835b81811015614943578061492f88826144d4565b84526020840193505060208101905061491c565b5050509392505050565b600082601f83011261496257614961614833565b5b81356149728482602086016148e4565b91505092915050565b6000806040838503121561499257614991614481565b5b600083013567ffffffffffffffff8111156149b0576149af614486565b5b6149bc8582860161494d565b92505060206149cd8582860161475e565b9150509250929050565b600080604083850312156149ee576149ed614481565b5b60006149fc858286016144d4565b9250506020614a0d858286016144d4565b9150509250929050565b600080600080600060a08688031215614a3357614a32614481565b5b6000614a418882890161450a565b9550506020614a528882890161450a565b9450506040614a638882890161450a565b9350506060614a748882890161450a565b9250506080614a858882890161450a565b9150509295509295909350565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614ad957607f821691505b602082108103614aec57614aeb614a92565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614b286020836143d0565b9150614b3382614af2565b602082019050919050565b60006020820190508181036000830152614b5781614b1b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614b98826144e9565b9150614ba3836144e9565b9250828202614bb1816144e9565b91508282048414831517614bc857614bc7614b5e565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614c09826144e9565b9150614c14836144e9565b925082614c2457614c23614bcf565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060008201527f6c6f776572207468616e20302e35250000000000000000000000000000000000602082015250565b6000614c8b602f836143d0565b9150614c9682614c2f565b604082019050919050565b60006020820190508181036000830152614cba81614c7e565b9050919050565b6000614ccc826144e9565b9150614cd7836144e9565b9250828201905080821115614cef57614cee614b5e565b5b92915050565b7f4d757374206b656570206665657320617420353025206f72206c657373000000600082015250565b6000614d2b601d836143d0565b9150614d3682614cf5565b602082019050919050565b60006020820190508181036000830152614d5a81614d1e565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b6000614dbd6039836143d0565b9150614dc882614d61565b604082019050919050565b60006020820190508181036000830152614dec81614db0565b9050919050565b7f4163636f756e7473206c6973742063616e6e6f7420626520656d7074792e0000600082015250565b6000614e29601e836143d0565b9150614e3482614df3565b602082019050919050565b60006020820190508181036000830152614e5881614e1c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614e99826144e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614ecb57614eca614b5e565b5b600182019050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f312e352500000000000000000000000000000000000000000000000000000000602082015250565b6000614f326024836143d0565b9150614f3d82614ed6565b604082019050919050565b60006020820190508181036000830152614f6181614f25565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b6000614fc46035836143d0565b9150614fcf82614f68565b604082019050919050565b60006020820190508181036000830152614ff381614fb7565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b60006150566034836143d0565b915061506182614ffa565b604082019050919050565b6000602082019050818103600083015261508581615049565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006150e86026836143d0565b91506150f38261508c565b604082019050919050565b60006020820190508181036000830152615117816150db565b9050919050565b7f4d757374206b656570206665657320617420393925206f72206c657373000000600082015250565b6000615154601d836143d0565b915061515f8261511e565b602082019050919050565b6000602082019050818103600083015261518381615147565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006151c0601b836143d0565b91506151cb8261518a565b602082019050919050565b600060208201905081810360008301526151ef816151b3565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006152526024836143d0565b915061525d826151f6565b604082019050919050565b6000602082019050818103600083015261528181615245565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006152e46022836143d0565b91506152ef82615288565b604082019050919050565b60006020820190508181036000830152615313816152d7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006153766025836143d0565b91506153818261531a565b604082019050919050565b600060208201905081810360008301526153a581615369565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006154086023836143d0565b9150615413826153ac565b604082019050919050565b60006020820190508181036000830152615437816153fb565b9050919050565b7f596f752068617665206265656e20626c61636b6c69737465642066726f6d207460008201527f72616e73666572696e6720746f6b656e73000000000000000000000000000000602082015250565b600061549a6031836143d0565b91506154a58261543e565b604082019050919050565b600060208201905081810360008301526154c98161548d565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006155066016836143d0565b9150615511826154d0565b602082019050919050565b60006020820190508181036000830152615535816154f9565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006155be6049836143d0565b91506155c98261553c565b606082019050919050565b600060208201905081810360008301526155ed816155b1565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b60006156506035836143d0565b915061565b826155f4565b604082019050919050565b6000602082019050818103600083015261567f81615643565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b60006156bc6013836143d0565b91506156c782615686565b602082019050919050565b600060208201905081810360008301526156eb816156af565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b600061574e6036836143d0565b9150615759826156f2565b604082019050919050565b6000602082019050818103600083015261577d81615741565b9050919050565b600061578f826144e9565b915061579a836144e9565b92508282039050818111156157b2576157b1614b5e565b5b92915050565b600081905092915050565b50565b60006157d36000836157b8565b91506157de826157c3565b600082019050919050565b60006157f4826157c6565b9150819050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061585a6021836143d0565b9150615865826157fe565b604082019050919050565b600060208201905081810360008301526158898161584d565b9050919050565b60008151905061589f816144bd565b92915050565b6000602082840312156158bb576158ba614481565b5b60006158c984828501615890565b91505092915050565b6000819050919050565b60006158f76158f26158ed846158d2565b6145c2565b6144e9565b9050919050565b615907816158dc565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615942816144ab565b82525050565b60006159548383615939565b60208301905092915050565b6000602082019050919050565b60006159788261590d565b6159828185615918565b935061598d83615929565b8060005b838110156159be5781516159a58882615948565b97506159b083615960565b925050600181019050615991565b5085935050505092915050565b600060a0820190506159e0600083018861463c565b6159ed60208301876158fe565b81810360408301526159ff818661596d565b9050615a0e606083018561471d565b615a1b608083018461463c565b969550505050505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212205c6c2658c5229c79555fe9f2b4f4c4cc795d7290d3c6b1f8a51bf0de2ec1676c64736f6c63430008110033
Deployed Bytecode
0x6080604052600436106103905760003560e01c806392136913116101dc578063c024666811610102578063e2f45605116100a0578063f63743421161006f578063f637434214610d5f578063f8b45b0514610d8a578063fe575a8714610db5578063ff935af614610df257610397565b8063e2f4560514610cb5578063e884f26014610ce0578063f11a24d314610d0b578063f2fde38b14610d3657610397565b8063c8c8ebe4116100dc578063c8c8ebe414610be5578063d257b34f14610c10578063d85ba06314610c4d578063dd62ed3e14610c7857610397565b8063c024666814610b68578063c18bc19514610b91578063c876d0b914610bba57610397565b8063a0d82dc51161017a578063a9059cbb11610149578063a9059cbb14610a9a578063aacebbe314610ad7578063b62496f514610b00578063bbc0c74214610b3d57610397565b8063a0d82dc5146109de578063a265777814610a09578063a457c2d714610a32578063a4d15b6414610a6f57610397565b80639a7a23d6116101b65780639a7a23d6146109365780639c3b4fdc1461095f5780639ccf6e211461098a5780639fccce32146109b357610397565b806392136913146108b7578063924de9b7146108e257806395d89b411461090b57610397565b80634a62bb65116102c1578063751039fc1161025f5780638095d5641161022e5780638095d564146108215780638a8c523c1461084a5780638da5cb5b146108615780638ea5220f1461088c57610397565b8063751039fc146107775780637571336a146107a257806375f0a874146107cb5780637bce5a04146107f657610397565b80636a486a8e1161029b5780636a486a8e146106cd5780636ddd1713146106f857806370a0823114610723578063715018a61461076057610397565b80634a62bb651461063a5780634fbee19314610665578063541a43cf146106a257610397565b80631f3fed8f1161032e5780632bf3d42d116103085780632bf3d42d1461057c578063313ce567146105a757806339509351146105d257806349bd5a5e1461060f57610397565b80631f3fed8f146104eb578063203e727e1461051657806323b872dd1461053f57610397565b80631694505e1161036a5780631694505e1461044157806318160ddd1461046c5780631816467f146104975780631a8145bb146104c057610397565b806306fdde031461039c578063095ea7b3146103c757806310d5de531461040457610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103b1610e1b565b6040516103be9190614455565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e9919061451f565b610ead565b6040516103fb919061457a565b60405180910390f35b34801561041057600080fd5b5061042b60048036038101906104269190614595565b610ecb565b604051610438919061457a565b60405180910390f35b34801561044d57600080fd5b50610456610eeb565b6040516104639190614621565b60405180910390f35b34801561047857600080fd5b50610481610f0f565b60405161048e919061464b565b60405180910390f35b3480156104a357600080fd5b506104be60048036038101906104b99190614595565b610f19565b005b3480156104cc57600080fd5b506104d5611070565b6040516104e2919061464b565b60405180910390f35b3480156104f757600080fd5b50610500611076565b60405161050d919061464b565b60405180910390f35b34801561052257600080fd5b5061053d60048036038101906105389190614666565b61107c565b005b34801561054b57600080fd5b5061056660048036038101906105619190614693565b6111a6565b604051610573919061457a565b60405180910390f35b34801561058857600080fd5b5061059161127f565b60405161059e919061464b565b60405180910390f35b3480156105b357600080fd5b506105bc611285565b6040516105c99190614702565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f4919061451f565b61128e565b604051610606919061457a565b60405180910390f35b34801561061b57600080fd5b50610624611341565b604051610631919061472c565b60405180910390f35b34801561064657600080fd5b5061064f611365565b60405161065c919061457a565b60405180910390f35b34801561067157600080fd5b5061068c60048036038101906106879190614595565b611378565b604051610699919061457a565b60405180910390f35b3480156106ae57600080fd5b506106b76113ce565b6040516106c4919061464b565b60405180910390f35b3480156106d957600080fd5b506106e26113d4565b6040516106ef919061464b565b60405180910390f35b34801561070457600080fd5b5061070d6113da565b60405161071a919061457a565b60405180910390f35b34801561072f57600080fd5b5061074a60048036038101906107459190614595565b6113ed565b604051610757919061464b565b60405180910390f35b34801561076c57600080fd5b50610775611435565b005b34801561078357600080fd5b5061078c61158d565b604051610799919061457a565b60405180910390f35b3480156107ae57600080fd5b506107c960048036038101906107c49190614773565b611648565b005b3480156107d757600080fd5b506107e061173a565b6040516107ed919061472c565b60405180910390f35b34801561080257600080fd5b5061080b611760565b604051610818919061464b565b60405180910390f35b34801561082d57600080fd5b50610848600480360381019061084391906147b3565b611766565b005b34801561085657600080fd5b5061085f611880565b005b34801561086d57600080fd5b50610876611956565b604051610883919061472c565b60405180910390f35b34801561089857600080fd5b506108a1611980565b6040516108ae919061472c565b60405180910390f35b3480156108c357600080fd5b506108cc6119a6565b6040516108d9919061464b565b60405180910390f35b3480156108ee57600080fd5b5061090960048036038101906109049190614806565b6119ac565b005b34801561091757600080fd5b50610920611a60565b60405161092d9190614455565b60405180910390f35b34801561094257600080fd5b5061095d60048036038101906109589190614773565b611af2565b005b34801561096b57600080fd5b50610974611c25565b604051610981919061464b565b60405180910390f35b34801561099657600080fd5b506109b160048036038101906109ac919061497b565b611c2b565b005b3480156109bf57600080fd5b506109c8611d9b565b6040516109d5919061464b565b60405180910390f35b3480156109ea57600080fd5b506109f3611da1565b604051610a00919061464b565b60405180910390f35b348015610a1557600080fd5b50610a306004803603810190610a2b9190614806565b611da7565b005b348015610a3e57600080fd5b50610a596004803603810190610a54919061451f565b611e5b565b604051610a66919061457a565b60405180910390f35b348015610a7b57600080fd5b50610a84611f28565b604051610a91919061457a565b60405180910390f35b348015610aa657600080fd5b50610ac16004803603810190610abc919061451f565b611f3b565b604051610ace919061457a565b60405180910390f35b348015610ae357600080fd5b50610afe6004803603810190610af99190614595565b611f59565b005b348015610b0c57600080fd5b50610b276004803603810190610b229190614595565b6120b0565b604051610b34919061457a565b60405180910390f35b348015610b4957600080fd5b50610b526120cf565b604051610b5f919061457a565b60405180910390f35b348015610b7457600080fd5b50610b8f6004803603810190610b8a9190614773565b6120e2565b005b348015610b9d57600080fd5b50610bb86004803603810190610bb39190614666565b612222565b005b348015610bc657600080fd5b50610bcf61234c565b604051610bdc919061457a565b60405180910390f35b348015610bf157600080fd5b50610bfa61235f565b604051610c07919061464b565b60405180910390f35b348015610c1c57600080fd5b50610c376004803603810190610c329190614666565b612365565b604051610c44919061457a565b60405180910390f35b348015610c5957600080fd5b50610c626124d5565b604051610c6f919061464b565b60405180910390f35b348015610c8457600080fd5b50610c9f6004803603810190610c9a91906149d7565b6124db565b604051610cac919061464b565b60405180910390f35b348015610cc157600080fd5b50610cca612562565b604051610cd7919061464b565b60405180910390f35b348015610cec57600080fd5b50610cf5612568565b604051610d02919061457a565b60405180910390f35b348015610d1757600080fd5b50610d20612623565b604051610d2d919061464b565b60405180910390f35b348015610d4257600080fd5b50610d5d6004803603810190610d589190614595565b612629565b005b348015610d6b57600080fd5b50610d746127ef565b604051610d81919061464b565b60405180910390f35b348015610d9657600080fd5b50610d9f6127f5565b604051610dac919061464b565b60405180910390f35b348015610dc157600080fd5b50610ddc6004803603810190610dd79190614595565b6127fb565b604051610de9919061457a565b60405180910390f35b348015610dfe57600080fd5b50610e196004803603810190610e149190614a17565b612851565b005b606060038054610e2a90614ac1565b80601f0160208091040260200160405190810160405280929190818152602001828054610e5690614ac1565b8015610ea35780601f10610e7857610100808354040283529160200191610ea3565b820191906000526020600020905b815481529060010190602001808311610e8657829003601f168201915b5050505050905090565b6000610ec1610eba6129d9565b84846129e1565b6001905092915050565b601f6020528060005260406000206000915054906101000a900460ff1681565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6000600254905090565b610f216129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa790614b3e565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f90b8024c4923d3873ff5b9fcb43d0360d4b9217fa41225d07ba379993552e74360405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601b5481565b601a5481565b6110846129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611113576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110a90614b3e565b60405180910390fd5b670de0b6b3a76400006103e86005611129610f0f565b6111339190614b8d565b61113d9190614bfe565b6111479190614bfe565b811015611189576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118090614ca1565b60405180910390fd5b670de0b6b3a76400008161119d9190614b8d565b60088190555050565b60006111b3848484612baa565b611274846111bf6129d9565b61126f85604051806060016040528060288152602001615a4c60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006112256129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6129e1565b600190509392505050565b60195481565b60006012905090565b600061133761129b6129d9565b8461133285600160006112ac6129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461297b90919063ffffffff16565b6129e1565b6001905092915050565b7f000000000000000000000000655083d68a14325087130cc76b8b0a5b6a2a763781565b600b60009054906101000a900460ff1681565b6000601e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60185481565b60145481565b600b60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61143d6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c390614b3e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006115976129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161d90614b3e565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001905090565b6116506129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d690614b3e565b60405180910390fd5b80601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115481565b61176e6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f490614b3e565b60405180910390fd5b8260118190555081601281905550806013819055506013546012546011546118259190614cc1565b61182f9190614cc1565b6010819055506032601054111561187b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187290614d41565b60405180910390fd5b505050565b6118886129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611917576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190e90614b3e565b60405180910390fd5b6001600b60016101000a81548160ff0219169083151502179055506001600b60026101000a81548160ff02191690831515021790555043601d81905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60155481565b6119b46129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3a90614b3e565b60405180910390fd5b80600b60026101000a81548160ff02191690831515021790555050565b606060048054611a6f90614ac1565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9b90614ac1565b8015611ae85780601f10611abd57610100808354040283529160200191611ae8565b820191906000526020600020905b815481529060010190602001808311611acb57829003601f168201915b5050505050905090565b611afa6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8090614b3e565b60405180910390fd5b7f000000000000000000000000655083d68a14325087130cc76b8b0a5b6a2a763773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0e90614dd3565b60405180910390fd5b611c218282613a9c565b5050565b60135481565b611c336129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611cc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb990614b3e565b60405180910390fd5b6000825111611d06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cfd90614e3f565b60405180910390fd5b60005b8251811015611d965781600e6000858481518110611d2a57611d29614e5f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611d8e90614e8e565b915050611d09565b505050565b601c5481565b60175481565b611daf6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3590614b3e565b60405180910390fd5b80600b60036101000a81548160ff02191690831515021790555050565b6000611f1e611e686129d9565b84611f1985604051806060016040528060258152602001615a746025913960016000611e926129d9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6129e1565b6001905092915050565b600b60039054906101000a900460ff1681565b6000611f4f611f486129d9565b8484612baa565b6001905092915050565b611f616129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ff0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe790614b3e565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b602080528060005260406000206000915054906101000a900460ff1681565b600b60019054906101000a900460ff1681565b6120ea6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612179576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161217090614b3e565b60405180910390fd5b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051612216919061457a565b60405180910390a25050565b61222a6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b090614b3e565b60405180910390fd5b670de0b6b3a76400006103e8600f6122cf610f0f565b6122d99190614b8d565b6122e39190614bfe565b6122ed9190614bfe565b81101561232f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232690614f48565b60405180910390fd5b670de0b6b3a7640000816123439190614b8d565b600a8190555050565b600f60009054906101000a900460ff1681565b60085481565b600061236f6129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146123fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f590614b3e565b60405180910390fd5b620186a0600161240c610f0f565b6124169190614b8d565b6124209190614bfe565b821015612462576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161245990614fda565b60405180910390fd5b6103e8600561246f610f0f565b6124799190614b8d565b6124839190614bfe565b8211156124c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124bc9061506c565b60405180910390fd5b8160098190555060019050919050565b60105481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60095481565b60006125726129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612601576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f890614b3e565b60405180910390fd5b6000600f60006101000a81548160ff0219169083151502179055506001905090565b60125481565b6126316129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146126c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126b790614b3e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361272f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612726906150fe565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60165481565b600a5481565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6128596129d9565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146128e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128df90614b3e565b60405180910390fd5b846015819055508360168190555082601781905550816018819055508060198190555060175460165460155461291e9190614cc1565b6129289190614cc1565b60148190555060636014541115612974576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161296b9061516a565b60405180910390fd5b5050505050565b600080828461298a9190614cc1565b9050838110156129cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c6906151d6565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a4790615268565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612abf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab6906152fa565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612b9d919061464b565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c109061538c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7f9061541e565b60405180910390fd5b600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612d2c5750600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b612d6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d62906154b0565b60405180910390fd5b60008103612d8457612d7f83836000613b3d565b613a33565b600b60009054906101000a900460ff161561344757612da1611956565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612e0f5750612ddf611956565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e485750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e82575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e9b5750600560149054906101000a900460ff16155b1561344657600b60019054906101000a900460ff16612f9557601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612f555750601e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612f94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f8b9061551c565b60405180910390fd5b5b600f60009054906101000a900460ff161561315d57612fb2611956565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561303957507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561309157507f000000000000000000000000655083d68a14325087130cc76b8b0a5b6a2a763773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561315c5743600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410613117576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161310e906155d4565b60405180910390fd5b43600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156132005750601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156132a75760085481111561324a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161324190615666565b60405180910390fd5b600a54613256836113ed565b826132619190614cc1565b11156132a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613299906156d2565b60405180910390fd5b613445565b602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561334a5750601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561339957600854811115613394576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161338b90615764565b60405180910390fd5b613444565b601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661344357600a546133f6836113ed565b826134019190614cc1565b1115613442576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613439906156d2565b60405180910390fd5b5b5b5b5b5b6000601d546134569190614cc1565b43111580156134b157507f000000000000000000000000655083d68a14325087130cc76b8b0a5b6a2a763773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156134fd5750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561355b576000600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b6000613566306113ed565b90506000600954821015905080801561358b5750600b60029054906101000a900460ff165b80156135a45750600560149054906101000a900460ff16155b80156135fa5750602060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136505750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136a65750601e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156136ea576001600560146101000a81548160ff0219169083151502179055506136ce613dd0565b6000600560146101000a81548160ff0219169083151502179055505b6000600560149054906101000a900460ff16159050601e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806137a05750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156137aa57600090505b60008115613a2357602060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561380d57506000601454115b156138da5761383a606461382c6014548861401290919063ffffffff16565b61408c90919063ffffffff16565b90506014546016548261384d9190614b8d565b6138579190614bfe565b601b60008282546138689190614cc1565b92505081905550601454601754826138809190614b8d565b61388a9190614bfe565b601c600082825461389b9190614cc1565b92505081905550601454601554826138b39190614b8d565b6138bd9190614bfe565b601a60008282546138ce9190614cc1565b925050819055506139ff565b602060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561393557506000601054115b156139fe5761396260646139546010548861401290919063ffffffff16565b61408c90919063ffffffff16565b9050601054601254826139759190614b8d565b61397f9190614bfe565b601b60008282546139909190614cc1565b92505081905550601054601354826139a89190614b8d565b6139b29190614bfe565b601c60008282546139c39190614cc1565b92505081905550601054601154826139db9190614b8d565b6139e59190614bfe565b601a60008282546139f69190614cc1565b925050819055505b5b6000811115613a1457613a13873083613b3d565b5b8085613a209190615784565b94505b613a2e878787613b3d565b505050505b505050565b6000838311158290613a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a779190614455565b60405180910390fd5b5060008385613a8f9190615784565b9050809150509392505050565b80602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613bac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ba39061538c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c129061541e565b60405180910390fd5b613c268383836140d6565b613c9181604051806060016040528060268152602001615a26602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a389092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613d24816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461297b90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613dc3919061464b565b60405180910390a3505050565b6000613ddb306113ed565b90506000601c54601a54601b54613df29190614cc1565b613dfc9190614cc1565b9050600080831480613e0e5750600082145b15613e1b57505050614010565b6014600954613e2a9190614b8d565b831115613e43576014600954613e409190614b8d565b92505b6000600283601b5486613e569190614b8d565b613e609190614bfe565b613e6a9190614bfe565b90506000613e8182866140db90919063ffffffff16565b90506000479050613e9182614125565b6000613ea682476140db90919063ffffffff16565b90506000613ed187613ec3601c548561401290919063ffffffff16565b61408c90919063ffffffff16565b90506000601b819055506000601a819055506000601c81905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681604051613f31906157e9565b60006040518083038185875af1925050503d8060008114613f6e576040519150601f19603f3d011682016040523d82523d6000602084013e613f73565b606091505b505080965050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613fbf906157e9565b60006040518083038185875af1925050503d8060008114613ffc576040519150601f19603f3d011682016040523d82523d6000602084013e614001565b606091505b50508096505050505050505050505b565b60008083036140245760009050614086565b600082846140329190614b8d565b90508284826140419190614bfe565b14614081576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161407890615870565b60405180910390fd5b809150505b92915050565b60006140ce83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614362565b905092915050565b505050565b600061411d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613a38565b905092915050565b6000600267ffffffffffffffff81111561414257614141614838565b5b6040519080825280602002602001820160405280156141705781602001602082028036833780820191505090505b509050308160008151811061418857614187614e5f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561422d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061425191906158a5565b8160018151811061426557614264614e5f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506142ca307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d846129e1565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161432c9594939291906159cb565b600060405180830381600087803b15801561434657600080fd5b505af115801561435a573d6000803e3d6000fd5b505050505050565b600080831182906143a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016143a09190614455565b60405180910390fd5b50600083856143b89190614bfe565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156143ff5780820151818401526020810190506143e4565b60008484015250505050565b6000601f19601f8301169050919050565b6000614427826143c5565b61443181856143d0565b93506144418185602086016143e1565b61444a8161440b565b840191505092915050565b6000602082019050818103600083015261446f818461441c565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006144b68261448b565b9050919050565b6144c6816144ab565b81146144d157600080fd5b50565b6000813590506144e3816144bd565b92915050565b6000819050919050565b6144fc816144e9565b811461450757600080fd5b50565b600081359050614519816144f3565b92915050565b6000806040838503121561453657614535614481565b5b6000614544858286016144d4565b92505060206145558582860161450a565b9150509250929050565b60008115159050919050565b6145748161455f565b82525050565b600060208201905061458f600083018461456b565b92915050565b6000602082840312156145ab576145aa614481565b5b60006145b9848285016144d4565b91505092915050565b6000819050919050565b60006145e76145e26145dd8461448b565b6145c2565b61448b565b9050919050565b60006145f9826145cc565b9050919050565b600061460b826145ee565b9050919050565b61461b81614600565b82525050565b60006020820190506146366000830184614612565b92915050565b614645816144e9565b82525050565b6000602082019050614660600083018461463c565b92915050565b60006020828403121561467c5761467b614481565b5b600061468a8482850161450a565b91505092915050565b6000806000606084860312156146ac576146ab614481565b5b60006146ba868287016144d4565b93505060206146cb868287016144d4565b92505060406146dc8682870161450a565b9150509250925092565b600060ff82169050919050565b6146fc816146e6565b82525050565b600060208201905061471760008301846146f3565b92915050565b614726816144ab565b82525050565b6000602082019050614741600083018461471d565b92915050565b6147508161455f565b811461475b57600080fd5b50565b60008135905061476d81614747565b92915050565b6000806040838503121561478a57614789614481565b5b6000614798858286016144d4565b92505060206147a98582860161475e565b9150509250929050565b6000806000606084860312156147cc576147cb614481565b5b60006147da8682870161450a565b93505060206147eb8682870161450a565b92505060406147fc8682870161450a565b9150509250925092565b60006020828403121561481c5761481b614481565b5b600061482a8482850161475e565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6148708261440b565b810181811067ffffffffffffffff8211171561488f5761488e614838565b5b80604052505050565b60006148a2614477565b90506148ae8282614867565b919050565b600067ffffffffffffffff8211156148ce576148cd614838565b5b602082029050602081019050919050565b600080fd5b60006148f76148f2846148b3565b614898565b9050808382526020820190506020840283018581111561491a576149196148df565b5b835b81811015614943578061492f88826144d4565b84526020840193505060208101905061491c565b5050509392505050565b600082601f83011261496257614961614833565b5b81356149728482602086016148e4565b91505092915050565b6000806040838503121561499257614991614481565b5b600083013567ffffffffffffffff8111156149b0576149af614486565b5b6149bc8582860161494d565b92505060206149cd8582860161475e565b9150509250929050565b600080604083850312156149ee576149ed614481565b5b60006149fc858286016144d4565b9250506020614a0d858286016144d4565b9150509250929050565b600080600080600060a08688031215614a3357614a32614481565b5b6000614a418882890161450a565b9550506020614a528882890161450a565b9450506040614a638882890161450a565b9350506060614a748882890161450a565b9250506080614a858882890161450a565b9150509295509295909350565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614ad957607f821691505b602082108103614aec57614aeb614a92565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614b286020836143d0565b9150614b3382614af2565b602082019050919050565b60006020820190508181036000830152614b5781614b1b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614b98826144e9565b9150614ba3836144e9565b9250828202614bb1816144e9565b91508282048414831517614bc857614bc7614b5e565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614c09826144e9565b9150614c14836144e9565b925082614c2457614c23614bcf565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060008201527f6c6f776572207468616e20302e35250000000000000000000000000000000000602082015250565b6000614c8b602f836143d0565b9150614c9682614c2f565b604082019050919050565b60006020820190508181036000830152614cba81614c7e565b9050919050565b6000614ccc826144e9565b9150614cd7836144e9565b9250828201905080821115614cef57614cee614b5e565b5b92915050565b7f4d757374206b656570206665657320617420353025206f72206c657373000000600082015250565b6000614d2b601d836143d0565b9150614d3682614cf5565b602082019050919050565b60006020820190508181036000830152614d5a81614d1e565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b6000614dbd6039836143d0565b9150614dc882614d61565b604082019050919050565b60006020820190508181036000830152614dec81614db0565b9050919050565b7f4163636f756e7473206c6973742063616e6e6f7420626520656d7074792e0000600082015250565b6000614e29601e836143d0565b9150614e3482614df3565b602082019050919050565b60006020820190508181036000830152614e5881614e1c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614e99826144e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614ecb57614eca614b5e565b5b600182019050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f312e352500000000000000000000000000000000000000000000000000000000602082015250565b6000614f326024836143d0565b9150614f3d82614ed6565b604082019050919050565b60006020820190508181036000830152614f6181614f25565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b6000614fc46035836143d0565b9150614fcf82614f68565b604082019050919050565b60006020820190508181036000830152614ff381614fb7565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b60006150566034836143d0565b915061506182614ffa565b604082019050919050565b6000602082019050818103600083015261508581615049565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006150e86026836143d0565b91506150f38261508c565b604082019050919050565b60006020820190508181036000830152615117816150db565b9050919050565b7f4d757374206b656570206665657320617420393925206f72206c657373000000600082015250565b6000615154601d836143d0565b915061515f8261511e565b602082019050919050565b6000602082019050818103600083015261518381615147565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006151c0601b836143d0565b91506151cb8261518a565b602082019050919050565b600060208201905081810360008301526151ef816151b3565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006152526024836143d0565b915061525d826151f6565b604082019050919050565b6000602082019050818103600083015261528181615245565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006152e46022836143d0565b91506152ef82615288565b604082019050919050565b60006020820190508181036000830152615313816152d7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006153766025836143d0565b91506153818261531a565b604082019050919050565b600060208201905081810360008301526153a581615369565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006154086023836143d0565b9150615413826153ac565b604082019050919050565b60006020820190508181036000830152615437816153fb565b9050919050565b7f596f752068617665206265656e20626c61636b6c69737465642066726f6d207460008201527f72616e73666572696e6720746f6b656e73000000000000000000000000000000602082015250565b600061549a6031836143d0565b91506154a58261543e565b604082019050919050565b600060208201905081810360008301526154c98161548d565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006155066016836143d0565b9150615511826154d0565b602082019050919050565b60006020820190508181036000830152615535816154f9565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006155be6049836143d0565b91506155c98261553c565b606082019050919050565b600060208201905081810360008301526155ed816155b1565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b60006156506035836143d0565b915061565b826155f4565b604082019050919050565b6000602082019050818103600083015261567f81615643565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b60006156bc6013836143d0565b91506156c782615686565b602082019050919050565b600060208201905081810360008301526156eb816156af565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b600061574e6036836143d0565b9150615759826156f2565b604082019050919050565b6000602082019050818103600083015261577d81615741565b9050919050565b600061578f826144e9565b915061579a836144e9565b92508282039050818111156157b2576157b1614b5e565b5b92915050565b600081905092915050565b50565b60006157d36000836157b8565b91506157de826157c3565b600082019050919050565b60006157f4826157c6565b9150819050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061585a6021836143d0565b9150615865826157fe565b604082019050919050565b600060208201905081810360008301526158898161584d565b9050919050565b60008151905061589f816144bd565b92915050565b6000602082840312156158bb576158ba614481565b5b60006158c984828501615890565b91505092915050565b6000819050919050565b60006158f76158f26158ed846158d2565b6145c2565b6144e9565b9050919050565b615907816158dc565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615942816144ab565b82525050565b60006159548383615939565b60208301905092915050565b6000602082019050919050565b60006159788261590d565b6159828185615918565b935061598d83615929565b8060005b838110156159be5781516159a58882615948565b97506159b083615960565b925050600181019050615991565b5085935050505092915050565b600060a0820190506159e0600083018861463c565b6159ed60208301876158fe565b81810360408301526159ff818661596d565b9050615a0e606083018561471d565b615a1b608083018461463c565b969550505050505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212205c6c2658c5229c79555fe9f2b4f4c4cc795d7290d3c6b1f8a51bf0de2ec1676c64736f6c63430008110033
Deployed Bytecode Sourcemap
30855:17091:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7983:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10216:194;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;32499:63;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;30933:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9103:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;40734:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;32217:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;32177;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;37389:277;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10892:454;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;32134:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8945:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11755:293;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;30991:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31253:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;40899:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;32091:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31946:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31333:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9274:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23033:148;;;;;;;;;;;;;:::i;:::-;;36404:121;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;37941:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;31068:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31839;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;38314:403;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;36204:148;;;;;;;;;;;;;:::i;:::-;;22391:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31105:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31981:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;38206:100;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8202:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;39992:306;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;31913:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;39651:333;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;32257:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;32057:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;36729:101;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12551:393;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31371:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9630:200;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;40502:224;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;32720:57;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31293:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;39341:182;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;37674:259;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;31757:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31138:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;36900:481;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31805:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9893:176;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31180:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;36586:135;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31876:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23336:281;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;32019:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;31220:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;39531:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;38725:608;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7983:100;8037:13;8070:5;8063:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7983:100;:::o;10216:194::-;10324:4;10341:39;10350:12;:10;:12::i;:::-;10364:7;10373:6;10341:8;:39::i;:::-;10398:4;10391:11;;10216:194;;;;:::o;32499:63::-;;;;;;;;;;;;;;;;;;;;;;:::o;30933:51::-;;;:::o;9103:108::-;9164:7;9191:12;;9184:19;;9103:108;:::o;40734:157::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;40841:9:::1;;;;;;;;;;;40813:38;;40830:9;40813:38;;;;;;;;;;;;40874:9;40862;;:21;;;;;;;;;;;;;;;;;;40734:157:::0;:::o;32217:33::-;;;;:::o;32177:::-;;;;:::o;37389:277::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;37526:4:::1;37518;37513:1;37497:13;:11;:13::i;:::-;:17;;;;:::i;:::-;37496:26;;;;:::i;:::-;37495:35;;;;:::i;:::-;37485:6;:45;;37463:142;;;;;;;;;;;;:::i;:::-;;;;;;;;;37649:8;37639:6;:19;;;;:::i;:::-;37616:20;:42;;;;37389:277:::0;:::o;10892:454::-;11032:4;11049:36;11059:6;11067:9;11078:6;11049:9;:36::i;:::-;11096:220;11119:6;11140:12;:10;:12::i;:::-;11167:138;11223:6;11167:138;;;;;;;;;;;;;;;;;:11;:19;11179:6;11167:19;;;;;;;;;;;;;;;:33;11187:12;:10;:12::i;:::-;11167:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;11096:8;:220::i;:::-;11334:4;11327:11;;10892:454;;;;;:::o;32134:36::-;;;;:::o;8945:93::-;9003:5;9028:2;9021:9;;8945:93;:::o;11755:293::-;11868:4;11885:133;11908:12;:10;:12::i;:::-;11935:7;11957:50;11996:10;11957:11;:25;11969:12;:10;:12::i;:::-;11957:25;;;;;;;;;;;;;;;:34;11983:7;11957:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;11885:8;:133::i;:::-;12036:4;12029:11;;11755:293;;;;:::o;30991:38::-;;;:::o;31253:33::-;;;;;;;;;;;;;:::o;40899:126::-;40965:4;40989:19;:28;41009:7;40989:28;;;;;;;;;;;;;;;;;;;;;;;;;40982:35;;40899:126;;;:::o;32091:36::-;;;;:::o;31946:28::-;;;;:::o;31333:31::-;;;;;;;;;;;;;:::o;9274:143::-;9364:7;9391:9;:18;9401:7;9391:18;;;;;;;;;;;;;;;;9384:25;;9274:143;;;:::o;23033:148::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;23140:1:::1;23103:40;;23124:6;;;;;;;;;;;23103:40;;;;;;;;;;;;23171:1;23154:6;;:19;;;;;;;;;;;;;;;;;;23033:148::o:0;36404:121::-;36456:4;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;36490:5:::1;36473:14;;:22;;;;;;;;;;;;;;;;;;36513:4;36506:11;;36404:121:::0;:::o;37941:169::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;38098:4:::1;38056:31;:39;38088:6;38056:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;37941:169:::0;;:::o;31068:30::-;;;;;;;;;;;;;:::o;31839:::-;;;;:::o;38314:403::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;38482:13:::1;38464:15;:31;;;;38524:13;38506:15;:31;;;;38560:7;38548:9;:19;;;;38629:9;;38611:15;;38593;;:33;;;;:::i;:::-;:45;;;;:::i;:::-;38578:12;:60;;;;38673:2;38657:12;;:18;;38649:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;38314:403:::0;;;:::o;36204:148::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;36275:4:::1;36259:13;;:20;;;;;;;;;;;;;;;;;;36304:4;36290:11;;:18;;;;;;;;;;;;;;;;;;36332:12;36319:10;:25;;;;36204:148::o:0;22391:79::-;22429:7;22456:6;;;;;;;;;;;22449:13;;22391:79;:::o;31105:24::-;;;;;;;;;;;;;:::o;31981:31::-;;;;:::o;38206:100::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;38291:7:::1;38277:11;;:21;;;;;;;;;;;;;;;;;;38206:100:::0;:::o;8202:104::-;8258:13;8291:7;8284:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8202:104;:::o;39992:306::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;40138:13:::1;40130:21;;:4;:21;;::::0;40108:128:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;40249:41;40278:4;40284:5;40249:28;:41::i;:::-;39992:306:::0;;:::o;31913:24::-;;;;:::o;39651:333::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;39811:1:::1;39793:8;:15;:19;39785:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;39863:9;39858:119;39882:8;:15;39878:1;:19;39858:119;;;39945:20;39919:10;:23;39930:8;39939:1;39930:11;;;;;;;;:::i;:::-;;;;;;;;39919:23;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;39899:3;;;;;:::i;:::-;;;;39858:119;;;;39651:333:::0;;:::o;32257:27::-;;;;:::o;32057:25::-;;;;:::o;36729:101::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;36817:5:::1;36796:18;;:26;;;;;;;;;;;;;;;;;;36729:101:::0;:::o;12551:393::-;12669:4;12686:228;12709:12;:10;:12::i;:::-;12736:7;12758:145;12815:15;12758:145;;;;;;;;;;;;;;;;;:11;:25;12770:12;:10;:12::i;:::-;12758:25;;;;;;;;;;;;;;;:34;12784:7;12758:34;;;;;;;;;;;;;;;;:38;;:145;;;;;:::i;:::-;12686:8;:228::i;:::-;12932:4;12925:11;;12551:393;;;;:::o;31371:37::-;;;;;;;;;;;;;:::o;9630:200::-;9741:4;9758:42;9768:12;:10;:12::i;:::-;9782:9;9793:6;9758:9;:42::i;:::-;9818:4;9811:11;;9630:200;;;;:::o;40502:224::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;40655:15:::1;;;;;;;;;;;40612:59;;40635:18;40612:59;;;;;;;;;;;;40700:18;40682:15;;:36;;;;;;;;;;;;;;;;;;40502:224:::0;:::o;32720:57::-;;;;;;;;;;;;;;;;;;;;;;:::o;31293:33::-;;;;;;;;;;;;;:::o;39341:182::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;39457:8:::1;39426:19;:28;39446:7;39426:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;39497:7;39481:34;;;39506:8;39481:34;;;;;;:::i;:::-;;;;;;;;39341:182:::0;;:::o;37674:259::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;37815:4:::1;37807;37801:2;37785:13;:11;:13::i;:::-;:18;;;;:::i;:::-;37784:27;;;;:::i;:::-;37783:36;;;;:::i;:::-;37773:6;:46;;37751:132;;;;;;;;;;;;:::i;:::-;;;;;;;;;37916:8;37906:6;:19;;;;:::i;:::-;37894:9;:31;;;;37674:259:::0;:::o;31757:39::-;;;;;;;;;;;;;:::o;31138:35::-;;;;:::o;36900:481::-;36997:4;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;37071:6:::1;37066:1;37050:13;:11;:13::i;:::-;:17;;;;:::i;:::-;37049:28;;;;:::i;:::-;37036:9;:41;;37014:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;37226:4;37221:1;37205:13;:11;:13::i;:::-;:17;;;;:::i;:::-;37204:26;;;;:::i;:::-;37191:9;:39;;37169:141;;;;;;;;;;;;:::i;:::-;;;;;;;;;37342:9;37321:18;:30;;;;37369:4;37362:11;;36900:481:::0;;;:::o;31805:27::-;;;;:::o;9893:176::-;10007:7;10034:11;:18;10046:5;10034:18;;;;;;;;;;;;;;;:27;10053:7;10034:27;;;;;;;;;;;;;;;;10027:34;;9893:176;;;;:::o;31180:33::-;;;;:::o;36586:135::-;36646:4;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;36686:5:::1;36663:20;;:28;;;;;;;;;;;;;;;;;;36709:4;36702:11;;36586:135:::0;:::o;31876:30::-;;;;:::o;23336:281::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;23459:1:::1;23439:22;;:8;:22;;::::0;23417:110:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;23572:8;23543:38;;23564:6;;;;;;;;;;;23543:38;;;;;;;;;;;;23601:8;23592:6;;:17;;;;;;;;;;;;;;;;;;23336:281:::0;:::o;32019:31::-;;;;:::o;31220:24::-;;;;:::o;39531:112::-;39592:4;39616:10;:19;39627:7;39616:19;;;;;;;;;;;;;;;;;;;;;;;;;39609:26;;39531:112;;;:::o;38725:608::-;22613:12;:10;:12::i;:::-;22603:22;;:6;;;;;;;;;;;:22;;;22595:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;38977:13:::1;38958:16;:32;;;;39020:13;39001:16;:32;;;;39057:7;39044:10;:20;;;;39099:22;39075:21;:46;;;;39156:22;39132:21;:46;;;;39243:10;;39224:16;;39205;;:35;;;;:::i;:::-;:48;;;;:::i;:::-;39189:13;:64;;;;39289:2;39272:13;;:19;;39264:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;38725:608:::0;;;;;:::o;17313:181::-;17371:7;17391:9;17407:1;17403;:5;;;;:::i;:::-;17391:17;;17432:1;17427;:6;;17419:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;17485:1;17478:8;;;17313:181;;;;:::o;154:98::-;207:7;234:10;227:17;;154:98;:::o;15935:380::-;16088:1;16071:19;;:5;:19;;;16063:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16169:1;16150:21;;:7;:21;;;16142:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16253:6;16223:11;:18;16235:5;16223:18;;;;;;;;;;;;;;;:27;16242:7;16223:27;;;;;;;;;;;;;;;:36;;;;16291:7;16275:32;;16284:5;16275:32;;;16300:6;16275:32;;;;;;:::i;:::-;;;;;;;;15935:380;;;:::o;41083:5121::-;41231:1;41215:18;;:4;:18;;;41207:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;41308:1;41294:16;;:2;:16;;;41286:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;41384:10;:14;41395:2;41384:14;;;;;;;;;;;;;;;;;;;;;;;;;41383:15;:36;;;;;41403:10;:16;41414:4;41403:16;;;;;;;;;;;;;;;;;;;;;;;;;41402:17;41383:36;41361:135;;;;;;;;;;;;:::i;:::-;;;;;;;;;41521:1;41511:6;:11;41507:93;;41539:28;41555:4;41561:2;41565:1;41539:15;:28::i;:::-;41582:7;;41507:93;41616:14;;;;;;;;;;;41612:2487;;;41677:7;:5;:7::i;:::-;41669:15;;:4;:15;;;;:49;;;;;41711:7;:5;:7::i;:::-;41705:13;;:2;:13;;;;41669:49;:86;;;;;41753:1;41739:16;;:2;:16;;;;41669:86;:128;;;;;41790:6;41776:21;;:2;:21;;;;41669:128;:158;;;;;41819:8;;;;;;;;;;;41818:9;41669:158;41647:2441;;;41867:13;;;;;;;;;;;41862:223;;41939:19;:25;41959:4;41939:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;41968:19;:23;41988:2;41968:23;;;;;;;;;;;;;;;;;;;;;;;;;41939:52;41905:160;;;;;;;;;;;;:::i;:::-;;;;;;;;;41862:223;42241:20;;;;;;;;;;;42237:641;;;42322:7;:5;:7::i;:::-;42316:13;;:2;:13;;;;:72;;;;;42372:15;42358:30;;:2;:30;;;;42316:72;:129;;;;;42431:13;42417:28;;:2;:28;;;;42316:129;42286:573;;;42609:12;42534:28;:39;42563:9;42534:39;;;;;;;;;;;;;;;;:87;42496:258;;;;;;;;;;;;:::i;:::-;;;;;;;;;42823:12;42781:28;:39;42810:9;42781:39;;;;;;;;;;;;;;;:54;;;;42286:573;42237:641;42952:25;:31;42978:4;42952:31;;;;;;;;;;;;;;;;;;;;;;;;;:92;;;;;43009:31;:35;43041:2;43009:35;;;;;;;;;;;;;;;;;;;;;;;;;43008:36;42952:92;42926:1147;;;43131:20;;43121:6;:30;;43087:169;;;;;;;;;;;;:::i;:::-;;;;;;;;;43339:9;;43322:13;43332:2;43322:9;:13::i;:::-;43313:6;:22;;;;:::i;:::-;:35;;43279:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;42926:1147;;;43517:25;:29;43543:2;43517:29;;;;;;;;;;;;;;;;;;;;;;;;;:92;;;;;43572:31;:37;43604:4;43572:37;;;;;;;;;;;;;;;;;;;;;;;;;43571:38;43517:92;43491:582;;;43696:20;;43686:6;:30;;43652:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;43491:582;;;43853:31;:35;43885:2;43853:35;;;;;;;;;;;;;;;;;;;;;;;;;43848:225;;43973:9;;43956:13;43966:2;43956:9;:13::i;:::-;43947:6;:22;;;;:::i;:::-;:35;;43913:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;43848:225;43491:582;42926:1147;41647:2441;41612:2487;44186:1;44173:10;;:14;;;;:::i;:::-;44156:12;:32;;:68;;;;;44211:13;44205:19;;:2;:19;;;;44156:68;:142;;;;;44255:42;44241:57;;:2;:57;;;;44156:142;44138:221;;;44342:5;44325:10;:14;44336:2;44325:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;44138:221;44371:28;44402:24;44420:4;44402:9;:24::i;:::-;44371:55;;44439:12;44478:18;;44454:20;:42;;44439:57;;44527:7;:35;;;;;44551:11;;;;;;;;;;;44527:35;:61;;;;;44580:8;;;;;;;;;;;44579:9;44527:61;:110;;;;;44606:25;:31;44632:4;44606:31;;;;;;;;;;;;;;;;;;;;;;;;;44605:32;44527:110;:153;;;;;44655:19;:25;44675:4;44655:25;;;;;;;;;;;;;;;;;;;;;;;;;44654:26;44527:153;:194;;;;;44698:19;:23;44718:2;44698:23;;;;;;;;;;;;;;;;;;;;;;;;;44697:24;44527:194;44509:326;;;44759:4;44748:8;;:15;;;;;;;;;;;;;;;;;;44780:10;:8;:10::i;:::-;44818:5;44807:8;;:16;;;;;;;;;;;;;;;;;;44509:326;44847:12;44863:8;;;;;;;;;;;44862:9;44847:24;;44973:19;:25;44993:4;44973:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;45002:19;:23;45022:2;45002:23;;;;;;;;;;;;;;;;;;;;;;;;;44973:52;44969:100;;;45052:5;45042:15;;44969:100;45081:12;45186:7;45182:969;;;45238:25;:29;45264:2;45238:29;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;;45287:1;45271:13;;:17;45238:50;45234:768;;;45316:34;45346:3;45316:25;45327:13;;45316:6;:10;;:25;;;;:::i;:::-;:29;;:34;;;;:::i;:::-;45309:41;;45419:13;;45399:16;;45392:4;:23;;;;:::i;:::-;45391:41;;;;:::i;:::-;45369:18;;:63;;;;;;;:::i;:::-;;;;;;;;45489:13;;45475:10;;45468:4;:17;;;;:::i;:::-;45467:35;;;;:::i;:::-;45451:12;;:51;;;;;;;:::i;:::-;;;;;;;;45571:13;;45551:16;;45544:4;:23;;;;:::i;:::-;45543:41;;;;:::i;:::-;45521:18;;:63;;;;;;;:::i;:::-;;;;;;;;45234:768;;;45646:25;:31;45672:4;45646:31;;;;;;;;;;;;;;;;;;;;;;;;;:51;;;;;45696:1;45681:12;;:16;45646:51;45642:360;;;45725:33;45754:3;45725:24;45736:12;;45725:6;:10;;:24;;;;:::i;:::-;:28;;:33;;;;:::i;:::-;45718:40;;45826:12;;45807:15;;45800:4;:22;;;;:::i;:::-;45799:39;;;;:::i;:::-;45777:18;;:61;;;;;;;:::i;:::-;;;;;;;;45894:12;;45881:9;;45874:4;:16;;;;:::i;:::-;45873:33;;;;:::i;:::-;45857:12;;:49;;;;;;;:::i;:::-;;;;;;;;45974:12;;45955:15;;45948:4;:22;;;;:::i;:::-;45947:39;;;;:::i;:::-;45925:18;;:61;;;;;;;:::i;:::-;;;;;;;;45642:360;45234:768;46029:1;46022:4;:8;46018:91;;;46051:42;46067:4;46081;46088;46051:15;:42::i;:::-;46018:91;46135:4;46125:14;;;;;:::i;:::-;;;45182:969;46163:33;46179:4;46185:2;46189:6;46163:15;:33::i;:::-;41196:5008;;;;41083:5121;;;;:::o;18216:226::-;18336:7;18369:1;18364;:6;;18372:12;18356:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;18396:9;18412:1;18408;:5;;;;:::i;:::-;18396:17;;18433:1;18426:8;;;18216:226;;;;;:::o;40306:188::-;40423:5;40389:25;:31;40415:4;40389:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;40480:5;40446:40;;40474:4;40446:40;;;;;;;;;;;;40306:188;;:::o;13434:610::-;13592:1;13574:20;;:6;:20;;;13566:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;13676:1;13655:23;;:9;:23;;;13647:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;13731:47;13752:6;13760:9;13771:6;13731:20;:47::i;:::-;13811:108;13847:6;13811:108;;;;;;;;;;;;;;;;;:9;:17;13821:6;13811:17;;;;;;;;;;;;;;;;:21;;:108;;;;;:::i;:::-;13791:9;:17;13801:6;13791:17;;;;;;;;;;;;;;;:128;;;;13953:32;13978:6;13953:9;:20;13963:9;13953:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;13930:9;:20;13940:9;13930:20;;;;;;;;;;;;;;;:55;;;;14018:9;14001:35;;14010:6;14001:35;;;14029:6;14001:35;;;;;;:::i;:::-;;;;;;;;13434:610;;;:::o;46723:1220::-;46762:23;46788:24;46806:4;46788:9;:24::i;:::-;46762:50;;46823:25;46919:12;;46885:18;;46851;;:52;;;;:::i;:::-;:80;;;;:::i;:::-;46823:108;;46942:12;46990:1;46971:15;:20;:46;;;;47016:1;46995:17;:22;46971:46;46967:85;;;47034:7;;;;;46967:85;47107:2;47086:18;;:23;;;;:::i;:::-;47068:15;:41;47064:115;;;47165:2;47144:18;;:23;;;;:::i;:::-;47126:41;;47064:115;47191:23;47304:1;47271:17;47236:18;;47218:15;:36;;;;:::i;:::-;47217:71;;;;:::i;:::-;:88;;;;:::i;:::-;47191:114;;47316:26;47345:36;47365:15;47345;:19;;:36;;;;:::i;:::-;47316:65;;47394:25;47422:21;47394:49;;47456:36;47473:18;47456:16;:36::i;:::-;47505:18;47526:44;47552:17;47526:21;:25;;:44;;;;:::i;:::-;47505:65;;47583:17;47603:51;47636:17;47603:28;47618:12;;47603:10;:14;;:28;;;;:::i;:::-;:32;;:51;;;;:::i;:::-;47583:71;;47688:1;47667:18;:22;;;;47721:1;47700:18;:22;;;;47748:1;47733:12;:16;;;;47784:9;;;;;;;;;;;47776:23;;47807:9;47776:45;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47762:59;;;;;47856:15;;;;;;;;;;;47848:29;;47899:21;47848:87;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47834:101;;;;;46751:1192;;;;;;;;46723:1220;:::o;18701:471::-;18759:7;19009:1;19004;:6;19000:47;;19034:1;19027:8;;;;19000:47;19059:9;19075:1;19071;:5;;;;:::i;:::-;19059:17;;19104:1;19099;19095;:5;;;;:::i;:::-;:10;19087:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;19163:1;19156:8;;;18701:471;;;;;:::o;19648:132::-;19706:7;19733:39;19737:1;19740;19733:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;19726:46;;19648:132;;;;:::o;16918:125::-;;;;:::o;17777:136::-;17835:7;17862:43;17866:1;17869;17862:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;17855:50;;17777:136;;;;:::o;46212:503::-;46278:21;46316:1;46302:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46278:40;;46347:4;46329;46334:1;46329:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;46373:15;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;46363:4;46368:1;46363:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;46408:62;46425:4;46440:15;46458:11;46408:8;:62::i;:::-;46483:15;:66;;;46564:11;46590:1;46634:4;46661;46681:15;46483:224;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46267:448;46212:503;:::o;20276:312::-;20396:7;20428:1;20424;:5;20431:12;20416:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;20455:9;20471:1;20467;:5;;;;:::i;:::-;20455:17;;20579:1;20572:8;;;20276:312;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1349:75::-;1382:6;1415:2;1409:9;1399:19;;1349:75;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:329::-;3505:6;3554:2;3542:9;3533:7;3529:23;3525:32;3522:119;;;3560:79;;:::i;:::-;3522:119;3680:1;3705:53;3750:7;3741:6;3730:9;3726:22;3705:53;:::i;:::-;3695:63;;3651:117;3446:329;;;;:::o;3781:60::-;3809:3;3830:5;3823:12;;3781:60;;;:::o;3847:142::-;3897:9;3930:53;3948:34;3957:24;3975:5;3957:24;:::i;:::-;3948:34;:::i;:::-;3930:53;:::i;:::-;3917:66;;3847:142;;;:::o;3995:126::-;4045:9;4078:37;4109:5;4078:37;:::i;:::-;4065:50;;3995:126;;;:::o;4127:153::-;4204:9;4237:37;4268:5;4237:37;:::i;:::-;4224:50;;4127:153;;;:::o;4286:185::-;4400:64;4458:5;4400:64;:::i;:::-;4395:3;4388:77;4286:185;;:::o;4477:276::-;4597:4;4635:2;4624:9;4620:18;4612:26;;4648:98;4743:1;4732:9;4728:17;4719:6;4648:98;:::i;:::-;4477:276;;;;:::o;4759:118::-;4846:24;4864:5;4846:24;:::i;:::-;4841:3;4834:37;4759:118;;:::o;4883:222::-;4976:4;5014:2;5003:9;4999:18;4991:26;;5027:71;5095:1;5084:9;5080:17;5071:6;5027:71;:::i;:::-;4883:222;;;;:::o;5111:329::-;5170:6;5219:2;5207:9;5198:7;5194:23;5190:32;5187:119;;;5225:79;;:::i;:::-;5187:119;5345:1;5370:53;5415:7;5406:6;5395:9;5391:22;5370:53;:::i;:::-;5360:63;;5316:117;5111:329;;;;:::o;5446:619::-;5523:6;5531;5539;5588:2;5576:9;5567:7;5563:23;5559:32;5556:119;;;5594:79;;:::i;:::-;5556:119;5714:1;5739:53;5784:7;5775:6;5764:9;5760:22;5739:53;:::i;:::-;5729:63;;5685:117;5841:2;5867:53;5912:7;5903:6;5892:9;5888:22;5867:53;:::i;:::-;5857:63;;5812:118;5969:2;5995:53;6040:7;6031:6;6020:9;6016:22;5995:53;:::i;:::-;5985:63;;5940:118;5446:619;;;;;:::o;6071:86::-;6106:7;6146:4;6139:5;6135:16;6124:27;;6071:86;;;:::o;6163:112::-;6246:22;6262:5;6246:22;:::i;:::-;6241:3;6234:35;6163:112;;:::o;6281:214::-;6370:4;6408:2;6397:9;6393:18;6385:26;;6421:67;6485:1;6474:9;6470:17;6461:6;6421:67;:::i;:::-;6281:214;;;;:::o;6501:118::-;6588:24;6606:5;6588:24;:::i;:::-;6583:3;6576:37;6501:118;;:::o;6625:222::-;6718:4;6756:2;6745:9;6741:18;6733:26;;6769:71;6837:1;6826:9;6822:17;6813:6;6769:71;:::i;:::-;6625:222;;;;:::o;6853:116::-;6923:21;6938:5;6923:21;:::i;:::-;6916:5;6913:32;6903:60;;6959:1;6956;6949:12;6903:60;6853:116;:::o;6975:133::-;7018:5;7056:6;7043:20;7034:29;;7072:30;7096:5;7072:30;:::i;:::-;6975:133;;;;:::o;7114:468::-;7179:6;7187;7236:2;7224:9;7215:7;7211:23;7207:32;7204:119;;;7242:79;;:::i;:::-;7204:119;7362:1;7387:53;7432:7;7423:6;7412:9;7408:22;7387:53;:::i;:::-;7377:63;;7333:117;7489:2;7515:50;7557:7;7548:6;7537:9;7533:22;7515:50;:::i;:::-;7505:60;;7460:115;7114:468;;;;;:::o;7588:619::-;7665:6;7673;7681;7730:2;7718:9;7709:7;7705:23;7701:32;7698:119;;;7736:79;;:::i;:::-;7698:119;7856:1;7881:53;7926:7;7917:6;7906:9;7902:22;7881:53;:::i;:::-;7871:63;;7827:117;7983:2;8009:53;8054:7;8045:6;8034:9;8030:22;8009:53;:::i;:::-;7999:63;;7954:118;8111:2;8137:53;8182:7;8173:6;8162:9;8158:22;8137:53;:::i;:::-;8127:63;;8082:118;7588:619;;;;;:::o;8213:323::-;8269:6;8318:2;8306:9;8297:7;8293:23;8289:32;8286:119;;;8324:79;;:::i;:::-;8286:119;8444:1;8469:50;8511:7;8502:6;8491:9;8487:22;8469:50;:::i;:::-;8459:60;;8415:114;8213:323;;;;:::o;8542:117::-;8651:1;8648;8641:12;8665:180;8713:77;8710:1;8703:88;8810:4;8807:1;8800:15;8834:4;8831:1;8824:15;8851:281;8934:27;8956:4;8934:27;:::i;:::-;8926:6;8922:40;9064:6;9052:10;9049:22;9028:18;9016:10;9013:34;9010:62;9007:88;;;9075:18;;:::i;:::-;9007:88;9115:10;9111:2;9104:22;8894:238;8851:281;;:::o;9138:129::-;9172:6;9199:20;;:::i;:::-;9189:30;;9228:33;9256:4;9248:6;9228:33;:::i;:::-;9138:129;;;:::o;9273:311::-;9350:4;9440:18;9432:6;9429:30;9426:56;;;9462:18;;:::i;:::-;9426:56;9512:4;9504:6;9500:17;9492:25;;9572:4;9566;9562:15;9554:23;;9273:311;;;:::o;9590:117::-;9699:1;9696;9689:12;9730:710;9826:5;9851:81;9867:64;9924:6;9867:64;:::i;:::-;9851:81;:::i;:::-;9842:90;;9952:5;9981:6;9974:5;9967:21;10015:4;10008:5;10004:16;9997:23;;10068:4;10060:6;10056:17;10048:6;10044:30;10097:3;10089:6;10086:15;10083:122;;;10116:79;;:::i;:::-;10083:122;10231:6;10214:220;10248:6;10243:3;10240:15;10214:220;;;10323:3;10352:37;10385:3;10373:10;10352:37;:::i;:::-;10347:3;10340:50;10419:4;10414:3;10410:14;10403:21;;10290:144;10274:4;10269:3;10265:14;10258:21;;10214:220;;;10218:21;9832:608;;9730:710;;;;;:::o;10463:370::-;10534:5;10583:3;10576:4;10568:6;10564:17;10560:27;10550:122;;10591:79;;:::i;:::-;10550:122;10708:6;10695:20;10733:94;10823:3;10815:6;10808:4;10800:6;10796:17;10733:94;:::i;:::-;10724:103;;10540:293;10463:370;;;;:::o;10839:678::-;10929:6;10937;10986:2;10974:9;10965:7;10961:23;10957:32;10954:119;;;10992:79;;:::i;:::-;10954:119;11140:1;11129:9;11125:17;11112:31;11170:18;11162:6;11159:30;11156:117;;;11192:79;;:::i;:::-;11156:117;11297:78;11367:7;11358:6;11347:9;11343:22;11297:78;:::i;:::-;11287:88;;11083:302;11424:2;11450:50;11492:7;11483:6;11472:9;11468:22;11450:50;:::i;:::-;11440:60;;11395:115;10839:678;;;;;:::o;11523:474::-;11591:6;11599;11648:2;11636:9;11627:7;11623:23;11619:32;11616:119;;;11654:79;;:::i;:::-;11616:119;11774:1;11799:53;11844:7;11835:6;11824:9;11820:22;11799:53;:::i;:::-;11789:63;;11745:117;11901:2;11927:53;11972:7;11963:6;11952:9;11948:22;11927:53;:::i;:::-;11917:63;;11872:118;11523:474;;;;;:::o;12003:911::-;12098:6;12106;12114;12122;12130;12179:3;12167:9;12158:7;12154:23;12150:33;12147:120;;;12186:79;;:::i;:::-;12147:120;12306:1;12331:53;12376:7;12367:6;12356:9;12352:22;12331:53;:::i;:::-;12321:63;;12277:117;12433:2;12459:53;12504:7;12495:6;12484:9;12480:22;12459:53;:::i;:::-;12449:63;;12404:118;12561:2;12587:53;12632:7;12623:6;12612:9;12608:22;12587:53;:::i;:::-;12577:63;;12532:118;12689:2;12715:53;12760:7;12751:6;12740:9;12736:22;12715:53;:::i;:::-;12705:63;;12660:118;12817:3;12844:53;12889:7;12880:6;12869:9;12865:22;12844:53;:::i;:::-;12834:63;;12788:119;12003:911;;;;;;;;:::o;12920:180::-;12968:77;12965:1;12958:88;13065:4;13062:1;13055:15;13089:4;13086:1;13079:15;13106:320;13150:6;13187:1;13181:4;13177:12;13167:22;;13234:1;13228:4;13224:12;13255:18;13245:81;;13311:4;13303:6;13299:17;13289:27;;13245:81;13373:2;13365:6;13362:14;13342:18;13339:38;13336:84;;13392:18;;:::i;:::-;13336:84;13157:269;13106:320;;;:::o;13432:182::-;13572:34;13568:1;13560:6;13556:14;13549:58;13432:182;:::o;13620:366::-;13762:3;13783:67;13847:2;13842:3;13783:67;:::i;:::-;13776:74;;13859:93;13948:3;13859:93;:::i;:::-;13977:2;13972:3;13968:12;13961:19;;13620:366;;;:::o;13992:419::-;14158:4;14196:2;14185:9;14181:18;14173:26;;14245:9;14239:4;14235:20;14231:1;14220:9;14216:17;14209:47;14273:131;14399:4;14273:131;:::i;:::-;14265:139;;13992:419;;;:::o;14417:180::-;14465:77;14462:1;14455:88;14562:4;14559:1;14552:15;14586:4;14583:1;14576:15;14603:410;14643:7;14666:20;14684:1;14666:20;:::i;:::-;14661:25;;14700:20;14718:1;14700:20;:::i;:::-;14695:25;;14755:1;14752;14748:9;14777:30;14795:11;14777:30;:::i;:::-;14766:41;;14956:1;14947:7;14943:15;14940:1;14937:22;14917:1;14910:9;14890:83;14867:139;;14986:18;;:::i;:::-;14867:139;14651:362;14603:410;;;;:::o;15019:180::-;15067:77;15064:1;15057:88;15164:4;15161:1;15154:15;15188:4;15185:1;15178:15;15205:185;15245:1;15262:20;15280:1;15262:20;:::i;:::-;15257:25;;15296:20;15314:1;15296:20;:::i;:::-;15291:25;;15335:1;15325:35;;15340:18;;:::i;:::-;15325:35;15382:1;15379;15375:9;15370:14;;15205:185;;;;:::o;15396:234::-;15536:34;15532:1;15524:6;15520:14;15513:58;15605:17;15600:2;15592:6;15588:15;15581:42;15396:234;:::o;15636:366::-;15778:3;15799:67;15863:2;15858:3;15799:67;:::i;:::-;15792:74;;15875:93;15964:3;15875:93;:::i;:::-;15993:2;15988:3;15984:12;15977:19;;15636:366;;;:::o;16008:419::-;16174:4;16212:2;16201:9;16197:18;16189:26;;16261:9;16255:4;16251:20;16247:1;16236:9;16232:17;16225:47;16289:131;16415:4;16289:131;:::i;:::-;16281:139;;16008:419;;;:::o;16433:191::-;16473:3;16492:20;16510:1;16492:20;:::i;:::-;16487:25;;16526:20;16544:1;16526:20;:::i;:::-;16521:25;;16569:1;16566;16562:9;16555:16;;16590:3;16587:1;16584:10;16581:36;;;16597:18;;:::i;:::-;16581:36;16433:191;;;;:::o;16630:179::-;16770:31;16766:1;16758:6;16754:14;16747:55;16630:179;:::o;16815:366::-;16957:3;16978:67;17042:2;17037:3;16978:67;:::i;:::-;16971:74;;17054:93;17143:3;17054:93;:::i;:::-;17172:2;17167:3;17163:12;17156:19;;16815:366;;;:::o;17187:419::-;17353:4;17391:2;17380:9;17376:18;17368:26;;17440:9;17434:4;17430:20;17426:1;17415:9;17411:17;17404:47;17468:131;17594:4;17468:131;:::i;:::-;17460:139;;17187:419;;;:::o;17612:244::-;17752:34;17748:1;17740:6;17736:14;17729:58;17821:27;17816:2;17808:6;17804:15;17797:52;17612:244;:::o;17862:366::-;18004:3;18025:67;18089:2;18084:3;18025:67;:::i;:::-;18018:74;;18101:93;18190:3;18101:93;:::i;:::-;18219:2;18214:3;18210:12;18203:19;;17862:366;;;:::o;18234:419::-;18400:4;18438:2;18427:9;18423:18;18415:26;;18487:9;18481:4;18477:20;18473:1;18462:9;18458:17;18451:47;18515:131;18641:4;18515:131;:::i;:::-;18507:139;;18234:419;;;:::o;18659:180::-;18799:32;18795:1;18787:6;18783:14;18776:56;18659:180;:::o;18845:366::-;18987:3;19008:67;19072:2;19067:3;19008:67;:::i;:::-;19001:74;;19084:93;19173:3;19084:93;:::i;:::-;19202:2;19197:3;19193:12;19186:19;;18845:366;;;:::o;19217:419::-;19383:4;19421:2;19410:9;19406:18;19398:26;;19470:9;19464:4;19460:20;19456:1;19445:9;19441:17;19434:47;19498:131;19624:4;19498:131;:::i;:::-;19490:139;;19217:419;;;:::o;19642:180::-;19690:77;19687:1;19680:88;19787:4;19784:1;19777:15;19811:4;19808:1;19801:15;19828:233;19867:3;19890:24;19908:5;19890:24;:::i;:::-;19881:33;;19936:66;19929:5;19926:77;19923:103;;20006:18;;:::i;:::-;19923:103;20053:1;20046:5;20042:13;20035:20;;19828:233;;;:::o;20067:223::-;20207:34;20203:1;20195:6;20191:14;20184:58;20276:6;20271:2;20263:6;20259:15;20252:31;20067:223;:::o;20296:366::-;20438:3;20459:67;20523:2;20518:3;20459:67;:::i;:::-;20452:74;;20535:93;20624:3;20535:93;:::i;:::-;20653:2;20648:3;20644:12;20637:19;;20296:366;;;:::o;20668:419::-;20834:4;20872:2;20861:9;20857:18;20849:26;;20921:9;20915:4;20911:20;20907:1;20896:9;20892:17;20885:47;20949:131;21075:4;20949:131;:::i;:::-;20941:139;;20668:419;;;:::o;21093:240::-;21233:34;21229:1;21221:6;21217:14;21210:58;21302:23;21297:2;21289:6;21285:15;21278:48;21093:240;:::o;21339:366::-;21481:3;21502:67;21566:2;21561:3;21502:67;:::i;:::-;21495:74;;21578:93;21667:3;21578:93;:::i;:::-;21696:2;21691:3;21687:12;21680:19;;21339:366;;;:::o;21711:419::-;21877:4;21915:2;21904:9;21900:18;21892:26;;21964:9;21958:4;21954:20;21950:1;21939:9;21935:17;21928:47;21992:131;22118:4;21992:131;:::i;:::-;21984:139;;21711:419;;;:::o;22136:239::-;22276:34;22272:1;22264:6;22260:14;22253:58;22345:22;22340:2;22332:6;22328:15;22321:47;22136:239;:::o;22381:366::-;22523:3;22544:67;22608:2;22603:3;22544:67;:::i;:::-;22537:74;;22620:93;22709:3;22620:93;:::i;:::-;22738:2;22733:3;22729:12;22722:19;;22381:366;;;:::o;22753:419::-;22919:4;22957:2;22946:9;22942:18;22934:26;;23006:9;23000:4;22996:20;22992:1;22981:9;22977:17;22970:47;23034:131;23160:4;23034:131;:::i;:::-;23026:139;;22753:419;;;:::o;23178:225::-;23318:34;23314:1;23306:6;23302:14;23295:58;23387:8;23382:2;23374:6;23370:15;23363:33;23178:225;:::o;23409:366::-;23551:3;23572:67;23636:2;23631:3;23572:67;:::i;:::-;23565:74;;23648:93;23737:3;23648:93;:::i;:::-;23766:2;23761:3;23757:12;23750:19;;23409:366;;;:::o;23781:419::-;23947:4;23985:2;23974:9;23970:18;23962:26;;24034:9;24028:4;24024:20;24020:1;24009:9;24005:17;23998:47;24062:131;24188:4;24062:131;:::i;:::-;24054:139;;23781:419;;;:::o;24206:179::-;24346:31;24342:1;24334:6;24330:14;24323:55;24206:179;:::o;24391:366::-;24533:3;24554:67;24618:2;24613:3;24554:67;:::i;:::-;24547:74;;24630:93;24719:3;24630:93;:::i;:::-;24748:2;24743:3;24739:12;24732:19;;24391:366;;;:::o;24763:419::-;24929:4;24967:2;24956:9;24952:18;24944:26;;25016:9;25010:4;25006:20;25002:1;24991:9;24987:17;24980:47;25044:131;25170:4;25044:131;:::i;:::-;25036:139;;24763:419;;;:::o;25188:177::-;25328:29;25324:1;25316:6;25312:14;25305:53;25188:177;:::o;25371:366::-;25513:3;25534:67;25598:2;25593:3;25534:67;:::i;:::-;25527:74;;25610:93;25699:3;25610:93;:::i;:::-;25728:2;25723:3;25719:12;25712:19;;25371:366;;;:::o;25743:419::-;25909:4;25947:2;25936:9;25932:18;25924:26;;25996:9;25990:4;25986:20;25982:1;25971:9;25967:17;25960:47;26024:131;26150:4;26024:131;:::i;:::-;26016:139;;25743:419;;;:::o;26168:223::-;26308:34;26304:1;26296:6;26292:14;26285:58;26377:6;26372:2;26364:6;26360:15;26353:31;26168:223;:::o;26397:366::-;26539:3;26560:67;26624:2;26619:3;26560:67;:::i;:::-;26553:74;;26636:93;26725:3;26636:93;:::i;:::-;26754:2;26749:3;26745:12;26738:19;;26397:366;;;:::o;26769:419::-;26935:4;26973:2;26962:9;26958:18;26950:26;;27022:9;27016:4;27012:20;27008:1;26997:9;26993:17;26986:47;27050:131;27176:4;27050:131;:::i;:::-;27042:139;;26769:419;;;:::o;27194:221::-;27334:34;27330:1;27322:6;27318:14;27311:58;27403:4;27398:2;27390:6;27386:15;27379:29;27194:221;:::o;27421:366::-;27563:3;27584:67;27648:2;27643:3;27584:67;:::i;:::-;27577:74;;27660:93;27749:3;27660:93;:::i;:::-;27778:2;27773:3;27769:12;27762:19;;27421:366;;;:::o;27793:419::-;27959:4;27997:2;27986:9;27982:18;27974:26;;28046:9;28040:4;28036:20;28032:1;28021:9;28017:17;28010:47;28074:131;28200:4;28074:131;:::i;:::-;28066:139;;27793:419;;;:::o;28218:224::-;28358:34;28354:1;28346:6;28342:14;28335:58;28427:7;28422:2;28414:6;28410:15;28403:32;28218:224;:::o;28448:366::-;28590:3;28611:67;28675:2;28670:3;28611:67;:::i;:::-;28604:74;;28687:93;28776:3;28687:93;:::i;:::-;28805:2;28800:3;28796:12;28789:19;;28448:366;;;:::o;28820:419::-;28986:4;29024:2;29013:9;29009:18;29001:26;;29073:9;29067:4;29063:20;29059:1;29048:9;29044:17;29037:47;29101:131;29227:4;29101:131;:::i;:::-;29093:139;;28820:419;;;:::o;29245:222::-;29385:34;29381:1;29373:6;29369:14;29362:58;29454:5;29449:2;29441:6;29437:15;29430:30;29245:222;:::o;29473:366::-;29615:3;29636:67;29700:2;29695:3;29636:67;:::i;:::-;29629:74;;29712:93;29801:3;29712:93;:::i;:::-;29830:2;29825:3;29821:12;29814:19;;29473:366;;;:::o;29845:419::-;30011:4;30049:2;30038:9;30034:18;30026:26;;30098:9;30092:4;30088:20;30084:1;30073:9;30069:17;30062:47;30126:131;30252:4;30126:131;:::i;:::-;30118:139;;29845:419;;;:::o;30270:236::-;30410:34;30406:1;30398:6;30394:14;30387:58;30479:19;30474:2;30466:6;30462:15;30455:44;30270:236;:::o;30512:366::-;30654:3;30675:67;30739:2;30734:3;30675:67;:::i;:::-;30668:74;;30751:93;30840:3;30751:93;:::i;:::-;30869:2;30864:3;30860:12;30853:19;;30512:366;;;:::o;30884:419::-;31050:4;31088:2;31077:9;31073:18;31065:26;;31137:9;31131:4;31127:20;31123:1;31112:9;31108:17;31101:47;31165:131;31291:4;31165:131;:::i;:::-;31157:139;;30884:419;;;:::o;31309:172::-;31449:24;31445:1;31437:6;31433:14;31426:48;31309:172;:::o;31487:366::-;31629:3;31650:67;31714:2;31709:3;31650:67;:::i;:::-;31643:74;;31726:93;31815:3;31726:93;:::i;:::-;31844:2;31839:3;31835:12;31828:19;;31487:366;;;:::o;31859:419::-;32025:4;32063:2;32052:9;32048:18;32040:26;;32112:9;32106:4;32102:20;32098:1;32087:9;32083:17;32076:47;32140:131;32266:4;32140:131;:::i;:::-;32132:139;;31859:419;;;:::o;32284:297::-;32424:34;32420:1;32412:6;32408:14;32401:58;32493:34;32488:2;32480:6;32476:15;32469:59;32562:11;32557:2;32549:6;32545:15;32538:36;32284:297;:::o;32587:366::-;32729:3;32750:67;32814:2;32809:3;32750:67;:::i;:::-;32743:74;;32826:93;32915:3;32826:93;:::i;:::-;32944:2;32939:3;32935:12;32928:19;;32587:366;;;:::o;32959:419::-;33125:4;33163:2;33152:9;33148:18;33140:26;;33212:9;33206:4;33202:20;33198:1;33187:9;33183:17;33176:47;33240:131;33366:4;33240:131;:::i;:::-;33232:139;;32959:419;;;:::o;33384:240::-;33524:34;33520:1;33512:6;33508:14;33501:58;33593:23;33588:2;33580:6;33576:15;33569:48;33384:240;:::o;33630:366::-;33772:3;33793:67;33857:2;33852:3;33793:67;:::i;:::-;33786:74;;33869:93;33958:3;33869:93;:::i;:::-;33987:2;33982:3;33978:12;33971:19;;33630:366;;;:::o;34002:419::-;34168:4;34206:2;34195:9;34191:18;34183:26;;34255:9;34249:4;34245:20;34241:1;34230:9;34226:17;34219:47;34283:131;34409:4;34283:131;:::i;:::-;34275:139;;34002:419;;;:::o;34427:169::-;34567:21;34563:1;34555:6;34551:14;34544:45;34427:169;:::o;34602:366::-;34744:3;34765:67;34829:2;34824:3;34765:67;:::i;:::-;34758:74;;34841:93;34930:3;34841:93;:::i;:::-;34959:2;34954:3;34950:12;34943:19;;34602:366;;;:::o;34974:419::-;35140:4;35178:2;35167:9;35163:18;35155:26;;35227:9;35221:4;35217:20;35213:1;35202:9;35198:17;35191:47;35255:131;35381:4;35255:131;:::i;:::-;35247:139;;34974:419;;;:::o;35399:241::-;35539:34;35535:1;35527:6;35523:14;35516:58;35608:24;35603:2;35595:6;35591:15;35584:49;35399:241;:::o;35646:366::-;35788:3;35809:67;35873:2;35868:3;35809:67;:::i;:::-;35802:74;;35885:93;35974:3;35885:93;:::i;:::-;36003:2;35998:3;35994:12;35987:19;;35646:366;;;:::o;36018:419::-;36184:4;36222:2;36211:9;36207:18;36199:26;;36271:9;36265:4;36261:20;36257:1;36246:9;36242:17;36235:47;36299:131;36425:4;36299:131;:::i;:::-;36291:139;;36018:419;;;:::o;36443:194::-;36483:4;36503:20;36521:1;36503:20;:::i;:::-;36498:25;;36537:20;36555:1;36537:20;:::i;:::-;36532:25;;36581:1;36578;36574:9;36566:17;;36605:1;36599:4;36596:11;36593:37;;;36610:18;;:::i;:::-;36593:37;36443:194;;;;:::o;36643:147::-;36744:11;36781:3;36766:18;;36643:147;;;;:::o;36796:114::-;;:::o;36916:398::-;37075:3;37096:83;37177:1;37172:3;37096:83;:::i;:::-;37089:90;;37188:93;37277:3;37188:93;:::i;:::-;37306:1;37301:3;37297:11;37290:18;;36916:398;;;:::o;37320:379::-;37504:3;37526:147;37669:3;37526:147;:::i;:::-;37519:154;;37690:3;37683:10;;37320:379;;;:::o;37705:220::-;37845:34;37841:1;37833:6;37829:14;37822:58;37914:3;37909:2;37901:6;37897:15;37890:28;37705:220;:::o;37931:366::-;38073:3;38094:67;38158:2;38153:3;38094:67;:::i;:::-;38087:74;;38170:93;38259:3;38170:93;:::i;:::-;38288:2;38283:3;38279:12;38272:19;;37931:366;;;:::o;38303:419::-;38469:4;38507:2;38496:9;38492:18;38484:26;;38556:9;38550:4;38546:20;38542:1;38531:9;38527:17;38520:47;38584:131;38710:4;38584:131;:::i;:::-;38576:139;;38303:419;;;:::o;38728:143::-;38785:5;38816:6;38810:13;38801:22;;38832:33;38859:5;38832:33;:::i;:::-;38728:143;;;;:::o;38877:351::-;38947:6;38996:2;38984:9;38975:7;38971:23;38967:32;38964:119;;;39002:79;;:::i;:::-;38964:119;39122:1;39147:64;39203:7;39194:6;39183:9;39179:22;39147:64;:::i;:::-;39137:74;;39093:128;38877:351;;;;:::o;39234:85::-;39279:7;39308:5;39297:16;;39234:85;;;:::o;39325:158::-;39383:9;39416:61;39434:42;39443:32;39469:5;39443:32;:::i;:::-;39434:42;:::i;:::-;39416:61;:::i;:::-;39403:74;;39325:158;;;:::o;39489:147::-;39584:45;39623:5;39584:45;:::i;:::-;39579:3;39572:58;39489:147;;:::o;39642:114::-;39709:6;39743:5;39737:12;39727:22;;39642:114;;;:::o;39762:184::-;39861:11;39895:6;39890:3;39883:19;39935:4;39930:3;39926:14;39911:29;;39762:184;;;;:::o;39952:132::-;40019:4;40042:3;40034:11;;40072:4;40067:3;40063:14;40055:22;;39952:132;;;:::o;40090:108::-;40167:24;40185:5;40167:24;:::i;:::-;40162:3;40155:37;40090:108;;:::o;40204:179::-;40273:10;40294:46;40336:3;40328:6;40294:46;:::i;:::-;40372:4;40367:3;40363:14;40349:28;;40204:179;;;;:::o;40389:113::-;40459:4;40491;40486:3;40482:14;40474:22;;40389:113;;;:::o;40538:732::-;40657:3;40686:54;40734:5;40686:54;:::i;:::-;40756:86;40835:6;40830:3;40756:86;:::i;:::-;40749:93;;40866:56;40916:5;40866:56;:::i;:::-;40945:7;40976:1;40961:284;40986:6;40983:1;40980:13;40961:284;;;41062:6;41056:13;41089:63;41148:3;41133:13;41089:63;:::i;:::-;41082:70;;41175:60;41228:6;41175:60;:::i;:::-;41165:70;;41021:224;41008:1;41005;41001:9;40996:14;;40961:284;;;40965:14;41261:3;41254:10;;40662:608;;;40538:732;;;;:::o;41276:831::-;41539:4;41577:3;41566:9;41562:19;41554:27;;41591:71;41659:1;41648:9;41644:17;41635:6;41591:71;:::i;:::-;41672:80;41748:2;41737:9;41733:18;41724:6;41672:80;:::i;:::-;41799:9;41793:4;41789:20;41784:2;41773:9;41769:18;41762:48;41827:108;41930:4;41921:6;41827:108;:::i;:::-;41819:116;;41945:72;42013:2;42002:9;41998:18;41989:6;41945:72;:::i;:::-;42027:73;42095:3;42084:9;42080:19;42071:6;42027:73;:::i;:::-;41276:831;;;;;;;;:::o
Swarm Source
ipfs://5c6c2658c5229c79555fe9f2b4f4c4cc795d7290d3c6b1f8a51bf0de2ec1676c
🤖 Code Reader

Generate instant answers for your smart contract questions using AI Models. Read more.

Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.