{
  "_format": "hh-sol-artifact-1",
  "contractName": "Unipool",
  "sourceName": "contracts/__deprecated__/LPRewards/Unipool.sol",
  "abi": [
    {
      "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": false,
          "internalType": "uint256",
          "name": "reward",
          "type": "uint256"
        }
      ],
      "name": "RewardAdded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "user",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "reward",
          "type": "uint256"
        }
      ],
      "name": "RewardPaid",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "user",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "Staked",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "_uniTokenAddress",
          "type": "address"
        }
      ],
      "name": "UniTokenAddressChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "_vaultedgeTokenAddress",
          "type": "address"
        }
      ],
      "name": "VaultedgeTokenAddressChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "user",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "Withdrawn",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "NAME",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "claimReward",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "duration",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "earned",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "isOwner",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "lastTimeRewardApplicable",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "lastUpdateTime",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "periodFinish",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rewardPerToken",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rewardPerTokenStored",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rewardRate",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "rewards",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_vaultedgeTokenAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_uniTokenAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_duration",
          "type": "uint256"
        }
      ],
      "name": "setParams",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "stake",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "totalSupply",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "uniToken",
      "outputs": [
        {
          "internalType": "contract IERC20",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "userRewardPerTokenPaid",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "vaultedgeToken",
      "outputs": [
        {
          "internalType": "contract IVaultedgeToken",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "withdraw",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "withdrawAndClaim",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040526000600655600060075534801561001a57600080fd5b50600380546001600160a01b031916339081179091556040516000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36115988061006a6000396000f3fe608060405234801561001057600080fd5b50600436106101815760003560e01c80638b876347116100d8578063b88a802f1161008c578063d443772411610066578063d443772414610332578063df136d651461033a578063ebe2b12b1461034257610181565b8063b88a802f1461031a578063c8f33c9114610322578063cd3daf9d1461032a57610181565b80638f32d59b116100bd5780638f32d59b146102d9578063a3f4df7e146102f5578063a694fc3a146102fd57610181565b80638b876347146102ab5780638da5cb5b146102d157610181565b80632e1a7d4d1161013a5780637b0a47ee116101145780637b0a47ee1461029357806380faa57d1461029b57806385ce4fee146102a357610181565b80632e1a7d4d14610218578063509db2f61461023757806370a082311461026d57610181565b80630fb5a6b41161016b5780630fb5a6b4146101e457806318160ddd146101ec5780632826a520146101f457610181565b80628cc262146101865780630700037d146101be575b600080fd5b6101ac6004803603602081101561019c57600080fd5b50356001600160a01b031661034a565b60408051918252519081900360200190f35b6101ac600480360360208110156101d457600080fd5b50356001600160a01b03166103d0565b6101ac6103e2565b6101ac6103e8565b6101fc6103ef565b604080516001600160a01b039092168252519081900360200190f35b6102356004803603602081101561022e57600080fd5b50356103fe565b005b6102356004803603606081101561024d57600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b6101ac6004803603602081101561028357600080fd5b50356001600160a01b031661068c565b6101ac6106a7565b6101ac6106ad565b6101fc6106c0565b6101ac600480360360208110156102c157600080fd5b50356001600160a01b03166106cf565b6101fc6106e1565b6102e16106f0565b604080519115158252519081900360200190f35b6101ac610701565b6102356004803603602081101561031357600080fd5b5035610725565b610235610811565b6101ac61092a565b6101ac610930565b610235610984565b6101ac61099f565b6101ac6109a5565b6001600160a01b0381166000908152600b6020908152604080832054600a9092528220546103ca91906103be90670de0b6b3a7640000906103b29061039d90610391610930565b9063ffffffff6109ab16565b6103a68861068c565b9063ffffffff6109f416565b9063ffffffff610a6316565b9063ffffffff610aa516565b92915050565b600b6020526000908152604090205481565b60045481565b6001545b90565b6005546001600160a01b031681565b80610450576040805162461bcd60e51b815260206004820152601160248201527f43616e6e6f742077697468647261772030000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b03166104975760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b6104a033610aff565b6104a981610b83565b60408051828152905133917f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5919081900360200190a250565b6104ea6106f0565b61053b576040805162461bcd60e51b815260206004820152600e60248201527f43616c6c65724e6f744f776e6572000000000000000000000000000000000000604482015290519081900360640190fd5b61054483610be7565b61054d82610be7565b600080546001600160a01b0380851673ffffffffffffffffffffffffffffffffffffffff199283161790925560058054868416921691909117908190556004838155604080516370a0823160e01b81523092810192909252516106079392909216916370a0823191602480820192602092909190829003018186803b1580156105d557600080fd5b505afa1580156105e9573d6000803e3d6000fd5b505050506040513d60208110156105ff57600080fd5b505182610c9a565b604080516001600160a01b038516815290517f01065ce0c6f07384ec56b53fa98d149bc7b48c8c55fc6cee6ffbc7d8234969e99181900360200190a1604080516001600160a01b038416815290517f15cb6984f76cb781da2b25c2024a3eaf5011914976381f844e09724cc9e21e949181900360200190a1610687610e4a565b505050565b6001600160a01b031660009081526002602052604090205490565b60075481565b60006106bb42600654610ea1565b905090565b6000546001600160a01b031681565b600a6020526000908152604090205481565b6003546001600160a01b031690565b6003546001600160a01b0316331490565b7f556e69706f6f6c0000000000000000000000000000000000000000000000000081565b80610777576040805162461bcd60e51b815260206004820152600e60248201527f43616e6e6f74207374616b652030000000000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b03166107be5760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b6107c6610eb7565b6107cf33610aff565b6107d881610f2d565b60408051828152905133917f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d919081900360200190a250565b6000546001600160a01b03166108585760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b610860610eb7565b61086933610aff565b60006108743361034a565b9050806108c8576040805162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d00000000000000000000000000000000604482015290519081900360640190fd5b336000818152600b60205260408120556005546108f1916001600160a01b039091169083610f8f565b60408051828152905133917fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e0486919081900360200190a250565b60085481565b600061093a6103e8565b61094757506009546103ec565b6106bb6109756109556103e8565b6103b2670de0b6b3a76400006103a66007546103a66008546103916106ad565b6009549063ffffffff610aa516565b6109956109903361068c565b6103fe565b61099d610811565b565b60095481565b60065481565b60006109ed83836040518060400160405280600c81526020017f737562206f766572666c6f77000000000000000000000000000000000000000081525061100f565b9392505050565b600082610a03575060006103ca565b82820282848281610a1057fe5b04146109ed576040805162461bcd60e51b815260206004820152600c60248201527f6d756c206f766572666c6f770000000000000000000000000000000000000000604482015290519081900360640190fd5b60006109ed83836040518060400160405280600881526020017f64697620627920300000000000000000000000000000000000000000000000008152506110a6565b6000828201838110156109ed576040805162461bcd60e51b815260206004820152600c60248201527f616464206f766572666c6f770000000000000000000000000000000000000000604482015290519081900360640190fd5b610b0761110b565b6001600160a01b038116610b4c5760405162461bcd60e51b815260040180806020018281038252602b815260200180611538602b913960400191505060405180910390fd5b610b558161034a565b6001600160a01b039091166000908152600b6020908152604080832093909355600954600a90915291902055565b600154610b96908263ffffffff6109ab16565b60015533600090815260026020526040902054610bb9908263ffffffff6109ab16565b336000818152600260205260408120929092559054610be4916001600160a01b039091169083610f8f565b50565b6001600160a01b038116610c42576040805162461bcd60e51b815260206004820152601e60248201527f4163636f756e742063616e6e6f74206265207a65726f20616464726573730000604482015290519081900360640190fd5b803b80610c96576040805162461bcd60e51b815260206004820181905260248201527f4163636f756e7420636f64652073697a652063616e6e6f74206265207a65726f604482015290519081900360640190fd5b5050565b81610cec576040805162461bcd60e51b815260206004820181905260248201527f5f6e6f74696679526577617264416d6f756e743a207265776172642069732030604482015290519081900360640190fd5b600554604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610d3757600080fd5b505afa158015610d4b573d6000803e3d6000fd5b505050506040513d6020811015610d6157600080fd5b50518214610da05760405162461bcd60e51b815260040180806020018281038252603081526020018061146c6030913960400191505060405180910390fd5b60065415610ddf5760405162461bcd60e51b81526004018080602001828103825260268152602001806114c26026913960400191505060405180910390fd5b610de761110b565b610df7828263ffffffff610a6316565b600755426008819055610e10908263ffffffff610aa516565b6006556040805183815290517fde88a922e0d3b88b24e9623efeb464919c6bf9f66857a65e2bfcf2ce87a9433d9181900360200190a15050565b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36003805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000818310610eb057816109ed565b5090919050565b610ebf6103e8565b61099d57600654610f015760405162461bcd60e51b81526004018080602001828103825260268152602001806114e86026913960400191505060405180910390fd5b610f28610f19600854426109ab90919063ffffffff16565b6006549063ffffffff610aa516565b600655565b600154610f40908263ffffffff610aa516565b60015533600090815260026020526040902054610f63908263ffffffff610aa516565b336000818152600260205260408120929092559054610be4916001600160a01b03909116903084611123565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790526106879084906111b1565b6000818484111561109e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561106357818101518382015260200161104b565b50505050905090810190601f1680156110905780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836110f55760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561106357818101518382015260200161104b565b50600083858161110157fe5b0495945050505050565b611113610930565b60095561111e6106ad565b600855565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd000000000000000000000000000000000000000000000000000000001790526111ab9085906111b1565b50505050565b6060611206826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166112639092919063ffffffff16565b905080516000146106875780806020019051602081101561122657600080fd5b50516106875760405162461bcd60e51b815260040180806020018281038252602a81526020018061150e602a913960400191505060405180910390fd5b6060611272848460008561127a565b949350505050565b6060824710156112bb5760405162461bcd60e51b815260040180806020018281038252602681526020018061149c6026913960400191505060405180910390fd5b6112c4856113d6565b611315576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106113545780518252601f199092019160209182019101611335565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146113b6576040519150601f19603f3d011682016040523d82523d6000602084013e6113bb565b606091505b50915091506113cb8282866113dc565b979650505050505050565b3b151590565b606083156113eb5750816109ed565b8251156113fb5782518084602001fd5b60405162461bcd60e51b815260206004820181815284516024840152845185939192839260440191908501908083836000831561106357818101518382015260200161104b56fe4c697175696469747920506f6f6c20546f6b656e20686173206e6f74206265656e20736574207965745f6e6f74696679526577617264416d6f756e743a20726577617264206e6f7420657175616c20746f2062616c616e6365416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5f6e6f74696679526577617264416d6f756e743a20706572696f6446696e69736820213d20305f757064617465506572696f6446696e6973683a20706572696f6446696e697368203c3d20305361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f7570646174654163636f756e745265776172643a206163636f756e742069732061646472657373283029a2646970667358221220a254241416587412bb092c8b71690b38551299f7101718bb942814031e8964d064736f6c634300060b0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101815760003560e01c80638b876347116100d8578063b88a802f1161008c578063d443772411610066578063d443772414610332578063df136d651461033a578063ebe2b12b1461034257610181565b8063b88a802f1461031a578063c8f33c9114610322578063cd3daf9d1461032a57610181565b80638f32d59b116100bd5780638f32d59b146102d9578063a3f4df7e146102f5578063a694fc3a146102fd57610181565b80638b876347146102ab5780638da5cb5b146102d157610181565b80632e1a7d4d1161013a5780637b0a47ee116101145780637b0a47ee1461029357806380faa57d1461029b57806385ce4fee146102a357610181565b80632e1a7d4d14610218578063509db2f61461023757806370a082311461026d57610181565b80630fb5a6b41161016b5780630fb5a6b4146101e457806318160ddd146101ec5780632826a520146101f457610181565b80628cc262146101865780630700037d146101be575b600080fd5b6101ac6004803603602081101561019c57600080fd5b50356001600160a01b031661034a565b60408051918252519081900360200190f35b6101ac600480360360208110156101d457600080fd5b50356001600160a01b03166103d0565b6101ac6103e2565b6101ac6103e8565b6101fc6103ef565b604080516001600160a01b039092168252519081900360200190f35b6102356004803603602081101561022e57600080fd5b50356103fe565b005b6102356004803603606081101561024d57600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b6101ac6004803603602081101561028357600080fd5b50356001600160a01b031661068c565b6101ac6106a7565b6101ac6106ad565b6101fc6106c0565b6101ac600480360360208110156102c157600080fd5b50356001600160a01b03166106cf565b6101fc6106e1565b6102e16106f0565b604080519115158252519081900360200190f35b6101ac610701565b6102356004803603602081101561031357600080fd5b5035610725565b610235610811565b6101ac61092a565b6101ac610930565b610235610984565b6101ac61099f565b6101ac6109a5565b6001600160a01b0381166000908152600b6020908152604080832054600a9092528220546103ca91906103be90670de0b6b3a7640000906103b29061039d90610391610930565b9063ffffffff6109ab16565b6103a68861068c565b9063ffffffff6109f416565b9063ffffffff610a6316565b9063ffffffff610aa516565b92915050565b600b6020526000908152604090205481565b60045481565b6001545b90565b6005546001600160a01b031681565b80610450576040805162461bcd60e51b815260206004820152601160248201527f43616e6e6f742077697468647261772030000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b03166104975760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b6104a033610aff565b6104a981610b83565b60408051828152905133917f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5919081900360200190a250565b6104ea6106f0565b61053b576040805162461bcd60e51b815260206004820152600e60248201527f43616c6c65724e6f744f776e6572000000000000000000000000000000000000604482015290519081900360640190fd5b61054483610be7565b61054d82610be7565b600080546001600160a01b0380851673ffffffffffffffffffffffffffffffffffffffff199283161790925560058054868416921691909117908190556004838155604080516370a0823160e01b81523092810192909252516106079392909216916370a0823191602480820192602092909190829003018186803b1580156105d557600080fd5b505afa1580156105e9573d6000803e3d6000fd5b505050506040513d60208110156105ff57600080fd5b505182610c9a565b604080516001600160a01b038516815290517f01065ce0c6f07384ec56b53fa98d149bc7b48c8c55fc6cee6ffbc7d8234969e99181900360200190a1604080516001600160a01b038416815290517f15cb6984f76cb781da2b25c2024a3eaf5011914976381f844e09724cc9e21e949181900360200190a1610687610e4a565b505050565b6001600160a01b031660009081526002602052604090205490565b60075481565b60006106bb42600654610ea1565b905090565b6000546001600160a01b031681565b600a6020526000908152604090205481565b6003546001600160a01b031690565b6003546001600160a01b0316331490565b7f556e69706f6f6c0000000000000000000000000000000000000000000000000081565b80610777576040805162461bcd60e51b815260206004820152600e60248201527f43616e6e6f74207374616b652030000000000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b03166107be5760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b6107c6610eb7565b6107cf33610aff565b6107d881610f2d565b60408051828152905133917f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d919081900360200190a250565b6000546001600160a01b03166108585760405162461bcd60e51b81526004018080602001828103825260298152602001806114436029913960400191505060405180910390fd5b610860610eb7565b61086933610aff565b60006108743361034a565b9050806108c8576040805162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d00000000000000000000000000000000604482015290519081900360640190fd5b336000818152600b60205260408120556005546108f1916001600160a01b039091169083610f8f565b60408051828152905133917fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e0486919081900360200190a250565b60085481565b600061093a6103e8565b61094757506009546103ec565b6106bb6109756109556103e8565b6103b2670de0b6b3a76400006103a66007546103a66008546103916106ad565b6009549063ffffffff610aa516565b6109956109903361068c565b6103fe565b61099d610811565b565b60095481565b60065481565b60006109ed83836040518060400160405280600c81526020017f737562206f766572666c6f77000000000000000000000000000000000000000081525061100f565b9392505050565b600082610a03575060006103ca565b82820282848281610a1057fe5b04146109ed576040805162461bcd60e51b815260206004820152600c60248201527f6d756c206f766572666c6f770000000000000000000000000000000000000000604482015290519081900360640190fd5b60006109ed83836040518060400160405280600881526020017f64697620627920300000000000000000000000000000000000000000000000008152506110a6565b6000828201838110156109ed576040805162461bcd60e51b815260206004820152600c60248201527f616464206f766572666c6f770000000000000000000000000000000000000000604482015290519081900360640190fd5b610b0761110b565b6001600160a01b038116610b4c5760405162461bcd60e51b815260040180806020018281038252602b815260200180611538602b913960400191505060405180910390fd5b610b558161034a565b6001600160a01b039091166000908152600b6020908152604080832093909355600954600a90915291902055565b600154610b96908263ffffffff6109ab16565b60015533600090815260026020526040902054610bb9908263ffffffff6109ab16565b336000818152600260205260408120929092559054610be4916001600160a01b039091169083610f8f565b50565b6001600160a01b038116610c42576040805162461bcd60e51b815260206004820152601e60248201527f4163636f756e742063616e6e6f74206265207a65726f20616464726573730000604482015290519081900360640190fd5b803b80610c96576040805162461bcd60e51b815260206004820181905260248201527f4163636f756e7420636f64652073697a652063616e6e6f74206265207a65726f604482015290519081900360640190fd5b5050565b81610cec576040805162461bcd60e51b815260206004820181905260248201527f5f6e6f74696679526577617264416d6f756e743a207265776172642069732030604482015290519081900360640190fd5b600554604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610d3757600080fd5b505afa158015610d4b573d6000803e3d6000fd5b505050506040513d6020811015610d6157600080fd5b50518214610da05760405162461bcd60e51b815260040180806020018281038252603081526020018061146c6030913960400191505060405180910390fd5b60065415610ddf5760405162461bcd60e51b81526004018080602001828103825260268152602001806114c26026913960400191505060405180910390fd5b610de761110b565b610df7828263ffffffff610a6316565b600755426008819055610e10908263ffffffff610aa516565b6006556040805183815290517fde88a922e0d3b88b24e9623efeb464919c6bf9f66857a65e2bfcf2ce87a9433d9181900360200190a15050565b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36003805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000818310610eb057816109ed565b5090919050565b610ebf6103e8565b61099d57600654610f015760405162461bcd60e51b81526004018080602001828103825260268152602001806114e86026913960400191505060405180910390fd5b610f28610f19600854426109ab90919063ffffffff16565b6006549063ffffffff610aa516565b600655565b600154610f40908263ffffffff610aa516565b60015533600090815260026020526040902054610f63908263ffffffff610aa516565b336000818152600260205260408120929092559054610be4916001600160a01b03909116903084611123565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790526106879084906111b1565b6000818484111561109e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561106357818101518382015260200161104b565b50505050905090810190601f1680156110905780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836110f55760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561106357818101518382015260200161104b565b50600083858161110157fe5b0495945050505050565b611113610930565b60095561111e6106ad565b600855565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd000000000000000000000000000000000000000000000000000000001790526111ab9085906111b1565b50505050565b6060611206826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166112639092919063ffffffff16565b905080516000146106875780806020019051602081101561122657600080fd5b50516106875760405162461bcd60e51b815260040180806020018281038252602a81526020018061150e602a913960400191505060405180910390fd5b6060611272848460008561127a565b949350505050565b6060824710156112bb5760405162461bcd60e51b815260040180806020018281038252602681526020018061149c6026913960400191505060405180910390fd5b6112c4856113d6565b611315576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106113545780518252601f199092019160209182019101611335565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146113b6576040519150601f19603f3d011682016040523d82523d6000602084013e6113bb565b606091505b50915091506113cb8282866113dc565b979650505050505050565b3b151590565b606083156113eb5750816109ed565b8251156113fb5782518084602001fd5b60405162461bcd60e51b815260206004820181815284516024840152845185939192839260440191908501908083836000831561106357818101518382015260200161104b56fe4c697175696469747920506f6f6c20546f6b656e20686173206e6f74206265656e20736574207965745f6e6f74696679526577617264416d6f756e743a20726577617264206e6f7420657175616c20746f2062616c616e6365416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5f6e6f74696679526577617264416d6f756e743a20706572696f6446696e69736820213d20305f757064617465506572696f6446696e6973683a20706572696f6446696e697368203c3d20305361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f7570646174654163636f756e745265776172643a206163636f756e742069732061646472657373283029a2646970667358221220a254241416587412bb092c8b71690b38551299f7101718bb942814031e8964d064736f6c634300060b0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
