Overview ERC20
PRICE
n/a

ON-CHAIN MARKET CAP n/a

Total Supply:
0

Profile Summary
Blockchain:
Mantle (5000)


Decimals:
0
Contract Source Code Verified (Partial Match)
Contract Name:
CMTAT_BASE

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Created At:
Wed, 11 Sep 2024 15:58:10 GMT
Errors.sol
contracts
libraries
Errors.sol


Contract ABI
[
  {
    "inputs": [],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "AddressZeroNotAllowed",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "InvalidTransfer",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "SameValue",
    "type": "error"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Approval",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "string",
        "name": "reason",
        "type": "string"
      }
    ],
    "name": "Burn",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "uint256",
        "name": "newFlag",
        "type": "uint256"
      }
    ],
    "name": "Flag",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "string",
        "name": "newInformationIndexed",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "string",
        "name": "newInformation",
        "type": "string"
      }
    ],
    "name": "Information",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint8",
        "name": "version",
        "type": "uint8"
      }
    ],
    "name": "Initialized",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "beneficiary",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "Mint",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "Paused",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "indexed": true,
        "internalType": "bytes32",
        "name": "previousAdminRole",
        "type": "bytes32"
      },
      {
        "indexed": true,
        "internalType": "bytes32",
        "name": "newAdminRole",
        "type": "bytes32"
      }
    ],
    "name": "RoleAdminChanged",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "account",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "sender",
        "type": "address"
      }
    ],
    "name": "RoleGranted",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "account",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "sender",
        "type": "address"
      }
    ],
    "name": "RoleRevoked",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "Spend",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "string",
        "name": "newTermIndexed",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "string",
        "name": "newTerm",
        "type": "string"
      }
    ],
    "name": "Term",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "string",
        "name": "newTokenIdIndexed",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "string",
        "name": "newTokenId",
        "type": "string"
      }
    ],
    "name": "TokenId",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Transfer",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "Unpaused",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "BURNER_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "DEFAULT_ADMIN_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "MINTER_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "PAUSER_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      }
    ],
    "name": "allowance",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "approve",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "balanceOf",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "subtractedValue",
        "type": "uint256"
      }
    ],
    "name": "decreaseAllowance",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "flag",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "internalType": "string",
        "name": "reason",
        "type": "string"
      }
    ],
    "name": "forceBurn",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      }
    ],
    "name": "getRoleAdmin",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "grantRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "hasRole",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "addedValue",
        "type": "uint256"
      }
    ],
    "name": "increaseAllowance",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "information",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "admin",
        "type": "address"
      },
      {
        "internalType": "string",
        "name": "nameIrrevocable",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "symbolIrrevocable",
        "type": "string"
      },
      {
        "internalType": "uint8",
        "name": "decimalsIrrevocable",
        "type": "uint8"
      },
      {
        "internalType": "string",
        "name": "tokenId_",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "terms_",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "information_",
        "type": "string"
      },
      {
        "internalType": "uint256",
        "name": "flag_",
        "type": "uint256"
      }
    ],
    "name": "initialize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "mint",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "pause",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "paused",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "renounceRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "role",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "revokeRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "flag_",
        "type": "uint256"
      }
    ],
    "name": "setFlag",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "information_",
        "type": "string"
      }
    ],
    "name": "setInformation",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "terms_",
        "type": "string"
      }
    ],
    "name": "setTerms",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "tokenId_",
        "type": "string"
      }
    ],
    "name": "setTokenId",
    "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": [],
    "name": "terms",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "tokenId",
    "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": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "transfer",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "unpause",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611fd3806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c806378f86afc11610125578063d40c79f0116100ad578063d7ffbbaa1161007c578063d7ffbbaa1461046a578063dcfd616f1461047d578063dd62ed3e14610490578063e63ab1e9146104a3578063f47b7740146104ca57600080fd5b8063d40c79f014610415578063d502562514610428578063d539139314610430578063d547741f1461045757600080fd5b806391d14854116100f457806391d14854146103cc57806395d89b41146103df578063a217fddf146103e7578063a457c2d7146103ef578063a9059cbb1461040257600080fd5b806378f86afc146103945780638456cb59146103a7578063890eba68146103af57806391d0f6ed146103b957600080fd5b8063282c51f3116101a8578063395093511161017757806339509351146103325780633f4ba83a1461034557806340c10f191461034d5780635c975abb1461036057806370a082311461036b57600080fd5b8063282c51f3146102cb5780632f2ff15d146102f2578063313ce5671461030557806336568abe1461031f57600080fd5b806317d70f7c116101e457806317d70f7c1461027b57806318160ddd1461028357806323b872dd14610295578063248a9ca3146102a857600080fd5b806301ffc9a71461021657806306fdde031461023e578063095ea7b3146102535780630bf131ca14610266575b600080fd5b61022961022436600461191d565b6104d2565b60405190151581526020015b60405180910390f35b610246610509565b6040516102359190611997565b6102296102613660046119c6565b61059b565b610279610274366004611a93565b6105b3565b005b610246610630565b6067545b604051908152602001610235565b6102296102a3366004611aea565b6106bf565b6102876102b6366004611b26565b600090815260c9602052604090206001015490565b6102877f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b610279610300366004611b3f565b6106d4565b61030d6106fe565b60405160ff9091168152602001610235565b61027961032d366004611b3f565b610712565b6102296103403660046119c6565b610795565b6102796107b7565b61027961035b3660046119c6565b6107ec565b60335460ff16610229565b610287610379366004611b6b565b6001600160a01b031660009081526065602052604090205490565b6102796103a2366004611b86565b610868565b6102796108d2565b6102876101305481565b6102796103c7366004611bcc565b610904565b6102296103da366004611b3f565b610a25565b610246610a9b565b610287600081565b6102296103fd3660046119c6565b610aaa565b6102296104103660046119c6565b610b30565b610279610423366004611b26565b610b3e565b610246610ba1565b6102877f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610279610465366004611b3f565b610baf565b610279610478366004611b86565b610bd4565b61027961048b366004611b86565b610c32565b61028761049e366004611cc9565b610c90565b6102877f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b610246610cbb565b60006001600160e01b03198216637965db0b60e01b148061050357506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606068805461051890611cf3565b80601f016020809104026020016040519081016040528092919081815260200182805461054490611cf3565b80156105915780601f1061056657610100808354040283529160200191610591565b820191906000526020600020905b81548152906001019060200180831161057457829003601f168201915b5050505050905090565b6000336105a9818585610cc9565b5060019392505050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8486105dd81610ded565b6105e78484610df7565b836001600160a01b03167f47e772fda56eb54ab211642ce5421882c49fc2b7033455982af14588ae4207ff8484604051610622929190611d2d565b60405180910390a250505050565b61012d805461063e90611cf3565b80601f016020809104026020016040519081016040528092919081815260200182805461066a90611cf3565b80156106b75780601f1061068c576101008083540402835291602001916106b7565b820191906000526020600020905b81548152906001019060200180831161069a57829003601f168201915b505050505081565b60006106cc848484610f37565b949350505050565b600082815260c960205260409020600101546106ef81610ded565b6106f98383610f95565b505050565b600061070d6101f95460ff1690565b905090565b6001600160a01b03811633146107875760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610791828261101b565b5050565b6000336105a98185856107a88383610c90565b6107b29190611d5c565b610cc9565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6107e181610ded565b6107e9611082565b50565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661081681610ded565b61082083836110d4565b826001600160a01b03167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858360405161085b91815260200190565b60405180910390a2505050565b600061087381610ded565b61012e6108808382611dbd565b508160405161088f9190611e7d565b60405180910390207f8763f25a8d9538205dfcd4dc235a0f6bf9f0a6a01327e13524aaf39f954fa50f836040516108c69190611997565b60405180910390a25050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6108fc81610ded565b6107e96111a1565b600054610100900460ff16158080156109245750600054600160ff909116105b8061093e5750303b15801561093e575060005460ff166001145b6109a15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161077e565b6000805460ff1916600117905580156109c4576000805461ff0019166101001790555b6109d489898989898989896111de565b8015610a1a576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b6001600160a01b03811660009081527f81fe90a866a48a634a12852c1be675b683a22307409932a7443b8029347be756602052604081205460ff1615610a6d57506001610503565b600083815260c9602090815260408083206001600160a01b038616845290915290205460ff165b9392505050565b60606069805461051890611cf3565b60003381610ab88286610c90565b905083811015610b185760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161077e565b610b258286868403610cc9565b506001949350505050565b6000336105a9818585611277565b6000610b4981610ded565b816101305403610b6c5760405163c23f6ccb60e01b815260040160405180910390fd5b61013082905560405182907f7fd5fca7bc379fa5c0330db55f9b725ddbe03460514a6fa71918966f3848779f90600090a25050565b61012e805461063e90611cf3565b600082815260c96020526040902060010154610bca81610ded565b6106f9838361101b565b6000610bdf81610ded565b61012f610bec8382611dbd565b5081604051610bfb9190611e7d565b60405180910390207f62ecbd406143b0f9293af502fc172da71440b7821e18045e13c652c6841fff95836040516108c69190611997565b6000610c3d81610ded565b61012d610c4a8382611dbd565b5081604051610c599190611e7d565b60405180910390207f6403c68076c59949275ad9be2137a73c51043d7d6af6a38473047a0bc45df492836040516108c69190611997565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b61012f805461063e90611cf3565b6001600160a01b038316610d2b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161077e565b6001600160a01b038216610d8c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161077e565b6001600160a01b0383811660008181526066602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6107e9813361142f565b6001600160a01b038216610e575760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161077e565b610e6382600083611488565b6001600160a01b03821660009081526065602052604090205481811015610ed75760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161077e565b6001600160a01b03831660008181526065602090815260408083208686039055606780548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600080610f458585856114c6565b905080156106cc5760405183815233906001600160a01b038716907f7c2b9369bf4a6bd9745889c658ad00a4d57e280c4c80fa1c74db2a9e52c136359060200160405180910390a3949350505050565b610f9f8282610a25565b61079157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610fd73390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110258282610a25565b1561079157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b61108a6114df565b6033805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b03821661112a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161077e565b61113660008383611488565b80606760008282546111489190611d5c565b90915550506001600160a01b0382166000818152606560209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6111a961152a565b6033805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586110b73390565b600054610100900460ff166112055760405162461bcd60e51b815260040161077e90611e99565b61120d611570565b6112178787611597565b61121f611570565b611227611570565b61122f6115d7565b6112388861160a565b611240611570565b611248611570565b61125185611663565b611259611570565b611265848484846116a1565b61126d611570565b5050505050505050565b6001600160a01b0383166112db5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161077e565b6001600160a01b03821661133d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161077e565b611348838383611488565b6001600160a01b038316600090815260656020526040902054818110156113c05760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161077e565b6001600160a01b0380851660008181526065602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114209086815260200190565b60405180910390a35b50505050565b6114398282610a25565b61079157611446816116fb565b61145183602061170d565b604051602001611462929190611ee4565b60408051601f198184030181529082905262461bcd60e51b825261077e91600401611997565b60335460ff16156106f957604051634c80a8a560e01b81526001600160a01b038085166004830152831660248201526044810182905260640161077e565b6000336114d48582856118a9565b610b25858585611277565b60335460ff166115285760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161077e565b565b60335460ff16156115285760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161077e565b600054610100900460ff166115285760405162461bcd60e51b815260040161077e90611e99565b600054610100900460ff166115be5760405162461bcd60e51b815260040161077e90611e99565b60686115ca8382611dbd565b5060696106f98282611dbd565b600054610100900460ff166115fe5760405162461bcd60e51b815260040161077e90611e99565b6033805460ff19169055565b600054610100900460ff166116315760405162461bcd60e51b815260040161077e90611e99565b6001600160a01b038116611658576040516302154e0360e21b815260040160405180910390fd5b6107e9600082610f95565b600054610100900460ff1661168a5760405162461bcd60e51b815260040161077e90611e99565b6101f9805460ff191660ff92909216919091179055565b600054610100900460ff166116c85760405162461bcd60e51b815260040161077e90611e99565b61012d6116d58582611dbd565b5061012e6116e38482611dbd565b5061012f6116f18382611dbd565b5061013055505050565b60606105036001600160a01b03831660145b6060600061171c836002611f59565b611727906002611d5c565b67ffffffffffffffff81111561173f5761173f6119f0565b6040519080825280601f01601f191660200182016040528015611769576020820181803683370190505b509050600360fc1b8160008151811061178457611784611f70565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106117b3576117b3611f70565b60200101906001600160f81b031916908160001a90535060006117d7846002611f59565b6117e2906001611d5c565b90505b600181111561185a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061181657611816611f70565b1a60f81b82828151811061182c5761182c611f70565b60200101906001600160f81b031916908160001a90535060049490941c9361185381611f86565b90506117e5565b508315610a945760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161077e565b60006118b58484610c90565b9050600019811461142957818110156119105760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161077e565b6114298484848403610cc9565b60006020828403121561192f57600080fd5b81356001600160e01b031981168114610a9457600080fd5b60005b8381101561196257818101518382015260200161194a565b50506000910152565b60008151808452611983816020860160208601611947565b601f01601f19169290920160200192915050565b602081526000610a94602083018461196b565b80356001600160a01b03811681146119c157600080fd5b919050565b600080604083850312156119d957600080fd5b6119e2836119aa565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611a1757600080fd5b813567ffffffffffffffff80821115611a3257611a326119f0565b604051601f8301601f19908116603f01168101908282118183101715611a5a57611a5a6119f0565b81604052838152866020858801011115611a7357600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215611aa857600080fd5b611ab1846119aa565b925060208401359150604084013567ffffffffffffffff811115611ad457600080fd5b611ae086828701611a06565b9150509250925092565b600080600060608486031215611aff57600080fd5b611b08846119aa565b9250611b16602085016119aa565b9150604084013590509250925092565b600060208284031215611b3857600080fd5b5035919050565b60008060408385031215611b5257600080fd5b82359150611b62602084016119aa565b90509250929050565b600060208284031215611b7d57600080fd5b610a94826119aa565b600060208284031215611b9857600080fd5b813567ffffffffffffffff811115611baf57600080fd5b6106cc84828501611a06565b803560ff811681146119c157600080fd5b600080600080600080600080610100898b031215611be957600080fd5b611bf2896119aa565b9750602089013567ffffffffffffffff80821115611c0f57600080fd5b611c1b8c838d01611a06565b985060408b0135915080821115611c3157600080fd5b611c3d8c838d01611a06565b9750611c4b60608c01611bbb565b965060808b0135915080821115611c6157600080fd5b611c6d8c838d01611a06565b955060a08b0135915080821115611c8357600080fd5b611c8f8c838d01611a06565b945060c08b0135915080821115611ca557600080fd5b50611cb28b828c01611a06565b92505060e089013590509295985092959890939650565b60008060408385031215611cdc57600080fd5b611ce5836119aa565b9150611b62602084016119aa565b600181811c90821680611d0757607f821691505b602082108103611d2757634e487b7160e01b600052602260045260246000fd5b50919050565b8281526040602082015260006106cc604083018461196b565b634e487b7160e01b600052601160045260246000fd5b8082018082111561050357610503611d46565b601f8211156106f957600081815260208120601f850160051c81016020861015611d965750805b601f850160051c820191505b81811015611db557828155600101611da2565b505050505050565b815167ffffffffffffffff811115611dd757611dd76119f0565b611deb81611de58454611cf3565b84611d6f565b602080601f831160018114611e205760008415611e085750858301515b600019600386901b1c1916600185901b178555611db5565b600085815260208120601f198616915b82811015611e4f57888601518255948401946001909101908401611e30565b5085821015611e6d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008251611e8f818460208701611947565b9190910192915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611f1c816017850160208801611947565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611f4d816028840160208801611947565b01602801949350505050565b808202811582820484141761050357610503611d46565b634e487b7160e01b600052603260045260246000fd5b600081611f9557611f95611d46565b50600019019056fea26469706673582212209bdc85e190f0c50c1fdb554f8145d490c06ab9c356caea444d64d3c693f0cce864736f6c63430008110033

Loading