APE Price: $1.22 (+1.84%)
    /

    Dopeboredapebros (Dopeboredapebros)

    Overview

    TokenID

    506

    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:
    Dopeboredapebros

    Compiler Version
    v0.8.25+commit.b61c2a91

    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 apescan.io on 2024-10-28
    */
    /**
    *Submitted for verification at apescan.io on 2024-10-27
    */
    /**
    *Submitted for verification at basescan.org on 2023-08-18
    */
    // File: @openzeppelin/contracts/utils/math/SignedMath.sol
    // OpenZeppelin Contracts (last updated v4.8.0) (utils/math/SignedMath.sol)
    pragma solidity ^0.8.24;
    /**
    * @dev Standard signed math utilities missing in the Solidity language.
    */
    library SignedMath {
    /**
    * @dev Returns the largest of two signed numbers.
    */
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Contract Security Audit

    Contract ABI

    [{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"string","name":"_initBaseURI","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":"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":[],"name":"cost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"address","name":"_to","type":"address"},{"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":"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":[{"internalType":"address","name":"_user","type":"address"}],"name":"removeWhitelistUser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","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":"_newCost","type":"uint256"}],"name":"setCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newmaxMintAmount","type":"uint256"}],"name":"setmaxMintAmount","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":[{"internalType":"address","name":"_user","type":"address"}],"name":"whitelistUser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"payable","type":"function"}]

    60806040526040518060400160405280600581526020017f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600c90816100489190611036565b50670de0b6b3a7640000600d55610457600e556032600f555f60105f6101000a81548160ff021916908315150217905550348015610084575f80fd5b506040516159ef3803806159ef83398181016040528101906100a69190611225565b8282815f90816100b69190611036565b5080600190816100c69190611036565b5050506100e56100da61010d60201b60201c565b61011460201b60201c565b6100f4816101d760201b60201c565b6101053360016101f860201b60201c565b50505061189a565b5f33905090565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6101e561034460201b60201c565b80600b90816101f49190611036565b5050565b5f6102076103ce60201b60201c565b905060105f9054906101000a900460ff1615610221575f80fd5b5f821161022c575f80fd5b600f5482111561023a575f80fd5b600e54828261024991906112f6565b1115610253575f80fd5b6102616103da60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610303576001151560115f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161515146103025781600d546102f69190611329565b341015610301575f80fd5b5b5b5f600190505b82811161033e5761032b84828461032091906112f6565b61040260201b60201c565b80806103369061136a565b915050610309565b50505050565b61035261010d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff166103766103da60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146103cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c39061140b565b60405180910390fd5b565b5f600880549050905090565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610421828260405180602001604052805f81525061042560201b60201c565b5050565b610435838361048b60201b60201c565b6104475f8484846106b660201b60201c565b610486576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047d90611499565b60405180910390fd5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036104f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f090611501565b60405180910390fd5b6105088161084460201b60201c565b15610548576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053f90611569565b60405180910390fd5b61055b5f8383600161088a60201b60201c565b61056a8161084460201b60201c565b156105aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a190611569565b60405180910390fd5b600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46106b25f83836001610a0360201b60201c565b5050565b5f6106dc8473ffffffffffffffffffffffffffffffffffffffff16610a0960201b60201c565b15610837578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261070b61010d60201b60201c565b8786866040518563ffffffff1660e01b815260040161072d9493929190611627565b6020604051808303815f875af192505050801561076857506040513d601f19601f8201168201806040525081019061076591906116c6565b60015b6107e7573d805f8114610796576040519150601f19603f3d011682016040523d82523d5f602084013e61079b565b606091505b505f8151036107df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d690611499565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061083c565b600190505b949350505050565b5f8073ffffffffffffffffffffffffffffffffffffffff1661086b83610a2b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b61089c84848484610a6460201b60201c565b60018111156108e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d790611761565b60405180910390fd5b5f8290505f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361092b5761092681610a6a60201b60201c565b610970565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461096f5761096e8582610aae60201b60201c565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036109b7576109b281610c0a60201b60201c565b6109fc565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146109fb576109fa8482610cca60201b60201c565b5b5b5050505050565b50505050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b50505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f6001610ac084610d4860201b60201c565b610aca919061177f565b90505f60075f8481526020019081526020015f20549050818114610ba1575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f6001600880549050610c1d919061177f565b90505f60095f8481526020019081526020015f205490505f60088381548110610c4957610c486117b2565b5b905f5260205f20015490508060088381548110610c6957610c686117b2565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f90556008805480610cb157610cb06117df565b5b600190038181905f5260205f20015f9055905550505050565b5f610cda83610d4860201b60201c565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae9061187c565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610e7757607f821691505b602082108103610e8a57610e89610e33565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302610eec7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610eb1565b610ef68683610eb1565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f610f3a610f35610f3084610f0e565b610f17565b610f0e565b9050919050565b5f819050919050565b610f5383610f20565b610f67610f5f82610f41565b848454610ebd565b825550505050565b5f90565b610f7b610f6f565b610f86818484610f4a565b505050565b5b81811015610fa957610f9e5f82610f73565b600181019050610f8c565b5050565b601f821115610fee57610fbf81610e90565b610fc884610ea2565b81016020851015610fd7578190505b610feb610fe385610ea2565b830182610f8b565b50505b505050565b5f82821c905092915050565b5f61100e5f1984600802610ff3565b1980831691505092915050565b5f6110268383610fff565b9150826002028217905092915050565b61103f82610dfc565b67ffffffffffffffff81111561105857611057610e06565b5b6110628254610e60565b61106d828285610fad565b5f60209050601f83116001811461109e575f841561108c578287015190505b611096858261101b565b8655506110fd565b601f1984166110ac86610e90565b5f5b828110156110d3578489015182556001820191506020850194506020810190506110ae565b868310156110f057848901516110ec601f891682610fff565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b6111378261111e565b810181811067ffffffffffffffff8211171561115657611155610e06565b5b80604052505050565b5f611168611105565b9050611174828261112e565b919050565b5f67ffffffffffffffff82111561119357611192610e06565b5b61119c8261111e565b9050602081019050919050565b8281835e5f83830152505050565b5f6111c96111c484611179565b61115f565b9050828152602081018484840111156111e5576111e461111a565b5b6111f08482856111a9565b509392505050565b5f82601f83011261120c5761120b611116565b5b815161121c8482602086016111b7565b91505092915050565b5f805f6060848603121561123c5761123b61110e565b5b5f84015167ffffffffffffffff81111561125957611258611112565b5b611265868287016111f8565b935050602084015167ffffffffffffffff81111561128657611285611112565b5b611292868287016111f8565b925050604084015167ffffffffffffffff8111156112b3576112b2611112565b5b6112bf868287016111f8565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61130082610f0e565b915061130b83610f0e565b9250828201905080821115611323576113226112c9565b5b92915050565b5f61133382610f0e565b915061133e83610f0e565b925082820261134c81610f0e565b91508282048414831517611363576113626112c9565b5b5092915050565b5f61137482610f0e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a6576113a56112c9565b5b600182019050919050565b5f82825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6113f56020836113b1565b9150611400826113c1565b602082019050919050565b5f6020820190508181035f830152611422816113e9565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e2045524337323152655f8201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b5f6114836032836113b1565b915061148e82611429565b604082019050919050565b5f6020820190508181035f8301526114b081611477565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f20616464726573735f82015250565b5f6114eb6020836113b1565b91506114f6826114b7565b602082019050919050565b5f6020820190508181035f830152611518816114df565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e746564000000005f82015250565b5f611553601c836113b1565b915061155e8261151f565b602082019050919050565b5f6020820190508181035f83015261158081611547565b9050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115b082611587565b9050919050565b6115c0816115a6565b82525050565b6115cf81610f0e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f6115f9826115d5565b61160381856115df565b93506116138185602086016111a9565b61161c8161111e565b840191505092915050565b5f60808201905061163a5f8301876115b7565b61164760208301866115b7565b61165460408301856115c6565b818103606083015261166681846115ef565b905095945050505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6116a581611671565b81146116af575f80fd5b50565b5f815190506116c08161169c565b92915050565b5f602082840312156116db576116da61110e565b5b5f6116e8848285016116b2565b91505092915050565b7f455243373231456e756d657261626c653a20636f6e73656375746976652074725f8201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b5f61174b6035836113b1565b9150611756826116f1565b604082019050919050565b5f6020820190508181035f8301526117788161173f565b9050919050565b5f61178982610f0e565b915061179483610f0e565b92508282039050818111156117ac576117ab6112c9565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4552433732313a2061646472657373207a65726f206973206e6f7420612076615f8201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b5f6118666029836113b1565b91506118718261180c565b604082019050919050565b5f6020820190508181035f8301526118938161185a565b9050919050565b614148806118a75f395ff3fe60806040526004361061020e575f3560e01c806355f804b311610117578063a22cb4651161009f578063d5abeb011161006e578063d5abeb0114610760578063d936547e1461078a578063da3ef23f146107c6578063e985e9c5146107ee578063f2fde38b1461082a5761020e565b8063a22cb465146106aa578063b88d4fde146106d2578063c6682862146106fa578063c87b56dd146107245761020e565b806370a08231116100e657806370a08231146105dc578063715018a6146106185780637f00c7a61461062e5780638da5cb5b1461065657806395d89b41146106805761020e565b806355f804b3146105245780635c975abb1461054c5780636352211e146105765780636c0360eb146105b25761020e565b80632f745c591161019a57806342842e0e1161016957806342842e0e14610434578063438b63001461045c57806344a0d68a146104985780634a4c560d146104c05780634f6ccce7146104e85761020e565b80632f745c59146103aa57806330cc7ae0146103e65780633ccfd60b1461040e57806340c10f19146104185761020e565b8063095ea7b3116101e1578063095ea7b3146102dc57806313faede61461030457806318160ddd1461032e578063239c70ae1461035857806323b872dd146103825761020e565b806301ffc9a71461021257806302329a291461024e57806306fdde0314610276578063081812fc146102a0575b5f80fd5b34801561021d575f80fd5b5061023860048036038101906102339190612ad9565b610852565b6040516102459190612b1e565b60405180910390f35b348015610259575f80fd5b50610274600480360381019061026f9190612b61565b6108cb565b005b348015610281575f80fd5b5061028a6108ef565b6040516102979190612bfc565b60405180910390f35b3480156102ab575f80fd5b506102c660048036038101906102c19190612c4f565b61097e565b6040516102d39190612cb9565b60405180910390f35b3480156102e7575f80fd5b5061030260048036038101906102fd9190612cfc565b6109c0565b005b34801561030f575f80fd5b50610318610ad6565b6040516103259190612d49565b60405180910390f35b348015610339575f80fd5b50610342610adc565b60405161034f9190612d49565b60405180910390f35b348015610363575f80fd5b5061036c610ae8565b6040516103799190612d49565b60405180910390f35b34801561038d575f80fd5b506103a860048036038101906103a39190612d62565b610aee565b005b3480156103b5575f80fd5b506103d060048036038101906103cb9190612cfc565b610b4e565b6040516103dd9190612d49565b60405180910390f35b3480156103f1575f80fd5b5061040c60048036038101906104079190612db2565b610bee565b005b610416610c4d565b005b610432600480360381019061042d9190612cfc565b610d6d565b005b34801561043f575f80fd5b5061045a60048036038101906104559190612d62565b610ea7565b005b348015610467575f80fd5b50610482600480360381019061047d9190612db2565b610ec6565b60405161048f9190612e94565b60405180910390f35b3480156104a3575f80fd5b506104be60048036038101906104b99190612c4f565b610f6b565b005b3480156104cb575f80fd5b506104e660048036038101906104e19190612db2565b610f7d565b005b3480156104f3575f80fd5b5061050e60048036038101906105099190612c4f565b610fdd565b60405161051b9190612d49565b60405180910390f35b34801561052f575f80fd5b5061054a60048036038101906105459190612fe0565b61104b565b005b348015610557575f80fd5b50610560611066565b60405161056d9190612b1e565b60405180910390f35b348015610581575f80fd5b5061059c60048036038101906105979190612c4f565b611078565b6040516105a99190612cb9565b60405180910390f35b3480156105bd575f80fd5b506105c66110fc565b6040516105d39190612bfc565b60405180910390f35b3480156105e7575f80fd5b5061060260048036038101906105fd9190612db2565b611188565b60405161060f9190612d49565b60405180910390f35b348015610623575f80fd5b5061062c61123c565b005b348015610639575f80fd5b50610654600480360381019061064f9190612c4f565b61124f565b005b348015610661575f80fd5b5061066a611261565b6040516106779190612cb9565b60405180910390f35b34801561068b575f80fd5b50610694611289565b6040516106a19190612bfc565b60405180910390f35b3480156106b5575f80fd5b506106d060048036038101906106cb9190613027565b611319565b005b3480156106dd575f80fd5b506106f860048036038101906106f39190613103565b61132f565b005b348015610705575f80fd5b5061070e611391565b60405161071b9190612bfc565b60405180910390f35b34801561072f575f80fd5b5061074a60048036038101906107459190612c4f565b61141d565b6040516107579190612bfc565b60405180910390f35b34801561076b575f80fd5b506107746114c4565b6040516107819190612d49565b60405180910390f35b348015610795575f80fd5b506107b060048036038101906107ab9190612db2565b6114ca565b6040516107bd9190612b1e565b60405180910390f35b3480156107d1575f80fd5b506107ec60048036038101906107e79190612fe0565b6114e7565b005b3480156107f9575f80fd5b50610814600480360381019061080f9190613183565b611502565b6040516108219190612b1e565b60405180910390f35b348015610835575f80fd5b50610850600480360381019061084b9190612db2565b611590565b005b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108c457506108c382611612565b5b9050919050565b6108d36116f3565b8060105f6101000a81548160ff02191690831515021790555050565b60605f80546108fd906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054610929906131ee565b80156109745780601f1061094b57610100808354040283529160200191610974565b820191905f5260205f20905b81548152906001019060200180831161095757829003601f168201915b5050505050905090565b5f61098882611771565b60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6109ca82611078565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a319061328e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610a596117bc565b73ffffffffffffffffffffffffffffffffffffffff161480610a885750610a8781610a826117bc565b611502565b5b610ac7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610abe9061331c565b60405180910390fd5b610ad183836117c3565b505050565b600d5481565b5f600880549050905090565b600f5481565b610aff610af96117bc565b82611879565b610b3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b35906133aa565b60405180910390fd5b610b4983838361190d565b505050565b5f610b5883611188565b8210610b99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9090613438565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b610bf66116f3565b5f60115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b610c556116f3565b5f737abfc935ceec4547bf5cf70b00d4f333db651fdf73ffffffffffffffffffffffffffffffffffffffff1660645f47610c8f9190613483565b610c9991906134f1565b604051610ca59061354e565b5f6040518083038185875af1925050503d805f8114610cdf576040519150601f19603f3d011682016040523d82523d5f602084013e610ce4565b606091505b5050905080610cf1575f80fd5b5f610cfa611261565b73ffffffffffffffffffffffffffffffffffffffff1647604051610d1d9061354e565b5f6040518083038185875af1925050503d805f8114610d57576040519150601f19603f3d011682016040523d82523d5f602084013e610d5c565b606091505b5050905080610d69575f80fd5b5050565b5f610d76610adc565b905060105f9054906101000a900460ff1615610d90575f80fd5b5f8211610d9b575f80fd5b600f54821115610da9575f80fd5b600e548282610db89190613562565b1115610dc2575f80fd5b610dca611261565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c576001151560115f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16151514610e6b5781600d54610e5f9190613483565b341015610e6a575f80fd5b5b5b5f600190505b828111610ea157610e8e848284610e899190613562565b611bf9565b8080610e9990613595565b915050610e72565b50505050565b610ec183838360405180602001604052805f81525061132f565b505050565b60605f610ed283611188565b90505f8167ffffffffffffffff811115610eef57610eee612ebc565b5b604051908082528060200260200182016040528015610f1d5781602001602082028036833780820191505090505b5090505f5b82811015610f6057610f348582610b4e565b828281518110610f4757610f466135dc565b5b6020026020010181815250508080600101915050610f22565b508092505050919050565b610f736116f3565b80600d8190555050565b610f856116f3565b600160115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f610fe6610adc565b8210611027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101e90613679565b60405180910390fd5b6008828154811061103b5761103a6135dc565b5b905f5260205f2001549050919050565b6110536116f3565b80600b90816110629190613834565b5050565b60105f9054906101000a900460ff1681565b5f8061108383611c16565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ea9061394d565b60405180910390fd5b80915050919050565b600b8054611109906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054611135906131ee565b80156111805780601f1061115757610100808354040283529160200191611180565b820191905f5260205f20905b81548152906001019060200180831161116357829003601f168201915b505050505081565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ee906139db565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6112446116f3565b61124d5f611c4f565b565b6112576116f3565b80600f8190555050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054611298906131ee565b80601f01602080910402602001604051908101604052809291908181526020018280546112c4906131ee565b801561130f5780601f106112e65761010080835404028352916020019161130f565b820191905f5260205f20905b8154815290600101906020018083116112f257829003601f168201915b5050505050905090565b61132b6113246117bc565b8383611d12565b5050565b61134061133a6117bc565b83611879565b61137f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611376906133aa565b60405180910390fd5b61138b84848484611e79565b50505050565b600c805461139e906131ee565b80601f01602080910402602001604051908101604052809291908181526020018280546113ca906131ee565b80156114155780601f106113ec57610100808354040283529160200191611415565b820191905f5260205f20905b8154815290600101906020018083116113f857829003601f168201915b505050505081565b606061142882611ed5565b611467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145e90613a69565b60405180910390fd5b5f611470611f15565b90505f81511161148e5760405180602001604052805f8152506114bc565b8061149884611fa5565b600c6040516020016114ac93929190613b41565b6040516020818303038152906040525b915050919050565b600e5481565b6011602052805f5260405f205f915054906101000a900460ff1681565b6114ef6116f3565b80600c90816114fe9190613834565b5050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6115986116f3565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115fd90613be1565b60405180910390fd5b61160f81611c4f565b50565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806116dc57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806116ec57506116eb8261206f565b5b9050919050565b6116fb6117bc565b73ffffffffffffffffffffffffffffffffffffffff16611719611261565b73ffffffffffffffffffffffffffffffffffffffff161461176f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176690613c49565b60405180910390fd5b565b61177a81611ed5565b6117b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b09061394d565b60405180910390fd5b50565b5f33905090565b8160045f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661183383611078565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061188483611078565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806118c657506118c58185611502565b5b8061190457508373ffffffffffffffffffffffffffffffffffffffff166118ec8461097e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661192d82611078565b73ffffffffffffffffffffffffffffffffffffffff1614611983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197a90613cd7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e890613d65565b60405180910390fd5b6119fe83838360016120d8565b8273ffffffffffffffffffffffffffffffffffffffff16611a1e82611078565b73ffffffffffffffffffffffffffffffffffffffff1614611a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6b90613cd7565b60405180910390fd5b60045f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600160035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540392505081905550600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611bf48383836001612233565b505050565b611c12828260405180602001604052805f815250612239565b5050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7790613dcd565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611e6c9190612b1e565b60405180910390a3505050565b611e8484848461190d565b611e9084848484612293565b611ecf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec690613e5b565b60405180910390fd5b50505050565b5f8073ffffffffffffffffffffffffffffffffffffffff16611ef683611c16565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6060600b8054611f24906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054611f50906131ee565b8015611f9b5780601f10611f7257610100808354040283529160200191611f9b565b820191905f5260205f20905b815481529060010190602001808311611f7e57829003601f168201915b5050505050905090565b60605f6001611fb384612415565b0190505f8167ffffffffffffffff811115611fd157611fd0612ebc565b5b6040519080825280601f01601f1916602001820160405280156120035781602001600182028036833780820191505090505b5090505f82602001820190505b600115612064578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612059576120586134c4565b5b0494505f8503612010575b819350505050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6120e484848484612566565b6001811115612128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211f90613ee9565b60405180910390fd5b5f8290505f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361216d576121688161256c565b6121ac565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146121ab576121aa85826125b0565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036121ed576121e881612706565b61222c565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461222b5761222a84826127c6565b5b5b5050505050565b50505050565b612243838361283e565b61224f5f848484612293565b61228e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161228590613e5b565b60405180910390fd5b505050565b5f6122b38473ffffffffffffffffffffffffffffffffffffffff16612a51565b15612408578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026122dc6117bc565b8786866040518563ffffffff1660e01b81526004016122fe9493929190613f59565b6020604051808303815f875af192505050801561233957506040513d601f19601f820116820180604052508101906123369190613fb7565b60015b6123b8573d805f8114612367576040519150601f19603f3d011682016040523d82523d5f602084013e61236c565b606091505b505f8151036123b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a790613e5b565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061240d565b600190505b949350505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310612471577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381612467576124666134c4565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106124ae576d04ee2d6d415b85acef810000000083816124a4576124a36134c4565b5b0492506020810190505b662386f26fc1000083106124dd57662386f26fc1000083816124d3576124d26134c4565b5b0492506010810190505b6305f5e1008310612506576305f5e10083816124fc576124fb6134c4565b5b0492506008810190505b612710831061252b576127108381612521576125206134c4565b5b0492506004810190505b6064831061254e5760648381612544576125436134c4565b5b0492506002810190505b600a831061255d576001810190505b80915050919050565b50505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f60016125bc84611188565b6125c69190613fe2565b90505f60075f8481526020019081526020015f2054905081811461269d575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f60016008805490506127199190613fe2565b90505f60095f8481526020019081526020015f205490505f60088381548110612745576127446135dc565b5b905f5260205f20015490508060088381548110612765576127646135dc565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f905560088054806127ad576127ac614015565b5b600190038181905f5260205f20015f9055905550505050565b5f6127d083611188565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036128ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128a39061408c565b60405180910390fd5b6128b581611ed5565b156128f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128ec906140f4565b60405180910390fd5b6129025f838360016120d8565b61290b81611ed5565b1561294b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612942906140f4565b60405180910390fd5b600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612a4d5f83836001612233565b5050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612ab881612a84565b8114612ac2575f80fd5b50565b5f81359050612ad381612aaf565b92915050565b5f60208284031215612aee57612aed612a7c565b5b5f612afb84828501612ac5565b91505092915050565b5f8115159050919050565b612b1881612b04565b82525050565b5f602082019050612b315f830184612b0f565b92915050565b612b4081612b04565b8114612b4a575f80fd5b50565b5f81359050612b5b81612b37565b92915050565b5f60208284031215612b7657612b75612a7c565b5b5f612b8384828501612b4d565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f612bce82612b8c565b612bd88185612b96565b9350612be8818560208601612ba6565b612bf181612bb4565b840191505092915050565b5f6020820190508181035f830152612c148184612bc4565b905092915050565b5f819050919050565b612c2e81612c1c565b8114612c38575f80fd5b50565b5f81359050612c4981612c25565b92915050565b5f60208284031215612c6457612c63612a7c565b5b5f612c7184828501612c3b565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612ca382612c7a565b9050919050565b612cb381612c99565b82525050565b5f602082019050612ccc5f830184612caa565b92915050565b612cdb81612c99565b8114612ce5575f80fd5b50565b5f81359050612cf681612cd2565b92915050565b5f8060408385031215612d1257612d11612a7c565b5b5f612d1f85828601612ce8565b9250506020612d3085828601612c3b565b9150509250929050565b612d4381612c1c565b82525050565b5f602082019050612d5c5f830184612d3a565b92915050565b5f805f60608486031215612d7957612d78612a7c565b5b5f612d8686828701612ce8565b9350506020612d9786828701612ce8565b9250506040612da886828701612c3b565b9150509250925092565b5f60208284031215612dc757612dc6612a7c565b5b5f612dd484828501612ce8565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612e0f81612c1c565b82525050565b5f612e208383612e06565b60208301905092915050565b5f602082019050919050565b5f612e4282612ddd565b612e4c8185612de7565b9350612e5783612df7565b805f5b83811015612e87578151612e6e8882612e15565b9750612e7983612e2c565b925050600181019050612e5a565b5085935050505092915050565b5f6020820190508181035f830152612eac8184612e38565b905092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612ef282612bb4565b810181811067ffffffffffffffff82111715612f1157612f10612ebc565b5b80604052505050565b5f612f23612a73565b9050612f2f8282612ee9565b919050565b5f67ffffffffffffffff821115612f4e57612f4d612ebc565b5b612f5782612bb4565b9050602081019050919050565b828183375f83830152505050565b5f612f84612f7f84612f34565b612f1a565b905082815260208101848484011115612fa057612f9f612eb8565b5b612fab848285612f64565b509392505050565b5f82601f830112612fc757612fc6612eb4565b5b8135612fd7848260208601612f72565b91505092915050565b5f60208284031215612ff557612ff4612a7c565b5b5f82013567ffffffffffffffff81111561301257613011612a80565b5b61301e84828501612fb3565b91505092915050565b5f806040838503121561303d5761303c612a7c565b5b5f61304a85828601612ce8565b925050602061305b85828601612b4d565b9150509250929050565b5f67ffffffffffffffff82111561307f5761307e612ebc565b5b61308882612bb4565b9050602081019050919050565b5f6130a76130a284613065565b612f1a565b9050828152602081018484840111156130c3576130c2612eb8565b5b6130ce848285612f64565b509392505050565b5f82601f8301126130ea576130e9612eb4565b5b81356130fa848260208601613095565b91505092915050565b5f805f806080858703121561311b5761311a612a7c565b5b5f61312887828801612ce8565b945050602061313987828801612ce8565b935050604061314a87828801612c3b565b925050606085013567ffffffffffffffff81111561316b5761316a612a80565b5b613177878288016130d6565b91505092959194509250565b5f806040838503121561319957613198612a7c565b5b5f6131a685828601612ce8565b92505060206131b785828601612ce8565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061320557607f821691505b602082108103613218576132176131c1565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e655f8201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b5f613278602183612b96565b91506132838261321e565b604082019050919050565b5f6020820190508181035f8301526132a58161326c565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f5f8201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b5f613306603d83612b96565b9150613311826132ac565b604082019050919050565b5f6020820190508181035f830152613333816132fa565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e655f8201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b5f613394602d83612b96565b915061339f8261333a565b604082019050919050565b5f6020820190508181035f8301526133c181613388565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f755f8201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b5f613422602b83612b96565b915061342d826133c8565b604082019050919050565b5f6020820190508181035f83015261344f81613416565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61348d82612c1c565b915061349883612c1c565b92508282026134a681612c1c565b915082820484148315176134bd576134bc613456565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6134fb82612c1c565b915061350683612c1c565b925082613516576135156134c4565b5b828204905092915050565b5f81905092915050565b50565b5f6135395f83613521565b91506135448261352b565b5f82019050919050565b5f6135588261352e565b9150819050919050565b5f61356c82612c1c565b915061357783612c1c565b925082820190508082111561358f5761358e613456565b5b92915050565b5f61359f82612c1c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036135d1576135d0613456565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f5f8201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b5f613663602c83612b96565b915061366e82613609565b604082019050919050565b5f6020820190508181035f83015261369081613657565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026136f37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826136b8565b6136fd86836136b8565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61373861373361372e84612c1c565b613715565b612c1c565b9050919050565b5f819050919050565b6137518361371e565b61376561375d8261373f565b8484546136c4565b825550505050565b5f90565b61377961376d565b613784818484613748565b505050565b5b818110156137a75761379c5f82613771565b60018101905061378a565b5050565b601f8211156137ec576137bd81613697565b6137c6846136a9565b810160208510156137d5578190505b6137e96137e1856136a9565b830182613789565b50505b505050565b5f82821c905092915050565b5f61380c5f19846008026137f1565b1980831691505092915050565b5f61382483836137fd565b9150826002028217905092915050565b61383d82612b8c565b67ffffffffffffffff81111561385657613855612ebc565b5b61386082546131ee565b61386b8282856137ab565b5f60209050601f83116001811461389c575f841561388a578287015190505b6138948582613819565b8655506138fb565b601f1984166138aa86613697565b5f5b828110156138d1578489015182556001820191506020850194506020810190506138ac565b868310156138ee57848901516138ea601f8916826137fd565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a20696e76616c696420746f6b656e20494400000000000000005f82015250565b5f613937601883612b96565b915061394282613903565b602082019050919050565b5f6020820190508181035f8301526139648161392b565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f7420612076615f8201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b5f6139c5602983612b96565b91506139d08261396b565b604082019050919050565b5f6020820190508181035f8301526139f2816139b9565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f613a53602f83612b96565b9150613a5e826139f9565b604082019050919050565b5f6020820190508181035f830152613a8081613a47565b9050919050565b5f81905092915050565b5f613a9b82612b8c565b613aa58185613a87565b9350613ab5818560208601612ba6565b80840191505092915050565b5f8154613acd816131ee565b613ad78186613a87565b9450600182165f8114613af15760018114613b0657613b38565b60ff1983168652811515820286019350613b38565b613b0f85613697565b5f5b83811015613b3057815481890152600182019150602081019050613b11565b838801955050505b50505092915050565b5f613b4c8286613a91565b9150613b588285613a91565b9150613b648284613ac1565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f613bcb602683612b96565b9150613bd682613b71565b604082019050919050565b5f6020820190508181035f830152613bf881613bbf565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f613c33602083612b96565b9150613c3e82613bff565b602082019050919050565b5f6020820190508181035f830152613c6081613c27565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f7272656374205f8201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b5f613cc1602583612b96565b9150613ccc82613c67565b604082019050919050565b5f6020820190508181035f830152613cee81613cb5565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f613d4f602483612b96565b9150613d5a82613cf5565b604082019050919050565b5f6020820190508181035f830152613d7c81613d43565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c6572000000000000005f82015250565b5f613db7601983612b96565b9150613dc282613d83565b602082019050919050565b5f6020820190508181035f830152613de481613dab565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e2045524337323152655f8201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b5f613e45603283612b96565b9150613e5082613deb565b604082019050919050565b5f6020820190508181035f830152613e7281613e39565b9050919050565b7f455243373231456e756d657261626c653a20636f6e73656375746976652074725f8201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b5f613ed3603583612b96565b9150613ede82613e79565b604082019050919050565b5f6020820190508181035f830152613f0081613ec7565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f613f2b82613f07565b613f358185613f11565b9350613f45818560208601612ba6565b613f4e81612bb4565b840191505092915050565b5f608082019050613f6c5f830187612caa565b613f796020830186612caa565b613f866040830185612d3a565b8181036060830152613f988184613f21565b905095945050505050565b5f81519050613fb181612aaf565b92915050565b5f60208284031215613fcc57613fcb612a7c565b5b5f613fd984828501613fa3565b91505092915050565b5f613fec82612c1c565b9150613ff783612c1c565b925082820390508181111561400f5761400e613456565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4552433732313a206d696e7420746f20746865207a65726f20616464726573735f82015250565b5f614076602083612b96565b915061408182614042565b602082019050919050565b5f6020820190508181035f8301526140a38161406a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e746564000000005f82015250565b5f6140de601c83612b96565b91506140e9826140aa565b602082019050919050565b5f6020820190508181035f83015261410b816140d2565b905091905056fea26469706673582212209a602c37cbd50919086bf4249a77a0d67e9518ee849c3530f88a71a558ccdd1564736f6c63430008190033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000010446f7065626f72656461706562726f73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010446f7065626f72656461706562726f73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d62734d63367571596a6d707578623767364e6f36674b35325071345a784a6468644e79664378716769384c682f00000000000000000000

    Deployed Bytecode

    0x60806040526004361061020e575f3560e01c806355f804b311610117578063a22cb4651161009f578063d5abeb011161006e578063d5abeb0114610760578063d936547e1461078a578063da3ef23f146107c6578063e985e9c5146107ee578063f2fde38b1461082a5761020e565b8063a22cb465146106aa578063b88d4fde146106d2578063c6682862146106fa578063c87b56dd146107245761020e565b806370a08231116100e657806370a08231146105dc578063715018a6146106185780637f00c7a61461062e5780638da5cb5b1461065657806395d89b41146106805761020e565b806355f804b3146105245780635c975abb1461054c5780636352211e146105765780636c0360eb146105b25761020e565b80632f745c591161019a57806342842e0e1161016957806342842e0e14610434578063438b63001461045c57806344a0d68a146104985780634a4c560d146104c05780634f6ccce7146104e85761020e565b80632f745c59146103aa57806330cc7ae0146103e65780633ccfd60b1461040e57806340c10f19146104185761020e565b8063095ea7b3116101e1578063095ea7b3146102dc57806313faede61461030457806318160ddd1461032e578063239c70ae1461035857806323b872dd146103825761020e565b806301ffc9a71461021257806302329a291461024e57806306fdde0314610276578063081812fc146102a0575b5f80fd5b34801561021d575f80fd5b5061023860048036038101906102339190612ad9565b610852565b6040516102459190612b1e565b60405180910390f35b348015610259575f80fd5b50610274600480360381019061026f9190612b61565b6108cb565b005b348015610281575f80fd5b5061028a6108ef565b6040516102979190612bfc565b60405180910390f35b3480156102ab575f80fd5b506102c660048036038101906102c19190612c4f565b61097e565b6040516102d39190612cb9565b60405180910390f35b3480156102e7575f80fd5b5061030260048036038101906102fd9190612cfc565b6109c0565b005b34801561030f575f80fd5b50610318610ad6565b6040516103259190612d49565b60405180910390f35b348015610339575f80fd5b50610342610adc565b60405161034f9190612d49565b60405180910390f35b348015610363575f80fd5b5061036c610ae8565b6040516103799190612d49565b60405180910390f35b34801561038d575f80fd5b506103a860048036038101906103a39190612d62565b610aee565b005b3480156103b5575f80fd5b506103d060048036038101906103cb9190612cfc565b610b4e565b6040516103dd9190612d49565b60405180910390f35b3480156103f1575f80fd5b5061040c60048036038101906104079190612db2565b610bee565b005b610416610c4d565b005b610432600480360381019061042d9190612cfc565b610d6d565b005b34801561043f575f80fd5b5061045a60048036038101906104559190612d62565b610ea7565b005b348015610467575f80fd5b50610482600480360381019061047d9190612db2565b610ec6565b60405161048f9190612e94565b60405180910390f35b3480156104a3575f80fd5b506104be60048036038101906104b99190612c4f565b610f6b565b005b3480156104cb575f80fd5b506104e660048036038101906104e19190612db2565b610f7d565b005b3480156104f3575f80fd5b5061050e60048036038101906105099190612c4f565b610fdd565b60405161051b9190612d49565b60405180910390f35b34801561052f575f80fd5b5061054a60048036038101906105459190612fe0565b61104b565b005b348015610557575f80fd5b50610560611066565b60405161056d9190612b1e565b60405180910390f35b348015610581575f80fd5b5061059c60048036038101906105979190612c4f565b611078565b6040516105a99190612cb9565b60405180910390f35b3480156105bd575f80fd5b506105c66110fc565b6040516105d39190612bfc565b60405180910390f35b3480156105e7575f80fd5b5061060260048036038101906105fd9190612db2565b611188565b60405161060f9190612d49565b60405180910390f35b348015610623575f80fd5b5061062c61123c565b005b348015610639575f80fd5b50610654600480360381019061064f9190612c4f565b61124f565b005b348015610661575f80fd5b5061066a611261565b6040516106779190612cb9565b60405180910390f35b34801561068b575f80fd5b50610694611289565b6040516106a19190612bfc565b60405180910390f35b3480156106b5575f80fd5b506106d060048036038101906106cb9190613027565b611319565b005b3480156106dd575f80fd5b506106f860048036038101906106f39190613103565b61132f565b005b348015610705575f80fd5b5061070e611391565b60405161071b9190612bfc565b60405180910390f35b34801561072f575f80fd5b5061074a60048036038101906107459190612c4f565b61141d565b6040516107579190612bfc565b60405180910390f35b34801561076b575f80fd5b506107746114c4565b6040516107819190612d49565b60405180910390f35b348015610795575f80fd5b506107b060048036038101906107ab9190612db2565b6114ca565b6040516107bd9190612b1e565b60405180910390f35b3480156107d1575f80fd5b506107ec60048036038101906107e79190612fe0565b6114e7565b005b3480156107f9575f80fd5b50610814600480360381019061080f9190613183565b611502565b6040516108219190612b1e565b60405180910390f35b348015610835575f80fd5b50610850600480360381019061084b9190612db2565b611590565b005b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108c457506108c382611612565b5b9050919050565b6108d36116f3565b8060105f6101000a81548160ff02191690831515021790555050565b60605f80546108fd906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054610929906131ee565b80156109745780601f1061094b57610100808354040283529160200191610974565b820191905f5260205f20905b81548152906001019060200180831161095757829003601f168201915b5050505050905090565b5f61098882611771565b60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6109ca82611078565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a319061328e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610a596117bc565b73ffffffffffffffffffffffffffffffffffffffff161480610a885750610a8781610a826117bc565b611502565b5b610ac7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610abe9061331c565b60405180910390fd5b610ad183836117c3565b505050565b600d5481565b5f600880549050905090565b600f5481565b610aff610af96117bc565b82611879565b610b3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b35906133aa565b60405180910390fd5b610b4983838361190d565b505050565b5f610b5883611188565b8210610b99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9090613438565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b610bf66116f3565b5f60115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b610c556116f3565b5f737abfc935ceec4547bf5cf70b00d4f333db651fdf73ffffffffffffffffffffffffffffffffffffffff1660645f47610c8f9190613483565b610c9991906134f1565b604051610ca59061354e565b5f6040518083038185875af1925050503d805f8114610cdf576040519150601f19603f3d011682016040523d82523d5f602084013e610ce4565b606091505b5050905080610cf1575f80fd5b5f610cfa611261565b73ffffffffffffffffffffffffffffffffffffffff1647604051610d1d9061354e565b5f6040518083038185875af1925050503d805f8114610d57576040519150601f19603f3d011682016040523d82523d5f602084013e610d5c565b606091505b5050905080610d69575f80fd5b5050565b5f610d76610adc565b905060105f9054906101000a900460ff1615610d90575f80fd5b5f8211610d9b575f80fd5b600f54821115610da9575f80fd5b600e548282610db89190613562565b1115610dc2575f80fd5b610dca611261565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c576001151560115f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16151514610e6b5781600d54610e5f9190613483565b341015610e6a575f80fd5b5b5b5f600190505b828111610ea157610e8e848284610e899190613562565b611bf9565b8080610e9990613595565b915050610e72565b50505050565b610ec183838360405180602001604052805f81525061132f565b505050565b60605f610ed283611188565b90505f8167ffffffffffffffff811115610eef57610eee612ebc565b5b604051908082528060200260200182016040528015610f1d5781602001602082028036833780820191505090505b5090505f5b82811015610f6057610f348582610b4e565b828281518110610f4757610f466135dc565b5b6020026020010181815250508080600101915050610f22565b508092505050919050565b610f736116f3565b80600d8190555050565b610f856116f3565b600160115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f610fe6610adc565b8210611027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101e90613679565b60405180910390fd5b6008828154811061103b5761103a6135dc565b5b905f5260205f2001549050919050565b6110536116f3565b80600b90816110629190613834565b5050565b60105f9054906101000a900460ff1681565b5f8061108383611c16565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ea9061394d565b60405180910390fd5b80915050919050565b600b8054611109906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054611135906131ee565b80156111805780601f1061115757610100808354040283529160200191611180565b820191905f5260205f20905b81548152906001019060200180831161116357829003601f168201915b505050505081565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ee906139db565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6112446116f3565b61124d5f611c4f565b565b6112576116f3565b80600f8190555050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054611298906131ee565b80601f01602080910402602001604051908101604052809291908181526020018280546112c4906131ee565b801561130f5780601f106112e65761010080835404028352916020019161130f565b820191905f5260205f20905b8154815290600101906020018083116112f257829003601f168201915b5050505050905090565b61132b6113246117bc565b8383611d12565b5050565b61134061133a6117bc565b83611879565b61137f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611376906133aa565b60405180910390fd5b61138b84848484611e79565b50505050565b600c805461139e906131ee565b80601f01602080910402602001604051908101604052809291908181526020018280546113ca906131ee565b80156114155780601f106113ec57610100808354040283529160200191611415565b820191905f5260205f20905b8154815290600101906020018083116113f857829003601f168201915b505050505081565b606061142882611ed5565b611467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145e90613a69565b60405180910390fd5b5f611470611f15565b90505f81511161148e5760405180602001604052805f8152506114bc565b8061149884611fa5565b600c6040516020016114ac93929190613b41565b6040516020818303038152906040525b915050919050565b600e5481565b6011602052805f5260405f205f915054906101000a900460ff1681565b6114ef6116f3565b80600c90816114fe9190613834565b5050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6115986116f3565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115fd90613be1565b60405180910390fd5b61160f81611c4f565b50565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806116dc57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806116ec57506116eb8261206f565b5b9050919050565b6116fb6117bc565b73ffffffffffffffffffffffffffffffffffffffff16611719611261565b73ffffffffffffffffffffffffffffffffffffffff161461176f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176690613c49565b60405180910390fd5b565b61177a81611ed5565b6117b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b09061394d565b60405180910390fd5b50565b5f33905090565b8160045f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661183383611078565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061188483611078565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806118c657506118c58185611502565b5b8061190457508373ffffffffffffffffffffffffffffffffffffffff166118ec8461097e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661192d82611078565b73ffffffffffffffffffffffffffffffffffffffff1614611983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197a90613cd7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e890613d65565b60405180910390fd5b6119fe83838360016120d8565b8273ffffffffffffffffffffffffffffffffffffffff16611a1e82611078565b73ffffffffffffffffffffffffffffffffffffffff1614611a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6b90613cd7565b60405180910390fd5b60045f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600160035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540392505081905550600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611bf48383836001612233565b505050565b611c12828260405180602001604052805f815250612239565b5050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7790613dcd565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611e6c9190612b1e565b60405180910390a3505050565b611e8484848461190d565b611e9084848484612293565b611ecf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec690613e5b565b60405180910390fd5b50505050565b5f8073ffffffffffffffffffffffffffffffffffffffff16611ef683611c16565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6060600b8054611f24906131ee565b80601f0160208091040260200160405190810160405280929190818152602001828054611f50906131ee565b8015611f9b5780601f10611f7257610100808354040283529160200191611f9b565b820191905f5260205f20905b815481529060010190602001808311611f7e57829003601f168201915b5050505050905090565b60605f6001611fb384612415565b0190505f8167ffffffffffffffff811115611fd157611fd0612ebc565b5b6040519080825280601f01601f1916602001820160405280156120035781602001600182028036833780820191505090505b5090505f82602001820190505b600115612064578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612059576120586134c4565b5b0494505f8503612010575b819350505050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6120e484848484612566565b6001811115612128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211f90613ee9565b60405180910390fd5b5f8290505f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361216d576121688161256c565b6121ac565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146121ab576121aa85826125b0565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036121ed576121e881612706565b61222c565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461222b5761222a84826127c6565b5b5b5050505050565b50505050565b612243838361283e565b61224f5f848484612293565b61228e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161228590613e5b565b60405180910390fd5b505050565b5f6122b38473ffffffffffffffffffffffffffffffffffffffff16612a51565b15612408578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026122dc6117bc565b8786866040518563ffffffff1660e01b81526004016122fe9493929190613f59565b6020604051808303815f875af192505050801561233957506040513d601f19601f820116820180604052508101906123369190613fb7565b60015b6123b8573d805f8114612367576040519150601f19603f3d011682016040523d82523d5f602084013e61236c565b606091505b505f8151036123b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a790613e5b565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061240d565b600190505b949350505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310612471577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381612467576124666134c4565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106124ae576d04ee2d6d415b85acef810000000083816124a4576124a36134c4565b5b0492506020810190505b662386f26fc1000083106124dd57662386f26fc1000083816124d3576124d26134c4565b5b0492506010810190505b6305f5e1008310612506576305f5e10083816124fc576124fb6134c4565b5b0492506008810190505b612710831061252b576127108381612521576125206134c4565b5b0492506004810190505b6064831061254e5760648381612544576125436134c4565b5b0492506002810190505b600a831061255d576001810190505b80915050919050565b50505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f60016125bc84611188565b6125c69190613fe2565b90505f60075f8481526020019081526020015f2054905081811461269d575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f60016008805490506127199190613fe2565b90505f60095f8481526020019081526020015f205490505f60088381548110612745576127446135dc565b5b905f5260205f20015490508060088381548110612765576127646135dc565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f905560088054806127ad576127ac614015565b5b600190038181905f5260205f20015f9055905550505050565b5f6127d083611188565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036128ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128a39061408c565b60405180910390fd5b6128b581611ed5565b156128f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128ec906140f4565b60405180910390fd5b6129025f838360016120d8565b61290b81611ed5565b1561294b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612942906140f4565b60405180910390fd5b600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612a4d5f83836001612233565b5050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612ab881612a84565b8114612ac2575f80fd5b50565b5f81359050612ad381612aaf565b92915050565b5f60208284031215612aee57612aed612a7c565b5b5f612afb84828501612ac5565b91505092915050565b5f8115159050919050565b612b1881612b04565b82525050565b5f602082019050612b315f830184612b0f565b92915050565b612b4081612b04565b8114612b4a575f80fd5b50565b5f81359050612b5b81612b37565b92915050565b5f60208284031215612b7657612b75612a7c565b5b5f612b8384828501612b4d565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f612bce82612b8c565b612bd88185612b96565b9350612be8818560208601612ba6565b612bf181612bb4565b840191505092915050565b5f6020820190508181035f830152612c148184612bc4565b905092915050565b5f819050919050565b612c2e81612c1c565b8114612c38575f80fd5b50565b5f81359050612c4981612c25565b92915050565b5f60208284031215612c6457612c63612a7c565b5b5f612c7184828501612c3b565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612ca382612c7a565b9050919050565b612cb381612c99565b82525050565b5f602082019050612ccc5f830184612caa565b92915050565b612cdb81612c99565b8114612ce5575f80fd5b50565b5f81359050612cf681612cd2565b92915050565b5f8060408385031215612d1257612d11612a7c565b5b5f612d1f85828601612ce8565b9250506020612d3085828601612c3b565b9150509250929050565b612d4381612c1c565b82525050565b5f602082019050612d5c5f830184612d3a565b92915050565b5f805f60608486031215612d7957612d78612a7c565b5b5f612d8686828701612ce8565b9350506020612d9786828701612ce8565b9250506040612da886828701612c3b565b9150509250925092565b5f60208284031215612dc757612dc6612a7c565b5b5f612dd484828501612ce8565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612e0f81612c1c565b82525050565b5f612e208383612e06565b60208301905092915050565b5f602082019050919050565b5f612e4282612ddd565b612e4c8185612de7565b9350612e5783612df7565b805f5b83811015612e87578151612e6e8882612e15565b9750612e7983612e2c565b925050600181019050612e5a565b5085935050505092915050565b5f6020820190508181035f830152612eac8184612e38565b905092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612ef282612bb4565b810181811067ffffffffffffffff82111715612f1157612f10612ebc565b5b80604052505050565b5f612f23612a73565b9050612f2f8282612ee9565b919050565b5f67ffffffffffffffff821115612f4e57612f4d612ebc565b5b612f5782612bb4565b9050602081019050919050565b828183375f83830152505050565b5f612f84612f7f84612f34565b612f1a565b905082815260208101848484011115612fa057612f9f612eb8565b5b612fab848285612f64565b509392505050565b5f82601f830112612fc757612fc6612eb4565b5b8135612fd7848260208601612f72565b91505092915050565b5f60208284031215612ff557612ff4612a7c565b5b5f82013567ffffffffffffffff81111561301257613011612a80565b5b61301e84828501612fb3565b91505092915050565b5f806040838503121561303d5761303c612a7c565b5b5f61304a85828601612ce8565b925050602061305b85828601612b4d565b9150509250929050565b5f67ffffffffffffffff82111561307f5761307e612ebc565b5b61308882612bb4565b9050602081019050919050565b5f6130a76130a284613065565b612f1a565b9050828152602081018484840111156130c3576130c2612eb8565b5b6130ce848285612f64565b509392505050565b5f82601f8301126130ea576130e9612eb4565b5b81356130fa848260208601613095565b91505092915050565b5f805f806080858703121561311b5761311a612a7c565b5b5f61312887828801612ce8565b945050602061313987828801612ce8565b935050604061314a87828801612c3b565b925050606085013567ffffffffffffffff81111561316b5761316a612a80565b5b613177878288016130d6565b91505092959194509250565b5f806040838503121561319957613198612a7c565b5b5f6131a685828601612ce8565b92505060206131b785828601612ce8565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061320557607f821691505b602082108103613218576132176131c1565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e655f8201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b5f613278602183612b96565b91506132838261321e565b604082019050919050565b5f6020820190508181035f8301526132a58161326c565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f5f8201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b5f613306603d83612b96565b9150613311826132ac565b604082019050919050565b5f6020820190508181035f830152613333816132fa565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e655f8201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b5f613394602d83612b96565b915061339f8261333a565b604082019050919050565b5f6020820190508181035f8301526133c181613388565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f755f8201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b5f613422602b83612b96565b915061342d826133c8565b604082019050919050565b5f6020820190508181035f83015261344f81613416565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61348d82612c1c565b915061349883612c1c565b92508282026134a681612c1c565b915082820484148315176134bd576134bc613456565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6134fb82612c1c565b915061350683612c1c565b925082613516576135156134c4565b5b828204905092915050565b5f81905092915050565b50565b5f6135395f83613521565b91506135448261352b565b5f82019050919050565b5f6135588261352e565b9150819050919050565b5f61356c82612c1c565b915061357783612c1c565b925082820190508082111561358f5761358e613456565b5b92915050565b5f61359f82612c1c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036135d1576135d0613456565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f5f8201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b5f613663602c83612b96565b915061366e82613609565b604082019050919050565b5f6020820190508181035f83015261369081613657565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026136f37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826136b8565b6136fd86836136b8565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61373861373361372e84612c1c565b613715565b612c1c565b9050919050565b5f819050919050565b6137518361371e565b61376561375d8261373f565b8484546136c4565b825550505050565b5f90565b61377961376d565b613784818484613748565b505050565b5b818110156137a75761379c5f82613771565b60018101905061378a565b5050565b601f8211156137ec576137bd81613697565b6137c6846136a9565b810160208510156137d5578190505b6137e96137e1856136a9565b830182613789565b50505b505050565b5f82821c905092915050565b5f61380c5f19846008026137f1565b1980831691505092915050565b5f61382483836137fd565b9150826002028217905092915050565b61383d82612b8c565b67ffffffffffffffff81111561385657613855612ebc565b5b61386082546131ee565b61386b8282856137ab565b5f60209050601f83116001811461389c575f841561388a578287015190505b6138948582613819565b8655506138fb565b601f1984166138aa86613697565b5f5b828110156138d1578489015182556001820191506020850194506020810190506138ac565b868310156138ee57848901516138ea601f8916826137fd565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a20696e76616c696420746f6b656e20494400000000000000005f82015250565b5f613937601883612b96565b915061394282613903565b602082019050919050565b5f6020820190508181035f8301526139648161392b565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f7420612076615f8201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b5f6139c5602983612b96565b91506139d08261396b565b604082019050919050565b5f6020820190508181035f8301526139f2816139b9565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f613a53602f83612b96565b9150613a5e826139f9565b604082019050919050565b5f6020820190508181035f830152613a8081613a47565b9050919050565b5f81905092915050565b5f613a9b82612b8c565b613aa58185613a87565b9350613ab5818560208601612ba6565b80840191505092915050565b5f8154613acd816131ee565b613ad78186613a87565b9450600182165f8114613af15760018114613b0657613b38565b60ff1983168652811515820286019350613b38565b613b0f85613697565b5f5b83811015613b3057815481890152600182019150602081019050613b11565b838801955050505b50505092915050565b5f613b4c8286613a91565b9150613b588285613a91565b9150613b648284613ac1565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f613bcb602683612b96565b9150613bd682613b71565b604082019050919050565b5f6020820190508181035f830152613bf881613bbf565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f613c33602083612b96565b9150613c3e82613bff565b602082019050919050565b5f6020820190508181035f830152613c6081613c27565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f7272656374205f8201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b5f613cc1602583612b96565b9150613ccc82613c67565b604082019050919050565b5f6020820190508181035f830152613cee81613cb5565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f613d4f602483612b96565b9150613d5a82613cf5565b604082019050919050565b5f6020820190508181035f830152613d7c81613d43565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c6572000000000000005f82015250565b5f613db7601983612b96565b9150613dc282613d83565b602082019050919050565b5f6020820190508181035f830152613de481613dab565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e2045524337323152655f8201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b5f613e45603283612b96565b9150613e5082613deb565b604082019050919050565b5f6020820190508181035f830152613e7281613e39565b9050919050565b7f455243373231456e756d657261626c653a20636f6e73656375746976652074725f8201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b5f613ed3603583612b96565b9150613ede82613e79565b604082019050919050565b5f6020820190508181035f830152613f0081613ec7565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f613f2b82613f07565b613f358185613f11565b9350613f45818560208601612ba6565b613f4e81612bb4565b840191505092915050565b5f608082019050613f6c5f830187612caa565b613f796020830186612caa565b613f866040830185612d3a565b8181036060830152613f988184613f21565b905095945050505050565b5f81519050613fb181612aaf565b92915050565b5f60208284031215613fcc57613fcb612a7c565b5b5f613fd984828501613fa3565b91505092915050565b5f613fec82612c1c565b9150613ff783612c1c565b925082820390508181111561400f5761400e613456565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4552433732313a206d696e7420746f20746865207a65726f20616464726573735f82015250565b5f614076602083612b96565b915061408182614042565b602082019050919050565b5f6020820190508181035f8301526140a38161406a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e746564000000005f82015250565b5f6140de601c83612b96565b91506140e9826140aa565b602082019050919050565b5f6020820190508181035f83015261410b816140d2565b905091905056fea26469706673582212209a602c37cbd50919086bf4249a77a0d67e9518ee849c3530f88a71a558ccdd1564736f6c63430008190033

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

    000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000010446f7065626f72656461706562726f73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010446f7065626f72656461706562726f73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d62734d63367571596a6d707578623767364e6f36674b35325071345a784a6468644e79664378716769384c682f00000000000000000000

    -----Decoded View---------------
    Arg [0] : _name (string): Dopeboredapebros
    Arg [1] : _symbol (string): Dopeboredapebros
    Arg [2] : _initBaseURI (string): ipfs://QmbsMc6uqYjmpuxb7g6No6gK52Pq4ZxJdhdNyfCxqgi8Lh/

    -----Encoded View---------------
    10 Constructor Arguments found :
    Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
    Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
    Arg [2] : 00000000000000000000000000000000000000000000000000000000000000e0
    Arg [3] : 0000000000000000000000000000000000000000000000000000000000000010
    Arg [4] : 446f7065626f72656461706562726f7300000000000000000000000000000000
    Arg [5] : 0000000000000000000000000000000000000000000000000000000000000010
    Arg [6] : 446f7065626f72656461706562726f7300000000000000000000000000000000
    Arg [7] : 0000000000000000000000000000000000000000000000000000000000000036
    Arg [8] : 697066733a2f2f516d62734d63367571596a6d707578623767364e6f36674b35
    Arg [9] : 325071345a784a6468644e79664378716769384c682f00000000000000000000


    Deployed Bytecode Sourcemap

    65377:3645:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;58866:224;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;67808:73;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;42914:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;44426:171;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;43944:416;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;65541:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;59506:113;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;65611:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;45126:301;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;59174:256;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;67987:100;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;68093:926;;;:::i;:::-;;66062:501;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;45498:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;66569:348;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;67368:80;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;67887:93;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;59696:233;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;67576:98;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;65649:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;42624:223;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;65473:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;42355:207;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20236:103;;;;;;;;;;;;;:::i;:::-;;67454:116;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19595:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;43083:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;44669:155;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;45720:279;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;65499:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;66923:423;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;65575:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;65680:43;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;67680:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;44895:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20494:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;58866:224;58968:4;59007:35;58992:50;;;:11;:50;;;;:90;;;;59046:36;59070:11;59046:23;:36::i;:::-;58992:90;58985:97;;58866:224;;;:::o;67808:73::-;19481:13;:11;:13::i;:::-;67869:6:::1;67860;;:15;;;;;;;;;;;;;;;;;;67808:73:::0;:::o;42914:100::-;42968:13;43001:5;42994:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;42914:100;:::o;44426:171::-;44502:7;44522:23;44537:7;44522:14;:23::i;:::-;44565:15;:24;44581:7;44565:24;;;;;;;;;;;;;;;;;;;;;44558:31;;44426:171;;;:::o;43944:416::-;44025:13;44041:23;44056:7;44041:14;:23::i;:::-;44025:39;;44089:5;44083:11;;:2;:11;;;44075:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;44183:5;44167:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;44192:37;44209:5;44216:12;:10;:12::i;:::-;44192:16;:37::i;:::-;44167:62;44145:173;;;;;;;;;;;;:::i;:::-;;;;;;;;;44331:21;44340:2;44344:7;44331:8;:21::i;:::-;44014:346;43944:416;;:::o;65541:29::-;;;;:::o;59506:113::-;59567:7;59594:10;:17;;;;59587:24;;59506:113;:::o;65611:33::-;;;;:::o;45126:301::-;45287:41;45306:12;:10;:12::i;:::-;45320:7;45287:18;:41::i;:::-;45279:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;45391:28;45401:4;45407:2;45411:7;45391:9;:28::i;:::-;45126:301;;;:::o;59174:256::-;59271:7;59307:23;59324:5;59307:16;:23::i;:::-;59299:5;:31;59291:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;59396:12;:19;59409:5;59396:19;;;;;;;;;;;;;;;:26;59416:5;59396:26;;;;;;;;;;;;59389:33;;59174:256;;;;:::o;67987:100::-;19481:13;:11;:13::i;:::-;68076:5:::1;68055:11;:18;68067:5;68055:18;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;67987:100:::0;:::o;68093:926::-;19481:13;:11;:13::i;:::-;68379:7:::1;68400:42;68392:56;;68484:3;68480:1;68456:21;:25;;;;:::i;:::-;:31;;;;:::i;:::-;68392:100;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;68378:114;;;68507:2;68499:11;;;::::0;::::1;;68841:7;68862;:5;:7::i;:::-;68854:21;;68883;68854:55;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;68840:69;;;68924:2;68916:11;;;::::0;::::1;;68138:881;;68093:926::o:0;66062:501::-;66132:14;66149:13;:11;:13::i;:::-;66132:30;;66178:6;;;;;;;;;;;66177:7;66169:16;;;;;;66214:1;66200:11;:15;66192:24;;;;;;66246:13;;66231:11;:28;;66223:37;;;;;;66299:9;;66284:11;66275:6;:20;;;;:::i;:::-;:33;;66267:42;;;;;;66336:7;:5;:7::i;:::-;66322:21;;:10;:21;;;66318:146;;66386:4;66359:31;;:11;:23;66371:10;66359:23;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;66356:101;;66433:11;66426:4;;:18;;;;:::i;:::-;66413:9;:31;;66405:40;;;;;;66356:101;66318:146;66477:9;66489:1;66477:13;;66472:86;66497:11;66492:1;:16;66472:86;;66524:26;66534:3;66548:1;66539:6;:10;;;;:::i;:::-;66524:9;:26::i;:::-;66510:3;;;;;:::i;:::-;;;;66472:86;;;;66125:438;66062:501;;:::o;45498:151::-;45602:39;45619:4;45625:2;45629:7;45602:39;;;;;;;;;;;;:16;:39::i;:::-;45498:151;;;:::o;66569:348::-;66644:16;66672:23;66698:17;66708:6;66698:9;:17::i;:::-;66672:43;;66722:25;66764:15;66750:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;66722:58;;66792:9;66787:103;66807:15;66803:1;:19;66787:103;;;66852:30;66872:6;66880:1;66852:19;:30::i;:::-;66838:8;66847:1;66838:11;;;;;;;;:::i;:::-;;;;;;;:44;;;;;66824:3;;;;;;;66787:103;;;;66903:8;66896:15;;;;66569:348;;;:::o;67368:80::-;19481:13;:11;:13::i;:::-;67434:8:::1;67427:4;:15;;;;67368:80:::0;:::o;67887:93::-;19481:13;:11;:13::i;:::-;67970:4:::1;67949:11;:18;67961:5;67949:18;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;67887:93:::0;:::o;59696:233::-;59771:7;59807:30;:28;:30::i;:::-;59799:5;:38;59791:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;59904:10;59915:5;59904:17;;;;;;;;:::i;:::-;;;;;;;;;;59897:24;;59696:233;;;:::o;67576:98::-;19481:13;:11;:13::i;:::-;67657:11:::1;67647:7;:21;;;;;;:::i;:::-;;67576:98:::0;:::o;65649:26::-;;;;;;;;;;;;;:::o;42624:223::-;42696:7;42716:13;42732:17;42741:7;42732:8;:17::i;:::-;42716:33;;42785:1;42768:19;;:5;:19;;;42760:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;42834:5;42827:12;;;42624:223;;;:::o;65473:21::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;42355:207::-;42427:7;42472:1;42455:19;;:5;:19;;;42447:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;42538:9;:16;42548:5;42538:16;;;;;;;;;;;;;;;;42531:23;;42355:207;;;:::o;20236:103::-;19481:13;:11;:13::i;:::-;20301:30:::1;20328:1;20301:18;:30::i;:::-;20236:103::o:0;67454:116::-;19481:13;:11;:13::i;:::-;67547:17:::1;67531:13;:33;;;;67454:116:::0;:::o;19595:87::-;19641:7;19668:6;;;;;;;;;;;19661:13;;19595:87;:::o;43083:104::-;43139:13;43172:7;43165:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;43083:104;:::o;44669:155::-;44764:52;44783:12;:10;:12::i;:::-;44797:8;44807;44764:18;:52::i;:::-;44669:155;;:::o;45720:279::-;45851:41;45870:12;:10;:12::i;:::-;45884:7;45851:18;:41::i;:::-;45843:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;45953:38;45967:4;45973:2;45977:7;45986:4;45953:13;:38::i;:::-;45720:279;;;;:::o;65499:37::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;66923:423::-;67021:13;67062:16;67070:7;67062;:16::i;:::-;67046:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;67152:28;67183:10;:8;:10::i;:::-;67152:41;;67238:1;67213:14;67207:28;:32;:133;;;;;;;;;;;;;;;;;67275:14;67291:18;:7;:16;:18::i;:::-;67311:13;67258:67;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;67207:133;67200:140;;;66923:423;;;:::o;65575:31::-;;;;:::o;65680:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;67680:122::-;19481:13;:11;:13::i;:::-;67779:17:::1;67763:13;:33;;;;;;:::i;:::-;;67680:122:::0;:::o;44895:164::-;44992:4;45016:18;:25;45035:5;45016:25;;;;;;;;;;;;;;;:35;45042:8;45016:35;;;;;;;;;;;;;;;;;;;;;;;;;45009:42;;44895:164;;;;:::o;20494:201::-;19481:13;:11;:13::i;:::-;20603:1:::1;20583:22;;:8;:22;;::::0;20575:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;20659:28;20678:8;20659:18;:28::i;:::-;20494:201:::0;:::o;41986:305::-;42088:4;42140:25;42125:40;;;:11;:40;;;;:105;;;;42197:33;42182:48;;;:11;:48;;;;42125:105;:158;;;;42247:36;42271:11;42247:23;:36::i;:::-;42125:158;42105:178;;41986:305;;;:::o;19760:132::-;19835:12;:10;:12::i;:::-;19824:23;;:7;:5;:7::i;:::-;:23;;;19816:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19760:132::o;53989:135::-;54071:16;54079:7;54071;:16::i;:::-;54063:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;53989:135;:::o;18145:98::-;18198:7;18225:10;18218:17;;18145:98;:::o;53302:174::-;53404:2;53377:15;:24;53393:7;53377:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;53460:7;53456:2;53422:46;;53431:23;53446:7;53431:14;:23::i;:::-;53422:46;;;;;;;;;;;;53302:174;;:::o;47989:264::-;48082:4;48099:13;48115:23;48130:7;48115:14;:23::i;:::-;48099:39;;48168:5;48157:16;;:7;:16;;;:52;;;;48177:32;48194:5;48201:7;48177:16;:32::i;:::-;48157:52;:87;;;;48237:7;48213:31;;:20;48225:7;48213:11;:20::i;:::-;:31;;;48157:87;48149:96;;;47989:264;;;;:::o;51954:1229::-;52079:4;52052:31;;:23;52067:7;52052:14;:23::i;:::-;:31;;;52044:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;52158:1;52144:16;;:2;:16;;;52136:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;52214:42;52235:4;52241:2;52245:7;52254:1;52214:20;:42::i;:::-;52386:4;52359:31;;:23;52374:7;52359:14;:23::i;:::-;:31;;;52351:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;52504:15;:24;52520:7;52504:24;;;;;;;;;;;;52497:31;;;;;;;;;;;52999:1;52980:9;:15;52990:4;52980:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;53032:1;53015:9;:13;53025:2;53015:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;53074:2;53055:7;:16;53063:7;53055:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;53113:7;53109:2;53094:27;;53103:4;53094:27;;;;;;;;;;;;53134:41;53154:4;53160:2;53164:7;53173:1;53134:19;:41::i;:::-;51954:1229;;;:::o;48595:110::-;48671:26;48681:2;48685:7;48671:26;;;;;;;;;;;;:9;:26::i;:::-;48595:110;;:::o;47264:117::-;47330:7;47357;:16;47365:7;47357:16;;;;;;;;;;;;;;;;;;;;;47350:23;;47264:117;;;:::o;20855:191::-;20929:16;20948:6;;;;;;;;;;;20929:25;;20974:8;20965:6;;:17;;;;;;;;;;;;;;;;;;21029:8;20998:40;;21019:8;20998:40;;;;;;;;;;;;20918:128;20855:191;:::o;53619:281::-;53740:8;53731:17;;:5;:17;;;53723:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;53827:8;53789:18;:25;53808:5;53789:25;;;;;;;;;;;;;;;:35;53815:8;53789:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;53873:8;53851:41;;53866:5;53851:41;;;53883:8;53851:41;;;;;;:::i;:::-;;;;;;;;53619:281;;;:::o;46880:270::-;46993:28;47003:4;47009:2;47013:7;46993:9;:28::i;:::-;47040:47;47063:4;47069:2;47073:7;47082:4;47040:22;:47::i;:::-;47032:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;46880:270;;;;:::o;47694:128::-;47759:4;47812:1;47783:31;;:17;47792:7;47783:8;:17::i;:::-;:31;;;;47776:38;;47694:128;;;:::o;65941:102::-;66001:13;66030:7;66023:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;65941:102;:::o;15063:716::-;15119:13;15170:14;15207:1;15187:17;15198:5;15187:10;:17::i;:::-;:21;15170:38;;15223:20;15257:6;15246:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15223:41;;15279:11;15408:6;15404:2;15400:15;15392:6;15388:28;15381:35;;15445:288;15452:4;15445:288;;;15477:5;;;;;;;;15619:8;15614:2;15607:5;15603:14;15598:30;15593:3;15585:44;15675:2;15666:11;;;;;;:::i;:::-;;;;;15709:1;15700:5;:10;15445:288;15696:21;15445:288;15754:6;15747:13;;;;;15063:716;;;:::o;33526:157::-;33611:4;33650:25;33635:40;;;:11;:40;;;;33628:47;;33526:157;;;:::o;60003:915::-;60180:61;60207:4;60213:2;60217:12;60231:9;60180:26;:61::i;:::-;60270:1;60258:9;:13;60254:222;;;60401:63;;;;;;;;;;:::i;:::-;;;;;;;;60254:222;60488:15;60506:12;60488:30;;60551:1;60535:18;;:4;:18;;;60531:187;;60570:40;60602:7;60570:31;:40::i;:::-;60531:187;;;60640:2;60632:10;;:4;:10;;;60628:90;;60659:47;60692:4;60698:7;60659:32;:47::i;:::-;60628:90;60531:187;60746:1;60732:16;;:2;:16;;;60728:183;;60765:45;60802:7;60765:36;:45::i;:::-;60728:183;;;60838:4;60832:10;;:2;:10;;;60828:83;;60859:40;60887:2;60891:7;60859:27;:40::i;:::-;60828:83;60728:183;60169:749;60003:915;;;;:::o;57111:115::-;;;;;:::o;48932:285::-;49027:18;49033:2;49037:7;49027:5;:18::i;:::-;49078:53;49109:1;49113:2;49117:7;49126:4;49078:22;:53::i;:::-;49056:153;;;;;;;;;;;;:::i;:::-;;;;;;;;;48932:285;;;:::o;54688:853::-;54842:4;54863:15;:2;:13;;;:15::i;:::-;54859:675;;;54915:2;54899:36;;;54936:12;:10;:12::i;:::-;54950:4;54956:7;54965:4;54899:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;54895:584;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;55157:1;55140:6;:13;:18;55136:328;;55183:60;;;;;;;;;;:::i;:::-;;;;;;;;55136:328;55414:6;55408:13;55399:6;55395:2;55391:15;55384:38;54895:584;55031:41;;;55021:51;;;:6;:51;;;;55014:58;;;;;54859:675;55518:4;55511:11;;54688:853;;;;;;;:::o;11896:948::-;11949:7;11969:14;11986:1;11969:18;;12036:8;12027:5;:17;12023:106;;12074:8;12065:17;;;;;;:::i;:::-;;;;;12111:2;12101:12;;;;12023:106;12156:8;12147:5;:17;12143:106;;12194:8;12185:17;;;;;;:::i;:::-;;;;;12231:2;12221:12;;;;12143:106;12276:8;12267:5;:17;12263:106;;12314:8;12305:17;;;;;;:::i;:::-;;;;;12351:2;12341:12;;;;12263:106;12396:7;12387:5;:16;12383:103;;12433:7;12424:16;;;;;;:::i;:::-;;;;;12469:1;12459:11;;;;12383:103;12513:7;12504:5;:16;12500:103;;12550:7;12541:16;;;;;;:::i;:::-;;;;;12586:1;12576:11;;;;12500:103;12630:7;12621:5;:16;12617:103;;12667:7;12658:16;;;;;;:::i;:::-;;;;;12703:1;12693:11;;;;12617:103;12747:7;12738:5;:16;12734:68;;12785:1;12775:11;;;;12734:68;12830:6;12823:13;;;11896:948;;;:::o;56273:116::-;;;;;:::o;61641:164::-;61745:10;:17;;;;61718:15;:24;61734:7;61718:24;;;;;;;;;;;:44;;;;61773:10;61789:7;61773:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;61641:164;:::o;62432:988::-;62698:22;62748:1;62723:22;62740:4;62723:16;:22::i;:::-;:26;;;;:::i;:::-;62698:51;;62760:18;62781:17;:26;62799:7;62781:26;;;;;;;;;;;;62760:47;;62928:14;62914:10;:28;62910:328;;62959:19;62981:12;:18;62994:4;62981:18;;;;;;;;;;;;;;;:34;63000:14;62981:34;;;;;;;;;;;;62959:56;;63065:11;63032:12;:18;63045:4;63032:18;;;;;;;;;;;;;;;:30;63051:10;63032:30;;;;;;;;;;;:44;;;;63182:10;63149:17;:30;63167:11;63149:30;;;;;;;;;;;:43;;;;62944:294;62910:328;63334:17;:26;63352:7;63334:26;;;;;;;;;;;63327:33;;;63378:12;:18;63391:4;63378:18;;;;;;;;;;;;;;;:34;63397:14;63378:34;;;;;;;;;;;63371:41;;;62513:907;;62432:988;;:::o;63715:1079::-;63968:22;64013:1;63993:10;:17;;;;:21;;;;:::i;:::-;63968:46;;64025:18;64046:15;:24;64062:7;64046:24;;;;;;;;;;;;64025:45;;64397:19;64419:10;64430:14;64419:26;;;;;;;;:::i;:::-;;;;;;;;;;64397:48;;64483:11;64458:10;64469;64458:22;;;;;;;;:::i;:::-;;;;;;;;;:36;;;;64594:10;64563:15;:28;64579:11;64563:28;;;;;;;;;;;:41;;;;64735:15;:24;64751:7;64735:24;;;;;;;;;;;64728:31;;;64770:10;:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;63786:1008;;;63715:1079;:::o;61219:221::-;61304:14;61321:20;61338:2;61321:16;:20::i;:::-;61304:37;;61379:7;61352:12;:16;61365:2;61352:16;;;;;;;;;;;;;;;:24;61369:6;61352:24;;;;;;;;;;;:34;;;;61426:6;61397:17;:26;61415:7;61397:26;;;;;;;;;;;:35;;;;61293:147;61219:221;;:::o;49553:942::-;49647:1;49633:16;;:2;:16;;;49625:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;49706:16;49714:7;49706;:16::i;:::-;49705:17;49697:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;49768:48;49797:1;49801:2;49805:7;49814:1;49768:20;:48::i;:::-;49915:16;49923:7;49915;:16::i;:::-;49914:17;49906:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;50330:1;50313:9;:13;50323:2;50313:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;50374:2;50355:7;:16;50363:7;50355:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;50419:7;50415:2;50394:33;;50411:1;50394:33;;;;;;;;;;;;50440:47;50468:1;50472:2;50476:7;50485:1;50440:19;:47::i;:::-;49553:942;;:::o;22528:326::-;22588:4;22845:1;22823:7;:19;;;:23;22816:30;;22528: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:139::-;2477:6;2472:3;2467;2461:23;2518:1;2509:6;2504:3;2500:16;2493:27;2388:139;;;:::o;2533:102::-;2574:6;2625:2;2621:7;2616:2;2609:5;2605:14;2601:28;2591:38;;2533:102;;;:::o;2641:377::-;2729:3;2757:39;2790:5;2757:39;:::i;:::-;2812:71;2876:6;2871:3;2812:71;:::i;:::-;2805:78;;2892:65;2950:6;2945:3;2938:4;2931:5;2927:16;2892:65;:::i;:::-;2982:29;3004:6;2982:29;:::i;:::-;2977:3;2973:39;2966:46;;2733:285;2641:377;;;;:::o;3024:313::-;3137:4;3175:2;3164:9;3160:18;3152:26;;3224:9;3218:4;3214:20;3210:1;3199:9;3195:17;3188:47;3252:78;3325:4;3316:6;3252:78;:::i;:::-;3244:86;;3024:313;;;;:::o;3343:77::-;3380:7;3409:5;3398:16;;3343:77;;;:::o;3426:122::-;3499:24;3517:5;3499:24;:::i;:::-;3492:5;3489:35;3479:63;;3538:1;3535;3528:12;3479:63;3426:122;:::o;3554:139::-;3600:5;3638:6;3625:20;3616:29;;3654:33;3681:5;3654:33;:::i;:::-;3554:139;;;;:::o;3699:329::-;3758:6;3807:2;3795:9;3786:7;3782:23;3778:32;3775:119;;;3813:79;;:::i;:::-;3775:119;3933:1;3958:53;4003:7;3994:6;3983:9;3979:22;3958:53;:::i;:::-;3948:63;;3904:117;3699:329;;;;:::o;4034:126::-;4071:7;4111:42;4104:5;4100:54;4089:65;;4034:126;;;:::o;4166:96::-;4203:7;4232:24;4250:5;4232:24;:::i;:::-;4221:35;;4166:96;;;:::o;4268:118::-;4355:24;4373:5;4355:24;:::i;:::-;4350:3;4343:37;4268:118;;:::o;4392:222::-;4485:4;4523:2;4512:9;4508:18;4500:26;;4536:71;4604:1;4593:9;4589:17;4580:6;4536:71;:::i;:::-;4392:222;;;;:::o;4620:122::-;4693:24;4711:5;4693:24;:::i;:::-;4686:5;4683:35;4673:63;;4732:1;4729;4722:12;4673:63;4620:122;:::o;4748:139::-;4794:5;4832:6;4819:20;4810:29;;4848:33;4875:5;4848:33;:::i;:::-;4748:139;;;;:::o;4893:474::-;4961:6;4969;5018:2;5006:9;4997:7;4993:23;4989:32;4986:119;;;5024:79;;:::i;:::-;4986:119;5144:1;5169:53;5214:7;5205:6;5194:9;5190:22;5169:53;:::i;:::-;5159:63;;5115:117;5271:2;5297:53;5342:7;5333:6;5322:9;5318:22;5297:53;:::i;:::-;5287:63;;5242:118;4893:474;;;;;:::o;5373:118::-;5460:24;5478:5;5460:24;:::i;:::-;5455:3;5448:37;5373:118;;:::o;5497:222::-;5590:4;5628:2;5617:9;5613:18;5605:26;;5641:71;5709:1;5698:9;5694:17;5685:6;5641:71;:::i;:::-;5497:222;;;;:::o;5725:619::-;5802:6;5810;5818;5867:2;5855:9;5846:7;5842:23;5838:32;5835:119;;;5873:79;;:::i;:::-;5835:119;5993:1;6018:53;6063:7;6054:6;6043:9;6039:22;6018:53;:::i;:::-;6008:63;;5964:117;6120:2;6146:53;6191:7;6182:6;6171:9;6167:22;6146:53;:::i;:::-;6136:63;;6091:118;6248:2;6274:53;6319:7;6310:6;6299:9;6295:22;6274:53;:::i;:::-;6264:63;;6219:118;5725:619;;;;;:::o;6350:329::-;6409:6;6458:2;6446:9;6437:7;6433:23;6429:32;6426:119;;;6464:79;;:::i;:::-;6426:119;6584:1;6609:53;6654:7;6645:6;6634:9;6630:22;6609:53;:::i;:::-;6599:63;;6555:117;6350:329;;;;:::o;6685:114::-;6752:6;6786:5;6780:12;6770:22;;6685:114;;;:::o;6805:184::-;6904:11;6938:6;6933:3;6926:19;6978:4;6973:3;6969:14;6954:29;;6805:184;;;;:::o;6995:132::-;7062:4;7085:3;7077:11;;7115:4;7110:3;7106:14;7098:22;;6995:132;;;:::o;7133:108::-;7210:24;7228:5;7210:24;:::i;:::-;7205:3;7198:37;7133:108;;:::o;7247:179::-;7316:10;7337:46;7379:3;7371:6;7337:46;:::i;:::-;7415:4;7410:3;7406:14;7392:28;;7247:179;;;;:::o;7432:113::-;7502:4;7534;7529:3;7525:14;7517:22;;7432:113;;;:::o;7581:732::-;7700:3;7729:54;7777:5;7729:54;:::i;:::-;7799:86;7878:6;7873:3;7799:86;:::i;:::-;7792:93;;7909:56;7959:5;7909:56;:::i;:::-;7988:7;8019:1;8004:284;8029:6;8026:1;8023:13;8004:284;;;8105:6;8099:13;8132:63;8191:3;8176:13;8132:63;:::i;:::-;8125:70;;8218:60;8271:6;8218:60;:::i;:::-;8208:70;;8064:224;8051:1;8048;8044:9;8039:14;;8004:284;;;8008:14;8304:3;8297:10;;7705:608;;;7581:732;;;;:::o;8319:373::-;8462:4;8500:2;8489:9;8485:18;8477:26;;8549:9;8543:4;8539:20;8535:1;8524:9;8520:17;8513:47;8577:108;8680:4;8671:6;8577:108;:::i;:::-;8569:116;;8319:373;;;;:::o;8698:117::-;8807:1;8804;8797:12;8821:117;8930:1;8927;8920:12;8944:180;8992:77;8989:1;8982:88;9089:4;9086:1;9079:15;9113:4;9110:1;9103:15;9130:281;9213:27;9235:4;9213:27;:::i;:::-;9205:6;9201:40;9343:6;9331:10;9328:22;9307:18;9295:10;9292:34;9289:62;9286:88;;;9354:18;;:::i;:::-;9286:88;9394:10;9390:2;9383:22;9173:238;9130:281;;:::o;9417:129::-;9451:6;9478:20;;:::i;:::-;9468:30;;9507:33;9535:4;9527:6;9507:33;:::i;:::-;9417:129;;;:::o;9552:308::-;9614:4;9704:18;9696:6;9693:30;9690:56;;;9726:18;;:::i;:::-;9690:56;9764:29;9786:6;9764:29;:::i;:::-;9756:37;;9848:4;9842;9838:15;9830:23;;9552:308;;;:::o;9866:148::-;9964:6;9959:3;9954;9941:30;10005:1;9996:6;9991:3;9987:16;9980:27;9866:148;;;:::o;10020:425::-;10098:5;10123:66;10139:49;10181:6;10139:49;:::i;:::-;10123:66;:::i;:::-;10114:75;;10212:6;10205:5;10198:21;10250:4;10243:5;10239:16;10288:3;10279:6;10274:3;10270:16;10267:25;10264:112;;;10295:79;;:::i;:::-;10264:112;10385:54;10432:6;10427:3;10422;10385:54;:::i;:::-;10104:341;10020:425;;;;;:::o;10465:340::-;10521:5;10570:3;10563:4;10555:6;10551:17;10547:27;10537:122;;10578:79;;:::i;:::-;10537:122;10695:6;10682:20;10720:79;10795:3;10787:6;10780:4;10772:6;10768:17;10720:79;:::i;:::-;10711:88;;10527:278;10465:340;;;;:::o;10811:509::-;10880:6;10929:2;10917:9;10908:7;10904:23;10900:32;10897:119;;;10935:79;;:::i;:::-;10897:119;11083:1;11072:9;11068:17;11055:31;11113:18;11105:6;11102:30;11099:117;;;11135:79;;:::i;:::-;11099:117;11240:63;11295:7;11286:6;11275:9;11271:22;11240:63;:::i;:::-;11230:73;;11026:287;10811:509;;;;:::o;11326:468::-;11391:6;11399;11448:2;11436:9;11427:7;11423:23;11419:32;11416:119;;;11454:79;;:::i;:::-;11416:119;11574:1;11599:53;11644:7;11635:6;11624:9;11620:22;11599:53;:::i;:::-;11589:63;;11545:117;11701:2;11727:50;11769:7;11760:6;11749:9;11745:22;11727:50;:::i;:::-;11717:60;;11672:115;11326:468;;;;;:::o;11800:307::-;11861:4;11951:18;11943:6;11940:30;11937:56;;;11973:18;;:::i;:::-;11937:56;12011:29;12033:6;12011:29;:::i;:::-;12003:37;;12095:4;12089;12085:15;12077:23;;11800:307;;;:::o;12113:423::-;12190:5;12215:65;12231:48;12272:6;12231:48;:::i;:::-;12215:65;:::i;:::-;12206:74;;12303:6;12296:5;12289:21;12341:4;12334:5;12330:16;12379:3;12370:6;12365:3;12361:16;12358:25;12355:112;;;12386:79;;:::i;:::-;12355:112;12476:54;12523:6;12518:3;12513;12476:54;:::i;:::-;12196:340;12113:423;;;;;:::o;12555:338::-;12610:5;12659:3;12652:4;12644:6;12640:17;12636:27;12626:122;;12667:79;;:::i;:::-;12626:122;12784:6;12771:20;12809:78;12883:3;12875:6;12868:4;12860:6;12856:17;12809:78;:::i;:::-;12800:87;;12616:277;12555:338;;;;:::o;12899:943::-;12994:6;13002;13010;13018;13067:3;13055:9;13046:7;13042:23;13038:33;13035:120;;;13074:79;;:::i;:::-;13035:120;13194:1;13219:53;13264:7;13255:6;13244:9;13240:22;13219:53;:::i;:::-;13209:63;;13165:117;13321:2;13347:53;13392:7;13383:6;13372:9;13368:22;13347:53;:::i;:::-;13337:63;;13292:118;13449:2;13475:53;13520:7;13511:6;13500:9;13496:22;13475:53;:::i;:::-;13465:63;;13420:118;13605:2;13594:9;13590:18;13577:32;13636:18;13628:6;13625:30;13622:117;;;13658:79;;:::i;:::-;13622:117;13763:62;13817:7;13808:6;13797:9;13793:22;13763:62;:::i;:::-;13753:72;;13548:287;12899:943;;;;;;;:::o;13848:474::-;13916:6;13924;13973:2;13961:9;13952:7;13948:23;13944:32;13941:119;;;13979:79;;:::i;:::-;13941:119;14099:1;14124:53;14169:7;14160:6;14149:9;14145:22;14124:53;:::i;:::-;14114:63;;14070:117;14226:2;14252:53;14297:7;14288:6;14277:9;14273:22;14252:53;:::i;:::-;14242:63;;14197:118;13848:474;;;;;:::o;14328:180::-;14376:77;14373:1;14366:88;14473:4;14470:1;14463:15;14497:4;14494:1;14487:15;14514:320;14558:6;14595:1;14589:4;14585:12;14575:22;;14642:1;14636:4;14632:12;14663:18;14653:81;;14719:4;14711:6;14707:17;14697:27;;14653:81;14781:2;14773:6;14770:14;14750:18;14747:38;14744:84;;14800:18;;:::i;:::-;14744:84;14565:269;14514:320;;;:::o;14840:220::-;14980:34;14976:1;14968:6;14964:14;14957:58;15049:3;15044:2;15036:6;15032:15;15025:28;14840:220;:::o;15066:366::-;15208:3;15229:67;15293:2;15288:3;15229:67;:::i;:::-;15222:74;;15305:93;15394:3;15305:93;:::i;:::-;15423:2;15418:3;15414:12;15407:19;;15066:366;;;:::o;15438:419::-;15604:4;15642:2;15631:9;15627:18;15619:26;;15691:9;15685:4;15681:20;15677:1;15666:9;15662:17;15655:47;15719:131;15845:4;15719:131;:::i;:::-;15711:139;;15438:419;;;:::o;15863:248::-;16003:34;15999:1;15991:6;15987:14;15980:58;16072:31;16067:2;16059:6;16055:15;16048:56;15863:248;:::o;16117:366::-;16259:3;16280:67;16344:2;16339:3;16280:67;:::i;:::-;16273:74;;16356:93;16445:3;16356:93;:::i;:::-;16474:2;16469:3;16465:12;16458:19;;16117:366;;;:::o;16489:419::-;16655:4;16693:2;16682:9;16678:18;16670:26;;16742:9;16736:4;16732:20;16728:1;16717:9;16713:17;16706:47;16770:131;16896:4;16770:131;:::i;:::-;16762:139;;16489:419;;;:::o;16914:232::-;17054:34;17050:1;17042:6;17038:14;17031:58;17123:15;17118:2;17110:6;17106:15;17099:40;16914:232;:::o;17152:366::-;17294:3;17315:67;17379:2;17374:3;17315:67;:::i;:::-;17308:74;;17391:93;17480:3;17391:93;:::i;:::-;17509:2;17504:3;17500:12;17493:19;;17152:366;;;:::o;17524:419::-;17690:4;17728:2;17717:9;17713:18;17705:26;;17777:9;17771:4;17767:20;17763:1;17752:9;17748:17;17741:47;17805:131;17931:4;17805:131;:::i;:::-;17797:139;;17524:419;;;:::o;17949:230::-;18089:34;18085:1;18077:6;18073:14;18066:58;18158:13;18153:2;18145:6;18141:15;18134:38;17949:230;:::o;18185:366::-;18327:3;18348:67;18412:2;18407:3;18348:67;:::i;:::-;18341:74;;18424:93;18513:3;18424:93;:::i;:::-;18542:2;18537:3;18533:12;18526:19;;18185:366;;;:::o;18557:419::-;18723:4;18761:2;18750:9;18746:18;18738:26;;18810:9;18804:4;18800:20;18796:1;18785:9;18781:17;18774:47;18838:131;18964:4;18838:131;:::i;:::-;18830:139;;18557:419;;;:::o;18982:180::-;19030:77;19027:1;19020:88;19127:4;19124:1;19117:15;19151:4;19148:1;19141:15;19168:410;19208:7;19231:20;19249:1;19231:20;:::i;:::-;19226:25;;19265:20;19283:1;19265:20;:::i;:::-;19260:25;;19320:1;19317;19313:9;19342:30;19360:11;19342:30;:::i;:::-;19331:41;;19521:1;19512:7;19508:15;19505:1;19502:22;19482:1;19475:9;19455:83;19432:139;;19551:18;;:::i;:::-;19432:139;19216:362;19168:410;;;;:::o;19584:180::-;19632:77;19629:1;19622:88;19729:4;19726:1;19719:15;19753:4;19750:1;19743:15;19770:185;19810:1;19827:20;19845:1;19827:20;:::i;:::-;19822:25;;19861:20;19879:1;19861:20;:::i;:::-;19856:25;;19900:1;19890:35;;19905:18;;:::i;:::-;19890:35;19947:1;19944;19940:9;19935:14;;19770:185;;;;:::o;19961:147::-;20062:11;20099:3;20084:18;;19961:147;;;;:::o;20114:114::-;;:::o;20234:398::-;20393:3;20414:83;20495:1;20490:3;20414:83;:::i;:::-;20407:90;;20506:93;20595:3;20506:93;:::i;:::-;20624:1;20619:3;20615:11;20608:18;;20234:398;;;:::o;20638:379::-;20822:3;20844:147;20987:3;20844:147;:::i;:::-;20837:154;;21008:3;21001:10;;20638:379;;;:::o;21023:191::-;21063:3;21082:20;21100:1;21082:20;:::i;:::-;21077:25;;21116:20;21134:1;21116:20;:::i;:::-;21111:25;;21159:1;21156;21152:9;21145:16;;21180:3;21177:1;21174:10;21171:36;;;21187:18;;:::i;:::-;21171:36;21023:191;;;;:::o;21220:233::-;21259:3;21282:24;21300:5;21282:24;:::i;:::-;21273:33;;21328:66;21321:5;21318:77;21315:103;;21398:18;;:::i;:::-;21315:103;21445:1;21438:5;21434:13;21427:20;;21220:233;;;:::o;21459:180::-;21507:77;21504:1;21497:88;21604:4;21601:1;21594:15;21628:4;21625:1;21618:15;21645:231;21785:34;21781:1;21773:6;21769:14;21762:58;21854:14;21849:2;21841:6;21837:15;21830:39;21645:231;:::o;21882:366::-;22024:3;22045:67;22109:2;22104:3;22045:67;:::i;:::-;22038:74;;22121:93;22210:3;22121:93;:::i;:::-;22239:2;22234:3;22230:12;22223:19;;21882:366;;;:::o;22254:419::-;22420:4;22458:2;22447:9;22443:18;22435:26;;22507:9;22501:4;22497:20;22493:1;22482:9;22478:17;22471:47;22535:131;22661:4;22535:131;:::i;:::-;22527:139;;22254:419;;;:::o;22679:141::-;22728:4;22751:3;22743:11;;22774:3;22771:1;22764:14;22808:4;22805:1;22795:18;22787:26;;22679:141;;;:::o;22826:93::-;22863:6;22910:2;22905;22898:5;22894:14;22890:23;22880:33;;22826:93;;;:::o;22925:107::-;22969:8;23019:5;23013:4;23009:16;22988:37;;22925:107;;;;:::o;23038:393::-;23107:6;23157:1;23145:10;23141:18;23180:97;23210:66;23199:9;23180:97;:::i;:::-;23298:39;23328:8;23317:9;23298:39;:::i;:::-;23286:51;;23370:4;23366:9;23359:5;23355:21;23346:30;;23419:4;23409:8;23405:19;23398:5;23395:30;23385:40;;23114:317;;23038:393;;;;;:::o;23437:60::-;23465:3;23486:5;23479:12;;23437:60;;;:::o;23503:142::-;23553:9;23586:53;23604:34;23613:24;23631:5;23613:24;:::i;:::-;23604:34;:::i;:::-;23586:53;:::i;:::-;23573:66;;23503:142;;;:::o;23651:75::-;23694:3;23715:5;23708:12;;23651:75;;;:::o;23732:269::-;23842:39;23873:7;23842:39;:::i;:::-;23903:91;23952:41;23976:16;23952:41;:::i;:::-;23944:6;23937:4;23931:11;23903:91;:::i;:::-;23897:4;23890:105;23808:193;23732:269;;;:::o;24007:73::-;24052:3;24007:73;:::o;24086:189::-;24163:32;;:::i;:::-;24204:65;24262:6;24254;24248:4;24204:65;:::i;:::-;24139:136;24086:189;;:::o;24281:186::-;24341:120;24358:3;24351:5;24348:14;24341:120;;;24412:39;24449:1;24442:5;24412:39;:::i;:::-;24385:1;24378:5;24374:13;24365:22;;24341:120;;;24281:186;;:::o;24473:543::-;24574:2;24569:3;24566:11;24563:446;;;24608:38;24640:5;24608:38;:::i;:::-;24692:29;24710:10;24692:29;:::i;:::-;24682:8;24678:44;24875:2;24863:10;24860:18;24857:49;;;24896:8;24881:23;;24857:49;24919:80;24975:22;24993:3;24975:22;:::i;:::-;24965:8;24961:37;24948:11;24919:80;:::i;:::-;24578:431;;24563:446;24473:543;;;:::o;25022:117::-;25076:8;25126:5;25120:4;25116:16;25095:37;;25022:117;;;;:::o;25145:169::-;25189:6;25222:51;25270:1;25266:6;25258:5;25255:1;25251:13;25222:51;:::i;:::-;25218:56;25303:4;25297;25293:15;25283:25;;25196:118;25145:169;;;;:::o;25319:295::-;25395:4;25541:29;25566:3;25560:4;25541:29;:::i;:::-;25533:37;;25603:3;25600:1;25596:11;25590:4;25587:21;25579:29;;25319:295;;;;:::o;25619:1395::-;25736:37;25769:3;25736:37;:::i;:::-;25838:18;25830:6;25827:30;25824:56;;;25860:18;;:::i;:::-;25824:56;25904:38;25936:4;25930:11;25904:38;:::i;:::-;25989:67;26049:6;26041;26035:4;25989:67;:::i;:::-;26083:1;26107:4;26094:17;;26139:2;26131:6;26128:14;26156:1;26151:618;;;;26813:1;26830:6;26827:77;;;26879:9;26874:3;26870:19;26864:26;26855:35;;26827:77;26930:67;26990:6;26983:5;26930:67;:::i;:::-;26924:4;26917:81;26786:222;26121:887;;26151:618;26203:4;26199:9;26191:6;26187:22;26237:37;26269:4;26237:37;:::i;:::-;26296:1;26310:208;26324:7;26321:1;26318:14;26310:208;;;26403:9;26398:3;26394:19;26388:26;26380:6;26373:42;26454:1;26446:6;26442:14;26432:24;;26501:2;26490:9;26486:18;26473:31;;26347:4;26344:1;26340:12;26335:17;;26310:208;;;26546:6;26537:7;26534:19;26531:179;;;26604:9;26599:3;26595:19;26589:26;26647:48;26689:4;26681:6;26677:17;26666:9;26647:48;:::i;:::-;26639:6;26632:64;26554:156;26531:179;26756:1;26752;26744:6;26740:14;26736:22;26730:4;26723:36;26158:611;;;26121:887;;25711:1303;;;25619:1395;;:::o;27020:174::-;27160:26;27156:1;27148:6;27144:14;27137:50;27020:174;:::o;27200:366::-;27342:3;27363:67;27427:2;27422:3;27363:67;:::i;:::-;27356:74;;27439:93;27528:3;27439:93;:::i;:::-;27557:2;27552:3;27548:12;27541:19;;27200:366;;;:::o;27572:419::-;27738:4;27776:2;27765:9;27761:18;27753:26;;27825:9;27819:4;27815:20;27811:1;27800:9;27796:17;27789:47;27853:131;27979:4;27853:131;:::i;:::-;27845:139;;27572:419;;;:::o;27997:228::-;28137:34;28133:1;28125:6;28121:14;28114:58;28206:11;28201:2;28193:6;28189:15;28182:36;27997:228;:::o;28231:366::-;28373:3;28394:67;28458:2;28453:3;28394:67;:::i;:::-;28387:74;;28470:93;28559:3;28470:93;:::i;:::-;28588:2;28583:3;28579:12;28572:19;;28231:366;;;:::o;28603:419::-;28769:4;28807:2;28796:9;28792:18;28784:26;;28856:9;28850:4;28846:20;28842:1;28831:9;28827:17;28820:47;28884:131;29010:4;28884:131;:::i;:::-;28876:139;;28603:419;;;:::o;29028:234::-;29168:34;29164:1;29156:6;29152:14;29145:58;29237:17;29232:2;29224:6;29220:15;29213:42;29028:234;:::o;29268:366::-;29410:3;29431:67;29495:2;29490:3;29431:67;:::i;:::-;29424:74;;29507:93;29596:3;29507:93;:::i;:::-;29625:2;29620:3;29616:12;29609:19;;29268:366;;;:::o;29640:419::-;29806:4;29844:2;29833:9;29829:18;29821:26;;29893:9;29887:4;29883:20;29879:1;29868:9;29864:17;29857:47;29921:131;30047:4;29921:131;:::i;:::-;29913:139;;29640:419;;;:::o;30065:148::-;30167:11;30204:3;30189:18;;30065:148;;;;:::o;30219:390::-;30325:3;30353:39;30386:5;30353:39;:::i;:::-;30408:89;30490:6;30485:3;30408:89;:::i;:::-;30401:96;;30506:65;30564:6;30559:3;30552:4;30545:5;30541:16;30506:65;:::i;:::-;30596:6;30591:3;30587:16;30580:23;;30329:280;30219:390;;;;:::o;30639:874::-;30742:3;30779:5;30773:12;30808:36;30834:9;30808:36;:::i;:::-;30860:89;30942:6;30937:3;30860:89;:::i;:::-;30853:96;;30980:1;30969:9;30965:17;30996:1;30991:166;;;;31171:1;31166:341;;;;30958:549;;30991:166;31075:4;31071:9;31060;31056:25;31051:3;31044:38;31137:6;31130:14;31123:22;31115:6;31111:35;31106:3;31102:45;31095:52;;30991:166;;31166:341;31233:38;31265:5;31233:38;:::i;:::-;31293:1;31307:154;31321:6;31318:1;31315:13;31307:154;;;31395:7;31389:14;31385:1;31380:3;31376:11;31369:35;31445:1;31436:7;31432:15;31421:26;;31343:4;31340:1;31336:12;31331:17;;31307:154;;;31490:6;31485:3;31481:16;31474:23;;31173:334;;30958:549;;30746:767;;30639:874;;;;:::o;31519:589::-;31744:3;31766:95;31857:3;31848:6;31766:95;:::i;:::-;31759:102;;31878:95;31969:3;31960:6;31878:95;:::i;:::-;31871:102;;31990:92;32078:3;32069:6;31990:92;:::i;:::-;31983:99;;32099:3;32092:10;;31519:589;;;;;;:::o;32114:225::-;32254:34;32250:1;32242:6;32238:14;32231:58;32323:8;32318:2;32310:6;32306:15;32299:33;32114:225;:::o;32345:366::-;32487:3;32508:67;32572:2;32567:3;32508:67;:::i;:::-;32501:74;;32584:93;32673:3;32584:93;:::i;:::-;32702:2;32697:3;32693:12;32686:19;;32345:366;;;:::o;32717:419::-;32883:4;32921:2;32910:9;32906:18;32898:26;;32970:9;32964:4;32960:20;32956:1;32945:9;32941:17;32934:47;32998:131;33124:4;32998:131;:::i;:::-;32990:139;;32717:419;;;:::o;33142:182::-;33282:34;33278:1;33270:6;33266:14;33259:58;33142:182;:::o;33330:366::-;33472:3;33493:67;33557:2;33552:3;33493:67;:::i;:::-;33486:74;;33569:93;33658:3;33569:93;:::i;:::-;33687:2;33682:3;33678:12;33671:19;;33330:366;;;:::o;33702:419::-;33868:4;33906:2;33895:9;33891:18;33883:26;;33955:9;33949:4;33945:20;33941:1;33930:9;33926:17;33919:47;33983:131;34109:4;33983:131;:::i;:::-;33975:139;;33702:419;;;:::o;34127:224::-;34267:34;34263:1;34255:6;34251:14;34244:58;34336:7;34331:2;34323:6;34319:15;34312:32;34127:224;:::o;34357:366::-;34499:3;34520:67;34584:2;34579:3;34520:67;:::i;:::-;34513:74;;34596:93;34685:3;34596:93;:::i;:::-;34714:2;34709:3;34705:12;34698:19;;34357:366;;;:::o;34729:419::-;34895:4;34933:2;34922:9;34918:18;34910:26;;34982:9;34976:4;34972:20;34968:1;34957:9;34953:17;34946:47;35010:131;35136:4;35010:131;:::i;:::-;35002:139;;34729:419;;;:::o;35154:223::-;35294:34;35290:1;35282:6;35278:14;35271:58;35363:6;35358:2;35350:6;35346:15;35339:31;35154:223;:::o;35383:366::-;35525:3;35546:67;35610:2;35605:3;35546:67;:::i;:::-;35539:74;;35622:93;35711:3;35622:93;:::i;:::-;35740:2;35735:3;35731:12;35724:19;;35383:366;;;:::o;35755:419::-;35921:4;35959:2;35948:9;35944:18;35936:26;;36008:9;36002:4;35998:20;35994:1;35983:9;35979:17;35972:47;36036:131;36162:4;36036:131;:::i;:::-;36028:139;;35755:419;;;:::o;36180:175::-;36320:27;36316:1;36308:6;36304:14;36297:51;36180:175;:::o;36361:366::-;36503:3;36524:67;36588:2;36583:3;36524:67;:::i;:::-;36517:74;;36600:93;36689:3;36600:93;:::i;:::-;36718:2;36713:3;36709:12;36702:19;;36361:366;;;:::o;36733:419::-;36899:4;36937:2;36926:9;36922:18;36914:26;;36986:9;36980:4;36976:20;36972:1;36961:9;36957:17;36950:47;37014:131;37140:4;37014:131;:::i;:::-;37006:139;;36733:419;;;:::o;37158:237::-;37298:34;37294:1;37286:6;37282:14;37275:58;37367:20;37362:2;37354:6;37350:15;37343:45;37158:237;:::o;37401:366::-;37543:3;37564:67;37628:2;37623:3;37564:67;:::i;:::-;37557:74;;37640:93;37729:3;37640:93;:::i;:::-;37758:2;37753:3;37749:12;37742:19;;37401:366;;;:::o;37773:419::-;37939:4;37977:2;37966:9;37962:18;37954:26;;38026:9;38020:4;38016:20;38012:1;38001:9;37997:17;37990:47;38054:131;38180:4;38054:131;:::i;:::-;38046:139;;37773:419;;;:::o;38198:240::-;38338:34;38334:1;38326:6;38322:14;38315:58;38407:23;38402:2;38394:6;38390:15;38383:48;38198:240;:::o;38444:366::-;38586:3;38607:67;38671:2;38666:3;38607:67;:::i;:::-;38600:74;;38683:93;38772:3;38683:93;:::i;:::-;38801:2;38796:3;38792:12;38785:19;;38444:366;;;:::o;38816:419::-;38982:4;39020:2;39009:9;39005:18;38997:26;;39069:9;39063:4;39059:20;39055:1;39044:9;39040:17;39033:47;39097:131;39223:4;39097:131;:::i;:::-;39089:139;;38816:419;;;:::o;39241:98::-;39292:6;39326:5;39320:12;39310:22;;39241:98;;;:::o;39345:168::-;39428:11;39462:6;39457:3;39450:19;39502:4;39497:3;39493:14;39478:29;;39345:168;;;;:::o;39519:373::-;39605:3;39633:38;39665:5;39633:38;:::i;:::-;39687:70;39750:6;39745:3;39687:70;:::i;:::-;39680:77;;39766:65;39824:6;39819:3;39812:4;39805:5;39801:16;39766:65;:::i;:::-;39856:29;39878:6;39856:29;:::i;:::-;39851:3;39847:39;39840:46;;39609:283;39519:373;;;;:::o;39898:640::-;40093:4;40131:3;40120:9;40116:19;40108:27;;40145:71;40213:1;40202:9;40198:17;40189:6;40145:71;:::i;:::-;40226:72;40294:2;40283:9;40279:18;40270:6;40226:72;:::i;:::-;40308;40376:2;40365:9;40361:18;40352:6;40308:72;:::i;:::-;40427:9;40421:4;40417:20;40412:2;40401:9;40397:18;40390:48;40455:76;40526:4;40517:6;40455:76;:::i;:::-;40447:84;;39898:640;;;;;;;:::o;40544:141::-;40600:5;40631:6;40625:13;40616:22;;40647:32;40673:5;40647:32;:::i;:::-;40544:141;;;;:::o;40691:349::-;40760:6;40809:2;40797:9;40788:7;40784:23;40780:32;40777:119;;;40815:79;;:::i;:::-;40777:119;40935:1;40960:63;41015:7;41006:6;40995:9;40991:22;40960:63;:::i;:::-;40950:73;;40906:127;40691:349;;;;:::o;41046:194::-;41086:4;41106:20;41124:1;41106:20;:::i;:::-;41101:25;;41140:20;41158:1;41140:20;:::i;:::-;41135:25;;41184:1;41181;41177:9;41169:17;;41208:1;41202:4;41199:11;41196:37;;;41213:18;;:::i;:::-;41196:37;41046:194;;;;:::o;41246:180::-;41294:77;41291:1;41284:88;41391:4;41388:1;41381:15;41415:4;41412:1;41405:15;41432:182;41572:34;41568:1;41560:6;41556:14;41549:58;41432:182;:::o;41620:366::-;41762:3;41783:67;41847:2;41842:3;41783:67;:::i;:::-;41776:74;;41859:93;41948:3;41859:93;:::i;:::-;41977:2;41972:3;41968:12;41961:19;;41620:366;;;:::o;41992:419::-;42158:4;42196:2;42185:9;42181:18;42173:26;;42245:9;42239:4;42235:20;42231:1;42220:9;42216:17;42209:47;42273:131;42399:4;42273:131;:::i;:::-;42265:139;;41992:419;;;:::o;42417:178::-;42557:30;42553:1;42545:6;42541:14;42534:54;42417:178;:::o;42601:366::-;42743:3;42764:67;42828:2;42823:3;42764:67;:::i;:::-;42757:74;;42840:93;42929:3;42840:93;:::i;:::-;42958:2;42953:3;42949:12;42942:19;;42601:366;;;:::o;42973:419::-;43139:4;43177:2;43166:9;43162:18;43154:26;;43226:9;43220:4;43216:20;43212:1;43201:9;43197:17;43190:47;43254:131;43380:4;43254:131;:::i;:::-;43246:139;;42973:419;;;:::o

    Swarm Source

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