Overview ERC20
PRICE
n/a

ON-CHAIN MARKET CAP n/a

Total Supply:
1,000.00 xEMRLD

Profile Summary
Blockchain:
Sepolia (11155111)


Decimals:
18
Contract Source Code Verified (Exact Match)
Contract Name:
EMRLDStaking

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
No

Created At:
Thu, 04 Jul 2024 15:21:48 GMT
EMRLDStaking.sol
contracts
EMRLDStaking.sol


Contract ABI
[
  {
    "inputs": [],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "allowance",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "needed",
        "type": "uint256"
      }
    ],
    "name": "ERC20InsufficientAllowance",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "balance",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "needed",
        "type": "uint256"
      }
    ],
    "name": "ERC20InsufficientBalance",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "approver",
        "type": "address"
      }
    ],
    "name": "ERC20InvalidApprover",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "receiver",
        "type": "address"
      }
    ],
    "name": "ERC20InvalidReceiver",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "sender",
        "type": "address"
      }
    ],
    "name": "ERC20InvalidSender",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      }
    ],
    "name": "ERC20InvalidSpender",
    "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": "previousOwner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "OwnershipTransferred",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "user",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "rewards",
        "type": "uint256"
      }
    ],
    "name": "Restaked",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "user",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "Staked",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "apr",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "minStake",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "maxStake",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "totalMaxStakeAmount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "bool",
        "name": "active",
        "type": "bool"
      }
    ],
    "name": "StakingPoolCreated",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Transfer",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "user",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "rewards",
        "type": "uint256"
      }
    ],
    "name": "Unstaked",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "EMRLD",
    "outputs": [
      {
        "internalType": "contract IERC20Metadata",
        "name": "",
        "type": "address"
      }
    ],
    "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": "value",
        "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": [
      {
        "internalType": "address",
        "name": "staker",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      }
    ],
    "name": "calculateReward",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "contractState",
    "outputs": [
      {
        "internalType": "enum EMRLDStaking.ContractState",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "user",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      }
    ],
    "name": "emergencyUnstake",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      }
    ],
    "name": "restake",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "newState",
        "type": "uint256"
      }
    ],
    "name": "setContractState",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_EMRLD",
        "type": "address"
      }
    ],
    "name": "setEMRLD",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "apr",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minStake",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxStake",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "totalMaxStakeAmount",
        "type": "uint256"
      },
      {
        "internalType": "bool",
        "name": "active",
        "type": "bool"
      }
    ],
    "name": "setStakingPool",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "stake",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "name": "stakes",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "totalStaked",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "stakeTimestamp",
        "type": "uint256"
      },
      {
        "internalType": "bool",
        "name": "isActive",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "name": "stakingPools",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "apr",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minStake",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxStake",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "totalMaxStakeAmount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "totalStaked",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "totalStakers",
        "type": "uint256"
      },
      {
        "internalType": "bool",
        "name": "active",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "tokensClaimed",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "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": "value",
        "type": "uint256"
      }
    ],
    "name": "transfer",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "lock",
        "type": "uint256"
      }
    ],
    "name": "unstake",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "withdrawEther",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      }
    ],
    "name": "withdrawToken",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
60806040526001600960146101000a81548160ff0219169083600181111561002a57610029610206565b5b021790555034801561003a575f80fd5b506040518060400160405280600681526020017f78454d524c4400000000000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f78454d524c4400000000000000000000000000000000000000000000000000008152506100c36100b861013e60201b60201c565b61014560201b60201c565b81600490816100d2919061046d565b5080600590816100e2919061046d565b5050507369fa721695881be80e4a7fdd439144500ea8a6b660095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061053c565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102ae57607f821691505b6020821081036102c1576102c061026a565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026103237fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102e8565b61032d86836102e8565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61037161036c61036784610345565b61034e565b610345565b9050919050565b5f819050919050565b61038a83610357565b61039e61039682610378565b8484546102f4565b825550505050565b5f90565b6103b26103a6565b6103bd818484610381565b505050565b5b818110156103e0576103d55f826103aa565b6001810190506103c3565b5050565b601f821115610425576103f6816102c7565b6103ff846102d9565b8101602085101561040e578190505b61042261041a856102d9565b8301826103c2565b50505b505050565b5f82821c905092915050565b5f6104455f198460080261042a565b1980831691505092915050565b5f61045d8383610436565b9150826002028217905092915050565b61047682610233565b67ffffffffffffffff81111561048f5761048e61023d565b5b6104998254610297565b6104a48282856103e4565b5f60209050601f8311600181146104d5575f84156104c3578287015190505b6104cd8582610452565b865550610534565b601f1984166104e3866102c7565b5f5b8281101561050a578489015182556001820191506020850194506020810190506104e5565b868310156105275784890151610523601f891682610436565b8355505b6001600288020188555050505b505050505050565b613971806105495f395ff3fe608060405234801561000f575f80fd5b50600436106101a7575f3560e01c8063624601b6116100f757806395d89b4111610095578063ca3c782c1161006f578063ca3c782c146104d3578063dd62ed3e146104ef578063f2fde38b1461051f578063fb7265ff1461053b576101a7565b806395d89b4114610469578063a9059cbb14610487578063bce1b520146104b7576101a7565b806372706a8c116100d157806372706a8c146103f35780637b0472f01461041157806385209ee01461042d5780638da5cb5b1461044b576101a7565b8063624601b61461038957806370a08231146103b9578063715018a6146103e9576101a7565b8063313ce56711610164578063522f68151161013e578063522f6815146102e95780635733c78614610305578063584b62a1146103215780635aad6cf014610353576101a7565b8063313ce567146102935780633ccdbb28146102b15780634268121e146102cd576101a7565b806306fdde03146101ab578063095ea7b3146101c957806318160ddd146101f95780631852e8d91461021757806323b872dd146102475780632e17de7814610277575b5f80fd5b6101b3610557565b6040516101c091906125d0565b60405180910390f35b6101e360048036038101906101de9190612681565b6105e7565b6040516101f091906126d9565b60405180910390f35b610201610609565b60405161020e9190612701565b60405180910390f35b610231600480360381019061022c9190612681565b610612565b60405161023e9190612701565b60405180910390f35b610261600480360381019061025c919061271a565b61070e565b60405161026e91906126d9565b60405180910390f35b610291600480360381019061028c919061276a565b61073c565b005b61029b610a7d565b6040516102a891906127b0565b60405180910390f35b6102cb60048036038101906102c691906127c9565b610a85565b005b6102e760048036038101906102e29190612681565b610c6a565b005b61030360048036038101906102fe9190612681565b610f01565b005b61031f600480360381019061031a9190612819565b611072565b005b61033b60048036038101906103369190612681565b6110bd565b60405161034a93929190612844565b60405180910390f35b61036d6004803603810190610368919061276a565b6110fa565b6040516103809796959493929190612879565b60405180910390f35b6103a3600480360381019061039e9190612819565b611144565b6040516103b09190612701565b60405180910390f35b6103d360048036038101906103ce9190612819565b611159565b6040516103e09190612701565b60405180910390f35b6103f161119f565b005b6103fb6111b2565b6040516104089190612941565b60405180910390f35b61042b6004803603810190610426919061295a565b6111d7565b005b610435611647565b6040516104429190612a0b565b60405180910390f35b61045361165a565b6040516104609190612a33565b60405180910390f35b610471611681565b60405161047e91906125d0565b60405180910390f35b6104a1600480360381019061049c9190612681565b611711565b6040516104ae91906126d9565b60405180910390f35b6104d160048036038101906104cc919061276a565b611733565b005b6104ed60048036038101906104e89190612a76565b611a53565b005b61050960048036038101906105049190612aff565b611c0f565b6040516105169190612701565b60405180910390f35b61053960048036038101906105349190612819565b611c91565b005b6105556004803603810190610550919061276a565b611d13565b005b60606004805461056690612b6a565b80601f016020809104026020016040519081016040528092919081815260200182805461059290612b6a565b80156105dd5780601f106105b4576101008083540402835291602001916105dd565b820191905f5260205f20905b8154815290600101906020018083116105c057829003601f168201915b5050505050905090565b5f806105f1611d9d565b90506105fe818585611da4565b600191505092915050565b5f600354905090565b5f8060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20600101544261066f9190612bc7565b90506301e133808161271060065f8781526020019081526020015f205f015460075f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8881526020019081526020015f205f01546106e79190612bfa565b6106f19190612c68565b6106fb9190612bfa565b6107059190612c68565b91505092915050565b5f80610718611d9d565b9050610725858285611db6565b610730858585611e48565b60019150509392505050565b600180600181111561075157610750612998565b5b600960149054906101000a900460ff16600181111561077357610772612998565b5b146107b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107aa90612d08565b60405180910390fd5b5f60075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f209050806002015f9054906101000a900460ff16610852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084990612d70565b60405180910390fd5b5f60065f8581526020019081526020015f20905062015180846108759190612bfa565b82600101546108849190612d8e565b4210156108c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bd90612e0b565b60405180910390fd5b5f825f015490505f6108d83387610612565b90508060085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546109269190612d8e565b9250508190555060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610989929190612e29565b6020604051808303815f875af11580156109a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c99190612e64565b505f846002015f6101000a81548160ff02191690831515021790555081836004015f8282546109f89190612bc7565b925050819055506001836005015f828254610a139190612bc7565b92505081905550610a243383611f38565b853373ffffffffffffffffffffffffffffffffffffffff167f204fccf0d92ed8d48f204adb39b2e81e92bad0dedb93f5716ca9478cfb57de008484604051610a6d929190612e8f565b60405180910390a3505050505050565b5f6012905090565b610a8d611fb7565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af290612f00565b60405180910390fd5b5f8211610b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3490612f68565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610bab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba290612fd0565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401610be6929190612e29565b6020604051808303815f875af1158015610c02573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c269190612e64565b610c65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5c90613038565b60405180910390fd5b505050565b610c72611fb7565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f209050806002015f9054906101000a900460ff16610d11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0890612d70565b60405180910390fd5b5f60065f8481526020019081526020015f2090505f825f015490505f6201518085610d3c9190612bfa565b8460010154610d4b9190612d8e565b4210610db157610d5b3386610612565b90508060085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610da99190612d8e565b925050819055505b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610e0d929190612e29565b6020604051808303815f875af1158015610e29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4d9190612e64565b505f846002015f6101000a81548160ff02191690831515021790555081836004015f828254610e7c9190612bc7565b925050819055506001836005015f828254610e979190612bc7565b92505081905550610ea88683611f38565b848673ffffffffffffffffffffffffffffffffffffffff167f204fccf0d92ed8d48f204adb39b2e81e92bad0dedb93f5716ca9478cfb57de008484604051610ef1929190612e8f565b60405180910390a3505050505050565b610f09611fb7565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6e90612f00565b60405180910390fd5b5f81118015610f865750804710155b610fc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbc90612f68565b60405180910390fd5b5f8273ffffffffffffffffffffffffffffffffffffffff1682604051610fea90613083565b5f6040518083038185875af1925050503d805f8114611024576040519150601f19603f3d011682016040523d82523d5f602084013e611029565b606091505b505090508061106d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611064906130e1565b60405180910390fd5b505050565b61107a611fb7565b8060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6007602052815f5260405f20602052805f5260405f205f9150915050805f015490806001015490806002015f9054906101000a900460ff16905083565b6006602052805f5260405f205f91509050805f015490806001015490806002015490806003015490806004015490806005015490806006015f9054906101000a900460ff16905087565b6008602052805f5260405f205f915090505481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6111a7611fb7565b6111b05f612035565b565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018060018111156111ec576111eb612998565b5b600960149054906101000a900460ff16600181111561120e5761120d612998565b5b1461124e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124590612d08565b60405180910390fd5b5f60065f8581526020019081526020015f2090505f60075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8681526020019081526020015f209050816006015f9054906101000a900460ff16611301576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f890613149565b60405180910390fd5b816001015460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8781526020019081526020015f205f0154856113609190612d8e565b10156113a1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611398906131d7565b60405180910390fd5b816002015460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8781526020019081526020015f205f0154856114009190612d8e565b1115611441576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114389061323f565b60405180910390fd5b81600301548483600401546114569190612d8e565b1115611497576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148e906132cd565b60405180910390fd5b806002015f9054906101000a900460ff16156114e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114df9061335b565b60405180910390fd5b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff1660e01b815260040161154693929190613379565b6020604051808303815f875af1158015611562573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115869190612e64565b5083815f01819055504281600101819055506001816002015f6101000a81548160ff02191690831515021790555083826004015f8282546115c79190612d8e565b92505081905550816005015f8154809291906115e2906133ae565b91905055506115f133856120f6565b843373ffffffffffffffffffffffffffffffffffffffff167f1449c6dd7851abc30abf37f57715f492010519147cc2652fbc38202c18a6ee90866040516116389190612701565b60405180910390a35050505050565b600960149054906101000a900460ff1681565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461169090612b6a565b80601f01602080910402602001604051908101604052809291908181526020018280546116bc90612b6a565b80156117075780601f106116de57610100808354040283529160200191611707565b820191905f5260205f20905b8154815290600101906020018083116116ea57829003601f168201915b5050505050905090565b5f8061171b611d9d565b9050611728818585611e48565b600191505092915050565b600180600181111561174857611747612998565b5b600960149054906101000a900460ff16600181111561176a57611769612998565b5b146117aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a190612d08565b60405180910390fd5b5f60075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f209050806002015f9054906101000a900460ff16611849576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184090612d70565b60405180910390fd5b5f60065f8581526020019081526020015f209050620151808461186c9190612bfa565b826001015461187b9190612d8e565b4210156118bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b490612e0b565b60405180910390fd5b5f825f015490505f6118cf3387610612565b90505f81836118de9190612d8e565b90508360010154811015611927576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191e90613465565b60405180910390fd5b836002015481111561196e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611965906134f3565b60405180910390fd5b83600301548285600401546119839190612d8e565b11156119c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119bb906132cd565b60405180910390fd5b80855f018190555042856001018190555081846004015f8282546119e89190612d8e565b925050819055506119f933836120f6565b863373ffffffffffffffffffffffffffffffffffffffff167f63acdca311ce77b458c1dde8cdea3e282508af05da37a4f52a915b7784c37c488585604051611a42929190612e8f565b60405180910390a350505050505050565b611a5b611fb7565b5f85118015611a6c57506127108511155b611aab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa29061355b565b60405180910390fd5b5f8411611aed576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae4906135e9565b60405180910390fd5b83831015611b30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2790613677565b60405180910390fd5b82821015611b73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6a9061372b565b60405180910390fd5b5f60065f8881526020019081526020015f20905085815f018190555084816001018190555083816002018190555082816003018190555081816006015f6101000a81548160ff0219169083151502179055507f497768b3d65a26bbe0117804b6c1f7dbfd9bfd4e4a4d9af2aec5f9f64b268101878787878787604051611bfe96959493929190613749565b60405180910390a150505050505050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b611c99611fb7565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cfe90613818565b60405180910390fd5b611d1081612035565b50565b611d1b611fb7565b60028110611d5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5590613880565b60405180910390fd5b806001811115611d7157611d70612998565b5b600960146101000a81548160ff02191690836001811115611d9557611d94612998565b5b021790555050565b5f33905090565b611db18383836001612175565b505050565b5f611dc18484611c0f565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611e425781811015611e33578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401611e2a9392919061389e565b60405180910390fd5b611e4184848484035f612175565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611eb8575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401611eaf9190612a33565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f28575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401611f1f9190612a33565b60405180910390fd5b611f33838383612344565b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611fa8575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401611f9f9190612a33565b60405180910390fd5b611fb3825f83612344565b5050565b611fbf611d9d565b73ffffffffffffffffffffffffffffffffffffffff16611fdd61165a565b73ffffffffffffffffffffffffffffffffffffffff1614612033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202a9061391d565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612166575f6040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161215d9190612a33565b60405180910390fd5b6121715f8383612344565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036121e5575f6040517fe602df050000000000000000000000000000000000000000000000000000000081526004016121dc9190612a33565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612255575f6040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161224c9190612a33565b60405180910390fd5b8160025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550801561233e578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516123359190612701565b60405180910390a35b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612394578060035f8282546123889190612d8e565b92505081905550612464565b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561241e578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016124159392919061389e565b60405180910390fd5b81810360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036124ab578060035f82825403925050819055506124f6565b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516125539190612701565b60405180910390a3505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6125a282612560565b6125ac818561256a565b93506125bc81856020860161257a565b6125c581612588565b840191505092915050565b5f6020820190508181035f8301526125e88184612598565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61261d826125f4565b9050919050565b61262d81612613565b8114612637575f80fd5b50565b5f8135905061264881612624565b92915050565b5f819050919050565b6126608161264e565b811461266a575f80fd5b50565b5f8135905061267b81612657565b92915050565b5f8060408385031215612697576126966125f0565b5b5f6126a48582860161263a565b92505060206126b58582860161266d565b9150509250929050565b5f8115159050919050565b6126d3816126bf565b82525050565b5f6020820190506126ec5f8301846126ca565b92915050565b6126fb8161264e565b82525050565b5f6020820190506127145f8301846126f2565b92915050565b5f805f60608486031215612731576127306125f0565b5b5f61273e8682870161263a565b935050602061274f8682870161263a565b92505060406127608682870161266d565b9150509250925092565b5f6020828403121561277f5761277e6125f0565b5b5f61278c8482850161266d565b91505092915050565b5f60ff82169050919050565b6127aa81612795565b82525050565b5f6020820190506127c35f8301846127a1565b92915050565b5f805f606084860312156127e0576127df6125f0565b5b5f6127ed8682870161263a565b93505060206127fe8682870161266d565b925050604061280f8682870161263a565b9150509250925092565b5f6020828403121561282e5761282d6125f0565b5b5f61283b8482850161263a565b91505092915050565b5f6060820190506128575f8301866126f2565b61286460208301856126f2565b61287160408301846126ca565b949350505050565b5f60e08201905061288c5f83018a6126f2565b61289960208301896126f2565b6128a660408301886126f2565b6128b360608301876126f2565b6128c060808301866126f2565b6128cd60a08301856126f2565b6128da60c08301846126ca565b98975050505050505050565b5f819050919050565b5f6129096129046128ff846125f4565b6128e6565b6125f4565b9050919050565b5f61291a826128ef565b9050919050565b5f61292b82612910565b9050919050565b61293b81612921565b82525050565b5f6020820190506129545f830184612932565b92915050565b5f80604083850312156129705761296f6125f0565b5b5f61297d8582860161266d565b925050602061298e8582860161266d565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106129d6576129d5612998565b5b50565b5f8190506129e6826129c5565b919050565b5f6129f5826129d9565b9050919050565b612a05816129eb565b82525050565b5f602082019050612a1e5f8301846129fc565b92915050565b612a2d81612613565b82525050565b5f602082019050612a465f830184612a24565b92915050565b612a55816126bf565b8114612a5f575f80fd5b50565b5f81359050612a7081612a4c565b92915050565b5f805f805f8060c08789031215612a9057612a8f6125f0565b5b5f612a9d89828a0161266d565b9650506020612aae89828a0161266d565b9550506040612abf89828a0161266d565b9450506060612ad089828a0161266d565b9350506080612ae189828a0161266d565b92505060a0612af289828a01612a62565b9150509295509295509295565b5f8060408385031215612b1557612b146125f0565b5b5f612b228582860161263a565b9250506020612b338582860161263a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680612b8157607f821691505b602082108103612b9457612b93612b3d565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612bd18261264e565b9150612bdc8361264e565b9250828203905081811115612bf457612bf3612b9a565b5b92915050565b5f612c048261264e565b9150612c0f8361264e565b9250828202612c1d8161264e565b91508282048414831517612c3457612c33612b9a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612c728261264e565b9150612c7d8361264e565b925082612c8d57612c8c612c3b565b5b828204905092915050565b7f436f6e7472616374206973206e6f7420696e20746865207265717569726564205f8201527f7374617465000000000000000000000000000000000000000000000000000000602082015250565b5f612cf260258361256a565b9150612cfd82612c98565b604082019050919050565b5f6020820190508181035f830152612d1f81612ce6565b9050919050565b7f4e6f20616374697665207374616b6520666f756e6400000000000000000000005f82015250565b5f612d5a60158361256a565b9150612d6582612d26565b602082019050919050565b5f6020820190508181035f830152612d8781612d4e565b9050919050565b5f612d988261264e565b9150612da38361264e565b9250828201905080821115612dbb57612dba612b9a565b5b92915050565b7f4c6f636b20706572696f6420686173206e6f74207061737365640000000000005f82015250565b5f612df5601a8361256a565b9150612e0082612dc1565b602082019050919050565b5f6020820190508181035f830152612e2281612de9565b9050919050565b5f604082019050612e3c5f830185612a24565b612e4960208301846126f2565b9392505050565b5f81519050612e5e81612a4c565b92915050565b5f60208284031215612e7957612e786125f0565b5b5f612e8684828501612e50565b91505092915050565b5f604082019050612ea25f8301856126f2565b612eaf60208301846126f2565b9392505050565b7f496e76616c6964204164647265737321000000000000000000000000000000005f82015250565b5f612eea60108361256a565b9150612ef582612eb6565b602082019050919050565b5f6020820190508181035f830152612f1781612ede565b9050919050565b7f496e76616c696420416d6f756e742100000000000000000000000000000000005f82015250565b5f612f52600f8361256a565b9150612f5d82612f1e565b602082019050919050565b5f6020820190508181035f830152612f7f81612f46565b9050919050565b7f496e76616c696420546f6b656e210000000000000000000000000000000000005f82015250565b5f612fba600e8361256a565b9150612fc582612f86565b602082019050919050565b5f6020820190508181035f830152612fe781612fae565b9050919050565b7f556e7375636365737366756c205472616e7366657221000000000000000000005f82015250565b5f61302260168361256a565b915061302d82612fee565b602082019050919050565b5f6020820190508181035f83015261304f81613016565b9050919050565b5f81905092915050565b50565b5f61306e5f83613056565b915061307982613060565b5f82019050919050565b5f61308d82613063565b9150819050919050565b7f4661696c656420746f2073656e642045746865720000000000000000000000005f82015250565b5f6130cb60148361256a565b91506130d682613097565b602082019050919050565b5f6020820190508181035f8301526130f8816130bf565b9050919050565b7f5374616b696e6720706f6f6c206973206e6f74206163746976650000000000005f82015250565b5f613133601a8361256a565b915061313e826130ff565b602082019050919050565b5f6020820190508181035f83015261316081613127565b9050919050565b7f416d6f756e74206973206c657373207468616e206d696e696d756d207374616b5f8201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b5f6131c160218361256a565b91506131cc82613167565b604082019050919050565b5f6020820190508181035f8301526131ee816131b5565b9050919050565b7f416d6f756e742065786365656473206d6178696d756d207374616b65000000005f82015250565b5f613229601c8361256a565b9150613234826131f5565b602082019050919050565b5f6020820190508181035f8301526132568161321d565b9050919050565b7f4578636565647320746f74616c206d6178696d756d207374616b6520616d6f755f8201527f6e74000000000000000000000000000000000000000000000000000000000000602082015250565b5f6132b760228361256a565b91506132c28261325d565b604082019050919050565b5f6020820190508181035f8301526132e4816132ab565b9050919050565b7f5573657220616c72656164792068617320616e20616374697665207374616b655f8201527f20696e207468697320706f6f6c00000000000000000000000000000000000000602082015250565b5f613345602d8361256a565b9150613350826132eb565b604082019050919050565b5f6020820190508181035f83015261337281613339565b9050919050565b5f60608201905061338c5f830186612a24565b6133996020830185612a24565b6133a660408301846126f2565b949350505050565b5f6133b88261264e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036133ea576133e9612b9a565b5b600182019050919050565b7f52657374616b6520616d6f756e74206973206c657373207468616e206d696e695f8201527f6d756d207374616b650000000000000000000000000000000000000000000000602082015250565b5f61344f60298361256a565b915061345a826133f5565b604082019050919050565b5f6020820190508181035f83015261347c81613443565b9050919050565b7f52657374616b6520616d6f756e742065786365656473206d6178696d756d20735f8201527f74616b6500000000000000000000000000000000000000000000000000000000602082015250565b5f6134dd60248361256a565b91506134e882613483565b604082019050919050565b5f6020820190508181035f83015261350a816134d1565b9050919050565b7f415052206d757374206265206265747765656e203120616e64203130300000005f82015250565b5f613545601d8361256a565b915061355082613511565b602082019050919050565b5f6020820190508181035f83015261357281613539565b9050919050565b7f4d696e696d756d207374616b65206d75737420626520677265617465722074685f8201527f616e203000000000000000000000000000000000000000000000000000000000602082015250565b5f6135d360248361256a565b91506135de82613579565b604082019050919050565b5f6020820190508181035f830152613600816135c7565b9050919050565b7f4d6178696d756d207374616b65206d75737420626520677265617465722074685f8201527f616e206f7220657175616c20746f206d696e696d756d207374616b6500000000602082015250565b5f613661603c8361256a565b915061366c82613607565b604082019050919050565b5f6020820190508181035f83015261368e81613655565b9050919050565b7f546f74616c206d6178696d756d207374616b6520616d6f756e74206d757374205f8201527f62652067726561746572207468616e206f7220657175616c20746f206d61786960208201527f6d756d207374616b650000000000000000000000000000000000000000000000604082015250565b5f61371560498361256a565b915061372082613695565b606082019050919050565b5f6020820190508181035f83015261374281613709565b9050919050565b5f60c08201905061375c5f8301896126f2565b61376960208301886126f2565b61377660408301876126f2565b61378360608301866126f2565b61379060808301856126f2565b61379d60a08301846126ca565b979650505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61380260268361256a565b915061380d826137a8565b604082019050919050565b5f6020820190508181035f83015261382f816137f6565b9050919050565b7f496e76616c6964205374617465210000000000000000000000000000000000005f82015250565b5f61386a600e8361256a565b915061387582613836565b602082019050919050565b5f6020820190508181035f8301526138978161385e565b9050919050565b5f6060820190506138b15f830186612a24565b6138be60208301856126f2565b6138cb60408301846126f2565b949350505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61390760208361256a565b9150613912826138d3565b602082019050919050565b5f6020820190508181035f830152613934816138fb565b905091905056fea2646970667358221220a0daef9efbddff9fea4dde29e334173a00ebeb196707f66b640073d6cf9861a164736f6c634300081a0033