Overview ERC721
Total Supply:
41 VIKING

Holders:
6
Profile Summary
Blockchain:
C-Chain (43114)

Contract Source Code Verified (Partial Match)
Contract Name:
Vikings

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No

Created At:
Tue, 12 Apr 2022 10:52:24 GMT
Vikings.sol
Vikings.sol
Address.sol
Context.sol
ERC165.sol
ERC721.sol
ERC721Enumerable.sol
IERC165.sol
IERC20.sol
IERC721.sol
IERC721Enumerable.sol
IERC721Metadata.sol
IERC721Receiver.sol
Ownable.sol
ReentrancyGuard.sol
SafeERC20.sol
Strings.sol
Vikings.sol


Contract ABI
[
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "baseURI_",
        "type": "string"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "UnexpectedError",
    "type": "error"
  },
  {
    "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"
  },
  {
    "stateMutability": "payable",
    "type": "fallback"
  },
  {
    "inputs": [],
    "name": "MAX_SUPPLY",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "approve",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      }
    ],
    "name": "balanceOf",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "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": "isSaleActive",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "numberOfTokens",
        "type": "uint256"
      }
    ],
    "name": "mintToken",
    "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": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "contract IERC20",
        "name": "tokenAddr_",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "rescueERC20",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "contract IERC721",
        "name": "tokenAddr_",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "rescueERC721",
    "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": "baseURI_",
        "type": "string"
      }
    ],
    "name": "setBaseURI",
    "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": "switchSaleState",
    "outputs": [],
    "stateMutability": "nonpayable",
    "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": [],
    "name": "tokenPrice",
    "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": [],
    "name": "withdraw",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "stateMutability": "payable",
    "type": "receive"
  }
]


Contract Creation Code
60a06040523480156200001157600080fd5b5060405162004e4c38038062004e4c83398181016040528101906200003791906200033a565b6040518060400160405280600b81526020017f56696b696e6773204e46540000000000000000000000000000000000000000008152506040518060400160405280600681526020017f56494b494e4700000000000000000000000000000000000000000000000000008152508160009080519060200190620000bb92919062000218565b508060019080519060200190620000d492919062000218565b505050620000f7620000eb6200014a60201b60201c565b6200015260201b60201c565b6001600b8190555080600d90805190602001906200011792919062000218565b506000600c60006101000a81548160ff02191690831515021790555067120a871cc00200006080818152505050620004ef565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620002269062000414565b90600052602060002090601f0160209004810192826200024a576000855562000296565b82601f106200026557805160ff191683800117855562000296565b8280016001018555821562000296579182015b828111156200029557825182559160200191906001019062000278565b5b509050620002a59190620002a9565b5090565b5b80821115620002c4576000816000905550600101620002aa565b5090565b6000620002df620002d984620003a8565b6200037f565b905082815260208101848484011115620002f857600080fd5b62000305848285620003de565b509392505050565b600082601f8301126200031f57600080fd5b815162000331848260208601620002c8565b91505092915050565b6000602082840312156200034d57600080fd5b600082015167ffffffffffffffff8111156200036857600080fd5b62000376848285016200030d565b91505092915050565b60006200038b6200039e565b90506200039982826200044a565b919050565b6000604051905090565b600067ffffffffffffffff821115620003c657620003c5620004af565b5b620003d182620004de565b9050602081019050919050565b60005b83811015620003fe578082015181840152602081019050620003e1565b838111156200040e576000848401525b50505050565b600060028204905060018216806200042d57607f821691505b6020821081141562000444576200044362000480565b5b50919050565b6200045582620004de565b810181811067ffffffffffffffff82111715620004775762000476620004af565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60805161493a6200051260003960008181610ded01526111a3015261493a6000f3fe6080604052600436106101bb5760003560e01c806370a08231116100ec578063b88d4fde1161008a578063d798183411610064578063d798183414610605578063e985e9c51461062e578063efc4f1dc1461066b578063f2fde38b14610682576101c2565b8063b88d4fde14610583578063c634d032146105ac578063c87b56dd146105c8576101c2565b80638cd4426d116100c65780638cd4426d146104db5780638da5cb5b1461050457806395d89b411461052f578063a22cb4651461055a576101c2565b806370a082311461045c578063715018a6146104995780637ff9b596146104b0576101c2565b806332cb6b0c116101595780634f6ccce7116101335780634f6ccce71461038e57806355f804b3146103cb578063564566a8146103f45780636352211e1461041f576101c2565b806332cb6b0c146103235780633ccfd60b1461034e57806342842e0e14610365576101c2565b8063095ea7b311610195578063095ea7b31461026957806318160ddd1461029257806323b872dd146102bd5780632f745c59146102e6576101c2565b806301ffc9a7146101c457806306fdde0314610201578063081812fc1461022c576101c2565b366101c257005b005b3480156101d057600080fd5b506101eb60048036038101906101e69190613258565b6106ab565b6040516101f89190613978565b60405180910390f35b34801561020d57600080fd5b506102166106bd565b6040516102239190613993565b60405180910390f35b34801561023857600080fd5b50610253600480360381019061024e9190613363565b61074f565b60405161026091906138b1565b60405180910390f35b34801561027557600080fd5b50610290600480360381019061028b91906131f3565b6107d4565b005b34801561029e57600080fd5b506102a76108ec565b6040516102b49190613d15565b60405180910390f35b3480156102c957600080fd5b506102e460048036038101906102df91906130ed565b6108f9565b005b3480156102f257600080fd5b5061030d600480360381019061030891906131f3565b610959565b60405161031a9190613d15565b60405180910390f35b34801561032f57600080fd5b506103386109fe565b6040516103459190613d15565b60405180910390f35b34801561035a57600080fd5b50610363610a04565b005b34801561037157600080fd5b5061038c600480360381019061038791906130ed565b610a99565b005b34801561039a57600080fd5b506103b560048036038101906103b09190613363565b610ab9565b6040516103c29190613d15565b60405180910390f35b3480156103d757600080fd5b506103f260048036038101906103ed9190613322565b610b50565b005b34801561040057600080fd5b50610409610be6565b6040516104169190613978565b60405180910390f35b34801561042b57600080fd5b5061044660048036038101906104419190613363565b610bf9565b60405161045391906138b1565b60405180910390f35b34801561046857600080fd5b50610483600480360381019061047e9190613088565b610cab565b6040516104909190613d15565b60405180910390f35b3480156104a557600080fd5b506104ae610d63565b005b3480156104bc57600080fd5b506104c5610deb565b6040516104d29190613d15565b60405180910390f35b3480156104e757600080fd5b5061050260048036038101906104fd91906132aa565b610e0f565b005b34801561051057600080fd5b50610519610f27565b60405161052691906138b1565b60405180910390f35b34801561053b57600080fd5b50610544610f51565b6040516105519190613993565b60405180910390f35b34801561056657600080fd5b50610581600480360381019061057c91906131b7565b610fe3565b005b34801561058f57600080fd5b506105aa60048036038101906105a5919061313c565b610ff9565b005b6105c660048036038101906105c19190613363565b61105b565b005b3480156105d457600080fd5b506105ef60048036038101906105ea9190613363565b611269565b6040516105fc9190613993565b60405180910390f35b34801561061157600080fd5b5061062c600480360381019061062791906132e6565b611310565b005b34801561063a57600080fd5b50610655600480360381019061065091906130b1565b61146c565b6040516106629190613978565b60405180910390f35b34801561067757600080fd5b50610680611500565b005b34801561068e57600080fd5b506106a960048036038101906106a49190613088565b6115a8565b005b60006106b6826116a0565b9050919050565b6060600080546106cc90613ff4565b80601f01602080910402602001604051908101604052809291908181526020018280546106f890613ff4565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261171a565b610799576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079090613bf5565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006107df82610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610850576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084790613c55565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661086f611786565b73ffffffffffffffffffffffffffffffffffffffff16148061089e575061089d81610898611786565b61146c565b5b6108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d490613b75565b60405180910390fd5b6108e7838361178e565b505050565b6000600880549050905090565b61090a610904611786565b82611847565b610949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094090613c75565b60405180910390fd5b610954838383611925565b505050565b600061096483610cab565b82106109a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099c906139d5565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610d0581565b610a0c611786565b73ffffffffffffffffffffffffffffffffffffffff16610a2a610f27565b73ffffffffffffffffffffffffffffffffffffffff1614610a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7790613c15565b60405180910390fd5b6000610a8a610f27565b9050610a968147611b8c565b50565b610ab483838360405180602001604052806000815250610ff9565b505050565b6000610ac36108ec565b8210610b04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afb90613cb5565b60405180910390fd5b60088281548110610b3e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549050919050565b610b58611786565b73ffffffffffffffffffffffffffffffffffffffff16610b76610f27565b73ffffffffffffffffffffffffffffffffffffffff1614610bcc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc390613c15565b60405180910390fd5b80600d9080519060200190610be2929190612e6d565b5050565b600c60009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ca2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9990613bb5565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1390613b95565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d6b611786565b73ffffffffffffffffffffffffffffffffffffffff16610d89610f27565b73ffffffffffffffffffffffffffffffffffffffff1614610ddf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd690613c15565b60405180910390fd5b610de96000611c80565b565b7f000000000000000000000000000000000000000000000000000000000000000081565b610e17611786565b73ffffffffffffffffffffffffffffffffffffffff16610e35610f27565b73ffffffffffffffffffffffffffffffffffffffff1614610e8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8290613c15565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ef1576040517f58d4712c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f23610efc610f27565b828473ffffffffffffffffffffffffffffffffffffffff16611d469092919063ffffffff16565b5050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610f6090613ff4565b80601f0160208091040260200160405190810160405280929190818152602001828054610f8c90613ff4565b8015610fd95780601f10610fae57610100808354040283529160200191610fd9565b820191906000526020600020905b815481529060010190602001808311610fbc57829003601f168201915b5050505050905090565b610ff5610fee611786565b8383611dcc565b5050565b61100a611004611786565b83611847565b611049576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104090613c75565b60405180910390fd5b61105584848484611f39565b50505050565b6002600b5414156110a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109890613cf5565b60405180910390fd5b6002600b819055506110b1610f27565b73ffffffffffffffffffffffffffffffffffffffff166110cf611786565b73ffffffffffffffffffffffffffffffffffffffff1614156110f9576110f481611f95565b61125e565b600c60009054906101000a900460ff16611148576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113f906139b5565b60405180910390fd5b610d05816111546108ec565b61115e9190613e05565b111561119f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119690613b55565b60405180910390fd5b60007f0000000000000000000000000000000000000000000000000000000000000000826111cd9190613e8c565b905080341015611212576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120990613a35565b60405180910390fd5b61121b82611f95565b600060023461122a9190613e5b565b905061123d611237610f27565b82611b8c565b61125b7305cce8fa9e9722f35e082fe71896eb2d6bf5df0982611b8c565b50505b6001600b8190555050565b60606112748261171a565b6112b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112aa90613c35565b60405180910390fd5b60006112bd611fd5565b905060008151116112dd5760405180602001604052806000815250611308565b806112e784612067565b6040516020016112f8929190613878565b6040516020818303038152906040525b915050919050565b611318611786565b73ffffffffffffffffffffffffffffffffffffffff16611336610f27565b73ffffffffffffffffffffffffffffffffffffffff161461138c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138390613c15565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113f2576040517f58d4712c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166342842e0e30611417610f27565b846040518463ffffffff1660e01b8152600401611436939291906138cc565b600060405180830381600087803b15801561145057600080fd5b505af1158015611464573d6000803e3d6000fd5b505050505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611508611786565b73ffffffffffffffffffffffffffffffffffffffff16611526610f27565b73ffffffffffffffffffffffffffffffffffffffff161461157c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157390613c15565b60405180910390fd5b600c60009054906101000a900460ff1615600c60006101000a81548160ff021916908315150217905550565b6115b0611786565b73ffffffffffffffffffffffffffffffffffffffff166115ce610f27565b73ffffffffffffffffffffffffffffffffffffffff1614611624576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161b90613c15565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168b90613a15565b60405180910390fd5b61169d81611c80565b50565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611713575061171282612214565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661180183610bf9565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006118528261171a565b611891576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188890613b35565b60405180910390fd5b600061189c83610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061190b57508373ffffffffffffffffffffffffffffffffffffffff166118f38461074f565b73ffffffffffffffffffffffffffffffffffffffff16145b8061191c575061191b818561146c565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661194582610bf9565b73ffffffffffffffffffffffffffffffffffffffff161461199b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199290613a55565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0290613a95565b60405180910390fd5b611a168383836122f6565b611a2160008261178e565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611a719190613ee6565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ac89190613e05565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611b87838383612306565b505050565b80471015611bcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc690613af5565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff1682604051611bf59061389c565b60006040518083038185875af1925050503d8060008114611c32576040519150601f19603f3d011682016040523d82523d6000602084013e611c37565b606091505b5050905080611c7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c7290613ad5565b60405180910390fd5b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611dc78363a9059cbb60e01b8484604051602401611d6592919061394f565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061230b565b505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611e3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3290613ab5565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611f2c9190613978565b60405180910390a3505050565b611f44848484611925565b611f50848484846123d2565b611f8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f86906139f5565b60405180910390fd5b50505050565b60005b80821115611fd1576000611faa6108ec565b9050611fbd611fb7611786565b82612569565b508080611fc990614057565b915050611f98565b5050565b6060600d8054611fe490613ff4565b80601f016020809104026020016040519081016040528092919081815260200182805461201090613ff4565b801561205d5780601f106120325761010080835404028352916020019161205d565b820191906000526020600020905b81548152906001019060200180831161204057829003601f168201915b5050505050905090565b606060008214156120af576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061220f565b600082905060005b600082146120e15780806120ca90614057565b915050600a826120da9190613e5b565b91506120b7565b60008167ffffffffffffffff811115612123577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f1916602001820160405280156121555781602001600182028036833780820191505090505b5090505b600085146122085760018261216e9190613ee6565b9150600a8561217d91906140a0565b60306121899190613e05565b60f81b8183815181106121c5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856122019190613e5b565b9450612159565b8093505050505b919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806122df57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806122ef57506122ee82612587565b5b9050919050565b6123018383836125f1565b505050565b505050565b600061236d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166127059092919063ffffffff16565b90506000815111156123cd578080602001905181019061238d919061322f565b6123cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123c390613cd5565b60405180910390fd5b5b505050565b60006123f38473ffffffffffffffffffffffffffffffffffffffff1661271d565b1561255c578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261241c611786565b8786866040518563ffffffff1660e01b815260040161243e9493929190613903565b602060405180830381600087803b15801561245857600080fd5b505af192505050801561248957506040513d601f19601f820116820180604052508101906124869190613281565b60015b61250c573d80600081146124b9576040519150601f19603f3d011682016040523d82523d6000602084013e6124be565b606091505b50600081511415612504576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124fb906139f5565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612561565b600190505b949350505050565b612583828260405180602001604052806000815250612740565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6125fc83838361279b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561263f5761263a816127a0565b61267e565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461267d5761267c83826127e9565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156126c1576126bc81612956565b612700565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146126ff576126fe8282612a99565b5b5b505050565b60606127148484600085612b18565b90509392505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b61274a8383612c2c565b61275760008484846123d2565b612796576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161278d906139f5565b60405180910390fd5b505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b600060016127f684610cab565b6128009190613ee6565b90506000600760008481526020019081526020016000205490508181146128e5576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b6000600160088054905061296a9190613ee6565b90506000600960008481526020019081526020016000205490506000600883815481106129c0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015490508060088381548110612a08577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555081600960008381526020019081526020016000208190555060096000858152602001908152602001600020600090556008805480612a7d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b6000612aa483610cab565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b606082471015612b5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b5490613b15565b60405180910390fd5b612b668561271d565b612ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9c90613c95565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051612bce9190613861565b60006040518083038185875af1925050503d8060008114612c0b576040519150601f19603f3d011682016040523d82523d6000602084013e612c10565b606091505b5091509150612c20828286612e06565b92505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612c9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c9390613bd5565b60405180910390fd5b612ca58161171a565b15612ce5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cdc90613a75565b60405180910390fd5b612cf1600083836122f6565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612d419190613e05565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612e0260008383612306565b5050565b60608315612e1657829050612e66565b600083511115612e295782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e5d9190613993565b60405180910390fd5b9392505050565b828054612e7990613ff4565b90600052602060002090601f016020900481019282612e9b5760008555612ee2565b82601f10612eb457805160ff1916838001178555612ee2565b82800160010185558215612ee2579182015b82811115612ee1578251825591602001919060010190612ec6565b5b509050612eef9190612ef3565b5090565b5b80821115612f0c576000816000905550600101612ef4565b5090565b6000612f23612f1e84613d55565b613d30565b905082815260208101848484011115612f3b57600080fd5b612f46848285613fb2565b509392505050565b6000612f61612f5c84613d86565b613d30565b905082815260208101848484011115612f7957600080fd5b612f84848285613fb2565b509392505050565b600081359050612f9b8161487a565b92915050565b600081359050612fb081614891565b92915050565b600081519050612fc581614891565b92915050565b600081359050612fda816148a8565b92915050565b600081519050612fef816148a8565b92915050565b600082601f83011261300657600080fd5b8135613016848260208601612f10565b91505092915050565b60008135905061302e816148bf565b92915050565b600081359050613043816148d6565b92915050565b600082601f83011261305a57600080fd5b813561306a848260208601612f4e565b91505092915050565b600081359050613082816148ed565b92915050565b60006020828403121561309a57600080fd5b60006130a884828501612f8c565b91505092915050565b600080604083850312156130c457600080fd5b60006130d285828601612f8c565b92505060206130e385828601612f8c565b9150509250929050565b60008060006060848603121561310257600080fd5b600061311086828701612f8c565b935050602061312186828701612f8c565b925050604061313286828701613073565b9150509250925092565b6000806000806080858703121561315257600080fd5b600061316087828801612f8c565b945050602061317187828801612f8c565b935050604061318287828801613073565b925050606085013567ffffffffffffffff81111561319f57600080fd5b6131ab87828801612ff5565b91505092959194509250565b600080604083850312156131ca57600080fd5b60006131d885828601612f8c565b92505060206131e985828601612fa1565b9150509250929050565b6000806040838503121561320657600080fd5b600061321485828601612f8c565b925050602061322585828601613073565b9150509250929050565b60006020828403121561324157600080fd5b600061324f84828501612fb6565b91505092915050565b60006020828403121561326a57600080fd5b600061327884828501612fcb565b91505092915050565b60006020828403121561329357600080fd5b60006132a184828501612fe0565b91505092915050565b600080604083850312156132bd57600080fd5b60006132cb8582860161301f565b92505060206132dc85828601613073565b9150509250929050565b600080604083850312156132f957600080fd5b600061330785828601613034565b925050602061331885828601613073565b9150509250929050565b60006020828403121561333457600080fd5b600082013567ffffffffffffffff81111561334e57600080fd5b61335a84828501613049565b91505092915050565b60006020828403121561337557600080fd5b600061338384828501613073565b91505092915050565b61339581613f1a565b82525050565b6133a481613f2c565b82525050565b60006133b582613db7565b6133bf8185613dcd565b93506133cf818560208601613fc1565b6133d88161418d565b840191505092915050565b60006133ee82613db7565b6133f88185613dde565b9350613408818560208601613fc1565b80840191505092915050565b600061341f82613dc2565b6134298185613de9565b9350613439818560208601613fc1565b6134428161418d565b840191505092915050565b600061345882613dc2565b6134628185613dfa565b9350613472818560208601613fc1565b80840191505092915050565b600061348b600783613de9565b91506134968261419e565b602082019050919050565b60006134ae602b83613de9565b91506134b9826141c7565b604082019050919050565b60006134d1603283613de9565b91506134dc82614216565b604082019050919050565b60006134f4602683613de9565b91506134ff82614265565b604082019050919050565b6000613517600f83613de9565b9150613522826142b4565b602082019050919050565b600061353a602583613de9565b9150613545826142dd565b604082019050919050565b600061355d601c83613de9565b91506135688261432c565b602082019050919050565b6000613580602483613de9565b915061358b82614355565b604082019050919050565b60006135a3601983613de9565b91506135ae826143a4565b602082019050919050565b60006135c6603a83613de9565b91506135d1826143cd565b604082019050919050565b60006135e9601d83613de9565b91506135f48261441c565b602082019050919050565b600061360c602683613de9565b915061361782614445565b604082019050919050565b600061362f602c83613de9565b915061363a82614494565b604082019050919050565b6000613652600783613de9565b915061365d826144e3565b602082019050919050565b6000613675603883613de9565b91506136808261450c565b604082019050919050565b6000613698602a83613de9565b91506136a38261455b565b604082019050919050565b60006136bb602983613de9565b91506136c6826145aa565b604082019050919050565b60006136de602083613de9565b91506136e9826145f9565b602082019050919050565b6000613701602c83613de9565b915061370c82614622565b604082019050919050565b6000613724602083613de9565b915061372f82614671565b602082019050919050565b6000613747602f83613de9565b91506137528261469a565b604082019050919050565b600061376a602183613de9565b9150613775826146e9565b604082019050919050565b600061378d600083613dde565b915061379882614738565b600082019050919050565b60006137b0603183613de9565b91506137bb8261473b565b604082019050919050565b60006137d3601d83613de9565b91506137de8261478a565b602082019050919050565b60006137f6602c83613de9565b9150613801826147b3565b604082019050919050565b6000613819602a83613de9565b915061382482614802565b604082019050919050565b600061383c601f83613de9565b915061384782614851565b602082019050919050565b61385b81613fa8565b82525050565b600061386d82846133e3565b915081905092915050565b6000613884828561344d565b9150613890828461344d565b91508190509392505050565b60006138a782613780565b9150819050919050565b60006020820190506138c6600083018461338c565b92915050565b60006060820190506138e1600083018661338c565b6138ee602083018561338c565b6138fb6040830184613852565b949350505050565b6000608082019050613918600083018761338c565b613925602083018661338c565b6139326040830185613852565b818103606083015261394481846133aa565b905095945050505050565b6000604082019050613964600083018561338c565b6139716020830184613852565b9392505050565b600060208201905061398d600083018461339b565b92915050565b600060208201905081810360008301526139ad8184613414565b905092915050565b600060208201905081810360008301526139ce8161347e565b9050919050565b600060208201905081810360008301526139ee816134a1565b9050919050565b60006020820190508181036000830152613a0e816134c4565b9050919050565b60006020820190508181036000830152613a2e816134e7565b9050919050565b60006020820190508181036000830152613a4e8161350a565b9050919050565b60006020820190508181036000830152613a6e8161352d565b9050919050565b60006020820190508181036000830152613a8e81613550565b9050919050565b60006020820190508181036000830152613aae81613573565b9050919050565b60006020820190508181036000830152613ace81613596565b9050919050565b60006020820190508181036000830152613aee816135b9565b9050919050565b60006020820190508181036000830152613b0e816135dc565b9050919050565b60006020820190508181036000830152613b2e816135ff565b9050919050565b60006020820190508181036000830152613b4e81613622565b9050919050565b60006020820190508181036000830152613b6e81613645565b9050919050565b60006020820190508181036000830152613b8e81613668565b9050919050565b60006020820190508181036000830152613bae8161368b565b9050919050565b60006020820190508181036000830152613bce816136ae565b9050919050565b60006020820190508181036000830152613bee816136d1565b9050919050565b60006020820190508181036000830152613c0e816136f4565b9050919050565b60006020820190508181036000830152613c2e81613717565b9050919050565b60006020820190508181036000830152613c4e8161373a565b9050919050565b60006020820190508181036000830152613c6e8161375d565b9050919050565b60006020820190508181036000830152613c8e816137a3565b9050919050565b60006020820190508181036000830152613cae816137c6565b9050919050565b60006020820190508181036000830152613cce816137e9565b9050919050565b60006020820190508181036000830152613cee8161380c565b9050919050565b60006020820190508181036000830152613d0e8161382f565b9050919050565b6000602082019050613d2a6000830184613852565b92915050565b6000613d3a613d4b565b9050613d468282614026565b919050565b6000604051905090565b600067ffffffffffffffff821115613d7057613d6f61415e565b5b613d798261418d565b9050602081019050919050565b600067ffffffffffffffff821115613da157613da061415e565b5b613daa8261418d565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b6000613e1082613fa8565b9150613e1b83613fa8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613e5057613e4f6140d1565b5b828201905092915050565b6000613e6682613fa8565b9150613e7183613fa8565b925082613e8157613e80614100565b5b828204905092915050565b6000613e9782613fa8565b9150613ea283613fa8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613edb57613eda6140d1565b5b828202905092915050565b6000613ef182613fa8565b9150613efc83613fa8565b925082821015613f0f57613f0e6140d1565b5b828203905092915050565b6000613f2582613f88565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6000613f6f82613f1a565b9050919050565b6000613f8182613f1a565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015613fdf578082015181840152602081019050613fc4565b83811115613fee576000848401525b50505050565b6000600282049050600182168061400c57607f821691505b602082108114156140205761401f61412f565b5b50919050565b61402f8261418d565b810181811067ffffffffffffffff8211171561404e5761404d61415e565b5b80604052505050565b600061406282613fa8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614095576140946140d1565b5b600182019050919050565b60006140ab82613fa8565b91506140b683613fa8565b9250826140c6576140c5614100565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f4e4f5f53414c4500000000000000000000000000000000000000000000000000600082015250565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f494e434f52524543545f56414c55450000000000000000000000000000000000600082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f534f4c444f555400000000000000000000000000000000000000000000000000600082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b61488381613f1a565b811461488e57600080fd5b50565b61489a81613f2c565b81146148a557600080fd5b50565b6148b181613f38565b81146148bc57600080fd5b50565b6148c881613f64565b81146148d357600080fd5b50565b6148df81613f76565b81146148ea57600080fd5b50565b6148f681613fa8565b811461490157600080fd5b5056fea264697066735822122077071234f3adcd425a839a95a33babfdaed39ec9d2dc2da5fc0926c918a4133064736f6c6343000804003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d623644333878776843353934317773314a6e377475586732396554464c7a526971445974564a5243636e637a2f00000000000000000000