S Price: $0.540065 (-10.41%)
    /

    BanditKidZ (KidZ)

    Overview

    TokenID

    1

    Total Transfers

    -

    Market

    Onchain Market Cap

    $0.00

    Circulating Supply Market Cap

    -
    Loading...
    Loading
    Loading...
    Loading
    Loading...
    Loading

    Click here to update the token information / general information

    Contract Source Code Verified (Exact Match)

    Contract Name:
    BanditKidz

    Compiler Version
    v0.8.19+commit.7dd6d404

    Optimization Enabled:
    No with 200 runs

    Other Settings:
    default evmVersion, MIT license

    Contract Source Code (Solidity)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    /**
    *Submitted for verification at SonicScan.org on 2025-01-14
    */
    /**
    *Submitted for verification at SonicScan.org on 2025-01-03
    */
    // SPDX-License-Identifier: MIT
    // File: @openzeppelin/contracts/utils/Strings.sol
    // OpenZeppelin Contracts v4.4.1 (utils/Strings.sol)
    pragma solidity ^0.8.0;
    /**
    * @dev String operations.
    */
    library Strings {
    bytes16 private constant _HEX_SYMBOLS = "0123456789abcdef";
    /**
    * @dev Converts a `uint256` to its ASCII `string` decimal representation.
    */
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Contract Security Audit

    Contract ABI

    API
    [{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"string","name":"_initBaseURI","type":"string"},{"internalType":"string","name":"_initNotRevealedUri","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"addressMintedBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseExtension","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxMintAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_mintAmount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftPerAddressLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"notRevealedUri","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"onlyWhitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_state","type":"bool"}],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"publicCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reveal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"revealed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_newBaseExtension","type":"string"}],"name":"setBaseExtension","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_newBaseURI","type":"string"}],"name":"setBaseURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newmaxMintAmount","type":"uint256"}],"name":"setMaxMintAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_limit","type":"uint256"}],"name":"setNftPerAddressLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_notRevealedURI","type":"string"}],"name":"setNotRevealedURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_state","type":"bool"}],"name":"setOnlyWhitelisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newCost","type":"uint256"}],"name":"setPublicCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newCost","type":"uint256"}],"name":"setWhitelistCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256[]","name":"_allowances","type":"uint256[]"}],"name":"setWhitelistUsers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"walletOfOwner","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whitelistCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelistMintAllowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"payable","type":"function"}]

    60806040526040518060400160405280600581526020017f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600c90816200004a919062000628565b50680340aad21b3b700000600e5568022b1c8c1227a00000600f5561017760105560646011556101f46012556000601360006101000a81548160ff0219169083151502179055506000601360016101000a81548160ff0219169083151502179055506001601360026101000a81548160ff021916908315150217905550348015620000d457600080fd5b5060405162005e6f38038062005e6f8339818101604052810190620000fa919062000873565b838381600090816200010d919062000628565b5080600190816200011f919062000628565b50505062000142620001366200016e60201b60201c565b6200017660201b60201c565b62000153826200023c60201b60201c565b6200016481620002e060201b60201c565b50505050620009e4565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6200024c6200016e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620002726200038460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620002cb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c290620009c2565b60405180910390fd5b80600b9081620002dc919062000628565b5050565b620002f06200016e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620003166200038460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146200036f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200036690620009c2565b60405180910390fd5b80600d908162000380919062000628565b5050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200043057607f821691505b602082108103620004465762000445620003e8565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620004b07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000471565b620004bc868362000471565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200050962000503620004fd84620004d4565b620004de565b620004d4565b9050919050565b6000819050919050565b6200052583620004e8565b6200053d620005348262000510565b8484546200047e565b825550505050565b600090565b6200055462000545565b620005618184846200051a565b505050565b5b8181101562000589576200057d6000826200054a565b60018101905062000567565b5050565b601f821115620005d857620005a2816200044c565b620005ad8462000461565b81016020851015620005bd578190505b620005d5620005cc8562000461565b83018262000566565b50505b505050565b600082821c905092915050565b6000620005fd60001984600802620005dd565b1980831691505092915050565b6000620006188383620005ea565b9150826002028217905092915050565b6200063382620003ae565b67ffffffffffffffff8111156200064f576200064e620003b9565b5b6200065b825462000417565b620006688282856200058d565b600060209050601f831160018114620006a057600084156200068b578287015190505b6200069785826200060a565b86555062000707565b601f198416620006b0866200044c565b60005b82811015620006da57848901518255600182019150602085019450602081019050620006b3565b86831015620006fa5784890151620006f6601f891682620005ea565b8355505b6001600288020188555050505b505050505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b62000749826200072d565b810181811067ffffffffffffffff821117156200076b576200076a620003b9565b5b80604052505050565b6000620007806200070f565b90506200078e82826200073e565b919050565b600067ffffffffffffffff821115620007b157620007b0620003b9565b5b620007bc826200072d565b9050602081019050919050565b60005b83811015620007e9578082015181840152602081019050620007cc565b60008484015250505050565b60006200080c620008068462000793565b62000774565b9050828152602081018484840111156200082b576200082a62000728565b5b62000838848285620007c9565b509392505050565b600082601f83011262000858576200085762000723565b5b81516200086a848260208601620007f5565b91505092915050565b6000806000806080858703121562000890576200088f62000719565b5b600085015167ffffffffffffffff811115620008b157620008b06200071e565b5b620008bf8782880162000840565b945050602085015167ffffffffffffffff811115620008e357620008e26200071e565b5b620008f18782880162000840565b935050604085015167ffffffffffffffff8111156200091557620009146200071e565b5b620009238782880162000840565b925050606085015167ffffffffffffffff8111156200094757620009466200071e565b5b620009558782880162000840565b91505092959194509250565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620009aa60208362000961565b9150620009b78262000972565b602082019050919050565b60006020820190508181036000830152620009dd816200099b565b9050919050565b61547b80620009f46000396000f3fe60806040526004361061027d5760003560e01c806370a082311161014f578063b88d4fde116100c1578063d5abeb011161007a578063d5abeb011461097c578063da3ef23f146109a7578063e7b99ec7146109d0578063e985e9c5146109fb578063f2c4ce1e14610a38578063f2fde38b14610a615761027d565b8063b88d4fde1461086e578063ba7d2c7614610897578063c6682862146108c2578063c87b56dd146108ed578063d0eb26b01461092a578063d49479eb146109535761027d565b806394265e381161011357806394265e381461077f57806395d89b41146107bc5780639c70b512146107e7578063a0712d6814610812578063a22cb4651461082e578063a475b5dd146108575761027d565b806370a08231146106ac578063715018a6146106e9578063811d2437146107005780638693da20146107295780638da5cb5b146107545761027d565b806323b872dd116101f35780634f6ccce7116101ac5780634f6ccce71461058857806351830227146105c557806355f804b3146105f05780635c975abb146106195780636352211e146106445780636c0360eb146106815761027d565b806323b872dd146104895780632f745c59146104b25780633c952764146104ef5780633ccfd60b1461051857806342842e0e14610522578063438b63001461054b5761027d565b8063088a4ed011610245578063088a4ed01461037b578063095ea7b3146103a457806318160ddd146103cd57806318cae269146103f85780632025d34214610435578063239c70ae1461045e5761027d565b806301ffc9a71461028257806302329a29146102bf57806306fdde03146102e8578063081812fc14610313578063081c8c4414610350575b600080fd5b34801561028e57600080fd5b506102a960048036038101906102a4919061368c565b610a8a565b6040516102b691906136d4565b60405180910390f35b3480156102cb57600080fd5b506102e660048036038101906102e1919061371b565b610b04565b005b3480156102f457600080fd5b506102fd610b9d565b60405161030a91906137d8565b60405180910390f35b34801561031f57600080fd5b5061033a60048036038101906103359190613830565b610c2f565b604051610347919061389e565b60405180910390f35b34801561035c57600080fd5b50610365610cb4565b60405161037291906137d8565b60405180910390f35b34801561038757600080fd5b506103a2600480360381019061039d9190613830565b610d42565b005b3480156103b057600080fd5b506103cb60048036038101906103c691906138e5565b610dc8565b005b3480156103d957600080fd5b506103e2610edf565b6040516103ef9190613934565b60405180910390f35b34801561040457600080fd5b5061041f600480360381019061041a919061394f565b610eec565b60405161042c9190613934565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190613a37565b610f04565b005b34801561046a57600080fd5b50610473611074565b6040516104809190613934565b60405180910390f35b34801561049557600080fd5b506104b060048036038101906104ab9190613ab8565b61107a565b005b3480156104be57600080fd5b506104d960048036038101906104d491906138e5565b6110da565b6040516104e69190613934565b60405180910390f35b3480156104fb57600080fd5b506105166004803603810190610511919061371b565b61117f565b005b610520611218565b005b34801561052e57600080fd5b5061054960048036038101906105449190613ab8565b611314565b005b34801561055757600080fd5b50610572600480360381019061056d919061394f565b611334565b60405161057f9190613bc9565b60405180910390f35b34801561059457600080fd5b506105af60048036038101906105aa9190613830565b6113e2565b6040516105bc9190613934565b60405180910390f35b3480156105d157600080fd5b506105da611453565b6040516105e791906136d4565b60405180910390f35b3480156105fc57600080fd5b5061061760048036038101906106129190613d1b565b611466565b005b34801561062557600080fd5b5061062e6114f5565b60405161063b91906136d4565b60405180910390f35b34801561065057600080fd5b5061066b60048036038101906106669190613830565b611508565b604051610678919061389e565b60405180910390f35b34801561068d57600080fd5b506106966115b9565b6040516106a391906137d8565b60405180910390f35b3480156106b857600080fd5b506106d360048036038101906106ce919061394f565b611647565b6040516106e09190613934565b60405180910390f35b3480156106f557600080fd5b506106fe6116fe565b005b34801561070c57600080fd5b5061072760048036038101906107229190613830565b611786565b005b34801561073557600080fd5b5061073e61180c565b60405161074b9190613934565b60405180910390f35b34801561076057600080fd5b50610769611812565b604051610776919061389e565b60405180910390f35b34801561078b57600080fd5b506107a660048036038101906107a1919061394f565b61183c565b6040516107b39190613934565b60405180910390f35b3480156107c857600080fd5b506107d1611854565b6040516107de91906137d8565b60405180910390f35b3480156107f357600080fd5b506107fc6118e6565b60405161080991906136d4565b60405180910390f35b61082c60048036038101906108279190613830565b6118f9565b005b34801561083a57600080fd5b5061085560048036038101906108509190613d64565b611d07565b005b34801561086357600080fd5b5061086c611d1d565b005b34801561087a57600080fd5b5061089560048036038101906108909190613e45565b611db6565b005b3480156108a357600080fd5b506108ac611e18565b6040516108b99190613934565b60405180910390f35b3480156108ce57600080fd5b506108d7611e1e565b6040516108e491906137d8565b60405180910390f35b3480156108f957600080fd5b50610914600480360381019061090f9190613830565b611eac565b60405161092191906137d8565b60405180910390f35b34801561093657600080fd5b50610951600480360381019061094c9190613830565b612004565b005b34801561095f57600080fd5b5061097a60048036038101906109759190613830565b61208a565b005b34801561098857600080fd5b50610991612110565b60405161099e9190613934565b60405180910390f35b3480156109b357600080fd5b506109ce60048036038101906109c99190613d1b565b612116565b005b3480156109dc57600080fd5b506109e56121a5565b6040516109f29190613934565b60405180910390f35b348015610a0757600080fd5b50610a226004803603810190610a1d9190613ec8565b6121ab565b604051610a2f91906136d4565b60405180910390f35b348015610a4457600080fd5b50610a5f6004803603810190610a5a9190613d1b565b61223f565b005b348015610a6d57600080fd5b50610a886004803603810190610a83919061394f565b6122ce565b005b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610afd5750610afc826123c5565b5b9050919050565b610b0c6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610b2a611812565b73ffffffffffffffffffffffffffffffffffffffff1614610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7790613f54565b60405180910390fd5b80601360006101000a81548160ff02191690831515021790555050565b606060008054610bac90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd890613fa3565b8015610c255780601f10610bfa57610100808354040283529160200191610c25565b820191906000526020600020905b815481529060010190602001808311610c0857829003601f168201915b5050505050905090565b6000610c3a826124af565b610c79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7090614046565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600d8054610cc190613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054610ced90613fa3565b8015610d3a5780601f10610d0f57610100808354040283529160200191610d3a565b820191906000526020600020905b815481529060010190602001808311610d1d57829003601f168201915b505050505081565b610d4a6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610d68611812565b73ffffffffffffffffffffffffffffffffffffffff1614610dbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db590613f54565b60405180910390fd5b8060118190555050565b6000610dd382611508565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a906140d8565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610e626124a7565b73ffffffffffffffffffffffffffffffffffffffff161480610e915750610e9081610e8b6124a7565b6121ab565b5b610ed0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec79061416a565b60405180910390fd5b610eda838361251b565b505050565b6000600880549050905090565b60156020528060005260406000206000915090505481565b610f0c6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610f2a611812565b73ffffffffffffffffffffffffffffffffffffffff1614610f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7790613f54565b60405180910390fd5b818190508484905014610fc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbf906141d6565b60405180910390fd5b60005b8484905081101561106d57828282818110610fe957610fe86141f6565b5b9050602002013560146000878785818110611007576110066141f6565b5b905060200201602081019061101c919061394f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061106590614254565b915050610fcb565b5050505050565b60115481565b61108b6110856124a7565b826125d4565b6110ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c19061430e565b60405180910390fd5b6110d58383836126b2565b505050565b60006110e583611647565b8210611126576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111d906143a0565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6111876124a7565b73ffffffffffffffffffffffffffffffffffffffff166111a5611812565b73ffffffffffffffffffffffffffffffffffffffff16146111fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f290613f54565b60405180910390fd5b80601360026101000a81548160ff02191690831515021790555050565b6112206124a7565b73ffffffffffffffffffffffffffffffffffffffff1661123e611812565b73ffffffffffffffffffffffffffffffffffffffff1614611294576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128b90613f54565b60405180910390fd5b600061129e611812565b73ffffffffffffffffffffffffffffffffffffffff16476040516112c1906143f1565b60006040518083038185875af1925050503d80600081146112fe576040519150601f19603f3d011682016040523d82523d6000602084013e611303565b606091505b505090508061131157600080fd5b50565b61132f83838360405180602001604052806000815250611db6565b505050565b6060600061134183611647565b905060008167ffffffffffffffff81111561135f5761135e613bf0565b5b60405190808252806020026020018201604052801561138d5781602001602082028036833780820191505090505b50905060005b828110156113d7576113a585826110da565b8282815181106113b8576113b76141f6565b5b60200260200101818152505080806113cf90614254565b915050611393565b508092505050919050565b60006113ec610edf565b821061142d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142490614478565b60405180910390fd5b60088281548110611441576114406141f6565b5b90600052602060002001549050919050565b601360019054906101000a900460ff1681565b61146e6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661148c611812565b73ffffffffffffffffffffffffffffffffffffffff16146114e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d990613f54565b60405180910390fd5b80600b90816114f19190614644565b5050565b601360009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036115b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a790614788565b60405180910390fd5b80915050919050565b600b80546115c690613fa3565b80601f01602080910402602001604051908101604052809291908181526020018280546115f290613fa3565b801561163f5780601f106116145761010080835404028352916020019161163f565b820191906000526020600020905b81548152906001019060200180831161162257829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ae9061481a565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6117066124a7565b73ffffffffffffffffffffffffffffffffffffffff16611724611812565b73ffffffffffffffffffffffffffffffffffffffff161461177a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177190613f54565b60405180910390fd5b6117846000612918565b565b61178e6124a7565b73ffffffffffffffffffffffffffffffffffffffff166117ac611812565b73ffffffffffffffffffffffffffffffffffffffff1614611802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f990613f54565b60405180910390fd5b80600e8190555050565b600e5481565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60146020528060005260406000206000915090505481565b60606001805461186390613fa3565b80601f016020809104026020016040519081016040528092919081815260200182805461188f90613fa3565b80156118dc5780601f106118b1576101008083540402835291602001916118dc565b820191906000526020600020905b8154815290600101906020018083116118bf57829003601f168201915b5050505050905090565b601360029054906101000a900460ff1681565b601360009054906101000a900460ff1615611949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194090614886565b60405180910390fd5b6000611953610edf565b905060008211611998576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198f906148f2565b60405180910390fd5b6011548211156119dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d490614984565b60405180910390fd5b60105482826119ec91906149a4565b1115611a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2490614a24565b60405180910390fd5b611a35611812565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c7757601360029054906101000a900460ff1615611c25576000601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411611afe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af590614ab6565b60405180910390fd5b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548382611b8e91906149a4565b1115611bcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc690614b48565b60405180910390fd5b82600f54611bdd9190614b68565b341015611c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1690614c1c565b60405180910390fd5b50611c76565b81600e54611c339190614b68565b341015611c75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6c90614cae565b60405180910390fd5b5b5b6000600190505b828111611d0257601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190611cd590614254565b9190505550611cef338284611cea91906149a4565b6129de565b8080611cfa90614254565b915050611c7e565b505050565b611d19611d126124a7565b83836129fc565b5050565b611d256124a7565b73ffffffffffffffffffffffffffffffffffffffff16611d43611812565b73ffffffffffffffffffffffffffffffffffffffff1614611d99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9090613f54565b60405180910390fd5b6001601360016101000a81548160ff021916908315150217905550565b611dc7611dc16124a7565b836125d4565b611e06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dfd9061430e565b60405180910390fd5b611e1284848484612b68565b50505050565b60125481565b600c8054611e2b90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054611e5790613fa3565b8015611ea45780601f10611e7957610100808354040283529160200191611ea4565b820191906000526020600020905b815481529060010190602001808311611e8757829003601f168201915b505050505081565b6060611eb7826124af565b611ef6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eed90614d40565b60405180910390fd5b60001515601360019054906101000a900460ff16151503611fa357600d8054611f1e90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054611f4a90613fa3565b8015611f975780601f10611f6c57610100808354040283529160200191611f97565b820191906000526020600020905b815481529060010190602001808311611f7a57829003601f168201915b50505050509050611fff565b6000611fad612bc4565b90506000815111611fcd5760405180602001604052806000815250611ffb565b80611fd784612c56565b600c604051602001611feb93929190614e1f565b6040516020818303038152906040525b9150505b919050565b61200c6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661202a611812565b73ffffffffffffffffffffffffffffffffffffffff1614612080576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207790613f54565b60405180910390fd5b8060128190555050565b6120926124a7565b73ffffffffffffffffffffffffffffffffffffffff166120b0611812565b73ffffffffffffffffffffffffffffffffffffffff1614612106576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120fd90613f54565b60405180910390fd5b80600f8190555050565b60105481565b61211e6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661213c611812565b73ffffffffffffffffffffffffffffffffffffffff1614612192576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218990613f54565b60405180910390fd5b80600c90816121a19190614644565b5050565b600f5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6122476124a7565b73ffffffffffffffffffffffffffffffffffffffff16612265611812565b73ffffffffffffffffffffffffffffffffffffffff16146122bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b290613f54565b60405180910390fd5b80600d90816122ca9190614644565b5050565b6122d66124a7565b73ffffffffffffffffffffffffffffffffffffffff166122f4611812565b73ffffffffffffffffffffffffffffffffffffffff161461234a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161234190613f54565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123b090614ec2565b60405180910390fd5b6123c281612918565b50565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061249057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806124a0575061249f82612db6565b5b9050919050565b600033905090565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661258e83611508565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006125df826124af565b61261e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161261590614f54565b60405180910390fd5b600061262983611508565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061266b575061266a81856121ab565b5b806126a957508373ffffffffffffffffffffffffffffffffffffffff1661269184610c2f565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166126d282611508565b73ffffffffffffffffffffffffffffffffffffffff1614612728576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161271f90614fe6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161278e90615078565b60405180910390fd5b6127a2838383612e20565b6127ad60008261251b565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127fd9190615098565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461285491906149a4565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612913838383612f32565b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6129f8828260405180602001604052806000815250612f37565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a6190615118565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612b5b91906136d4565b60405180910390a3505050565b612b738484846126b2565b612b7f84848484612f92565b612bbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bb5906151aa565b60405180910390fd5b50505050565b6060600b8054612bd390613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054612bff90613fa3565b8015612c4c5780601f10612c2157610100808354040283529160200191612c4c565b820191906000526020600020905b815481529060010190602001808311612c2f57829003601f168201915b5050505050905090565b606060008203612c9d576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612db1565b600082905060005b60008214612ccf578080612cb890614254565b915050600a82612cc891906151f9565b9150612ca5565b60008167ffffffffffffffff811115612ceb57612cea613bf0565b5b6040519080825280601f01601f191660200182016040528015612d1d5781602001600182028036833780820191505090505b5090505b60008514612daa57600182612d369190615098565b9150600a85612d45919061522a565b6030612d5191906149a4565b60f81b818381518110612d6757612d666141f6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612da391906151f9565b9450612d21565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612e2b838383613119565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e6d57612e688161311e565b612eac565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612eab57612eaa8382613167565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612eee57612ee9816132d4565b612f2d565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612f2c57612f2b82826133a5565b5b5b505050565b505050565b612f418383613424565b612f4e6000848484612f92565b612f8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f84906151aa565b60405180910390fd5b505050565b6000612fb38473ffffffffffffffffffffffffffffffffffffffff166135fd565b1561310c578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612fdc6124a7565b8786866040518563ffffffff1660e01b8152600401612ffe94939291906152b0565b6020604051808303816000875af192505050801561303a57506040513d601f19601f820116820180604052508101906130379190615311565b60015b6130bc573d806000811461306a576040519150601f19603f3d011682016040523d82523d6000602084013e61306f565b606091505b5060008151036130b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130ab906151aa565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613111565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161317484611647565b61317e9190615098565b9050600060076000848152602001908152602001600020549050818114613263576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506132e89190615098565b9050600060096000848152602001908152602001600020549050600060088381548110613318576133176141f6565b5b90600052602060002001549050806008838154811061333a576133396141f6565b5b9060005260206000200181905550816009600083815260200190815260200160002081905550600960008581526020019081526020016000206000905560088054806133895761338861533e565b5b6001900381819060005260206000200160009055905550505050565b60006133b083611647565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613493576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161348a906153b9565b60405180910390fd5b61349c816124af565b156134dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134d390615425565b60405180910390fd5b6134e860008383612e20565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461353891906149a4565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46135f960008383612f32565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61366981613634565b811461367457600080fd5b50565b60008135905061368681613660565b92915050565b6000602082840312156136a2576136a161362a565b5b60006136b084828501613677565b91505092915050565b60008115159050919050565b6136ce816136b9565b82525050565b60006020820190506136e960008301846136c5565b92915050565b6136f8816136b9565b811461370357600080fd5b50565b600081359050613715816136ef565b92915050565b6000602082840312156137315761373061362a565b5b600061373f84828501613706565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613782578082015181840152602081019050613767565b60008484015250505050565b6000601f19601f8301169050919050565b60006137aa82613748565b6137b48185613753565b93506137c4818560208601613764565b6137cd8161378e565b840191505092915050565b600060208201905081810360008301526137f2818461379f565b905092915050565b6000819050919050565b61380d816137fa565b811461381857600080fd5b50565b60008135905061382a81613804565b92915050565b6000602082840312156138465761384561362a565b5b60006138548482850161381b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006138888261385d565b9050919050565b6138988161387d565b82525050565b60006020820190506138b3600083018461388f565b92915050565b6138c28161387d565b81146138cd57600080fd5b50565b6000813590506138df816138b9565b92915050565b600080604083850312156138fc576138fb61362a565b5b600061390a858286016138d0565b925050602061391b8582860161381b565b9150509250929050565b61392e816137fa565b82525050565b60006020820190506139496000830184613925565b92915050565b6000602082840312156139655761396461362a565b5b6000613973848285016138d0565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126139a1576139a061397c565b5b8235905067ffffffffffffffff8111156139be576139bd613981565b5b6020830191508360208202830111156139da576139d9613986565b5b9250929050565b60008083601f8401126139f7576139f661397c565b5b8235905067ffffffffffffffff811115613a1457613a13613981565b5b602083019150836020820283011115613a3057613a2f613986565b5b9250929050565b60008060008060408587031215613a5157613a5061362a565b5b600085013567ffffffffffffffff811115613a6f57613a6e61362f565b5b613a7b8782880161398b565b9450945050602085013567ffffffffffffffff811115613a9e57613a9d61362f565b5b613aaa878288016139e1565b925092505092959194509250565b600080600060608486031215613ad157613ad061362a565b5b6000613adf868287016138d0565b9350506020613af0868287016138d0565b9250506040613b018682870161381b565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613b40816137fa565b82525050565b6000613b528383613b37565b60208301905092915050565b6000602082019050919050565b6000613b7682613b0b565b613b808185613b16565b9350613b8b83613b27565b8060005b83811015613bbc578151613ba38882613b46565b9750613bae83613b5e565b925050600181019050613b8f565b5085935050505092915050565b60006020820190508181036000830152613be38184613b6b565b905092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613c288261378e565b810181811067ffffffffffffffff82111715613c4757613c46613bf0565b5b80604052505050565b6000613c5a613620565b9050613c668282613c1f565b919050565b600067ffffffffffffffff821115613c8657613c85613bf0565b5b613c8f8261378e565b9050602081019050919050565b82818337600083830152505050565b6000613cbe613cb984613c6b565b613c50565b905082815260208101848484011115613cda57613cd9613beb565b5b613ce5848285613c9c565b509392505050565b600082601f830112613d0257613d0161397c565b5b8135613d12848260208601613cab565b91505092915050565b600060208284031215613d3157613d3061362a565b5b600082013567ffffffffffffffff811115613d4f57613d4e61362f565b5b613d5b84828501613ced565b91505092915050565b60008060408385031215613d7b57613d7a61362a565b5b6000613d89858286016138d0565b9250506020613d9a85828601613706565b9150509250929050565b600067ffffffffffffffff821115613dbf57613dbe613bf0565b5b613dc88261378e565b9050602081019050919050565b6000613de8613de384613da4565b613c50565b905082815260208101848484011115613e0457613e03613beb565b5b613e0f848285613c9c565b509392505050565b600082601f830112613e2c57613e2b61397c565b5b8135613e3c848260208601613dd5565b91505092915050565b60008060008060808587031215613e5f57613e5e61362a565b5b6000613e6d878288016138d0565b9450506020613e7e878288016138d0565b9350506040613e8f8782880161381b565b925050606085013567ffffffffffffffff811115613eb057613eaf61362f565b5b613ebc87828801613e17565b91505092959194509250565b60008060408385031215613edf57613ede61362a565b5b6000613eed858286016138d0565b9250506020613efe858286016138d0565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613f3e602083613753565b9150613f4982613f08565b602082019050919050565b60006020820190508181036000830152613f6d81613f31565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613fbb57607f821691505b602082108103613fce57613fcd613f74565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614030602c83613753565b915061403b82613fd4565b604082019050919050565b6000602082019050818103600083015261405f81614023565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006140c2602183613753565b91506140cd82614066565b604082019050919050565b600060208201905081810360008301526140f1816140b5565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000614154603883613753565b915061415f826140f8565b604082019050919050565b6000602082019050818103600083015261418381614147565b9050919050565b7f4d69736d61746368656420696e70757420617272617973000000000000000000600082015250565b60006141c0601783613753565b91506141cb8261418a565b602082019050919050565b600060208201905081810360008301526141ef816141b3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061425f826137fa565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361429157614290614225565b5b600182019050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b60006142f8603183613753565b91506143038261429c565b604082019050919050565b60006020820190508181036000830152614327816142eb565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b600061438a602b83613753565b91506143958261432e565b604082019050919050565b600060208201905081810360008301526143b98161437d565b9050919050565b600081905092915050565b50565b60006143db6000836143c0565b91506143e6826143cb565b600082019050919050565b60006143fc826143ce565b9150819050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000614462602c83613753565b915061446d82614406565b604082019050919050565b6000602082019050818103600083015261449181614455565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026144fa7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826144bd565b61450486836144bd565b95508019841693508086168417925050509392505050565b6000819050919050565b600061454161453c614537846137fa565b61451c565b6137fa565b9050919050565b6000819050919050565b61455b83614526565b61456f61456782614548565b8484546144ca565b825550505050565b600090565b614584614577565b61458f818484614552565b505050565b5b818110156145b3576145a860008261457c565b600181019050614595565b5050565b601f8211156145f8576145c981614498565b6145d2846144ad565b810160208510156145e1578190505b6145f56145ed856144ad565b830182614594565b50505b505050565b600082821c905092915050565b600061461b600019846008026145fd565b1980831691505092915050565b6000614634838361460a565b9150826002028217905092915050565b61464d82613748565b67ffffffffffffffff81111561466657614665613bf0565b5b6146708254613fa3565b61467b8282856145b7565b600060209050601f8311600181146146ae576000841561469c578287015190505b6146a68582614628565b86555061470e565b601f1984166146bc86614498565b60005b828110156146e4578489015182556001820191506020850194506020810190506146bf565b8683101561470157848901516146fd601f89168261460a565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b6000614772602983613753565b915061477d82614716565b604082019050919050565b600060208201905081810360008301526147a181614765565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000614804602a83613753565b915061480f826147a8565b604082019050919050565b60006020820190508181036000830152614833816147f7565b9050919050565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b6000614870601683613753565b915061487b8261483a565b602082019050919050565b6000602082019050818103600083015261489f81614863565b9050919050565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b60006148dc601b83613753565b91506148e7826148a6565b602082019050919050565b6000602082019050818103600083015261490b816148cf565b9050919050565b7f6d6178206d696e7420616d6f756e74207065722073657373696f6e206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b600061496e602483613753565b915061497982614912565b604082019050919050565b6000602082019050818103600083015261499d81614961565b9050919050565b60006149af826137fa565b91506149ba836137fa565b92508282019050808211156149d2576149d1614225565b5b92915050565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b6000614a0e601683613753565b9150614a19826149d8565b602082019050919050565b60006020820190508181036000830152614a3d81614a01565b9050919050565b7f75736572206973206e6f742077686974656c6973746564206f7220686173206e60008201527f6f20616c6c6f77616e6365000000000000000000000000000000000000000000602082015250565b6000614aa0602b83613753565b9150614aab82614a44565b604082019050919050565b60006020820190508181036000830152614acf81614a93565b9050919050565b7f6d61782077686974656c697374206d696e7420616c6c6f77616e63652065786360008201527f6565646564000000000000000000000000000000000000000000000000000000602082015250565b6000614b32602583613753565b9150614b3d82614ad6565b604082019050919050565b60006020820190508181036000830152614b6181614b25565b9050919050565b6000614b73826137fa565b9150614b7e836137fa565b9250828202614b8c816137fa565b91508282048414831517614ba357614ba2614225565b5b5092915050565b7f696e73756666696369656e742066756e647320666f722077686974656c69737460008201527f206d696e74000000000000000000000000000000000000000000000000000000602082015250565b6000614c06602583613753565b9150614c1182614baa565b604082019050919050565b60006020820190508181036000830152614c3581614bf9565b9050919050565b7f696e73756666696369656e742066756e647320666f72207075626c6963206d6960008201527f6e74000000000000000000000000000000000000000000000000000000000000602082015250565b6000614c98602283613753565b9150614ca382614c3c565b604082019050919050565b60006020820190508181036000830152614cc781614c8b565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000614d2a602f83613753565b9150614d3582614cce565b604082019050919050565b60006020820190508181036000830152614d5981614d1d565b9050919050565b600081905092915050565b6000614d7682613748565b614d808185614d60565b9350614d90818560208601613764565b80840191505092915050565b60008154614da981613fa3565b614db38186614d60565b94506001821660008114614dce5760018114614de357614e16565b60ff1983168652811515820286019350614e16565b614dec85614498565b60005b83811015614e0e57815481890152600182019150602081019050614def565b838801955050505b50505092915050565b6000614e2b8286614d6b565b9150614e378285614d6b565b9150614e438284614d9c565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614eac602683613753565b9150614eb782614e50565b604082019050919050565b60006020820190508181036000830152614edb81614e9f565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614f3e602c83613753565b9150614f4982614ee2565b604082019050919050565b60006020820190508181036000830152614f6d81614f31565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000614fd0602583613753565b9150614fdb82614f74565b604082019050919050565b60006020820190508181036000830152614fff81614fc3565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000615062602483613753565b915061506d82615006565b604082019050919050565b6000602082019050818103600083015261509181615055565b9050919050565b60006150a3826137fa565b91506150ae836137fa565b92508282039050818111156150c6576150c5614225565b5b92915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000615102601983613753565b915061510d826150cc565b602082019050919050565b60006020820190508181036000830152615131816150f5565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000615194603283613753565b915061519f82615138565b604082019050919050565b600060208201905081810360008301526151c381615187565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000615204826137fa565b915061520f836137fa565b92508261521f5761521e6151ca565b5b828204905092915050565b6000615235826137fa565b9150615240836137fa565b9250826152505761524f6151ca565b5b828206905092915050565b600081519050919050565b600082825260208201905092915050565b60006152828261525b565b61528c8185615266565b935061529c818560208601613764565b6152a58161378e565b840191505092915050565b60006080820190506152c5600083018761388f565b6152d2602083018661388f565b6152df6040830185613925565b81810360608301526152f18184615277565b905095945050505050565b60008151905061530b81613660565b92915050565b6000602082840312156153275761532661362a565b5b6000615335848285016152fc565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006153a3602083613753565b91506153ae8261536d565b602082019050919050565b600060208201905081810360008301526153d281615396565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600061540f601c83613753565b915061541a826153d9565b602082019050919050565b6000602082019050818103600083015261543e81615402565b905091905056fea2646970667358221220f5684c76169d48d7e3fbdfcc38876b01cdba2bbce0c8e4af598c1893539f31cf64736f6c63430008130033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000a42616e6469744b69645a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044b69645a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d56467435315931464d63433267483775473275363131537239386141637056375472537045387035414a67562f000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d56467435315931464d63433267483775473275363131537239386141637056375472537045387035414a67562f00000000000000000000

    Deployed Bytecode

    0x60806040526004361061027d5760003560e01c806370a082311161014f578063b88d4fde116100c1578063d5abeb011161007a578063d5abeb011461097c578063da3ef23f146109a7578063e7b99ec7146109d0578063e985e9c5146109fb578063f2c4ce1e14610a38578063f2fde38b14610a615761027d565b8063b88d4fde1461086e578063ba7d2c7614610897578063c6682862146108c2578063c87b56dd146108ed578063d0eb26b01461092a578063d49479eb146109535761027d565b806394265e381161011357806394265e381461077f57806395d89b41146107bc5780639c70b512146107e7578063a0712d6814610812578063a22cb4651461082e578063a475b5dd146108575761027d565b806370a08231146106ac578063715018a6146106e9578063811d2437146107005780638693da20146107295780638da5cb5b146107545761027d565b806323b872dd116101f35780634f6ccce7116101ac5780634f6ccce71461058857806351830227146105c557806355f804b3146105f05780635c975abb146106195780636352211e146106445780636c0360eb146106815761027d565b806323b872dd146104895780632f745c59146104b25780633c952764146104ef5780633ccfd60b1461051857806342842e0e14610522578063438b63001461054b5761027d565b8063088a4ed011610245578063088a4ed01461037b578063095ea7b3146103a457806318160ddd146103cd57806318cae269146103f85780632025d34214610435578063239c70ae1461045e5761027d565b806301ffc9a71461028257806302329a29146102bf57806306fdde03146102e8578063081812fc14610313578063081c8c4414610350575b600080fd5b34801561028e57600080fd5b506102a960048036038101906102a4919061368c565b610a8a565b6040516102b691906136d4565b60405180910390f35b3480156102cb57600080fd5b506102e660048036038101906102e1919061371b565b610b04565b005b3480156102f457600080fd5b506102fd610b9d565b60405161030a91906137d8565b60405180910390f35b34801561031f57600080fd5b5061033a60048036038101906103359190613830565b610c2f565b604051610347919061389e565b60405180910390f35b34801561035c57600080fd5b50610365610cb4565b60405161037291906137d8565b60405180910390f35b34801561038757600080fd5b506103a2600480360381019061039d9190613830565b610d42565b005b3480156103b057600080fd5b506103cb60048036038101906103c691906138e5565b610dc8565b005b3480156103d957600080fd5b506103e2610edf565b6040516103ef9190613934565b60405180910390f35b34801561040457600080fd5b5061041f600480360381019061041a919061394f565b610eec565b60405161042c9190613934565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190613a37565b610f04565b005b34801561046a57600080fd5b50610473611074565b6040516104809190613934565b60405180910390f35b34801561049557600080fd5b506104b060048036038101906104ab9190613ab8565b61107a565b005b3480156104be57600080fd5b506104d960048036038101906104d491906138e5565b6110da565b6040516104e69190613934565b60405180910390f35b3480156104fb57600080fd5b506105166004803603810190610511919061371b565b61117f565b005b610520611218565b005b34801561052e57600080fd5b5061054960048036038101906105449190613ab8565b611314565b005b34801561055757600080fd5b50610572600480360381019061056d919061394f565b611334565b60405161057f9190613bc9565b60405180910390f35b34801561059457600080fd5b506105af60048036038101906105aa9190613830565b6113e2565b6040516105bc9190613934565b60405180910390f35b3480156105d157600080fd5b506105da611453565b6040516105e791906136d4565b60405180910390f35b3480156105fc57600080fd5b5061061760048036038101906106129190613d1b565b611466565b005b34801561062557600080fd5b5061062e6114f5565b60405161063b91906136d4565b60405180910390f35b34801561065057600080fd5b5061066b60048036038101906106669190613830565b611508565b604051610678919061389e565b60405180910390f35b34801561068d57600080fd5b506106966115b9565b6040516106a391906137d8565b60405180910390f35b3480156106b857600080fd5b506106d360048036038101906106ce919061394f565b611647565b6040516106e09190613934565b60405180910390f35b3480156106f557600080fd5b506106fe6116fe565b005b34801561070c57600080fd5b5061072760048036038101906107229190613830565b611786565b005b34801561073557600080fd5b5061073e61180c565b60405161074b9190613934565b60405180910390f35b34801561076057600080fd5b50610769611812565b604051610776919061389e565b60405180910390f35b34801561078b57600080fd5b506107a660048036038101906107a1919061394f565b61183c565b6040516107b39190613934565b60405180910390f35b3480156107c857600080fd5b506107d1611854565b6040516107de91906137d8565b60405180910390f35b3480156107f357600080fd5b506107fc6118e6565b60405161080991906136d4565b60405180910390f35b61082c60048036038101906108279190613830565b6118f9565b005b34801561083a57600080fd5b5061085560048036038101906108509190613d64565b611d07565b005b34801561086357600080fd5b5061086c611d1d565b005b34801561087a57600080fd5b5061089560048036038101906108909190613e45565b611db6565b005b3480156108a357600080fd5b506108ac611e18565b6040516108b99190613934565b60405180910390f35b3480156108ce57600080fd5b506108d7611e1e565b6040516108e491906137d8565b60405180910390f35b3480156108f957600080fd5b50610914600480360381019061090f9190613830565b611eac565b60405161092191906137d8565b60405180910390f35b34801561093657600080fd5b50610951600480360381019061094c9190613830565b612004565b005b34801561095f57600080fd5b5061097a60048036038101906109759190613830565b61208a565b005b34801561098857600080fd5b50610991612110565b60405161099e9190613934565b60405180910390f35b3480156109b357600080fd5b506109ce60048036038101906109c99190613d1b565b612116565b005b3480156109dc57600080fd5b506109e56121a5565b6040516109f29190613934565b60405180910390f35b348015610a0757600080fd5b50610a226004803603810190610a1d9190613ec8565b6121ab565b604051610a2f91906136d4565b60405180910390f35b348015610a4457600080fd5b50610a5f6004803603810190610a5a9190613d1b565b61223f565b005b348015610a6d57600080fd5b50610a886004803603810190610a83919061394f565b6122ce565b005b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610afd5750610afc826123c5565b5b9050919050565b610b0c6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610b2a611812565b73ffffffffffffffffffffffffffffffffffffffff1614610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7790613f54565b60405180910390fd5b80601360006101000a81548160ff02191690831515021790555050565b606060008054610bac90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd890613fa3565b8015610c255780601f10610bfa57610100808354040283529160200191610c25565b820191906000526020600020905b815481529060010190602001808311610c0857829003601f168201915b5050505050905090565b6000610c3a826124af565b610c79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7090614046565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600d8054610cc190613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054610ced90613fa3565b8015610d3a5780601f10610d0f57610100808354040283529160200191610d3a565b820191906000526020600020905b815481529060010190602001808311610d1d57829003601f168201915b505050505081565b610d4a6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610d68611812565b73ffffffffffffffffffffffffffffffffffffffff1614610dbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db590613f54565b60405180910390fd5b8060118190555050565b6000610dd382611508565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a906140d8565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610e626124a7565b73ffffffffffffffffffffffffffffffffffffffff161480610e915750610e9081610e8b6124a7565b6121ab565b5b610ed0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec79061416a565b60405180910390fd5b610eda838361251b565b505050565b6000600880549050905090565b60156020528060005260406000206000915090505481565b610f0c6124a7565b73ffffffffffffffffffffffffffffffffffffffff16610f2a611812565b73ffffffffffffffffffffffffffffffffffffffff1614610f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7790613f54565b60405180910390fd5b818190508484905014610fc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbf906141d6565b60405180910390fd5b60005b8484905081101561106d57828282818110610fe957610fe86141f6565b5b9050602002013560146000878785818110611007576110066141f6565b5b905060200201602081019061101c919061394f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061106590614254565b915050610fcb565b5050505050565b60115481565b61108b6110856124a7565b826125d4565b6110ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c19061430e565b60405180910390fd5b6110d58383836126b2565b505050565b60006110e583611647565b8210611126576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111d906143a0565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6111876124a7565b73ffffffffffffffffffffffffffffffffffffffff166111a5611812565b73ffffffffffffffffffffffffffffffffffffffff16146111fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f290613f54565b60405180910390fd5b80601360026101000a81548160ff02191690831515021790555050565b6112206124a7565b73ffffffffffffffffffffffffffffffffffffffff1661123e611812565b73ffffffffffffffffffffffffffffffffffffffff1614611294576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128b90613f54565b60405180910390fd5b600061129e611812565b73ffffffffffffffffffffffffffffffffffffffff16476040516112c1906143f1565b60006040518083038185875af1925050503d80600081146112fe576040519150601f19603f3d011682016040523d82523d6000602084013e611303565b606091505b505090508061131157600080fd5b50565b61132f83838360405180602001604052806000815250611db6565b505050565b6060600061134183611647565b905060008167ffffffffffffffff81111561135f5761135e613bf0565b5b60405190808252806020026020018201604052801561138d5781602001602082028036833780820191505090505b50905060005b828110156113d7576113a585826110da565b8282815181106113b8576113b76141f6565b5b60200260200101818152505080806113cf90614254565b915050611393565b508092505050919050565b60006113ec610edf565b821061142d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142490614478565b60405180910390fd5b60088281548110611441576114406141f6565b5b90600052602060002001549050919050565b601360019054906101000a900460ff1681565b61146e6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661148c611812565b73ffffffffffffffffffffffffffffffffffffffff16146114e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d990613f54565b60405180910390fd5b80600b90816114f19190614644565b5050565b601360009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036115b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a790614788565b60405180910390fd5b80915050919050565b600b80546115c690613fa3565b80601f01602080910402602001604051908101604052809291908181526020018280546115f290613fa3565b801561163f5780601f106116145761010080835404028352916020019161163f565b820191906000526020600020905b81548152906001019060200180831161162257829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ae9061481a565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6117066124a7565b73ffffffffffffffffffffffffffffffffffffffff16611724611812565b73ffffffffffffffffffffffffffffffffffffffff161461177a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177190613f54565b60405180910390fd5b6117846000612918565b565b61178e6124a7565b73ffffffffffffffffffffffffffffffffffffffff166117ac611812565b73ffffffffffffffffffffffffffffffffffffffff1614611802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f990613f54565b60405180910390fd5b80600e8190555050565b600e5481565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60146020528060005260406000206000915090505481565b60606001805461186390613fa3565b80601f016020809104026020016040519081016040528092919081815260200182805461188f90613fa3565b80156118dc5780601f106118b1576101008083540402835291602001916118dc565b820191906000526020600020905b8154815290600101906020018083116118bf57829003601f168201915b5050505050905090565b601360029054906101000a900460ff1681565b601360009054906101000a900460ff1615611949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194090614886565b60405180910390fd5b6000611953610edf565b905060008211611998576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198f906148f2565b60405180910390fd5b6011548211156119dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d490614984565b60405180910390fd5b60105482826119ec91906149a4565b1115611a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2490614a24565b60405180910390fd5b611a35611812565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c7757601360029054906101000a900460ff1615611c25576000601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411611afe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af590614ab6565b60405180910390fd5b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548382611b8e91906149a4565b1115611bcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc690614b48565b60405180910390fd5b82600f54611bdd9190614b68565b341015611c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1690614c1c565b60405180910390fd5b50611c76565b81600e54611c339190614b68565b341015611c75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6c90614cae565b60405180910390fd5b5b5b6000600190505b828111611d0257601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190611cd590614254565b9190505550611cef338284611cea91906149a4565b6129de565b8080611cfa90614254565b915050611c7e565b505050565b611d19611d126124a7565b83836129fc565b5050565b611d256124a7565b73ffffffffffffffffffffffffffffffffffffffff16611d43611812565b73ffffffffffffffffffffffffffffffffffffffff1614611d99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9090613f54565b60405180910390fd5b6001601360016101000a81548160ff021916908315150217905550565b611dc7611dc16124a7565b836125d4565b611e06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dfd9061430e565b60405180910390fd5b611e1284848484612b68565b50505050565b60125481565b600c8054611e2b90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054611e5790613fa3565b8015611ea45780601f10611e7957610100808354040283529160200191611ea4565b820191906000526020600020905b815481529060010190602001808311611e8757829003601f168201915b505050505081565b6060611eb7826124af565b611ef6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eed90614d40565b60405180910390fd5b60001515601360019054906101000a900460ff16151503611fa357600d8054611f1e90613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054611f4a90613fa3565b8015611f975780601f10611f6c57610100808354040283529160200191611f97565b820191906000526020600020905b815481529060010190602001808311611f7a57829003601f168201915b50505050509050611fff565b6000611fad612bc4565b90506000815111611fcd5760405180602001604052806000815250611ffb565b80611fd784612c56565b600c604051602001611feb93929190614e1f565b6040516020818303038152906040525b9150505b919050565b61200c6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661202a611812565b73ffffffffffffffffffffffffffffffffffffffff1614612080576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207790613f54565b60405180910390fd5b8060128190555050565b6120926124a7565b73ffffffffffffffffffffffffffffffffffffffff166120b0611812565b73ffffffffffffffffffffffffffffffffffffffff1614612106576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120fd90613f54565b60405180910390fd5b80600f8190555050565b60105481565b61211e6124a7565b73ffffffffffffffffffffffffffffffffffffffff1661213c611812565b73ffffffffffffffffffffffffffffffffffffffff1614612192576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218990613f54565b60405180910390fd5b80600c90816121a19190614644565b5050565b600f5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6122476124a7565b73ffffffffffffffffffffffffffffffffffffffff16612265611812565b73ffffffffffffffffffffffffffffffffffffffff16146122bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b290613f54565b60405180910390fd5b80600d90816122ca9190614644565b5050565b6122d66124a7565b73ffffffffffffffffffffffffffffffffffffffff166122f4611812565b73ffffffffffffffffffffffffffffffffffffffff161461234a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161234190613f54565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123b090614ec2565b60405180910390fd5b6123c281612918565b50565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061249057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806124a0575061249f82612db6565b5b9050919050565b600033905090565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661258e83611508565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006125df826124af565b61261e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161261590614f54565b60405180910390fd5b600061262983611508565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061266b575061266a81856121ab565b5b806126a957508373ffffffffffffffffffffffffffffffffffffffff1661269184610c2f565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166126d282611508565b73ffffffffffffffffffffffffffffffffffffffff1614612728576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161271f90614fe6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161278e90615078565b60405180910390fd5b6127a2838383612e20565b6127ad60008261251b565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127fd9190615098565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461285491906149a4565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612913838383612f32565b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6129f8828260405180602001604052806000815250612f37565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a6190615118565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612b5b91906136d4565b60405180910390a3505050565b612b738484846126b2565b612b7f84848484612f92565b612bbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bb5906151aa565b60405180910390fd5b50505050565b6060600b8054612bd390613fa3565b80601f0160208091040260200160405190810160405280929190818152602001828054612bff90613fa3565b8015612c4c5780601f10612c2157610100808354040283529160200191612c4c565b820191906000526020600020905b815481529060010190602001808311612c2f57829003601f168201915b5050505050905090565b606060008203612c9d576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612db1565b600082905060005b60008214612ccf578080612cb890614254565b915050600a82612cc891906151f9565b9150612ca5565b60008167ffffffffffffffff811115612ceb57612cea613bf0565b5b6040519080825280601f01601f191660200182016040528015612d1d5781602001600182028036833780820191505090505b5090505b60008514612daa57600182612d369190615098565b9150600a85612d45919061522a565b6030612d5191906149a4565b60f81b818381518110612d6757612d666141f6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612da391906151f9565b9450612d21565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612e2b838383613119565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e6d57612e688161311e565b612eac565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612eab57612eaa8382613167565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612eee57612ee9816132d4565b612f2d565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612f2c57612f2b82826133a5565b5b5b505050565b505050565b612f418383613424565b612f4e6000848484612f92565b612f8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f84906151aa565b60405180910390fd5b505050565b6000612fb38473ffffffffffffffffffffffffffffffffffffffff166135fd565b1561310c578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612fdc6124a7565b8786866040518563ffffffff1660e01b8152600401612ffe94939291906152b0565b6020604051808303816000875af192505050801561303a57506040513d601f19601f820116820180604052508101906130379190615311565b60015b6130bc573d806000811461306a576040519150601f19603f3d011682016040523d82523d6000602084013e61306f565b606091505b5060008151036130b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130ab906151aa565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613111565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161317484611647565b61317e9190615098565b9050600060076000848152602001908152602001600020549050818114613263576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506132e89190615098565b9050600060096000848152602001908152602001600020549050600060088381548110613318576133176141f6565b5b90600052602060002001549050806008838154811061333a576133396141f6565b5b9060005260206000200181905550816009600083815260200190815260200160002081905550600960008581526020019081526020016000206000905560088054806133895761338861533e565b5b6001900381819060005260206000200160009055905550505050565b60006133b083611647565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613493576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161348a906153b9565b60405180910390fd5b61349c816124af565b156134dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134d390615425565b60405180910390fd5b6134e860008383612e20565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461353891906149a4565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46135f960008383612f32565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61366981613634565b811461367457600080fd5b50565b60008135905061368681613660565b92915050565b6000602082840312156136a2576136a161362a565b5b60006136b084828501613677565b91505092915050565b60008115159050919050565b6136ce816136b9565b82525050565b60006020820190506136e960008301846136c5565b92915050565b6136f8816136b9565b811461370357600080fd5b50565b600081359050613715816136ef565b92915050565b6000602082840312156137315761373061362a565b5b600061373f84828501613706565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613782578082015181840152602081019050613767565b60008484015250505050565b6000601f19601f8301169050919050565b60006137aa82613748565b6137b48185613753565b93506137c4818560208601613764565b6137cd8161378e565b840191505092915050565b600060208201905081810360008301526137f2818461379f565b905092915050565b6000819050919050565b61380d816137fa565b811461381857600080fd5b50565b60008135905061382a81613804565b92915050565b6000602082840312156138465761384561362a565b5b60006138548482850161381b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006138888261385d565b9050919050565b6138988161387d565b82525050565b60006020820190506138b3600083018461388f565b92915050565b6138c28161387d565b81146138cd57600080fd5b50565b6000813590506138df816138b9565b92915050565b600080604083850312156138fc576138fb61362a565b5b600061390a858286016138d0565b925050602061391b8582860161381b565b9150509250929050565b61392e816137fa565b82525050565b60006020820190506139496000830184613925565b92915050565b6000602082840312156139655761396461362a565b5b6000613973848285016138d0565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126139a1576139a061397c565b5b8235905067ffffffffffffffff8111156139be576139bd613981565b5b6020830191508360208202830111156139da576139d9613986565b5b9250929050565b60008083601f8401126139f7576139f661397c565b5b8235905067ffffffffffffffff811115613a1457613a13613981565b5b602083019150836020820283011115613a3057613a2f613986565b5b9250929050565b60008060008060408587031215613a5157613a5061362a565b5b600085013567ffffffffffffffff811115613a6f57613a6e61362f565b5b613a7b8782880161398b565b9450945050602085013567ffffffffffffffff811115613a9e57613a9d61362f565b5b613aaa878288016139e1565b925092505092959194509250565b600080600060608486031215613ad157613ad061362a565b5b6000613adf868287016138d0565b9350506020613af0868287016138d0565b9250506040613b018682870161381b565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613b40816137fa565b82525050565b6000613b528383613b37565b60208301905092915050565b6000602082019050919050565b6000613b7682613b0b565b613b808185613b16565b9350613b8b83613b27565b8060005b83811015613bbc578151613ba38882613b46565b9750613bae83613b5e565b925050600181019050613b8f565b5085935050505092915050565b60006020820190508181036000830152613be38184613b6b565b905092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613c288261378e565b810181811067ffffffffffffffff82111715613c4757613c46613bf0565b5b80604052505050565b6000613c5a613620565b9050613c668282613c1f565b919050565b600067ffffffffffffffff821115613c8657613c85613bf0565b5b613c8f8261378e565b9050602081019050919050565b82818337600083830152505050565b6000613cbe613cb984613c6b565b613c50565b905082815260208101848484011115613cda57613cd9613beb565b5b613ce5848285613c9c565b509392505050565b600082601f830112613d0257613d0161397c565b5b8135613d12848260208601613cab565b91505092915050565b600060208284031215613d3157613d3061362a565b5b600082013567ffffffffffffffff811115613d4f57613d4e61362f565b5b613d5b84828501613ced565b91505092915050565b60008060408385031215613d7b57613d7a61362a565b5b6000613d89858286016138d0565b9250506020613d9a85828601613706565b9150509250929050565b600067ffffffffffffffff821115613dbf57613dbe613bf0565b5b613dc88261378e565b9050602081019050919050565b6000613de8613de384613da4565b613c50565b905082815260208101848484011115613e0457613e03613beb565b5b613e0f848285613c9c565b509392505050565b600082601f830112613e2c57613e2b61397c565b5b8135613e3c848260208601613dd5565b91505092915050565b60008060008060808587031215613e5f57613e5e61362a565b5b6000613e6d878288016138d0565b9450506020613e7e878288016138d0565b9350506040613e8f8782880161381b565b925050606085013567ffffffffffffffff811115613eb057613eaf61362f565b5b613ebc87828801613e17565b91505092959194509250565b60008060408385031215613edf57613ede61362a565b5b6000613eed858286016138d0565b9250506020613efe858286016138d0565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613f3e602083613753565b9150613f4982613f08565b602082019050919050565b60006020820190508181036000830152613f6d81613f31565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613fbb57607f821691505b602082108103613fce57613fcd613f74565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614030602c83613753565b915061403b82613fd4565b604082019050919050565b6000602082019050818103600083015261405f81614023565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006140c2602183613753565b91506140cd82614066565b604082019050919050565b600060208201905081810360008301526140f1816140b5565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000614154603883613753565b915061415f826140f8565b604082019050919050565b6000602082019050818103600083015261418381614147565b9050919050565b7f4d69736d61746368656420696e70757420617272617973000000000000000000600082015250565b60006141c0601783613753565b91506141cb8261418a565b602082019050919050565b600060208201905081810360008301526141ef816141b3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061425f826137fa565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361429157614290614225565b5b600182019050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b60006142f8603183613753565b91506143038261429c565b604082019050919050565b60006020820190508181036000830152614327816142eb565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b600061438a602b83613753565b91506143958261432e565b604082019050919050565b600060208201905081810360008301526143b98161437d565b9050919050565b600081905092915050565b50565b60006143db6000836143c0565b91506143e6826143cb565b600082019050919050565b60006143fc826143ce565b9150819050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000614462602c83613753565b915061446d82614406565b604082019050919050565b6000602082019050818103600083015261449181614455565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026144fa7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826144bd565b61450486836144bd565b95508019841693508086168417925050509392505050565b6000819050919050565b600061454161453c614537846137fa565b61451c565b6137fa565b9050919050565b6000819050919050565b61455b83614526565b61456f61456782614548565b8484546144ca565b825550505050565b600090565b614584614577565b61458f818484614552565b505050565b5b818110156145b3576145a860008261457c565b600181019050614595565b5050565b601f8211156145f8576145c981614498565b6145d2846144ad565b810160208510156145e1578190505b6145f56145ed856144ad565b830182614594565b50505b505050565b600082821c905092915050565b600061461b600019846008026145fd565b1980831691505092915050565b6000614634838361460a565b9150826002028217905092915050565b61464d82613748565b67ffffffffffffffff81111561466657614665613bf0565b5b6146708254613fa3565b61467b8282856145b7565b600060209050601f8311600181146146ae576000841561469c578287015190505b6146a68582614628565b86555061470e565b601f1984166146bc86614498565b60005b828110156146e4578489015182556001820191506020850194506020810190506146bf565b8683101561470157848901516146fd601f89168261460a565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b6000614772602983613753565b915061477d82614716565b604082019050919050565b600060208201905081810360008301526147a181614765565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000614804602a83613753565b915061480f826147a8565b604082019050919050565b60006020820190508181036000830152614833816147f7565b9050919050565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b6000614870601683613753565b915061487b8261483a565b602082019050919050565b6000602082019050818103600083015261489f81614863565b9050919050565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b60006148dc601b83613753565b91506148e7826148a6565b602082019050919050565b6000602082019050818103600083015261490b816148cf565b9050919050565b7f6d6178206d696e7420616d6f756e74207065722073657373696f6e206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b600061496e602483613753565b915061497982614912565b604082019050919050565b6000602082019050818103600083015261499d81614961565b9050919050565b60006149af826137fa565b91506149ba836137fa565b92508282019050808211156149d2576149d1614225565b5b92915050565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b6000614a0e601683613753565b9150614a19826149d8565b602082019050919050565b60006020820190508181036000830152614a3d81614a01565b9050919050565b7f75736572206973206e6f742077686974656c6973746564206f7220686173206e60008201527f6f20616c6c6f77616e6365000000000000000000000000000000000000000000602082015250565b6000614aa0602b83613753565b9150614aab82614a44565b604082019050919050565b60006020820190508181036000830152614acf81614a93565b9050919050565b7f6d61782077686974656c697374206d696e7420616c6c6f77616e63652065786360008201527f6565646564000000000000000000000000000000000000000000000000000000602082015250565b6000614b32602583613753565b9150614b3d82614ad6565b604082019050919050565b60006020820190508181036000830152614b6181614b25565b9050919050565b6000614b73826137fa565b9150614b7e836137fa565b9250828202614b8c816137fa565b91508282048414831517614ba357614ba2614225565b5b5092915050565b7f696e73756666696369656e742066756e647320666f722077686974656c69737460008201527f206d696e74000000000000000000000000000000000000000000000000000000602082015250565b6000614c06602583613753565b9150614c1182614baa565b604082019050919050565b60006020820190508181036000830152614c3581614bf9565b9050919050565b7f696e73756666696369656e742066756e647320666f72207075626c6963206d6960008201527f6e74000000000000000000000000000000000000000000000000000000000000602082015250565b6000614c98602283613753565b9150614ca382614c3c565b604082019050919050565b60006020820190508181036000830152614cc781614c8b565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000614d2a602f83613753565b9150614d3582614cce565b604082019050919050565b60006020820190508181036000830152614d5981614d1d565b9050919050565b600081905092915050565b6000614d7682613748565b614d808185614d60565b9350614d90818560208601613764565b80840191505092915050565b60008154614da981613fa3565b614db38186614d60565b94506001821660008114614dce5760018114614de357614e16565b60ff1983168652811515820286019350614e16565b614dec85614498565b60005b83811015614e0e57815481890152600182019150602081019050614def565b838801955050505b50505092915050565b6000614e2b8286614d6b565b9150614e378285614d6b565b9150614e438284614d9c565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614eac602683613753565b9150614eb782614e50565b604082019050919050565b60006020820190508181036000830152614edb81614e9f565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614f3e602c83613753565b9150614f4982614ee2565b604082019050919050565b60006020820190508181036000830152614f6d81614f31565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000614fd0602583613753565b9150614fdb82614f74565b604082019050919050565b60006020820190508181036000830152614fff81614fc3565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000615062602483613753565b915061506d82615006565b604082019050919050565b6000602082019050818103600083015261509181615055565b9050919050565b60006150a3826137fa565b91506150ae836137fa565b92508282039050818111156150c6576150c5614225565b5b92915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000615102601983613753565b915061510d826150cc565b602082019050919050565b60006020820190508181036000830152615131816150f5565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000615194603283613753565b915061519f82615138565b604082019050919050565b600060208201905081810360008301526151c381615187565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000615204826137fa565b915061520f836137fa565b92508261521f5761521e6151ca565b5b828204905092915050565b6000615235826137fa565b9150615240836137fa565b9250826152505761524f6151ca565b5b828206905092915050565b600081519050919050565b600082825260208201905092915050565b60006152828261525b565b61528c8185615266565b935061529c818560208601613764565b6152a58161378e565b840191505092915050565b60006080820190506152c5600083018761388f565b6152d2602083018661388f565b6152df6040830185613925565b81810360608301526152f18184615277565b905095945050505050565b60008151905061530b81613660565b92915050565b6000602082840312156153275761532661362a565b5b6000615335848285016152fc565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006153a3602083613753565b91506153ae8261536d565b602082019050919050565b600060208201905081810360008301526153d281615396565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600061540f601c83613753565b915061541a826153d9565b602082019050919050565b6000602082019050818103600083015261543e81615402565b905091905056fea2646970667358221220f5684c76169d48d7e3fbdfcc38876b01cdba2bbce0c8e4af598c1893539f31cf64736f6c63430008130033

    Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

    000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000a42616e6469744b69645a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044b69645a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d56467435315931464d63433267483775473275363131537239386141637056375472537045387035414a67562f000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d56467435315931464d63433267483775473275363131537239386141637056375472537045387035414a67562f00000000000000000000

    -----Decoded View---------------
    Arg [0] : _name (string): BanditKidZ
    Arg [1] : _symbol (string): KidZ
    Arg [2] : _initBaseURI (string): ipfs://QmVFt51Y1FMcC2gH7uG2u611Sr98aAcpV7TrSpE8p5AJgV/
    Arg [3] : _initNotRevealedUri (string): ipfs://QmVFt51Y1FMcC2gH7uG2u611Sr98aAcpV7TrSpE8p5AJgV/

    -----Encoded View---------------
    14 Constructor Arguments found :
    Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
    Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
    Arg [2] : 0000000000000000000000000000000000000000000000000000000000000100
    Arg [3] : 0000000000000000000000000000000000000000000000000000000000000160
    Arg [4] : 000000000000000000000000000000000000000000000000000000000000000a
    Arg [5] : 42616e6469744b69645a00000000000000000000000000000000000000000000
    Arg [6] : 0000000000000000000000000000000000000000000000000000000000000004
    Arg [7] : 4b69645a00000000000000000000000000000000000000000000000000000000
    Arg [8] : 0000000000000000000000000000000000000000000000000000000000000036
    Arg [9] : 697066733a2f2f516d56467435315931464d6343326748377547327536313153
    Arg [10] : 7239386141637056375472537045387035414a67562f00000000000000000000
    Arg [11] : 0000000000000000000000000000000000000000000000000000000000000036
    Arg [12] : 697066733a2f2f516d56467435315931464d6343326748377547327536313153
    Arg [13] : 7239386141637056375472537045387035414a67562f00000000000000000000


    Deployed Bytecode Sourcemap

    46157:4608:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;39460:224;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;49318:73;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;26279:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27839:221;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46311:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;48838:116;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27362:411;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;40100:113;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46857:55;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;49498:304;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46509:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28589:339;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;39768:256;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;49397:95;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;50617:145;;;:::i;:::-;;28999:185;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;49832:330;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;40290:233;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46623:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;48960:98;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46592:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25973:239;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46243:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25703:208;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4837:103;;;;;;;;;;;;;:::i;:::-;;48636:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46344:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4186:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46741:57;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26448:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46656:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;47324:1105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28132:155;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;48457:63;;;;;;;;;;;;;:::i;:::-;;29255:328;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46548:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;46269:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;50168:443;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;48526:104;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;48734:98;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46474:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;49064:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;46406:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28358:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;49192:120;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5095:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;39460:224;39562:4;39601:35;39586:50;;;:11;:50;;;;:90;;;;39640:36;39664:11;39640:23;:36::i;:::-;39586:90;39579:97;;39460:224;;;:::o;49318:73::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49379:6:::1;49370;;:15;;;;;;;;;;;;;;;;;;49318:73:::0;:::o;26279:100::-;26333:13;26366:5;26359:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26279:100;:::o;27839:221::-;27915:7;27943:16;27951:7;27943;:16::i;:::-;27935:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;28028:15;:24;28044:7;28028:24;;;;;;;;;;;;;;;;;;;;;28021:31;;27839:221;;;:::o;46311:28::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;48838:116::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;48931:17:::1;48915:13;:33;;;;48838:116:::0;:::o;27362:411::-;27443:13;27459:23;27474:7;27459:14;:23::i;:::-;27443:39;;27507:5;27501:11;;:2;:11;;;27493:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;27601:5;27585:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;27610:37;27627:5;27634:12;:10;:12::i;:::-;27610:16;:37::i;:::-;27585:62;27563:168;;;;;;;;;;;;:::i;:::-;;;;;;;;;27744:21;27753:2;27757:7;27744:8;:21::i;:::-;27432:341;27362:411;;:::o;40100:113::-;40161:7;40188:10;:17;;;;40181:24;;40100:113;:::o;46857:55::-;;;;;;;;;;;;;;;;;:::o;49498:304::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49633:11:::1;;:18;;49616:6;;:13;;:35;49608:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;49691:9;49686:111;49710:6;;:13;;49706:1;:17;49686:111;;;49775:11;;49787:1;49775:14;;;;;;;:::i;:::-;;;;;;;;49739:22;:33;49762:6;;49769:1;49762:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;49739:33;;;;;;;;;;;;;;;:50;;;;49725:3;;;;;:::i;:::-;;;;49686:111;;;;49498:304:::0;;;;:::o;46509:34::-;;;;:::o;28589:339::-;28784:41;28803:12;:10;:12::i;:::-;28817:7;28784:18;:41::i;:::-;28776:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;28892:28;28902:4;28908:2;28912:7;28892:9;:28::i;:::-;28589:339;;;:::o;39768:256::-;39865:7;39901:23;39918:5;39901:16;:23::i;:::-;39893:5;:31;39885:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;39990:12;:19;40003:5;39990:19;;;;;;;;;;;;;;;:26;40010:5;39990:26;;;;;;;;;;;;39983:33;;39768:256;;;;:::o;49397:95::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49480:6:::1;49462:15;;:24;;;;;;;;;;;;;;;;;;49397:95:::0;:::o;50617:145::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;50670:7:::1;50691;:5;:7::i;:::-;50683:21;;50712;50683:55;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50669:69;;;50753:2;50745:11;;;::::0;::::1;;50662:100;50617:145::o:0;28999:185::-;29137:39;29154:4;29160:2;29164:7;29137:39;;;;;;;;;;;;:16;:39::i;:::-;28999:185;;;:::o;49832:330::-;49892:16;49917:23;49943:17;49953:6;49943:9;:17::i;:::-;49917:43;;49967:25;50009:15;49995:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49967:58;;50037:9;50032:103;50052:15;50048:1;:19;50032:103;;;50097:30;50117:6;50125:1;50097:19;:30::i;:::-;50083:8;50092:1;50083:11;;;;;;;;:::i;:::-;;;;;;;:44;;;;;50069:3;;;;;:::i;:::-;;;;50032:103;;;;50148:8;50141:15;;;;49832:330;;;:::o;40290:233::-;40365:7;40401:30;:28;:30::i;:::-;40393:5;:38;40385:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;40498:10;40509:5;40498:17;;;;;;;;:::i;:::-;;;;;;;;;;40491:24;;40290:233;;;:::o;46623:28::-;;;;;;;;;;;;;:::o;48960:98::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49041:11:::1;49031:7;:21;;;;;;:::i;:::-;;48960:98:::0;:::o;46592:26::-;;;;;;;;;;;;;:::o;25973:239::-;26045:7;26065:13;26081:7;:16;26089:7;26081:16;;;;;;;;;;;;;;;;;;;;;26065:32;;26133:1;26116:19;;:5;:19;;;26108:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;26199:5;26192:12;;;25973:239;;;:::o;46243:21::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;25703:208::-;25775:7;25820:1;25803:19;;:5;:19;;;25795:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;25887:9;:16;25897:5;25887:16;;;;;;;;;;;;;;;;25880:23;;25703:208;;;:::o;4837:103::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4902:30:::1;4929:1;4902:18;:30::i;:::-;4837:103::o:0;48636:92::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;48714:8:::1;48701:10;:21;;;;48636:92:::0;:::o;46344:36::-;;;;:::o;4186:87::-;4232:7;4259:6;;;;;;;;;;;4252:13;;4186:87;:::o;46741:57::-;;;;;;;;;;;;;;;;;:::o;26448:104::-;26504:13;26537:7;26530:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26448:104;:::o;46656:34::-;;;;;;;;;;;;;:::o;47324:1105::-;47390:6;;;;;;;;;;;47389:7;47381:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;47430:14;47447:13;:11;:13::i;:::-;47430:30;;47489:1;47475:11;:15;47467:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;47552:13;;47537:11;:28;;47529:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;47645:9;;47630:11;47621:6;:20;;;;:::i;:::-;:33;;47613:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;47708:7;:5;:7::i;:::-;47694:21;;:10;:21;;;47690:590;;47730:15;;;;;;;;;;;47726:547;;;47803:1;47766:22;:34;47789:10;47766:34;;;;;;;;;;;;;;;;:38;47758:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;47863:24;47890:20;:32;47911:10;47890:32;;;;;;;;;;;;;;;;47863:59;;47975:22;:34;47998:10;47975:34;;;;;;;;;;;;;;;;47960:11;47941:16;:30;;;;:::i;:::-;:68;;47933:118;;;;;;;;;;;;:::i;:::-;;;;;;;;;48099:11;48083:13;;:27;;;;:::i;:::-;48070:9;:40;;48062:90;;;;;;;;;;;;:::i;:::-;;;;;;;;;47747:415;47726:547;;;48213:11;48200:10;;:24;;;;:::i;:::-;48187:9;:37;;48179:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;47726:547;47690:590;48293:9;48305:1;48293:13;;48288:136;48313:11;48308:1;:16;48288:136;;48340:20;:32;48361:10;48340:32;;;;;;;;;;;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;48383:33;48393:10;48414:1;48405:6;:10;;;;:::i;:::-;48383:9;:33::i;:::-;48326:3;;;;;:::i;:::-;;;;48288:136;;;;47374:1055;47324:1105;:::o;28132:155::-;28227:52;28246:12;:10;:12::i;:::-;28260:8;28270;28227:18;:52::i;:::-;28132:155;;:::o;48457:63::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;48510:4:::1;48499:8;;:15;;;;;;;;;;;;;;;;;;48457:63::o:0;29255:328::-;29430:41;29449:12;:10;:12::i;:::-;29463:7;29430:18;:41::i;:::-;29422:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;29536:39;29550:4;29556:2;29560:7;29569:5;29536:13;:39::i;:::-;29255:328;;;;:::o;46548:39::-;;;;:::o;46269:37::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;50168:443::-;50241:13;50271:16;50279:7;50271;:16::i;:::-;50263:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;50364:5;50352:17;;:8;;;;;;;;;;;:17;;;50348:61;;50387:14;50380:21;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50348:61;50417:28;50448:10;:8;:10::i;:::-;50417:41;;50503:1;50478:14;50472:28;:32;:133;;;;;;;;;;;;;;;;;50540:14;50556:18;:7;:16;:18::i;:::-;50576:13;50523:67;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;50472:133;50465:140;;;50168:443;;;;:::o;48526:104::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;48618:6:::1;48597:18;:27;;;;48526:104:::0;:::o;48734:98::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;48818:8:::1;48802:13;:24;;;;48734:98:::0;:::o;46474:30::-;;;;:::o;49064:122::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49163:17:::1;49147:13;:33;;;;;;:::i;:::-;;49064:122:::0;:::o;46406:39::-;;;;:::o;28358:164::-;28455:4;28479:18;:25;28498:5;28479:25;;;;;;;;;;;;;;;:35;28505:8;28479:35;;;;;;;;;;;;;;;;;;;;;;;;;28472:42;;28358:164;;;;:::o;49192:120::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;49291:15:::1;49274:14;:32;;;;;;:::i;:::-;;49192:120:::0;:::o;5095:201::-;4417:12;:10;:12::i;:::-;4406:23;;:7;:5;:7::i;:::-;:23;;;4398:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5204:1:::1;5184:22;;:8;:22;;::::0;5176:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;5260:28;5279:8;5260:18;:28::i;:::-;5095:201:::0;:::o;25334:305::-;25436:4;25488:25;25473:40;;;:11;:40;;;;:105;;;;25545:33;25530:48;;;:11;:48;;;;25473:105;:158;;;;25595:36;25619:11;25595:23;:36::i;:::-;25473:158;25453:178;;25334:305;;;:::o;2910:98::-;2963:7;2990:10;2983:17;;2910:98;:::o;31093:127::-;31158:4;31210:1;31182:30;;:7;:16;31190:7;31182:16;;;;;;;;;;;;;;;;;;;;;:30;;;;31175:37;;31093:127;;;:::o;35239:174::-;35341:2;35314:15;:24;35330:7;35314:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;35397:7;35393:2;35359:46;;35368:23;35383:7;35368:14;:23::i;:::-;35359:46;;;;;;;;;;;;35239:174;;:::o;31387:348::-;31480:4;31505:16;31513:7;31505;:16::i;:::-;31497:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;31581:13;31597:23;31612:7;31597:14;:23::i;:::-;31581:39;;31650:5;31639:16;;:7;:16;;;:52;;;;31659:32;31676:5;31683:7;31659:16;:32::i;:::-;31639:52;:87;;;;31719:7;31695:31;;:20;31707:7;31695:11;:20::i;:::-;:31;;;31639:87;31631:96;;;31387:348;;;;:::o;34496:625::-;34655:4;34628:31;;:23;34643:7;34628:14;:23::i;:::-;:31;;;34620:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;34734:1;34720:16;;:2;:16;;;34712:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;34790:39;34811:4;34817:2;34821:7;34790:20;:39::i;:::-;34894:29;34911:1;34915:7;34894:8;:29::i;:::-;34955:1;34936:9;:15;34946:4;34936:15;;;;;;;;;;;;;;;;:20;;;;;;;:::i;:::-;;;;;;;;34984:1;34967:9;:13;34977:2;34967:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;35015:2;34996:7;:16;35004:7;34996:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;35054:7;35050:2;35035:27;;35044:4;35035:27;;;;;;;;;;;;35075:38;35095:4;35101:2;35105:7;35075:19;:38::i;:::-;34496:625;;;:::o;5456:191::-;5530:16;5549:6;;;;;;;;;;;5530:25;;5575:8;5566:6;;:17;;;;;;;;;;;;;;;;;;5630:8;5599:40;;5620:8;5599:40;;;;;;;;;;;;5519:128;5456:191;:::o;32077:110::-;32153:26;32163:2;32167:7;32153:26;;;;;;;;;;;;:9;:26::i;:::-;32077:110;;:::o;35555:315::-;35710:8;35701:17;;:5;:17;;;35693:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;35797:8;35759:18;:25;35778:5;35759:25;;;;;;;;;;;;;;;:35;35785:8;35759:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;35843:8;35821:41;;35836:5;35821:41;;;35853:8;35821:41;;;;;;:::i;:::-;;;;;;;;35555:315;;;:::o;30465:::-;30622:28;30632:4;30638:2;30642:7;30622:9;:28::i;:::-;30669:48;30692:4;30698:2;30702:7;30711:5;30669:22;:48::i;:::-;30661:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;30465:315;;;;:::o;47189:102::-;47249:13;47278:7;47271:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47189:102;:::o;472:723::-;528:13;758:1;749:5;:10;745:53;;776:10;;;;;;;;;;;;;;;;;;;;;745:53;808:12;823:5;808:20;;839:14;864:78;879:1;871:4;:9;864:78;;897:8;;;;;:::i;:::-;;;;928:2;920:10;;;;;:::i;:::-;;;864:78;;;952:19;984:6;974:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;952:39;;1002:154;1018:1;1009:5;:10;1002:154;;1046:1;1036:11;;;;;:::i;:::-;;;1113:2;1105:5;:10;;;;:::i;:::-;1092:2;:24;;;;:::i;:::-;1079:39;;1062:6;1069;1062:14;;;;;;;;:::i;:::-;;;;;:56;;;;;;;;;;;1142:2;1133:11;;;;;:::i;:::-;;;1002:154;;;1180:6;1166:21;;;;;472:723;;;;:::o;16993:157::-;17078:4;17117:25;17102:40;;;:11;:40;;;;17095:47;;16993:157;;;:::o;41136:589::-;41280:45;41307:4;41313:2;41317:7;41280:26;:45::i;:::-;41358:1;41342:18;;:4;:18;;;41338:187;;41377:40;41409:7;41377:31;:40::i;:::-;41338:187;;;41447:2;41439:10;;:4;:10;;;41435:90;;41466:47;41499:4;41505:7;41466:32;:47::i;:::-;41435:90;41338:187;41553:1;41539:16;;:2;:16;;;41535:183;;41572:45;41609:7;41572:36;:45::i;:::-;41535:183;;;41645:4;41639:10;;:2;:10;;;41635:83;;41666:40;41694:2;41698:7;41666:27;:40::i;:::-;41635:83;41535:183;41136:589;;;:::o;38317:125::-;;;;:::o;32414:321::-;32544:18;32550:2;32554:7;32544:5;:18::i;:::-;32595:54;32626:1;32630:2;32634:7;32643:5;32595:22;:54::i;:::-;32573:154;;;;;;;;;;;;:::i;:::-;;;;;;;;;32414:321;;;:::o;36435:799::-;36590:4;36611:15;:2;:13;;;:15::i;:::-;36607:620;;;36663:2;36647:36;;;36684:12;:10;:12::i;:::-;36698:4;36704:7;36713:5;36647:72;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;36643:529;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36906:1;36889:6;:13;:18;36885:272;;36932:60;;;;;;;;;;:::i;:::-;;;;;;;;36885:272;37107:6;37101:13;37092:6;37088:2;37084:15;37077:38;36643:529;36780:41;;;36770:51;;;:6;:51;;;;36763:58;;;;;36607:620;37211:4;37204:11;;36435:799;;;;;;;:::o;37806:126::-;;;;:::o;42448:164::-;42552:10;:17;;;;42525:15;:24;42541:7;42525:24;;;;;;;;;;;:44;;;;42580:10;42596:7;42580:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;42448:164;:::o;43239:988::-;43505:22;43555:1;43530:22;43547:4;43530:16;:22::i;:::-;:26;;;;:::i;:::-;43505:51;;43567:18;43588:17;:26;43606:7;43588:26;;;;;;;;;;;;43567:47;;43735:14;43721:10;:28;43717:328;;43766:19;43788:12;:18;43801:4;43788:18;;;;;;;;;;;;;;;:34;43807:14;43788:34;;;;;;;;;;;;43766:56;;43872:11;43839:12;:18;43852:4;43839:18;;;;;;;;;;;;;;;:30;43858:10;43839:30;;;;;;;;;;;:44;;;;43989:10;43956:17;:30;43974:11;43956:30;;;;;;;;;;;:43;;;;43751:294;43717:328;44141:17;:26;44159:7;44141:26;;;;;;;;;;;44134:33;;;44185:12;:18;44198:4;44185:18;;;;;;;;;;;;;;;:34;44204:14;44185:34;;;;;;;;;;;44178:41;;;43320:907;;43239:988;;:::o;44522:1079::-;44775:22;44820:1;44800:10;:17;;;;:21;;;;:::i;:::-;44775:46;;44832:18;44853:15;:24;44869:7;44853:24;;;;;;;;;;;;44832:45;;45204:19;45226:10;45237:14;45226:26;;;;;;;;:::i;:::-;;;;;;;;;;45204:48;;45290:11;45265:10;45276;45265:22;;;;;;;;:::i;:::-;;;;;;;;;:36;;;;45401:10;45370:15;:28;45386:11;45370:28;;;;;;;;;;;:41;;;;45542:15;:24;45558:7;45542:24;;;;;;;;;;;45535:31;;;45577:10;:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;44593:1008;;;44522:1079;:::o;42026:221::-;42111:14;42128:20;42145:2;42128:16;:20::i;:::-;42111:37;;42186:7;42159:12;:16;42172:2;42159:16;;;;;;;;;;;;;;;:24;42176:6;42159:24;;;;;;;;;;;:34;;;;42233:6;42204:17;:26;42222:7;42204:26;;;;;;;;;;;:35;;;;42100:147;42026:221;;:::o;33071:439::-;33165:1;33151:16;;:2;:16;;;33143:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;33224:16;33232:7;33224;:16::i;:::-;33223:17;33215:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;33286:45;33315:1;33319:2;33323:7;33286:20;:45::i;:::-;33361:1;33344:9;:13;33354:2;33344:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;33392:2;33373:7;:16;33381:7;33373:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;33437:7;33433:2;33412:33;;33429:1;33412:33;;;;;;;;;;;;33458:44;33486:1;33490:2;33494:7;33458:19;:44::i;:::-;33071:439;;:::o;6887:326::-;6947:4;7204:1;7182:7;:19;;;:23;7175:30;;6887:326;;;:::o;7:75:1:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:116::-;1588:21;1603:5;1588:21;:::i;:::-;1581:5;1578:32;1568:60;;1624:1;1621;1614:12;1568:60;1518:116;:::o;1640:133::-;1683:5;1721:6;1708:20;1699:29;;1737:30;1761:5;1737:30;:::i;:::-;1640:133;;;;:::o;1779:323::-;1835:6;1884:2;1872:9;1863:7;1859:23;1855:32;1852:119;;;1890:79;;:::i;:::-;1852:119;2010:1;2035:50;2077:7;2068:6;2057:9;2053:22;2035:50;:::i;:::-;2025:60;;1981:114;1779:323;;;;:::o;2108:99::-;2160:6;2194:5;2188:12;2178:22;;2108:99;;;:::o;2213:169::-;2297:11;2331:6;2326:3;2319:19;2371:4;2366:3;2362:14;2347:29;;2213:169;;;;:::o;2388:246::-;2469:1;2479:113;2493:6;2490:1;2487:13;2479:113;;;2578:1;2573:3;2569:11;2563:18;2559:1;2554:3;2550:11;2543:39;2515:2;2512:1;2508:10;2503:15;;2479:113;;;2626:1;2617:6;2612:3;2608:16;2601:27;2450:184;2388:246;;;:::o;2640:102::-;2681:6;2732:2;2728:7;2723:2;2716:5;2712:14;2708:28;2698:38;;2640:102;;;:::o;2748:377::-;2836:3;2864:39;2897:5;2864:39;:::i;:::-;2919:71;2983:6;2978:3;2919:71;:::i;:::-;2912:78;;2999:65;3057:6;3052:3;3045:4;3038:5;3034:16;2999:65;:::i;:::-;3089:29;3111:6;3089:29;:::i;:::-;3084:3;3080:39;3073:46;;2840:285;2748:377;;;;:::o;3131:313::-;3244:4;3282:2;3271:9;3267:18;3259:26;;3331:9;3325:4;3321:20;3317:1;3306:9;3302:17;3295:47;3359:78;3432:4;3423:6;3359:78;:::i;:::-;3351:86;;3131:313;;;;:::o;3450:77::-;3487:7;3516:5;3505:16;;3450:77;;;:::o;3533:122::-;3606:24;3624:5;3606:24;:::i;:::-;3599:5;3596:35;3586:63;;3645:1;3642;3635:12;3586:63;3533:122;:::o;3661:139::-;3707:5;3745:6;3732:20;3723:29;;3761:33;3788:5;3761:33;:::i;:::-;3661:139;;;;:::o;3806:329::-;3865:6;3914:2;3902:9;3893:7;3889:23;3885:32;3882:119;;;3920:79;;:::i;:::-;3882:119;4040:1;4065:53;4110:7;4101:6;4090:9;4086:22;4065:53;:::i;:::-;4055:63;;4011:117;3806:329;;;;:::o;4141:126::-;4178:7;4218:42;4211:5;4207:54;4196:65;;4141:126;;;:::o;4273:96::-;4310:7;4339:24;4357:5;4339:24;:::i;:::-;4328:35;;4273:96;;;:::o;4375:118::-;4462:24;4480:5;4462:24;:::i;:::-;4457:3;4450:37;4375:118;;:::o;4499:222::-;4592:4;4630:2;4619:9;4615:18;4607:26;;4643:71;4711:1;4700:9;4696:17;4687:6;4643:71;:::i;:::-;4499:222;;;;:::o;4727:122::-;4800:24;4818:5;4800:24;:::i;:::-;4793:5;4790:35;4780:63;;4839:1;4836;4829:12;4780:63;4727:122;:::o;4855:139::-;4901:5;4939:6;4926:20;4917:29;;4955:33;4982:5;4955:33;:::i;:::-;4855:139;;;;:::o;5000:474::-;5068:6;5076;5125:2;5113:9;5104:7;5100:23;5096:32;5093:119;;;5131:79;;:::i;:::-;5093:119;5251:1;5276:53;5321:7;5312:6;5301:9;5297:22;5276:53;:::i;:::-;5266:63;;5222:117;5378:2;5404:53;5449:7;5440:6;5429:9;5425:22;5404:53;:::i;:::-;5394:63;;5349:118;5000:474;;;;;:::o;5480:118::-;5567:24;5585:5;5567:24;:::i;:::-;5562:3;5555:37;5480:118;;:::o;5604:222::-;5697:4;5735:2;5724:9;5720:18;5712:26;;5748:71;5816:1;5805:9;5801:17;5792:6;5748:71;:::i;:::-;5604:222;;;;:::o;5832:329::-;5891:6;5940:2;5928:9;5919:7;5915:23;5911:32;5908:119;;;5946:79;;:::i;:::-;5908:119;6066:1;6091:53;6136:7;6127:6;6116:9;6112:22;6091:53;:::i;:::-;6081:63;;6037:117;5832:329;;;;:::o;6167:117::-;6276:1;6273;6266:12;6290:117;6399:1;6396;6389:12;6413:117;6522:1;6519;6512:12;6553:568;6626:8;6636:6;6686:3;6679:4;6671:6;6667:17;6663:27;6653:122;;6694:79;;:::i;:::-;6653:122;6807:6;6794:20;6784:30;;6837:18;6829:6;6826:30;6823:117;;;6859:79;;:::i;:::-;6823:117;6973:4;6965:6;6961:17;6949:29;;7027:3;7019:4;7011:6;7007:17;6997:8;6993:32;6990:41;6987:128;;;7034:79;;:::i;:::-;6987:128;6553:568;;;;;:::o;7144:::-;7217:8;7227:6;7277:3;7270:4;7262:6;7258:17;7254:27;7244:122;;7285:79;;:::i;:::-;7244:122;7398:6;7385:20;7375:30;;7428:18;7420:6;7417:30;7414:117;;;7450:79;;:::i;:::-;7414:117;7564:4;7556:6;7552:17;7540:29;;7618:3;7610:4;7602:6;7598:17;7588:8;7584:32;7581:41;7578:128;;;7625:79;;:::i;:::-;7578:128;7144:568;;;;;:::o;7718:934::-;7840:6;7848;7856;7864;7913:2;7901:9;7892:7;7888:23;7884:32;7881:119;;;7919:79;;:::i;:::-;7881:119;8067:1;8056:9;8052:17;8039:31;8097:18;8089:6;8086:30;8083:117;;;8119:79;;:::i;:::-;8083:117;8232:80;8304:7;8295:6;8284:9;8280:22;8232:80;:::i;:::-;8214:98;;;;8010:312;8389:2;8378:9;8374:18;8361:32;8420:18;8412:6;8409:30;8406:117;;;8442:79;;:::i;:::-;8406:117;8555:80;8627:7;8618:6;8607:9;8603:22;8555:80;:::i;:::-;8537:98;;;;8332:313;7718:934;;;;;;;:::o;8658:619::-;8735:6;8743;8751;8800:2;8788:9;8779:7;8775:23;8771:32;8768:119;;;8806:79;;:::i;:::-;8768:119;8926:1;8951:53;8996:7;8987:6;8976:9;8972:22;8951:53;:::i;:::-;8941:63;;8897:117;9053:2;9079:53;9124:7;9115:6;9104:9;9100:22;9079:53;:::i;:::-;9069:63;;9024:118;9181:2;9207:53;9252:7;9243:6;9232:9;9228:22;9207:53;:::i;:::-;9197:63;;9152:118;8658:619;;;;;:::o;9283:114::-;9350:6;9384:5;9378:12;9368:22;;9283:114;;;:::o;9403:184::-;9502:11;9536:6;9531:3;9524:19;9576:4;9571:3;9567:14;9552:29;;9403:184;;;;:::o;9593:132::-;9660:4;9683:3;9675:11;;9713:4;9708:3;9704:14;9696:22;;9593:132;;;:::o;9731:108::-;9808:24;9826:5;9808:24;:::i;:::-;9803:3;9796:37;9731:108;;:::o;9845:179::-;9914:10;9935:46;9977:3;9969:6;9935:46;:::i;:::-;10013:4;10008:3;10004:14;9990:28;;9845:179;;;;:::o;10030:113::-;10100:4;10132;10127:3;10123:14;10115:22;;10030:113;;;:::o;10179:732::-;10298:3;10327:54;10375:5;10327:54;:::i;:::-;10397:86;10476:6;10471:3;10397:86;:::i;:::-;10390:93;;10507:56;10557:5;10507:56;:::i;:::-;10586:7;10617:1;10602:284;10627:6;10624:1;10621:13;10602:284;;;10703:6;10697:13;10730:63;10789:3;10774:13;10730:63;:::i;:::-;10723:70;;10816:60;10869:6;10816:60;:::i;:::-;10806:70;;10662:224;10649:1;10646;10642:9;10637:14;;10602:284;;;10606:14;10902:3;10895:10;;10303:608;;;10179:732;;;;:::o;10917:373::-;11060:4;11098:2;11087:9;11083:18;11075:26;;11147:9;11141:4;11137:20;11133:1;11122:9;11118:17;11111:47;11175:108;11278:4;11269:6;11175:108;:::i;:::-;11167:116;;10917:373;;;;:::o;11296:117::-;11405:1;11402;11395:12;11419:180;11467:77;11464:1;11457:88;11564:4;11561:1;11554:15;11588:4;11585:1;11578:15;11605:281;11688:27;11710:4;11688:27;:::i;:::-;11680:6;11676:40;11818:6;11806:10;11803:22;11782:18;11770:10;11767:34;11764:62;11761:88;;;11829:18;;:::i;:::-;11761:88;11869:10;11865:2;11858:22;11648:238;11605:281;;:::o;11892:129::-;11926:6;11953:20;;:::i;:::-;11943:30;;11982:33;12010:4;12002:6;11982:33;:::i;:::-;11892:129;;;:::o;12027:308::-;12089:4;12179:18;12171:6;12168:30;12165:56;;;12201:18;;:::i;:::-;12165:56;12239:29;12261:6;12239:29;:::i;:::-;12231:37;;12323:4;12317;12313:15;12305:23;;12027:308;;;:::o;12341:146::-;12438:6;12433:3;12428;12415:30;12479:1;12470:6;12465:3;12461:16;12454:27;12341:146;;;:::o;12493:425::-;12571:5;12596:66;12612:49;12654:6;12612:49;:::i;:::-;12596:66;:::i;:::-;12587:75;;12685:6;12678:5;12671:21;12723:4;12716:5;12712:16;12761:3;12752:6;12747:3;12743:16;12740:25;12737:112;;;12768:79;;:::i;:::-;12737:112;12858:54;12905:6;12900:3;12895;12858:54;:::i;:::-;12577:341;12493:425;;;;;:::o;12938:340::-;12994:5;13043:3;13036:4;13028:6;13024:17;13020:27;13010:122;;13051:79;;:::i;:::-;13010:122;13168:6;13155:20;13193:79;13268:3;13260:6;13253:4;13245:6;13241:17;13193:79;:::i;:::-;13184:88;;13000:278;12938:340;;;;:::o;13284:509::-;13353:6;13402:2;13390:9;13381:7;13377:23;13373:32;13370:119;;;13408:79;;:::i;:::-;13370:119;13556:1;13545:9;13541:17;13528:31;13586:18;13578:6;13575:30;13572:117;;;13608:79;;:::i;:::-;13572:117;13713:63;13768:7;13759:6;13748:9;13744:22;13713:63;:::i;:::-;13703:73;;13499:287;13284:509;;;;:::o;13799:468::-;13864:6;13872;13921:2;13909:9;13900:7;13896:23;13892:32;13889:119;;;13927:79;;:::i;:::-;13889:119;14047:1;14072:53;14117:7;14108:6;14097:9;14093:22;14072:53;:::i;:::-;14062:63;;14018:117;14174:2;14200:50;14242:7;14233:6;14222:9;14218:22;14200:50;:::i;:::-;14190:60;;14145:115;13799:468;;;;;:::o;14273:307::-;14334:4;14424:18;14416:6;14413:30;14410:56;;;14446:18;;:::i;:::-;14410:56;14484:29;14506:6;14484:29;:::i;:::-;14476:37;;14568:4;14562;14558:15;14550:23;;14273:307;;;:::o;14586:423::-;14663:5;14688:65;14704:48;14745:6;14704:48;:::i;:::-;14688:65;:::i;:::-;14679:74;;14776:6;14769:5;14762:21;14814:4;14807:5;14803:16;14852:3;14843:6;14838:3;14834:16;14831:25;14828:112;;;14859:79;;:::i;:::-;14828:112;14949:54;14996:6;14991:3;14986;14949:54;:::i;:::-;14669:340;14586:423;;;;;:::o;15028:338::-;15083:5;15132:3;15125:4;15117:6;15113:17;15109:27;15099:122;;15140:79;;:::i;:::-;15099:122;15257:6;15244:20;15282:78;15356:3;15348:6;15341:4;15333:6;15329:17;15282:78;:::i;:::-;15273:87;;15089:277;15028:338;;;;:::o;15372:943::-;15467:6;15475;15483;15491;15540:3;15528:9;15519:7;15515:23;15511:33;15508:120;;;15547:79;;:::i;:::-;15508:120;15667:1;15692:53;15737:7;15728:6;15717:9;15713:22;15692:53;:::i;:::-;15682:63;;15638:117;15794:2;15820:53;15865:7;15856:6;15845:9;15841:22;15820:53;:::i;:::-;15810:63;;15765:118;15922:2;15948:53;15993:7;15984:6;15973:9;15969:22;15948:53;:::i;:::-;15938:63;;15893:118;16078:2;16067:9;16063:18;16050:32;16109:18;16101:6;16098:30;16095:117;;;16131:79;;:::i;:::-;16095:117;16236:62;16290:7;16281:6;16270:9;16266:22;16236:62;:::i;:::-;16226:72;;16021:287;15372:943;;;;;;;:::o;16321:474::-;16389:6;16397;16446:2;16434:9;16425:7;16421:23;16417:32;16414:119;;;16452:79;;:::i;:::-;16414:119;16572:1;16597:53;16642:7;16633:6;16622:9;16618:22;16597:53;:::i;:::-;16587:63;;16543:117;16699:2;16725:53;16770:7;16761:6;16750:9;16746:22;16725:53;:::i;:::-;16715:63;;16670:118;16321:474;;;;;:::o;16801:182::-;16941:34;16937:1;16929:6;16925:14;16918:58;16801:182;:::o;16989:366::-;17131:3;17152:67;17216:2;17211:3;17152:67;:::i;:::-;17145:74;;17228:93;17317:3;17228:93;:::i;:::-;17346:2;17341:3;17337:12;17330:19;;16989:366;;;:::o;17361:419::-;17527:4;17565:2;17554:9;17550:18;17542:26;;17614:9;17608:4;17604:20;17600:1;17589:9;17585:17;17578:47;17642:131;17768:4;17642:131;:::i;:::-;17634:139;;17361:419;;;:::o;17786:180::-;17834:77;17831:1;17824:88;17931:4;17928:1;17921:15;17955:4;17952:1;17945:15;17972:320;18016:6;18053:1;18047:4;18043:12;18033:22;;18100:1;18094:4;18090:12;18121:18;18111:81;;18177:4;18169:6;18165:17;18155:27;;18111:81;18239:2;18231:6;18228:14;18208:18;18205:38;18202:84;;18258:18;;:::i;:::-;18202:84;18023:269;17972:320;;;:::o;18298:231::-;18438:34;18434:1;18426:6;18422:14;18415:58;18507:14;18502:2;18494:6;18490:15;18483:39;18298:231;:::o;18535:366::-;18677:3;18698:67;18762:2;18757:3;18698:67;:::i;:::-;18691:74;;18774:93;18863:3;18774:93;:::i;:::-;18892:2;18887:3;18883:12;18876:19;;18535:366;;;:::o;18907:419::-;19073:4;19111:2;19100:9;19096:18;19088:26;;19160:9;19154:4;19150:20;19146:1;19135:9;19131:17;19124:47;19188:131;19314:4;19188:131;:::i;:::-;19180:139;;18907:419;;;:::o;19332:220::-;19472:34;19468:1;19460:6;19456:14;19449:58;19541:3;19536:2;19528:6;19524:15;19517:28;19332:220;:::o;19558:366::-;19700:3;19721:67;19785:2;19780:3;19721:67;:::i;:::-;19714:74;;19797:93;19886:3;19797:93;:::i;:::-;19915:2;19910:3;19906:12;19899:19;;19558:366;;;:::o;19930:419::-;20096:4;20134:2;20123:9;20119:18;20111:26;;20183:9;20177:4;20173:20;20169:1;20158:9;20154:17;20147:47;20211:131;20337:4;20211:131;:::i;:::-;20203:139;;19930:419;;;:::o;20355:243::-;20495:34;20491:1;20483:6;20479:14;20472:58;20564:26;20559:2;20551:6;20547:15;20540:51;20355:243;:::o;20604:366::-;20746:3;20767:67;20831:2;20826:3;20767:67;:::i;:::-;20760:74;;20843:93;20932:3;20843:93;:::i;:::-;20961:2;20956:3;20952:12;20945:19;;20604:366;;;:::o;20976:419::-;21142:4;21180:2;21169:9;21165:18;21157:26;;21229:9;21223:4;21219:20;21215:1;21204:9;21200:17;21193:47;21257:131;21383:4;21257:131;:::i;:::-;21249:139;;20976:419;;;:::o;21401:173::-;21541:25;21537:1;21529:6;21525:14;21518:49;21401:173;:::o;21580:366::-;21722:3;21743:67;21807:2;21802:3;21743:67;:::i;:::-;21736:74;;21819:93;21908:3;21819:93;:::i;:::-;21937:2;21932:3;21928:12;21921:19;;21580:366;;;:::o;21952:419::-;22118:4;22156:2;22145:9;22141:18;22133:26;;22205:9;22199:4;22195:20;22191:1;22180:9;22176:17;22169:47;22233:131;22359:4;22233:131;:::i;:::-;22225:139;;21952:419;;;:::o;22377:180::-;22425:77;22422:1;22415:88;22522:4;22519:1;22512:15;22546:4;22543:1;22536:15;22563:180;22611:77;22608:1;22601:88;22708:4;22705:1;22698:15;22732:4;22729:1;22722:15;22749:233;22788:3;22811:24;22829:5;22811:24;:::i;:::-;22802:33;;22857:66;22850:5;22847:77;22844:103;;22927:18;;:::i;:::-;22844:103;22974:1;22967:5;22963:13;22956:20;;22749:233;;;:::o;22988:236::-;23128:34;23124:1;23116:6;23112:14;23105:58;23197:19;23192:2;23184:6;23180:15;23173:44;22988:236;:::o;23230:366::-;23372:3;23393:67;23457:2;23452:3;23393:67;:::i;:::-;23386:74;;23469:93;23558:3;23469:93;:::i;:::-;23587:2;23582:3;23578:12;23571:19;;23230:366;;;:::o;23602:419::-;23768:4;23806:2;23795:9;23791:18;23783:26;;23855:9;23849:4;23845:20;23841:1;23830:9;23826:17;23819:47;23883:131;24009:4;23883:131;:::i;:::-;23875:139;;23602:419;;;:::o;24027:230::-;24167:34;24163:1;24155:6;24151:14;24144:58;24236:13;24231:2;24223:6;24219:15;24212:38;24027:230;:::o;24263:366::-;24405:3;24426:67;24490:2;24485:3;24426:67;:::i;:::-;24419:74;;24502:93;24591:3;24502:93;:::i;:::-;24620:2;24615:3;24611:12;24604:19;;24263:366;;;:::o;24635:419::-;24801:4;24839:2;24828:9;24824:18;24816:26;;24888:9;24882:4;24878:20;24874:1;24863:9;24859:17;24852:47;24916:131;25042:4;24916:131;:::i;:::-;24908:139;;24635:419;;;:::o;25060:147::-;25161:11;25198:3;25183:18;;25060:147;;;;:::o;25213:114::-;;:::o;25333:398::-;25492:3;25513:83;25594:1;25589:3;25513:83;:::i;:::-;25506:90;;25605:93;25694:3;25605:93;:::i;:::-;25723:1;25718:3;25714:11;25707:18;;25333:398;;;:::o;25737:379::-;25921:3;25943:147;26086:3;25943:147;:::i;:::-;25936:154;;26107:3;26100:10;;25737:379;;;:::o;26122:231::-;26262:34;26258:1;26250:6;26246:14;26239:58;26331:14;26326:2;26318:6;26314:15;26307:39;26122:231;:::o;26359:366::-;26501:3;26522:67;26586:2;26581:3;26522:67;:::i;:::-;26515:74;;26598:93;26687:3;26598:93;:::i;:::-;26716:2;26711:3;26707:12;26700:19;;26359:366;;;:::o;26731:419::-;26897:4;26935:2;26924:9;26920:18;26912:26;;26984:9;26978:4;26974:20;26970:1;26959:9;26955:17;26948:47;27012:131;27138:4;27012:131;:::i;:::-;27004:139;;26731:419;;;:::o;27156:141::-;27205:4;27228:3;27220:11;;27251:3;27248:1;27241:14;27285:4;27282:1;27272:18;27264:26;;27156:141;;;:::o;27303:93::-;27340:6;27387:2;27382;27375:5;27371:14;27367:23;27357:33;;27303:93;;;:::o;27402:107::-;27446:8;27496:5;27490:4;27486:16;27465:37;;27402:107;;;;:::o;27515:393::-;27584:6;27634:1;27622:10;27618:18;27657:97;27687:66;27676:9;27657:97;:::i;:::-;27775:39;27805:8;27794:9;27775:39;:::i;:::-;27763:51;;27847:4;27843:9;27836:5;27832:21;27823:30;;27896:4;27886:8;27882:19;27875:5;27872:30;27862:40;;27591:317;;27515:393;;;;;:::o;27914:60::-;27942:3;27963:5;27956:12;;27914:60;;;:::o;27980:142::-;28030:9;28063:53;28081:34;28090:24;28108:5;28090:24;:::i;:::-;28081:34;:::i;:::-;28063:53;:::i;:::-;28050:66;;27980:142;;;:::o;28128:75::-;28171:3;28192:5;28185:12;;28128:75;;;:::o;28209:269::-;28319:39;28350:7;28319:39;:::i;:::-;28380:91;28429:41;28453:16;28429:41;:::i;:::-;28421:6;28414:4;28408:11;28380:91;:::i;:::-;28374:4;28367:105;28285:193;28209:269;;;:::o;28484:73::-;28529:3;28484:73;:::o;28563:189::-;28640:32;;:::i;:::-;28681:65;28739:6;28731;28725:4;28681:65;:::i;:::-;28616:136;28563:189;;:::o;28758:186::-;28818:120;28835:3;28828:5;28825:14;28818:120;;;28889:39;28926:1;28919:5;28889:39;:::i;:::-;28862:1;28855:5;28851:13;28842:22;;28818:120;;;28758:186;;:::o;28950:543::-;29051:2;29046:3;29043:11;29040:446;;;29085:38;29117:5;29085:38;:::i;:::-;29169:29;29187:10;29169:29;:::i;:::-;29159:8;29155:44;29352:2;29340:10;29337:18;29334:49;;;29373:8;29358:23;;29334:49;29396:80;29452:22;29470:3;29452:22;:::i;:::-;29442:8;29438:37;29425:11;29396:80;:::i;:::-;29055:431;;29040:446;28950:543;;;:::o;29499:117::-;29553:8;29603:5;29597:4;29593:16;29572:37;;29499:117;;;;:::o;29622:169::-;29666:6;29699:51;29747:1;29743:6;29735:5;29732:1;29728:13;29699:51;:::i;:::-;29695:56;29780:4;29774;29770:15;29760:25;;29673:118;29622:169;;;;:::o;29796:295::-;29872:4;30018:29;30043:3;30037:4;30018:29;:::i;:::-;30010:37;;30080:3;30077:1;30073:11;30067:4;30064:21;30056:29;;29796:295;;;;:::o;30096:1395::-;30213:37;30246:3;30213:37;:::i;:::-;30315:18;30307:6;30304:30;30301:56;;;30337:18;;:::i;:::-;30301:56;30381:38;30413:4;30407:11;30381:38;:::i;:::-;30466:67;30526:6;30518;30512:4;30466:67;:::i;:::-;30560:1;30584:4;30571:17;;30616:2;30608:6;30605:14;30633:1;30628:618;;;;31290:1;31307:6;31304:77;;;31356:9;31351:3;31347:19;31341:26;31332:35;;31304:77;31407:67;31467:6;31460:5;31407:67;:::i;:::-;31401:4;31394:81;31263:222;30598:887;;30628:618;30680:4;30676:9;30668:6;30664:22;30714:37;30746:4;30714:37;:::i;:::-;30773:1;30787:208;30801:7;30798:1;30795:14;30787:208;;;30880:9;30875:3;30871:19;30865:26;30857:6;30850:42;30931:1;30923:6;30919:14;30909:24;;30978:2;30967:9;30963:18;30950:31;;30824:4;30821:1;30817:12;30812:17;;30787:208;;;31023:6;31014:7;31011:19;31008:179;;;31081:9;31076:3;31072:19;31066:26;31124:48;31166:4;31158:6;31154:17;31143:9;31124:48;:::i;:::-;31116:6;31109:64;31031:156;31008:179;31233:1;31229;31221:6;31217:14;31213:22;31207:4;31200:36;30635:611;;;30598:887;;30188:1303;;;30096:1395;;:::o;31497:228::-;31637:34;31633:1;31625:6;31621:14;31614:58;31706:11;31701:2;31693:6;31689:15;31682:36;31497:228;:::o;31731:366::-;31873:3;31894:67;31958:2;31953:3;31894:67;:::i;:::-;31887:74;;31970:93;32059:3;31970:93;:::i;:::-;32088:2;32083:3;32079:12;32072:19;;31731:366;;;:::o;32103:419::-;32269:4;32307:2;32296:9;32292:18;32284:26;;32356:9;32350:4;32346:20;32342:1;32331:9;32327:17;32320:47;32384:131;32510:4;32384:131;:::i;:::-;32376:139;;32103:419;;;:::o;32528:229::-;32668:34;32664:1;32656:6;32652:14;32645:58;32737:12;32732:2;32724:6;32720:15;32713:37;32528:229;:::o;32763:366::-;32905:3;32926:67;32990:2;32985:3;32926:67;:::i;:::-;32919:74;;33002:93;33091:3;33002:93;:::i;:::-;33120:2;33115:3;33111:12;33104:19;;32763:366;;;:::o;33135:419::-;33301:4;33339:2;33328:9;33324:18;33316:26;;33388:9;33382:4;33378:20;33374:1;33363:9;33359:17;33352:47;33416:131;33542:4;33416:131;:::i;:::-;33408:139;;33135:419;;;:::o;33560:172::-;33700:24;33696:1;33688:6;33684:14;33677:48;33560:172;:::o;33738:366::-;33880:3;33901:67;33965:2;33960:3;33901:67;:::i;:::-;33894:74;;33977:93;34066:3;33977:93;:::i;:::-;34095:2;34090:3;34086:12;34079:19;;33738:366;;;:::o;34110:419::-;34276:4;34314:2;34303:9;34299:18;34291:26;;34363:9;34357:4;34353:20;34349:1;34338:9;34334:17;34327:47;34391:131;34517:4;34391:131;:::i;:::-;34383:139;;34110:419;;;:::o;34535:177::-;34675:29;34671:1;34663:6;34659:14;34652:53;34535:177;:::o;34718:366::-;34860:3;34881:67;34945:2;34940:3;34881:67;:::i;:::-;34874:74;;34957:93;35046:3;34957:93;:::i;:::-;35075:2;35070:3;35066:12;35059:19;;34718:366;;;:::o;35090:419::-;35256:4;35294:2;35283:9;35279:18;35271:26;;35343:9;35337:4;35333:20;35329:1;35318:9;35314:17;35307:47;35371:131;35497:4;35371:131;:::i;:::-;35363:139;;35090:419;;;:::o;35515:223::-;35655:34;35651:1;35643:6;35639:14;35632:58;35724:6;35719:2;35711:6;35707:15;35700:31;35515:223;:::o;35744:366::-;35886:3;35907:67;35971:2;35966:3;35907:67;:::i;:::-;35900:74;;35983:93;36072:3;35983:93;:::i;:::-;36101:2;36096:3;36092:12;36085:19;;35744:366;;;:::o;36116:419::-;36282:4;36320:2;36309:9;36305:18;36297:26;;36369:9;36363:4;36359:20;36355:1;36344:9;36340:17;36333:47;36397:131;36523:4;36397:131;:::i;:::-;36389:139;;36116:419;;;:::o;36541:191::-;36581:3;36600:20;36618:1;36600:20;:::i;:::-;36595:25;;36634:20;36652:1;36634:20;:::i;:::-;36629:25;;36677:1;36674;36670:9;36663:16;;36698:3;36695:1;36692:10;36689:36;;;36705:18;;:::i;:::-;36689:36;36541:191;;;;:::o;36738:172::-;36878:24;36874:1;36866:6;36862:14;36855:48;36738:172;:::o;36916:366::-;37058:3;37079:67;37143:2;37138:3;37079:67;:::i;:::-;37072:74;;37155:93;37244:3;37155:93;:::i;:::-;37273:2;37268:3;37264:12;37257:19;;36916:366;;;:::o;37288:419::-;37454:4;37492:2;37481:9;37477:18;37469:26;;37541:9;37535:4;37531:20;37527:1;37516:9;37512:17;37505:47;37569:131;37695:4;37569:131;:::i;:::-;37561:139;;37288:419;;;:::o;37713:230::-;37853:34;37849:1;37841:6;37837:14;37830:58;37922:13;37917:2;37909:6;37905:15;37898:38;37713:230;:::o;37949:366::-;38091:3;38112:67;38176:2;38171:3;38112:67;:::i;:::-;38105:74;;38188:93;38277:3;38188:93;:::i;:::-;38306:2;38301:3;38297:12;38290:19;;37949:366;;;:::o;38321:419::-;38487:4;38525:2;38514:9;38510:18;38502:26;;38574:9;38568:4;38564:20;38560:1;38549:9;38545:17;38538:47;38602:131;38728:4;38602:131;:::i;:::-;38594:139;;38321:419;;;:::o;38746:224::-;38886:34;38882:1;38874:6;38870:14;38863:58;38955:7;38950:2;38942:6;38938:15;38931:32;38746:224;:::o;38976:366::-;39118:3;39139:67;39203:2;39198:3;39139:67;:::i;:::-;39132:74;;39215:93;39304:3;39215:93;:::i;:::-;39333:2;39328:3;39324:12;39317:19;;38976:366;;;:::o;39348:419::-;39514:4;39552:2;39541:9;39537:18;39529:26;;39601:9;39595:4;39591:20;39587:1;39576:9;39572:17;39565:47;39629:131;39755:4;39629:131;:::i;:::-;39621:139;;39348:419;;;:::o;39773:410::-;39813:7;39836:20;39854:1;39836:20;:::i;:::-;39831:25;;39870:20;39888:1;39870:20;:::i;:::-;39865:25;;39925:1;39922;39918:9;39947:30;39965:11;39947:30;:::i;:::-;39936:41;;40126:1;40117:7;40113:15;40110:1;40107:22;40087:1;40080:9;40060:83;40037:139;;40156:18;;:::i;:::-;40037:139;39821:362;39773:410;;;;:::o;40189:224::-;40329:34;40325:1;40317:6;40313:14;40306:58;40398:7;40393:2;40385:6;40381:15;40374:32;40189:224;:::o;40419:366::-;40561:3;40582:67;40646:2;40641:3;40582:67;:::i;:::-;40575:74;;40658:93;40747:3;40658:93;:::i;:::-;40776:2;40771:3;40767:12;40760:19;;40419:366;;;:::o;40791:419::-;40957:4;40995:2;40984:9;40980:18;40972:26;;41044:9;41038:4;41034:20;41030:1;41019:9;41015:17;41008:47;41072:131;41198:4;41072:131;:::i;:::-;41064:139;;40791:419;;;:::o;41216:221::-;41356:34;41352:1;41344:6;41340:14;41333:58;41425:4;41420:2;41412:6;41408:15;41401:29;41216:221;:::o;41443:366::-;41585:3;41606:67;41670:2;41665:3;41606:67;:::i;:::-;41599:74;;41682:93;41771:3;41682:93;:::i;:::-;41800:2;41795:3;41791:12;41784:19;;41443:366;;;:::o;41815:419::-;41981:4;42019:2;42008:9;42004:18;41996:26;;42068:9;42062:4;42058:20;42054:1;42043:9;42039:17;42032:47;42096:131;42222:4;42096:131;:::i;:::-;42088:139;;41815:419;;;:::o;42240:234::-;42380:34;42376:1;42368:6;42364:14;42357:58;42449:17;42444:2;42436:6;42432:15;42425:42;42240:234;:::o;42480:366::-;42622:3;42643:67;42707:2;42702:3;42643:67;:::i;:::-;42636:74;;42719:93;42808:3;42719:93;:::i;:::-;42837:2;42832:3;42828:12;42821:19;;42480:366;;;:::o;42852:419::-;43018:4;43056:2;43045:9;43041:18;43033:26;;43105:9;43099:4;43095:20;43091:1;43080:9;43076:17;43069:47;43133:131;43259:4;43133:131;:::i;:::-;43125:139;;42852:419;;;:::o;43277:148::-;43379:11;43416:3;43401:18;;43277:148;;;;:::o;43431:390::-;43537:3;43565:39;43598:5;43565:39;:::i;:::-;43620:89;43702:6;43697:3;43620:89;:::i;:::-;43613:96;;43718:65;43776:6;43771:3;43764:4;43757:5;43753:16;43718:65;:::i;:::-;43808:6;43803:3;43799:16;43792:23;;43541:280;43431:390;;;;:::o;43851:874::-;43954:3;43991:5;43985:12;44020:36;44046:9;44020:36;:::i;:::-;44072:89;44154:6;44149:3;44072:89;:::i;:::-;44065:96;;44192:1;44181:9;44177:17;44208:1;44203:166;;;;44383:1;44378:341;;;;44170:549;;44203:166;44287:4;44283:9;44272;44268:25;44263:3;44256:38;44349:6;44342:14;44335:22;44327:6;44323:35;44318:3;44314:45;44307:52;;44203:166;;44378:341;44445:38;44477:5;44445:38;:::i;:::-;44505:1;44519:154;44533:6;44530:1;44527:13;44519:154;;;44607:7;44601:14;44597:1;44592:3;44588:11;44581:35;44657:1;44648:7;44644:15;44633:26;;44555:4;44552:1;44548:12;44543:17;;44519:154;;;44702:6;44697:3;44693:16;44686:23;;44385:334;;44170:549;;43958:767;;43851:874;;;;:::o;44731:589::-;44956:3;44978:95;45069:3;45060:6;44978:95;:::i;:::-;44971:102;;45090:95;45181:3;45172:6;45090:95;:::i;:::-;45083:102;;45202:92;45290:3;45281:6;45202:92;:::i;:::-;45195:99;;45311:3;45304:10;;44731:589;;;;;;:::o;45326:225::-;45466:34;45462:1;45454:6;45450:14;45443:58;45535:8;45530:2;45522:6;45518:15;45511:33;45326:225;:::o;45557:366::-;45699:3;45720:67;45784:2;45779:3;45720:67;:::i;:::-;45713:74;;45796:93;45885:3;45796:93;:::i;:::-;45914:2;45909:3;45905:12;45898:19;;45557:366;;;:::o;45929:419::-;46095:4;46133:2;46122:9;46118:18;46110:26;;46182:9;46176:4;46172:20;46168:1;46157:9;46153:17;46146:47;46210:131;46336:4;46210:131;:::i;:::-;46202:139;;45929:419;;;:::o;46354:231::-;46494:34;46490:1;46482:6;46478:14;46471:58;46563:14;46558:2;46550:6;46546:15;46539:39;46354:231;:::o;46591:366::-;46733:3;46754:67;46818:2;46813:3;46754:67;:::i;:::-;46747:74;;46830:93;46919:3;46830:93;:::i;:::-;46948:2;46943:3;46939:12;46932:19;;46591:366;;;:::o;46963:419::-;47129:4;47167:2;47156:9;47152:18;47144:26;;47216:9;47210:4;47206:20;47202:1;47191:9;47187:17;47180:47;47244:131;47370:4;47244:131;:::i;:::-;47236:139;;46963:419;;;:::o;47388:224::-;47528:34;47524:1;47516:6;47512:14;47505:58;47597:7;47592:2;47584:6;47580:15;47573:32;47388:224;:::o;47618:366::-;47760:3;47781:67;47845:2;47840:3;47781:67;:::i;:::-;47774:74;;47857:93;47946:3;47857:93;:::i;:::-;47975:2;47970:3;47966:12;47959:19;;47618:366;;;:::o;47990:419::-;48156:4;48194:2;48183:9;48179:18;48171:26;;48243:9;48237:4;48233:20;48229:1;48218:9;48214:17;48207:47;48271:131;48397:4;48271:131;:::i;:::-;48263:139;;47990:419;;;:::o;48415:223::-;48555:34;48551:1;48543:6;48539:14;48532:58;48624:6;48619:2;48611:6;48607:15;48600:31;48415:223;:::o;48644:366::-;48786:3;48807:67;48871:2;48866:3;48807:67;:::i;:::-;48800:74;;48883:93;48972:3;48883:93;:::i;:::-;49001:2;48996:3;48992:12;48985:19;;48644:366;;;:::o;49016:419::-;49182:4;49220:2;49209:9;49205:18;49197:26;;49269:9;49263:4;49259:20;49255:1;49244:9;49240:17;49233:47;49297:131;49423:4;49297:131;:::i;:::-;49289:139;;49016:419;;;:::o;49441:194::-;49481:4;49501:20;49519:1;49501:20;:::i;:::-;49496:25;;49535:20;49553:1;49535:20;:::i;:::-;49530:25;;49579:1;49576;49572:9;49564:17;;49603:1;49597:4;49594:11;49591:37;;;49608:18;;:::i;:::-;49591:37;49441:194;;;;:::o;49641:175::-;49781:27;49777:1;49769:6;49765:14;49758:51;49641:175;:::o;49822:366::-;49964:3;49985:67;50049:2;50044:3;49985:67;:::i;:::-;49978:74;;50061:93;50150:3;50061:93;:::i;:::-;50179:2;50174:3;50170:12;50163:19;;49822:366;;;:::o;50194:419::-;50360:4;50398:2;50387:9;50383:18;50375:26;;50447:9;50441:4;50437:20;50433:1;50422:9;50418:17;50411:47;50475:131;50601:4;50475:131;:::i;:::-;50467:139;;50194:419;;;:::o;50619:237::-;50759:34;50755:1;50747:6;50743:14;50736:58;50828:20;50823:2;50815:6;50811:15;50804:45;50619:237;:::o;50862:366::-;51004:3;51025:67;51089:2;51084:3;51025:67;:::i;:::-;51018:74;;51101:93;51190:3;51101:93;:::i;:::-;51219:2;51214:3;51210:12;51203:19;;50862:366;;;:::o;51234:419::-;51400:4;51438:2;51427:9;51423:18;51415:26;;51487:9;51481:4;51477:20;51473:1;51462:9;51458:17;51451:47;51515:131;51641:4;51515:131;:::i;:::-;51507:139;;51234:419;;;:::o;51659:180::-;51707:77;51704:1;51697:88;51804:4;51801:1;51794:15;51828:4;51825:1;51818:15;51845:185;51885:1;51902:20;51920:1;51902:20;:::i;:::-;51897:25;;51936:20;51954:1;51936:20;:::i;:::-;51931:25;;51975:1;51965:35;;51980:18;;:::i;:::-;51965:35;52022:1;52019;52015:9;52010:14;;51845:185;;;;:::o;52036:176::-;52068:1;52085:20;52103:1;52085:20;:::i;:::-;52080:25;;52119:20;52137:1;52119:20;:::i;:::-;52114:25;;52158:1;52148:35;;52163:18;;:::i;:::-;52148:35;52204:1;52201;52197:9;52192:14;;52036:176;;;;:::o;52218:98::-;52269:6;52303:5;52297:12;52287:22;;52218:98;;;:::o;52322:168::-;52405:11;52439:6;52434:3;52427:19;52479:4;52474:3;52470:14;52455:29;;52322:168;;;;:::o;52496:373::-;52582:3;52610:38;52642:5;52610:38;:::i;:::-;52664:70;52727:6;52722:3;52664:70;:::i;:::-;52657:77;;52743:65;52801:6;52796:3;52789:4;52782:5;52778:16;52743:65;:::i;:::-;52833:29;52855:6;52833:29;:::i;:::-;52828:3;52824:39;52817:46;;52586:283;52496:373;;;;:::o;52875:640::-;53070:4;53108:3;53097:9;53093:19;53085:27;;53122:71;53190:1;53179:9;53175:17;53166:6;53122:71;:::i;:::-;53203:72;53271:2;53260:9;53256:18;53247:6;53203:72;:::i;:::-;53285;53353:2;53342:9;53338:18;53329:6;53285:72;:::i;:::-;53404:9;53398:4;53394:20;53389:2;53378:9;53374:18;53367:48;53432:76;53503:4;53494:6;53432:76;:::i;:::-;53424:84;;52875:640;;;;;;;:::o;53521:141::-;53577:5;53608:6;53602:13;53593:22;;53624:32;53650:5;53624:32;:::i;:::-;53521:141;;;;:::o;53668:349::-;53737:6;53786:2;53774:9;53765:7;53761:23;53757:32;53754:119;;;53792:79;;:::i;:::-;53754:119;53912:1;53937:63;53992:7;53983:6;53972:9;53968:22;53937:63;:::i;:::-;53927:73;;53883:127;53668:349;;;;:::o;54023:180::-;54071:77;54068:1;54061:88;54168:4;54165:1;54158:15;54192:4;54189:1;54182:15;54209:182;54349:34;54345:1;54337:6;54333:14;54326:58;54209:182;:::o;54397:366::-;54539:3;54560:67;54624:2;54619:3;54560:67;:::i;:::-;54553:74;;54636:93;54725:3;54636:93;:::i;:::-;54754:2;54749:3;54745:12;54738:19;;54397:366;;;:::o;54769:419::-;54935:4;54973:2;54962:9;54958:18;54950:26;;55022:9;55016:4;55012:20;55008:1;54997:9;54993:17;54986:47;55050:131;55176:4;55050:131;:::i;:::-;55042:139;;54769:419;;;:::o;55194:178::-;55334:30;55330:1;55322:6;55318:14;55311:54;55194:178;:::o;55378:366::-;55520:3;55541:67;55605:2;55600:3;55541:67;:::i;:::-;55534:74;;55617:93;55706:3;55617:93;:::i;:::-;55735:2;55730:3;55726:12;55719:19;;55378:366;;;:::o;55750:419::-;55916:4;55954:2;55943:9;55939:18;55931:26;;56003:9;55997:4;55993:20;55989:1;55978:9;55974:17;55967:47;56031:131;56157:4;56031:131;:::i;:::-;56023:139;;55750:419;;;:::o

    Swarm Source

    ipfs://f5684c76169d48d7e3fbdfcc38876b01cdba2bbce0c8e4af598c1893539f31cf
    [ 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.